gdis-0.90/0000755000175000017500000000000011066572643011040 5ustar seanseangdis-0.90/gl_varray.h0000644000175000017500000000163610445461563013203 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ gpointer va_init(void); void va_free(gpointer); void va_make_sphere(gpointer); void va_draw_sphere(gpointer, gdouble *, gdouble); gdis-0.90/gui_surface.c0000644000175000017500000022371311036532763013504 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include "gdis.h" #include "coords.h" #include "edit.h" #include "file.h" #include "parse.h" #include "task.h" #include "model.h" #include "morph.h" #include "numeric.h" #include "sginfo.h" #include "matrix.h" #include "space.h" #include "surface.h" #include "gui_shorts.h" #include "interface.h" #include "dialog.h" #include "opengl.h" /* main pak structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; enum { SURF_TITLE, SURF_REGIONS, SURF_ESURF_UNRE, SURF_EATT_UNRE, SURF_ESURF_RE, SURF_EATT_RE, SURF_DIPOLE, SURF_GNORM, SURF_MODEL, SURF_PLANE, SURF_SHIFT, SURF_NCOLS }; /* globals */ GtkTreeStore *surf_tree_store; GtkWidget *surf_tree_view; GtkWidget *surf_morph_energy[4]; GtkWidget *surf_hkl_family; gint all_planes = FALSE; gdouble rank_value = 10.0; struct model_pak surfdata; gchar *titles[] = {"hkl/shift", "Dhkl/depth", "Esurf (u)", "Eatt (u)", "Esurf (r)", "Eatt (r)", "dipole ", "gnorm "}; /***************************/ /* attempt to match shifts */ /***************************/ gint compare_shifts(gconstpointer *s1, gconstpointer *s2) { struct shift_pak *s1data; struct shift_pak *s2data; s1data = (struct shift_pak *) s1; s2data = (struct shift_pak *) s2; /* seek mismatches & return failure */ if (s1data->shift != s2data->shift) return(1); if (s1data->region[0] != s2data->region[0]) return(1); if (s1data->region[1] != s2data->region[1]) return(1); /* otherwise, return succesful match */ return(0); } /*************************************************/ /* set values for a shift in the treeview widget */ /*************************************************/ void fn_surf_set_shift(GtkTreeIter *iter, struct shift_pak *shift) { gint i; gchar *text, *old_text; GtkTreeModel *treemodel; treemodel = gtk_tree_view_get_model(GTK_TREE_VIEW(surf_tree_view)); for (i=SURF_TITLE ; i<=SURF_GNORM ; i++) { switch(i) { case SURF_REGIONS: text = g_strdup_printf("%2d:%2d", shift->region[0], shift->region[1]); break; case SURF_EATT_UNRE: text = g_strdup_printf("%9.4f", shift->eatt[0]); break; case SURF_ESURF_UNRE: text = g_strdup_printf("%9.4f", shift->esurf[0]); break; case SURF_EATT_RE: text = g_strdup_printf("%9.4f", shift->eatt[1]); break; case SURF_ESURF_RE: text = g_strdup_printf("%9.4f", shift->esurf[1]); break; case SURF_DIPOLE: if (shift->dipole_computed) text = g_strdup_printf("%9.4f", shift->dipole); else text = g_strdup(" ? "); break; case SURF_GNORM: if (shift->gnorm < 0.0) text = g_strdup(" ? "); else text = g_strdup_printf("%9.4f", shift->gnorm); break; default: continue; } if (treemodel) { gtk_tree_model_get(treemodel, iter, i, &old_text, -1); g_free(old_text); } else printf("ERROR: can't free old plane/shift data.\n"); gtk_tree_store_set(surf_tree_store, iter, i, text, -1); g_free(text); } } /**********************************************/ /* find the iterator corresponding to a plane */ /**********************************************/ gint surf_plane_iter(GtkTreeIter *iter, struct plane_pak *plane) { GtkTreeModel *treemodel; struct plane_pak *comp; /* checks */ if (!GTK_IS_TREE_VIEW(surf_tree_view)) return(0); treemodel = gtk_tree_view_get_model(GTK_TREE_VIEW(surf_tree_view)); if (!treemodel) return(0); /* are there branches on the tree? */ if (gtk_tree_model_get_iter_first(treemodel, iter)) { do { gtk_tree_model_get(treemodel, iter, SURF_PLANE, &comp, -1); if (comp == plane) return(1); } while (gtk_tree_model_iter_next(treemodel, iter)); } return(0); } /**********************************************/ /* find the iterator corresponding to a shift */ /**********************************************/ gint surf_shift_iter(GtkTreeIter *iter, struct shift_pak *shift) { gint n; GtkTreeModel *treemodel; GtkTreeIter parent; struct shift_pak *data; /* checks */ if (!GTK_IS_TREE_VIEW(surf_tree_view)) return(0); treemodel = gtk_tree_view_get_model(GTK_TREE_VIEW(surf_tree_view)); if (!treemodel) return(0); /* are there branches on the tree? */ if (gtk_tree_model_get_iter_first(treemodel, &parent)) { /* loop over all parents */ do { /* loop over all children */ n=0; while (gtk_tree_model_iter_nth_child(treemodel, iter, &parent, n)) { gtk_tree_model_get(treemodel, iter, SURF_SHIFT, &data, -1); g_assert(data != NULL); if (data == shift) return(1); n++; } } while (gtk_tree_model_iter_next(treemodel, &parent)); } return(0); } /******************************************************/ /* remove all shifts listed in the tree under a plane */ /******************************************************/ void surf_prune_shifts(struct plane_pak *plane) { gint n; GtkTreeIter child, parent; GtkTreeModel *treemodel; g_assert(plane != NULL); /* find parent level iterator */ if (!surf_plane_iter(&parent, plane)) return; treemodel = gtk_tree_view_get_model(GTK_TREE_VIEW(surf_tree_view)); if (!treemodel) return; n = gtk_tree_model_iter_n_children(treemodel, &parent) - 1; while (n >= 0) { if (gtk_tree_model_iter_nth_child(treemodel, &child, &parent, n)) { gtk_tree_store_remove(surf_tree_store, &child); } n--; } } /***********************************************/ /* search and update a shift's treeview values */ /***********************************************/ void surf_shift_refresh(struct shift_pak *shift) { GtkTreeIter iter; if (surf_shift_iter(&iter, shift)) fn_surf_set_shift(&iter, shift); } /***********************************************/ /* search and update a plane's treeview values */ /***********************************************/ void surf_plane_refresh(struct plane_pak *plane) { } /*********************************/ /* add a shift to the tree store */ /*********************************/ void fn_graft_shift(GtkTreeIter *parent, struct shift_pak *shift, struct plane_pak *plane, struct model_pak *model) { gchar *title, *dipole; GtkTreeIter child; g_assert(shift != NULL); title = g_strdup_printf("%6.4f", shift->shift); if (shift->dipole_computed) dipole = g_strdup_printf("%9.4f", shift->dipole); else dipole = g_strdup(" ? "); /* set child iterator data */ gtk_tree_store_append(surf_tree_store, &child, parent); gtk_tree_store_set(surf_tree_store, &child, SURF_TITLE, title, SURF_DIPOLE, dipole, SURF_MODEL, model, SURF_PLANE, plane, SURF_SHIFT, shift, -1); g_free(title); g_free(dipole); /* set shift values */ fn_surf_set_shift(&child, shift); } /******************************************/ /* add a list of shifts to the tree store */ /******************************************/ void fn_graft_shift_list(struct plane_pak *plane, struct model_pak *model) { GSList *list; GtkTreeIter parent; struct shift_pak *shift; g_assert(plane != NULL); /* acquire parent level iterator */ if (!surf_plane_iter(&parent, plane)) gtk_tree_store_append(surf_tree_store, &parent, NULL); /* loop over all shifts */ for (list=plane->shifts ; list ; list=g_slist_next(list)) { shift = list->data; fn_graft_shift(&parent, shift, plane, model); } } /*********************************/ /* add a plane to the tree store */ /*********************************/ void fn_graft_plane(struct plane_pak *plane, struct model_pak *model) { gchar *title, *depth; GtkTreeIter root; GtkTreeModel *treemodel; GtkTreePath *treepath; g_assert(model != NULL); g_assert(plane != NULL); /* acquire parent level iterator */ if (!surf_plane_iter(&root, plane)) gtk_tree_store_append(surf_tree_store, &root, NULL); /* set the parent iterator data */ title = g_strdup_printf("(%d%d%d)",plane->index[0],plane->index[1],plane->index[2]); depth = g_strdup_printf("%f", plane->dhkl); gtk_tree_store_set(surf_tree_store, &root, SURF_TITLE, title, SURF_REGIONS, depth, SURF_MODEL, model, SURF_PLANE, plane, SURF_SHIFT, NULL, -1); g_free(title); g_free(depth); /* printf("Adding model: %p, plane: %p\n", model, plane); */ fn_graft_shift_list(plane, model); /* get treepath of root */ treemodel = gtk_tree_view_get_model(GTK_TREE_VIEW(surf_tree_view)); if (treemodel) { treepath = gtk_tree_model_get_path(treemodel, &root); gtk_tree_view_expand_row(GTK_TREE_VIEW(surf_tree_view), treepath, TRUE); gtk_tree_path_free(treepath); } } /******************************************/ /* add a list of planes to the tree store */ /******************************************/ void fn_graft_plane_list(GSList *plist, struct model_pak *model) { GSList *list; struct plane_pak *plane; /* go through the plane list */ for (list=plist ; list ; list=g_slist_next(list)) { plane = list->data; if (plane->primary) fn_graft_plane(plane, model); } } /*********************/ /* add shift to list */ /*********************/ gint fn_add_plane_with_shift(void) { GtkTreeIter iter; struct model_pak *model, surf; struct plane_pak *plane; struct shift_pak *shift; /* checks */ model = surfdata.surface.model; if (!model) return(FALSE); if (model->id == MORPH) return(FALSE); /* P3VEC("Adding: ", surfdata.surface.miller); */ /* create new shift with current region values */ shift = shift_new(surfdata.surface.shift); shift->region[0] = surfdata.surface.region[0]; shift->region[1] = surfdata.surface.region[1]; /* init for dipole calculation */ model_init(&surf); surf.surface.shift = shift->shift; surf.surface.region[0] = 1; surf.surface.region[1] = 0; /* does the plane already exist? */ plane = plane_find(surfdata.surface.miller, model); if (plane) { ARR3SET(surf.surface.miller, plane->index); generate_surface(model, &surf); shift->dipole = surf.gulp.sdipole; shift->dipole_computed = TRUE; plane->shifts = g_slist_append(plane->shifts, shift); /* add to shift to treestore */ if (surf_plane_iter(&iter, plane)) fn_graft_shift(&iter, shift, plane, model); else printf("FIXME NOW - need to create plane iter here.\n"); } else { /* create new plane with current hkl */ plane = plane_new(surfdata.surface.miller, model); if (plane) { ARR3SET(surf.surface.miller, plane->index); generate_surface(model, &surf); shift->dipole = surf.gulp.sdipole; shift->dipole_computed = TRUE; plane->shifts = g_slist_append(plane->shifts, shift); /* append new plane to model */ model->planes = g_slist_append(model->planes, plane); /* add to whole plane to treestore */ fn_graft_plane(plane, model); } } model_free(&surf); return(TRUE); } /**********************************************/ /* search for valid shifts - output to a file */ /**********************************************/ gint fn_add_valid_shifts(void) { struct model_pak *model; struct surface_pak *surfdat = &surfdata.surface; struct plane_pak *plane; /* checks */ model = surfdat->model; g_return_val_if_fail(model != NULL, 1); if (model->periodic != 3) { gui_text_show(ERROR, "Base model is not 3D periodic.\n"); return(1); } if (!surfdata.surface.miller[0] && !surfdata.surface.miller[1] && !surfdata.surface.miller[2]) { gui_text_show(ERROR, "Don't be silly.\n"); return(2); } /* does the plane already exist? */ plane = plane_find(surfdata.surface.miller, model); if (plane) surf_prune_shifts(plane); else { plane = plane_new(surfdata.surface.miller, model); /* add to list */ if (plane) model->planes = g_slist_append(model->planes, plane); else return(3); } /* find valid shifts for the plane */ /* NB: this REPLACES existing shifts */ calc_valid_shifts(model, plane); /* update treestore */ fn_graft_plane(plane, model); return(FALSE); } /*************/ /* rank cuts */ /*************/ gint zsort(gdouble *z1, gdouble *z2) { if (*z1 > *z2) return(1); if (*z2 > *z1) return(-1); return(0); } /***************************************/ /* smallest common multiple for a pair */ /***************************************/ gint scf(gint a, gint b) { if (!b) return(abs(a)); return(scf(b, a%b)); } /***************************************/ /* smallest common multiple for vector */ /***************************************/ gint simplify(gint *vec, gint size) { gint i, n; n = scf(*vec, *(vec+1)); for (i=2 ; ibasename); /* store the planes */ write_gmf(filename, data); /* read morphology file in & compute hull */ data = model_new(); /* default morphology computation type */ data->morph_type = DHKL; /* only successful if properly loaded */ status = 2; if (data) { status--; if (!read_gmf(filename, data)) status--; } if (!status) { tree_model_add(data); } g_free(filename); } /* TODO - rewrite to generate specified number of faces (rank_spin) */ /* based on Dhkl ranking - maybe! - calc valid shifts for each */ gint dhkl_compare(gpointer ptr1, gpointer ptr2) { struct plane_pak *plane1=ptr1, *plane2=ptr2; if (plane1->dhkl > plane2->dhkl) return(-1); if (plane1->dhkl < plane2->dhkl) return(1); return(0); } /******************************************************/ /* adds ranked faces (from data) to the supplied list */ /******************************************************/ /* if num -> get num ranked faces, else get until Dhkl < min */ #define DEBUG_GET_RANKED_FACES 0 GSList *get_ranked_faces(gint num, gdouble min, struct model_pak *data) { gint n, h, k, l, limit; gint f1[3], f2[3]; gdouble m[3]; GSList *list=NULL, *plist=NULL, *list1=NULL, *list2=NULL; struct plane_pak *pdata; /* loop over a large range */ /* FIXME - should loop until num/max is satisfied */ limit = 4; for (h=limit ; h>=-limit ; h--) { for (k=limit ; k>=-limit ; k--) { for (l=limit ; l>=-limit ; l--) { /* skip (000) */ if (!h && !k && !l) continue; VEC3SET(f1, h, k, l); /* skip things with a common multiple > 1, since */ /* fn_make_plane() takes care of systematic absences */ /* NB: this is ok for morph pred. but for XRD we may want such planes */ if (num) { n = simplify(f1, 3); if (n != 1) continue; } /* add the plane */ ARR3SET(m, f1); pdata = plane_new(m, data); if (pdata) plist = g_slist_prepend(plist, pdata); } } } plist = g_slist_reverse(plist); /* sort via Dhkl */ plist = g_slist_sort(plist, (gpointer) dhkl_compare); /* VEC3SET(f1, 1, 0, -4); printf("f1 : [%d %d %d]\n", f1[0], f1[1], f1[2]); n = simplify(f1, 3); printf("n = %d\n", n); */ /* mark the planes that are symmetry related */ list1 = plist; while (list1 != NULL) { /* get a reference (primary) plane */ pdata = list1->data; if (pdata->primary) { ARR3SET(f1, pdata->index); } else { list1 = g_slist_next(list1); continue; } /* scan for symmetry related planes */ list2 = g_slist_next(list1); while (list2 != NULL) { pdata = list2->data; ARR3SET(f2, pdata->index); /* get the hkl's and test */ #if DEBUG_GET_RANKED_FACES printf("testing: %d %d %d & %d %d %d\n", f1[0], f1[1], f1[2], f2[0], f2[1], f2[2]); #endif if (facet_equiv(data,f1,f2)) pdata->primary = FALSE; list2 = g_slist_next(list2); } list1 = g_slist_next(list1); } /* write the planes list to the model */ /* write only up to the requested number */ list1 = plist; n=0; while (list1 != NULL) { /* get a reference (primary) plane */ pdata = list1->data; /* if (pdata->primary) */ { /* automatically add valid shifts */ calc_valid_shifts(data, pdata); /* default single shift */ /* sdata = create_shift(0.0); pdata->shifts = g_slist_append(pdata->shifts, sdata); */ /* add plane */ /* TODO - don't prepend? (may be others already there) */ /* list = g_slist_prepend(list, pdata); */ /* number of unique planes */ if (pdata->primary) n++; if (num) { /* got enough unique planes? */ /* if (n == num) */ if (n > num) break; else list = g_slist_prepend(list, pdata); } else { /* if (pdata->dhkl < min) break; */ if (pdata->dhkl > min) list = g_slist_prepend(list, pdata); } } list1 = g_slist_next(list1); } list = g_slist_reverse(list); return(list); } /**********************/ /* GULP debugging aid */ /**********************/ void gulp_dump(struct model_pak *data) { printf(" num atoms = %d\n", data->num_atoms); printf(" sbe = %f\n", data->gulp.sbulkenergy); printf(" energy = %f\n", data->gulp.energy); printf("E surf (un) = %f\n", data->gulp.esurf[0]); printf("E surf (re) = %f\n", data->gulp.esurf[1]); printf(" E att (un) = %f\n", data->gulp.eatt[0]); printf(" E att (re) = %f\n", data->gulp.eatt[1]); } /**************************************************/ /* eliminate repeated z values in a (sorted) list */ /**************************************************/ GSList *trim_zlist(GSList *zlist) { gdouble dz, *z1, *z2; GSList *list, *rlist; /* get 1st item */ list = zlist; if (list) { z1 = (gdouble *) list->data; list = g_slist_next(list); } else return(NULL); /* compare and eliminate repeats */ rlist = zlist; while (list) { z2 = (gdouble *) list->data; list = g_slist_next(list); dz = fabs(*z1 - *z2); if (dz < FRACTION_TOLERANCE) { rlist = g_slist_remove(rlist, z2); g_free(z2); } else z1 = z2; } return(rlist); } /*********************************************/ /* append a list of valid shifts for a plane */ /*********************************************/ #define DEBUG_CALC_SHIFTS 0 gint calc_valid_shifts(struct model_pak *data, struct plane_pak *pdata) { gint build, num_cuts, num_shifts, dummy[3]; gdouble gcd, zlim, *z1, *z2, vec[3]; GSList *slist, *list, *zlist; struct model_pak *surf; struct shift_pak *sdata; struct core_pak *core; struct mol_pak *mol; /* allocate & template */ surf = g_malloc(sizeof(struct model_pak)); model_init(surf); surf->mode = FREE; surf->id = GULP; surf->periodic = 2; /* actual surface we want constructed */ ARR3SET(surf->surface.miller, pdata->index); surf->surface.shift = 0.0; surf->surface.region[0] = 1.0; surf->surface.region[1] = 0.0; gcd = GCD(pdata->index[0], GCD(pdata->index[1], pdata->index[2])); #if DEBUG_CALC_SHIFTS printf("*** calc shifts ***\n"); printf("miller: %f %f %f\n",surf->surface.miller[0] ,surf->surface.miller[1] ,surf->surface.miller[2]); printf("region: %d %d\n", (gint) surf->surface.region[0], (gint) surf->surface.region[1]); printf(" gcd: %f\n", gcd); printf(" Shift: %f\n", surf->surface.shift); #endif generate_surface(data, surf); if (surf->surface.dspacing == 0.0) { printf("calc_valid_shifts() error, invalid dspacing.\n"); goto calc_valid_shifts_cleanup; } #if DEBUG_CALC_SHIFTS printf(" Dhkl: %f\n", surf->surface.dspacing); #endif /* transfer appropriate setup data to new model */ gulp_data_copy(data, surf); surf->gulp.run = E_SINGLE; surf->gulp.method = CONV; /* NEW */ pdata->area = surf->area; /* only sample one dhkl's worth of cuts */ zlim = G_MINDOUBLE - 1.0 / gcd; /* get all possible shifts from z coordinates */ zlist = NULL; /* z1 = g_malloc(sizeof(gdouble)); *z1 = 0.0; zlist = g_slist_prepend(zlist, z1); */ if (data->surface.ignore_bonding) { #if DEBUG_CALC_SHIFTS printf("Ignoring bonding...\n"); #endif /* core z coord */ for (list=surf->cores ; list ; list=g_slist_next(list)) { core = list->data; ARR3SET(vec, core->x); /* helps get around some precision problems */ vec[2] = decimal_round(vec[2], 6); /* grab one slice [0, -1.0) -> [0, -Dhkl) */ if (vec[2] < zlim) continue; if (vec[2] > 0.0) continue; /* NB: cartesian z direction is opposite to shift value sign */ z1 = g_malloc(sizeof(gdouble)); *z1 = -vec[2]; fractional_clamp(z1, dummy, 1); zlist = g_slist_prepend(zlist, z1); } } else { #if DEBUG_CALC_SHIFTS printf("Using molecule centroids... [%d]\n", g_slist_length(surf->moles)); #endif /* molecule centroid */ for (list=surf->moles ; list ; list=g_slist_next(list)) { mol = list->data; ARR3SET(vec, mol->centroid); /* helps get around some precision problems */ vec[2] = decimal_round(vec[2], 6); /* grab one slice [0, -1.0) -> [0, -Dhkl) */ if (vec[2] < zlim) continue; if (vec[2] > 0.0) continue; /* NB: cartesian z direction is opposite to shift value sign */ z1 = g_malloc(sizeof(gdouble)); *z1 = -vec[2]; fractional_clamp(z1, dummy, 1); zlist = g_slist_prepend(zlist, z1); } } zlist = g_slist_sort(zlist, (gpointer) zsort); num_cuts = g_slist_length(zlist); /* NEW - some pathalogical cases have shift values just above 0.0 */ /* resulting in no cuts - so enforce at least one */ if (!num_cuts) { z1 = g_malloc(sizeof(gdouble)); *z1 = 0.0; zlist = g_slist_prepend(zlist, z1); num_cuts = 1; } #if DEBUG_CALC_SHIFTS printf("Found %d shifts.\n", num_cuts); for (list=zlist ; list ; list=g_slist_next(list)) { z1 = (gdouble *) list->data; printf(" - %.20f\n", *z1); } printf("\n"); #endif zlist = trim_zlist(zlist); num_cuts = g_slist_length(zlist); #if DEBUG_CALC_SHIFTS printf("Found %d unique shifts.\n", num_cuts); for (list=zlist ; list ; list=g_slist_next(list)) { z1 = (gdouble *) list->data; printf("%.4f ", *z1); } printf("\n"); #endif /* failsafe */ if (!zlist) goto calc_valid_shifts_cleanup; /* use midpoints to avoid cutoff problems (also neater shift values) */ /* also, the unchanged first cut will be forced to 0.0 */ zlist = g_slist_reverse(zlist); z1 = zlist->data; list = g_slist_next(zlist); while (list) { z2 = list->data; *z1 = 0.5*(*z1 + *z2); z1 = z2; list = g_slist_next(list); } *z1 = 0.0; #if DEBUG_CALC_SHIFTS printf("Midpoint equivalent cuts:\n"); for (list=zlist ; list ; list=g_slist_next(list)) { z1 = (gdouble *) list->data; printf(" %.20f", *z1); } printf("\n"); #endif /* re-rank */ zlist = g_slist_sort(zlist, (gpointer) zsort); #if DEBUG_CALC_SHIFTS printf("Ranked shifts: %d\n", num_cuts); for (list=zlist ; list ; list=g_slist_next(list)) { z1 = (gdouble *) list->data; printf(" %f", *z1); } printf("\n"); #endif zlist = trim_zlist(zlist); num_shifts = g_slist_length(zlist); #if DEBUG_CALC_SHIFTS printf("Unique shifts: %d\n", num_shifts); for (list=zlist ; list ; list=g_slist_next(list)) { z1 = (gdouble *) list->data; printf(" %f", *z1); } printf("\n"); #endif /* turn bonding off */ build = data->build_molecules; if (data->surface.ignore_bonding && build) { data->build_molecules = FALSE; connect_bonds(data); connect_molecules(data); } /* generate & check each one */ /* NB: this'll overwrite our 1st model, saving having to delete it */ slist = NULL; for (list=zlist ; list ; list=g_slist_next(list)) { z1 = (gdouble *) list->data; /* destroy surfs core/shell lists */ free_core_list(surf); /* make the surface (also computes dipole) */ surf->surface.shift = *z1; generate_surface(data, surf); #if DEBUG_CALC_SHIFTS printf("Shift = %f, dipole = %f, bonds broken = %d / %f\n", *z1, surf->gulp.sdipole, surf->surface.bonds_cut, surf->area); #endif /* create new model if valid cut (unless user wants all cuts) */ if (fabs(surf->gulp.sdipole) < data->surface.dipole_tolerance || data->surface.include_polar) { sdata = shift_new(*z1); sdata->dipole = surf->gulp.sdipole; sdata->dipole_computed = TRUE; /* NEW - broken bonds per area calc */ sdata->bbpa = (gdouble) surf->surface.bonds_cut; sdata->bbpa /= surf->area; slist = g_slist_prepend(slist, sdata); } } /* new if shift list is non-empty, overwrite only if we found something */ if (slist) { slist = g_slist_reverse(slist); if (pdata->shifts) { shift_data_free(pdata->shifts); g_slist_free(pdata->shifts); } pdata->shifts = slist; } /* restore source model's connectivity */ if (data->surface.ignore_bonding && build) { data->build_molecules = build; connect_bonds(data); connect_molecules(data); } /* this has data only if the above was successful */ free_slist(zlist); calc_valid_shifts_cleanup: /* cleanup */ model_free(surf); g_free(surf); return(0); } /***********************************/ /* computes the dipole for a plane */ /***********************************/ #define DEBUG_TEST_VALID_SHIFTS 0 void test_valid_shifts(struct plane_pak *plane, struct model_pak *data) { GSList *list; struct shift_pak *shift; struct model_pak surf; #if DEBUG_TEST_VALID_SHIFTS printf("Testing for valid shifts [%d %d %d]\n", plane->index[0], plane->index[1], plane->index[2]); #endif /* init the model to be used for generating shifts */ model_init(&surf); gulp_data_copy(data, &surf); /* test the shifts */ for (list=plane->shifts ; list ; list=g_slist_next(list)) { shift = list->data; /* init the surface we want */ ARR3SET(surf.surface.miller, plane->index); surf.surface.region[0] = 1; surf.surface.region[1] = 0; surf.surface.shift = shift->shift; /* destroy old cores & then create the surface */ free_core_list(&surf); generate_surface(data, &surf); #if DEBUG_TEST_VALID_SHIFTS printf("[%f:%f]\n", shift->shift, surf.gulp.sdipole); #endif shift->dipole = surf.gulp.sdipole; shift->dipole_computed = TRUE; } } /******************************/ /* do the energy calculations */ /******************************/ #define DEBUG_EXEC_ECALC_TASK 0 void exec_ecalc_task(struct model_pak *model, gpointer data) { gchar *inp; struct task_pak *task = data; g_assert(model != NULL); g_assert(task != NULL); /* build the full path filename */ inp = g_build_filename(sysenv.cwd, model->gulp.temp_file, NULL); if (write_gulp(inp, model)) printf("write failed.\n"); else { if (!model->gulp.no_exec) { /* NEW */ task->status_file = g_build_filename(sysenv.cwd, model->gulp.out_file, NULL); if (exec_gulp(model->gulp.temp_file, model->gulp.out_file)) printf("exec failed.\n"); } } g_free(inp); } /*********************************************/ /* process result from an energy calculation */ /*********************************************/ #define DEBUG_PROC_ECALC_TASK 0 void proc_ecalc_task(struct model_pak *model) { gchar *out; struct shift_pak *sdata; g_assert(model != NULL); /* don't process if gulp execution was turned off */ if (model->gulp.no_exec) return; /* flag that gulp read routine shouldn't prep the model */ model->grafted = TRUE; /* read gulp file */ out = g_build_filename(sysenv.cwd, model->gulp.out_file, NULL); if (read_gulp_output(out, model)) printf("proc_ecalc_task() error: read failed.\n"); g_free(out); #if DEBUG_PROC_ECALC_TASK gulp_dump(model); #else /* unlink(model->gulp.temp_file); unlink(model->gulp.out_file); printf("inp: %s\n", model->gulp.temp_file); printf("out: %s\n", model->gulp.out_file); */ #endif /* feed energy into shift */ sdata = (model->planes)->data; if (sdata) { sdata->esurf[0] = model->gulp.esurf[0]; sdata->esurf[1] = model->gulp.esurf[1]; sdata->eatt[0] = model->gulp.eatt[0]; sdata->eatt[1] = model->gulp.eatt[1]; sdata->gnorm = model->gulp.gnorm; } /* gui update */ surf_shift_refresh(sdata); /* free model */ /* NB: this was a borrowed pointer, so we don't want it freed */ model->planes = NULL; model_free(model); g_free(model); } /***********************************************/ /* submit a background energy calculation task */ /***********************************************/ void new_ecalc_task(struct model_pak *model, struct plane_pak *pdata, struct shift_pak *sdata) { gint r1size; GSList *list; struct model_pak *surf; struct core_pak *core; g_assert(model != NULL); g_assert(pdata != NULL); g_assert(sdata != NULL); /* allocate & init new model for the surface */ surf = g_malloc(sizeof(struct model_pak)); model_init(surf); gulp_data_copy(model, surf); surf->id = GULP; surf->gulp.method = CONV; /* NEW - no dependance on this */ surf->surface.model = NULL; surf->surface.shift = sdata->shift; surf->surface.region[0] = sdata->region[0]; surf->surface.region[1] = sdata->region[1]; ARR3SET(surf->surface.miller, pdata->index); /* add the cores */ generate_surface(model, surf); gulp_files_init(surf); /* compute surface bulk energy */ surf->gulp.sbulkenergy = model->gulp.energy; surf->gulp.sbulkenergy /= (gdouble) model->num_atoms; r1size=0; for (list=surf->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->region == REGION1A) r1size++; } if (r1size) surf->gulp.sbulkenergy *= (gdouble) r1size; else printf("Warning: empty region 1.\n"); /* FIXME - cheat, by tacking the shift to update on the *planes* slist */ g_assert(surf->planes == NULL); surf->planes = g_slist_append(surf->planes, sdata); task_new("Energy", &exec_ecalc_task, surf, &proc_ecalc_task, surf, NULL); } /***********************************/ /* single region convergence cycle */ /***********************************/ #define DEBUG_SURF_CONV 1 gint surf_conv(FILE *fp, struct model_pak *model, gint type) { gint i, n, flag, relax, region, r1size, status; gdouble sbe, de, old_energy; gchar *inp, *out, *full_inp, *full_out; GSList *list; struct model_pak *surf; struct core_pak *core; struct plane_pak *plane; struct shift_pak *shift; g_assert(model != NULL); /* retrieve plane & shift */ plane = (model->planes)->data; shift = (plane->shifts)->data; switch(type) { case REGION1A: region = 0; break; case REGION2A: region = 1; break; default: printf("surf_conv() error: bad region type.\n"); return(1); } /* init surface */ surf = g_malloc(sizeof(struct model_pak)); model_init(surf); gulp_data_copy(model, surf); ARR3SET(surf->surface.miller, model->surface.miller); surf->surface.region[0] = model->surface.region[0]; surf->surface.region[1] = model->surface.region[1]; surf->surface.shift = model->surface.shift; surf->surface.converge_eatt = model->surface.converge_eatt; surf->sginfo.lookup = FALSE; /* which energy to converge */ if (model->gulp.run == E_OPTIMIZE) relax = 1; else relax = 0; /* surface bulk energy per atom */ sbe = model->gulp.energy; sbe /= (gdouble) model->num_atoms; /* converge region size */ n=flag=0; old_energy = 0.0; de = 99999999.9; status = 0; for (;;) { /* FIXME - any other stuff to free? */ free_core_list(surf); generate_surface(model, surf); /* compute surface bulk energy */ r1size=0; for (list=surf->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->region == REGION1A) r1size++; } if (!r1size) printf("Warning: empty region 1.\n"); surf->gulp.sbulkenergy = sbe * (gdouble) r1size; /* create appropriate name */ inp = g_strdup_printf("%s_%d_%d.gin", surf->basename, (gint) surf->surface.region[0], (gint) surf->surface.region[1]); out = g_strdup_printf("%s_%d_%d.got", surf->basename, (gint) surf->surface.region[0], (gint) surf->surface.region[1]); full_inp = g_build_filename(sysenv.cwd, inp, NULL); full_out = g_build_filename(sysenv.cwd, out, NULL); /* command cycle: write input, execute, read output */ /* if (0) */ for (i=0 ; i<3 ; i++) { if (!status) { switch(i) { case 0: status = write_gulp(full_inp, surf); break; case 1: status = exec_gulp(inp, out); if (!status) unlink(full_inp); /* printf("input: %s\n", full_inp); */ break; case 2: /* read_gulp_out() can call gui_text_show() which modifies */ /* the message widget, hence the thread lock is required */ /* FIXME - currently, this function surf_conv() is always */ /* called in a thread but what if it isn't? ie will the */ /* threads enter call deadlock if we're in the main GTK loop? */ gdk_threads_enter(); status = read_gulp_output(full_out, surf); if (!status) unlink(full_out); /* printf("output: %s\n", full_out); */ gdk_threads_leave(); break; } } } /* remove old files for next cycle */ g_free(full_inp); g_free(full_out); g_free(inp); g_free(out); /* get difference */ if (surf->surface.converge_eatt) { de = surf->gulp.eatt[relax] - old_energy; old_energy = surf->gulp.eatt[relax]; } else { de = surf->gulp.esurf[relax] - old_energy; old_energy = surf->gulp.esurf[relax]; } /* bad convergence checks */ if (n > 10 && de > 0.1) { fprintf(fp, "ERROR: failed convergence cycle.\n"); status = 1; break; } if (surf->surface.converge_eatt) { fprintf(fp, "[%d:%d] Eatt = %f (%f)\n", (gint) surf->surface.region[0], (gint) surf->surface.region[1], surf->gulp.eatt[relax], de); } else { fprintf(fp, "[%d:%d] Esurf = %f (%f)\n", (gint) surf->surface.region[0], (gint) surf->surface.region[1], surf->gulp.esurf[relax], de); } fflush(fp); /* convergence check */ if (surf->surface.converge_eatt) { if (fabs(de) < MAX_DEEATT) break; } else { if (fabs(de) < MAX_DESURF) break; } /* next size */ surf->surface.region[region]++; n++; } if (!status) fprintf(fp, "Region %d converged.\n", region+1); fflush(fp); /* we can go back one size, due to the way convergence is checked */ surf->surface.region[region]--; /* transfer data to source model */ model->surface.region[region] = surf->surface.region[region]; model->gulp.eatt[region] = surf->gulp.eatt[region]; model->gulp.esurf[region] = surf->gulp.esurf[region]; model->gulp.gnorm = surf->gulp.gnorm; /* cleanup */ model_free(surf); g_free(surf); return(status); } /*****************************************/ /* region convergence calculation (task) */ /*****************************************/ #define DEBUG_EXEC_REGCON_TASK 0 void exec_regcon_task(struct model_pak *model, struct task_pak *task) { gint m, r, run; gchar *name, *tmp; struct plane_pak *plane; FILE *fp; /* checks */ g_assert(model != NULL); g_assert(model->planes != NULL); g_assert(model->periodic == 3); /* NEW - status file */ tmp = gun("txt"); name = g_build_filename(sysenv.cwd, tmp, NULL); g_free(tmp); fp = fopen(name, "wt"); if (fp) task->status_file = name; else { fp = stdout; g_free(name); } /* retrieve plane & shift */ plane = (model->planes)->data; /* estimate starting region sizes from the dspacing for the plane */ g_return_if_fail(plane != NULL); /* mult dhkl by the gcd */ m = GCD(plane->index[0], GCD(plane->index[1], plane->index[2])); if (plane->dhkl < MIN_THICKNESS) { /* FIXME - what to do if dhkl is very small or even zero */ r = 1 + (gint) (MIN_THICKNESS / (m*plane->dhkl)); if (r > model->surface.region[0]) model->surface.region[0] = r; if (r > model->surface.region[1]) model->surface.region[1] = r; } fprintf(fp, "----------------------------------------------\n"); fprintf(fp, " Miller: %d %d %d \n", plane->index[0] , plane->index[1] , plane->index[2]); fprintf(fp, " Dhkl: %f\n", plane->dhkl); fprintf(fp, " Shift: %f\n", model->surface.shift); fprintf(fp, "Initial regions: %d , %d\n", (gint) model->surface.region[0], (gint) model->surface.region[1]); fprintf(fp, " Convergence: "); if (model->surface.converge_eatt) fprintf(fp, "Attachment Energy based\n"); else fprintf(fp, "Surface Energy based\n"); fprintf(fp, "----------------------------------------------\n"); /* save run type */ run = model->gulp.run; fprintf(fp, "Beginning unrelaxed convergence...\n"); /* converge region 2 size */ model->gulp.run = E_SINGLE; if (model->surface.converge_r2) { if (surf_conv(fp, model, REGION2A)) { task->message = g_strdup("Failed unrelaxed convergence of region 2.\n"); return; } } else fprintf(fp, "Skipping region 2 convergence...\n"); /* converge region 1 size */ if (model->surface.converge_r1) { if (surf_conv(fp, model, REGION1A)) { task->message = g_strdup("Failed unrelaxed convergence of region 1.\n"); return; } } else fprintf(fp, "Skipping region 1 convergence...\n"); /* if opti is specified - repeat with unrelaxed regions as starting point */ if (run == E_OPTIMIZE) { model->gulp.run = E_OPTIMIZE; fprintf(fp, "Beginning relaxed convergence...\n"); fflush(fp); /* converge region 2 size */ if (model->surface.converge_r2) { if (surf_conv(fp, model, REGION2A)) { if (task) task->message = g_strdup("Failed relaxed convergence of region 2.\n"); return; } fflush(fp); } else fprintf(fp, "Skipping region 2 convergence...\n"); /* converge region 1 size */ if (model->surface.converge_r1) { if (surf_conv(fp, model, REGION1A)) { if (task) task->message = g_strdup("Failed relaxed convergence of region 1.\n"); return; } fflush(fp); } else printf("Skipping region 1 convergence...\n"); } fclose(fp); } /**************************************/ /* region convergence task processing */ /**************************************/ #define DEBUG_PROC_REGON_TASK 0 void proc_regcon_task(struct model_pak *model) { struct plane_pak *plane; struct shift_pak *shift; /* checks */ g_assert(model != NULL); plane = (model->planes)->data; g_assert(plane != NULL); shift = (plane->shifts)->data; g_assert(shift != NULL); /* the shift pointer belongs to the main model, so */ /* we don't want it free'd when model is destroyed */ plane->shifts = NULL; #if DEBUG_PROC_REGON_TASK printf("Final regions: %d , %d\n", (gint) model->surface.region[0], (gint) model->surface.region[1]); printf("Final Esurf: %f , %f\n", model->gulp.esurf[0], model->gulp.esurf[1]); printf("Final Eatt: %f , %f\n", model->gulp.eatt[0], model->gulp.eatt[1]); printf("Final gnorm: %f\n", model->gulp.gnorm); #endif shift->region[0] = model->surface.region[0]; shift->region[1] = model->surface.region[1]; shift->esurf[0] = model->gulp.esurf[0]; shift->esurf[1] = model->gulp.esurf[1]; shift->eatt[0] = model->gulp.eatt[0]; shift->eatt[1] = model->gulp.eatt[1]; shift->gnorm = model->gulp.gnorm; /* update gui */ surf_shift_refresh(shift); shift->locked = FALSE; /* cleanup */ model_free(model); g_free(model); } /*********************************/ /* region convergence task setup */ /*********************************/ void new_regcon_task(struct model_pak *model, struct plane_pak *plane, struct shift_pak *shift) { GSList *list; struct core_pak *core; struct plane_pak *plane2; struct model_pak *temp; /* checks */ g_assert(model != NULL); g_assert(plane != NULL); g_assert(shift != NULL); /* NEW - prevent deletion */ shift->locked = TRUE; /* duplicate the data passed, since it may be changed */ /* or destroyed by the user while the task is still queued */ temp = g_malloc(sizeof(struct model_pak)); model_init(temp); /* duplicate source model data */ temp->gulp.energy = model->gulp.energy; gulp_data_copy(model, temp); temp->cores = dup_core_list(model->cores); /* FIXME - this is ugly, but the only way (curently) to do it, */ /* as dup_core_list dups shells - but doesn't add them to a list */ for (list=temp->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->shell) temp->shels = g_slist_prepend(temp->shels, core->shell); } /* TODO - implement a copy_lattice_info() primitive */ temp->periodic = model->periodic; temp->fractional = model->fractional; memcpy(temp->pbc, model->pbc, 6 * sizeof(gdouble)); memcpy(temp->latmat, model->latmat, 9 * sizeof(gdouble)); memcpy(temp->ilatmat, model->ilatmat, 9 * sizeof(gdouble)); temp->sginfo.spacename = g_strdup(model->sginfo.spacename); temp->sginfo.cellchoice = model->sginfo.cellchoice; /* always use name for lookup */ temp->sginfo.spacenum = -1; if (model->surface.ignore_bonding) temp->build_molecules = FALSE; /* TODO - enforce unfragment() ??? */ model_prep(temp); /* temp->fractional = TRUE; zone_init(temp); connect_bonds(temp); connect_molecules(temp); */ /* NEW - no dependence once we've spawned the task */ temp->surface.converge_eatt = model->surface.converge_eatt; temp->surface.model = NULL; temp->surface.shift = shift->shift; temp->surface.region[0] = shift->region[0]; temp->surface.region[1] = shift->region[1]; ARR3SET(temp->surface.miller, plane->index); /* append the required plane and shift to the temporary model */ plane2 = plane_new(temp->surface.miller, model); plane2->shifts = g_slist_append(plane2->shifts, shift); g_assert(temp->planes == NULL); temp->planes = g_slist_append(temp->planes, plane2); task_new("Regcon", &exec_regcon_task, temp, &proc_regcon_task, temp, NULL); } /*************************/ /* surface creation task */ /*************************/ void cb_surf_create(GtkWidget *w, struct model_pak *model) { struct plane_pak *plane; struct shift_pak *shift; /* setup plane */ plane = plane_new(surfdata.surface.miller, model); g_return_if_fail(plane != NULL); /* setup shift */ shift = shift_new(surfdata.surface.shift); shift->region[0] = surfdata.surface.region[0]; shift->region[1] = surfdata.surface.region[1]; /* create */ make_surface(model, plane, shift); /* avoid BSOD */ coords_init(INIT_COORDS, model); redraw_canvas(SINGLE); g_free(plane); g_free(shift); } /*****************************************/ /* act on all selected tasks in the list */ /*****************************************/ void surf_task_selected(GtkWidget *w, gint type) { gint refresh=FALSE; GList *list, *row; GtkTreeIter iter; GtkTreeModel *treemodel; GtkTreeSelection *selection; struct model_pak *model; struct plane_pak *plane; struct shift_pak *shift; /* checks */ treemodel = GTK_TREE_MODEL(surf_tree_store); selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(surf_tree_view)); if (!selection || !treemodel) return; /* acquire a list of selected rows */ list = gtk_tree_selection_get_selected_rows(selection, &treemodel); for (row=list ; row ; row=g_list_next(row)) { if (gtk_tree_model_get_iter(treemodel, &iter, row->data)) { gtk_tree_model_get(treemodel, &iter, SURF_MODEL, &model, SURF_PLANE, &plane, SURF_SHIFT, &shift, -1); /* perform the required operation */ switch (type) { case CALC_SHIFTS: if (plane && !shift) { surf_prune_shifts(plane); calc_valid_shifts(model, plane); fn_graft_plane(plane, model); } break; case CALC_ENERGY: if (shift) new_ecalc_task(model, plane, shift); break; case CONV_REGIONS: if (shift) new_regcon_task(model, plane, shift); break; case MAKE_FACES: if (shift) make_surface(model, plane, shift); refresh = TRUE; break; } } } g_list_foreach(list, (gpointer) gtk_tree_path_free, NULL); g_list_free(list); if (refresh) redraw_canvas(SINGLE); } /****************************************/ /* save the current surface calculation */ /****************************************/ void export_planes(gchar *name) { struct model_pak *data; gchar *filename, *a, *b; data = surfdata.surface.model; if (!data) return; /* process filename to force .gmf extension */ a = parse_strip(name); b = g_strconcat(a, ".gmf", NULL); filename = g_build_filename(sysenv.cwd, b, NULL); write_gmf(filename, data); dialog_destroy_type(FILE_SELECT); g_free(filename); g_free(b); g_free(a); } /******************************************/ /* apply a new morphology type to a model */ /******************************************/ void change_morph_type(struct model_pak *data, gint type) { gpointer camera; g_return_if_fail(data != NULL); data->morph_type = type; /* save camera */ camera = camera_dup(data->camera); morph_build(data); model_prep(data); coords_init(REDO_COORDS, data); /* rescale & restore camera */ camera_rescale(data->rmax, camera); camera_copy(data->camera, camera); g_free(camera); redraw_canvas(SINGLE); } /*****************************/ /* delete a shift in a plane */ /*****************************/ void surf_shift_delete(struct shift_pak *shift, struct plane_pak *plane) { g_assert(shift != NULL); g_assert(plane != NULL); plane->shifts = g_slist_remove(plane->shifts, shift); shift_free(shift); } /*******************************************/ /* delete a plane and symmetry equivalents */ /*******************************************/ void surf_plane_delete(struct plane_pak *plane, struct model_pak *data) { gint n=1; GSList *list; struct plane_pak *pcomp; g_assert(plane != NULL); g_assert(data != NULL); /* remove equivalents */ list = data->planes; while (list) { pcomp = list->data; list = g_slist_next(list); /* NB: don't delete the reference plane until the end */ if (pcomp == plane) continue; if (facet_equiv(data, plane->index, pcomp->index)) { data->planes = g_slist_remove(data->planes, pcomp); g_free(pcomp); n++; } } /* remove main plane */ data->planes = g_slist_remove(data->planes, plane); plane_free(plane); } /***************************/ /* shift deletion callback */ /***************************/ void surf_prune_selected(void) { GList *list, *row; GtkTreeIter iter; GtkTreeModel *treemodel; GtkTreeSelection *selection; struct model_pak *model=NULL; struct plane_pak *plane=NULL; struct shift_pak *shift=NULL; /* checks */ treemodel = GTK_TREE_MODEL(surf_tree_store); selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(surf_tree_view)); if (!selection || !treemodel) return; /* delete all selected shifts */ /* reverse enumeration so the tree store doesn't change when an iter is removed */ list = gtk_tree_selection_get_selected_rows(selection, &treemodel); for (row=g_list_last(list) ; row ; row=g_list_previous(row)) { if (gtk_tree_model_get_iter(treemodel, &iter, row->data)) { gtk_tree_model_get(treemodel, &iter, SURF_MODEL, &model, SURF_SHIFT, &shift, SURF_PLANE, &plane, -1); if (plane) { if (shift) { gtk_tree_store_remove(surf_tree_store, &iter); surf_shift_delete(shift, plane); } else { gtk_tree_store_remove(surf_tree_store, &iter); surf_plane_delete(plane, model); } } } } if (model) if (model->id == MORPH) change_morph_type(model, model->morph_type); g_list_foreach(list, (gpointer) gtk_tree_path_free, NULL); g_list_free(list); } /************************/ /* free the entire list */ /************************/ void surf_prune_all(void) { struct model_pak *model=surfdata.surface.model; g_assert(model != NULL); /* clear the tree view widget */ gtk_tree_store_clear(surf_tree_store); /* free the underlying data */ plane_data_free(model->planes); g_slist_free(model->planes); model->planes = NULL; model->num_planes = 0; } /*****************************/ /* remove all invalid shifts */ /*****************************/ void surf_prune_invalid(void) { gint m, n; GtkTreeIter iter, parent; GtkTreeModel *treemodel; struct model_pak *model=surfdata.surface.model; struct plane_pak *plane=NULL; struct shift_pak *shift=NULL; g_assert(model != NULL); treemodel = GTK_TREE_MODEL(surf_tree_store); if (!treemodel) return; /* loop backwards over planes */ m = gtk_tree_model_iter_n_children(treemodel, NULL) - 1; while (m >= 0) { if (!gtk_tree_model_iter_nth_child(treemodel, &parent, NULL, m)) break; m--; gtk_tree_model_get(treemodel, &parent, SURF_PLANE, &plane, -1); /* loop backwards over shifts in current plane */ n = gtk_tree_model_iter_n_children(treemodel, &parent) - 1; while (n >= 0) { if (!gtk_tree_model_iter_nth_child(treemodel, &iter, &parent, n)) break; n--; gtk_tree_model_get(treemodel, &iter, SURF_SHIFT, &shift, -1); /* test dipole */ if (fabs(shift->dipole) >= model->surface.dipole_tolerance) { gtk_tree_store_remove(surf_tree_store, &iter); surf_shift_delete(shift, plane); } } } } /*****************************************************/ /* callbacks to change the morphology type displayed */ /*****************************************************/ void bfdh_morph(struct model_pak *data) { change_morph_type(data, DHKL); } void equn_morph(struct model_pak *data) { change_morph_type(data, EQUIL_UN); } void grun_morph(struct model_pak *data) { change_morph_type(data, GROWTH_UN); } void eqre_morph(struct model_pak *data) { change_morph_type(data, EQUIL_RE); } void grre_morph(struct model_pak *data) { change_morph_type(data, GROWTH_RE); } /***********************************/ /* shift energy value modification */ /***********************************/ void shift_commit(GtkWidget *w, gpointer dummy) { gint i, empty[4]; const gchar *text[4]; gdouble value[4]; GList *list, *row; GtkTreeIter iter; GtkTreeModel *treemodel; GtkTreeSelection *selection; struct model_pak *model; struct plane_pak *plane; struct shift_pak *shift; /* checks */ treemodel = GTK_TREE_MODEL(surf_tree_store); selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(surf_tree_view)); if (!selection || !treemodel) return; /* acquire the energy values */ for (i=4 ; i-- ; ) { text[i] = gtk_entry_get_text(GTK_ENTRY(surf_morph_energy[i])); if (strlen(text[i])) empty[i] = FALSE; else empty[i] = TRUE; value[i] = str_to_float(text[i]); } /* modify all selected rows */ list = gtk_tree_selection_get_selected_rows(selection, &treemodel); for (row=list ; row ; row=g_list_next(row)) { if (gtk_tree_model_get_iter(treemodel, &iter, row->data)) { gtk_tree_model_get(treemodel, &iter, SURF_MODEL, &model, SURF_PLANE, &plane, SURF_SHIFT, &shift, -1); if (model && plane && shift) { if (!empty[0]) shift->esurf[0] = value[0]; if (!empty[1]) shift->eatt[0] = value[1]; if (!empty[2]) shift->esurf[1] = value[2]; if (!empty[3]) shift->eatt[1] = value[3]; fn_surf_set_shift(&iter, shift); update_plane_energy(plane, model); } } } if (model) if (model->id == MORPH) change_morph_type(model, model->morph_type); g_list_foreach(list, (gpointer) gtk_tree_path_free, NULL); g_list_free(list); } /************************************************/ /* added ranked faces based on dhkl to the list */ /************************************************/ #define DEBUG_ADD_RANKED_FACES 0 void add_ranked_faces(GtkWidget *w, gpointer dummy) { struct model_pak *data; GSList *list; /* checks */ data = surfdata.surface.model; if (!data) return; if (data->periodic != 3) return; list = get_ranked_faces((gint) rank_value, 0.0, data); #if DEBUG_ADD_RANKED_FACES printf("Maximum faces: %f\n", rank_value); printf(" Added faces: %d\n", g_slist_length(list)); #endif data->planes = g_slist_concat(data->planes, list); fn_graft_plane_list(list, data); } /*****************************************/ /* import a previous surface calculation */ /*****************************************/ void import_planes(gchar *name) { gchar *filename; GSList *plist; struct model_pak *data; struct plane_pak *pdata; data = surfdata.surface.model; if (!data) return; if (data->periodic != 3) { dialog_destroy_type(FILE_SELECT); gui_text_show(ERROR, "Source structure is not 3D periodic."); return; } filename = g_build_filename(sysenv.cwd, name, NULL); /* get the planes */ if (load_planes(filename, data)) { gui_text_show(ERROR, "Bad planes file."); return; } plist = data->planes; while (plist != NULL) { pdata = plist->data; /* if shift list is empty (primary plane only!) */ /* then add the result of a calc valid shifts */ /* otherwise verify the supplied shift */ if (pdata->primary) { if (pdata->shifts) test_valid_shifts(pdata, data); else calc_valid_shifts(data, pdata); } plist = g_slist_next(plist); } /* clean up */ dialog_destroy_type(FILE_SELECT); fn_graft_plane_list(data->planes, data); g_free(filename); } /***********************************************/ /* handle import/export file selection request */ /***********************************************/ void surf_load_planes(void) { file_dialog("Load planes", NULL, FILE_LOAD, (gpointer) import_planes, MORPH); } void surf_save_planes(void) { file_dialog("Save planes", NULL, FILE_SAVE, (gpointer) export_planes, MORPH); } /**********************************/ /* tree selection change callback */ /**********************************/ void surf_selection_changed(GtkTreeSelection *selection, gpointer data) { gint i, j; gchar *text; GList *list, *row; GtkTreeIter iter, child; GtkTreePath *last; GtkTreeModel *treemodel; struct model_pak *model=NULL; struct plane_pak *plane=NULL; struct shift_pak *shift=NULL; /* checks */ treemodel = GTK_TREE_MODEL(surf_tree_store); if (!treemodel) return; /* blank the hkl family entry */ gtk_entry_set_text(GTK_ENTRY(surf_hkl_family), ""); /* only update input widget if one row selected */ list = gtk_tree_selection_get_selected_rows(selection, &treemodel); if (g_list_length(list) == 1) { if (gtk_tree_model_get_iter(treemodel, &iter, list->data)) { gtk_tree_model_get(treemodel, &iter, SURF_MODEL, &model, SURF_PLANE, &plane, SURF_SHIFT, &shift, -1); g_assert(model != NULL); /* CURRENT - print hkl family */ { gint *m; GSList *l1, *l2; GString *family; family = g_string_new(NULL); l2 = get_facet_equiv(model, plane->index); for (l1=l2 ; l1 ; l1=g_slist_next(l1)) { m = l1->data; g_string_sprintfa(family, "(%d %d %d) ", m[0], m[1], m[2]); } gtk_entry_set_text(GTK_ENTRY(surf_hkl_family), family->str); g_string_free(family, TRUE); free_slist(l2); } /* disallow parent selection? */ if (model->id == MORPH) { if (plane && shift) { j=0; for (i=SURF_ESURF_UNRE ; i<=SURF_EATT_RE ; i++) { gtk_tree_model_get(treemodel, &iter, i, &text, -1); g_strstrip(text); if (text) gtk_entry_set_text(GTK_ENTRY(surf_morph_energy[j]), text); g_free(text); j++; } } } else { if (plane) { ARR3SET(surfdata.surface.miller, plane->index); } if (shift) { surfdata.surface.shift = shift->shift; surfdata.surface.region[0] = shift->region[0]; surfdata.surface.region[1] = shift->region[1]; } /* update widgets */ gui_relation_update(model); } } } /* for each selected plane - expand row - select all shifts */ for (row=list ; row ; row=g_list_next(row)) { if (gtk_tree_model_get_iter(treemodel, &iter, row->data)) { gtk_tree_view_expand_row(GTK_TREE_VIEW(surf_tree_view), row->data, TRUE); gtk_tree_model_get(treemodel, &iter, SURF_MODEL, &model, SURF_PLANE, &plane, SURF_SHIFT, &shift, -1); /* if (and only if) row is a plane - select self and all children */ if (plane && !shift) { j = gtk_tree_model_iter_n_children(treemodel, &iter); if (j) { if (gtk_tree_model_iter_nth_child(treemodel, &child, &iter, j-1)) { last = gtk_tree_model_get_path(treemodel, &child); gtk_tree_selection_select_range(selection, row->data, last); gtk_tree_path_free(last); } } } } } g_list_foreach(list, (gpointer) gtk_tree_path_free, NULL); g_list_free(list); } /*********************/ /* collapse all rows */ /*********************/ void surf_collapse_all(void) { gtk_tree_view_collapse_all(GTK_TREE_VIEW(surf_tree_view)); } /*******************/ /* expand all rows */ /*******************/ void surf_expand_all(void) { gtk_tree_view_expand_all(GTK_TREE_VIEW(surf_tree_view)); } /*******************/ /* select all rows */ /*******************/ void surf_select_all(void) { GtkTreeSelection *selection; selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(surf_tree_view)); if (!selection) return; gtk_tree_selection_select_all(selection); } /**************************/ /* morphology type change */ /**************************/ void surf_morph_type(GtkWidget *w, gpointer data) { const gchar *text; struct model_pak *model=data; g_assert(model != NULL); text = gtk_entry_get_text(GTK_ENTRY(w)); model->morph_type = DHKL; if (g_ascii_strncasecmp(text, "Esurf (u", 8) == 0) model->morph_type = EQUIL_UN; if (g_ascii_strncasecmp(text, "Esurf (r", 8) == 0) model->morph_type = EQUIL_RE; if (g_ascii_strncasecmp(text, "Eatt (u", 7) == 0) model->morph_type = GROWTH_UN; if (g_ascii_strncasecmp(text, "Eatt (r", 7) == 0) model->morph_type = GROWTH_RE; if (g_ascii_strncasecmp(text, "broken", 6) == 0) model->morph_type = MORPH_BBPA; } /*******************************/ /* shift perturbation callback */ /*******************************/ void gui_shift_perturb(GtkWidget *w, struct model_pak *model) { surf_shift_explore(model, &surfdata.surface); } /******************/ /* MENU structure */ /******************/ static GtkItemFactoryEntry surface_menu[] = { { "/File", NULL, NULL, 0, "" }, /* { "/File/Create morphology", NULL, make_morph, 1, NULL }, */ { "/File/sep1", NULL, NULL, 0, "" }, { "/File/Load planes...", NULL, surf_load_planes, 1, NULL }, { "/File/Save planes...", NULL, surf_save_planes, 1, NULL }, { "/Edit", NULL, NULL, 0, "" }, { "/Edit/Collapse all", NULL, surf_collapse_all, 1, NULL }, { "/Edit/Expand all", NULL, surf_expand_all, 1, NULL }, { "/Edit/sep1", NULL, NULL, 0, "" }, { "/Edit/Delete invalid", NULL, surf_prune_invalid, 1, NULL }, { "/Edit/Delete selected", NULL, surf_prune_selected, 1, NULL }, { "/Edit/Delete all", NULL, surf_prune_all, 1, NULL }, { "/Edit/sep1", NULL, NULL, 0, "" }, { "/Edit/Select all", NULL, surf_select_all, 1, NULL } }; /************************************/ /* surface creation/cut elimination */ /************************************/ void surface_dialog(void) { gint i, j, surface_entries; gchar *title; gpointer dialog, entry; GList *list; GtkWidget *window, *scr_win, *frame, *menu_bar; GtkWidget *hbox1, *hbox, *vbox1, *vbox2, *vbox3, *vbox; GtkWidget *label, *button, *spin; GtkCellRenderer *renderer; GtkTreeViewColumn *column; GtkTreeSelection *select; GtkItemFactory *item; struct model_pak *data; data = sysenv.active_model; /* checks */ if (!data) return; if (data->periodic != 3) { if (data->id != MORPH) { gui_text_show(ERROR, "Your model is not 3D periodic.\n"); return; } } /* new dialog */ dialog = dialog_request(GENSURF, "Surfaces", NULL, NULL, data); if (!dialog) return; window = dialog_window(dialog); if (fabs(data->gulp.energy) < FRACTION_TOLERANCE && data->id != MORPH) { gui_text_show(WARNING, "Has the total energy been calculated?\n"); } /* FIXME - what if bonding is switched off? */ data->surface.bonds_full = g_slist_length(data->bonds); /* init the current surface */ all_planes = FALSE; model_init(&surfdata); surfdata.surface.model = data; surfdata.surface.shift = data->surface.shift; surfdata.surface.region[0] = data->surface.region[0]; surfdata.surface.region[1] = data->surface.region[1]; ARR3SET(surfdata.surface.miller, data->surface.miller); if (data->id == MORPH) title = g_strdup_printf("%s morphology", data->basename); else { title = g_strdup_printf("%s surfaces", data->basename); /* enforce whole molecules */ model_colour_scheme(data->colour_scheme, data); coords_init(CENT_COORDS, data); } gtk_window_set_default_size(GTK_WINDOW(window), 800, 600); gtk_window_set_title(GTK_WINDOW(window), title); g_free(title); /* main vbox */ vbox = gtk_vbox_new(FALSE,0); gtk_container_add(GTK_CONTAINER(GTK_DIALOG(window)->vbox), vbox); /* NEW - menu */ surface_entries = sizeof (surface_menu) / sizeof (surface_menu[0]); item = gtk_item_factory_new(GTK_TYPE_MENU_BAR, "", NULL); gtk_item_factory_create_items(item, surface_entries, surface_menu, NULL); menu_bar = gtk_item_factory_get_widget(item, ""); gtk_box_pack_start(GTK_BOX(vbox), menu_bar, FALSE, FALSE, 0); /* hbox for split pane */ hbox1 = gtk_hbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(vbox), hbox1, TRUE, TRUE, 10); if (data->id == MORPH) { /* left vbox */ vbox1 = gtk_vbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(hbox1), vbox1, FALSE, FALSE, PANEL_SPACING); frame = gtk_frame_new("Morphology type"); gtk_box_pack_start(GTK_BOX(vbox1),frame,FALSE,FALSE,0); vbox = gtk_vbox_new(FALSE,0); gtk_container_add(GTK_CONTAINER(frame), vbox); gtk_container_set_border_width(GTK_CONTAINER(GTK_BOX(vbox)), PANEL_SPACING); /* display type */ /* TODO - for loop ??? */ new_radio_group(0, vbox, TT); button = add_radio_button("BFDH", (gpointer) bfdh_morph, data); if (data->morph_type == DHKL) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Equilibrium unrelaxed", (gpointer) equn_morph, data); if (data->morph_type == EQUIL_UN) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Growth unrelaxed", (gpointer) grun_morph, data); if (data->morph_type == GROWTH_UN) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Equilibrium relaxed", (gpointer) eqre_morph, data); if (data->morph_type == EQUIL_RE) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Growth relaxed", (gpointer) grre_morph, data); if (data->morph_type == GROWTH_RE) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* editable shift values */ frame = gtk_frame_new("Shift values"); gtk_box_pack_start(GTK_BOX(vbox1),frame,FALSE,FALSE,0); vbox = gtk_vbox_new(FALSE, PANEL_SPACING); gtk_container_add(GTK_CONTAINER(frame), vbox); gtk_container_set_border_width(GTK_CONTAINER(vbox), PANEL_SPACING); j=0; for (i=SURF_ESURF_UNRE ; i<=SURF_EATT_RE ; i++) { hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); switch (i) { case SURF_ESURF_UNRE: label = gtk_label_new("Esurf (unrelaxed)"); break; case SURF_EATT_UNRE: label = gtk_label_new("Eatt (unrelaxed)"); break; case SURF_ESURF_RE: label = gtk_label_new("Esurf (relaxed)"); break; case SURF_EATT_RE: default: label = gtk_label_new("Eatt (relaxed)"); break; } /* row */ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); surf_morph_energy[j] = gtk_entry_new(); gtk_box_pack_end(GTK_BOX(hbox), surf_morph_energy[j], FALSE, FALSE, 0); gtk_widget_set_size_request(surf_morph_energy[j], 9*sysenv.gtk_fontsize, -1); j++; } } else { /* left vbox */ vbox = gtk_vbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(hbox1), vbox, FALSE, FALSE, 10); frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(vbox),frame,FALSE,FALSE,0); vbox3 = gtk_vbox_new(FALSE, PANEL_SPACING); gtk_container_add(GTK_CONTAINER(frame), vbox3); gtk_container_set_border_width(GTK_CONTAINER(vbox3), PANEL_SPACING); /* two vboxes; one for labels, the other for the spinners */ hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(vbox3), hbox, TRUE, FALSE, 0); vbox1 = gtk_vbox_new(TRUE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(hbox), vbox1, TRUE, FALSE, 0); vbox2 = gtk_vbox_new(TRUE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(hbox), vbox2, TRUE, FALSE, 0); /* labels */ label = gtk_label_new("Miller"); gtk_box_pack_start(GTK_BOX(vbox1), label, TRUE, FALSE, 0); label = gtk_label_new("Shift"); gtk_box_pack_start(GTK_BOX(vbox1), label, TRUE, FALSE, 0); label = gtk_label_new("Depths"); gtk_box_pack_start(GTK_BOX(vbox1), label, TRUE, FALSE, 0); /* miller */ hbox = gtk_hbox_new(TRUE, 0); gtk_box_pack_start(GTK_BOX(vbox2), hbox, TRUE, FALSE, 0); spin = gui_direct_spin(NULL, &surfdata.surface.miller[0], -99, 99, 1, NULL, NULL, hbox); gtk_widget_set_size_request(spin, 6*sysenv.gtk_fontsize, -1); spin = gui_direct_spin(NULL, &surfdata.surface.miller[1], -99, 99, 1, NULL, NULL, hbox); gtk_widget_set_size_request(spin, 6*sysenv.gtk_fontsize, -1); spin = gui_direct_spin(NULL, &surfdata.surface.miller[2], -99, 99, 1, NULL, NULL, hbox); gtk_widget_set_size_request(spin, 6*sysenv.gtk_fontsize, -1); /* shift */ hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox2), hbox, TRUE, FALSE, 0); spin = gui_direct_spin(NULL, &surfdata.surface.shift, 0.0, 1.0, 0.05, NULL, NULL, hbox); gtk_spin_button_set_digits(GTK_SPIN_BUTTON(spin), 4); gtk_widget_set_size_request(spin, 6*sysenv.gtk_fontsize, -1); /* regions */ hbox = gtk_hbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(vbox2), hbox, TRUE, FALSE, 0); gui_direct_spin(NULL, &surfdata.surface.region[0], 0, 99, 1, NULL, NULL, hbox); gui_direct_spin(NULL, &surfdata.surface.region[1], 0, 99, 1, NULL, NULL, hbox); /* create this surface */ gui_button(" Create ", cb_surf_create, (gpointer) data, hbox, TF); /* frame for adding a faces */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(vbox), frame, FALSE, FALSE, PANEL_SPACING); vbox1 = gtk_vbox_new(TRUE, PANEL_SPACING); gtk_container_add(GTK_CONTAINER(frame), vbox1); gtk_container_set_border_width(GTK_CONTAINER(vbox1), PANEL_SPACING); gui_button_x("Add the current surface", fn_add_plane_with_shift, NULL, vbox1); gui_button_x("Add all valid shifts", fn_add_valid_shifts, NULL, vbox1); hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(vbox1), hbox, TRUE, TRUE, 0); gui_direct_spin("Add ", &rank_value, 1, 50, 1, NULL, NULL, hbox); label = gtk_label_new(" Dhkl ranked faces "); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); gui_button_x(NULL, add_ranked_faces, NULL, hbox); /* CURRENT */ /* gui_button_x("Shift perturbation (exp) ", gui_shift_perturb, data, vbox1); */ /* frame for morphology construction */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(vbox), frame, FALSE, FALSE, PANEL_SPACING); vbox1 = gtk_vbox_new(TRUE, PANEL_SPACING); gtk_container_add(GTK_CONTAINER(frame), vbox1); gtk_container_set_border_width(GTK_CONTAINER(vbox1), PANEL_SPACING); /* FIXME - this seems to be broken */ /* gui_button_x("Overlay morphology", surf_make_morph, data, vbox1); */ gui_button_x("Create morphology", make_morph, NULL, vbox1); hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(vbox1), hbox, TRUE, TRUE, 0); spin = new_spinner("Create nuclei with size ", 1.0, 1000.0, 1.0, NULL, NULL, hbox); g_object_set_data(G_OBJECT(spin), "model", data); gui_button_x(NULL, morph_sculpt, spin, hbox); /* CURRENT */ gui_direct_check("Cleave to match shift (EXP)", &data->sculpt_shift_use, NULL, NULL, vbox1); hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(vbox1), hbox, TRUE, TRUE, 0); list = NULL; list = g_list_append(list, "Dhkl"); list = g_list_append(list, "Esurf (u)"); list = g_list_append(list, "Esurf (r)"); list = g_list_append(list, "Eatt (u)"); list = g_list_append(list, "Eatt (r)"); list = g_list_append(list, "Broken bonds"); entry = gui_pulldown_new("Morphology type ", list, FALSE, hbox); g_signal_connect(GTK_OBJECT(entry), "changed", GTK_SIGNAL_FUNC(surf_morph_type), data); /* frame for convergence check buttons */ frame = gtk_frame_new("Convergence"); gtk_box_pack_start(GTK_BOX(vbox),frame,FALSE,FALSE,PANEL_SPACING); vbox1 = gtk_vbox_new(FALSE,0); gtk_container_add(GTK_CONTAINER(frame), vbox1); gtk_container_set_border_width (GTK_CONTAINER(GTK_BOX(vbox1)), PANEL_SPACING); gui_direct_check("Attachment energy based", &data->surface.converge_eatt, NULL, NULL, vbox1); gui_direct_check("Converge region 1", &data->surface.converge_r1, NULL, NULL, vbox1); gui_direct_check("Converge region 2", &data->surface.converge_r2, NULL, NULL, vbox1); /* frame for option check buttons */ frame = gtk_frame_new("Construction"); gtk_box_pack_start(GTK_BOX(vbox),frame,FALSE,FALSE,PANEL_SPACING); vbox1 = gtk_vbox_new(FALSE,0); gtk_container_add(GTK_CONTAINER(frame), vbox1); gtk_container_set_border_width (GTK_CONTAINER(GTK_BOX(vbox1)), PANEL_SPACING); gui_direct_check("Allow polar surfaces", &data->surface.include_polar, NULL, NULL, vbox1); gui_direct_check("Allow bond cleaving", &data->surface.ignore_bonding, NULL, NULL, vbox1); gui_direct_check("Ignore model symmetry", &data->surface.ignore_symmetry, NULL, NULL, vbox1); gui_direct_check("Preserve depth periodicity", &data->surface.true_cell, NULL, NULL, vbox1); gui_direct_check("Preserve atom ordering", &data->surface.keep_atom_order, NULL, NULL, vbox1); /* misc options */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(vbox),frame,FALSE,FALSE,PANEL_SPACING); vbox1 = gtk_vbox_new(FALSE,0); gtk_container_add(GTK_CONTAINER(frame), vbox1); gtk_container_set_border_width(GTK_CONTAINER(GTK_BOX(vbox1)), PANEL_SPACING); hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(vbox1), hbox, TRUE, TRUE, 0); gui_direct_spin("Surface dipole cutoff ", &data->surface.dipole_tolerance, 0.001, 99.999, 0.001, NULL, NULL, hbox); } /* right vbox */ vbox1 = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(hbox1), vbox1, TRUE, TRUE, 0); /* valid cut listing */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(vbox1),frame,TRUE,TRUE,0); vbox = gtk_vbox_new(FALSE, PANEL_SPACING); gtk_container_add(GTK_CONTAINER(frame), vbox); gtk_container_set_border_width(GTK_CONTAINER(GTK_BOX(vbox)), PANEL_SPACING); /* scrolled model pane */ scr_win = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scr_win), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_box_pack_start(GTK_BOX(vbox), scr_win, TRUE, TRUE, 0); /* planes storage */ surf_tree_store = gtk_tree_store_new(SURF_NCOLS, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_POINTER, G_TYPE_POINTER, G_TYPE_POINTER); /* planes viewing widget */ surf_tree_view = gtk_tree_view_new_with_model(GTK_TREE_MODEL(surf_tree_store)); gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(scr_win), surf_tree_view); /* set up column renderers */ for (i=0 ; i<=SURF_GNORM ; i++) { renderer = gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes(titles[i], renderer, "text", i, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(surf_tree_view), column); } /* setup the selection handler */ select = gtk_tree_view_get_selection(GTK_TREE_VIEW(surf_tree_view)); gtk_tree_selection_set_mode(select, GTK_SELECTION_MULTIPLE); g_signal_connect(G_OBJECT(select), "changed", G_CALLBACK(surf_selection_changed), NULL); fn_graft_plane_list(data->planes, data); /* CURRENT - list of hkl family planes */ surf_hkl_family = gtk_entry_new(); gtk_box_pack_start(GTK_BOX(vbox), surf_hkl_family, FALSE, FALSE, 0); if (data->id == MORPH) { /* shift operation button row */ hbox = gtk_hbox_new(TRUE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); gui_button("Commit ", shift_commit, NULL, hbox, TT); gui_button("Delete ", surf_prune_selected, data, hbox, TT); } else { hbox = gtk_hbox_new(TRUE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); gui_button("Create surface", surf_task_selected, (gpointer) MAKE_FACES, hbox, TT); gui_button("Converge regions", surf_task_selected, (gpointer) CONV_REGIONS, hbox, TT); gui_button("Calculate energy", surf_task_selected, (gpointer) CALC_ENERGY, hbox, TT); gui_button("Calculation setup", gulp_dialog, data, hbox, TT); /* hbox = gtk_hbox_new(TRUE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); gui_button("Find valid shifts", surf_task_selected, (gpointer) CALC_SHIFTS, hbox, TT); gui_button("Remove selected", surf_prune_selected, data, hbox, TT); gui_button("Remove invalid", surf_prune_invalid, data, hbox, TT); gui_button("Remove all", surf_prune_all, data, hbox, TT); */ } /* terminating button */ gui_stock_button(GTK_STOCK_CLOSE, dialog_destroy, dialog, GTK_DIALOG(window)->action_area); /* done */ gtk_widget_show_all(window); } gdis-0.90/gui_siesta.c0000644000175000017500000015700610600706736013344 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include "gdis.h" #include "coords.h" #include "model.h" #include "file.h" #include "matrix.h" #include "module.h" #include "numeric.h" #include "parse.h" #include "project.h" #include "render.h" #include "spatial.h" #include "quaternion.h" #include "task.h" #include "interface.h" #include "dialog.h" #include "gui_shorts.h" /* #include "meschach/matrix-meschach.h" */ #include "mesch.h" #include "gui_siesta.h" extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; static gboolean siestafileWRITE; /******************************/ /* toggle eigenvector display */ /******************************/ void gui_siesta_mode_show(GtkWidget *w, gpointer dialog) { gint i, atom, state; gdouble scale, x1[3], x2[3], colour[3]; gpointer button, spin; GSList *list; struct core_pak *core; struct spatial_pak *spatial; struct model_pak *model; g_assert(dialog != NULL); model = dialog_model(dialog); g_assert(model != NULL); button = dialog_child_get(dialog, "phonon_toggle"); g_assert(button != NULL); spatial_destroy_by_label("siesta_phonons", model); state = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(button)); if (!state) { redraw_canvas(SINGLE); return; } spin = dialog_child_get(dialog, "phonon_scaling"); scale = SPIN_FVAL(spin); /* create & init the spatial object */ spatial = spatial_new("siesta_phonons", SPATIAL_VECTOR, 2, TRUE, model); atom = 0; /* get eigenvectors from all atoms */ for (list=model->cores ; list; list=g_slist_next(list)) { core = list->data; ARR3SET(x1, core->x); /* get current eigenvector */ i = model->siesta.sorted_eig_values[model->siesta.current_animation]; x2[0] = mesch_me_get(model->siesta.eigen_xyz_atom_mat, 3*atom, i); x2[1] = mesch_me_get(model->siesta.eigen_xyz_atom_mat, 3*atom+1, i); x2[2] = mesch_me_get(model->siesta.eigen_xyz_atom_mat, 3*atom+2, i); atom++; /* compute coords */ VEC3MUL(x2, scale); vecmat(model->ilatmat, x2); ARR3ADD(x2, x1); /* add to spatial */ spatial_vertex_add(x2, colour, spatial); spatial_vertex_add(x1, colour, spatial); } /* drawing update */ coords_compute(model); redraw_canvas(SINGLE); } /*******************************/ /* update frequency entry text */ /*******************************/ void gui_siesta_frequency_set(gpointer dialog) { gint m; gchar *text; gdouble f; gpointer entry; struct model_pak *model; model = dialog_model(dialog); g_assert(model != NULL); entry = dialog_child_get(dialog, "phonon_entry"); g_assert(entry != NULL); m = model->siesta.current_animation; g_assert(m >= 0); g_assert(m < model->siesta.num_animations); f = make_eigvec_freq(mesch_ve_get(model->siesta.eigen_values, model->siesta.sorted_eig_values[m])); text = g_strdup_printf("%f", f); gtk_entry_set_text(GTK_ENTRY(entry), text); g_free(text); } /***************************/ /* slider bar event change */ /***************************/ void gui_siesta_slider_changed(GtkWidget *w, gpointer dialog) { gint m; struct model_pak *model; g_assert(w != NULL); g_assert(dialog != NULL); model = dialog_model(dialog); m = nearest_int(gtk_range_get_value(GTK_RANGE(w))); model->siesta.current_animation = m-1; /* 1..n range -> 0..n-1 */ gui_siesta_frequency_set(dialog); gui_siesta_mode_show(NULL, dialog); } /*********************/ /* move to next mode */ /*********************/ void gui_siesta_mode_next(GtkWidget *w, gpointer dialog) { gdouble m; gpointer slider; slider = dialog_child_get(dialog, "phonon_slider"); m = gtk_range_get_value(GTK_RANGE(slider)); m++; gtk_range_set_value(GTK_RANGE(slider), m); } /*************************/ /* move to previous mode */ /*************************/ void gui_siesta_mode_prev(GtkWidget *w, gpointer dialog) { gdouble m; gpointer slider; slider = dialog_child_get(dialog, "phonon_slider"); m = gtk_range_get_value(GTK_RANGE(slider)); m--; gtk_range_set_value(GTK_RANGE(slider), m); } /***********************************/ /* cleanup a vibrational animation */ /***********************************/ void siesta_phonon_cleanup(struct model_pak *model) { GSList *list; struct core_pak *core; g_assert(model != NULL); for (list=model->cores ; list; list=g_slist_next(list)) { core = list->data; VEC3SET(core->offset, 0.0, 0.0, 0.0); } } /************************************/ /* timeout to control the animation */ /************************************/ /* NB: lots of sanity checks that return with FALSE (ie stop timeout) */ /* so if the model is deleted during an animation we don't segfault */ #define MAX_PULSE_COUNT 10.0 gint siesta_phonon_timer(gpointer dialog) { static gint count=0; gint atom, mode; gchar *text, *name; gdouble f, x1[3]; gpointer spin; GSList *list; struct core_pak *core; struct model_pak *model; /* checks */ if (!dialog_valid(dialog)) return(FALSE); model = dialog_model(dialog); g_assert(model != NULL); /* stop animation? */ if (!model->pulse_direction) { siesta_phonon_cleanup(model); coords_compute(model); redraw_canvas(SINGLE); return(FALSE); } /* setup animation resolution */ spin = dialog_child_get(dialog, "phonon_resolution"); model->pulse_max = SPIN_FVAL(spin); /* setup scaling for this step */ model->pulse_count += model->pulse_direction; if (model->pulse_count <= -model->pulse_max) { model->pulse_count = -model->pulse_max; model->pulse_direction = 1; } if (model->pulse_count >= model->pulse_max) { model->pulse_count = model->pulse_max; model->pulse_direction = -1; } spin = dialog_child_get(dialog, "phonon_scaling"); f = SPIN_FVAL(spin); f *= (gdouble) model->pulse_count; f /= model->pulse_max; atom = 0; mode = model->siesta.sorted_eig_values[model->siesta.current_animation]; /* get eigenvectors from all atoms */ for (list=model->cores ; list; list=g_slist_next(list)) { core = list->data; ARR3SET(x1, core->x); //get x,y,z for given freq. core->offset[0] = mesch_me_get(model->siesta.eigen_xyz_atom_mat, 3*atom, mode); core->offset[1] = mesch_me_get(model->siesta.eigen_xyz_atom_mat, 3*atom+1, mode); core->offset[2] = mesch_me_get(model->siesta.eigen_xyz_atom_mat, 3*atom+2, mode); atom++; /* pulse offset scaling */ VEC3MUL(core->offset, f); vecmat(model->ilatmat, core->offset); } /* recalc coords */ coords_compute(model); /* CURRENT - output to povray for movie rendering */ if (model->phonon_movie) { if (!model->pulse_count && model->pulse_direction==1) { model->phonon_movie = FALSE; count=0; text = g_strdup_printf("%s -delay 20 %s_*.tga %s.%s", sysenv.convert_path, model->phonon_movie_name, model->phonon_movie_name, model->phonon_movie_type); system(text); g_free(text); return(FALSE); } else { text = g_strdup_printf("%s_%06d.pov", model->phonon_movie_name, count++); name = g_build_filename(sysenv.cwd, text, NULL); write_povray(name, model); povray_exec(name); g_free(text); g_free(name); } } else redraw_canvas(SINGLE); return(TRUE); } /****************************/ /* animate the current mode */ /****************************/ void siesta_phonon_start(GtkWidget *w, gpointer dialog) { struct model_pak *model; g_assert(dialog != NULL); model = dialog_model(dialog); g_assert(model != NULL); model->pulse_count = 0; model->pulse_direction = 1; g_timeout_add(100, (GSourceFunc) siesta_phonon_timer, dialog); } /******************************/ /* stop phonon mode animation */ /*****************************/ void siesta_phonon_stop(GtkWidget *w, gpointer dialog) { struct model_pak *model; g_assert(dialog != NULL); model = dialog_model(dialog); g_assert(model != NULL); /* reset */ model->pulse_direction = 0; model->pulse_count = 0; model->phonon_movie = FALSE; } /**************************************/ /* create a movie of the current mode */ /**************************************/ void siesta_phonon_movie(GtkWidget *w, gpointer dialog) { gpointer entry; struct model_pak *model; model = dialog_model(dialog); g_assert(model != NULL); entry = dialog_child_get(dialog, "phonon_movie_name"); g_assert(entry != NULL); /* FIXME - GULP phonon movie uses the same variable */ g_free(model->phonon_movie_name); model->phonon_movie_name = g_strdup(gtk_entry_get_text(GTK_ENTRY(entry))); entry = dialog_child_get(dialog, "phonon_movie_type"); g_assert(entry != NULL); g_free(model->phonon_movie_type); model->phonon_movie_type = g_strdup(gtk_entry_get_text(GTK_ENTRY(entry))); model->phonon_movie = TRUE; siesta_phonon_start(NULL, dialog); } /*****************************/ /* SIESTA phonon calculation */ /*****************************/ /* TODO - relocate */ gint siesta_phonon_calc(struct model_pak *model) { gint num_tokens, num_atoms, num_lines, i, j, k, l; gchar ** buff; gchar * modelFCname, *modelFCnameCSV; gdouble wi, wj, value; gpointer bigmat, correction_mat, mini_correction_zerooooo_mat; GSList *list_i, *list_j; struct core_pak *core_i; struct core_pak *core_j; FILE *fp, *matout=NULL; g_assert(model != NULL); /* check atom labels (since we must be able to do a valid weight lookup) */ for (list_i=model->cores ; list_i ; list_i=g_slist_next(list_i)) { core_i = list_i->data; if (core_i->atom_code == 0) { gchar *text; text = g_strdup_printf("Unknown atom label: [%s]\n", core_i->atom_label); gui_text_show(ERROR, text); g_free(text); return(1); } } num_atoms = model->num_atoms; //lines = 3 * N * N * 2; // xyz, each atom, back/forward // num_lines = 3*2*num_atoms*num_atoms; modelFCname = g_strdup_printf("%s/%s.FC", sysenv.cwd, model->basename); modelFCnameCSV = g_strdup_printf("%s.csv", modelFCname); fp = fopen(modelFCname, "rt"); if (siestafileWRITE) { matout = fopen(modelFCnameCSV, "w"); if (!matout) { gui_text_show(ERROR, "bugger - no save files\n"); return(2); } } if (!fp) { gchar * text; text = g_strdup_printf("*ERROR* - modelFCname file not opened\n"); gui_text_show(ERROR, text); gui_text_show(ERROR, modelFCname); gui_text_show(ERROR, "\n"); g_free(text); return(3); } //no need for names anymore g_free(modelFCname); //initalise bigmat bigmat = mesch_mat_new(3*num_atoms, 3*num_atoms); //first line is crap. buff = get_tokenized_line(fp, &num_tokens); //FILE reading into bigmat for (i = 0; i 2) { if ( (i/num_atoms)%2 == 0) { //first pass at row? mesch_me_set(bigmat, i/(2*num_atoms), (3*i)%(3*num_atoms), str_to_float(*buff)); mesch_me_set(bigmat, i/(2*num_atoms), ((3*i)+1)%(3*num_atoms), str_to_float(*(buff+1))); mesch_me_set(bigmat, i/(2*num_atoms), ((3*i)+2)%(3*num_atoms), str_to_float(*(buff+2))); } else { //second pass - do the average value = 0.5*(mesch_me_get(bigmat, i/(2*num_atoms), (3*i)%(3*num_atoms)) + str_to_float(*buff)); mesch_me_set(bigmat, i/(2*num_atoms), (3*i)%(3*num_atoms), value); value = 0.5*(mesch_me_get(bigmat, i/(2*num_atoms), ((3*i)+1)%(3*num_atoms)) + str_to_float(*(buff+1))); mesch_me_set(bigmat, i/(2*num_atoms), ((3*i)+1)%(3*num_atoms), value); value = 0.5*(mesch_me_get(bigmat, i/(2*num_atoms), ((3*i)+2)%(3*num_atoms)) + str_to_float(*(buff+2))); mesch_me_set(bigmat, i/(2*num_atoms), ((3*i)+2)%(3*num_atoms), value); } } else { //what happened - why is there not 3 things on the line? //matrix_2d_free(bigmat); } //next line? } //Symmetricalise? -> to make symmetric for (i=0; i<(3*num_atoms); i++) { for (j=0; j<(3*num_atoms); j++) { value = mesch_me_get(bigmat, i, j) + mesch_me_get(bigmat, j, i); value *= 0.5; mesch_me_set(bigmat, i, j, value); mesch_me_set(bigmat, j, i, value); } } correction_mat = mesch_mat_new(3*num_atoms,3); mini_correction_zerooooo_mat = mesch_mat_new(3,3); mesch_m_zero(correction_mat); mesch_m_zero(mini_correction_zerooooo_mat); //build the correction_matrix for (i=0; i [i][0], [i][1], [i][2] value = mesch_me_get(bigmat, i, 3*j); mesch_me_add(correction_mat, i, 0, value); value = mesch_me_get(bigmat, i, (3*j)+1); mesch_me_add(correction_mat, i, 1, value); value = mesch_me_get(bigmat, i, (3*j)+2); mesch_me_add(correction_mat, i, 2, value); } //average each cell per row in the correction matrix value = 1.0 / (gdouble) num_atoms; mesch_me_mul(correction_mat, i, 0, value); mesch_me_mul(correction_mat, i, 1, value); mesch_me_mul(correction_mat, i, 2, value); } //built mini matrix - [3][3] for (i=0; icores ; list_i ; list_i=g_slist_next(list_i)) { core_i = list_i->data; if (core_i->status & DELETED) { i++; continue; } wi = elements[core_i->atom_code].weight; g_assert(wi > G_MINDOUBLE); for (list_j=model->cores ; list_j ; list_j=g_slist_next(list_j)) { core_j = list_j->data; if (core_j->status & DELETED) { j++; continue; } //multi i rows.... 3 of them.... wj = elements[core_j->atom_code].weight; g_assert(wj > G_MINDOUBLE); value = 1.0 / sqrt(wi * wj); for (k=0; k<3; k++) { mesch_me_mul(bigmat, (3*i)+k, 3*j, value); mesch_me_mul(bigmat, (3*i)+k, (3*j)+1, value); mesch_me_mul(bigmat, (3*i)+k, (3*j)+2, value); } j++; } i++; j=0; } model->siesta.eigen_xyz_atom_mat = mesch_mat_new(3*num_atoms, 3*num_atoms); model->siesta.eigen_values = mesch_vec_new(3*num_atoms); //external library call. mesch_sev_compute(bigmat, model->siesta.eigen_xyz_atom_mat, model->siesta.eigen_values); // stupid sort routine -> this is going to need a rewrite - its a bubble sort - O(n^2). model->siesta.sorted_eig_values = g_malloc(sizeof(int[mesch_dim_get(model->siesta.eigen_values)])); for (i=0; isiesta.eigen_values); i++) { model->siesta.sorted_eig_values[i] = i; } gint temp_int; gdouble freq_i, freq_ii; gint sizeofeig = mesch_dim_get(model->siesta.eigen_values); for (j=sizeofeig-1; j>1; j--) { for (i=0; i < j; i++) { freq_i = make_eigvec_freq(mesch_ve_get(model->siesta.eigen_values, model->siesta.sorted_eig_values[i])); freq_ii = make_eigvec_freq(mesch_ve_get(model->siesta.eigen_values, model->siesta.sorted_eig_values[i+1])); if (freq_i > freq_ii ) { temp_int = model->siesta.sorted_eig_values[i]; model->siesta.sorted_eig_values[i] = model->siesta.sorted_eig_values[i+1]; model->siesta.sorted_eig_values[i+1] = temp_int; } } } //PRINT METHOD FOR UWA VISIT if (siestafileWRITE && matout) { fprintf(matout, "eig vectors 3N*3N\n-------------\n"); for (j=0;j<(3*num_atoms); j++) { for (i=0; i<(3*num_atoms); i++) { fprintf(matout, "%f, ", mesch_me_get(bigmat, j, i)); } fprintf(matout, "\n"); } fprintf(matout, "\n\neig_vals\n-------------\n"); for (i=0; isiesta.eigen_values); i++) { fprintf(matout, "%f, ", mesch_ve_get(model->siesta.eigen_values, i)); } fprintf(matout, "\n\nfreqs\n-------------\n"); for (i=0; isiesta.eigen_values); i++) { fprintf(matout, "%f, ", make_eigvec_freq(mesch_ve_get(model->siesta.eigen_values, i))); } fclose(matout); } fclose(fp); mesch_m_free(bigmat); mesch_m_free(correction_mat); mesch_m_free(mini_correction_zerooooo_mat); model->siesta.current_animation = 0; //Lookup using index array. model->siesta.current_frequency = make_eigvec_freq(mesch_ve_get(model->siesta.eigen_values, model->siesta.sorted_eig_values[0])); model->siesta.freq_disp_str = g_strdup_printf("%.2f", model->siesta.current_frequency); model->siesta.num_animations = mesch_dim_get(model->siesta.eigen_values); model->siesta.vibration_calc_complete = TRUE; return(0); } /********************************/ /* SIESTA phonon display dialog */ /********************************/ void siesta_animation_dialog(GtkWidget *w, struct model_pak *model) { GList *list; GtkWidget *window, *box, *hbox, *hbox2, *vbox, *label, *hscale, *entry, *button, *spin; gpointer dialog; g_assert(model != NULL); /* don't recalculate modes if already done */ if (!model->siesta.vibration_calc_complete) if (siesta_phonon_calc(model)) return; /* request a dialog */ dialog = dialog_request(100, "Vibrational viewer", NULL, NULL, model); if (!dialog) return; window = dialog_window(dialog); box = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(GTK_DIALOG(window)->vbox), box); /* phonon selection */ vbox = gui_frame_vbox(NULL, FALSE, FALSE, box); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); /* phonon frequency */ label = gtk_label_new("Frequency "); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); entry = gtk_entry_new_with_max_length(LINELEN); gtk_entry_set_text(GTK_ENTRY(entry), " "); gtk_entry_set_editable(GTK_ENTRY(entry), FALSE); gtk_box_pack_start(GTK_BOX(hbox), entry, FALSE, FALSE, 0); dialog_child_set(dialog, "phonon_entry", entry); gui_button(" < ", gui_siesta_mode_prev, dialog, hbox, FF); gui_button(" > ", gui_siesta_mode_next, dialog, hbox, FF); /* phonon slider */ hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); hscale = gtk_hscale_new_with_range(1.0, model->siesta.num_animations, 1.0); gtk_box_pack_start(GTK_BOX(hbox), hscale, TRUE, TRUE, 0); dialog_child_set(dialog, "phonon_slider", hscale); g_signal_connect(GTK_OBJECT(hscale), "value_changed", GTK_SIGNAL_FUNC(gui_siesta_slider_changed), dialog); /* phonon display options */ vbox = gui_frame_vbox(NULL, FALSE, FALSE, box); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); button = new_check_button("Show eigenvectors", gui_siesta_mode_show, dialog, FALSE, hbox); dialog_child_set(dialog, "phonon_toggle", button); spin = new_spinner("Eigenvector scaling", 0.1, 9.9, 0.1, gui_siesta_mode_show, dialog, vbox); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spin), 4.0); dialog_child_set(dialog, "phonon_scaling", spin); spin = new_spinner("Animation resolution", 5.0, 50.0, 1.0, NULL, NULL, vbox); dialog_child_set(dialog, "phonon_resolution", spin); /* phonon mode animation */ vbox = gui_frame_vbox(NULL, FALSE, FALSE, box); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new("Animate mode "); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); hbox2 = gtk_hbox_new(FALSE, 0); gtk_box_pack_end(GTK_BOX(hbox), hbox2, FALSE, FALSE, 0); gui_icon_button("GDIS_PLAY", NULL, siesta_phonon_start, dialog, hbox2); gui_icon_button("GDIS_STOP", NULL, siesta_phonon_stop, dialog, hbox2); /* phonon mode movie generation */ hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new("Create movie "); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); entry = gtk_entry_new_with_max_length(LINELEN); gtk_entry_set_text(GTK_ENTRY(entry), "movie_name"); gtk_entry_set_editable(GTK_ENTRY(entry), TRUE); gtk_box_pack_start(GTK_BOX(hbox), entry, FALSE, FALSE, 0); dialog_child_set(dialog, "phonon_movie_name", entry); /* movie type */ list = NULL; list = g_list_append(list, "gif"); list = g_list_append(list, "mpg"); entry = gui_pulldown_new(NULL, list, FALSE, hbox); dialog_child_set(dialog, "phonon_movie_type", entry); gui_button_x(NULL, siesta_phonon_movie, dialog, hbox); /* init and display */ gui_siesta_frequency_set(dialog); gtk_widget_show_all(window); } /*************************/ /* main SIESTA interface */ /*************************/ void gui_siesta_dialog(void) { siestafileWRITE = FALSE; GtkWidget *window; gpointer dialog; struct model_pak *model; model = sysenv.active_model; if (!model) return; /* request a dialog */ dialog = dialog_request(200, "Siesta Setup", NULL, NULL, model); if (!dialog) return; window = dialog_window(dialog); file_handler_page_generator(dialog, window, model); siesta_gui_page_generator(dialog, window, model); gui_button("Animation", siesta_animation_dialog, model, GTK_DIALOG(window)->action_area, TT); gui_button("FileGenerate", siesta_file_dialog, model, GTK_DIALOG(window)->action_area, TT); gui_stock_button(GTK_STOCK_CLOSE, dialog_destroy, dialog, GTK_DIALOG(window)->action_area); gtk_widget_show_all(window); } void file_handler_page_generator(gpointer * dialog, GtkWidget * window, struct model_pak *model) { GtkWidget *frame, *vbox; vbox = gtk_vbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), vbox, TRUE, TRUE, 10); gui_direct_check("Write csv", &siestafileWRITE, random_action, NULL, vbox); frame = gtk_frame_new(" File Specifics " ); gtk_box_pack_start(GTK_BOX(vbox), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE,0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_text_entry("Filename ", &model->siesta.modelfilename, TRUE, TRUE, vbox); } void siesta_gui_page_generator(gpointer * dialog, GtkWidget * window, struct model_pak *model) { GtkWidget *frame, *radio_vbox, *vbox, *vbox1, *hbox, *label, *notebook; GtkWidget *geomhbox, *geomhbox2, *geomvbox, *geombook, *combo; GtkWidget *page, *geompage, *button, *vbox2; //more sensitive boxes GtkWidget *target_pressure_sens_box, *zeta_sensitive_box, *sensitive_box; GList *list; /* create notebook */ hbox = gtk_hbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), hbox, TRUE, TRUE, 10); vbox = gtk_vbox_new(FALSE, 0); gtk_box_pack_start (GTK_BOX(hbox), vbox, FALSE, FALSE, 0); // Specifics Page frame = gtk_frame_new(" System Params " ); gtk_box_pack_start(GTK_BOX(hbox), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); hbox = gtk_hbox_new (FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox),hbox,TRUE,TRUE,0); notebook = gtk_notebook_new(); gtk_widget_show (notebook); gtk_container_add(GTK_CONTAINER(hbox), notebook); page = gtk_vbox_new(FALSE, 0); label = gtk_label_new (" Electronic Structure "); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); /* title display */ frame = gtk_frame_new(" Basis Set "); gtk_box_pack_start(GTK_BOX(page), frame, FALSE, FALSE, 0); radio_vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), radio_vbox); /* do the radio buttons */ new_radio_group(0, radio_vbox, TT); button = add_radio_button("Single zeta", (gpointer) set_basis_set_sz, model); if (model->siesta.basis_set == SZ_ZETA) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Double zeta", (gpointer) set_basis_set_dz, model); if (model->siesta.basis_set == DZ_ZETA) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Single zeta polarised", (gpointer) set_basis_set_szp, model); if (model->siesta.basis_set == SZP_ZETA) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Double zeta polarised", (gpointer) set_basis_set_dzp, model); if (model->siesta.basis_set == DZP_ZETA) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* * Redundant code. button = add_radio_button("Triple zeta", (gpointer) set_basis_set_tz, model); if (model->siesta.basis_set == TZ) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Triple zeta polarised", (gpointer) set_basis_set_tzp, model); if (model->siesta.basis_set == TZP) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); */ button = add_radio_button("Custom Zeta", (gpointer) set_basis_set_custom, model); // Set sensitive frame? how do i do that? frame = gtk_frame_new(" Custom Zeta Config "); gtk_box_pack_start(GTK_BOX(radio_vbox), frame, FALSE, FALSE, 0); zeta_sensitive_box = gtk_vbox_new(FALSE, 0); model->siesta.custom_zeta_frame = zeta_sensitive_box; gtk_container_add(GTK_CONTAINER(frame), zeta_sensitive_box); gui_direct_spin("Zeta level ", &model->siesta.custom_zeta, 1, 5, 1, zeta_warning, model, zeta_sensitive_box); gui_direct_spin("Polarisation level ", &model->siesta.custom_zeta_polarisation, 0, 5, 1, zeta_warning, model, zeta_sensitive_box); if (model->siesta.basis_set != CUSTOM_ZETA) { gtk_widget_set_sensitive(GTK_WIDGET(model->siesta.custom_zeta_frame), FALSE); } else { gtk_widget_set_sensitive(GTK_WIDGET(model->siesta.custom_zeta_frame), TRUE); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); } frame = gtk_frame_new("Special inputs"); gtk_box_pack_start(GTK_BOX(page), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_spin("Split Zeta norm ", &model->siesta.split_zeta_norm, 0.01, 1.00, 0.01, dud_action, model, vbox); gui_direct_spin("Energy Shift (Ryd) ", &model->siesta.energy_shift, 0.001, 0.05, 0.001, dud_action, model, vbox); gui_direct_spin("Mesh Cutoff (Ryd) ", &model->siesta.mesh_cutoff, 40.0, 1000.0, 5, dud_action, model, vbox); gui_direct_spin("Electronic temp (K) ", &model->siesta.electronic_temperature, 0.0, 500.0, 1.0, dud_action, model, vbox); gui_direct_check("Spin Polarised", &model->siesta.spin_polarised, random_action, page, vbox); /* * Periodic model checking.... */ if (model->periodic == TRUE) { gui_direct_check("Is it Periodic?", &model->siesta.is_periodic, kgrid_action, page, vbox); frame = gtk_frame_new("Periodic"); gtk_box_pack_start(GTK_BOX(page), frame, FALSE, FALSE, 0); vbox1 = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox1); gui_direct_spin("kgrid Cutoff ", &model->siesta.kgrid_cutoff, 1.0, 50.0, 1.0, dud_action, model, vbox1); } //Next Page page = gtk_vbox_new(FALSE, 0); label = gtk_label_new (" SCF "); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); frame = gtk_frame_new("Method"); gtk_box_pack_start(GTK_BOX(page), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); //Common to both gui_direct_spin("Number of Cycles ", &model->siesta.no_of_cycles, 1.0, 100.0, 1.0, dud_action, model, vbox); gui_direct_spin("Mixing Weight ", &model->siesta.mixing_weight, 0.01, 0.5, 0.01, dud_action, model, vbox); sensitive_box = gtk_vbox_new(TRUE, 0); gui_direct_check("Pulay Mixing", &model->siesta.pulay_mixing, set_pulay_sensitive, sensitive_box, vbox); gtk_box_pack_end(GTK_BOX(vbox), sensitive_box, TRUE, TRUE, 0); /* sensitive box */ vbox = gtk_vbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(sensitive_box), vbox, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(vbox), PANEL_SPACING); gui_direct_spin("Number of Pulay Matrices ", &model->siesta.no_of_pulay_matrices, 1.0, 1000.0, 5, dud_action, model, vbox); //inital call to set sensitive. set_pulay_sensitive(vbox, sensitive_box); frame = gtk_frame_new("Speed Hacks?"); gtk_box_pack_start(GTK_BOX(page), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_check("Divide and Conquer", &model->siesta.diag_divide_and_conquer, random_action, vbox, vbox); //Next Page page = gtk_vbox_new(FALSE, 0); label = gtk_label_new (" Geometry "); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); frame = gtk_frame_new("Method"); gtk_box_pack_start(GTK_BOX(page), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); /* do the radio buttons */ new_radio_group(0, vbox, TT); button = add_radio_button("Single Point", (gpointer) set_geom_runtype_sp, model); if (model->siesta.run_type == SINGLE_POINT) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Optimisation", (gpointer) set_geom_runtype_opt, model); if (model->siesta.run_type == OPTIMISATION) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Molecular Dynamics", (gpointer) set_geom_runtype_md, model); if (model->siesta.run_type == MOLECULAR_DYNAMICS) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Phonon Calculation", (gpointer) set_geom_runtype_pc, model); if (model->siesta.run_type == PHONON_CALCULATION) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); //options frame frame = gtk_frame_new("Options"); gtk_box_pack_start(GTK_BOX(page), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); geombook = gtk_notebook_new(); gtk_container_add(GTK_CONTAINER(vbox), geombook); //HACK HACK HACK model->siesta.geom_notebook_hack = geombook; // Single Point Page geompage = gtk_vbox_new(FALSE, 0); label = gtk_label_new (" Single Point "); gtk_notebook_append_page(GTK_NOTEBOOK(geombook), geompage, label); // Single Point Options label = gtk_label_new("Number of Steps - locked to Zero\n"); gtk_box_pack_start(GTK_BOX(geompage), label, FALSE, FALSE, 0); label = gtk_label_new("(single point)\n"); gtk_box_pack_start(GTK_BOX(geompage), label, FALSE, FALSE, 0); geompage = gtk_vbox_new(FALSE, 0); label = gtk_label_new (" Optimisation "); gtk_notebook_append_page(GTK_NOTEBOOK(geombook), geompage, label); vbox = gtk_vbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(geompage), vbox, FALSE, FALSE, 0); gui_direct_check("Optimise cell", &model->siesta.md_variable_cell, optimise_cell_action, model, vbox); gui_direct_spin("Number of Steps ", &model->siesta.number_of_steps, 2.0, 1000.0, 1.0, dud_action, NULL, vbox); //Target pressure - only if optimise cell //meant to be sensitive target_pressure_sens_box = gtk_vbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(geompage), target_pressure_sens_box, FALSE, FALSE, 0); gui_direct_spin("Target Pressure", &model->siesta.md_target_pressure, -5.0, 5.0, 0.1, dud_action, NULL, vbox); //Target stress frame = gtk_frame_new("Stress Tensors"); gtk_box_pack_start(GTK_BOX(geompage), frame, FALSE, FALSE, 0); //int labled stress vectors. geomvbox = gtk_hbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), geomvbox); geomhbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(geomvbox), geomhbox); geomhbox2 = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(geomvbox), geomhbox2); gui_direct_spin(" xx =", &model->siesta.md_target_stress_xx, -5.0, 5.0, 0.1, dud_action, model, geomhbox); gui_direct_spin(" yy =", &model->siesta.md_target_stress_yy, -5.0, 5.0, 0.1, dud_action, model, geomhbox); gui_direct_spin(" zz =", &model->siesta.md_target_stress_zz, -5.0, 5.0, 0.1, dud_action, model, geomhbox); gui_direct_spin(" xy =", &model->siesta.md_target_stress_xy, -5.0, 5.0, 0.1, dud_action, model, geomhbox2); gui_direct_spin(" xz =", &model->siesta.md_target_stress_xz, -5.0, 5.0, 0.1, dud_action, model, geomhbox2); gui_direct_spin(" yz =", &model->siesta.md_target_stress_yz, -5.0, 5.0, 0.1, dud_action, model, geomhbox2); frame = gtk_frame_new("Termination Options"); gtk_box_pack_start(GTK_BOX(geompage), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_spin("Max CG displacement", &model->siesta.md_max_cg_displacement, 0.0, 2.0, 0.01, dud_action, NULL, vbox); gui_direct_spin("Max Force Tolerance", &model->siesta.md_max_force_tol, 0.0, 2.0, 0.01, dud_action, NULL, vbox); gui_direct_spin("Max Stress Tolerance", &model->siesta.md_max_stress_tol, 0.0, 2.0, 0.1, dud_action, NULL, vbox); frame = gtk_frame_new("Job Options"); gtk_box_pack_start(GTK_BOX(geompage), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_check("Restart (Use saved data)", &model->siesta.use_saved_data, random_action, page, vbox); geompage = gtk_vbox_new(FALSE, 0); label = gtk_label_new (" Molecular Dynamics "); gtk_notebook_append_page(GTK_NOTEBOOK(geombook), geompage, label); frame = gtk_frame_new("Run Type"); gtk_box_pack_start(GTK_BOX(geompage), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); list = NULL; list = g_list_append(list, "Verlet"); list = g_list_append(list, "Nose"); list = g_list_append(list, "Parrinello-Rahman"); list = g_list_append(list, "Nose-Parrinello-Rahman"); list = g_list_append(list, "Anneal"); list = g_list_append(list, "Phonon"); combo = gtk_combo_new(); gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(combo)->entry), FALSE); gtk_combo_set_popdown_strings(GTK_COMBO(combo), list); gtk_box_pack_end(GTK_BOX(vbox), combo, FALSE, FALSE, 0); g_signal_connect(GTK_OBJECT(GTK_COMBO(combo)->entry), "changed", GTK_SIGNAL_FUNC(set_md_run_type), (gpointer *) combo); frame = gtk_frame_new("Temperature"); gtk_box_pack_start(GTK_BOX(geompage), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_spin("Inital Temperature ", &model->siesta.md_inital_temperature, 0.0, 500.0, 1.0, dud_action, NULL, vbox); gui_direct_spin("Target Temperature ", &model->siesta.md_target_temperature, 0.0, 500.0, 1.0, dud_action, NULL, vbox); frame = gtk_frame_new("Pressure"); gtk_box_pack_start(GTK_BOX(geompage), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_spin("Target Pressure ", &model->siesta.pressure, -10.0, 10.0, 0.01, dud_action, model, vbox); frame = gtk_frame_new("Time"); gtk_box_pack_start(GTK_BOX(geompage), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_spin("Initial Timestep ", &model->siesta.md_inital_time_step, 0.0, 500.0, 1.0, dud_action, NULL, vbox); gui_direct_spin("Final Timestep ", &model->siesta.md_final_time_step, 0.0, 500.0, 1.0, dud_action, NULL, vbox); gui_direct_spin("Length of Timestep ", &model->siesta.md_length_time_step, 0.1, 200.0, 0.1, dud_action, NULL, vbox); frame = gtk_frame_new("Job Options"); gtk_box_pack_start(GTK_BOX(geompage), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_check("Restart (Use saved data)", &model->siesta.use_saved_data, random_action, page, vbox); geompage = gtk_vbox_new(FALSE, 0); label = gtk_label_new (" Phonon "); gtk_notebook_append_page(GTK_NOTEBOOK(geombook), geompage, label); frame = gtk_frame_new("Differencing"); gtk_box_pack_start(GTK_BOX(geompage), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_spin("Finite Difference step size ", &model->siesta.finite_diff_step_size, 0.1, 10.0, 0.1, dud_action, NULL, vbox); frame = gtk_frame_new("Job Options"); gtk_box_pack_start(GTK_BOX(geompage), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_check("Restart (Use saved data)", &model->siesta.use_saved_data, random_action, page, vbox); gtk_notebook_set_current_page (GTK_NOTEBOOK(geombook), 3); // BROKEN gtk_notebook_set_show_tabs (GTK_NOTEBOOK(geombook), FALSE); gtk_notebook_set_show_border (GTK_NOTEBOOK(geombook), FALSE); //Next Page page = gtk_vbox_new(FALSE, 0); label = gtk_label_new (" File I/O "); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); frame = gtk_frame_new("Files"); gtk_box_pack_start(GTK_BOX(page), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_check("Long output ", &model->siesta.long_output, long_output_click, model, vbox); frame = gtk_frame_new("Mesh potential"); gtk_box_pack_start(GTK_BOX(page), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_spin("Density of states ", &model->siesta.density_of_states, 0.1, 10.0, 0.1, dud_action, model, vbox); gui_direct_spin("Density on mesh ", &model->siesta.density_on_mesh, 0.1, 10.0, 0.1, dud_action, model, vbox); gui_direct_spin("Electrostatic pot on mesh ", &model->siesta.electrostatic_pot_on_mesh, 0.1, 10.0, 0.1, dud_action, model, vbox); frame = gtk_frame_new("Output Options"); gtk_box_pack_start(GTK_BOX(page), frame, FALSE, FALSE, 0); hbox = gtk_hbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), hbox); vbox = gtk_vbox_new(FALSE, 0); vbox2 = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(hbox), vbox, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(hbox), vbox2, FALSE, FALSE, 0); model->siesta.long_output_widget = hbox; gui_direct_check("WriteCoorStep ", &model->siesta.file_output_write_coor_step, random_action, page, vbox); gui_direct_check("WriteForces ", &model->siesta.file_output_write_forces, random_action, page, vbox); gui_direct_check("WriteKpoints ", &model->siesta.file_output_write_kpoints, random_action, page, vbox); gui_direct_check("WriteEigenvalues ", &model->siesta.file_output_write_eigenvalues, random_action, page, vbox); gui_direct_check("WriteKbands ", &model->siesta.file_output_write_kbands, random_action, page, vbox2); gui_direct_check("WriteBands ", &model->siesta.file_output_write_bands, random_action, page, vbox2); gui_direct_check("WriteWaveFunctions ", &model->siesta.file_output_write_wavefunctions, random_action, page, vbox2); gui_direct_spin("WriteMullikenPop", &model->siesta.file_output_write_mullikenpop, 0.0, 3.0, 1.0, dud_action, page, vbox2); frame = gtk_frame_new("Extra Output Options"); gtk_box_pack_start(GTK_BOX(page), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_check("Write density matrix", &model->siesta.file_output_write_dm, random_action, page, vbox); gui_direct_check("Write Xmol coordinates", &model->siesta.file_output_write_coor_xmol, random_action, page, vbox); gui_direct_check("Write cerius coordinates", &model->siesta.file_output_write_coor_cerius, random_action, page, vbox); gui_direct_check("Write MD xmol", &model->siesta.file_output_write_md_xmol, random_action, page, vbox); gui_direct_check("Write MD history", &model->siesta.file_output_write_md_history, random_action, page, vbox); gui_relation_update(NULL); g_list_free(list); } /*------------------- * Modifiers for the radio buttons * Electronic Structure PAGE *------------------- */ void set_basis_set_sz(struct model_pak * model) { model->siesta.basis_set = SZ_ZETA; gtk_widget_set_sensitive(GTK_WIDGET(model->siesta.custom_zeta_frame), FALSE); } void set_basis_set_dz(struct model_pak * model) { model->siesta.basis_set = DZ_ZETA; gtk_widget_set_sensitive(GTK_WIDGET(model->siesta.custom_zeta_frame), FALSE); } void set_basis_set_szp(struct model_pak * model) { model->siesta.basis_set = SZP_ZETA; gtk_widget_set_sensitive(GTK_WIDGET(model->siesta.custom_zeta_frame), FALSE); } void set_basis_set_dzp(struct model_pak * model) { model->siesta.basis_set = DZP_ZETA; gtk_widget_set_sensitive(GTK_WIDGET(model->siesta.custom_zeta_frame), FALSE); } void set_basis_set_custom(struct model_pak * model) { model->siesta.basis_set = CUSTOM_ZETA; gtk_widget_set_sensitive(GTK_WIDGET(model->siesta.custom_zeta_frame), TRUE); } /*----------------------------- * More radio buttons - GEOM PAGE */ void set_geom_runtype_sp(struct model_pak * data) { data->siesta.run_type = SINGLE_POINT; //change the notebook - HACK HACK HACK gtk_notebook_set_current_page(GTK_NOTEBOOK(data->siesta.geom_notebook_hack), 0); } void set_geom_runtype_opt(struct model_pak * data) { data->siesta.run_type = OPTIMISATION; //change the notebook - HACK HACK HACK gtk_notebook_set_current_page(GTK_NOTEBOOK(data->siesta.geom_notebook_hack), 1); } void set_geom_runtype_md(struct model_pak * data) { data->siesta.run_type = MOLECULAR_DYNAMICS; //change the notebook - HACK HACK HACK gtk_notebook_set_current_page( GTK_NOTEBOOK(data->siesta.geom_notebook_hack), 2); } void set_geom_runtype_pc(struct model_pak * data) { data->siesta.run_type = PHONON_CALCULATION; data->siesta.md_type_of_run = FC_MDRUN; //change the notebook - HACK HACK HACK gtk_notebook_set_current_page( GTK_NOTEBOOK(data->siesta.geom_notebook_hack), 3); } void set_geom_constantcomp_cp(struct model_pak * data) { data->siesta.constant_component = CONSTANT_PRESSURE; } void set_geom_constantcomp_cv(struct model_pak * data) { data->siesta.constant_component = CONSTANT_VOLUME; } void kgrid_action (GtkWidget * mywidget, gboolean checkit) { if (checkit == TRUE) { gtk_widget_set_sensitive(mywidget, TRUE); } else { gtk_widget_set_sensitive(mywidget, FALSE); } } void dud_action(GtkWidget *w, struct model_pak * data) { //Do i need this? //maybe i dooo } void set_pulay_sensitive(GtkWidget *w, GtkWidget *a_frame) { struct model_pak * model; model = sysenv.active_model; if (model->siesta.pulay_mixing) gtk_widget_set_sensitive(GTK_WIDGET(a_frame), TRUE); else gtk_widget_set_sensitive(GTK_WIDGET(a_frame), FALSE); } void random_action(GtkWidget *w, GtkWidget *box) { /* do nothing */ } void optimise_cell_action(GtkWidget *w, struct model_pak * model) { // Must set it to constant pressure if volume is changing? } void long_output_click(GtkWidget *w, struct model_pak * model) { if (model->siesta.long_output) { model->siesta.file_output_write_coor_step = TRUE; model->siesta.file_output_write_forces = TRUE; model->siesta.file_output_write_kpoints = TRUE; model->siesta.file_output_write_eigenvalues = TRUE; model->siesta.file_output_write_bands = TRUE; model->siesta.file_output_write_kbands = TRUE; model->siesta.file_output_write_wavefunctions = TRUE; model->siesta.file_output_write_mullikenpop = 1; gui_relation_update(NULL); } else { model->siesta.file_output_write_coor_step = FALSE; model->siesta.file_output_write_forces = FALSE; model->siesta.file_output_write_kpoints = FALSE; model->siesta.file_output_write_eigenvalues = FALSE; model->siesta.file_output_write_bands = FALSE; model->siesta.file_output_write_kbands = FALSE; model->siesta.file_output_write_wavefunctions = FALSE; model->siesta.file_output_write_mullikenpop = 0; gui_relation_update(NULL); } } void zeta_warning (GtkWidget *w, struct model_pak * model) { if ((int) model->siesta.custom_zeta > 4) { gchar * message; message = g_strdup("What are you doing?\nMore than 4 zeta levels\nGrind Grind Grind?"); gui_text_show(ERROR, message); g_free(message); } if ((int) model->siesta.custom_zeta_polarisation > 3) { gchar * message; message = g_strdup("What are you doing?\nMore than 3 polarisations?"); gui_text_show(ERROR, message); g_free(message); } } /********************************/ /* SIESTA phonon display dialog */ /********************************/ void set_md_run_type(GtkWidget *w, gpointer *data) { //evil active model call - evil evil evil struct model_pak *model; model = sysenv.active_model; gchar *buff; buff = g_strdup(gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(data)->entry))); if (g_ascii_strncasecmp("Verlet", buff, 6) == 0) model->siesta.md_type_of_run = VERLET_MDRUN; else if (g_ascii_strncasecmp("Nose", buff, 4) == 0) model->siesta.md_type_of_run = NOSE_MDRUN; else if (g_ascii_strncasecmp("Parrinello-Rahman", buff, 17) == 0) model->siesta.md_type_of_run = PARRINELLOPAHMAN_MDRUN; else if (g_ascii_strncasecmp("Nose-Parrinello-Rahman", buff, 22) == 0) model->siesta.md_type_of_run = NOSEPARRINELLOPAHMAN_MDRUN; else if (g_ascii_strncasecmp("Anneal", buff, 6) == 0) model->siesta.md_type_of_run = ANNEAL_MDRUN; g_free(buff); } gdouble make_eigvec_freq(gdouble value) { gdouble xmagic; xmagic = 519.6; if (value > 0.0) { return sqrt(xmagic*xmagic*value); } else // fake number! { return -sqrt(-xmagic*xmagic*value); } } void siesta_file_dialog(GtkWidget *w, struct model_pak * model) { GtkWidget *hbox, *vbox, *vbox2, *window; GtkWidget *dialog, *frame, *label; /* Create the widgets */ /* request a dialog */ dialog = dialog_request(100, "Multi File Writer", NULL, NULL, model); if (!dialog) return; window = dialog_window(dialog); vbox = gtk_vbox_new(TRUE,5); gtk_container_add (GTK_CONTAINER (GTK_DIALOG(window)->vbox), vbox); frame = gtk_frame_new(" Atoms in system "); gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, FALSE, 0); hbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), hbox); label = gtk_label_new(g_strdup_printf("Atoms seen by GDIS = %d\n", model->num_atoms)); gtk_box_pack_start(GTK_BOX(hbox), label, TRUE, FALSE, 0); //how to round it? model->siesta.atoms_per_job = (gdouble) ((int) 100/(model->num_atoms)); label = gtk_label_new(g_strdup_printf("Recommended atoms per job = %d\n", (int) 100/(model->num_atoms))); gtk_box_pack_start(GTK_BOX(hbox), label, TRUE, FALSE, 0); frame = gtk_frame_new(" Job Totals "); gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, FALSE, 0); hbox = gtk_hbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), hbox); vbox2 = gtk_vbox_new(TRUE, 0); gtk_box_pack_start(GTK_BOX(hbox), vbox2, TRUE, FALSE, 0); gui_direct_spin("Atoms per Job ", &model->siesta.atoms_per_job, 1.0, model->num_atoms, 1.0, dud_action, model, vbox2); frame = gtk_frame_new(" Job Setup "); gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, FALSE, 0); hbox = gtk_hbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), hbox); vbox = gtk_vbox_new(TRUE, 0); gtk_box_pack_start(GTK_BOX(hbox), vbox, TRUE, FALSE, 0); // file location gui_stock_button(GTK_STOCK_SAVE, siesta_file_save_loop, model, GTK_DIALOG(window)->action_area); gui_button("Save and Queue", siesta_save_n_queue, model, GTK_DIALOG(window)->action_area, TT); gui_stock_button(GTK_STOCK_CLOSE, dialog_destroy, dialog, GTK_DIALOG(window)->action_area); gtk_widget_show_all (window); } void siesta_file_save_loop(GtkWidget *w, struct model_pak * model) { int i; int total_files; gchar * filename, * orig_basename; total_files = model->num_atoms / model->siesta.atoms_per_job +1; orig_basename = g_strdup(model->basename); for (i=0; isiesta.md_fc_first = i* model->siesta.atoms_per_job + 1; model->siesta.md_fc_last = i * model->siesta.atoms_per_job + model->siesta.atoms_per_job; filename = g_strdup_printf("%s.%d.%d", orig_basename, i+1, total_files); if (model->siesta.md_fc_last >= model->num_atoms) { i++; model->siesta.md_fc_last = model->num_atoms; } model->basename = g_strdup(filename); filename = g_strdup_printf("%s.fdf", filename); // call the fdf save bit.... file_save_as(filename, model); //grab current grid_config_pak struct grid_config_pak * grid_pak=NULL; //get job directory siesta_make_runscript(model->basename, sysenv.cwd, grid_pak); gui_text_show(OUTPUT, g_strdup_printf("fc-first:\t%d\tfc-last:\t%d\t\t", model->siesta.md_fc_first, model->siesta.md_fc_last)); gui_text_show(OUTPUT, model->basename); gui_text_show(OUTPUT, "\n"); g_free(filename); } model->basename = g_strdup(orig_basename); } void siesta_make_runscript(gchar * model_name, gchar * directory, struct grid_config_pak * grid) { FILE *script; gchar *script_name; script_name = g_strdup_printf("run.script.%s", model_name); g_build_filename(directory, script_name, NULL); script = fopen (script_name, "w"); if (!script_name) return; fprintf(script, "#!/bin/bash\n"); fprintf(script, "#PBS -P d64\n"); fprintf(script, "#PBS -l ncpus=8\n"); fprintf(script, "#PBS -l vmem=2800mb\n"); fprintf(script, "#PBS -l walltime=2:00:00\n"); fprintf(script, "#PBS -l software=siesta\n"); fprintf(script, "#PBS -l other=mpi\n"); fprintf(script, "#PBS -wd\n"); fprintf(script, "module load siesta\n"); fprintf(script, "mpirun siesta < %s.fdf > %s.sot\n", model_name, model_name); fclose (script); g_free (script_name); } void siesta_load_animation(GtkWidget *w, struct model_pak *model) { //change the current animation to the slider value //slider value auto updated due to shortcut. if (!model->siesta.eigen_values) return; g_free(model->siesta.freq_disp_str); /* model->siesta.current_frequency = make_eigvec_freq(model->siesta.eigen_values->ve[model->siesta.sorted_eig_values[model->siesta.current_animation]]); */ model->siesta.current_frequency = make_eigvec_freq(mesch_ve_get(model->siesta.eigen_values, model->siesta.sorted_eig_values[model->siesta.current_animation])); model->siesta.freq_disp_str = g_strdup_printf("%.2f", model->siesta.current_frequency); gtk_entry_set_text((GtkEntry *) model->siesta.freq_text_box, model->siesta.freq_disp_str); } void siesta_animation_dialog_destroy(GtkWidget *w, gpointer *dialog) { struct model_pak * model; model = sysenv.active_model; //stop the animation timer /* siesta_destroy_timer(model); */ //kill the dialog dialog_destroy(w, dialog); } void siesta_save_n_queue(GtkWidget *w, struct model_pak * model) { int i, jobID=0; int total_files; gchar * filename, * orig_basename, *queuepath, *jobID_string; total_files = model->num_atoms / model->siesta.atoms_per_job +1; orig_basename = g_strdup(model->basename); struct grid_config_pak * grid_pak=NULL; //default jobstorage dir?? //"$homedir/.gdis_jobs/ ? queuepath = g_build_filename(g_get_home_dir(), ".gdis_jobman", NULL); jobID_string = g_strdup_printf("%d", jobID); if (g_file_test (queuepath, G_FILE_TEST_IS_DIR)) { // yay - it exists. // make new directory // grid_new_job(); //change to dir. for (i=0; isiesta.md_fc_first = i * model->siesta.atoms_per_job + 1; model->siesta.md_fc_last = i * model->siesta.atoms_per_job + model->siesta.atoms_per_job; filename = g_strdup_printf("%s.%d.%d", orig_basename, i+1, total_files); if (model->siesta.md_fc_last >= model->num_atoms) { i++; model->siesta.md_fc_last = model->num_atoms; } model->basename = g_strdup(filename); filename = g_strdup_printf("%s.fdf", filename); // call the fdf save bit.... file_save_as(filename, model); //grab current grid_config_pak //get job directory siesta_make_runscript(model->basename, sysenv.cwd, grid_pak); gui_text_show(OUTPUT, g_strdup_printf("fc-first:\t%d\tfc-last:\t%d\t\t", model->siesta.md_fc_first, model->siesta.md_fc_last)); gui_text_show(OUTPUT, model->basename); gui_text_show(OUTPUT, "\n"); g_free(filename); } model->basename = g_strdup(orig_basename); } else { //no queue directory } } gdis-0.90/tb_diffraction.xpm0000644000175000017500000000065110144615502014531 0ustar seansean/* XPM */ static char * tb_diffraction_xpm[] = { "16 16 3 1", " c None", ". c #000000", "+ c #FFFFFF", " ", " ", " . ", " . .. ", " . .. ", " . . ", " . +. ", " . +. ", " .. ", " ", " .............. ", " ", " .............. ", " ", " .............. ", " "}; gdis-0.90/cross.xpm0000644000175000017500000000065707717054756012737 0ustar seansean/* XPM */ static char * cross_xpm[] = { "16 16 4 1", " c None", ". c #FF472B", "+ c #FF4343", "@ c #FF4444", " ", " ", " ", " ... ... ", " .... .... ", " .... .... ", " ....... ", " ..... ", " ..... ", " ....... ", " ... .. ", " .. .. ", " .. .+ ", " . @ ", " ", " "}; gdis-0.90/graph.h0000644000175000017500000000314710577702740012316 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ gpointer graph_new(const gchar *, struct model_pak *); void graph_free_list(struct model_pak *); void graph_free(gpointer, struct model_pak *); void graph_add_data(gint, gdouble *, gdouble, gdouble, gpointer); void graph_set_grafted(gint, gpointer); void graph_set_xticks(gint, gint, gpointer); void graph_set_yticks(gint, gint, gpointer); void graph_set_wavelength(gdouble, gpointer); void graph_set_select(gdouble, gchar *, gpointer); void graph_write(gchar *, gpointer); void graph_read(gchar *); gchar *graph_treename(gpointer); gint graph_grafted(gpointer); gint graph_xlabel(gpointer); gint graph_ylabel(gpointer); gdouble graph_xmin(gpointer); gdouble graph_xmax(gpointer); gdouble graph_ymin(gpointer); gdouble graph_ymax(gpointer); gdouble graph_wavelength(gpointer); /* TODO - relocate */ gint anim_next_frame(struct model_pak *); gdis-0.90/test.xml0000644000175000017500000000166011055421153012527 0ustar seansean gdis_test_34 uname grisu-jobs-dir/gdis_test_34 /bin/uname -a stdout.txt stderr.txt 60 1 normal:ng2.ivec.org gsiftp://ngdata.ivec.org/store/ng03/grid-admin/C_AU_O_APACGrid_OU_iVEC_CN_Sean_Fleming/ normal gdis-0.90/quaternion.c0000644000175000017500000000723610445461565013401 0ustar seansean/* Copyright (C) 2003 by Craig Andrew James Fisher Copyright (C) 2000 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include "gdis.h" #include "matrix.h" #include "interface.h" /*****************************/ /* quaternion multiplication */ /*****************************/ void quat_mult(gdouble *q1, gdouble *q2) { gdouble q[4]; q[0] = q1[0]*q2[0] - q1[1]*q2[1] - q1[2]*q2[2] - q1[3]*q2[3]; q[1] = q1[0]*q2[1] + q1[1]*q2[0] + q1[2]*q2[3] - q1[3]*q2[2]; q[2] = q1[0]*q2[2] - q1[1]*q2[3] + q1[2]*q2[0] + q1[3]*q2[1]; q[3] = q1[0]*q2[3] + q1[1]*q2[2] - q1[2]*q2[1] + q1[3]*q2[0]; /* place the result in q1 */ ARR4SET(q1, q); } /***********************************************/ /* convert a (rotation) matrix to a quaternion */ /***********************************************/ void quat_convert_matrix(gdouble *mat, gdouble *q) { gdouble s, trace; trace = 1.0 + mat[0] + mat[4] + mat[8]; if (trace < FRACTION_TOLERANCE) printf("WARNING: "); s = 2.0 * sqrt(trace); q[0] = (mat[7] - mat[5]) / s; q[1] = (mat[2] - mat[6]) / s; q[2] = (mat[3] - mat[1]) / s; q[3] = 0.25 * s; } /***********************************************************/ /* concatenate a quaternion rotation (v = axis, a = angle) */ /***********************************************************/ void quat_concat(gdouble *q, gdouble *v, gdouble a) { gdouble ha, sa, qr[4]; /* create and apply the desired quaternion rotation */ ha = 0.5*a; sa = sin(ha); VEC4SET(qr, cos(ha), v[0]*sa, v[1]*sa, v[2]*sa); quat_mult(q, qr); } /*********************************/ /* standard quaternion rotations */ /*********************************/ void quat_concat_euler(gdouble *q, gint type, gdouble a) { gdouble v[3]; switch (type) { case PITCH: VEC3SET(v, 1.0, 0.0, 0.0); break; case ROLL: VEC3SET(v, 0.0, 1.0, 0.0); break; default: case YAW: VEC3SET(v, 0.0, 0.0, 1.0); break; } /* general axis rotation */ quat_concat(q, v, a); } /*********************************************/ /* convert quaternion into a rotation matrix */ /*********************************************/ void quat_matrix(gdouble *mat, gdouble *quat) { gdouble q0, q1, q2, q3; gdouble a01, a02, a03, a12, a13, a23; q0 = quat[0]; q1 = quat[1]; q2 = quat[2]; q3 = quat[3]; a01 = 2.0*q0*q1; a02 = 2.0*q0*q2; a03 = 2.0*q0*q3; a12 = 2.0*q1*q2; a13 = 2.0*q1*q3; a23 = 2.0*q2*q3; mat[1] = a12 - a03; mat[2] = a13 + a02; mat[3] = a12 + a03; mat[5] = a23 - a01; mat[6] = a13 - a02; mat[7] = a23 + a01; q0 = q0*q0; q1 = q1*q1; q2 = q2*q2; q3 = q3*q3; mat[0] = q0 + q1 - q2 - q3; mat[4] = q0 - q1 + q2 - q3; mat[8] = q0 - q1 - q2 + q3; } /*****************************************************************/ /* transform vector using a quaternion generated rotation matrix */ /*****************************************************************/ void quat_rotate(gdouble *vec, gdouble *quat) { gdouble rot[9]; quat_matrix(rot, quat); vecmat(rot, vec); } gdis-0.90/models/0000755000175000017500000000000011066565513012321 5ustar seanseangdis-0.90/models/caso4_HH.gin0000644000175000017500000000375707717054772014434 0ustar seanseanopti relax conp comp molmec #CaSO4 HH switch rfo gnorm 0.1 name CaSO4-HH cell 12.0317 6.9269 12.6712 90 90.27 90 fractional S -0.002 0.024 0.253 S 0.723 0.191 0.417 S 0.276 0.204 0.087 Ca 0.000 0.015 0.500 Ca 0.718 0.177 0.157 Ca 0.263 0.218 0.337 Ca 0.000 0.000 0.000 O1 0.072 0.156 0.315 O1 0.063 0.898 0.181 O1 -0.079 0.130 0.180 O1 -0.065 0.895 0.325 O1 0.738 0.338 0.333 O1 0.629 0.232 0.489 O1 0.825 0.180 0.486 O1 0.706 -0.003 0.365 O1 0.226 0.364 0.148 O1 0.376 0.244 0.022 O1 0.194 0.131 0.007 O1 0.299 0.042 0.161 O2 0.049 0.503 0.650 O2 0.000 0.349 0.000 H -0.049 0.436 0.039 H -0.021 0.567 0.659 H 0.049 0.400 0.703 space I 1 2 1 species Ca 2.00 S 1.36 O1 -0.84 O2 -0.82 H 0.41 end element cova Ca 0.1 end # fitting observables weights 27 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 31 32 33 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100000 100000 100000 100000 100000 100000 end # common buck inter Ca core O1 core 1651.39 0.2931 0.00 15.0 0 0 0 buck inter O1 core O1 core 103585.02 0.2000 25.98 15.0 0 0 0 morse bond S core O1 core 5.00 1.2000 1.505 0 0 0 three bond S core O1 core O1 core 15.0 109.47 0 0 # water buckingham inter O1 O2 64972.27 0.2146 29.76 15.0 0 0 0 buckingham inter O2 O2 58213.81 0.2099 30.42 15.0 0 0 0 buckingham inter Ca O2 1374.31 0.2997 0.00 15.0 0 0 0 buckingham inter H O1 1009.93 0.1995 4.84 15.0 0 0 0 harmonic bond H core O2 core 62.6567 0.96 0.0 0 0 three bond O2 core H core H core 5.0416 104.50 0 0 print 1 gdis-0.90/models/caox.gin0000644000175000017500000000630107717054772013762 0ustar seanseansingle conp molmec switch_min rfo gnorm 0.100000 name caox cell 6.290000 14.583000 10.116000 89.999999 109.460000 89.999999 fractional Ca core 0.96760 0.12430 0.05460 2.00000000 1.00000 0.00000 Ca core 0.99680 0.12360 0.43570 2.00000000 1.00000 0.00000 C core 0.98320 0.32010 0.24520 0.60000000 1.00000 0.00000 C core 0.00090 0.42700 0.24920 0.60000000 1.00000 0.00000 C core 0.51890 0.12660 0.18120 0.60000000 1.00000 0.00000 C core 0.45050 0.11730 0.31310 0.60000000 1.00000 0.00000 O1 core 0.97560 0.28260 0.13220 -0.8000000 1.00000 0.00000 O1 core 0.00660 0.46590 0.13950 -0.8000000 1.00000 0.00000 O1 core 0.97990 0.28190 0.35500 -0.8000000 1.00000 0.00000 O1 core 0.00730 0.46580 0.36140 -0.8000000 1.00000 0.00000 O1 core 0.36140 0.14180 0.06900 -0.8000000 1.00000 0.00000 O1 core 0.72450 0.12270 0.19740 -0.8000000 1.00000 0.00000 O1 core 0.24380 0.12290 0.29570 -0.8000000 1.00000 0.00000 O1 core 0.60730 0.10680 0.42640 -0.8000000 1.00000 0.00000 O2 core 0.39320 0.34590 0.10220 -0.7642613 1.00000 0.00000 O2 core 0.59130 0.38290 0.39080 -0.7642613 1.00000 0.00000 H core 0.48960 0.37095 0.04605 0.38213015 1.00000 0.00000 H core 0.43072 0.28051 0.09538 0.38213015 1.00000 0.00000 H core 0.47646 0.37740 0.44116 0.38213015 1.00000 0.00000 H core 0.49268 0.37766 0.29118 0.38213015 1.00000 0.00000 space P 1 21/c 1 elements covalent 11 0.1000 covalent 19 0.1000 covalent 20 0.1000 end species Ca core 2.000000 Na core 1.000000 K core 1.000000 O1 core -0.800000 O2 core -0.764261 C core 0.600000 H core 0.382130 end buck inter C core C core 993.63011 0.240472 10.055 0.000 15.000 1 1 0 buck inter C core O1 core 604.56823 0.278199 13.562 0.000 15.000 1 1 0 buck inter C core O2 core 1130.7548 0.246409 18.637 0.000 15.000 1 1 0 buck inter O1 core O1 core 5161.9633 0.222373 19.968 0.000 15.000 1 1 0 buck inter O1 core O2 core 482.14605 0.370000 23.000 0.000 15.000 1 1 0 buck inter O2 core O2 core 10520.550 0.261400 50.286 0.000 15.000 1 1 0 buck inter O1 core Ca core 1976.9077 0.283009 .00000E+00 0.000 15.000 1 1 0 buck inter O2 core Ca core 2652.6303 0.275265 .00000E+00 0.000 15.000 1 1 0 buck inter O1 core Na core 2501.7615 0.248800 .00000E+00 0.000 15.000 0 0 0 buck inter C core Na core 730.60340 0.306000 .00000E+00 0.000 15.000 0 0 0 buck inter O1 core K core 1959.291 0.286601 14.000 0.000 15.000 0 0 0 buck inter O2 core K core 12287.957 0.244061 25.000 0.000 15.000 0 0 0 buck inter C core K core 6300.000 0.257758 0.000 0.000 15.000 0 0 0 harmonic molmec H O2 23.71711 0.96 0 0 three molmec O2 H H 2.45050 104.5 0 0 harmonic bond C O1 52.721 1.27800 0 0 harmonic bond C C 29.289 1.56400 0 0 three bond C O1 O1 6.895 127.20 0 0 three bond C C O1 12.042 116.80 0 0 torsion bond O1 C C O1 0.020142 -2 0 0 torsion intra C C O1 O1 0.296115 -2 0 1.80 1.60 2.40 3.00 0 print 1 gdis-0.90/models/canamgk.gin0000644000175000017500000000474207717054771014437 0ustar seanseanrelax opti conp comp mole bond fix switch rfo gnorm 0.5 title CAOH - ICSD collection code 202220 NaOH - ICSD collection code 61045 MgOH - ICSD collection code 81139 KOH - ISCD collection code 65163 end name calcium hydroxide cell 3.592 3.592 4.906 90.0 90.0 120.0 frac 4 Ca core 0.000000 0.000000 0.0000 O core 0.333333 0.666667 0.2340 O shel 0.333333 0.666667 0.2340 H core 0.333333 0.666667 0.4256 space 164 name sodium hydroxide cell 3.401 11.378 3.398 90.0 90.0 90.0 frac 4 Na core 0.0 0.3381 0.25 O core 0.0 0.1338 0.25 O shel 0.0 0.1338 0.25 H core 0.0 0.0520 0.25 space 63 name magnesium hydroxide cell 3.130 3.130 4.710 90.0 90.0 120.0 frac 4 Mg core 0.000000 0.000000 0.000000 O core 0.333333 0.666667 0.220100 O shel 0.333333 0.666667 0.220100 H core 0.333333 0.666667 0.420900 space 164 name potassium hydroxide cell 5.892 3.943 7.715 90.0 110.3 90.0 frac 4 K core 0.766 0.255 0.063 O core 0.443 0.264 0.210 O shel 0.443 0.264 0.210 H core 0.303 0.150 0.238 space P 1 21/N 1 cutd 4.0 element covalent Ca 0.1 covalent Na 0.1 covalent Mg 0.1 covalent K 0.1 end species 7 Ca core 2.0 Na core 1.0 Mg core 2.0 K core 1.0 O shel -2.366 O core 0.948 H core 0.418 # fitted parameters buck inter Na core O shel 939.77 0.2978 0.0 0.0 8.0 0 0 0 buck inter Na core H core 244.06 0.2843 0.0 0.0 8.0 0 0 0 #buck inter #Na core Na core 287.26 0.3066 0.0 0.0 8.0 0 0 0 buck inter Mg core O shel 967.90 0.3017 0.0 0.0 8.0 0 0 0 buck inter Mg core H core 480.42 0.3048 0.0 0.0 8.0 0 0 0 #buck inter #Mg core Mg core 704.74 0.3000 0.0 0.0 8.0 0 0 0 buck inter Ca core O shel 1356.84 0.3208 0.0 0.0 8.0 0 0 0 buck inter Ca core H core 323.44 0.3016 0.0 0.0 8.0 0 0 0 #buck inter #Ca core Ca core 600.00 0.3000 0.0 0.0 8.0 0 0 0 buck inter K core O shel 3209.90 0.2810 0.0 0.0 8.0 0 0 0 buck inter K core H core 404.67 0.2041 0.0 0.0 8.0 0 0 0 buck inter K core K core 738.33 0.3867 0.0 0.0 8.0 0 0 0 # fixed parameters (from gibbsite,bayerite and diaspore fit) buck inter O shel O shel 9999.97 0.1490 17.0 0.0 15.0 0 0 0 buck inter O shel H core 235.00 0.2500 0.0 0.0 15.0 0 0 0 morse bond O core H core 5.4246 2.2682 0.95 0 0 0 spring O 60.1 0 print 1 gdis-0.90/models/natrite_full8.gin0000644000175000017500000000516107717054777015620 0ustar seanseanopti conp molmec comp title generated by GDIS end switch rfo gnorm 0.1 name natrite cell 8.900000 5.240000 6.040000 90.0 101.2 90.0 fractional Na 0.0000 0.0180 0.0000 0.0 0.5 Na 0.0000 0.0220 0.5000 0.0 0.5 Na 0.1720 0.5440 0.7490 0.0 0.5 C 0.1630 0.4880 0.2510 0.0 0.5 O1 0.1230 0.2550 0.3140 0.0 0.5 O1 0.2910 0.4910 0.1730 0.0 0.5 O1 0.0790 0.6760 0.2550 0.0 0.5 Na 0.0000 0.9820 0.0000 0.0 0.5 Na 0.5000 0.5180 0.0000 0.0 0.5 Na 0.5000 0.4820 0.0000 0.0 0.5 Na 0.0000 0.9780 0.5000 0.0 0.5 Na 0.5000 0.5220 0.5000 0.0 0.5 Na 0.5000 0.4780 0.5000 0.0 0.5 Na 0.8280 0.5440 0.2510 0.0 0.5 Na 0.8280 0.4560 0.2510 0.0 0.5 Na 0.1720 0.4560 0.7490 0.0 0.5 Na 0.6720 0.0440 0.7490 0.0 0.5 Na 0.3280 0.0440 0.2510 0.0 0.5 Na 0.3280 0.9560 0.2510 0.0 0.5 Na 0.6720 0.9560 0.7490 0.0 0.5 C 0.8370 0.4880 0.7490 0.0 0.5 C 0.8370 0.5120 0.7490 0.0 0.5 C 0.1630 0.5120 0.2510 0.0 0.5 C 0.6630 0.9880 0.2510 0.0 0.5 C 0.3370 0.9880 0.7490 0.0 0.5 C 0.3370 0.0120 0.7490 0.0 0.5 C 0.6630 0.0120 0.2510 0.0 0.5 O1 0.8770 0.2550 0.6860 0.0 0.5 O1 0.8770 0.7450 0.6860 0.0 0.5 O1 0.1230 0.7450 0.3140 0.0 0.5 O1 0.6230 0.7550 0.3140 0.0 0.5 O1 0.3770 0.7550 0.6860 0.0 0.5 O1 0.3770 0.2450 0.6860 0.0 0.5 O1 0.6230 0.2450 0.3140 0.0 0.5 O1 0.7090 0.4910 0.8270 0.0 0.5 O1 0.7090 0.5090 0.8270 0.0 0.5 O1 0.2910 0.5090 0.1730 0.0 0.5 O1 0.7910 0.9910 0.1730 0.0 0.5 O1 0.2090 0.9910 0.8270 0.0 0.5 O1 0.2090 0.0090 0.8270 0.0 0.5 O1 0.7910 0.0090 0.1730 0.0 0.5 O1 0.9210 0.6760 0.7450 0.0 0.5 O1 0.9210 0.3240 0.7450 0.0 0.5 O1 0.0790 0.3240 0.2550 0.0 0.5 O1 0.5790 0.1760 0.2550 0.0 0.5 O1 0.4210 0.1760 0.7450 0.0 0.5 O1 0.4210 0.8240 0.7450 0.0 0.5 O1 0.5790 0.8240 0.2550 0.0 0.5 space P 1 species Na core 1.000 C core 0.712 O1 core -0.904 end element cova Na 0.1 end buck inter Na O1 1738.41 0.265 0.00 12.0 0 0 0 # minimum cutoffs used to prevent excessive repulsion due # to interaction between close partially occupied sites buck O1 O1 5622.23 0.245497 0.00 1.0 2.5 0 0 0 buck inter O1 O1 77769.03 0.2000 25.98 1.0 15.0 0 0 0 morse bond C O1 5.70 2.74061 1.20172 0 0 0 three bond intra C O1 O1 1.127 120.00 0 0 torsion intra O1 C O1 O1 0.1800 -2 0.0 1.50 1.50 2.00 2.00 0 print 1 gdis-0.90/models/burk1.cif0000644000175000017500000000374407717054765014052 0ustar seanseandata_*Burkeite-Na4(SO4)1.51(CO3).49-Giuseppetti _audit_creation_date 01:06:08 _chemical_name_systematic 'Sodium sulfate carbonate (4/1.51/.49) ' _chemical_formula_structural 'Na4(SO4)1.51(CO3).49' _chemical_formula_sum ' C.49 NA4 O7.51 S1.51 ' _publ_section_title ; The crystal structure of synthetic burkeite ; loop_ _publ_author_name 'Giuseppetti G' 'Mazzi F' 'Tadini C' _journal_name_full 'Neues Jahrb.Min.,Monatsh.' _journal_volume 1988 _journal_year 1988 _journal_page_first 203 _journal_page_last 221 _cell_length_a 5.198 _cell_length_b 9.255 _cell_length_c 7.085 _cell_angle_alpha 90. _cell_angle_beta 90. _cell_angle_gamma 90. _symmetry_space_group_name_H-M 'P M N M ' _symmetry_Int_Tables_number '0' loop_ _atom_site_label _atom_site_type_symbol _atom_site_symmetry_multiplicity _atom_site_Wyckoff_symbol _atom_site_fract_x _atom_site_fract_y _atom_site_fract_z _atom_site_B_iso_or_equiv _atom_site_occupancy Na1 Na 4 f 0.25000 0.75120 0.00470 2.39000 1.00000 Na2 Na 2 a 0.25000 0.42500 0.25000 5.79000 1.00000 Na3 Na 2 b 0.75000 0.88050 0.25000 2.45000 1.00000 C1 C 2 b 0.75000 0.56060 0.25000 1.84000 0.49000 S1 S 2 b 0.75000 0.56060 0.25000 1.84000 0.51000 S2 S 4 e 0.29420 0.08960 0.25000 1.30000 0.50000 O1 O 2 b 0.75000 0.42160 0.25000 4.20000 0.83000 O2 O 4 e 0.53580 0.64290 0.25000 2.70000 0.83000 O3 O 4 f 0.75000 0.47010 0.08540 5.90000 0.17000 O4 O 8 g 0.93100 0.58340 0.08880 4.50000 0.17000 O5 O 8 g 0.18920 0.16060 0.08160 2.90000 0.50000 O6 O 4 e 0.21770 0.93490 0.25000 1.70000 0.50000 O7 O 4 e 0.57550 0.10710 0.25000 2.30000 0.50000 _refine_ls_R_factor_all 0.03gdis-0.90/models/caso4.gin0000644000175000017500000000144707717054772014047 0ustar seanseanopti conp prop mole comp # CaSO4 data cell 6.992 6.240 6.999 90.0 90.0 90.0 fractional 4 Ca 0.0000 -0.3478 0.2500 S 0.0000 -0.1556 0.7500 O 0.1700 -0.0157 0.7500 O 0.000 -0.2972 0.5814 space C M C M observables elastic 1 1 11.30 elastic 2 2 9.38 elastic 3 3 18.6 elastic 4 4 0.92 elastic 5 5 3.28 elastic 6 6 2.66 elastic 1 2 1.52 elastic 1 3 1.64 elastic 2 3 3.18 end species Ca 2.00 S 1.36 O -0.84 end observables weight 12 1 2 3 4 5 6 7 8 9 10 11 12 100 100 100 10 10 10 10 10 10 100000 100000 100000 end buck inter Ca core O core 1651.35 0.2931 0.0 10.0 0 0 0 morse molmec S core O core 5.000 1.200 1.505 0 0 0 buck inter O core O core 103585.02 0.2000 25.980 0.0 15.0 0 0 0 three-body molmec S core O core O core 15.0 109.47 0 0 accu 7.0 print 1 gdis-0.90/models/butane.gin0000644000175000017500000000373507717054765014320 0ustar seanseanopti conp molmec maxcyc 500 name butane1 cartesian C1 core -1.95042 -0.03671 0.64453 0.0 C2 core -0.73061 0.47565 -0.12518 0.0 H1 core -2.40373 -0.90139 0.13556 0.0 H2 core -1.66931 -0.35432 1.66065 0.0 H3 core -2.71985 0.74570 0.73497 0.0 C3 core 0.05107 -0.67541 -0.75894 0.0 H4 core -1.04687 1.18623 -0.90488 0.0 H5 core -0.06173 1.03462 0.54953 0.0 C4 core 1.52419 -0.30905 -0.93236 0.0 H6 core -0.03542 -1.57150 -0.12586 0.0 H7 core -0.38906 -0.93393 -1.73403 0.0 H8 core 2.16682 -1.17855 -0.71846 0.0 H9 core 1.72338 0.00599 -1.96974 0.0 H10 core 2.06243 0.42327 -0.38837 0.0 harmonic k3 k4 bond kcal C C 599.3400 -3010.6047 16315.2335 1.5300 0 0 0 0 harmonic k3 k4 bond kcal C H 690.0000 -4151.3850 20270.2680 1.1010 0 0 0 0 harmonic k3 k4 bond kcal C O 800.7908 -5011.1086 31512.3992 1.4200 0 0 0 0 harmonic k3 k4 bond kcal O H 1080.7266 -7871.0399 51178.4566 0.9494 0 0 0 0 three k3 k4 bond kcal C C C 79.0320 -44.6689 -229.4141 112.6700 0 0 0 0 three k3 k4 bond kcal C C H 82.9060 -63.6221 123.0657 110.7700 0 0 0 0 three k3 k4 bond kcal C C O 109.0762 -50.1969 -314.0086 111.2700 0 0 0 0 three k3 k4 bond kcal C H H 79.2820 -77.5378 -58.3198 107.6600 0 0 0 0 three k3 k4 bond kcal C O H 117.0892 -64.8440 -297.5939 108.7280 0 0 0 0 three k3 k4 bond kcal O H C 105.4122 -72.6395 -236.7980 105.8000 0 0 0 0 torsion bond kcal C C C C 0.0514 -2 0 torsion bond kcal H C C C 0.0316 -2 0 torsion bond kcal O C C C 0.7137 -1 0 torsion bond kcal H C C H -0.1432 -1 0 torsion bond kcal O C C H -0.1435 -1 0 torsion bond kcal H O C C -0.6732 -1 0 torsion bond kcal H O C H 0.1863 -1 0 print 1 gdis-0.90/models/zno_beta.res0000644000175000017500000000210507717054777014650 0ustar seansean# # Keywords: # conp opti # # Options: # cell 5.454892 5.454892 5.454892 90.000000 90.000000 90.000000 fractional Zn core 0.0000000 0.0000000 0.0000000 2.00000000 1.00000 0.00000 S core 0.2500000 0.2500000 0.2500000 -0.0084322 1.00000 0.00000 S shel 0.2500000 0.2500000 0.2500000 -1.9915671 1.00000 0.00000 space 216 totalenergy -132.6369404315 eV buck S shel S shel 1200.00000 0.149000 120.0000 0.00 12.00 buck Zn core S shel 372.989600 0.432242 0.0000000 0.00 12.00 spring S 10.779512 three exponential Zn cor S she S she 539327. 109.4700 0.350000 0.350000 & 0.000 8.000 0.000 8.000 0.000 16.000 axilrod-teller S shel S shel S shel 5872.15 0.000 10.000 & 0.000 10.000 0.000 10.000 tortaper Zn cor S she Zn cor S she 0.10000E-01 3 .00000 & 0.500000 3.00 3.00 3.00 0.00 dump every 1 beta.res gdis-0.90/models/calcite_0-14_0.5000.res0000644000175000017500000002316607717054770015721 0ustar seansean# # Keywords: # single conv mole # # Options: # name calcite_0-14_0.5000 # Surface energy = 0.705842 J/m2 scell 4.980183 24.776343 78.404227 sfractional region 1 Ca core 1/6 5/6 -1.516832 2.00000000 1.00000 0.00000 % O core 0.3306790 0.9166670 -1.516830 1.01848700 1.00000 0.00000 % C core 0.5833329 0.9166670 -1.516830 1.34353899 1.00000 0.00000 % O core 0.7415740 0.8847529 -2.283299 1.01848700 1.00000 0.00000 % O core 0.6777470 0.9485800 -0.750363 1.01848700 1.00000 0.00000 % Ca core 1/3 2/3 -1.516830 2.00000000 1.00000 0.00000 % O core 0.9889200 0.3847530 -2.283299 1.01848700 1.00000 0.00000 % C core 0.0833329 0.4166670 -1.516830 1.34353899 1.00000 0.00000 % O core 0.9250930 0.4485800 -0.750363 1.01848700 1.00000 0.00000 % O core 0.3359869 0.4166670 -1.516830 1.01848700 1.00000 0.00000 % C core 0.7500000 0.7500000 -1.516830 1.34353899 1.00000 0.00000 % O core 0.0026539 0.7500000 -1.516830 1.01848700 1.00000 0.00000 % O core 0.6555859 0.7180859 -2.283299 1.01848700 1.00000 0.00000 % O core 0.5917589 0.7819140 -0.750363 1.01848700 1.00000 0.00000 % C core 0.9166670 0.5833329 -1.516832 1.34353899 1.00000 0.00000 % O core 0.6640130 0.5833329 -1.516832 1.01848700 1.00000 0.00000 % O core 0.0749069 0.5514200 -2.283299 1.01848700 1.00000 0.00000 % O core 0.0110800 0.6152470 -0.750364 1.01848700 1.00000 0.00000 % Ca core 2/3 1/3 -1.516830 2.00000000 1.00000 0.00000 % Ca core 0.5000000 0.5000000 -1.516830 2.00000000 1.00000 0.00000 % Ca core 5/6 1/6 -1.516832 2.00000000 1.00000 0.00000 % C core 0.2500000 0.2500000 -1.516830 1.34353899 1.00000 0.00000 % O core 0.9973460 0.2500000 -1.516830 1.01848700 1.00000 0.00000 % O core 0.3444129 0.2819129 -0.750364 1.01848700 1.00000 0.00000 % O core 0.4082410 0.2180859 -2.283299 1.01848700 1.00000 0.00000 % C core 0.4166670 0.0833329 -1.516830 1.34353899 1.00000 0.00000 % O core 0.6693210 0.0833329 -1.516830 1.01848700 1.00000 0.00000 % O core 0.2584260 0.1152470 -0.750363 1.01848700 1.00000 0.00000 % O core 0.3222530 0.0514200 -2.283299 1.01848700 1.00000 0.00000 % Ca core 0.0000000 0.0000000 -1.516832 2.00000000 1.00000 0.00000 % O shel 0.3300959 0.9166670 -1.516830 -2.1330000 1.00000 0.00000 % O shel 0.7419390 0.8846790 -2.285069 -2.1330000 1.00000 0.00000 % O shel 0.6779650 0.9486539 -0.748593 -2.1330000 1.00000 0.00000 % O shel 0.9887020 0.3846790 -2.285069 -2.1330000 1.00000 0.00000 % O shel 0.9247270 0.4486539 -0.748593 -2.1330000 1.00000 0.00000 % O shel 0.3365709 0.4166670 -1.516830 -2.1330000 1.00000 0.00000 % O shel 0.0032370 0.7500000 -1.516830 -2.1330000 1.00000 0.00000 % O shel 0.6553679 0.7180129 -2.285069 -2.1330000 1.00000 0.00000 % O shel 0.5913939 0.7819870 -0.748593 -2.1330000 1.00000 0.00000 % O shel 0.6634290 0.5833329 -1.516832 -2.1330000 1.00000 0.00000 % O shel 0.0752720 0.5513460 -2.285069 -2.1330000 1.00000 0.00000 % O shel 0.0112980 0.6153209 -0.748594 -2.1330000 1.00000 0.00000 % O shel 0.9967629 0.2500000 -1.516830 -2.1330000 1.00000 0.00000 % O shel 0.3446309 0.2819870 -0.748593 -2.1330000 1.00000 0.00000 % O shel 0.4086060 0.2180130 -2.285069 -2.1330000 1.00000 0.00000 % O shel 0.6699040 0.0833329 -1.516830 -2.1330000 1.00000 0.00000 % O shel 0.2580609 0.1153209 -0.748593 -2.1330000 1.00000 0.00000 % O shel 0.3220349 0.0513460 -2.285069 -2.1330000 1.00000 0.00000 % sfractional region 2 C core 0.0429800 0.9570200 -4.550494 1.34353899 1.00000 0.00000 O core 0.2956339 0.9570200 -4.550494 1.01848700 1.00000 0.00000 O core 0.8847389 0.9889340 -3.784027 1.01848700 1.00000 0.00000 O core 0.9485659 0.9251070 -5.316963 1.01848700 1.00000 0.00000 O core 0.9569919 0.7903540 -4.550495 1.01848700 1.00000 0.00000 C core 0.2096459 0.7903540 -4.550495 1.34353899 1.00000 0.00000 O core 0.3678869 0.7584400 -5.316963 1.01848700 1.00000 0.00000 O core 0.3040600 0.8222670 -3.784029 1.01848700 1.00000 0.00000 Ca core 0.6263129 0.8736870 -4.550495 2.00000000 1.00000 0.00000 Ca core 0.7929800 0.7070200 -4.550497 2.00000000 1.00000 0.00000 C core 0.3763129 0.6236870 -4.550497 1.34353899 1.00000 0.00000 O core 0.6289669 0.6236870 -4.550497 1.01848700 1.00000 0.00000 O core 0.2819000 0.5917730 -5.316963 1.01848700 1.00000 0.00000 O core 0.2180730 0.6556000 -3.784029 1.01848700 1.00000 0.00000 C core 0.5429800 0.4570200 -4.550498 1.34353899 1.00000 0.00000 O core 0.2903260 0.4570200 -4.550498 1.01848700 1.00000 0.00000 O core 0.7012200 0.4251070 -5.316964 1.01848700 1.00000 0.00000 O core 0.6373929 0.4889340 -3.784030 1.01848700 1.00000 0.00000 Ca core 0.9596470 0.5403529 -4.550497 2.00000000 1.00000 0.00000 Ca core 0.2929800 0.2070200 -4.550497 2.00000000 1.00000 0.00000 O core 0.6152330 0.2584400 -5.316964 1.01848700 1.00000 0.00000 C core 0.7096470 0.2903529 -4.550497 1.34353899 1.00000 0.00000 O core 0.5514060 0.3222670 -3.784029 1.01848700 1.00000 0.00000 O core 0.9623000 0.2903529 -4.550497 1.01848700 1.00000 0.00000 Ca core 0.1263129 0.3736870 -4.550497 2.00000000 1.00000 0.00000 Ca core 0.4596459 0.0403540 -4.550498 2.00000000 1.00000 0.00000 C core 0.8763129 0.1236870 -4.550497 1.34353899 1.00000 0.00000 O core 0.6236590 0.1236870 -4.550497 1.01848700 1.00000 0.00000 O core 0.9707270 0.1556000 -3.784030 1.01848700 1.00000 0.00000 O core 0.0345540 0.0917729 -5.316964 1.01848700 1.00000 0.00000 O shel 0.2962170 0.9570200 -4.550494 -2.1330000 1.00000 0.00000 O shel 0.8843739 0.9890070 -3.782257 -2.1330000 1.00000 0.00000 O shel 0.9483479 0.9250329 -5.318733 -2.1330000 1.00000 0.00000 O shel 0.9564090 0.7903540 -4.550495 -2.1330000 1.00000 0.00000 O shel 0.3682520 0.7583660 -5.318734 -2.1330000 1.00000 0.00000 O shel 0.3042780 0.8223409 -3.782257 -2.1330000 1.00000 0.00000 O shel 0.6295509 0.6236870 -4.550497 -2.1330000 1.00000 0.00000 O shel 0.2816820 0.5917000 -5.318733 -2.1330000 1.00000 0.00000 O shel 0.2177070 0.6556739 -3.782258 -2.1330000 1.00000 0.00000 O shel 0.2897420 0.4570200 -4.550498 -2.1330000 1.00000 0.00000 O shel 0.7015860 0.4250329 -5.318734 -2.1330000 1.00000 0.00000 O shel 0.6376109 0.4890070 -3.782260 -2.1330000 1.00000 0.00000 O shel 0.6150149 0.2583660 -5.318734 -2.1330000 1.00000 0.00000 O shel 0.5510400 0.3223409 -3.782258 -2.1330000 1.00000 0.00000 O shel 0.9628840 0.2903529 -4.550497 -2.1330000 1.00000 0.00000 O shel 0.6230759 0.1236870 -4.550497 -2.1330000 1.00000 0.00000 O shel 0.9709450 0.1556739 -3.782258 -2.1330000 1.00000 0.00000 O shel 0.0349190 0.0917000 -5.318734 -2.1330000 1.00000 0.00000 sbulkenergy -255.76075700 species 11 Cd core 2.000000 Mn core 2.000000 Mg core 2.000000 Zn core 2.000000 Ni core 2.000000 Co core 2.000000 Fe core 2.000000 Ca core 2.000000 C core 1.343539 O core 1.018487 O shel -2.133000 buck intra O core O core 4030.30000 0.245497 0.0000000 0.000 2.500 buck Ca core O shel 2154.06000 0.289118 0.0000000 0.000 10.000 buck inter O shel O shel 64727.5050 0.198914 21.84357 0.000 15.000 buck Cd core O shel 4329.81000 0.256300 0.0000000 0.000 10.000 buck Mg core O shel 1039.58460 0.289329 0.0000000 0.000 10.000 buck Co core O shel 1095.59850 0.286300 0.0000000 0.000 10.000 buck Fe core O shel 2152.98610 0.265068 0.0000000 0.000 10.000 buck Mn core O shel 2000.93570 0.272681 0.0000000 0.000 10.000 buck Ni core O shel 1634.46190 0.266612 0.0000000 0.000 10.000 buck Zn core O shel 1029.39000 0.289100 0.0000000 0.000 10.000 morse intra bond C core O core 5.0000000 2.5228 1.19820 0.0000 spring O 52.739130 10000.000 three bond intra C core O core O core 1.7765 120.00 outofplane bond intra C cor O cor O cor O cor 8.8279 element covalent 25 0.0000 covalent 26 0.0000 covalent 27 0.0000 covalent 28 0.0000 covalent 30 0.0000 covalent 48 0.0000 end dump calcite_0-14_0.5000.res gdis-0.90/models/caco3.gin0000644000175000017500000000215407717054766014025 0ustar seansean# # Keywords: # opti conp mole prop phon noden comp # # Options: # title CaCO3 potentials from Fisler, Gale and Cygan to be published end name aragonite cell 5.741000 4.961000 7.967000 90.000000 90.000000 90.000000 fractional 6 Ca core 0.24050000 0.25000000 0.41510000 2.000000 1.0000 0.00000 C core 0.08520000 0.25000000 0.76210000 1.342000 1.0000 0.00000 O core 0.09560000 0.25000000 0.92220000 1.019000 1.0000 0.00000 O core 0.08730000 0.47350000 0.68070000 1.019000 1.0000 0.00000 O shel 0.09272322 0.25000000 0.91911013 -2.133000 1.0000 0.00000 O shel 0.08669328 0.46848258 0.68154250 -2.133000 1.0000 0.00000 space 62 name calcite cell 4.991000 4.991000 17.062000 90.000000 90.000000 120.000000 fractional 4 Ca core 0.00000000 0.00000000 0.00000000 2.000000 1.0000 0.00000 C core 0.00000000 0.00000000 0.25000000 1.343539 1.0000 0.00000 O core 0.25730000 0.00000000 0.25000000 1.018487 1.0000 0.00000 O shel 0.25716771 0.00000000 0.25000000 -2.133000 1.0000 0.00000 space 167 gdis-0.90/models/butanol.gin0000644000175000017500000000406207717054765014500 0ustar seanseanopti conp molmec maxcyc 500 name butanol1_min cartesian C1 core -1.95042 -0.03671 0.64453 -0.159 C2 core -0.80330 0.47940 -0.22734 -0.106 H1 core -2.58333 -0.74430 0.08694 0.053 H2 core -1.56416 -0.55932 1.53338 0.053 H3 core -2.58934 0.79096 0.98966 0.053 C3 core -0.06294 -0.67075 -0.90975 -0.106 H4 core -1.18919 1.17843 -0.98565 0.053 H5 core -0.08657 1.05081 0.38535 0.053 C4 core 1.44805 -0.45598 -0.84378 0.054 H6 core -0.32633 -1.62210 -0.42286 0.053 H7 core -0.38464 -0.75184 -1.95926 0.053 H8 core 1.93844 -1.30973 -0.34821 0.053 H9 core 1.87099 -0.37105 -1.85812 0.053 O1 core 1.73614 0.73242 -0.11827 -0.580 H10 core 2.68235 0.80914 -0.08124 0.420 harmonic k3 k4 bond kcal C C 599.3400 -3010.6047 16315.2335 1.5300 0 0 0 0 harmonic k3 k4 bond kcal C H 690.0000 -4151.3850 20270.2680 1.1010 0 0 0 0 harmonic k3 k4 bond kcal C O 800.7908 -5011.1086 31512.3992 1.4200 0 0 0 0 harmonic k3 k4 bond kcal O H 1080.7266 -7871.0399 51178.4566 0.9494 0 0 0 0 three k3 k4 bond kcal C C C 79.0320 -44.6689 -229.4141 112.6700 0 0 0 0 three k3 k4 bond kcal C C H 82.9060 -63.6221 123.0657 110.7700 0 0 0 0 three k3 k4 bond kcal C C O 109.0762 -50.1969 -314.0086 111.2700 0 0 0 0 three k3 k4 bond kcal C H H 79.2820 -77.5378 -58.3198 107.6600 0 0 0 0 three k3 k4 bond kcal C O H 117.0892 -64.8440 -297.5939 108.7280 0 0 0 0 three k3 k4 bond kcal O H C 105.4122 -72.6395 -236.7980 105.8000 0 0 0 0 torsion bond kcal C C C C 0.0514 -2 0 torsion bond kcal H C C C 0.0316 -2 0 torsion bond kcal O C C C 0.7137 -1 0 torsion bond kcal H C C H -0.1432 -1 0 torsion bond kcal O C C H -0.1435 -1 0 torsion bond kcal H O C C -0.6732 -1 0 torsion bond kcal H O C H 0.1863 -1 0 print 1 gdis-0.90/models/trona.gin0000644000175000017500000000320707717054777014162 0ustar seanseanopti conp molmec comp nosym title ICSD Collection Code 35191 end switch rfo gnorm 0.1 name trona cell 20.36 3.48 10.29 90.0 106.48 90.0 frac Na 0.0 0.74786 0.25 Na 0.15059 0.16359 0.42612 C 0.09303 0.26524 0.10317 O1 0.15103 0.39845 0.10200 O1 0.05433 0.12980 0.98823 O1 0.07258 0.25364 0.20797 H1 0.0 0.0 0.0 O2 0.21207 0.66563 0.35376 H2 0.19149 0.59393 0.25966 H2 0.25913 0.73060 0.36351 space C 1 2/C 1 species Ca core 2.000 Na core 1.000 C core 0.712 S core 1.616 O1 core -0.904 H1 core 1.000 O2 core -0.820 H2 core 0.410 end element cova Ca 0.1 cova Na 0.1 cova C 1.0 cova O 0.6 cova H 0.1 end buck inter Na O 1640.25 0.2655 0.0 12.0 0 0 0 buck inter Ca O 1746.07 0.2968 0.0 12.0 0 0 0 buck inter H O 847.60 0.09655 0.0 12.0 0 0 0 # minimum cutoffs used to prevent excessive repulsion due # to interaction between close partially occupied sites buck intra O O 2607.04 0.25426 0.00 1.0 2.5 0 0 0 buck inter O O 103895.56 0.2000 25.98 1.0 15.0 0 0 0 morse bond C O 5.70 2.82726 1.20172 0 0 0 morse bond S O 5.01 1.03826 1.23661 0 0 0 three bond S O O 15.0 109.47 0 0 torsion O C O O 0.1800 -2 0.0 1.50 1.50 2.00 2.00 0 # water harmonic bond H2 O2 62.6567 0.96 0 0 three bond O2 H2 H2 core 5.0416 104.50 0 0 print 1 gdis-0.90/models/calcite_-114_0.0000.got0000644000175000017500000017005507717054767015723 0ustar seansean******************************************************************************** * GENERAL UTILITY LATTICE PROGRAM * * Julian Gale, Imperial College * * Version 1.4 * ******************************************************************************** * single - perform a single point run * * conv - constant volume calculation * * molecule - molecule option activated, Coulomb subtract within molecule * ******************************************************************************** Job Started at 10:48.09 23rd April 2002 Number of CPUs = 1 Total number of configurations input = 1 ******************************************************************************** * Input for Configuration = 1 : calcite_-114_0.0000 * ******************************************************************************** Formula = Ca48C48O144 Number of irreducible atoms/shells = 384 Total number atoms/shells = 384 Dimensionality = 2 : Surface Surface Cartesian vectors (Angstroms) : 4.980183 0.000000 0.000000 -4.980185 -24.270662 0.000000 Surface cell parameters (Angstroms/Degrees): a = 4.9802 alpha = 101.5958 b = 24.7763 Initial surface area = 120.872338 Angs**2 Initial surface dipole = -0.000046 e.Angs Temperature of configuration = 0.0000 K Mixed fractional/Cartesian coordinates of surface : -------------------------------------------------------------------------------- No. Atomic x y z Charge Occupancy Label (Frac) (Frac) (Angs) (e) (Frac) -------------------------------------------------------------------------------- Region 1 : -------------------------------------------------------------------------------- 1 Ca c 0.085960 0.085960 -6.0673 2.000000 1.000000 2 C c 0.042980 0.042980 -3.0337 1.343539 1.000000 3 O c 0.201220 0.074893 -3.8001 1.018487 1.000000 4 O c 0.790326 0.042980 -3.0337 1.018487 1.000000 5 O c 0.137393 0.011066 -2.2672 1.018487 1.000000 6 O c 0.051406 0.177733 -2.2672 1.018487 1.000000 7 C c 0.209647 0.209647 -3.0337 1.343539 1.000000 8 O c 0.462301 0.209647 -3.0337 1.018487 1.000000 9 O c 0.115233 0.241560 -3.8001 1.018487 1.000000 10 Ca c 0.292980 0.792980 -3.0337 2.000000 1.000000 11 Ca c 0.459646 0.959647 -3.0337 2.000000 1.000000 12 Ca c 0.045606 0.545606 -9.1010 2.000000 1.000000 13 C c 0.169293 0.669293 -6.0673 1.343539 1.000000 14 O c 0.011053 0.637379 -5.3009 1.018487 1.000000 15 O c 0.421947 0.669293 -6.0673 1.018487 1.000000 16 O c 0.074880 0.701207 -6.8338 1.018487 1.000000 17 O c 0.430373 0.804046 -5.3009 1.018487 1.000000 18 C c 0.335960 0.835960 -6.0673 1.343539 1.000000 19 O c 0.083306 0.835960 -6.0673 1.018487 1.000000 20 O c 0.494200 0.867873 -6.8338 1.018487 1.000000 21 O c 0.930346 0.556673 -11.3682 1.018487 1.000000 22 C c 0.088586 0.588586 -12.1347 1.343539 1.000000 23 O c 0.341240 0.588586 -12.1347 1.018487 1.000000 24 O c 0.994173 0.620500 -12.9011 1.018487 1.000000 25 Ca c 0.212273 0.712273 -9.1010 2.000000 1.000000 26 Ca c 0.171920 0.171919 -12.1347 2.000000 1.000000 27 Ca c 0.338586 0.338586 -12.1347 2.000000 1.000000 28 C c 0.295606 0.295606 -9.1010 1.343539 1.000000 29 O c 0.453847 0.327520 -9.8675 1.018487 1.000000 30 O c 0.042952 0.295606 -9.1010 1.018487 1.000000 31 O c 0.390020 0.263693 -8.3345 1.018487 1.000000 32 C c 0.002626 0.502626 -6.0673 1.343539 1.000000 33 O c 0.160867 0.534540 -6.8338 1.018487 1.000000 34 O c 0.097040 0.470713 -5.3009 1.018487 1.000000 35 O c 0.749972 0.502626 -6.0673 1.018487 1.000000 36 Ca c 0.419293 0.419293 -6.0673 2.000000 1.000000 37 C c 0.542980 0.542980 -3.0337 1.343539 1.000000 38 O c 0.384739 0.511066 -2.2672 1.018487 1.000000 39 O c 0.795634 0.542980 -3.0337 1.018487 1.000000 40 O c 0.448566 0.574893 -3.8001 1.018487 1.000000 41 O c 0.804060 0.677733 -2.2672 1.018487 1.000000 42 C c 0.709647 0.709647 -3.0337 1.343539 1.000000 43 O c 0.456993 0.709647 -3.0337 1.018487 1.000000 44 O c 0.867887 0.741560 -3.8001 1.018487 1.000000 45 O c 0.304032 0.430359 -8.3345 1.018487 1.000000 46 C c 0.462273 0.462273 -9.1010 1.343539 1.000000 47 O c 0.714927 0.462273 -9.1010 1.018487 1.000000 48 O c 0.367859 0.494186 -9.8675 1.018487 1.000000 49 Ca c 0.585960 0.585960 -6.0673 2.000000 1.000000 50 Ca c 0.126313 0.626313 -3.0337 2.000000 1.000000 51 Ca c 0.545606 0.045606 -9.1010 2.000000 1.000000 52 Ca c 0.712273 0.212273 -9.1010 2.000000 1.000000 53 C c 0.128940 0.128939 -9.1010 1.343539 1.000000 54 O c 0.970699 0.097026 -8.3345 1.018487 1.000000 55 O c 0.034526 0.160853 -9.8675 1.018487 1.000000 56 O c 0.381594 0.128939 -9.1010 1.018487 1.000000 57 C c 0.669293 0.169293 -6.0673 1.343539 1.000000 58 O c 0.827534 0.201207 -6.8338 1.018487 1.000000 59 O c 0.416639 0.169293 -6.0673 1.018487 1.000000 60 O c 0.763707 0.137379 -5.3009 1.018487 1.000000 61 O c 0.683000 0.056672 -11.3682 1.018487 1.000000 62 C c 0.588586 0.088586 -12.1347 1.343539 1.000000 63 O c 0.335932 0.088586 -12.1347 1.018487 1.000000 64 O c 0.746827 0.120500 -12.9011 1.018487 1.000000 65 Ca c 0.005253 0.005253 -12.1347 2.000000 1.000000 66 Ca c 0.252626 0.252626 -6.0673 2.000000 1.000000 67 C c 0.376313 0.376313 -3.0337 1.343539 1.000000 68 O c 0.534554 0.408227 -3.8001 1.018487 1.000000 69 O c 0.470727 0.344400 -2.2672 1.018487 1.000000 70 O c 0.123659 0.376313 -3.0337 1.018487 1.000000 71 Ca c 0.792980 0.292980 -3.0337 2.000000 1.000000 72 O c 0.677719 0.304046 -5.3009 1.018487 1.000000 73 C c 0.835960 0.335960 -6.0673 1.343539 1.000000 74 O c 0.088614 0.335960 -6.0673 1.018487 1.000000 75 O c 0.741546 0.367873 -6.8338 1.018487 1.000000 76 Ca c 0.959647 0.459647 -3.0337 2.000000 1.000000 77 C c 0.502626 0.002626 -6.0673 1.343539 1.000000 78 O c 0.344386 0.970713 -5.3009 1.018487 1.000000 79 O c 0.408213 0.034540 -6.8338 1.018487 1.000000 80 O c 0.755280 0.002626 -6.0673 1.018487 1.000000 81 Ca c 0.626313 0.126313 -3.0337 2.000000 1.000000 82 C c 0.421919 0.921919 -12.1347 1.343539 1.000000 83 O c 0.263679 0.890006 -11.3682 1.018487 1.000000 84 O c 0.674573 0.921919 -12.1347 1.018487 1.000000 85 O c 0.327506 0.953833 -12.9011 1.018487 1.000000 86 C c 0.255253 0.755253 -12.1347 1.343539 1.000000 87 O c 0.413493 0.787166 -12.9011 1.018487 1.000000 88 O c 0.349666 0.723339 -11.3682 1.018487 1.000000 89 O c 0.002599 0.755253 -12.1347 1.018487 1.000000 90 Ca c 0.919293 0.919293 -6.0673 2.000000 1.000000 91 Ca c 0.671920 0.671919 -12.1347 2.000000 1.000000 92 C c 0.795606 0.795606 -9.1010 1.343539 1.000000 93 O c 0.637366 0.763693 -8.3345 1.018487 1.000000 94 O c 0.048260 0.795606 -9.1010 1.018487 1.000000 95 O c 0.701193 0.827520 -9.8675 1.018487 1.000000 96 O c 0.056686 0.930359 -8.3345 1.018487 1.000000 97 C c 0.962273 0.962273 -9.1010 1.343539 1.000000 98 O c 0.709619 0.962273 -9.1010 1.018487 1.000000 99 O c 0.120513 0.994186 -9.8675 1.018487 1.000000 100 Ca c 0.838586 0.838586 -12.1347 2.000000 1.000000 101 Ca c 0.378940 0.878940 -9.1010 2.000000 1.000000 102 C c 0.921920 0.421919 -12.1347 1.343539 1.000000 103 O c 0.080160 0.453833 -12.9011 1.018487 1.000000 104 O c 0.669266 0.421919 -12.1347 1.018487 1.000000 105 O c 0.016333 0.390006 -11.3682 1.018487 1.000000 106 Ca c 0.505253 0.505253 -12.1347 2.000000 1.000000 107 C c 0.628940 0.628940 -9.1010 1.343539 1.000000 108 O c 0.787180 0.660853 -9.8675 1.018487 1.000000 109 O c 0.723353 0.597026 -8.3345 1.018487 1.000000 110 O c 0.376286 0.628940 -9.1010 1.018487 1.000000 111 C c 0.876313 0.876313 -3.0337 1.343539 1.000000 112 O c 0.718073 0.844400 -2.2672 1.018487 1.000000 113 O c 0.781900 0.908227 -3.8001 1.018487 1.000000 114 O c 0.128967 0.876313 -3.0337 1.018487 1.000000 115 Ca c 0.752626 0.752626 -6.0673 2.000000 1.000000 116 C c 0.755253 0.255253 -12.1347 1.343539 1.000000 117 O c 0.597012 0.223339 -11.3682 1.018487 1.000000 118 O c 0.660839 0.287166 -12.9011 1.018487 1.000000 119 O c 0.007907 0.255253 -12.1347 1.018487 1.000000 120 Ca c 0.878940 0.378940 -9.1010 2.000000 1.000000 241 O s 0.201586 0.074967 -3.8019 -2.133000 1.000000 242 O s 0.789742 0.042980 -3.0337 -2.133000 1.000000 243 O s 0.137611 0.010993 -2.2654 -2.133000 1.000000 244 O s 0.051041 0.177659 -2.2654 -2.133000 1.000000 245 O s 0.462884 0.209647 -3.0337 -2.133000 1.000000 246 O s 0.115015 0.241634 -3.8019 -2.133000 1.000000 247 O s 0.010687 0.637306 -5.2991 -2.133000 1.000000 248 O s 0.422530 0.669293 -6.0673 -2.133000 1.000000 249 O s 0.074662 0.701280 -6.8356 -2.133000 1.000000 250 O s 0.430591 0.803972 -5.2991 -2.133000 1.000000 251 O s 0.082722 0.835960 -6.0673 -2.133000 1.000000 252 O s 0.494566 0.867947 -6.8356 -2.133000 1.000000 253 O s 0.929980 0.556599 -11.3664 -2.133000 1.000000 254 O s 0.341824 0.588586 -12.1347 -2.133000 1.000000 255 O s 0.993955 0.620573 -12.9029 -2.133000 1.000000 256 O s 0.454212 0.327593 -9.8692 -2.133000 1.000000 257 O s 0.042369 0.295606 -9.1010 -2.133000 1.000000 258 O s 0.390238 0.263619 -8.3328 -2.133000 1.000000 259 O s 0.161232 0.534614 -6.8356 -2.133000 1.000000 260 O s 0.097258 0.470639 -5.2991 -2.133000 1.000000 261 O s 0.749389 0.502626 -6.0673 -2.133000 1.000000 262 O s 0.384374 0.510993 -2.2654 -2.133000 1.000000 263 O s 0.796217 0.542980 -3.0337 -2.133000 1.000000 264 O s 0.448348 0.574967 -3.8019 -2.133000 1.000000 265 O s 0.804278 0.677659 -2.2654 -2.133000 1.000000 266 O s 0.456409 0.709647 -3.0337 -2.133000 1.000000 267 O s 0.868253 0.741634 -3.8019 -2.133000 1.000000 268 O s 0.303667 0.430286 -8.3328 -2.133000 1.000000 269 O s 0.715511 0.462273 -9.1010 -2.133000 1.000000 270 O s 0.367641 0.494260 -9.8692 -2.133000 1.000000 271 O s 0.970334 0.096952 -8.3328 -2.133000 1.000000 272 O s 0.034308 0.160927 -9.8692 -2.133000 1.000000 273 O s 0.382177 0.128939 -9.1010 -2.133000 1.000000 274 O s 0.827899 0.201280 -6.8356 -2.133000 1.000000 275 O s 0.416056 0.169293 -6.0673 -2.133000 1.000000 276 O s 0.763925 0.137306 -5.2991 -2.133000 1.000000 277 O s 0.683218 0.056599 -11.3664 -2.133000 1.000000 278 O s 0.335349 0.088586 -12.1347 -2.133000 1.000000 279 O s 0.747192 0.120573 -12.9029 -2.133000 1.000000 280 O s 0.534919 0.408300 -3.8019 -2.133000 1.000000 281 O s 0.470945 0.344326 -2.2654 -2.133000 1.000000 282 O s 0.123076 0.376313 -3.0337 -2.133000 1.000000 283 O s 0.677354 0.303972 -5.2991 -2.133000 1.000000 284 O s 0.089197 0.335960 -6.0673 -2.133000 1.000000 285 O s 0.741328 0.367947 -6.8356 -2.133000 1.000000 286 O s 0.344020 0.970639 -5.2991 -2.133000 1.000000 287 O s 0.407995 0.034614 -6.8356 -2.133000 1.000000 288 O s 0.755864 0.002626 -6.0673 -2.133000 1.000000 289 O s 0.263314 0.889932 -11.3664 -2.133000 1.000000 290 O s 0.675157 0.921919 -12.1347 -2.133000 1.000000 291 O s 0.327288 0.953907 -12.9029 -2.133000 1.000000 292 O s 0.413859 0.787240 -12.9029 -2.133000 1.000000 293 O s 0.349884 0.723266 -11.3664 -2.133000 1.000000 294 O s 0.002015 0.755253 -12.1347 -2.133000 1.000000 295 O s 0.637000 0.763619 -8.3328 -2.133000 1.000000 296 O s 0.048844 0.795606 -9.1010 -2.133000 1.000000 297 O s 0.700975 0.827593 -9.8692 -2.133000 1.000000 298 O s 0.056904 0.930286 -8.3328 -2.133000 1.000000 299 O s 0.709035 0.962273 -9.1010 -2.133000 1.000000 300 O s 0.120879 0.994260 -9.8692 -2.133000 1.000000 301 O s 0.080526 0.453907 -12.9029 -2.133000 1.000000 302 O s 0.668682 0.421919 -12.1347 -2.133000 1.000000 303 O s 0.016551 0.389932 -11.3664 -2.133000 1.000000 304 O s 0.787546 0.660927 -9.8692 -2.133000 1.000000 305 O s 0.723571 0.596952 -8.3328 -2.133000 1.000000 306 O s 0.375702 0.628940 -9.1010 -2.133000 1.000000 307 O s 0.717707 0.844326 -2.2654 -2.133000 1.000000 308 O s 0.781682 0.908300 -3.8019 -2.133000 1.000000 309 O s 0.129551 0.876313 -3.0337 -2.133000 1.000000 310 O s 0.596647 0.223265 -11.3664 -2.133000 1.000000 311 O s 0.660621 0.287240 -12.9029 -2.133000 1.000000 312 O s 0.008490 0.255253 -12.1347 -2.133000 1.000000 -------------------------------------------------------------------------------- Region 2 : -------------------------------------------------------------------------------- 121 C c 0.048233 0.048232 -15.1683 1.343539 1.000000 122 O c 0.889992 0.016319 -14.4019 1.018487 1.000000 123 O c 0.300887 0.048232 -15.1683 1.018487 1.000000 124 O c 0.953819 0.080146 -15.9348 1.018487 1.000000 125 O c 0.309313 0.182986 -14.4019 1.018487 1.000000 126 C c 0.214899 0.214899 -15.1683 1.343539 1.000000 127 O c 0.962245 0.214899 -15.1683 1.018487 1.000000 128 O c 0.373140 0.246813 -15.9348 1.018487 1.000000 129 Ca c 0.091213 0.091212 -18.2020 2.000000 1.000000 130 Ca c 0.050859 0.550859 -21.2357 2.000000 1.000000 131 Ca c 0.217526 0.717526 -21.2357 2.000000 1.000000 132 C c 0.174546 0.674546 -18.2020 1.343539 1.000000 133 O c 0.332787 0.706459 -18.9685 1.018487 1.000000 134 O c 0.921892 0.674546 -18.2020 1.018487 1.000000 135 O c 0.268959 0.642632 -17.4355 1.018487 1.000000 136 O c 0.188252 0.561925 -23.5029 1.018487 1.000000 137 C c 0.093839 0.593839 -24.2693 1.343539 1.000000 138 O c 0.841185 0.593839 -24.2693 1.018487 1.000000 139 O c 0.252080 0.625752 -25.0358 1.018487 1.000000 140 Ca c 0.298233 0.798233 -15.1683 2.000000 1.000000 141 O c 0.182972 0.809299 -17.4355 1.018487 1.000000 142 C c 0.341212 0.841212 -18.2020 1.343539 1.000000 143 O c 0.593867 0.841212 -18.2020 1.018487 1.000000 144 O c 0.246799 0.873126 -18.9685 1.018487 1.000000 145 Ca c 0.464899 0.964899 -15.1683 2.000000 1.000000 146 Ca c 0.424546 0.424546 -18.2020 2.000000 1.000000 147 Ca c 0.591213 0.591212 -18.2020 2.000000 1.000000 148 Ca c 0.177172 0.177172 -24.2693 2.000000 1.000000 149 C c 0.007879 0.507879 -18.2020 1.343539 1.000000 150 O c 0.849639 0.475966 -17.4355 1.018487 1.000000 151 O c 0.913466 0.539793 -18.9685 1.018487 1.000000 152 O c 0.260533 0.507879 -18.2020 1.018487 1.000000 153 C c 0.300859 0.300859 -21.2357 1.343539 1.000000 154 O c 0.142619 0.268945 -20.4692 1.018487 1.000000 155 O c 0.553513 0.300859 -21.2357 1.018487 1.000000 156 O c 0.206446 0.332772 -22.0021 1.018487 1.000000 157 C c 0.548233 0.548233 -15.1683 1.343539 1.000000 158 O c 0.706473 0.580146 -15.9348 1.018487 1.000000 159 O c 0.295579 0.548233 -15.1683 1.018487 1.000000 160 O c 0.642646 0.516319 -14.4019 1.018487 1.000000 161 O c 0.561939 0.435612 -20.4692 1.018487 1.000000 162 C c 0.467526 0.467526 -21.2357 1.343539 1.000000 163 O c 0.214872 0.467526 -21.2357 1.018487 1.000000 164 O c 0.625766 0.499439 -22.0021 1.018487 1.000000 165 Ca c 0.343839 0.343839 -24.2693 2.000000 1.000000 166 Ca c 0.131566 0.631566 -15.1683 2.000000 1.000000 167 O c 0.556659 0.682986 -14.4019 1.018487 1.000000 168 C c 0.714899 0.714899 -15.1683 1.343539 1.000000 169 O c 0.967553 0.714899 -15.1683 1.018487 1.000000 170 O c 0.620486 0.746813 -15.9348 1.018487 1.000000 171 Ca c 0.010506 0.010505 -24.2693 2.000000 1.000000 172 C c 0.134192 0.134192 -21.2357 1.343539 1.000000 173 O c 0.292433 0.166106 -22.0021 1.018487 1.000000 174 O c 0.228606 0.102279 -20.4692 1.018487 1.000000 175 O c 0.881538 0.134192 -21.2357 1.018487 1.000000 176 Ca c 0.798233 0.298233 -15.1683 2.000000 1.000000 177 Ca c 0.964899 0.464899 -15.1683 2.000000 1.000000 178 Ca c 0.550859 0.050859 -21.2357 2.000000 1.000000 179 C c 0.381566 0.381566 -15.1683 1.343539 1.000000 180 O c 0.223326 0.349652 -14.4019 1.018487 1.000000 181 O c 0.287153 0.413479 -15.9348 1.018487 1.000000 182 O c 0.634220 0.381566 -15.1683 1.018487 1.000000 183 C c 0.674546 0.174546 -18.2020 1.343539 1.000000 184 O c 0.516305 0.142632 -17.4355 1.018487 1.000000 185 O c 0.927200 0.174546 -18.2020 1.018487 1.000000 186 O c 0.580132 0.206459 -18.9685 1.018487 1.000000 187 O c 0.935626 0.309299 -17.4355 1.018487 1.000000 188 C c 0.841213 0.341212 -18.2020 1.343539 1.000000 189 O c 0.588559 0.341212 -18.2020 1.018487 1.000000 190 O c 0.999453 0.373126 -18.9685 1.018487 1.000000 191 O c 0.435598 0.061925 -23.5029 1.018487 1.000000 192 C c 0.593839 0.093839 -24.2693 1.343539 1.000000 193 O c 0.846493 0.093839 -24.2693 1.018487 1.000000 194 O c 0.499426 0.125752 -25.0358 1.018487 1.000000 195 Ca c 0.717526 0.217526 -21.2357 2.000000 1.000000 196 Ca c 0.257879 0.257879 -18.2020 2.000000 1.000000 197 C c 0.507879 0.007879 -18.2020 1.343539 1.000000 198 O c 0.666120 0.039793 -18.9685 1.018487 1.000000 199 O c 0.602293 0.975965 -17.4355 1.018487 1.000000 200 O c 0.255225 0.007879 -18.2020 1.018487 1.000000 201 Ca c 0.631566 0.131566 -15.1683 2.000000 1.000000 202 C c 0.427172 0.927172 -24.2693 1.343539 1.000000 203 O c 0.585413 0.959086 -25.0358 1.018487 1.000000 204 O c 0.174518 0.927172 -24.2693 1.018487 1.000000 205 O c 0.521586 0.895259 -23.5029 1.018487 1.000000 206 Ca c 0.677172 0.677172 -24.2693 2.000000 1.000000 207 Ca c 0.843839 0.843839 -24.2693 2.000000 1.000000 208 C c 0.260506 0.760505 -24.2693 1.343539 1.000000 209 O c 0.102265 0.728592 -23.5029 1.018487 1.000000 210 O c 0.166092 0.792419 -25.0358 1.018487 1.000000 211 O c 0.513160 0.760505 -24.2693 1.018487 1.000000 212 C c 0.800859 0.800859 -21.2357 1.343539 1.000000 213 O c 0.959100 0.832772 -22.0021 1.018487 1.000000 214 O c 0.548205 0.800859 -21.2357 1.018487 1.000000 215 O c 0.895273 0.768945 -20.4692 1.018487 1.000000 216 Ca c 0.384192 0.884192 -21.2357 2.000000 1.000000 217 Ca c 0.924546 0.924546 -18.2020 2.000000 1.000000 218 O c 0.809285 0.935612 -20.4692 1.018487 1.000000 219 C c 0.967526 0.967526 -21.2357 1.343539 1.000000 220 O c 0.220180 0.967526 -21.2357 1.018487 1.000000 221 O c 0.873112 0.999439 -22.0021 1.018487 1.000000 222 C c 0.634192 0.634192 -21.2357 1.343539 1.000000 223 O c 0.475952 0.602279 -20.4692 1.018487 1.000000 224 O c 0.539779 0.666106 -22.0021 1.018487 1.000000 225 O c 0.886846 0.634192 -21.2357 1.018487 1.000000 226 C c 0.927172 0.427172 -24.2693 1.343539 1.000000 227 O c 0.768932 0.395259 -23.5029 1.018487 1.000000 228 O c 0.179826 0.427172 -24.2693 1.018487 1.000000 229 O c 0.832759 0.459086 -25.0358 1.018487 1.000000 230 Ca c 0.510506 0.510505 -24.2693 2.000000 1.000000 231 Ca c 0.757879 0.757879 -18.2020 2.000000 1.000000 232 C c 0.881566 0.881566 -15.1683 1.343539 1.000000 233 O c 0.039806 0.913479 -15.9348 1.018487 1.000000 234 O c 0.975979 0.849652 -14.4019 1.018487 1.000000 235 O c 0.628912 0.881566 -15.1683 1.018487 1.000000 236 C c 0.760506 0.260505 -24.2693 1.343539 1.000000 237 O c 0.918746 0.292419 -25.0358 1.018487 1.000000 238 O c 0.854919 0.228592 -23.5029 1.018487 1.000000 239 O c 0.507852 0.260505 -24.2693 1.018487 1.000000 240 Ca c 0.884192 0.384192 -21.2357 2.000000 1.000000 313 O s 0.889627 0.016245 -14.4001 -2.133000 1.000000 314 O s 0.301470 0.048232 -15.1683 -2.133000 1.000000 315 O s 0.953601 0.080220 -15.9366 -2.133000 1.000000 316 O s 0.309531 0.182912 -14.4001 -2.133000 1.000000 317 O s 0.961662 0.214899 -15.1683 -2.133000 1.000000 318 O s 0.373505 0.246886 -15.9366 -2.133000 1.000000 319 O s 0.333152 0.706533 -18.9702 -2.133000 1.000000 320 O s 0.921308 0.674546 -18.2020 -2.133000 1.000000 321 O s 0.269177 0.642559 -17.4338 -2.133000 1.000000 322 O s 0.188470 0.561852 -23.5011 -2.133000 1.000000 323 O s 0.840602 0.593839 -24.2693 -2.133000 1.000000 324 O s 0.252445 0.625826 -25.0376 -2.133000 1.000000 325 O s 0.182607 0.809225 -17.4338 -2.133000 1.000000 326 O s 0.594450 0.841212 -18.2020 -2.133000 1.000000 327 O s 0.246581 0.873200 -18.9702 -2.133000 1.000000 328 O s 0.849273 0.475892 -17.4338 -2.133000 1.000000 329 O s 0.913248 0.539866 -18.9702 -2.133000 1.000000 330 O s 0.261117 0.507879 -18.2020 -2.133000 1.000000 331 O s 0.142253 0.268872 -20.4674 -2.133000 1.000000 332 O s 0.554097 0.300859 -21.2357 -2.133000 1.000000 333 O s 0.206228 0.332846 -22.0039 -2.133000 1.000000 334 O s 0.706839 0.580220 -15.9366 -2.133000 1.000000 335 O s 0.294995 0.548233 -15.1683 -2.133000 1.000000 336 O s 0.642864 0.516245 -14.4001 -2.133000 1.000000 337 O s 0.562157 0.435538 -20.4674 -2.133000 1.000000 338 O s 0.214288 0.467526 -21.2357 -2.133000 1.000000 339 O s 0.626132 0.499513 -22.0039 -2.133000 1.000000 340 O s 0.556293 0.682912 -14.4001 -2.133000 1.000000 341 O s 0.968137 0.714899 -15.1683 -2.133000 1.000000 342 O s 0.620268 0.746886 -15.9366 -2.133000 1.000000 343 O s 0.292798 0.166179 -22.0039 -2.133000 1.000000 344 O s 0.228824 0.102205 -20.4674 -2.133000 1.000000 345 O s 0.880955 0.134192 -21.2357 -2.133000 1.000000 346 O s 0.222960 0.349579 -14.4001 -2.133000 1.000000 347 O s 0.286935 0.413553 -15.9366 -2.133000 1.000000 348 O s 0.634804 0.381566 -15.1683 -2.133000 1.000000 349 O s 0.515940 0.142558 -17.4338 -2.133000 1.000000 350 O s 0.927783 0.174546 -18.2020 -2.133000 1.000000 351 O s 0.579914 0.206533 -18.9702 -2.133000 1.000000 352 O s 0.935844 0.309225 -17.4338 -2.133000 1.000000 353 O s 0.587975 0.341212 -18.2020 -2.133000 1.000000 354 O s 0.999819 0.373200 -18.9702 -2.133000 1.000000 355 O s 0.435233 0.061851 -23.5011 -2.133000 1.000000 356 O s 0.847077 0.093839 -24.2693 -2.133000 1.000000 357 O s 0.499207 0.125826 -25.0376 -2.133000 1.000000 358 O s 0.666485 0.039866 -18.9702 -2.133000 1.000000 359 O s 0.602511 0.975892 -17.4338 -2.133000 1.000000 360 O s 0.254642 0.007879 -18.2020 -2.133000 1.000000 361 O s 0.585778 0.959159 -25.0376 -2.133000 1.000000 362 O s 0.173935 0.927172 -24.2693 -2.133000 1.000000 363 O s 0.521804 0.895185 -23.5011 -2.133000 1.000000 364 O s 0.101900 0.728518 -23.5011 -2.133000 1.000000 365 O s 0.165874 0.792493 -25.0376 -2.133000 1.000000 366 O s 0.513743 0.760505 -24.2693 -2.133000 1.000000 367 O s 0.959465 0.832846 -22.0039 -2.133000 1.000000 368 O s 0.547622 0.800859 -21.2357 -2.133000 1.000000 369 O s 0.895491 0.768872 -20.4674 -2.133000 1.000000 370 O s 0.808920 0.935538 -20.4674 -2.133000 1.000000 371 O s 0.220763 0.967526 -21.2357 -2.133000 1.000000 372 O s 0.872894 0.999513 -22.0039 -2.133000 1.000000 373 O s 0.475587 0.602205 -20.4674 -2.133000 1.000000 374 O s 0.539561 0.666180 -22.0039 -2.133000 1.000000 375 O s 0.887430 0.634192 -21.2357 -2.133000 1.000000 376 O s 0.768566 0.395185 -23.5011 -2.133000 1.000000 377 O s 0.180410 0.427172 -24.2693 -2.133000 1.000000 378 O s 0.832541 0.459159 -25.0376 -2.133000 1.000000 379 O s 0.040172 0.913553 -15.9366 -2.133000 1.000000 380 O s 0.976198 0.849579 -14.4001 -2.133000 1.000000 381 O s 0.628329 0.881566 -15.1683 -2.133000 1.000000 382 O s 0.919112 0.292493 -25.0376 -2.133000 1.000000 383 O s 0.855137 0.228518 -23.5011 -2.133000 1.000000 384 O s 0.507268 0.260505 -24.2693 -2.133000 1.000000 -------------------------------------------------------------------------------- Growth Slice : Mixed fractional/Cartesian coordinates -------------------------------------------------------------------------------- Label (Frac) (Frac) (Angs) (e) (Frac) -------------------------------------------------------------------------------- 1 Ca c 0.085960 0.085960 -6.0673 2.000000 1.000000 2 C c 0.042980 0.042980 -3.0337 1.343539 1.000000 3 O c 0.201220 0.074893 -3.8001 1.018487 1.000000 4 O c 0.790326 0.042980 -3.0337 1.018487 1.000000 5 O c 0.137393 0.011066 -2.2672 1.018487 1.000000 6 O c 0.051406 0.177733 -2.2672 1.018487 1.000000 7 C c 0.209647 0.209647 -3.0337 1.343539 1.000000 8 O c 0.462301 0.209647 -3.0337 1.018487 1.000000 9 O c 0.115233 0.241560 -3.8001 1.018487 1.000000 10 Ca c 0.292980 0.792980 -3.0337 2.000000 1.000000 11 Ca c 0.459646 0.959647 -3.0337 2.000000 1.000000 12 Ca c 0.045606 0.545606 -9.1010 2.000000 1.000000 13 C c 0.169293 0.669293 -6.0673 1.343539 1.000000 14 O c 0.011053 0.637379 -5.3009 1.018487 1.000000 15 O c 0.421947 0.669293 -6.0673 1.018487 1.000000 16 O c 0.074880 0.701207 -6.8338 1.018487 1.000000 17 O c 0.430373 0.804046 -5.3009 1.018487 1.000000 18 C c 0.335960 0.835960 -6.0673 1.343539 1.000000 19 O c 0.083306 0.835960 -6.0673 1.018487 1.000000 20 O c 0.494200 0.867873 -6.8338 1.018487 1.000000 21 O c 0.930346 0.556673 -11.3682 1.018487 1.000000 22 C c 0.088586 0.588586 -12.1347 1.343539 1.000000 23 O c 0.341240 0.588586 -12.1347 1.018487 1.000000 24 O c 0.994173 0.620500 -12.9011 1.018487 1.000000 25 Ca c 0.212273 0.712273 -9.1010 2.000000 1.000000 26 Ca c 0.171920 0.171919 -12.1347 2.000000 1.000000 27 Ca c 0.338586 0.338586 -12.1347 2.000000 1.000000 28 C c 0.295606 0.295606 -9.1010 1.343539 1.000000 29 O c 0.453847 0.327520 -9.8675 1.018487 1.000000 30 O c 0.042952 0.295606 -9.1010 1.018487 1.000000 31 O c 0.390020 0.263693 -8.3345 1.018487 1.000000 32 C c 0.002626 0.502626 -6.0673 1.343539 1.000000 33 O c 0.160867 0.534540 -6.8338 1.018487 1.000000 34 O c 0.097040 0.470713 -5.3009 1.018487 1.000000 35 O c 0.749972 0.502626 -6.0673 1.018487 1.000000 36 Ca c 0.419293 0.419293 -6.0673 2.000000 1.000000 37 C c 0.542980 0.542980 -3.0337 1.343539 1.000000 38 O c 0.384739 0.511066 -2.2672 1.018487 1.000000 39 O c 0.795634 0.542980 -3.0337 1.018487 1.000000 40 O c 0.448566 0.574893 -3.8001 1.018487 1.000000 41 O c 0.804060 0.677733 -2.2672 1.018487 1.000000 42 C c 0.709647 0.709647 -3.0337 1.343539 1.000000 43 O c 0.456993 0.709647 -3.0337 1.018487 1.000000 44 O c 0.867887 0.741560 -3.8001 1.018487 1.000000 45 O c 0.304032 0.430359 -8.3345 1.018487 1.000000 46 C c 0.462273 0.462273 -9.1010 1.343539 1.000000 47 O c 0.714927 0.462273 -9.1010 1.018487 1.000000 48 O c 0.367859 0.494186 -9.8675 1.018487 1.000000 49 Ca c 0.585960 0.585960 -6.0673 2.000000 1.000000 50 Ca c 0.126313 0.626313 -3.0337 2.000000 1.000000 51 Ca c 0.545606 0.045606 -9.1010 2.000000 1.000000 52 Ca c 0.712273 0.212273 -9.1010 2.000000 1.000000 53 C c 0.128940 0.128939 -9.1010 1.343539 1.000000 54 O c 0.970699 0.097026 -8.3345 1.018487 1.000000 55 O c 0.034526 0.160853 -9.8675 1.018487 1.000000 56 O c 0.381594 0.128939 -9.1010 1.018487 1.000000 57 C c 0.669293 0.169293 -6.0673 1.343539 1.000000 58 O c 0.827534 0.201207 -6.8338 1.018487 1.000000 59 O c 0.416639 0.169293 -6.0673 1.018487 1.000000 60 O c 0.763707 0.137379 -5.3009 1.018487 1.000000 61 O c 0.683000 0.056672 -11.3682 1.018487 1.000000 62 C c 0.588586 0.088586 -12.1347 1.343539 1.000000 63 O c 0.335932 0.088586 -12.1347 1.018487 1.000000 64 O c 0.746827 0.120500 -12.9011 1.018487 1.000000 65 Ca c 0.005253 0.005253 -12.1347 2.000000 1.000000 66 Ca c 0.252626 0.252626 -6.0673 2.000000 1.000000 67 C c 0.376313 0.376313 -3.0337 1.343539 1.000000 68 O c 0.534554 0.408227 -3.8001 1.018487 1.000000 69 O c 0.470727 0.344400 -2.2672 1.018487 1.000000 70 O c 0.123659 0.376313 -3.0337 1.018487 1.000000 71 Ca c 0.792980 0.292980 -3.0337 2.000000 1.000000 72 O c 0.677719 0.304046 -5.3009 1.018487 1.000000 73 C c 0.835960 0.335960 -6.0673 1.343539 1.000000 74 O c 0.088614 0.335960 -6.0673 1.018487 1.000000 75 O c 0.741546 0.367873 -6.8338 1.018487 1.000000 76 Ca c 0.959647 0.459647 -3.0337 2.000000 1.000000 77 C c 0.502626 0.002626 -6.0673 1.343539 1.000000 78 O c 0.344386 0.970713 -5.3009 1.018487 1.000000 79 O c 0.408213 0.034540 -6.8338 1.018487 1.000000 80 O c 0.755280 0.002626 -6.0673 1.018487 1.000000 81 Ca c 0.626313 0.126313 -3.0337 2.000000 1.000000 82 C c 0.421919 0.921919 -12.1347 1.343539 1.000000 83 O c 0.263679 0.890006 -11.3682 1.018487 1.000000 84 O c 0.674573 0.921919 -12.1347 1.018487 1.000000 85 O c 0.327506 0.953833 -12.9011 1.018487 1.000000 86 C c 0.255253 0.755253 -12.1347 1.343539 1.000000 87 O c 0.413493 0.787166 -12.9011 1.018487 1.000000 88 O c 0.349666 0.723339 -11.3682 1.018487 1.000000 89 O c 0.002599 0.755253 -12.1347 1.018487 1.000000 90 Ca c 0.919293 0.919293 -6.0673 2.000000 1.000000 91 Ca c 0.671920 0.671919 -12.1347 2.000000 1.000000 92 C c 0.795606 0.795606 -9.1010 1.343539 1.000000 93 O c 0.637366 0.763693 -8.3345 1.018487 1.000000 94 O c 0.048260 0.795606 -9.1010 1.018487 1.000000 95 O c 0.701193 0.827520 -9.8675 1.018487 1.000000 96 O c 0.056686 0.930359 -8.3345 1.018487 1.000000 97 C c 0.962273 0.962273 -9.1010 1.343539 1.000000 98 O c 0.709619 0.962273 -9.1010 1.018487 1.000000 99 O c 0.120513 0.994186 -9.8675 1.018487 1.000000 100 Ca c 0.838586 0.838586 -12.1347 2.000000 1.000000 101 Ca c 0.378940 0.878940 -9.1010 2.000000 1.000000 102 C c 0.921920 0.421919 -12.1347 1.343539 1.000000 103 O c 0.080160 0.453833 -12.9011 1.018487 1.000000 104 O c 0.669266 0.421919 -12.1347 1.018487 1.000000 105 O c 0.016333 0.390006 -11.3682 1.018487 1.000000 106 Ca c 0.505253 0.505253 -12.1347 2.000000 1.000000 107 C c 0.628940 0.628940 -9.1010 1.343539 1.000000 108 O c 0.787180 0.660853 -9.8675 1.018487 1.000000 109 O c 0.723353 0.597026 -8.3345 1.018487 1.000000 110 O c 0.376286 0.628940 -9.1010 1.018487 1.000000 111 C c 0.876313 0.876313 -3.0337 1.343539 1.000000 112 O c 0.718073 0.844400 -2.2672 1.018487 1.000000 113 O c 0.781900 0.908227 -3.8001 1.018487 1.000000 114 O c 0.128967 0.876313 -3.0337 1.018487 1.000000 115 Ca c 0.752626 0.752626 -6.0673 2.000000 1.000000 116 C c 0.755253 0.255253 -12.1347 1.343539 1.000000 117 O c 0.597012 0.223339 -11.3682 1.018487 1.000000 118 O c 0.660839 0.287166 -12.9011 1.018487 1.000000 119 O c 0.007907 0.255253 -12.1347 1.018487 1.000000 120 Ca c 0.878940 0.378940 -9.1010 2.000000 1.000000 241 O s 0.201586 0.074967 -3.8019 -2.133000 1.000000 242 O s 0.789742 0.042980 -3.0337 -2.133000 1.000000 243 O s 0.137611 0.010993 -2.2654 -2.133000 1.000000 244 O s 0.051041 0.177659 -2.2654 -2.133000 1.000000 245 O s 0.462884 0.209647 -3.0337 -2.133000 1.000000 246 O s 0.115015 0.241634 -3.8019 -2.133000 1.000000 247 O s 0.010687 0.637306 -5.2991 -2.133000 1.000000 248 O s 0.422530 0.669293 -6.0673 -2.133000 1.000000 249 O s 0.074662 0.701280 -6.8356 -2.133000 1.000000 250 O s 0.430591 0.803972 -5.2991 -2.133000 1.000000 251 O s 0.082722 0.835960 -6.0673 -2.133000 1.000000 252 O s 0.494566 0.867947 -6.8356 -2.133000 1.000000 253 O s 0.929980 0.556599 -11.3664 -2.133000 1.000000 254 O s 0.341824 0.588586 -12.1347 -2.133000 1.000000 255 O s 0.993955 0.620573 -12.9029 -2.133000 1.000000 256 O s 0.454212 0.327593 -9.8692 -2.133000 1.000000 257 O s 0.042369 0.295606 -9.1010 -2.133000 1.000000 258 O s 0.390238 0.263619 -8.3328 -2.133000 1.000000 259 O s 0.161232 0.534614 -6.8356 -2.133000 1.000000 260 O s 0.097258 0.470639 -5.2991 -2.133000 1.000000 261 O s 0.749389 0.502626 -6.0673 -2.133000 1.000000 262 O s 0.384374 0.510993 -2.2654 -2.133000 1.000000 263 O s 0.796217 0.542980 -3.0337 -2.133000 1.000000 264 O s 0.448348 0.574967 -3.8019 -2.133000 1.000000 265 O s 0.804278 0.677659 -2.2654 -2.133000 1.000000 266 O s 0.456409 0.709647 -3.0337 -2.133000 1.000000 267 O s 0.868253 0.741634 -3.8019 -2.133000 1.000000 268 O s 0.303667 0.430286 -8.3328 -2.133000 1.000000 269 O s 0.715511 0.462273 -9.1010 -2.133000 1.000000 270 O s 0.367641 0.494260 -9.8692 -2.133000 1.000000 271 O s 0.970334 0.096952 -8.3328 -2.133000 1.000000 272 O s 0.034308 0.160927 -9.8692 -2.133000 1.000000 273 O s 0.382177 0.128939 -9.1010 -2.133000 1.000000 274 O s 0.827899 0.201280 -6.8356 -2.133000 1.000000 275 O s 0.416056 0.169293 -6.0673 -2.133000 1.000000 276 O s 0.763925 0.137306 -5.2991 -2.133000 1.000000 277 O s 0.683218 0.056599 -11.3664 -2.133000 1.000000 278 O s 0.335349 0.088586 -12.1347 -2.133000 1.000000 279 O s 0.747192 0.120573 -12.9029 -2.133000 1.000000 280 O s 0.534919 0.408300 -3.8019 -2.133000 1.000000 281 O s 0.470945 0.344326 -2.2654 -2.133000 1.000000 282 O s 0.123076 0.376313 -3.0337 -2.133000 1.000000 283 O s 0.677354 0.303972 -5.2991 -2.133000 1.000000 284 O s 0.089197 0.335960 -6.0673 -2.133000 1.000000 285 O s 0.741328 0.367947 -6.8356 -2.133000 1.000000 286 O s 0.344020 0.970639 -5.2991 -2.133000 1.000000 287 O s 0.407995 0.034614 -6.8356 -2.133000 1.000000 288 O s 0.755864 0.002626 -6.0673 -2.133000 1.000000 289 O s 0.263314 0.889932 -11.3664 -2.133000 1.000000 290 O s 0.675157 0.921919 -12.1347 -2.133000 1.000000 291 O s 0.327288 0.953907 -12.9029 -2.133000 1.000000 292 O s 0.413859 0.787240 -12.9029 -2.133000 1.000000 293 O s 0.349884 0.723266 -11.3664 -2.133000 1.000000 294 O s 0.002015 0.755253 -12.1347 -2.133000 1.000000 295 O s 0.637000 0.763619 -8.3328 -2.133000 1.000000 296 O s 0.048844 0.795606 -9.1010 -2.133000 1.000000 297 O s 0.700975 0.827593 -9.8692 -2.133000 1.000000 298 O s 0.056904 0.930286 -8.3328 -2.133000 1.000000 299 O s 0.709035 0.962273 -9.1010 -2.133000 1.000000 300 O s 0.120879 0.994260 -9.8692 -2.133000 1.000000 301 O s 0.080526 0.453907 -12.9029 -2.133000 1.000000 302 O s 0.668682 0.421919 -12.1347 -2.133000 1.000000 303 O s 0.016551 0.389932 -11.3664 -2.133000 1.000000 304 O s 0.787546 0.660927 -9.8692 -2.133000 1.000000 305 O s 0.723571 0.596952 -8.3328 -2.133000 1.000000 306 O s 0.375702 0.628940 -9.1010 -2.133000 1.000000 307 O s 0.717707 0.844326 -2.2654 -2.133000 1.000000 308 O s 0.781682 0.908300 -3.8019 -2.133000 1.000000 309 O s 0.129551 0.876313 -3.0337 -2.133000 1.000000 310 O s 0.596647 0.223265 -11.3664 -2.133000 1.000000 311 O s 0.660621 0.287240 -12.9029 -2.133000 1.000000 312 O s 0.008490 0.255253 -12.1347 -2.133000 1.000000 -------------------------------------------------------------------------------- Molecule list generated from bondlengths : Total number of molecules = 48 -------------------------------------------------------------------------------- Molecule No./: Atoms Periodicity : -------------------------------------------------------------------------------- 1 0 : C c 2 O c 3 O c 4 O c 5 O s 241 : O s 242 O s 243 2 0 : O c 6 C c 7 O c 8 O c 9 O s 244 : O s 245 O s 246 3 0 : C c 13 O c 14 O c 15 O c 16 O s 247 : O s 248 O s 249 4 0 : O c 17 C c 18 O c 19 O c 20 O s 250 : O s 251 O s 252 5 0 : O c 21 C c 22 O c 23 O c 24 O s 253 : O s 254 O s 255 6 0 : C c 28 O c 29 O c 30 O c 31 O s 256 : O s 257 O s 258 7 0 : C c 32 O c 33 O c 34 O c 35 O s 259 : O s 260 O s 261 8 0 : C c 37 O c 38 O c 39 O c 40 O s 262 : O s 263 O s 264 9 0 : O c 41 C c 42 O c 43 O c 44 O s 265 : O s 266 O s 267 10 0 : O c 45 C c 46 O c 47 O c 48 O s 268 : O s 269 O s 270 11 0 : C c 53 O c 54 O c 55 O c 56 O s 271 : O s 272 O s 273 12 0 : C c 57 O c 58 O c 59 O c 60 O s 274 : O s 275 O s 276 13 0 : O c 61 C c 62 O c 63 O c 64 O s 277 : O s 278 O s 279 14 0 : C c 67 O c 68 O c 69 O c 70 O s 280 : O s 281 O s 282 15 0 : O c 72 C c 73 O c 74 O c 75 O s 283 : O s 284 O s 285 16 0 : C c 77 O c 78 O c 79 O c 80 O s 286 : O s 287 O s 288 17 0 : C c 82 O c 83 O c 84 O c 85 O s 289 : O s 290 O s 291 18 0 : C c 86 O c 87 O c 88 O c 89 O s 292 : O s 293 O s 294 19 0 : C c 92 O c 93 O c 94 O c 95 O s 295 : O s 296 O s 297 20 0 : O c 96 C c 97 O c 98 O c 99 O s 298 : O s 299 O s 300 21 0 : C c 102 O c 103 O c 104 O c 105 O s 301 : O s 302 O s 303 22 0 : C c 107 O c 108 O c 109 O c 110 O s 304 : O s 305 O s 306 23 0 : C c 111 O c 112 O c 113 O c 114 O s 307 : O s 308 O s 309 24 0 : C c 116 O c 117 O c 118 O c 119 O s 310 : O s 311 O s 312 25 0 : C c 121 O c 122 O c 123 O c 124 O s 313 : O s 314 O s 315 26 0 : O c 125 C c 126 O c 127 O c 128 O s 316 : O s 317 O s 318 27 0 : C c 132 O c 133 O c 134 O c 135 O s 319 : O s 320 O s 321 28 0 : O c 136 C c 137 O c 138 O c 139 O s 322 : O s 323 O s 324 29 0 : O c 141 C c 142 O c 143 O c 144 O s 325 : O s 326 O s 327 30 0 : C c 149 O c 150 O c 151 O c 152 O s 328 : O s 329 O s 330 31 0 : C c 153 O c 154 O c 155 O c 156 O s 331 : O s 332 O s 333 32 0 : C c 157 O c 158 O c 159 O c 160 O s 334 : O s 335 O s 336 33 0 : O c 161 C c 162 O c 163 O c 164 O s 337 : O s 338 O s 339 34 0 : O c 167 C c 168 O c 169 O c 170 O s 340 : O s 341 O s 342 35 0 : C c 172 O c 173 O c 174 O c 175 O s 343 : O s 344 O s 345 36 0 : C c 179 O c 180 O c 181 O c 182 O s 346 : O s 347 O s 348 37 0 : C c 183 O c 184 O c 185 O c 186 O s 349 : O s 350 O s 351 38 0 : O c 187 C c 188 O c 189 O c 190 O s 352 : O s 353 O s 354 39 0 : O c 191 C c 192 O c 193 O c 194 O s 355 : O s 356 O s 357 40 0 : C c 197 O c 198 O c 199 O c 200 O s 358 : O s 359 O s 360 41 0 : C c 202 O c 203 O c 204 O c 205 O s 361 : O s 362 O s 363 42 0 : C c 208 O c 209 O c 210 O c 211 O s 364 : O s 365 O s 366 43 0 : C c 212 O c 213 O c 214 O c 215 O s 367 : O s 368 O s 369 44 0 : O c 218 C c 219 O c 220 O c 221 O s 370 : O s 371 O s 372 45 0 : C c 222 O c 223 O c 224 O c 225 O s 373 : O s 374 O s 375 46 0 : C c 226 O c 227 O c 228 O c 229 O s 376 : O s 377 O s 378 47 0 : C c 232 O c 233 O c 234 O c 235 O s 379 : O s 380 O s 381 48 0 : C c 236 O c 237 O c 238 O c 239 O s 382 : O s 383 O s 384 -------------------------------------------------------------------------------- ******************************************************************************** * General input information * ******************************************************************************** Species output for all configurations : -------------------------------------------------------------------------------- Species Type Atomic Atomic Charge Radii (Angs) Library Number Mass (e) Cova Ionic VDW Symbol -------------------------------------------------------------------------------- Cd Core 48 112.41 2.0000 0.000 0.000 2.520 Mn Core 25 54.94 2.0000 0.000 0.000 2.010 Mg Core 12 24.31 2.0000 1.100 0.000 1.640 Zn Core 30 65.39 2.0000 0.000 0.000 2.160 Ni Core 28 58.69 2.0000 0.000 0.000 1.810 Co Core 27 58.93 2.0000 0.000 0.000 1.990 Fe Core 26 55.85 2.0000 0.000 0.000 2.000 Ca Core 20 40.08 2.0000 0.990 0.000 2.750 C Core 6 12.01 1.3435 0.770 0.000 1.530 O Core 8 16.00 1.0185 0.730 0.000 1.360 O Shell 8 0.00 -2.1330 0.730 0.000 1.360 -------------------------------------------------------------------------------- Accuracy factor for short range sums = 8.000 Time limit = Infinity **** Warning - potential 1 is acting on the core of an ion with a shell **** **** Warning - potential 11 is acting on the core of an ion with a shell **** General interatomic potentials : -------------------------------------------------------------------------------- Atom Types Potential A B C D Cutoffs(Ang) 1 2 Min Max -------------------------------------------------------------------------------- Ca c O s Buckingham 0.215E+04 0.289 .000 .000 0.000 10.000 Cd c O s Buckingham 0.433E+04 0.256 .000 .000 0.000 10.000 Mg c O s Buckingham 0.104E+04 0.289 .000 .000 0.000 10.000 Co c O s Buckingham 0.110E+04 0.286 .000 .000 0.000 10.000 Fe c O s Buckingham 0.215E+04 0.265 .000 .000 0.000 10.000 Mn c O s Buckingham 0.200E+04 0.273 .000 .000 0.000 10.000 Ni c O s Buckingham 0.163E+04 0.267 .000 .000 0.000 10.000 Zn c O s Buckingham 0.103E+04 0.289 .000 .000 0.000 10.000 O c O s Spring (c-s) 52.7 0.100E+05 .000 .000 0.000 0.600 -------------------------------------------------------------------------------- Intramolecular potentials : -------------------------------------------------------------------------------- Atom Types Potential A B C D Cutoffs(Ang) 1 2 Min Max -------------------------------------------------------------------------------- O c O c Buckingham 0.403E+04 0.245 .000 .000 0.000 2.500 C c O c Morse 5.00 2.52 1.20 .000 0.000 1 Bond -------------------------------------------------------------------------------- Intermolecular potentials : -------------------------------------------------------------------------------- Atom Types Potential A B C D Cutoffs(Ang) 1 2 Min Max -------------------------------------------------------------------------------- O s O s Buckingham 0.647E+05 0.199 21.8 .000 0.000 15.000 -------------------------------------------------------------------------------- Intramolecular Three-body potentials : Harmonic form: -------------------------------------------------------------------------------- Atom Atom Atom Force Constants Theta Cutoffs 1 2 3 (eVrad**-2/eVrad**-3/eVrad**-4) (deg) 1-2 1-3 2-3 -------------------------------------------------------------------------------- C c O c O c 1.777 0.0000 0.0000 120.000 Bonded -------------------------------------------------------------------------------- Intramolecular Four-body potentials : Out of plane potentials: -------------------------------------------------------------------------------- Atom Types Force cst Cutoffs 1 2 3 4 (eV) 1-2 1-3 2-3 1-4 -------------------------------------------------------------------------------- C c O c O c O c 8.8279 Bonded -------------------------------------------------------------------------------- ******************************************************************************** * Output for configuration 1 : calcite_-114_0.0000 * ******************************************************************************** Components of energy : -------------------------------------------------------------------------------- Interatomic potentials = -467.34507035 eV Three-body potentials = 0.00000000 eV Four-body potentials = 0.00000000 eV Out of plane potentials = 0.00000001 eV Monopole - monopole (real) = -149.61246268 eV Monopole - monopole (recip)= -1418.45612539 eV Monopole - monopole (total)= -1568.06858807 eV -------------------------------------------------------------------------------- Total lattice energy = -2035.41365841 eV -------------------------------------------------------------------------------- Total lattice energy = -196386.3039 kJ/(mole unit cells) -------------------------------------------------------------------------------- Surface energy (region 1) = 0.7073 J/m**2 -------------------------------------------------------------------------------- Attachment energy = -10.67205114 eV -------------------------------------------------------------------------------- Peak dynamic memory used = 1.31 MB Timing analysis for Gulp : -------------------------------------------------------------------------------- Task / Subroutine Time (Seconds) -------------------------------------------------------------------------------- Calculation of reciprocal space energy and derivatives 0.6400 Calculation of real space energy and derivatives 1.0700 Calculation of three-body energy and derivatives 0.0100 Calculation of four-body energy and derivatives 0.0100 -------------------------------------------------------------------------------- Total CPU time 1.9300 -------------------------------------------------------------------------------- Dump file written as calcite_-114_0.0000.res Job Finished at 10:48.11 23rd April 2002 gdis-0.90/models/natrite_gulpfull.gin0000644000175000017500000001160007717054777016413 0ustar seansean# # Keywords: # opti defe conp molmec comp # # Options: # title Natrite - ICSD Collection Code 16024 end name sodium cell 8.748063 5.262197 6.225842 90.152461 99.881937 90.087486 fractional 48 Na core 0.0000000 0.0180000 0.0000000 1.00000000 0.49999 0.00000 Na core 0.5000035 0.5179950 0.9999797 1.00000000 0.49999 0.00000 Na core 0.0000015 0.0179891 0.0000036 1.00000000 0.49999 0.00000 Na core 0.5000042 0.5179854 0.9999804 1.00000000 0.49999 0.00000 Na core 0.0000092 0.0179873 0.5000018 1.00000000 0.49999 0.00000 Na core 0.4999860 0.5179846 0.4999738 1.00000000 0.49999 0.00000 Na core 0.0000101 0.0179947 0.5000033 1.00000000 0.49999 0.00000 Na core 0.4999869 0.5179918 0.4999735 1.00000000 0.49999 0.00000 Na core 0.1686026 0.5177008 0.7382382 1.00000000 0.49999 0.00000 Na core 0.6686007 0.0177192 0.7382020 1.00000000 0.49999 0.00000 Na core 0.8313979 0.5182814 0.2617525 1.00000000 0.49999 0.00000 Na core 0.3314005 0.0182580 0.2617497 1.00000000 0.49999 0.00000 Na core 0.8313979 0.5182814 0.2617525 1.00000000 0.49999 0.00000 Na core 0.3314002 0.0182582 0.2617499 1.00000000 0.49999 0.00000 Na core 0.1686025 0.5177008 0.7382382 1.00000000 0.49999 0.00000 Na core 0.6686005 0.0177194 0.7382022 1.00000000 0.49999 0.00000 C core 0.1628882 0.5183575 0.2496650 0.71200000 0.49999 0.00000 C core 0.6628884 0.0183651 0.2496561 0.71200000 0.49999 0.00000 C core 0.8371151 0.5176283 0.7503171 0.71200000 0.49999 0.00000 C core 0.3371094 0.0176130 0.7503180 0.71200000 0.49999 0.00000 C core 0.8371151 0.5176281 0.7503169 0.71200000 0.49999 0.00000 C core 0.3371093 0.0176131 0.7503181 0.71200000 0.49999 0.00000 C core 0.1628882 0.5183573 0.2496649 0.71200000 0.49999 0.00000 C core 0.6628883 0.0183651 0.2496562 0.71200000 0.49999 0.00000 O1 core 0.1181924 0.3147465 0.3275945 -0.9039999 0.49999 0.00000 O1 core 0.6181766 0.8148034 0.3276395 -0.9039999 0.49999 0.00000 O1 core 0.8819025 0.3124205 0.6747841 -0.9039999 0.49999 0.00000 O1 core 0.3818635 0.8123534 0.6748254 -0.9039999 0.49999 0.00000 O1 core 0.8818280 0.7212448 0.6724172 -0.9039999 0.49999 0.00000 O1 core 0.3818244 0.2211709 0.6723338 -0.9039999 0.49999 0.00000 O1 core 0.1181050 0.7235669 0.3252038 -0.9039999 0.49999 0.00000 O1 core 0.6181237 0.2236220 0.3251373 -0.9039999 0.49999 0.00000 O1 core 0.2978499 0.5180664 0.2022750 -0.9039999 0.49999 0.00000 O1 core 0.7671302 0.0172801 0.1317471 -0.9039999 0.49999 0.00000 O1 core 0.7328394 0.5186654 0.8681783 -0.9039999 0.49999 0.00000 O1 core 0.2021419 0.0180000 0.7977053 -0.9039999 0.49999 0.00000 O1 core 0.7021313 0.5179103 0.7976397 -0.9039999 0.49999 0.00000 O1 core 0.2328628 0.0187126 0.8682239 -0.9039999 0.49999 0.00000 O1 core 0.2671653 0.5173294 0.1317897 -0.9039999 0.49999 0.00000 O1 core 0.7978687 0.0179833 0.2023118 -0.9039999 0.49999 0.00000 O1 core 0.0878918 0.7224464 0.2593520 -0.9039999 0.49999 0.00000 O1 core 0.5879110 0.2224787 0.2593006 -0.9039999 0.49999 0.00000 O1 core 0.9120181 0.7217531 0.7385469 -0.9039999 0.49999 0.00000 O1 core 0.4120331 0.2216962 0.7384733 -0.9039999 0.49999 0.00000 O1 core 0.9121077 0.3135376 0.7406529 -0.9039999 0.49999 0.00000 O1 core 0.4120804 0.8134906 0.7406575 -0.9039999 0.49999 0.00000 O1 core 0.0879867 0.3142313 0.2614667 -0.9039999 0.49999 0.00000 O1 core 0.5879732 0.8142731 0.2615040 -0.9039999 0.49999 0.00000 species 4 Na core 1.000000 C core 0.712000 O core -0.904000 O1 core -0.904000 buck inter O core Na core 1738.4100 0.265000 0.0000 0.000 12.000 buck O1 core O1 core 5622.2300 0.245497 0.0000 1.000 2.500 buck inter O1 core O1 core 77769.030 0.200000 25.980 1.000 15.000 morse intra bond C core O1 core 5.7000000 2.7406 1.20172 0.0000 three bond intra C core O1 core O1 core 1.1270 120.00 torsion intra O1 cor C cor O1 cor O1 cor .18000 -2 0.0000 & 1.50 1.50 2.00 2.00 stepmx opt 0.300000 print 1 switch_min rfo gnorm 0.100000 dump test.gin gdis-0.90/models/calc2d.gin0000644000175000017500000000041707717054766014165 0ustar seanseansingle conp mole title generated by GDIS end cell 12.516640 15.346710 0.000000 89.999999 89.999999 78.824075 fractional CA 0.0143 -0.0227 -0.1953 CA 0.5182 -0.0177 -0.3252 CA 0.3443 0.7927 -0.9524 CA 0.8472 0.7921 -0.9884 CA 0.1844 0.5943 -1.5663 gdis-0.90/models/baso4-011.mvnout0000644000175000017500000011046607717054765015124 0ustar seansean**************************************************** MARVIN'S Program Version 1.90a Compiled on 04/02/01 at 16:03:25 Minimization And Relaxation of Vacancies and Interstitials Near Surfaces Program David Gay and Andrew Rohl The Royal Institution of Great Britain 1991 - 1992 Run started on Mon Apr 02 at 20:41:34 Executing on localhost under Darwin **************************************************** MARVIN reading file baso4-011.mvn Reading keyword... title surface build exclude cell basis miller shift region bulk-energy output element buckingham buckingham morse three-body accuracy *** Mon Apr 02 20:41:34 *** elapsed time for input = 0.03 total = 0.03 *** Mon Apr 02 20:41:34 *** elapsed time for building molecules = 0.00 total = 0.03 TITLE The (011) surface of barite ION DATA ---------------------------------------------------------------------- Ion Type Charge Atomic Mass Covalent Van der Waals Number Radius Radius ---------------------------------------------------------------------- Ba core 2.0000 56 137.3270 1.34 2.00 S core 1.3600 16 32.0660 1.02 1.80 O core -0.8400 8 15.9990 0.68 1.40 ---------------------------------------------------------------------- TWO-BODY POTENTIALS -------------------------------------------------------------------------------- Ion Type a Ion Type b Potential Parameters Min R Max R Type (Angstroms) -------------------------------------------------------------------------------- Molecular mechanics potentials S core O core Morse 5.0000 1.2000 1.5050 -------------------------------------------------------------------------------- Intermolecular potentials Ba core O core Buckingham 4223.8400 0.2907 0.0000 0.00 10.00 O core O core Buckingham 103585.0200 0.2000 25.9800 0.00 15.00 -------------------------------------------------------------------------------- THREE-BODY POTENTIALS -------------------------------------------------------------------------------- Pivot Ion Ion Type Ion Type Parameters Rp-a Rp-b Ra-b Type a b (Angstroms) -------------------------------------------------------------------------------- S core O core O core 15.00 109.5 -------------------------------------------------------------------------------- BLOCK A DATA ---------------------------------------------------- Lattice Constant: 1.00000 Angstroms Lattice Vectors: 8.88846 0.00000 0.00000 0.00000 5.47080 0.00000 0.00000 0.00000 7.14309 Miller Index: 0.00000 1.00000 1.00000 Surface Vectors: 1.00000 0.00000 0.00000 1.00000 Bulk Energy: -181.62126 eV/cell Region Sizes: 2.00000 8.00000 Maximum Interaction 20.25600 ---------------------------------------------------- BLOCK A BASIS ------------------------------------------------------------ No Ion Type Coordinates Molecule ------------------------------------------------------------ 1 Ba core 6.11200 1.36770 2.42468 0 2 Ba core 1.66778 1.36770 1.14686 0 3 Ba core 2.77645 4.10310 4.71841 0 4 Ba core 7.22068 4.10310 5.99622 0 centroid 3.93894 4.10310 1.39720 1 5 S core 3.94327 4.10310 1.38552 1 6 O core 5.27280 4.10310 0.82298 1 7 O core 3.77326 2.92684 2.21581 1 8 O core 2.93213 4.10310 0.34590 1 9 O core 3.77326 5.27936 2.21581 1 centroid 9.39374 1.36770 4.96875 2 10 S core 9.38941 1.36770 4.95707 2 11 O core 9.55943 2.54396 5.78735 2 12 O core 10.40055 1.36770 3.91744 2 13 O core 9.55943 0.19144 5.78735 2 14 O core 8.05988 1.36770 4.39452 2 centroid 8.38317 4.10310 2.17434 3 15 S core 8.38750 4.10310 2.18602 3 16 O core 8.21748 5.27936 1.35573 3 17 O core 7.37636 4.10310 3.22564 3 18 O core 9.71703 4.10310 2.74856 3 19 O core 8.21748 2.92684 1.35573 3 centroid 4.94951 1.36770 5.74588 4 20 S core 4.94519 1.36770 5.75756 4 21 O core 5.11520 2.54396 4.92728 4 22 O core 3.61565 1.36770 6.32010 4 23 O core 5.11520 0.19144 4.92728 4 24 O core 5.95632 1.36770 6.79718 4 ------------------------------------------------------------ SURFACE DATA ------------------------------------------------------------------------- Surface Area: 79.97301734 Angstrom^2 Surface Dipole: -0.00001344 -35.98961454 0.00000000 Surface Normal: 0.00000000 0.79390514 0.60804163 Transformation Matrix: 1.00000000 0.00000000 0.00000000 0.00000000 0.60804163 -0.79390514 0.00000000 0.79390514 0.60804163 Surface Vectors: 8.88845500 0.00000000 0.00000000 8.99740364 Reciprocal Vectors: 0.11250549 0.00000000 0.00000000 0.11114317 Shift: -0.41400000 Layer Thickness: 4.34329307 ------------------------------------------------------------------------- *** Mon Apr 02 20:41:34 *** elapsed time for building lattice = 0.02 total = 0.05 *** Mon Apr 02 20:41:34 *** elapsed time for building three-body list = 0.03 total = 0.08 BLOCK A REGION 1 (REGION 1A) --------------------------------------------------------------------- No Ion Type Coordinates Charge --------------------------------------------------------------------- 1 Ba core 2.77645200 1.09334719 -0.76200572 2.0000* 2 Ba core 1.66777500 5.59204940 -0.76200602 2.0000* 3 Ba core 7.22067900 5.74981440 -4.32833346 2.0000* 4 Ba core 6.11200300 1.25111298 -4.32833376 2.0000* 5 Ba core 2.77645200 6.76427909 -5.10529878 2.0000 6 Ba core 1.66777500 2.26557767 -5.10529909 2.0000 7 Ba core 7.22067900 2.42334267 -8.67162652 2.0000 8 Ba core 6.11200300 6.92204488 -8.67162683 2.0000 9 S core 4.94518500 7.60252287 -2.30180153 1.3600* 10 S core 8.38749700 3.10382145 -2.30180183 1.3600* 11 S core 0.50095700 8.23804235 -2.78853764 1.3600* 12 S core 3.94327000 3.73934093 -2.78853795 1.3600* 13 S core 4.94518500 4.27605114 -6.64509460 1.3600 14 S core 8.38749700 8.77475336 -6.64509490 1.3600 15 S core 0.50095700 4.91157062 -7.13183071 1.3600 16 S core 3.94327000 0.41286920 -7.13183101 1.3600 17 O core 3.77325800 3.79538686 -1.34985002 -0.8400* 18 O core 0.67097000 8.29408908 -1.34985033 -0.8400* 19 O core 7.37636100 2.27846020 -1.66966838 -0.8400* 20 O core 5.95632100 6.77716242 -1.66966868 -0.8400* 21 O core 8.21748500 4.47820483 -1.87281143 -0.8400* 22 O core 5.11519700 8.97690704 -1.87281173 -0.8400* 23 O core 9.71702700 2.65721647 -1.95975288 -0.8400* 24 O core 3.61565500 7.15591868 -1.95975318 -0.8400* 25 O core 5.27279900 4.18594512 -3.13058629 -0.8400* 26 O core -0.82857200 8.68464734 -3.13058660 -0.8400* 27 O core 3.77325800 2.36495676 -3.21752774 -0.8400* 28 O core 0.67097000 6.86365898 -3.21752805 -0.8400* 29 O core 2.93213300 4.56470139 -3.42067080 -0.8400* 30 O core 1.51209400 9.06340360 -3.42067110 -0.8400* 31 O core 8.21748500 3.04777473 -3.74048915 -0.8400* 32 O core 5.11519700 7.54647694 -3.74048945 -0.8400* 33 O core 3.77325800 0.46891513 -5.69314309 -0.8400 34 O core 0.67097000 4.96761735 -5.69314339 -0.8400 35 O core 7.37636100 7.94939211 -6.01296144 -0.8400 36 O core 5.95632100 3.45069068 -6.01296175 -0.8400 37 O core 8.21748500 10.14913673 -6.21610450 -0.8400 38 O core 5.11519700 5.65043531 -6.21610480 -0.8400 39 O core 9.71702700 8.32814837 -6.30304595 -0.8400 40 O core 3.61565500 3.82944695 -6.30304625 -0.8400 41 O core 5.27279900 0.85947339 -7.47387936 -0.8400 42 O core -0.82857200 5.35817560 -7.47387967 -0.8400 43 O core 3.77325800 -0.96151497 -7.56082081 -0.8400 44 O core 0.67097000 3.53718724 -7.56082112 -0.8400 45 O core 2.93213300 1.23822965 -7.76396386 -0.8400 46 O core 1.51209400 5.73693187 -7.76396417 -0.8400 47 O core 8.21748500 8.71870663 -8.08378222 -0.8400 48 O core 5.11519700 4.22000521 -8.08378252 -0.8400 --------------------------------------------------------------------- BLOCK A REGION 2 (REGION 2A) --------------------------------------------------------------------- No Ion Type Coordinates Charge --------------------------------------------------------------------- 1 Ba core 2.77645200 3.43780736 -9.44859185 2.0000 2 Ba core 1.66777500 7.93650957 -9.44859216 2.0000 3 Ba core 7.22067900 8.09427457 -13.01491959 2.0000 4 Ba core 6.11200300 3.59557315 -13.01491990 2.0000 5 Ba core 2.77645200 0.11133562 -13.79188492 2.0000 6 Ba core 1.66777500 4.61003784 -13.79188522 2.0000 7 Ba core 7.22067900 4.76780283 -17.35821266 2.0000 8 Ba core 6.11200300 0.26910141 -17.35821297 2.0000 9 Ba core 2.77645200 5.78226753 -18.13517799 2.0000 10 Ba core 1.66777500 1.28356610 -18.13517829 2.0000 11 Ba core 7.22067900 1.44133110 -21.70150573 2.0000 12 Ba core 6.11200300 5.94003332 -21.70150603 2.0000 13 Ba core 2.77645200 2.45579579 -22.47847106 2.0000 14 Ba core 1.66777500 6.95449801 -22.47847136 2.0000 15 Ba core 7.22067900 7.11226300 -26.04479880 2.0000 16 Ba core 6.11200300 2.61356158 -26.04479910 2.0000 17 Ba core 2.77645200 8.12672769 -26.82176413 2.0000 18 Ba core 1.66777500 3.62802627 -26.82176443 2.0000 19 Ba core 7.22067900 3.78579127 -30.38809187 2.0000 20 Ba core 6.11200300 8.28449348 -30.38809217 2.0000 21 Ba core 2.77645200 4.80025596 -31.16505719 2.0000 22 Ba core 1.66777500 0.30155454 -31.16505750 2.0000 23 Ba core 7.22067900 0.45931954 -34.73138493 2.0000 24 Ba core 6.11200300 4.95802175 -34.73138524 2.0000 25 S core 4.94518500 0.94957941 -10.98838767 1.3600 26 S core 8.38749700 5.44828162 -10.98838797 1.3600 27 S core 0.50095700 1.58509888 -11.47512378 1.3600 28 S core 3.94327000 6.08380110 -11.47512408 1.3600 29 S core 4.94518500 6.62051131 -15.33168074 1.3600 30 S core 8.38749700 2.12180989 -15.33168104 1.3600 31 S core 0.50095700 7.25603079 -15.81841685 1.3600 32 S core 3.94327000 2.75732936 -15.81841715 1.3600 33 S core 4.94518500 3.29403957 -19.67497380 1.3600 34 S core 8.38749700 7.79274179 -19.67497411 1.3600 35 S core 0.50095700 3.92955905 -20.16170991 1.3600 36 S core 3.94327000 8.42826127 -20.16171022 1.3600 37 S core 4.94518500 8.96497148 -24.01826687 1.3600 38 S core 8.38749700 4.46627006 -24.01826718 1.3600 39 S core 0.50095700 0.60308732 -24.50500298 1.3600 40 S core 3.94327000 5.10178953 -24.50500329 1.3600 41 S core 4.94518500 5.63849974 -28.36155994 1.3600 42 S core 8.38749700 1.13979832 -28.36156024 1.3600 43 S core 0.50095700 6.27401922 -28.84829605 1.3600 44 S core 3.94327000 1.77531780 -28.84829636 1.3600 45 S core 4.94518500 2.31202801 -32.70485301 1.3600 46 S core 8.38749700 6.81073022 -32.70485331 1.3600 47 S core 0.50095700 2.94754749 -33.19158912 1.3600 48 S core 3.94327000 7.44624970 -33.19158942 1.3600 49 O core 3.77325800 6.13984703 -10.03643616 -0.8400 50 O core 0.67097000 1.64114561 -10.03643646 -0.8400 51 O core 7.37636100 4.62292037 -10.35625451 -0.8400 52 O core 5.95632100 0.12421895 -10.35625482 -0.8400 53 O core 8.21748500 6.82266500 -10.55939757 -0.8400 54 O core 5.11519700 2.32396358 -10.55939787 -0.8400 55 O core 9.71702700 5.00167664 -10.64633901 -0.8400 56 O core 3.61565500 0.50297521 -10.64633932 -0.8400 57 O core 5.27279900 6.53040529 -11.81717243 -0.8400 58 O core -0.82857200 2.03170387 -11.81717273 -0.8400 59 O core 3.77325800 4.70941693 -11.90411388 -0.8400 60 O core 0.67097000 0.21071551 -11.90411418 -0.8400 61 O core 2.93213300 6.90916156 -12.10725693 -0.8400 62 O core 1.51209400 2.41046013 -12.10725724 -0.8400 63 O core 8.21748500 5.39223489 -12.42707529 -0.8400 64 O core 5.11519700 0.89353347 -12.42707559 -0.8400 65 O core 3.77325800 2.81337530 -14.37972923 -0.8400 66 O core 0.67097000 7.31207751 -14.37972953 -0.8400 67 O core 7.37636100 1.29644864 -14.69954758 -0.8400 68 O core 5.95632100 5.79515085 -14.69954788 -0.8400 69 O core 8.21748500 3.49619326 -14.90269063 -0.8400 70 O core 5.11519700 7.99489548 -14.90269094 -0.8400 71 O core 9.71702700 1.67520490 -14.98963208 -0.8400 72 O core 3.61565500 6.17390712 -14.98963239 -0.8400 73 O core 5.27279900 3.20393356 -16.16046550 -0.8400 74 O core -0.82857200 7.70263577 -16.16046580 -0.8400 75 O core 3.77325800 1.38294520 -16.24740695 -0.8400 76 O core 0.67097000 5.88164741 -16.24740725 -0.8400 77 O core 2.93213300 3.58268982 -16.45055000 -0.8400 78 O core 1.51209400 8.08139204 -16.45055031 -0.8400 79 O core 8.21748500 2.06576316 -16.77036836 -0.8400 80 O core 5.11519700 6.56446537 -16.77036866 -0.8400 81 O core 3.77325800 8.48430720 -18.72302229 -0.8400 82 O core 0.67097000 3.98560578 -18.72302260 -0.8400 83 O core 7.37636100 6.96738054 -19.04284065 -0.8400 84 O core 5.95632100 2.46867912 -19.04284095 -0.8400 85 O core 8.21748500 9.16712516 -19.24598370 -0.8400 86 O core 5.11519700 4.66842374 -19.24598401 -0.8400 87 O core 9.71702700 7.34613680 -19.33292515 -0.8400 88 O core 3.61565500 2.84743538 -19.33292546 -0.8400 89 O core 5.27279900 8.87486546 -20.50375857 -0.8400 90 O core -0.82857200 4.37616404 -20.50375887 -0.8400 91 O core 3.77325800 7.05387710 -20.59070002 -0.8400 92 O core 0.67097000 2.55517568 -20.59070032 -0.8400 93 O core 2.93213300 9.25362172 -20.79384307 -0.8400 94 O core 1.51209400 4.75492030 -20.79384337 -0.8400 95 O core 8.21748500 7.73669506 -21.11366142 -0.8400 96 O core 5.11519700 3.23799364 -21.11366173 -0.8400 97 O core 3.77325800 5.15783547 -23.06631536 -0.8400 98 O core 0.67097000 0.65913405 -23.06631567 -0.8400 99 O core 7.37636100 3.64090881 -23.38613372 -0.8400 100 O core 5.95632100 8.13961102 -23.38613402 -0.8400 101 O core 8.21748500 5.84065343 -23.58927677 -0.8400 102 O core 5.11519700 10.33935565 -23.58927707 -0.8400 103 O core 9.71702700 4.01966507 -23.67621822 -0.8400 104 O core 3.61565500 8.51836729 -23.67621852 -0.8400 105 O core 5.27279900 5.54839373 -24.84705164 -0.8400 106 O core -0.82857200 1.04969230 -24.84705194 -0.8400 107 O core 3.77325800 3.72740536 -24.93399308 -0.8400 108 O core 0.67097000 -0.77129606 -24.93399339 -0.8400 109 O core 2.93213300 5.92714999 -25.13713614 -0.8400 110 O core 1.51209400 1.42844857 -25.13713644 -0.8400 111 O core 8.21748500 4.41022333 -25.45695449 -0.8400 112 O core 5.11519700 8.90892554 -25.45695480 -0.8400 113 O core 3.77325800 1.83136373 -27.40960843 -0.8400 114 O core 0.67097000 6.33006595 -27.40960874 -0.8400 115 O core 7.37636100 0.31443707 -27.72942679 -0.8400 116 O core 5.95632100 4.81313929 -27.72942709 -0.8400 117 O core 8.21748500 2.51418170 -27.93256984 -0.8400 118 O core 5.11519700 7.01288391 -27.93257014 -0.8400 119 O core 9.71702700 0.69319334 -28.01951129 -0.8400 120 O core 3.61565500 5.19189555 -28.01951159 -0.8400 121 O core 5.27279900 2.22192199 -29.19034470 -0.8400 122 O core -0.82857200 6.72062421 -29.19034501 -0.8400 123 O core 3.77325800 0.40093363 -29.27728615 -0.8400 124 O core 0.67097000 4.89963585 -29.27728646 -0.8400 125 O core 2.93213300 2.60067826 -29.48042921 -0.8400 126 O core 1.51209400 7.09938047 -29.48042951 -0.8400 127 O core 8.21748500 1.08375159 -29.80024756 -0.8400 128 O core 5.11519700 5.58245381 -29.80024786 -0.8400 129 O core 3.77325800 7.50229564 -31.75290150 -0.8400 130 O core 0.67097000 3.00359421 -31.75290180 -0.8400 131 O core 7.37636100 5.98536897 -32.07271985 -0.8400 132 O core 5.95632100 1.48666755 -32.07272016 -0.8400 133 O core 8.21748500 8.18511360 -32.27586291 -0.8400 134 O core 5.11519700 3.68641218 -32.27586321 -0.8400 135 O core 9.71702700 6.36412524 -32.36280436 -0.8400 136 O core 3.61565500 1.86542382 -32.36280466 -0.8400 137 O core 5.27279900 7.89285389 -33.53363777 -0.8400 138 O core -0.82857200 3.39415247 -33.53363808 -0.8400 139 O core 3.77325800 6.07186553 -33.62057922 -0.8400 140 O core 0.67097000 1.57316411 -33.62057953 -0.8400 141 O core 2.93213300 8.27161016 -33.82372227 -0.8400 142 O core 1.51209400 3.77290874 -33.82372258 -0.8400 143 O core 8.21748500 6.75468350 -34.14354063 -0.8400 144 O core 5.11519700 2.25598208 -34.14354093 -0.8400 --------------------------------------------------------------------- BLOCK A REGION 1 (REGION 1A) ---------------------------------------------------------------------- Ion Type Gradients ---------------------------------------------------------------------- 1 Ba core -3.44320393e-02 1.88856428e-03 2.21157506e-01 2 Ba core 3.44318721e-02 1.88881504e-03 2.21157276e-01 3 Ba core 3.00550002e-02 2.73150707e-03 -4.38971379e-02 4 Ba core -3.00549201e-02 2.73207164e-03 -4.38975143e-02 5 Ba core -1.16868627e-02 1.67528138e-03 2.75638938e-02 6 Ba core 1.16865934e-02 1.67582478e-03 2.75634945e-02 7 Ba core 9.25424013e-04 5.15028115e-05 -2.25104332e-03 8 Ba core -9.25359194e-04 5.20410309e-05 -2.25145699e-03 9 S core -1.40218200e-01 1.41745677e-02 1.68327765e-02 10 S core 1.40218180e-01 1.41781127e-02 1.68301190e-02 11 S core 1.08392936e-01 -2.64024163e-02 1.65607708e-02 12 S core -1.08394781e-01 -2.63988908e-02 1.65581014e-02 13 S core -6.35816047e-03 -2.64424097e-04 -3.37180042e-03 14 S core 6.35816258e-03 -2.60845839e-04 -3.37453896e-03 15 S core 4.44426179e-03 -2.66605675e-05 2.26442627e-03 16 S core -4.44611949e-03 -2.31136803e-05 2.26171095e-03 17 O core 1.11447944e-01 2.95061316e-02 -9.24097438e-02 18 O core -1.11447080e-01 2.95069560e-02 -9.24104636e-02 19 O core -4.88151834e-02 -8.39691945e-03 -1.94543970e-02 20 O core 4.88149873e-02 -8.39592397e-03 -1.94550328e-02 21 O core -1.04901480e-01 -1.09682243e-02 -4.13801927e-02 22 O core 1.04901437e-01 -1.09671264e-02 -4.13808115e-02 23 O core -6.96156106e-02 -2.08632386e-02 -8.25635960e-02 24 O core 6.96156946e-02 -2.08622490e-02 -8.25642384e-02 25 O core 4.26385184e-02 9.57163668e-03 4.55007871e-02 26 O core -4.26385199e-02 9.57287126e-03 4.54998297e-02 27 O core 3.65194082e-02 9.94187548e-03 -2.71771179e-02 28 O core -3.65184455e-02 9.94296096e-03 -2.71777483e-02 29 O core 2.60604178e-02 5.70284151e-04 -2.85899236e-02 30 O core -2.60600180e-02 5.70959092e-04 -2.85904375e-02 31 O core -3.13568791e-02 -3.65608107e-03 8.36401393e-03 32 O core 3.13568284e-02 -3.65508733e-03 8.36309625e-03 33 O core 6.85745202e-03 6.25461478e-05 -4.99863175e-03 34 O core -6.85650146e-03 6.34540244e-05 -4.99950928e-03 35 O core -2.83725575e-03 5.27018686e-04 6.39837915e-03 36 O core 2.83703532e-03 5.27948935e-04 6.39766341e-03 37 O core -4.98664770e-03 -4.75633188e-04 3.42381431e-03 38 O core 4.98660116e-03 -4.74464703e-04 3.42309791e-03 39 O core -4.79551273e-03 3.49209958e-04 -2.38007114e-03 40 O core 4.79560801e-03 3.50160136e-04 -2.38079953e-03 41 O core 2.09624056e-03 4.56481818e-05 1.15185366e-03 42 O core -2.09625426e-03 4.69264923e-05 1.15087598e-03 43 O core 1.93625645e-03 -1.05393925e-04 -1.13555372e-03 44 O core -1.93530898e-03 -1.04315182e-04 -1.13619998e-03 45 O core 8.32473318e-04 3.53628582e-05 -1.74375036e-03 46 O core -8.32081591e-04 3.60617472e-05 -1.74428392e-03 47 O core -1.34103676e-03 3.80997874e-05 8.65008920e-04 48 O core 1.34099060e-03 3.90968056e-05 8.64070384e-04 ---------------------------------------------------------------------- Gnorm = 7.76256719 ENERGY BREAKDOWN ---------------------------------------------- Repulsive Energy = -145.08533465 eV Polarization Energy = 0.00000000 eV Electrostatic Energy = -210.35285074 eV Real = -210.95761377 eV Reciprocal = 0.60476303 eV Three-Body Energy = 0.08152460 eV Four-Body Energy = 0.00000000 eV Boundary Interaction = -7.88584688 eV Total Energy = -363.24250767 eV ---------------------------------------------- Attachment Energy = -3.67613338 eV/mol Slice Energy = -41.72918008 eV/mol ---------------------------------------------- Surface Energy = 1.5799 (0.0000) J/m^2 ---------------------------------------------- BEGIN BFGS MINIMIZATION Cycle 0: Energy = -363.2425077 Gnorm = 7.76257 Cpu = 0.66 Calculating hessian Cycle 1: Energy = -365.3392102 Gnorm = 3.65487 Cpu = 3.48 Marvin output written to file "011-5.mvn-r" Hessian info cos=0.288739 root=0.083333 reset=0.050000 drop=0.423008 Cycle 2: Energy = -365.6419198 Gnorm = 2.03508 Cpu = 5.66 Marvin output written to file "011-5.mvn-r" Hessian info cos=0.300474 root=0.083333 reset=0.050000 drop=0.072828 Cycle 3: Energy = -365.7947424 Gnorm = 1.06025 Cpu = 7.83 Marvin output written to file "011-5.mvn-r" Hessian info cos=0.462160 root=0.083333 reset=0.050000 drop=0.024608 Cycle 4: Energy = -365.9424674 Gnorm = 1.04882 Cpu = 10.41 Marvin output written to file "011-5.mvn-r" Hessian info cos=0.290721 root=0.083333 reset=0.050000 drop=0.016850 Cycle 5: Energy = -365.9768442 Gnorm = 0.87606 Cpu = 12.53 Marvin output written to file "011-5.mvn-r" Hessian info cos=0.319010 root=0.083333 reset=0.050000 drop=0.011806 Cycle 6: Energy = -366.0212493 Gnorm = 0.57574 Cpu = 15.17 Marvin output written to file "011-5.mvn-r" trimming p_vec back Hessian info cos=0.337862 root=0.083333 reset=0.050000 drop=0.004375 Cycle 7: Energy = -366.0375475 Gnorm = 0.65240 Cpu = 17.30 Marvin output written to file "011-5.mvn-r" trimming p_vec back Hessian info cos=0.219408 root=0.083333 reset=0.050000 drop=0.004268 Cycle 8: Energy = -366.0458630 Gnorm = 0.68518 Cpu = 19.63 Marvin output written to file "011-5.mvn-r" Hessian info cos=0.239025 root=0.083333 reset=0.050000 drop=0.001661 Cycle 9: Energy = -366.0642509 Gnorm = 0.71761 Cpu = 22.37 Marvin output written to file "011-5.mvn-r" Hessian info cos=0.366765 root=0.083333 reset=0.050000 drop=0.001323 Cycle 10: Energy = -366.0781184 Gnorm = 0.39208 Cpu = 24.45 Marvin output written to file "011-5.mvn-r" Calculating hessian Cycle 11: Energy = -366.0967908 Gnorm = 0.17897 Cpu = 27.78 Marvin output written to file "011-5.mvn-r" Hessian info cos=0.356849 root=0.083333 reset=0.050000 drop=0.002561 Cycle 12: Energy = -366.0981330 Gnorm = 0.03741 Cpu = 30.46 Marvin output written to file "011-5.mvn-r" trimming p_vec back Hessian info cos=0.316114 root=0.083333 reset=0.050000 drop=0.001389 Cycle 13: Energy = -366.0988074 Gnorm = 0.03434 Cpu = 32.58 Marvin output written to file "011-5.mvn-r" Hessian info cos=0.212998 root=0.083333 reset=0.050000 drop=0.000035 Cycle 14: Energy = -366.0989312 Gnorm = 0.01303 Cpu = 34.70 Marvin output written to file "011-5.mvn-r" Hessian info cos=0.210366 root=0.083333 reset=0.050000 drop=0.000057 Cycle 15: Energy = -366.0989507 Gnorm = 0.00523 Cpu = 36.89 Marvin output written to file "011-5.mvn-r" Hessian info cos=0.177070 root=0.083333 reset=0.050000 drop=0.000006 Cycle 16: Energy = -366.0989525 Gnorm = 0.00185 Cpu = 39.04 Marvin output written to file "011-5.mvn-r" Hessian info cos=0.195878 root=0.083333 reset=0.050000 drop=0.000001 Cycle 17: Energy = -366.0989537 Gnorm = 0.00112 Cpu = 41.20 Marvin output written to file "011-5.mvn-r" Change in energy test satisfied ENERGY BREAKDOWN ---------------------------------------------- Repulsive Energy = -142.05636413 eV Polarization Energy = 0.00000000 eV Electrostatic Energy = -216.76356665 eV Real = -216.84080393 eV Reciprocal = 0.07723728 eV Three-Body Energy = 0.22367658 eV Four-Body Energy = 0.00000000 eV Boundary Interaction = -7.50269954 eV Total Energy = -366.09895374 eV ---------------------------------------------- Attachment Energy = -3.26742353 eV/mol Slice Energy = -42.63661492 eV/mol ---------------------------------------------- Surface Energy = 0.9308 (0.1535) J/m^2 ---------------------------------------------- BLOCK A REGION 1 (REGION 1A) -------------------------------------------------------------------------------- No Ion Type Coordinates Displacement -------------------------------------------------------------------------------- 1 Ba core 2.66203 1.14028 -1.11739 -0.11442 0.04694 -0.35539 2 Ba core 1.78267 5.63909 -1.11763 0.11490 0.04704 -0.35562 3 Ba core 7.02075 6.00013 -3.91099 -0.19993 0.25031 0.41734 4 Ba core 6.31216 1.50151 -3.91101 0.20016 0.25039 0.41733 5 Ba core 2.70298 6.67303 -5.29474 -0.07347 -0.09125 -0.18944 6 Ba core 1.74127 2.17443 -5.29462 0.07350 -0.09115 -0.18933 7 Ba core 7.18451 2.44223 -8.63065 -0.03617 0.01889 0.04097 8 Ba core 6.14818 6.94094 -8.63070 0.03618 0.01889 0.04093 9 S core 4.71470 7.70325 -1.87158 -0.23049 0.10073 0.43022 10 S core 8.61775 3.20484 -1.87196 0.23025 0.10102 0.42984 11 S core 0.57089 8.22772 -2.83689 0.06993 -0.01032 -0.04835 12 S core 3.87338 3.72883 -2.83708 -0.06989 -0.01051 -0.04854 13 S core 4.94953 4.30214 -6.58308 0.00434 0.02608 0.06201 14 S core 8.38321 8.80082 -6.58302 -0.00429 0.02606 0.06207 15 S core 0.42409 4.86148 -7.12709 -0.07687 -0.05010 0.00474 16 S core 4.02016 0.36270 -7.12705 0.07689 -0.05016 0.00479 17 O core 3.65583 3.69970 -1.38974 -0.11743 -0.09569 -0.03989 18 O core 0.78863 8.19842 -1.38957 0.11766 -0.09567 -0.03972 19 O core 7.43357 2.48065 -1.55571 0.05721 0.20219 0.11396 20 O core 5.89892 6.97885 -1.55600 -0.05740 0.20168 0.11367 21 O core 8.35322 4.62118 -1.96569 0.13573 0.14298 -0.09288 22 O core 4.97960 9.11950 -1.96599 -0.13560 0.14259 -0.09318 23 O core 9.68428 3.00750 -0.85827 -0.03275 0.35028 1.10148 24 O core 3.64879 7.50647 -0.85704 0.03313 0.35055 1.10272 25 O core 5.20851 4.12932 -3.18092 -0.06428 -0.05662 -0.05033 26 O core -0.76439 8.62794 -3.18052 0.06419 -0.05671 -0.04993 27 O core 3.63917 2.40147 -3.33340 -0.13408 0.03652 -0.11587 28 O core 0.80535 6.90047 -3.33344 0.13438 0.03681 -0.11591 29 O core 2.89165 4.61061 -3.42057 -0.04049 0.04591 0.00010 30 O core 1.55231 9.10986 -3.42033 0.04022 0.04646 0.00034 31 O core 9.10256 2.76471 -3.15877 0.88508 -0.28307 0.58172 32 O core 4.22873 7.26284 -3.15786 -0.88647 -0.28364 0.58263 33 O core 3.95465 0.39746 -5.67682 0.18140 -0.07146 0.01632 34 O core 0.48960 4.89635 -5.67688 -0.18137 -0.07127 0.01626 35 O core 7.44051 7.87928 -5.96449 0.06415 -0.07012 0.04847 36 O core 5.89223 3.38052 -5.96466 -0.06410 -0.07017 0.04830 37 O core 8.14325 10.16030 -6.10324 -0.07424 0.01116 0.11286 38 O core 5.18952 5.66160 -6.10320 0.07432 0.01116 0.11290 39 O core 9.75299 8.43898 -6.28403 0.03596 0.11083 0.01902 40 O core 3.57975 3.94030 -6.28410 -0.03591 0.11085 0.01895 41 O core 5.32332 0.75353 -7.57288 0.05053 -0.10594 -0.09900 42 O core -0.87906 5.25231 -7.57294 -0.05049 -0.10587 -0.09906 43 O core 3.75082 -0.99934 -7.56549 -0.02243 -0.03783 -0.00467 44 O core 0.69341 3.49940 -7.56545 0.02244 -0.03779 -0.00463 45 O core 2.99567 1.24437 -7.68454 0.06354 0.00614 0.07942 46 O core 1.44859 5.74308 -7.68464 -0.06351 0.00615 0.07933 47 O core 8.21687 8.77448 -8.02808 -0.00062 0.05577 0.05570 48 O core 5.11584 4.27589 -8.02814 0.00064 0.05589 0.05564 -------------------------------------------------------------------------------- Surface Dipole: 0.00181 -35.31386 -2.02876 BLOCK A REGION 1 (REGION 1A) ---------------------------------------------------------------------- Ion Type Gradients ---------------------------------------------------------------------- 1 Ba core -1.36450810e-06 2.27182342e-06 -1.70800828e-06 2 Ba core -2.16584432e-06 -2.53162607e-06 2.19525089e-06 3 Ba core -9.91444205e-06 2.56537631e-06 4.74477642e-06 4 Ba core -3.78424659e-06 6.09427825e-07 1.83841777e-06 5 Ba core -2.51780873e-06 -6.78640114e-07 -8.75628330e-06 6 Ba core 2.99454616e-07 4.79192679e-07 -2.23471773e-06 7 Ba core -9.50372128e-09 9.45837171e-08 2.74246805e-07 8 Ba core -2.17470298e-07 -6.64011743e-07 -1.63103559e-08 9 S core -1.46000520e-06 2.24639224e-06 2.22057149e-06 10 S core -2.20599989e-06 2.36996322e-06 -3.75961983e-06 11 S core -2.78212820e-06 5.33916570e-06 5.29028687e-07 12 S core 3.93562254e-06 4.62751489e-07 -3.03033436e-07 13 S core -2.53451328e-08 -8.14941245e-08 6.43416013e-07 14 S core 4.78484545e-07 -1.84658903e-07 -5.56075402e-07 15 S core -4.69331005e-07 -1.77707202e-07 7.18408832e-07 16 S core -1.77948691e-07 3.63773498e-08 6.40474493e-07 17 O core -1.00791279e-06 1.19745689e-06 -1.16218988e-07 18 O core -4.12531839e-08 -4.96818793e-07 -2.36392862e-06 19 O core -1.01632317e-07 -6.11404672e-06 -1.92711627e-06 20 O core 2.61626017e-05 6.99286484e-06 5.25505035e-06 21 O core 1.73655091e-05 -2.01007738e-05 3.87137360e-08 22 O core 1.84203939e-05 3.81282549e-06 8.96902934e-07 23 O core -7.94968032e-06 1.00981978e-05 -1.48397152e-05 24 O core -2.34512331e-05 -6.23644524e-06 2.37693429e-05 25 O core 5.13277130e-07 -2.75166331e-06 1.55952938e-06 26 O core 3.59881667e-07 -2.94541940e-06 -2.15145895e-07 27 O core 1.61648367e-06 5.49098755e-07 -2.16808879e-06 28 O core 2.25780179e-06 1.24114054e-06 2.84260430e-07 29 O core -5.65069226e-06 -7.92347394e-07 2.41269572e-06 30 O core 2.99106481e-06 -9.81450691e-06 9.98098080e-07 31 O core -4.90748170e-06 1.77539762e-05 2.64680794e-05 32 O core -6.15168418e-06 -5.50202812e-06 -3.15915832e-05 33 O core 1.86075738e-06 -5.32368106e-07 -1.01666819e-06 34 O core 1.63460815e-07 1.41218092e-07 -1.61139931e-06 35 O core -9.50059850e-07 -2.88181733e-07 -1.10039611e-07 36 O core 7.40228242e-08 -8.74487378e-07 -1.29069369e-06 37 O core 1.46974748e-07 4.69332413e-07 1.33748394e-06 38 O core 6.82839327e-07 1.74025286e-06 9.61822796e-07 39 O core -8.21240680e-07 -9.63272706e-08 -6.28402519e-08 40 O core 2.34135292e-07 -6.59459535e-07 -1.94605854e-07 41 O core -5.68300029e-07 -9.89729699e-08 1.12140433e-07 42 O core 7.61093616e-07 5.57259607e-07 -2.75324250e-07 43 O core 4.93209390e-07 5.02177647e-07 2.39220185e-07 44 O core -7.36680673e-08 3.24683902e-07 4.44316661e-07 45 O core 7.89033249e-07 -5.07073055e-08 -8.61442229e-07 46 O core -1.02383762e-06 -2.90588747e-07 -5.74514892e-07 47 O core -8.22240504e-08 -8.71021939e-08 -3.80913753e-07 48 O core 1.02162097e-07 1.71381279e-07 -1.21027575e-06 ---------------------------------------------------------------------- Gnorm = 0.00112199 ------------------------------------------- TIMING BREAKDOWN Routine No. calls Time ------------------------------------------- input 1 0.01 calc energy 76 40.95 matrix inverter 2 0.08 ------------------------------------------- *** Mon Apr 02 20:42:23 *** elapsed time for MARVIN run = 0.00 total = 41.20 *** MARVIN HAS FINISHED*** gdis-0.90/models/caco3-5116.mvnout0000644000175000017500000022471307717054765015200 0ustar seansean**************************************************** MARVIN'S Program Version 2.00 Beta 3 Compiled on Apr 11 2001 at 17:02:55 Minimization And Relaxation of Vacancies and Interstitials Near Surfaces Program David Gay and Andrew Rohl & Martin Nygren and Ben Slater The Royal Institution of Great Britain 1991 - 1999 Run started on Wed Apr 18 at 15:47:57 Executing on kepler under SunOS **************************************************** MARVIN reading file caco3-5116.mvn title surface miller region bfgs output output build-molecules latvec basis bulk-energy buckingham buckingham spring morse three-body four-body element accuracy *** WARNING file caco3-5116.mvn line 64: "ftol 8" *** Unknown keyword ftol *** INPUT HAS FINISHED WITH 1 INPUT WARNING *** ------------------------------------------- FLAGS TABLE ------------------------------------------- 1 build_all true 2 have bulk true 3 have mm true ------------------------------------------- TITLE CaCO3 in calcite structure, 5116 surface == 943 prim ION DATA ---------------------------------------------------------------------------- Ion Pot Type Charge Atomic Mass Covalent Van der Waals Number Radius Radius ---------------------------------------------------------------------------- Ca Ca core 2.0000 20 40.0800 0.99 1.48 C C core 1.1350 6 12.0100 0.68 1.75 O O core 0.5870 8 16.0000 0.68 1.40 O O shell -1.6320 8 0.0000 0.68 1.40 ---------------------------------------------------------------------------- TWO-BODY POTENTIALS -------------------------------------------------------------------------------- Ion Type a Ion Type b Potential Parameters Min R Max R Type (Angstroms) -------------------------------------------------------------------------------- Molecular mechanics potentials C core O shell Morse 4.7100 3.8000 1.1800 -------------------------------------------------------------------------------- Universal potentials Ca core O shell Buckingham 1550.0000 0.2970 0.0000 0.00 10.00 O shell O shell Buckingham 16372.0000 0.2130 3.4700 0.00 12.00 -------------------------------------------------------------------------------- O core O shell Spring 507.4000 0.0000 0.00 0.60 -------------------------------------------------------------------------------- THREE-BODY POTENTIALS -------------------------------------------------------------------------------- Pivot Ion Ion Type Ion Type Parameters R(p-a) R(p-b) R(a-b) Type a b (Angstroms) -------------------------------------------------------------------------------- C core O core O core 1.6900 0.0000 0.0000 120.0000 -------------------------------------------------------------------------------- FOUR-BODY POTENTIALS -------------------------------------------------------------------------------- Ion Type Ion Type Ion Type Ion Type Parameters Ra-b Rb-c Rc-d Ra-d a b c d (Angstroms) -------------------------------------------------------------------------------- O core C core O core O core 0.130 - 2 -------------------------------------------------------------------------------- OUTPUT LISTS ---------------------------------------- AFTER ---------------------------------------- XTL 1 overwrite caco3-5116.xtl MARVIN 1 overwrite caco3-5116.mvn-r ---------------------------------------- Potential Labels ----------------------------------- 0 Ca core 1 C core 2 O core 3 O shell ----------------------------------- *** WARNING *** Molecular mechanics forcefield entered but no coulomb terms excluded BLOCK A DATA ---------------------------------------------------- Lattice Constant: 1.00000 Angstroms Lattice Vectors: 2.39836 1.38469 5.82705 -2.39836 1.38469 5.82705 0.00000 -2.76938 5.82705 Miller Index: 9.00000 4.00000 3.00000 Shift: 0.50000 Surface Vectors: 1.00000 0.00000 0.00000 1.00000 Layer Thickness: 0.61614 Region 1 dipole: -25.03327 0.00000 -0.00000 Region 2 dipole: 12.51664 0.00000 -0.00000 Block dipole: -12.51664 0.00000 -0.00000 Region Sizes: 4.00000 23.00000 Maximum Interaction: 33.24083 ---------------------------------------------------- BLOCK A BASIS ------------------------------------------------------------------- No Ion Type Coordinates Charge Molecule ------------------------------------------------------------------- 1 Ca Ca core 0.00000 0.00000 8.74058 2.000 0 2 Ca Ca core 0.00000 0.00000 0.00000 2.000 0 centroid 0.00000 0.00000 4.37029 -2.000 1 3 C C core 0.00000 0.00000 4.37029 1.135 1 4 O O core -0.59768 -1.03522 4.37029 0.587 1 5 O O shell -0.59509 -1.03072 4.37029 -1.632 1 6 O O core -0.59768 1.03522 4.37029 0.587 1 7 O O shell -0.59509 1.03072 4.37029 -1.632 1 8 O O core 1.19536 0.00000 4.37029 0.587 1 9 O O shell 1.19017 0.00000 4.37029 -1.632 1 centroid 0.00000 -0.00000 13.11087 -2.000 2 10 C C core 0.00000 0.00000 13.11087 1.135 2 11 O O core 0.59768 -1.03522 13.11087 0.587 2 12 O O shell 0.59509 -1.03072 13.11087 -1.632 2 13 O O core -1.19536 -0.00000 13.11087 0.587 2 14 O O shell -1.19017 -0.00000 13.11087 -1.632 2 15 O O core 0.59768 1.03522 13.11087 0.587 2 16 O O shell 0.59509 1.03072 13.11087 -1.632 2 ------------------------------------------------------------------- SURFACE DATA ------------------------------------------------------------------------- Surface Area: 188.44646789 Angstrom^2 Surface Normal: 0.64225138 0.51912561 0.56393418 Transformation Matrix: 0.76645365 -0.44251222 -0.46554455 0.00787167 0.73122605 -0.68208981 0.64225138 0.51912561 0.56393418 Surface Vectors: 12.51663620 0.00000000 2.97453349 15.05567989 Reciprocal Vectors: 0.07989367 -0.01578450 -0.00000000 0.06642012 ------------------------------------------------------------------------- Surface Dipole: -12.51663620 0.00000001 -0.00000000 BLOCK A REGION 1 (REGION 1A) ------------------------------------------------------------------- No Ion Type Coordinates Charge ------------------------------------------------------------------- 0 Ca Ca core 0.0000000 0.0000000 -0.3080694 2.0000* 1 Ca Ca core 6.2583181 0.0000000 -0.3080694 2.0000* 2 Ca Ca core 6.6509900 12.0369923 -0.9242082 2.0000 3 Ca Ca core 12.9093081 12.0369923 -0.9242082 2.0000 4 Ca Ca core 4.0691284 9.0183047 -1.5403471 2.0000 5 Ca Ca core 10.3274465 9.0183047 -1.5403471 2.0000 6 Ca Ca core 1.4872667 5.9996171 -2.1564859 2.0000 7 Ca Ca core 7.7455848 5.9996171 -2.1564859 2.0000 8 C C core 3.1291591 0.0000000 -0.3080694 1.1350* 9 C C core 9.3874772 0.0000000 -0.3080694 1.1350* 10 C C core 3.5218309 12.0369923 -0.9242082 1.1350 11 C C core 9.7801490 12.0369923 -0.9242082 1.1350 12 C C core 7.1982874 9.0183047 -1.5403471 1.1350 13 C C core 13.4566055 9.0183047 -1.5403471 1.1350 14 C C core 4.6164258 5.9996171 -2.1564859 1.1350 15 C C core 10.8747439 5.9996171 -2.1564859 1.1350 16 O O core 9.3874772 0.7616815 0.6131997 0.5870* 17 O O core 4.0453503 0.0094095 0.4596549 0.5870* 18 O O core 3.5218309 12.7986738 -0.0029391 0.5870 19 O O core 2.2129678 0.7522720 -0.1545246 0.5870* 20 O O core 10.6963403 12.0464018 -0.1564839 0.5870 21 O O core 10.3036684 -0.7522720 -0.4616143 0.5870* 22 O O core 7.1982874 9.7799862 -0.6190779 0.5870 23 O O core 8.8639578 12.7892643 -0.7706634 0.5870 24 O O core 14.3727968 9.0277142 -0.7726228 0.5870 25 O O core 8.4712859 -0.0094095 -1.0757937 0.5870* 26 O O core 4.4380222 11.2847203 -1.0777531 0.5870 27 O O core 3.1291591 -0.7616815 -1.2293386 0.5870* 28 O O core 10.8747439 6.7612986 -1.2352167 0.5870 29 O O core 12.5404143 9.7705767 -1.3868022 0.5870 30 O O core 5.5326170 6.0090266 -1.3887616 0.5870 31 O O core 2.6056397 12.0275828 -1.6919325 0.5870 32 O O core 8.1144787 8.2660327 -1.6938919 0.5870 33 O O core 9.7801490 11.2753108 -1.8454774 0.5870 34 O O core 3.7002346 6.7518891 -2.0029410 0.5870 35 O O core 6.2820962 9.0088952 -2.3080714 0.5870 36 O O core 11.7909351 5.2473451 -2.3100307 0.5870 37 O O core 13.4566055 8.2566232 -2.4616162 0.5870 38 O O core 9.9585527 5.9902076 -2.9242102 0.5870 39 O O core 4.6164258 5.2379356 -3.0777550 0.5870 40 O O shell 9.3874772 0.7583724 0.6091974 -1.6320* 41 O O shell 4.0413700 0.0093686 0.4563196 -1.6320* 42 O O shell 3.5218309 12.7953647 -0.0069415 -1.6320 43 O O shell 2.2169481 0.7490038 -0.1551916 -1.6320* 44 O O shell 10.6923600 12.0463609 -0.1598192 -1.6320 45 O O shell 10.2996881 -0.7490038 -0.4609472 -1.6320* 46 O O shell 7.1982874 9.7766771 -0.6230803 -1.6320 47 O O shell 8.8679381 12.7859961 -0.7713304 -1.6320 48 O O shell 14.3688164 9.0276733 -0.7759581 -1.6320 49 O O shell 8.4752662 -0.0093686 -1.0724584 -1.6320* 50 O O shell 4.4340419 11.2879885 -1.0770860 -1.6320 51 O O shell 3.1291591 -0.7583724 -1.2253362 -1.6320* 52 O O shell 10.8747439 6.7579895 -1.2392191 -1.6320 53 O O shell 12.5443946 9.7673085 -1.3874693 -1.6320 54 O O shell 5.5286367 6.0089857 -1.3920969 -1.6320 55 O O shell 2.6096200 12.0276237 -1.6885972 -1.6320 56 O O shell 8.1104983 8.2693009 -1.6932249 -1.6320 57 O O shell 9.7801490 11.2786199 -1.8414750 -1.6320 58 O O shell 3.7042149 6.7486209 -2.0036081 -1.6320 59 O O shell 6.2860765 9.0089361 -2.3047360 -1.6320 60 O O shell 11.7869548 5.2506133 -2.3093637 -1.6320 61 O O shell 13.4566055 8.2599323 -2.4576138 -1.6320 62 O O shell 9.9625330 5.9902485 -2.9208749 -1.6320 63 O O shell 4.6164258 5.2412447 -3.0737527 -1.6320 ------------------------------------------------------------------- BLOCK A REGION 2 (REGION 2A) ------------------------------------------------------------------- No Ion Type Coordinates Charge ------------------------------------------------------------------- 64 Ca Ca core 5.1637232 2.9809295 -2.7726247 2.0000 65 Ca Ca core 11.4220413 2.9809295 -2.7726247 2.0000 66 Ca Ca core 5.5563951 15.0179218 -3.3887635 2.0000 67 Ca Ca core 11.8147132 15.0179218 -3.3887635 2.0000 68 Ca Ca core 2.9745335 11.9992342 -4.0049023 2.0000 69 Ca Ca core 9.2328516 11.9992342 -4.0049023 2.0000 70 Ca Ca core 6.6509900 8.9805466 -4.6210412 2.0000 71 Ca Ca core 12.9093081 8.9805466 -4.6210412 2.0000 72 Ca Ca core 4.0691284 5.9618590 -5.2371800 2.0000 73 Ca Ca core 10.3274465 5.9618590 -5.2371800 2.0000 74 Ca Ca core 1.4872667 2.9431714 -5.8533188 2.0000 75 Ca Ca core 7.7455848 2.9431714 -5.8533188 2.0000 76 Ca Ca core 8.1382567 14.9801636 -6.4694576 2.0000 77 Ca Ca core 14.3965748 14.9801636 -6.4694576 2.0000 78 Ca Ca core 5.5563951 11.9614760 -7.0855965 2.0000 79 Ca Ca core 11.8147132 11.9614760 -7.0855965 2.0000 80 Ca Ca core 2.9745335 8.9427884 -7.7017353 2.0000 81 Ca Ca core 9.2328516 8.9427884 -7.7017353 2.0000 82 Ca Ca core 6.6509900 5.9241008 -8.3178741 2.0000 83 Ca Ca core 12.9093081 5.9241008 -8.3178741 2.0000 84 Ca Ca core 4.0691284 2.9054132 -8.9340129 2.0000 85 Ca Ca core 10.3274465 2.9054132 -8.9340129 2.0000 86 Ca Ca core 4.4618002 14.9424055 -9.5501517 2.0000 87 Ca Ca core 10.7201183 14.9424055 -9.5501517 2.0000 88 Ca Ca core 8.1382567 11.9237179 -10.1662906 2.0000 89 Ca Ca core 14.3965748 11.9237179 -10.1662906 2.0000 90 Ca Ca core 5.5563951 8.9050303 -10.7824294 2.0000 91 Ca Ca core 11.8147132 8.9050303 -10.7824294 2.0000 92 Ca Ca core 2.9745335 5.8863427 -11.3985682 2.0000 93 Ca Ca core 9.2328516 5.8863427 -11.3985682 2.0000 94 Ca Ca core 6.6509900 2.8676551 -12.0147070 2.0000 95 Ca Ca core 12.9093081 2.8676551 -12.0147070 2.0000 96 Ca Ca core 7.0436619 14.9046474 -12.6308459 2.0000 97 Ca Ca core 13.3019800 14.9046474 -12.6308459 2.0000 98 Ca Ca core 4.4618002 11.8859598 -13.2469847 2.0000 99 Ca Ca core 10.7201183 11.8859598 -13.2469847 2.0000 100 Ca Ca core 1.8799386 8.8672722 -13.8631235 2.0000 101 Ca Ca core 8.1382567 8.8672722 -13.8631235 2.0000 102 C C core 2.0345642 2.9809295 -2.7726247 1.1350 103 C C core 8.2928823 2.9809295 -2.7726247 1.1350 104 C C core 8.6855542 15.0179218 -3.3887635 1.1350 105 C C core 14.9438723 15.0179218 -3.3887635 1.1350 106 C C core 6.1036925 11.9992342 -4.0049023 1.1350 107 C C core 12.3620106 11.9992342 -4.0049023 1.1350 108 C C core 3.5218309 8.9805466 -4.6210412 1.1350 109 C C core 9.7801490 8.9805466 -4.6210412 1.1350 110 C C core 7.1982874 5.9618590 -5.2371800 1.1350 111 C C core 13.4566055 5.9618590 -5.2371800 1.1350 112 C C core 4.6164258 2.9431714 -5.8533188 1.1350 113 C C core 10.8747439 2.9431714 -5.8533188 1.1350 114 C C core 5.0090977 14.9801636 -6.4694576 1.1350 115 C C core 11.2674158 14.9801636 -6.4694576 1.1350 116 C C core 2.4272361 11.9614760 -7.0855965 1.1350 117 C C core 8.6855542 11.9614760 -7.0855965 1.1350 118 C C core 6.1036925 8.9427884 -7.7017353 1.1350 119 C C core 12.3620106 8.9427884 -7.7017353 1.1350 120 C C core 3.5218309 5.9241008 -8.3178741 1.1350 121 C C core 9.7801490 5.9241008 -8.3178741 1.1350 122 C C core 0.9399693 2.9054132 -8.9340129 1.1350 123 C C core 7.1982874 2.9054132 -8.9340129 1.1350 124 C C core 7.5909593 14.9424055 -9.5501517 1.1350 125 C C core 13.8492774 14.9424055 -9.5501517 1.1350 126 C C core 5.0090977 11.9237179 -10.1662906 1.1350 127 C C core 11.2674158 11.9237179 -10.1662906 1.1350 128 C C core 2.4272361 8.9050303 -10.7824294 1.1350 129 C C core 8.6855542 8.9050303 -10.7824294 1.1350 130 C C core 6.1036925 5.8863427 -11.3985682 1.1350 131 C C core 12.3620106 5.8863427 -11.3985682 1.1350 132 C C core 3.5218309 2.8676551 -12.0147070 1.1350 133 C C core 9.7801490 2.8676551 -12.0147070 1.1350 134 C C core 3.9145028 14.9046474 -12.6308459 1.1350 135 C C core 10.1728209 14.9046474 -12.6308459 1.1350 136 C C core 7.5909593 11.8859598 -13.2469847 1.1350 137 C C core 13.8492774 11.8859598 -13.2469847 1.1350 138 C C core 5.0090977 8.8672722 -13.8631235 1.1350 139 C C core 11.2674158 8.8672722 -13.8631235 1.1350 140 O O core 2.0345642 3.7426110 -1.8513555 0.5870 141 O O core 9.2090735 2.9903390 -2.0049004 0.5870 142 O O core 8.6855542 15.7796032 -2.4674944 0.5870 143 O O core 7.3766910 3.7332014 -2.6190798 0.5870 144 O O core 15.8600635 15.0273313 -2.6210392 0.5870 145 O O core 2.9507554 2.2286575 -2.9261696 0.5870 146 O O core 12.3620106 12.7609156 -3.0836332 0.5870 147 O O core 14.0276810 15.7701937 -3.2352187 0.5870 148 O O core 7.0198838 12.0086437 -3.2371780 0.5870 149 O O core 1.1183729 2.9715200 -3.5403490 0.5870 150 O O core 9.6017454 14.2656498 -3.5423084 0.5870 151 O O core 8.2928823 2.2192480 -3.6938939 0.5870 152 O O core 3.5218309 9.7422280 -3.6997720 0.5870 153 O O core 5.1875013 12.7515061 -3.8513575 0.5870 154 O O core 10.6963403 8.9899561 -3.8533169 0.5870 155 O O core 7.7693629 15.0085123 -4.1564878 0.5870 156 O O core 13.2782019 11.2469622 -4.1584472 0.5870 157 O O core 14.9438723 14.2562403 -4.3100327 0.5870 158 O O core 7.1982874 6.7235404 -4.3159108 0.5870 159 O O core 8.8639578 9.7328185 -4.4674963 0.5870 160 O O core 14.3727968 5.9712685 -4.4694557 0.5870 161 O O core 11.4458194 11.9898247 -4.7726266 0.5870 162 O O core 4.4380222 8.2282746 -4.7745860 0.5870 163 O O core 6.1036925 11.2375527 -4.9261715 0.5870 164 O O core 10.8747439 3.7048528 -4.9320497 0.5870 165 O O core 12.5404143 6.7141309 -5.0836351 0.5870 166 O O core 5.5326170 2.9525809 -5.0855945 0.5870 167 O O core 2.6056397 8.9711371 -5.3887655 0.5870 168 O O core 8.1144787 5.2095870 -5.3907248 0.5870 169 O O core 9.7801490 8.2188651 -5.5423103 0.5870 170 O O core 5.0090977 15.7418451 -5.5481885 0.5870 171 O O core 3.7002346 3.6954433 -5.6997740 0.5870 172 O O core 12.1836070 14.9895732 -5.7017333 0.5870 173 O O core 6.2820962 5.9524495 -6.0049043 0.5870 174 O O core 11.7909351 2.1908994 -6.0068637 0.5870 175 O O core 13.4566055 5.2001775 -6.1584491 0.5870 176 O O core 8.6855542 12.7231575 -6.1643273 0.5870 177 O O core 10.3512245 15.7324356 -6.3159128 0.5870 178 O O core 3.3434273 11.9708856 -6.3178722 0.5870 179 O O core 9.9585527 2.9337619 -6.6210431 0.5870 180 O O core 5.9252889 14.2278917 -6.6230025 0.5870 181 O O core 4.6164258 2.1814899 -6.7745880 0.5870 182 O O core 12.3620106 9.7044699 -6.7804661 0.5870 183 O O core 1.5110448 12.7137480 -6.9320516 0.5870 184 O O core 7.0198838 8.9521980 -6.9340110 0.5870 185 O O core 4.0929064 14.9707541 -7.2371819 0.5870 186 O O core 9.6017454 11.2092041 -7.2391413 0.5870 187 O O core 11.2674158 14.2184822 -7.3907268 0.5870 188 O O core 3.5218309 6.6857823 -7.3966049 0.5870 189 O O core 5.1875013 9.6950604 -7.5481904 0.5870 190 O O core 10.6963403 5.9335104 -7.5501498 0.5870 191 O O core 7.7693629 11.9520665 -7.8533208 0.5870 192 O O core 13.2782019 8.1905165 -7.8552801 0.5870 193 O O core 2.4272361 11.1997946 -8.0068656 0.5870 194 O O core 7.1982874 3.6670947 -8.0127438 0.5870 195 O O core 8.8639578 6.6763728 -8.1643292 0.5870 196 O O core 1.8561606 2.9148228 -8.1662886 0.5870 197 O O core 11.4458194 8.9333789 -8.4694596 0.5870 198 O O core 4.4380222 5.1718289 -8.4714190 0.5870 199 O O core 6.1036925 8.1811070 -8.6230044 0.5870 200 O O core 13.8492774 15.7040870 -8.6288826 0.5870 201 O O core 0.0237781 3.6576852 -8.7804681 0.5870 202 O O core 8.5071505 14.9518150 -8.7824274 0.5870 203 O O core 2.6056397 5.9146913 -9.0855984 0.5870 204 O O core 8.1144787 2.1531413 -9.0875578 0.5870 205 O O core 9.7801490 5.1624194 -9.2391433 0.5870 206 O O core 5.0090977 12.6853994 -9.2450214 0.5870 207 O O core 6.6747680 15.6946775 -9.3966069 0.5870 208 O O core 12.1836070 11.9331274 -9.3985663 0.5870 209 O O core 6.2820962 2.8960037 -9.7017372 0.5870 210 O O core 14.7654686 14.1901336 -9.7036966 0.5870 211 O O core 0.9399693 2.1437318 -9.8552821 0.5870 212 O O core 8.6855542 9.6667118 -9.8611602 0.5870 213 O O core 10.3512245 12.6759899 -10.0127457 0.5870 214 O O core 3.3434273 8.9144398 -10.0147051 0.5870 215 O O core 12.9330861 14.9329960 -10.3178760 0.5870 216 O O core 5.9252889 11.1714460 -10.3198354 0.5870 217 O O core 7.5909593 14.1807241 -10.4714209 0.5870 218 O O core 12.3620106 6.6480242 -10.4772991 0.5870 219 O O core 1.5110448 9.6573023 -10.6288845 0.5870 220 O O core 7.0198838 5.8957522 -10.6308439 0.5870 221 O O core 4.0929064 11.9143084 -10.9340149 0.5870 222 O O core 9.6017454 8.1527584 -10.9359742 0.5870 223 O O core 11.2674158 11.1620365 -11.0875597 0.5870 224 O O core 3.5218309 3.6293366 -11.0934379 0.5870 225 O O core 5.1875013 6.6386147 -11.2450234 0.5870 226 O O core 10.6963403 2.8770646 -11.2469827 0.5870 227 O O core 7.7693629 8.8956208 -11.5501537 0.5870 228 O O core 13.2782019 5.1340708 -11.5521131 0.5870 229 O O core 2.4272361 8.1433489 -11.7036985 0.5870 230 O O core 10.1728209 15.6663289 -11.7095767 0.5870 231 O O core 8.8639578 3.6199271 -11.8611622 0.5870 232 O O core 4.8306940 14.9140569 -11.8631216 0.5870 233 O O core 11.4458194 5.8769332 -12.1662925 0.5870 234 O O core 4.4380222 2.1153832 -12.1682519 0.5870 235 O O core 6.1036925 5.1246613 -12.3198374 0.5870 236 O O core 13.8492774 12.6476413 -12.3257155 0.5870 237 O O core 2.9983116 15.6569194 -12.4773010 0.5870 238 O O core 8.5071505 11.8953693 -12.4792604 0.5870 239 O O core 2.6056397 2.8582456 -12.7824313 0.5870 240 O O core 11.0890121 14.1523754 -12.7843907 0.5870 241 O O core 9.7801490 2.1059737 -12.9359762 0.5870 242 O O core 5.0090977 9.6289537 -12.9418543 0.5870 243 O O core 6.6747680 12.6382318 -13.0934398 0.5870 244 O O core 12.1836070 8.8766817 -13.0953992 0.5870 245 O O core 9.2566297 14.8952379 -13.3985702 0.5870 246 O O core 14.7654686 11.1336878 -13.4005295 0.5870 247 O O core 3.9145028 14.1429659 -13.5521150 0.5870 248 O O core 10.3512245 9.6195442 -13.7095786 0.5870 249 O O core 12.9330861 11.8765503 -14.0147090 0.5870 250 O O core 5.9252889 8.1150002 -14.0166684 0.5870 251 O O core 7.5909593 11.1242783 -14.1682538 0.5870 252 O O core 4.0929064 8.8578627 -14.6308478 0.5870 253 O O core 11.2674158 8.1055907 -14.7843927 0.5870 254 O O shell 2.0345642 3.7393019 -1.8553579 -1.6320 255 O O shell 9.2050932 2.9902981 -2.0082357 -1.6320 256 O O shell 8.6855542 15.7762942 -2.4714967 -1.6320 257 O O shell 7.3806714 3.7299333 -2.6197469 -1.6320 258 O O shell 15.8560832 15.0272904 -2.6243745 -1.6320 259 O O shell 2.9467751 2.2319257 -2.9255025 -1.6320 260 O O shell 12.3620106 12.7576066 -3.0876356 -1.6320 261 O O shell 14.0316613 15.7669256 -3.2358857 -1.6320 262 O O shell 7.0159035 12.0086028 -3.2405134 -1.6320 263 O O shell 1.1223532 2.9715609 -3.5370137 -1.6320 264 O O shell 9.5977651 14.2689180 -3.5416413 -1.6320 265 O O shell 8.2928823 2.2225571 -3.6898915 -1.6320 266 O O shell 3.5218309 9.7389190 -3.7037744 -1.6320 267 O O shell 5.1914816 12.7482380 -3.8520245 -1.6320 268 O O shell 10.6923600 8.9899152 -3.8566522 -1.6320 269 O O shell 7.7733432 15.0085531 -4.1531525 -1.6320 270 O O shell 13.2742216 11.2502304 -4.1577801 -1.6320 271 O O shell 14.9438723 14.2595493 -4.3060303 -1.6320 272 O O shell 7.1982874 6.7202314 -4.3199132 -1.6320 273 O O shell 8.8679381 9.7295504 -4.4681634 -1.6320 274 O O shell 14.3688164 5.9712276 -4.4727910 -1.6320 275 O O shell 11.4497997 11.9898655 -4.7692913 -1.6320 276 O O shell 4.4340419 8.2315428 -4.7739190 -1.6320 277 O O shell 6.1036925 11.2408617 -4.9221691 -1.6320 278 O O shell 10.8747439 3.7015438 -4.9360520 -1.6320 279 O O shell 12.5443946 6.7108628 -5.0843022 -1.6320 280 O O shell 5.5286367 2.9525400 -5.0889298 -1.6320 281 O O shell 2.6096200 8.9711779 -5.3854302 -1.6320 282 O O shell 8.1104983 5.2128552 -5.3900578 -1.6320 283 O O shell 9.7801490 8.2221741 -5.5383079 -1.6320 284 O O shell 5.0090977 15.7385361 -5.5521909 -1.6320 285 O O shell 3.7042149 3.6921752 -5.7004410 -1.6320 286 O O shell 12.1796267 14.9895323 -5.7050686 -1.6320 287 O O shell 6.2860765 5.9524903 -6.0015690 -1.6320 288 O O shell 11.7869548 2.1941676 -6.0061966 -1.6320 289 O O shell 13.4566055 5.2034865 -6.1544468 -1.6320 290 O O shell 8.6855542 12.7198485 -6.1683297 -1.6320 291 O O shell 10.3552048 15.7291674 -6.3165798 -1.6320 292 O O shell 3.3394470 11.9708447 -6.3212075 -1.6320 293 O O shell 9.9625330 2.9338027 -6.6177078 -1.6320 294 O O shell 5.9213086 14.2311599 -6.6223354 -1.6320 295 O O shell 4.6164258 2.1847989 -6.7705856 -1.6320 296 O O shell 12.3620106 9.7011609 -6.7844685 -1.6320 297 O O shell 1.5150251 12.7104798 -6.9327187 -1.6320 298 O O shell 7.0159035 8.9521571 -6.9373463 -1.6320 299 O O shell 4.0968867 14.9707950 -7.2338466 -1.6320 300 O O shell 9.5977651 11.2124723 -7.2384743 -1.6320 301 O O shell 11.2674158 14.2217912 -7.3867244 -1.6320 302 O O shell 3.5218309 6.6824733 -7.4006073 -1.6320 303 O O shell 5.1914816 9.6917922 -7.5488575 -1.6320 304 O O shell 10.6923600 5.9334695 -7.5534851 -1.6320 305 O O shell 7.7733432 11.9521074 -7.8499854 -1.6320 306 O O shell 13.2742216 8.1937847 -7.8546131 -1.6320 307 O O shell 2.4272361 11.2031036 -8.0028632 -1.6320 308 O O shell 7.1982874 3.6637857 -8.0167461 -1.6320 309 O O shell 8.8679381 6.6731046 -8.1649963 -1.6320 310 O O shell 1.8521802 2.9147819 -8.1696239 -1.6320 311 O O shell 11.4497997 8.9334198 -8.4661243 -1.6320 312 O O shell 4.4340419 5.1750971 -8.4707519 -1.6320 313 O O shell 6.1036925 8.1844160 -8.6190021 -1.6320 314 O O shell 13.8492774 15.7007779 -8.6328850 -1.6320 315 O O shell 0.0277584 3.6544170 -8.7811351 -1.6320 316 O O shell 8.5031702 14.9517742 -8.7857628 -1.6320 317 O O shell 2.6096200 5.9147322 -9.0822631 -1.6320 318 O O shell 8.1104983 2.1564095 -9.0868907 -1.6320 319 O O shell 9.7801490 5.1657284 -9.2351409 -1.6320 320 O O shell 5.0090977 12.6820903 -9.2490238 -1.6320 321 O O shell 6.6787484 15.6914093 -9.3972739 -1.6320 322 O O shell 12.1796267 11.9330866 -9.4019016 -1.6320 323 O O shell 6.2860765 2.8960446 -9.6984019 -1.6320 324 O O shell 14.7614883 14.1934017 -9.7030295 -1.6320 325 O O shell 0.9399693 2.1470408 -9.8512797 -1.6320 326 O O shell 8.6855542 9.6634027 -9.8651626 -1.6320 327 O O shell 10.3552048 12.6727217 -10.0134128 -1.6320 328 O O shell 3.3394470 8.9143990 -10.0180404 -1.6320 329 O O shell 12.9370665 14.9330369 -10.3145407 -1.6320 330 O O shell 5.9213086 11.1747141 -10.3191684 -1.6320 331 O O shell 7.5909593 14.1840331 -10.4674185 -1.6320 332 O O shell 12.3620106 6.6447151 -10.4813014 -1.6320 333 O O shell 1.5150251 9.6540341 -10.6295516 -1.6320 334 O O shell 7.0159035 5.8957114 -10.6341792 -1.6320 335 O O shell 4.0968867 11.9143493 -10.9306796 -1.6320 336 O O shell 9.5977651 8.1560265 -10.9353072 -1.6320 337 O O shell 11.2674158 11.1653455 -11.0835573 -1.6320 338 O O shell 3.5218309 3.6260275 -11.0974402 -1.6320 339 O O shell 5.1914816 6.6353465 -11.2456904 -1.6320 340 O O shell 10.6923600 2.8770238 -11.2503180 -1.6320 341 O O shell 7.7733432 8.8956617 -11.5468184 -1.6320 342 O O shell 13.2742216 5.1373389 -11.5514460 -1.6320 343 O O shell 2.4272361 8.1466579 -11.6996962 -1.6320 344 O O shell 10.1728209 15.6630198 -11.7135791 -1.6320 345 O O shell 8.8679381 3.6166589 -11.8618292 -1.6320 346 O O shell 4.8267137 14.9140160 -11.8664569 -1.6320 347 O O shell 11.4497997 5.8769741 -12.1629572 -1.6320 348 O O shell 4.4340419 2.1186513 -12.1675848 -1.6320 349 O O shell 6.1036925 5.1279703 -12.3158350 -1.6320 350 O O shell 13.8492774 12.6443322 -12.3297179 -1.6320 351 O O shell 3.0022919 15.6536512 -12.4779681 -1.6320 352 O O shell 8.5031702 11.8953284 -12.4825957 -1.6320 353 O O shell 2.6096200 2.8582865 -12.7790960 -1.6320 354 O O shell 11.0850318 14.1556436 -12.7837237 -1.6320 355 O O shell 9.7801490 2.1092827 -12.9319738 -1.6320 356 O O shell 5.0090977 9.6256446 -12.9458567 -1.6320 357 O O shell 6.6787484 12.6349636 -13.0941069 -1.6320 358 O O shell 12.1796267 8.8766408 -13.0987345 -1.6320 359 O O shell 9.2606100 14.8952788 -13.3952348 -1.6320 360 O O shell 14.7614883 11.1369560 -13.3998625 -1.6320 361 O O shell 3.9145028 14.1462750 -13.5481126 -1.6320 362 O O shell 10.3552048 9.6162760 -13.7102457 -1.6320 363 O O shell 12.9370665 11.8765912 -14.0113737 -1.6320 364 O O shell 5.9213086 8.1182684 -14.0160013 -1.6320 365 O O shell 7.5909593 11.1275874 -14.1642515 -1.6320 366 O O shell 4.0968867 8.8579036 -14.6275125 -1.6320 367 O O shell 11.2674158 8.1088998 -14.7803903 -1.6320 ------------------------------------------------------------------- ENERGY BREAKDOWN ------------------------------------------------ Repulsive Energy = -60.64172738 eV Real = -428.66183175 eV Reciprocal = 0.02824909 eV Electrostatic = -428.63358266 eV Two-body Energy = -489.27531004 eV Polarization Energy = 0.16420812 eV Three-Body Energy = 0.00000000 eV Four-Body Energy = 0.00000000 eV Boundary Interaction = -19.00195281 eV Total Energy = -489.11110191 eV ------------------------------------------------ Attachment Energy = -4.93237194 eV/mol Slice Energy = -56.20638547 eV/mol ------------------------------------------------ Surface Energy = 0.8082 (43.2963) J/m^2 ------------------------------------------------ GRADIENTS BLOCK A REGION 1 (REGION 1A) --------------------------------------------------------------------- Ion Type Gradients --------------------------------------------------------------------- block A fixed 6.4063657e-02 -1.9763733e-01 -1.0148130e-02 0 Ca core -5.2680789e-02 6.8376244e-02 -4.0016047e-02 1 Ca core -1.2231361e-02 5.7184581e-02 -2.2440042e-02 2 Ca core 5.1084361e-03 1.5990395e-02 -9.4626168e-03 3 Ca core 2.1837203e-02 6.1818628e-03 -1.2418808e-02 4 Ca core 1.7615086e-02 4.8477354e-03 -8.5851253e-03 5 Ca core 1.4056463e-03 1.8585409e-02 -5.9153888e-03 6 Ca core -2.0554275e-03 1.5731040e-02 -7.3652824e-03 7 Ca core 1.3610114e-02 4.5722244e-04 -9.0877510e-03 8 C core 1.7789444e-02 -8.8505971e-02 -9.9298886e-02 9 C core 1.7788563e-02 -8.9605696e-02 -1.0064367e-01 10 C core -1.6363145e-02 -4.2069474e-03 -6.9051007e-02 11 C core -1.8772743e-02 -7.8061621e-04 -6.7337580e-02 12 C core -1.3246568e-02 -7.8793614e-03 -6.7169622e-02 13 C core -1.7386300e-02 -3.8999886e-03 -6.6487822e-02 14 C core -1.4981164e-02 -7.1343515e-03 -6.6476390e-02 15 C core -1.1432852e-02 -1.0300047e-02 -6.7890357e-02 16 O core 6.8769747e-03 -8.2541237e-02 -9.3104712e-02 17 O core 6.8833304e-02 -2.5131053e-02 -1.1575146e-01 18 O core -3.4276607e-02 4.6474886e-02 -9.9668464e-02 19 O core -6.4485045e-02 -1.0963181e-01 -4.2936309e-02 20 O core 2.8106524e-02 -4.8453430e-03 -1.0838063e-01 21 O core 3.0971685e-02 -1.5288812e-02 -2.3032374e-02 22 O core -3.0610703e-02 4.4205812e-02 -9.7495572e-02 23 O core -1.7597304e-02 1.5500185e-02 -1.0196017e-02 24 O core 2.9347520e-02 -4.8421407e-03 -1.0753141e-01 25 O core -2.6623371e-02 -2.3320497e-02 -1.9295452e-02 26 O core 1.1720653e-02 -1.3939114e-02 -1.5358903e-02 27 O core 6.8780642e-03 -1.8730784e-02 -1.5840737e-02 28 O core -3.0205263e-02 4.3805025e-02 -9.7951593e-02 29 O core -1.8247999e-02 1.1442658e-02 -9.6731904e-03 30 O core 3.0101910e-02 -7.5894236e-03 -1.0766729e-01 31 O core -8.9993536e-03 3.4183728e-03 -5.5509743e-03 32 O core 1.2448137e-02 -1.4346165e-02 -1.4813159e-02 33 O core 1.2400802e-03 -6.6972259e-03 -6.9790409e-03 34 O core -1.7808550e-02 1.0845131e-02 -9.7978025e-03 35 O core -8.6355347e-03 3.3879142e-04 -5.1757444e-03 36 O core 1.3375950e-02 -1.8023232e-02 -1.4509967e-02 37 O core 1.3510000e-03 -7.8483680e-03 -6.8585191e-03 38 O core -8.1432816e-03 -2.8144592e-04 -5.3712790e-03 39 O core 3.0802127e-03 -9.8308418e-03 -6.1631654e-03 40 O shell -1.9127226e-02 1.3927543e-01 1.4934090e-01 41 O shell -1.6864780e-01 6.3677017e-02 1.8520841e-01 42 O shell 6.3195077e-02 -8.6923614e-02 1.4882207e-01 43 O shell 1.5655545e-01 1.7249630e-01 8.6607527e-02 44 O shell -5.7041293e-02 1.2052132e-02 1.6415036e-01 45 O shell -8.6266718e-02 4.1651763e-02 5.8116592e-02 46 O shell 5.3042528e-02 -8.0659629e-02 1.4279908e-01 47 O shell 4.7160309e-02 -4.2206994e-02 2.2686595e-02 48 O shell -6.0490539e-02 1.2051043e-02 1.6179150e-01 49 O shell 7.4174223e-02 6.0303424e-02 5.1193136e-02 50 O shell -3.2594337e-02 3.8094484e-02 3.6743034e-02 51 O shell -1.9130228e-02 5.2220397e-02 4.3813685e-02 52 O shell 5.1909545e-02 -7.9530261e-02 1.4406749e-01 53 O shell 4.8927850e-02 -3.0999584e-02 2.1228859e-02 54 O shell -6.2600299e-02 1.9690606e-02 1.6216226e-01 55 O shell 2.5147860e-02 -9.3931192e-03 1.5205291e-02 56 O shell -3.4627504e-02 3.9229951e-02 3.5218973e-02 57 O shell -3.4234718e-03 1.8786025e-02 1.9183713e-02 58 O shell 4.7697902e-02 -2.9327239e-02 2.1574529e-02 59 O shell 2.4120705e-02 -8.4855948e-04 1.4150669e-02 60 O shell -3.7219819e-02 4.9431538e-02 3.4382693e-02 61 O shell -3.7360655e-03 2.1984663e-02 1.8844137e-02 62 O shell 2.2744917e-02 8.8767999e-04 1.4692481e-02 63 O shell -8.5378632e-03 2.7508998e-02 1.6914305e-02 --------------------------------------------------------------------- Gnorm = 11.43937379 MINIMISER SETTINGS ------------------------------------------------------------------------------ Minimizer: (bfgs) BFGS using analytical hessian Line Minimization: (dbrent) gradient based interpolation Maximum Iterations: 50 cycles Hessian Update: 10 cycles Energy Tolerance: 1.00000000e-05 Distance Tolerance: 1.00000000e-03 Gradient Tolerance: 1.00000000e-03 ------------------------------------------------------------------------------ BEGIN BFGS MINIMIZATION -------------------------------------------------------------------------- Calculating hessian Cycle 0: Energy = -489.1111019 Gnorm = 11.43937 Cpu = 4.66 Cycle 1: Energy = -489.7112979 Gnorm = 9.63979 Cpu = 22.68 Cycle 2: Energy = -490.0794614 Gnorm = 6.34202 Cpu = 46.76 Cycle 3: Energy = -490.1801102 Gnorm = 3.58385 Cpu = 64.74 Cycle 4: Energy = -490.2295021 Gnorm = 1.33188 Cpu = 80.75 Cycle 5: Energy = -490.2532959 Gnorm = 1.80805 Cpu = 98.86 Cycle 6: Energy = -490.2719777 Gnorm = 1.94337 Cpu = 115.14 Cycle 7: Energy = -490.2862702 Gnorm = 0.80703 Cpu = 131.26 Cycle 8: Energy = -490.2925770 Gnorm = 0.91908 Cpu = 147.21 Cycle 9: Energy = -490.2981667 Gnorm = 0.83392 Cpu = 163.17 Calculating hessian Cycle 10: Energy = -490.3004869 Gnorm = 0.59885 Cpu = 181.47 Cycle 11: Energy = -490.3051815 Gnorm = 0.19185 Cpu = 195.41 Cycle 12: Energy = -490.3053299 Gnorm = 0.02493 Cpu = 209.43 Cycle 13: Energy = -490.3053614 Gnorm = 0.02825 Cpu = 223.43 Change in energy test satisfied Line Minimizer Profile ------------------------------------------ dbrent 14 77 5.50 bracket 14 38 2.71 ------------------------------------------ BLOCK A REGION 1 (REGION 1A) -------------------------------------------------------------------------------- No Ion Type Coordinates Displacement -------------------------------------------------------------------------------- 0 Ca Ca core 0.1113047 -0.3414858 -0.1953421 0.11130 -0.34149 0.11273 1 Ca Ca core 6.4334367 -0.2668270 -0.3252318 0.17512 -0.26683 -0.01716 2 Ca Ca core 6.6674347 11.9342120 -0.9524532 0.01644 -0.10278 -0.02824 3 Ca Ca core 12.9606692 11.9260882 -0.9884354 0.05136 -0.11090 -0.06423 4 Ca Ca core 4.0755994 8.9484114 -1.5663429 0.00647 -0.06989 -0.02600 5 Ca Ca core 10.3348277 8.9619909 -1.5549260 0.00738 -0.05631 -0.01458 6 Ca Ca core 1.5126211 5.9372391 -2.1459545 0.02535 -0.06238 0.01053 7 Ca Ca core 7.7848176 5.9545090 -2.1714184 0.03923 -0.04511 -0.01493 8 C C core 3.1924849 -0.2040820 -0.2992209 0.06333 -0.20408 0.00885 9 C C core 9.5347381 -0.2186898 -0.3798171 0.14726 -0.21869 -0.07175 10 C C core 3.5087674 11.8170332 -0.8651150 -0.01306 -0.21996 0.05909 11 C C core 9.8254830 11.9425973 -0.9450910 0.04533 -0.09439 -0.02088 12 C C core 7.2484088 8.9629422 -1.5482977 0.05012 -0.05536 -0.00795 13 C C core 13.4665011 8.9355458 -1.5450495 0.00990 -0.08276 -0.00470 14 C C core 4.6190377 5.9393255 -2.1534505 0.00261 -0.06029 0.00304 15 C C core 10.8948669 5.9391363 -2.1330725 0.02012 -0.06048 0.02341 16 O O core 9.5888779 0.3986403 0.6345690 0.20140 -0.36304 0.02137 17 O O core 4.2800862 -0.0170878 0.1574263 0.23474 -0.02650 -0.30223 18 O O core 3.3601533 12.5573525 0.0578272 -0.16168 -0.24132 0.06077 19 O O core 2.1928467 0.2514712 0.1681736 -0.02012 -0.50080 0.32270 20 O O core 10.8189927 12.0498809 -0.2938724 0.12265 0.00348 -0.13739 21 O O core 10.4711958 -0.8931314 -0.7108212 0.16753 -0.14086 -0.24921 22 O O core 7.3085300 9.8200782 -0.7211570 0.11024 0.04009 -0.10208 23 O O core 8.8742296 12.6338892 -0.7233395 0.01027 -0.15538 0.04732 24 O O core 14.4607598 8.9712859 -0.8872329 0.08796 -0.05643 -0.11461 25 O O core 8.5495427 -0.2056732 -1.0637507 0.07826 -0.19626 0.01204 26 O O core 4.4913499 11.1433605 -0.9664627 0.05333 -0.14136 0.11129 27 O O core 3.0883506 -0.9229734 -1.2596589 -0.04081 -0.16129 -0.03032 28 O O core 10.8545838 6.8112331 -1.3209960 -0.02016 0.04993 -0.08578 29 O O core 12.5561531 9.6827718 -1.3315209 0.01574 -0.08780 0.05528 30 O O core 5.6330616 5.9465323 -1.5259784 0.10044 -0.06249 -0.13722 31 O O core 2.6745378 11.7906627 -1.7246577 0.06890 -0.23692 -0.03273 32 O O core 8.1417606 8.1773382 -1.6782660 0.02728 -0.08869 0.01563 33 O O core 9.7971440 11.1805947 -1.8674090 0.01699 -0.09472 -0.02193 34 O O core 3.7270275 6.6978527 -1.9066598 0.02679 -0.05404 0.09628 35 O O core 6.3038862 8.9186143 -2.2850484 0.02179 -0.09028 0.02302 36 O O core 11.8262004 5.1895787 -2.1934492 0.03527 -0.05777 0.11658 37 O O core 13.3976798 8.1679645 -2.4628796 -0.05893 -0.08866 -0.00126 38 O O core 9.9993590 5.8331542 -2.9235281 0.04081 -0.15705 0.00068 39 O O core 4.5032897 5.1779648 -3.0720487 -0.11314 -0.05997 0.00571 40 O O shell 9.5888949 0.3938075 0.6271206 0.20142 -0.36456 0.01792 41 O O shell 4.2774121 -0.0193950 0.1531907 0.23604 -0.02876 -0.30313 42 O O shell 3.3600940 12.5562903 0.0508328 -0.16174 -0.23907 0.05777 43 O O shell 2.1947668 0.2470037 0.1637995 -0.02218 -0.50200 0.31899 44 O O shell 10.8153347 12.0491063 -0.2993670 0.12297 0.00275 -0.13955 45 O O shell 10.4679050 -0.8911262 -0.7086541 0.16822 -0.14212 -0.24771 46 O O shell 7.3070281 9.8177505 -0.7271944 0.10874 0.04107 -0.10411 47 O O shell 8.8783235 12.6318816 -0.7247379 0.01039 -0.15411 0.04659 48 O O shell 14.4574546 8.9707703 -0.8929035 0.08864 -0.05690 -0.11695 49 O O shell 8.5524117 -0.2060945 -1.0613162 0.07715 -0.19673 0.01114 50 O O shell 4.4873186 11.1458653 -0.9668241 0.05328 -0.14212 0.11026 51 O O shell 3.0888976 -0.9206527 -1.2557264 -0.04026 -0.16228 -0.03039 52 O O shell 10.8536421 6.8088684 -1.3269796 -0.02110 0.05088 -0.08776 53 O O shell 12.5596649 9.6801423 -1.3330093 0.01527 -0.08717 0.05446 54 O O shell 5.6295732 5.9461143 -1.5313921 0.10094 -0.06287 -0.13930 55 O O shell 2.6778366 11.7913938 -1.7210807 0.06822 -0.23623 -0.03248 56 O O shell 8.1382628 8.1802943 -1.6781919 0.02776 -0.08901 0.01503 57 O O shell 9.7974139 11.1837364 -1.8633705 0.01726 -0.09488 -0.02190 58 O O shell 3.7303828 6.6950799 -1.9084224 0.02617 -0.05354 0.09519 59 O O shell 6.3076368 8.9191329 -2.2820907 0.02156 -0.08980 0.02265 60 O O shell 11.8225091 5.1922398 -2.1940524 0.03555 -0.05837 0.11531 61 O O shell 13.3983742 8.1712170 -2.4590329 -0.05823 -0.08872 -0.00142 62 O O shell 10.0028756 5.8340824 -2.9203529 0.04034 -0.15617 0.00052 63 O O shell 4.5042716 5.1810146 -3.0682817 -0.11215 -0.06023 0.00547 -------------------------------------------------------------------------------- BLOCK A REGION 2 (REGION 2A) -------------------------------------------------------------------------------- No Ion Type Coordinates Displacement -------------------------------------------------------------------------------- 64 Ca Ca core 5.1637232 2.9809295 -2.7726247 0.00000 0.00000 0.00000 65 Ca Ca core 11.4220413 2.9809295 -2.7726247 0.00000 0.00000 0.00000 66 Ca Ca core 5.5563951 15.0179218 -3.3887635 0.00000 0.00000 0.00000 67 Ca Ca core 11.8147132 15.0179218 -3.3887635 0.00000 0.00000 0.00000 68 Ca Ca core 2.9745335 11.9992342 -4.0049023 0.00000 0.00000 0.00000 69 Ca Ca core 9.2328516 11.9992342 -4.0049023 0.00000 0.00000 0.00000 70 Ca Ca core 6.6509900 8.9805466 -4.6210412 0.00000 0.00000 0.00000 71 Ca Ca core 12.9093081 8.9805466 -4.6210412 0.00000 0.00000 0.00000 72 Ca Ca core 4.0691284 5.9618590 -5.2371800 0.00000 0.00000 0.00000 73 Ca Ca core 10.3274465 5.9618590 -5.2371800 0.00000 0.00000 0.00000 74 Ca Ca core 1.4872667 2.9431714 -5.8533188 0.00000 0.00000 0.00000 75 Ca Ca core 7.7455848 2.9431714 -5.8533188 0.00000 0.00000 0.00000 76 Ca Ca core 8.1382567 14.9801636 -6.4694576 0.00000 0.00000 0.00000 77 Ca Ca core 14.3965748 14.9801636 -6.4694576 0.00000 0.00000 0.00000 78 Ca Ca core 5.5563951 11.9614760 -7.0855965 0.00000 0.00000 0.00000 79 Ca Ca core 11.8147132 11.9614760 -7.0855965 0.00000 0.00000 0.00000 80 Ca Ca core 2.9745335 8.9427884 -7.7017353 0.00000 0.00000 0.00000 81 Ca Ca core 9.2328516 8.9427884 -7.7017353 0.00000 0.00000 0.00000 82 Ca Ca core 6.6509900 5.9241008 -8.3178741 0.00000 0.00000 0.00000 83 Ca Ca core 12.9093081 5.9241008 -8.3178741 0.00000 0.00000 0.00000 84 Ca Ca core 4.0691284 2.9054132 -8.9340129 0.00000 0.00000 0.00000 85 Ca Ca core 10.3274465 2.9054132 -8.9340129 0.00000 0.00000 0.00000 86 Ca Ca core 4.4618002 14.9424055 -9.5501517 0.00000 0.00000 0.00000 87 Ca Ca core 10.7201183 14.9424055 -9.5501517 0.00000 0.00000 0.00000 88 Ca Ca core 8.1382567 11.9237179 -10.1662906 0.00000 0.00000 0.00000 89 Ca Ca core 14.3965748 11.9237179 -10.1662906 0.00000 0.00000 0.00000 90 Ca Ca core 5.5563951 8.9050303 -10.7824294 0.00000 0.00000 0.00000 91 Ca Ca core 11.8147132 8.9050303 -10.7824294 0.00000 0.00000 0.00000 92 Ca Ca core 2.9745335 5.8863427 -11.3985682 0.00000 0.00000 0.00000 93 Ca Ca core 9.2328516 5.8863427 -11.3985682 0.00000 0.00000 0.00000 94 Ca Ca core 6.6509900 2.8676551 -12.0147070 0.00000 0.00000 0.00000 95 Ca Ca core 12.9093081 2.8676551 -12.0147070 0.00000 0.00000 0.00000 96 Ca Ca core 7.0436619 14.9046474 -12.6308459 0.00000 0.00000 0.00000 97 Ca Ca core 13.3019800 14.9046474 -12.6308459 0.00000 0.00000 0.00000 98 Ca Ca core 4.4618002 11.8859598 -13.2469847 0.00000 0.00000 0.00000 99 Ca Ca core 10.7201183 11.8859598 -13.2469847 0.00000 0.00000 0.00000 100 Ca Ca core 1.8799386 8.8672722 -13.8631235 0.00000 0.00000 0.00000 101 Ca Ca core 8.1382567 8.8672722 -13.8631235 0.00000 0.00000 0.00000 102 C C core 2.0345642 2.9809295 -2.7726247 0.00000 0.00000 0.00000 103 C C core 8.2928823 2.9809295 -2.7726247 0.00000 0.00000 0.00000 104 C C core 8.6855542 15.0179218 -3.3887635 0.00000 0.00000 0.00000 105 C C core 14.9438723 15.0179218 -3.3887635 0.00000 0.00000 0.00000 106 C C core 6.1036925 11.9992342 -4.0049023 0.00000 0.00000 0.00000 107 C C core 12.3620106 11.9992342 -4.0049023 0.00000 0.00000 0.00000 108 C C core 3.5218309 8.9805466 -4.6210412 0.00000 0.00000 0.00000 109 C C core 9.7801490 8.9805466 -4.6210412 0.00000 0.00000 0.00000 110 C C core 7.1982874 5.9618590 -5.2371800 0.00000 0.00000 0.00000 111 C C core 13.4566055 5.9618590 -5.2371800 0.00000 0.00000 0.00000 112 C C core 4.6164258 2.9431714 -5.8533188 0.00000 0.00000 0.00000 113 C C core 10.8747439 2.9431714 -5.8533188 0.00000 0.00000 0.00000 114 C C core 5.0090977 14.9801636 -6.4694576 0.00000 0.00000 0.00000 115 C C core 11.2674158 14.9801636 -6.4694576 0.00000 0.00000 0.00000 116 C C core 2.4272361 11.9614760 -7.0855965 0.00000 0.00000 0.00000 117 C C core 8.6855542 11.9614760 -7.0855965 0.00000 0.00000 0.00000 118 C C core 6.1036925 8.9427884 -7.7017353 0.00000 0.00000 0.00000 119 C C core 12.3620106 8.9427884 -7.7017353 0.00000 0.00000 0.00000 120 C C core 3.5218309 5.9241008 -8.3178741 0.00000 0.00000 0.00000 121 C C core 9.7801490 5.9241008 -8.3178741 0.00000 0.00000 0.00000 122 C C core 0.9399693 2.9054132 -8.9340129 0.00000 0.00000 0.00000 123 C C core 7.1982874 2.9054132 -8.9340129 0.00000 0.00000 0.00000 124 C C core 7.5909593 14.9424055 -9.5501517 0.00000 0.00000 0.00000 125 C C core 13.8492774 14.9424055 -9.5501517 0.00000 0.00000 0.00000 126 C C core 5.0090977 11.9237179 -10.1662906 0.00000 0.00000 0.00000 127 C C core 11.2674158 11.9237179 -10.1662906 0.00000 0.00000 0.00000 128 C C core 2.4272361 8.9050303 -10.7824294 0.00000 0.00000 0.00000 129 C C core 8.6855542 8.9050303 -10.7824294 0.00000 0.00000 0.00000 130 C C core 6.1036925 5.8863427 -11.3985682 0.00000 0.00000 0.00000 131 C C core 12.3620106 5.8863427 -11.3985682 0.00000 0.00000 0.00000 132 C C core 3.5218309 2.8676551 -12.0147070 0.00000 0.00000 0.00000 133 C C core 9.7801490 2.8676551 -12.0147070 0.00000 0.00000 0.00000 134 C C core 3.9145028 14.9046474 -12.6308459 0.00000 0.00000 0.00000 135 C C core 10.1728209 14.9046474 -12.6308459 0.00000 0.00000 0.00000 136 C C core 7.5909593 11.8859598 -13.2469847 0.00000 0.00000 0.00000 137 C C core 13.8492774 11.8859598 -13.2469847 0.00000 0.00000 0.00000 138 C C core 5.0090977 8.8672722 -13.8631235 0.00000 0.00000 0.00000 139 C C core 11.2674158 8.8672722 -13.8631235 0.00000 0.00000 0.00000 140 O O core 2.0345642 3.7426110 -1.8513555 0.00000 0.00000 0.00000 141 O O core 9.2090735 2.9903390 -2.0049004 0.00000 0.00000 0.00000 142 O O core 8.6855542 15.7796032 -2.4674944 0.00000 0.00000 0.00000 143 O O core 7.3766910 3.7332014 -2.6190798 0.00000 0.00000 0.00000 144 O O core 15.8600635 15.0273313 -2.6210392 0.00000 0.00000 0.00000 145 O O core 2.9507554 2.2286575 -2.9261696 0.00000 0.00000 0.00000 146 O O core 12.3620106 12.7609156 -3.0836332 0.00000 0.00000 0.00000 147 O O core 14.0276810 15.7701937 -3.2352187 0.00000 0.00000 0.00000 148 O O core 7.0198838 12.0086437 -3.2371780 0.00000 0.00000 0.00000 149 O O core 1.1183729 2.9715200 -3.5403490 0.00000 0.00000 0.00000 150 O O core 9.6017454 14.2656498 -3.5423084 0.00000 0.00000 0.00000 151 O O core 8.2928823 2.2192480 -3.6938939 0.00000 0.00000 0.00000 152 O O core 3.5218309 9.7422280 -3.6997720 0.00000 0.00000 0.00000 153 O O core 5.1875013 12.7515061 -3.8513575 0.00000 0.00000 0.00000 154 O O core 10.6963403 8.9899561 -3.8533169 0.00000 0.00000 0.00000 155 O O core 7.7693629 15.0085123 -4.1564878 0.00000 0.00000 0.00000 156 O O core 13.2782019 11.2469622 -4.1584472 0.00000 0.00000 0.00000 157 O O core 14.9438723 14.2562403 -4.3100327 0.00000 0.00000 0.00000 158 O O core 7.1982874 6.7235404 -4.3159108 0.00000 0.00000 0.00000 159 O O core 8.8639578 9.7328185 -4.4674963 0.00000 0.00000 0.00000 160 O O core 14.3727968 5.9712685 -4.4694557 0.00000 0.00000 0.00000 161 O O core 11.4458194 11.9898247 -4.7726266 0.00000 0.00000 0.00000 162 O O core 4.4380222 8.2282746 -4.7745860 0.00000 0.00000 0.00000 163 O O core 6.1036925 11.2375527 -4.9261715 0.00000 0.00000 0.00000 164 O O core 10.8747439 3.7048528 -4.9320497 0.00000 0.00000 0.00000 165 O O core 12.5404143 6.7141309 -5.0836351 0.00000 0.00000 0.00000 166 O O core 5.5326170 2.9525809 -5.0855945 0.00000 0.00000 0.00000 167 O O core 2.6056397 8.9711371 -5.3887655 0.00000 0.00000 0.00000 168 O O core 8.1144787 5.2095870 -5.3907248 0.00000 0.00000 0.00000 169 O O core 9.7801490 8.2188651 -5.5423103 0.00000 0.00000 0.00000 170 O O core 5.0090977 15.7418451 -5.5481885 0.00000 0.00000 0.00000 171 O O core 3.7002346 3.6954433 -5.6997740 0.00000 0.00000 0.00000 172 O O core 12.1836070 14.9895732 -5.7017333 0.00000 0.00000 0.00000 173 O O core 6.2820962 5.9524495 -6.0049043 0.00000 0.00000 0.00000 174 O O core 11.7909351 2.1908994 -6.0068637 0.00000 0.00000 0.00000 175 O O core 13.4566055 5.2001775 -6.1584491 0.00000 0.00000 0.00000 176 O O core 8.6855542 12.7231575 -6.1643273 0.00000 0.00000 0.00000 177 O O core 10.3512245 15.7324356 -6.3159128 0.00000 0.00000 0.00000 178 O O core 3.3434273 11.9708856 -6.3178722 0.00000 0.00000 0.00000 179 O O core 9.9585527 2.9337619 -6.6210431 0.00000 0.00000 0.00000 180 O O core 5.9252889 14.2278917 -6.6230025 0.00000 0.00000 0.00000 181 O O core 4.6164258 2.1814899 -6.7745880 0.00000 0.00000 0.00000 182 O O core 12.3620106 9.7044699 -6.7804661 0.00000 0.00000 0.00000 183 O O core 1.5110448 12.7137480 -6.9320516 0.00000 0.00000 0.00000 184 O O core 7.0198838 8.9521980 -6.9340110 0.00000 0.00000 0.00000 185 O O core 4.0929064 14.9707541 -7.2371819 0.00000 0.00000 0.00000 186 O O core 9.6017454 11.2092041 -7.2391413 0.00000 0.00000 0.00000 187 O O core 11.2674158 14.2184822 -7.3907268 0.00000 0.00000 0.00000 188 O O core 3.5218309 6.6857823 -7.3966049 0.00000 0.00000 0.00000 189 O O core 5.1875013 9.6950604 -7.5481904 0.00000 0.00000 0.00000 190 O O core 10.6963403 5.9335104 -7.5501498 0.00000 0.00000 0.00000 191 O O core 7.7693629 11.9520665 -7.8533208 0.00000 0.00000 0.00000 192 O O core 13.2782019 8.1905165 -7.8552801 0.00000 0.00000 0.00000 193 O O core 2.4272361 11.1997946 -8.0068656 0.00000 0.00000 0.00000 194 O O core 7.1982874 3.6670947 -8.0127438 0.00000 0.00000 0.00000 195 O O core 8.8639578 6.6763728 -8.1643292 0.00000 0.00000 0.00000 196 O O core 1.8561606 2.9148228 -8.1662886 0.00000 0.00000 0.00000 197 O O core 11.4458194 8.9333789 -8.4694596 0.00000 0.00000 0.00000 198 O O core 4.4380222 5.1718289 -8.4714190 0.00000 0.00000 0.00000 199 O O core 6.1036925 8.1811070 -8.6230044 0.00000 0.00000 0.00000 200 O O core 13.8492774 15.7040870 -8.6288826 0.00000 0.00000 0.00000 201 O O core 0.0237781 3.6576852 -8.7804681 0.00000 0.00000 0.00000 202 O O core 8.5071505 14.9518150 -8.7824274 0.00000 0.00000 0.00000 203 O O core 2.6056397 5.9146913 -9.0855984 0.00000 0.00000 0.00000 204 O O core 8.1144787 2.1531413 -9.0875578 0.00000 0.00000 0.00000 205 O O core 9.7801490 5.1624194 -9.2391433 0.00000 0.00000 0.00000 206 O O core 5.0090977 12.6853994 -9.2450214 0.00000 0.00000 0.00000 207 O O core 6.6747680 15.6946775 -9.3966069 0.00000 0.00000 0.00000 208 O O core 12.1836070 11.9331274 -9.3985663 0.00000 0.00000 0.00000 209 O O core 6.2820962 2.8960037 -9.7017372 0.00000 0.00000 0.00000 210 O O core 14.7654686 14.1901336 -9.7036966 0.00000 0.00000 0.00000 211 O O core 0.9399693 2.1437318 -9.8552821 0.00000 0.00000 0.00000 212 O O core 8.6855542 9.6667118 -9.8611602 0.00000 0.00000 0.00000 213 O O core 10.3512245 12.6759899 -10.0127457 0.00000 0.00000 0.00000 214 O O core 3.3434273 8.9144398 -10.0147051 0.00000 0.00000 0.00000 215 O O core 12.9330861 14.9329960 -10.3178760 0.00000 0.00000 0.00000 216 O O core 5.9252889 11.1714460 -10.3198354 0.00000 0.00000 0.00000 217 O O core 7.5909593 14.1807241 -10.4714209 0.00000 0.00000 0.00000 218 O O core 12.3620106 6.6480242 -10.4772991 0.00000 0.00000 0.00000 219 O O core 1.5110448 9.6573023 -10.6288845 0.00000 0.00000 0.00000 220 O O core 7.0198838 5.8957522 -10.6308439 0.00000 0.00000 0.00000 221 O O core 4.0929064 11.9143084 -10.9340149 0.00000 0.00000 0.00000 222 O O core 9.6017454 8.1527584 -10.9359742 0.00000 0.00000 0.00000 223 O O core 11.2674158 11.1620365 -11.0875597 0.00000 0.00000 0.00000 224 O O core 3.5218309 3.6293366 -11.0934379 0.00000 0.00000 0.00000 225 O O core 5.1875013 6.6386147 -11.2450234 0.00000 0.00000 0.00000 226 O O core 10.6963403 2.8770646 -11.2469827 0.00000 0.00000 0.00000 227 O O core 7.7693629 8.8956208 -11.5501537 0.00000 0.00000 0.00000 228 O O core 13.2782019 5.1340708 -11.5521131 0.00000 0.00000 0.00000 229 O O core 2.4272361 8.1433489 -11.7036985 0.00000 0.00000 0.00000 230 O O core 10.1728209 15.6663289 -11.7095767 0.00000 0.00000 0.00000 231 O O core 8.8639578 3.6199271 -11.8611622 0.00000 0.00000 0.00000 232 O O core 4.8306940 14.9140569 -11.8631216 0.00000 0.00000 0.00000 233 O O core 11.4458194 5.8769332 -12.1662925 0.00000 0.00000 0.00000 234 O O core 4.4380222 2.1153832 -12.1682519 0.00000 0.00000 0.00000 235 O O core 6.1036925 5.1246613 -12.3198374 0.00000 0.00000 0.00000 236 O O core 13.8492774 12.6476413 -12.3257155 0.00000 0.00000 0.00000 237 O O core 2.9983116 15.6569194 -12.4773010 0.00000 0.00000 0.00000 238 O O core 8.5071505 11.8953693 -12.4792604 0.00000 0.00000 0.00000 239 O O core 2.6056397 2.8582456 -12.7824313 0.00000 0.00000 0.00000 240 O O core 11.0890121 14.1523754 -12.7843907 0.00000 0.00000 0.00000 241 O O core 9.7801490 2.1059737 -12.9359762 0.00000 0.00000 0.00000 242 O O core 5.0090977 9.6289537 -12.9418543 0.00000 0.00000 0.00000 243 O O core 6.6747680 12.6382318 -13.0934398 0.00000 0.00000 0.00000 244 O O core 12.1836070 8.8766817 -13.0953992 0.00000 0.00000 0.00000 245 O O core 9.2566297 14.8952379 -13.3985702 0.00000 0.00000 0.00000 246 O O core 14.7654686 11.1336878 -13.4005295 0.00000 0.00000 0.00000 247 O O core 3.9145028 14.1429659 -13.5521150 0.00000 0.00000 0.00000 248 O O core 10.3512245 9.6195442 -13.7095786 0.00000 0.00000 0.00000 249 O O core 12.9330861 11.8765503 -14.0147090 0.00000 0.00000 0.00000 250 O O core 5.9252889 8.1150002 -14.0166684 0.00000 0.00000 0.00000 251 O O core 7.5909593 11.1242783 -14.1682538 0.00000 0.00000 0.00000 252 O O core 4.0929064 8.8578627 -14.6308478 0.00000 0.00000 0.00000 253 O O core 11.2674158 8.1055907 -14.7843927 0.00000 0.00000 0.00000 254 O O shell 2.0345642 3.7393019 -1.8553579 0.00000 0.00000 0.00000 255 O O shell 9.2050932 2.9902981 -2.0082357 0.00000 0.00000 0.00000 256 O O shell 8.6855542 15.7762942 -2.4714967 0.00000 0.00000 0.00000 257 O O shell 7.3806714 3.7299333 -2.6197469 0.00000 0.00000 0.00000 258 O O shell 15.8560832 15.0272904 -2.6243745 0.00000 0.00000 0.00000 259 O O shell 2.9467751 2.2319257 -2.9255025 0.00000 0.00000 0.00000 260 O O shell 12.3620106 12.7576066 -3.0876356 0.00000 0.00000 0.00000 261 O O shell 14.0316613 15.7669256 -3.2358857 0.00000 0.00000 0.00000 262 O O shell 7.0159035 12.0086028 -3.2405134 0.00000 0.00000 0.00000 263 O O shell 1.1223532 2.9715609 -3.5370137 0.00000 0.00000 0.00000 264 O O shell 9.5977651 14.2689180 -3.5416413 0.00000 0.00000 0.00000 265 O O shell 8.2928823 2.2225571 -3.6898915 0.00000 0.00000 0.00000 266 O O shell 3.5218309 9.7389190 -3.7037744 0.00000 0.00000 0.00000 267 O O shell 5.1914816 12.7482380 -3.8520245 0.00000 0.00000 0.00000 268 O O shell 10.6923600 8.9899152 -3.8566522 0.00000 0.00000 0.00000 269 O O shell 7.7733432 15.0085531 -4.1531525 0.00000 0.00000 0.00000 270 O O shell 13.2742216 11.2502304 -4.1577801 0.00000 0.00000 0.00000 271 O O shell 14.9438723 14.2595493 -4.3060303 0.00000 0.00000 0.00000 272 O O shell 7.1982874 6.7202314 -4.3199132 0.00000 0.00000 0.00000 273 O O shell 8.8679381 9.7295504 -4.4681634 0.00000 0.00000 0.00000 274 O O shell 14.3688164 5.9712276 -4.4727910 0.00000 0.00000 0.00000 275 O O shell 11.4497997 11.9898655 -4.7692913 0.00000 0.00000 0.00000 276 O O shell 4.4340419 8.2315428 -4.7739190 0.00000 0.00000 0.00000 277 O O shell 6.1036925 11.2408617 -4.9221691 0.00000 0.00000 0.00000 278 O O shell 10.8747439 3.7015438 -4.9360520 0.00000 0.00000 0.00000 279 O O shell 12.5443946 6.7108628 -5.0843022 0.00000 0.00000 0.00000 280 O O shell 5.5286367 2.9525400 -5.0889298 0.00000 0.00000 0.00000 281 O O shell 2.6096200 8.9711779 -5.3854302 0.00000 0.00000 0.00000 282 O O shell 8.1104983 5.2128552 -5.3900578 0.00000 0.00000 0.00000 283 O O shell 9.7801490 8.2221741 -5.5383079 0.00000 0.00000 0.00000 284 O O shell 5.0090977 15.7385361 -5.5521909 0.00000 0.00000 0.00000 285 O O shell 3.7042149 3.6921752 -5.7004410 0.00000 0.00000 0.00000 286 O O shell 12.1796267 14.9895323 -5.7050686 0.00000 0.00000 0.00000 287 O O shell 6.2860765 5.9524903 -6.0015690 0.00000 0.00000 0.00000 288 O O shell 11.7869548 2.1941676 -6.0061966 0.00000 0.00000 0.00000 289 O O shell 13.4566055 5.2034865 -6.1544468 0.00000 0.00000 0.00000 290 O O shell 8.6855542 12.7198485 -6.1683297 0.00000 0.00000 0.00000 291 O O shell 10.3552048 15.7291674 -6.3165798 0.00000 0.00000 0.00000 292 O O shell 3.3394470 11.9708447 -6.3212075 0.00000 0.00000 0.00000 293 O O shell 9.9625330 2.9338027 -6.6177078 0.00000 0.00000 0.00000 294 O O shell 5.9213086 14.2311599 -6.6223354 0.00000 0.00000 0.00000 295 O O shell 4.6164258 2.1847989 -6.7705856 0.00000 0.00000 0.00000 296 O O shell 12.3620106 9.7011609 -6.7844685 0.00000 0.00000 0.00000 297 O O shell 1.5150251 12.7104798 -6.9327187 0.00000 0.00000 0.00000 298 O O shell 7.0159035 8.9521571 -6.9373463 0.00000 0.00000 0.00000 299 O O shell 4.0968867 14.9707950 -7.2338466 0.00000 0.00000 0.00000 300 O O shell 9.5977651 11.2124723 -7.2384743 0.00000 0.00000 0.00000 301 O O shell 11.2674158 14.2217912 -7.3867244 0.00000 0.00000 0.00000 302 O O shell 3.5218309 6.6824733 -7.4006073 0.00000 0.00000 0.00000 303 O O shell 5.1914816 9.6917922 -7.5488575 0.00000 0.00000 0.00000 304 O O shell 10.6923600 5.9334695 -7.5534851 0.00000 0.00000 0.00000 305 O O shell 7.7733432 11.9521074 -7.8499854 0.00000 0.00000 0.00000 306 O O shell 13.2742216 8.1937847 -7.8546131 0.00000 0.00000 0.00000 307 O O shell 2.4272361 11.2031036 -8.0028632 0.00000 0.00000 0.00000 308 O O shell 7.1982874 3.6637857 -8.0167461 0.00000 0.00000 0.00000 309 O O shell 8.8679381 6.6731046 -8.1649963 0.00000 0.00000 0.00000 310 O O shell 1.8521802 2.9147819 -8.1696239 0.00000 0.00000 0.00000 311 O O shell 11.4497997 8.9334198 -8.4661243 0.00000 0.00000 0.00000 312 O O shell 4.4340419 5.1750971 -8.4707519 0.00000 0.00000 0.00000 313 O O shell 6.1036925 8.1844160 -8.6190021 0.00000 0.00000 0.00000 314 O O shell 13.8492774 15.7007779 -8.6328850 0.00000 0.00000 0.00000 315 O O shell 0.0277584 3.6544170 -8.7811351 0.00000 0.00000 0.00000 316 O O shell 8.5031702 14.9517742 -8.7857628 0.00000 0.00000 0.00000 317 O O shell 2.6096200 5.9147322 -9.0822631 0.00000 0.00000 0.00000 318 O O shell 8.1104983 2.1564095 -9.0868907 0.00000 0.00000 0.00000 319 O O shell 9.7801490 5.1657284 -9.2351409 0.00000 0.00000 0.00000 320 O O shell 5.0090977 12.6820903 -9.2490238 0.00000 0.00000 0.00000 321 O O shell 6.6787484 15.6914093 -9.3972739 0.00000 0.00000 0.00000 322 O O shell 12.1796267 11.9330866 -9.4019016 0.00000 0.00000 0.00000 323 O O shell 6.2860765 2.8960446 -9.6984019 0.00000 0.00000 0.00000 324 O O shell 14.7614883 14.1934017 -9.7030295 0.00000 0.00000 0.00000 325 O O shell 0.9399693 2.1470408 -9.8512797 0.00000 0.00000 0.00000 326 O O shell 8.6855542 9.6634027 -9.8651626 0.00000 0.00000 0.00000 327 O O shell 10.3552048 12.6727217 -10.0134128 0.00000 0.00000 0.00000 328 O O shell 3.3394470 8.9143990 -10.0180404 0.00000 0.00000 0.00000 329 O O shell 12.9370665 14.9330369 -10.3145407 0.00000 0.00000 0.00000 330 O O shell 5.9213086 11.1747141 -10.3191684 0.00000 0.00000 0.00000 331 O O shell 7.5909593 14.1840331 -10.4674185 0.00000 0.00000 0.00000 332 O O shell 12.3620106 6.6447151 -10.4813014 0.00000 0.00000 0.00000 333 O O shell 1.5150251 9.6540341 -10.6295516 0.00000 0.00000 0.00000 334 O O shell 7.0159035 5.8957114 -10.6341792 0.00000 0.00000 0.00000 335 O O shell 4.0968867 11.9143493 -10.9306796 0.00000 0.00000 0.00000 336 O O shell 9.5977651 8.1560265 -10.9353072 0.00000 0.00000 0.00000 337 O O shell 11.2674158 11.1653455 -11.0835573 0.00000 0.00000 0.00000 338 O O shell 3.5218309 3.6260275 -11.0974402 0.00000 0.00000 0.00000 339 O O shell 5.1914816 6.6353465 -11.2456904 0.00000 0.00000 0.00000 340 O O shell 10.6923600 2.8770238 -11.2503180 0.00000 0.00000 0.00000 341 O O shell 7.7733432 8.8956617 -11.5468184 0.00000 0.00000 0.00000 342 O O shell 13.2742216 5.1373389 -11.5514460 0.00000 0.00000 0.00000 343 O O shell 2.4272361 8.1466579 -11.6996962 0.00000 0.00000 0.00000 344 O O shell 10.1728209 15.6630198 -11.7135791 0.00000 0.00000 0.00000 345 O O shell 8.8679381 3.6166589 -11.8618292 0.00000 0.00000 0.00000 346 O O shell 4.8267137 14.9140160 -11.8664569 0.00000 0.00000 0.00000 347 O O shell 11.4497997 5.8769741 -12.1629572 0.00000 0.00000 0.00000 348 O O shell 4.4340419 2.1186513 -12.1675848 0.00000 0.00000 0.00000 349 O O shell 6.1036925 5.1279703 -12.3158350 0.00000 0.00000 0.00000 350 O O shell 13.8492774 12.6443322 -12.3297179 0.00000 0.00000 0.00000 351 O O shell 3.0022919 15.6536512 -12.4779681 0.00000 0.00000 0.00000 352 O O shell 8.5031702 11.8953284 -12.4825957 0.00000 0.00000 0.00000 353 O O shell 2.6096200 2.8582865 -12.7790960 0.00000 0.00000 0.00000 354 O O shell 11.0850318 14.1556436 -12.7837237 0.00000 0.00000 0.00000 355 O O shell 9.7801490 2.1092827 -12.9319738 0.00000 0.00000 0.00000 356 O O shell 5.0090977 9.6256446 -12.9458567 0.00000 0.00000 0.00000 357 O O shell 6.6787484 12.6349636 -13.0941069 0.00000 0.00000 0.00000 358 O O shell 12.1796267 8.8766408 -13.0987345 0.00000 0.00000 0.00000 359 O O shell 9.2606100 14.8952788 -13.3952348 0.00000 0.00000 0.00000 360 O O shell 14.7614883 11.1369560 -13.3998625 0.00000 0.00000 0.00000 361 O O shell 3.9145028 14.1462750 -13.5481126 0.00000 0.00000 0.00000 362 O O shell 10.3552048 9.6162760 -13.7102457 0.00000 0.00000 0.00000 363 O O shell 12.9370665 11.8765912 -14.0113737 0.00000 0.00000 0.00000 364 O O shell 5.9213086 8.1182684 -14.0160013 0.00000 0.00000 0.00000 365 O O shell 7.5909593 11.1275874 -14.1642515 0.00000 0.00000 0.00000 366 O O shell 4.0968867 8.8579036 -14.6275125 0.00000 0.00000 0.00000 367 O O shell 11.2674158 8.1088998 -14.7803903 0.00000 0.00000 0.00000 -------------------------------------------------------------------------------- GRADIENTS BLOCK A REGION 1 (REGION 1A) --------------------------------------------------------------------- Ion Type Gradients --------------------------------------------------------------------- block A fixed -2.4717566e-07 -8.5955659e-07 -2.0977256e-06 0 Ca core 7.3355405e-06 2.6297999e-05 1.9262018e-07 1 Ca core 2.4644115e-07 -3.8254277e-06 -5.6073082e-07 2 Ca core -5.8374357e-07 1.2299819e-07 8.2077268e-07 3 Ca core -4.2842944e-06 -7.6469186e-07 -3.3960853e-07 4 Ca core 8.1108813e-07 3.6030954e-06 1.9915519e-06 5 Ca core -5.3375529e-07 8.7758220e-07 8.8292822e-07 6 Ca core 2.7398619e-07 -5.4222453e-06 -5.0549335e-07 7 Ca core -1.6121928e-06 1.3937803e-06 4.0459551e-07 8 C core -2.7480863e-05 3.2582162e-05 3.4826892e-05 9 C core -2.7388244e-06 -2.1503922e-05 -1.8443937e-05 10 C core -7.0168234e-06 -1.5294370e-05 -1.6824897e-05 11 C core -1.5249905e-05 1.6512017e-05 4.5717008e-06 12 C core -1.9095433e-06 -4.7964587e-06 -7.6124312e-06 13 C core -1.8521213e-05 3.1920615e-06 -1.1017955e-05 14 C core -3.1999300e-06 -8.7157283e-07 -5.4530559e-06 15 C core 6.7629883e-06 9.5016463e-06 1.4473036e-05 16 O core 9.4643031e-07 -3.8887121e-06 -2.9978014e-06 17 O core -9.5887526e-07 -2.2463012e-06 -1.1394364e-05 18 O core -7.5973261e-06 5.3538816e-08 -2.0137896e-06 19 O core 5.6028353e-07 -1.1924587e-05 -5.3500713e-06 20 O core 2.7252630e-06 9.1314686e-07 -7.4537776e-06 21 O core 3.7725941e-06 -1.4503252e-07 -2.0927381e-06 22 O core -2.7883877e-06 2.4326888e-06 -7.1282994e-06 23 O core 1.6673423e-06 -6.3967772e-07 -7.3842644e-07 24 O core 2.1057054e-06 -8.8788047e-07 -4.9471053e-06 25 O core -2.7699536e-06 -2.6074660e-06 5.5314733e-06 26 O core 3.0414528e-06 -3.9665211e-06 -2.4004529e-06 27 O core 2.7961776e-06 -3.1282928e-06 1.7346623e-06 28 O core -1.5692621e-06 1.5653518e-06 -1.0622230e-05 29 O core -2.6454545e-06 2.8889614e-06 -4.8714274e-07 30 O core 1.6501510e-06 -9.8460346e-07 -7.9762385e-06 31 O core -1.1501308e-06 8.6536332e-07 7.6356483e-07 32 O core 1.0365432e-06 -1.7187975e-06 -1.4300303e-06 33 O core 1.1152152e-06 -2.0342351e-06 -4.4368148e-07 34 O core -1.3700893e-06 1.1428845e-06 -1.6757784e-06 35 O core 1.6940722e-08 -2.8929982e-08 -1.7441893e-07 36 O core -5.0143202e-07 -7.8855539e-07 -1.9076785e-06 37 O core 1.3555630e-07 -2.3444655e-06 -1.7206575e-06 38 O core -8.1221491e-07 -4.4663017e-07 -3.2969044e-08 39 O core 7.1883915e-07 -2.1646153e-06 -2.2579930e-07 40 O shell 3.0675916e-06 3.5230580e-05 5.1422913e-05 41 O shell -1.0873254e-04 8.9025944e-06 -2.6644651e-05 42 O shell 1.6018800e-05 6.1509867e-05 1.0276351e-04 43 O shell 1.3430378e-04 -5.3053421e-05 -2.0103862e-05 44 O shell 8.2616142e-06 9.7860677e-06 1.5343713e-05 45 O shell -7.5130687e-06 -5.9117616e-06 -1.2265740e-05 46 O shell 3.2459461e-06 5.8995996e-06 1.5962291e-05 47 O shell 1.0067540e-05 -1.7156505e-06 1.0687940e-05 48 O shell 7.6140171e-05 -4.1510278e-06 5.3529556e-05 49 O shell 1.9510821e-06 -2.6257389e-06 -2.0676999e-05 50 O shell 7.3290925e-05 -6.3663123e-05 -1.4933028e-05 51 O shell -5.3347462e-06 2.3689606e-05 2.6583822e-05 52 O shell 5.0510834e-06 -4.9184424e-05 -3.4439512e-05 53 O shell -4.7484005e-05 4.5753515e-05 1.8672478e-05 54 O shell -3.4868963e-06 6.1952020e-06 9.1710288e-06 55 O shell -7.7238020e-05 -2.1863950e-06 -6.6163359e-05 56 O shell -2.9314380e-07 -1.0082710e-06 1.4222364e-07 57 O shell -3.2240834e-06 -1.9307239e-05 -2.0991741e-05 58 O shell 3.5148124e-06 -3.8567361e-06 1.7247409e-06 59 O shell -5.2331912e-07 -1.5018806e-06 -5.9214024e-07 60 O shell -3.1124882e-05 3.0737095e-05 7.9373728e-06 61 O shell -7.6566560e-06 -3.9837747e-05 -5.6841409e-05 62 O shell 2.1405588e-05 9.4168113e-06 2.4670692e-05 63 O shell 4.1152750e-06 2.2074798e-07 4.9156451e-06 --------------------------------------------------------------------- Gnorm = 0.00475249 ENERGY BREAKDOWN ------------------------------------------------ Repulsive Energy = -57.00857462 eV Real = -433.47681758 eV Reciprocal = -0.01906359 eV Electrostatic = -433.49588117 eV Two-body Energy = -490.50445579 eV Polarization Energy = 0.19048488 eV Three-Body Energy = 0.00860603 eV Four-Body Energy = 0.00000000 eV Boundary Interaction = -18.83692340 eV Total Energy = -490.30536489 eV ------------------------------------------------ Attachment Energy = -4.80830877 eV/mol Slice Energy = -56.62499371 eV/mol ------------------------------------------------ Surface Energy = 0.6996 (42.8922) J/m^2 ------------------------------------------------ Biosym XTL output written to file "caco3-5116.xtl" Marvin output written to file "caco3-5116.mvn-r" ------------------------------------------- FLAGS TABLE ------------------------------------------- 1 build_all true 2 have bulk true 3 have mm true ------------------------------------------- ------------------------------------------- TIMING BREAKDOWN Routine No. calls Time ------------------------------------------- polarization energy 118 0.00 input 1 0.00 packed matrix invert 2 0.16 four body energy 118 0.01 two body energy 118 236.95 calc energy 118 236.99 three body energy 118 0.00 ------------------------------------------- *** Wed Apr 18 15:51:57 *** elapsed time MARVIN run = 14.04 total = 237.47 *** MARVIN HAS FINISHED *** gdis-0.90/models/mgo.gin0000644000175000017500000000100210242523051013555 0ustar seansean# # Keywords: # single conp prop compare # # Options: # cell 4.211200 4.211200 4.211200 90.000000 90.000000 90.000000 fractional 9 Mg core 0.0 0.0 0.0 2.00000000 1.00000 0.00000 O core 1/2 1/2 1/2 0.84819000 1.00000 0.00000 O shel 1/2 1/2 1/2 -2.84819000 1.00000 0.00000 space F M 3 M buck Mg core O shel 1428.5000 0.294530 .00000E+00 0.000 10.000 buck O shel O shel 22764.000 0.149000 27.880 0.000 10.000 spring O 74.920380 gdis-0.90/models/urea_001_cut1.gin0000644000175000017500000003433407717054777015314 0ustar seanseanopti conv molecule svectors 5.55180905 0.00000000 0.0 0.00000000 5.55180905 0.0 cartesian C core 2.775904526099 0.000000000000 -1.669711150100 0.380000 C core 0.000000000000 2.775904526099 -3.026933681000 0.380000 C core 2.775904526099 0.000000000000 -6.366355981300 0.380000 C core 0.000000000000 2.775904526099 -7.723578512200 0.380000 C core 2.775904526099 0.000000000000 -11.063000812500 0.380000 C core 0.000000000000 2.775904526099 -12.420223343400 0.380000 C core 2.775904526099 0.000000000000 -15.759645643700 0.380000 C core 0.000000000000 2.775904526099 -17.116868174600 0.380000 C core 2.775904526099 0.000000000000 -20.456290474900 0.380000 C core 0.000000000000 2.775904526099 -21.813513005800 0.380000 O core 0.000000000000 2.775904526099 -1.795871304800 -0.380000 O core 2.775904526099 0.000000000000 -2.900773526401 -0.380000 O core 0.000000000000 2.775904526099 -6.492516136000 -0.380000 O core 2.775904526099 0.000000000000 -7.597418357601 -0.380000 O core 0.000000000000 2.775904526099 -11.189160967200 -0.380000 O core 2.775904526099 0.000000000000 -12.294063188801 -0.380000 O core 0.000000000000 2.775904526099 -15.885805798400 -0.380000 O core 2.775904526099 0.000000000000 -16.990708020001 -0.380000 O core 0.000000000000 2.775904526099 -20.582450629600 -0.380000 O core 2.775904526099 0.000000000000 -21.687352851201 -0.380000 N core 1.982484018799 0.793420507300 -0.988886363101 -0.830000 N core 3.569325033301 -0.793420507300 -0.988886363101 -0.830000 N core -0.793420507300 1.982484018799 -3.707758468100 -0.830000 N core 0.793420507300 3.569325033301 -3.707758468100 -0.830000 N core 1.982484018799 0.793420507300 -5.685531194301 -0.830000 N core 3.569325033301 -0.793420507300 -5.685531194301 -0.830000 N core -0.793420507300 1.982484018799 -8.404403299300 -0.830000 N core 0.793420507300 3.569325033301 -8.404403299300 -0.830000 N core 1.982484018799 0.793420507300 -10.382176025501 -0.830000 N core 3.569325033301 -0.793420507300 -10.382176025501 -0.830000 N core -0.793420507300 1.982484018799 -13.101048130500 -0.830000 N core 0.793420507300 3.569325033301 -13.101048130500 -0.830000 N core 1.982484018799 0.793420507300 -15.078820856701 -0.830000 N core 3.569325033301 -0.793420507300 -15.078820856701 -0.830000 N core -0.793420507300 1.982484018799 -17.797692961700 -0.830000 N core 0.793420507300 3.569325033301 -17.797692961700 -0.830000 N core 1.982484018799 0.793420507300 -19.775465687901 -0.830000 N core 3.569325033301 -0.793420507300 -19.775465687901 -0.830000 N core -0.793420507300 1.982484018799 -22.494337792900 -0.830000 N core 0.793420507300 3.569325033301 -22.494337792900 -0.830000 H core 2.010632339399 0.765272186700 0.046851507801 0.415000 H core 3.541176712701 -0.765272186700 0.046851507801 0.415000 H core 1.323350908100 1.452553617901 -1.441096391100 0.415000 H core 4.228458144000 -1.452553617901 -1.441096391100 0.415000 H core -1.452553617901 1.323350908100 -3.255548440100 0.415000 H core 1.452553617901 4.228458144000 -3.255548440100 0.415000 H core 2.010632339399 0.765272186700 -4.649793323399 0.415000 H core 3.541176712701 -0.765272186700 -4.649793323399 0.415000 H core -0.765272186700 2.010632339399 -4.743496338899 0.415000 H core 0.765272186700 3.541176712701 -4.743496338899 0.415000 H core 1.323350908100 1.452553617901 -6.137741222300 0.415000 H core 4.228458144000 -1.452553617901 -6.137741222300 0.415000 H core -1.452553617901 1.323350908100 -7.952193271300 0.415000 H core 1.452553617901 4.228458144000 -7.952193271300 0.415000 H core 2.010632339399 0.765272186700 -9.346438154599 0.415000 H core 3.541176712701 -0.765272186700 -9.346438154599 0.415000 H core -0.765272186700 2.010632339399 -9.440141170099 0.415000 H core 0.765272186700 3.541176712701 -9.440141170099 0.415000 H core 1.323350908100 1.452553617901 -10.834386053500 0.415000 H core 4.228458144000 -1.452553617901 -10.834386053500 0.415000 H core -1.452553617901 1.323350908100 -12.648838102500 0.415000 H core 1.452553617901 4.228458144000 -12.648838102500 0.415000 H core 2.010632339399 0.765272186700 -14.043082985799 0.415000 H core 3.541176712701 -0.765272186700 -14.043082985799 0.415000 H core -0.765272186700 2.010632339399 -14.136786001299 0.415000 H core 0.765272186700 3.541176712701 -14.136786001299 0.415000 H core 1.323350908100 1.452553617901 -15.531030884700 0.415000 H core 4.228458144000 -1.452553617901 -15.531030884700 0.415000 H core -1.452553617901 1.323350908100 -17.345482933700 0.415000 H core 1.452553617901 4.228458144000 -17.345482933700 0.415000 H core 2.010632339399 0.765272186700 -18.739727816999 0.415000 H core 3.541176712701 -0.765272186700 -18.739727816999 0.415000 H core -0.765272186700 2.010632339399 -18.833430832499 0.415000 H core 0.765272186700 3.541176712701 -18.833430832499 0.415000 H core 1.323350908100 1.452553617901 -20.227675715900 0.415000 H core 4.228458144000 -1.452553617901 -20.227675715900 0.415000 H core -1.452553617901 1.323350908100 -22.042127764900 0.415000 H core 1.452553617901 4.228458144000 -22.042127764900 0.415000 H core -0.765272186700 2.010632339399 -23.530075663699 0.415000 H core 0.765272186700 3.541176712701 -23.530075663699 0.415000 C core 2.775904526099 0.000000000000 -25.152935306100 0.380000 C core 0.000000000000 2.775904526099 -26.510157837000 0.380000 C core 2.775904526099 0.000000000000 -29.849580137300 0.380000 C core 0.000000000000 2.775904526099 -31.206802668200 0.380000 C core 2.775904526099 0.000000000000 -34.546224968500 0.380000 C core 0.000000000000 2.775904526099 -35.903447499400 0.380000 C core 2.775904526099 0.000000000000 -39.242869799700 0.380000 C core 0.000000000000 2.775904526099 -40.600092330600 0.380000 C core 2.775904526099 0.000000000000 -43.939514630900 0.380000 C core 0.000000000000 2.775904526099 -45.296737161800 0.380000 O core 0.000000000000 2.775904526099 -25.279095460800 -0.380000 O core 2.775904526099 0.000000000000 -26.383997682401 -0.380000 O core 0.000000000000 2.775904526099 -29.975740292000 -0.380000 O core 2.775904526099 0.000000000000 -31.080642513601 -0.380000 O core 0.000000000000 2.775904526099 -34.672385123200 -0.380000 O core 2.775904526099 0.000000000000 -35.777287344801 -0.380000 O core 0.000000000000 2.775904526099 -39.369029954400 -0.380000 O core 2.775904526099 0.000000000000 -40.473932176001 -0.380000 O core 0.000000000000 2.775904526099 -44.065674785600 -0.380000 O core 2.775904526099 0.000000000000 -45.170577007201 -0.380000 N core 1.982484018799 0.793420507300 -24.472110519101 -0.830000 N core 3.569325033301 -0.793420507300 -24.472110519101 -0.830000 N core -0.793420507300 1.982484018799 -27.190982624100 -0.830000 N core 0.793420507300 3.569325033301 -27.190982624100 -0.830000 N core 1.982484018799 0.793420507300 -29.168755350301 -0.830000 N core 3.569325033301 -0.793420507300 -29.168755350301 -0.830000 N core -0.793420507300 1.982484018799 -31.887627455300 -0.830000 N core 0.793420507300 3.569325033301 -31.887627455300 -0.830000 N core 1.982484018799 0.793420507300 -33.865400181501 -0.830000 N core 3.569325033301 -0.793420507300 -33.865400181501 -0.830000 N core -0.793420507300 1.982484018799 -36.584272286500 -0.830000 N core 0.793420507300 3.569325033301 -36.584272286500 -0.830000 N core 1.982484018799 0.793420507300 -38.562045012701 -0.830000 N core 3.569325033301 -0.793420507300 -38.562045012701 -0.830000 N core -0.793420507300 1.982484018799 -41.280917117700 -0.830000 N core 0.793420507300 3.569325033301 -41.280917117700 -0.830000 N core 1.982484018799 0.793420507300 -43.258689843901 -0.830000 N core 3.569325033301 -0.793420507300 -43.258689843901 -0.830000 N core -0.793420507300 1.982484018799 -45.977561948900 -0.830000 N core 0.793420507300 3.569325033301 -45.977561948900 -0.830000 H core 2.010632339399 0.765272186700 -23.436372648199 0.415000 H core 3.541176712701 -0.765272186700 -23.436372648199 0.415000 H core 1.323350908100 1.452553617901 -24.924320547100 0.415000 H core 4.228458144000 -1.452553617901 -24.924320547100 0.415000 H core -1.452553617901 1.323350908100 -26.738772596100 0.415000 H core 1.452553617901 4.228458144000 -26.738772596100 0.415000 H core 2.010632339399 0.765272186700 -28.133017479399 0.415000 H core 3.541176712701 -0.765272186700 -28.133017479399 0.415000 H core -0.765272186700 2.010632339399 -28.226720494899 0.415000 H core 0.765272186700 3.541176712701 -28.226720494899 0.415000 H core 1.323350908100 1.452553617901 -29.620965378300 0.415000 H core 4.228458144000 -1.452553617901 -29.620965378300 0.415000 H core -1.452553617901 1.323350908100 -31.435417427300 0.415000 H core 1.452553617901 4.228458144000 -31.435417427300 0.415000 H core 2.010632339399 0.765272186700 -32.829662310599 0.415000 H core 3.541176712701 -0.765272186700 -32.829662310599 0.415000 H core -0.765272186700 2.010632339399 -32.923365326099 0.415000 H core 0.765272186700 3.541176712701 -32.923365326099 0.415000 H core 1.323350908100 1.452553617901 -34.317610209500 0.415000 H core 4.228458144000 -1.452553617901 -34.317610209500 0.415000 H core -1.452553617901 1.323350908100 -36.132062258500 0.415000 H core 1.452553617901 4.228458144000 -36.132062258500 0.415000 H core 2.010632339399 0.765272186700 -37.526307141799 0.415000 H core 3.541176712701 -0.765272186700 -37.526307141799 0.415000 H core -0.765272186700 2.010632339399 -37.620010157299 0.415000 H core 0.765272186700 3.541176712701 -37.620010157299 0.415000 H core 1.323350908100 1.452553617901 -39.014255040700 0.415000 H core 4.228458144000 -1.452553617901 -39.014255040700 0.415000 H core -1.452553617901 1.323350908100 -40.828707089700 0.415000 H core 1.452553617901 4.228458144000 -40.828707089700 0.415000 H core 2.010632339399 0.765272186700 -42.222951972999 0.415000 H core 3.541176712701 -0.765272186700 -42.222951972999 0.415000 H core -0.765272186700 2.010632339399 -42.316654988499 0.415000 H core 0.765272186700 3.541176712701 -42.316654988499 0.415000 H core 1.323350908100 1.452553617901 -43.710899871900 0.415000 H core 4.228458144000 -1.452553617901 -43.710899871900 0.415000 H core -1.452553617901 1.323350908100 -45.525351920900 0.415000 H core 1.452553617901 4.228458144000 -45.525351920900 0.415000 H core -0.765272186700 2.010632339399 -47.013299819699 0.415000 H core 0.765272186700 3.541176712701 -47.013299819699 0.415000 sregion2 81 sbulkenergy -310.3616137 morse bond C core O core 6.288000 2.060000 1.23000 morse bond C core N core 4.206000 2.000000 1.32000 morse bond H core N core 3.816000 2.280000 1.02600 lennard 12 6 inter C core O core 39031.570000 35.266000 18.0 lennard 12 6 inter C core N core 112494.667000 55.387000 18.0 lennard 12 6 inter O core O core 11833.864000 21.633000 18.0 lennard 12 6 inter N core O core 34106.919000 33.977000 18.0 lennard 12 6 inter N core N core 98301.108000 53.362000 18.0 lennard 12 6 inter C core C core 128737.614000 57.488000 18.0 three bond C core N core O core 5.897000 121.000000 three bond N core H core C core 3.252000 120.000000 three bond N core H core H core 2.862000 120.000000 three bond C core N core N core 8.846000 118.000000 torsion bond O cor C cor N cor H cor 0.260200 -2 torsion bond N cor C cor N cor H cor 0.002170 -2 torsion O cor C cor N cor N cor 0.434000 -2 1.60 1.60 3.00 0.00 dump every urea_001_cut1.res gdis-0.90/models/burkeite_p1.xtl0000644000175000017500000000722407717054765015303 0ustar seanseanTITLE burkeite from gdis (hand edited) DIMENSION 3 CELL 5.19800 9.25500 7.08500 90.00000 90.00000 90.00000 SYMMETRY NUMBER 1 LABEL P1 ATOMS NAME X Y Z CHARGE TEMP OCCUP SCAT Na 0.25000 0.75120 0.00470 0.0 0.0 1.0 NA 0+ Na 0.25000 0.42500 0.25000 0.0 0.0 1.0 NA 0+ Na 0.75000 0.88050 0.25000 0.0 0.0 1.0 NA 0+ C 0.75000 0.56060 0.25000 0.0 0.0 0.49 C 0+ S 0.75000 0.56060 0.25000 0.0 0.0 0.51 S 0+ S 0.29420 0.08960 0.25000 0.0 0.0 0.5 S 0+ O 0.75000 0.42160 0.25000 0.0 0.0 0.83 O 0+ O 0.53580 0.64290 0.25000 0.0 0.0 0.83 O 0+ O 0.75000 0.47010 0.08540 0.0 0.0 0.17 O 0+ O 0.93100 0.58340 0.08880 0.0 0.0 0.17 O 0+ O 0.18920 0.16060 0.08160 0.0 0.0 0.5 O 0+ O 0.57550 0.10710 0.25000 0.0 0.0 0.5 O 0+ Na 0.75000 0.24880 0.50470 0.0 0.0 1.0 NA 0+ Na 0.75000 0.24880 0.99530 0.0 0.0 1.0 NA 0+ Na 0.25000 0.75120 0.49530 0.0 0.0 1.0 NA 0+ Na 0.75000 0.57500 0.75000 0.0 0.0 1.0 NA 0+ Na 0.25000 0.11950 0.75000 0.0 0.0 1.0 NA 0+ C 0.25000 0.43940 0.75000 0.0 0.0 0.49 C 0+ S 0.25000 0.43940 0.75000 0.0 0.0 0.51 S 0+ S 0.70580 0.91040 0.75000 0.0 0.0 0.5 S 0+ S 0.79420 0.91040 0.75000 0.0 0.0 0.5 S 0+ S 0.20580 0.08960 0.25000 0.0 0.0 0.5 S 0+ O 0.25000 0.57840 0.75000 0.0 0.0 0.83 O 0+ O 0.46420 0.35710 0.75000 0.0 0.0 0.83 O 0+ O 0.03580 0.35710 0.75000 0.0 0.0 0.83 O 0+ O 0.96420 0.64290 0.25000 0.0 0.0 0.83 O 0+ O 0.25000 0.52990 0.58540 0.0 0.0 0.17 O 0+ O 0.25000 0.52990 0.91460 0.0 0.0 0.17 O 0+ O 0.75000 0.47010 0.41460 0.0 0.0 0.17 O 0+ O 0.06900 0.41660 0.58880 0.0 0.0 0.17 O 0+ O 0.43100 0.41660 0.91120 0.0 0.0 0.17 O 0+ O 0.56900 0.58340 0.41120 0.0 0.0 0.17 O 0+ O 0.06900 0.41660 0.91120 0.0 0.0 0.17 O 0+ O 0.93100 0.58340 0.41120 0.0 0.0 0.17 O 0+ O 0.56900 0.58340 0.08880 0.0 0.0 0.17 O 0+ O 0.43100 0.41660 0.58880 0.0 0.0 0.17 O 0+ O 0.81080 0.83940 0.58160 0.0 0.0 0.5 O 0+ O 0.68920 0.83940 0.91840 0.0 0.0 0.5 O 0+ O 0.31080 0.16060 0.41840 0.0 0.0 0.5 O 0+ O 0.81080 0.83940 0.91840 0.0 0.0 0.5 O 0+ O 0.18920 0.16060 0.41840 0.0 0.0 0.5 O 0+ O 0.31080 0.16060 0.08160 0.0 0.0 0.5 O 0+ O 0.68920 0.83940 0.58160 0.0 0.0 0.5 O 0+ O 0.42450 0.89290 0.75000 0.0 0.0 0.5 O 0+ O 0.21770 -0.06510 0.25000 0.0 0.0 0.5 O 0+ O 0.28230 -0.06510 0.25000 0.0 0.0 0.5 O 0+ O -0.07550 0.10710 0.25000 0.0 0.0 0.5 O 0+ O 1.07550 0.89290 0.75000 0.0 0.0 0.5 O 0+ O 0.78230 1.06510 0.75000 0.0 0.0 0.5 O 0+ O 0.71770 1.06510 0.75000 0.0 0.0 0.5 O 0+ EOF gdis-0.90/models/liox.gin0000644000175000017500000000267407717054777014021 0ustar seanseanopti conp molmec bond torsion comp cell 3.400 5.156 9.055 90.000 95.600 90.000 frac Li -0.05670 -0.01344 0.29179 O 0.13313 0.23698 0.13379 O 0.23847 0.22028 -0.10649 C 0.10582 0.13418 0.00738 space P 1 21/n 1 species Li 1 O -0.81548 C 0.63096 #observables #weights 2 #4 20 #25 25 #end #variables #charge 2 #C O #end print 1 element cova Li 0.1 end lennard 9 6 x13 C C 1070.4224 24.8673 15 0 0 lennard 9 6 x13 C O 855.6238 22.4938 15 0 0 lennard 9 6 x13 O O 702.3115 20.2177 15 0 0 lennard 9 6 C Li 107.5272 5.6610 15 1 1 lennard 9 6 O Li 82.4289 4.4508 15 0 0 lennard 9 6 Li Li 4.1141 0.6930 15 0 0 morse molmec C O 159.9105 0.2008 1.23 0 0 0 morse molmec C C 268.8586 0.2384 1.54 0 0 0 three-body molmec C O O 14.7920 123.000000 0 0 three-body molmec C C O 4.9180 120.000000 0 0 torsion molmec O C C O 0.05091 +2 180 0 torsion molmec C C O O 0.18864 +2 180 1.80 1.60 2.40 3.00 0 #harmonic molmec #C O 46.8331 1.25 0 0 #harmonic molmec kcal #C C 532.8 1.50 0 0 #three-body molmec #C O O 12.5756 123.0 0 0 #three-body molmec kcal #C O C 136.0 120.0 0 0 #torsion molmec kcal #O C C O 0.45 +2 180 0 #torsion intra kcal #C C O O 5.0 +2 180 1.8 1.6 2.4 3.0 0 gdis-0.90/models/calcite_104_0.0000.gin0000644000175000017500000007032107717054770015616 0ustar seanseansingle conv mole name calcite_104_0.0000 svectors 4.980183 -0.000000 4.980183 24.270662 sfractional region 1 C core 0.421919 0.078081 -12.134661 1.34353899 1.00000 0.00000 O core 0.327506 0.046167 -12.901128 1.01848700 1.00000 0.00000 O shel 0.327287 0.046093 -12.902899 -2.1330000 1.00000 0.00000 O core 0.263679 0.109994 -11.368193 1.01848700 1.00000 0.00000 O shel 0.263313 0.110068 -11.366423 -2.1330000 1.00000 0.00000 O core 0.674573 0.078081 -12.134661 1.01848700 1.00000 0.00000 O shel 0.675156 0.078081 -12.134661 -2.1330000 1.00000 0.00000 O core 0.709619 0.037727 -9.100994 1.01848700 1.00000 0.00000 O shel 0.709035 0.037727 -9.100994 -2.1330000 1.00000 0.00000 C core 0.962273 0.037727 -9.100994 1.34353899 1.00000 0.00000 O core 1.120513 0.005814 -9.867462 1.01848700 1.00000 0.00000 O shel 1.120879 0.005740 -9.869232 -2.1330000 1.00000 0.00000 O core 1.056686 0.069641 -8.334527 1.01848700 1.00000 0.00000 O shel 1.056904 0.069714 -8.332757 -2.1330000 1.00000 0.00000 Ca core 0.838586 0.161414 -12.134660 2.00000000 1.00000 0.00000 Ca core 0.919293 0.080707 -6.067328 2.00000000 1.00000 0.00000 Ca core 0.671919 0.328081 -12.134660 2.00000000 1.00000 0.00000 C core 0.795606 0.204394 -9.100994 1.34353899 1.00000 0.00000 O core 0.701192 0.172480 -9.867462 1.01848700 1.00000 0.00000 O shel 0.700974 0.172407 -9.869232 -2.1330000 1.00000 0.00000 O core 0.637366 0.236307 -8.334528 1.01848700 1.00000 0.00000 O shel 0.637000 0.236381 -8.332758 -2.1330000 1.00000 0.00000 O core 1.048260 0.204394 -9.100995 1.01848700 1.00000 0.00000 O shel 1.048843 0.204394 -9.100995 -2.1330000 1.00000 0.00000 C core 0.255253 0.244747 -12.134660 1.34353899 1.00000 0.00000 O core 0.349666 0.276661 -11.368192 1.01848700 1.00000 0.00000 O shel 0.349884 0.276735 -11.366422 -2.1330000 1.00000 0.00000 O core 0.002599 0.244747 -12.134659 1.01848700 1.00000 0.00000 O shel 0.002015 0.244747 -12.134660 -2.1330000 1.00000 0.00000 O core 0.413493 0.212834 -12.901127 1.01848700 1.00000 0.00000 O shel 0.413858 0.212760 -12.902897 -2.1330000 1.00000 0.00000 Ca core 0.459646 0.040353 -3.033665 2.00000000 1.00000 0.00000 O core 0.083306 0.164040 -6.067328 1.01848700 1.00000 0.00000 O shel 0.082722 0.164040 -6.067328 -2.1330000 1.00000 0.00000 C core 0.335960 0.164040 -6.067328 1.34353899 1.00000 0.00000 O core 0.494200 0.132127 -6.833797 1.01848700 1.00000 0.00000 O shel 0.494566 0.132053 -6.835567 -2.1330000 1.00000 0.00000 O core 0.430373 0.195954 -5.300861 1.01848700 1.00000 0.00000 O shel 0.430591 0.196028 -5.299091 -2.1330000 1.00000 0.00000 O core -0.005828 0.379500 -12.901127 1.01848700 1.00000 0.00000 O shel -0.006046 0.379427 -12.902897 -2.1330000 1.00000 0.00000 C core 0.088586 0.411414 -12.134659 1.34353899 1.00000 0.00000 O core -0.069655 0.443328 -11.368192 1.01848700 1.00000 0.00000 O shel -0.070020 0.443401 -11.366421 -2.1330000 1.00000 0.00000 O core 0.341240 0.411414 -12.134659 1.01848700 1.00000 0.00000 O shel 0.341823 0.411414 -12.134659 -2.1330000 1.00000 0.00000 Ca core 0.212273 0.287727 -9.100994 2.00000000 1.00000 0.00000 Ca core 0.378939 0.121060 -9.100994 2.00000000 1.00000 0.00000 C core 0.921919 0.578081 -12.134659 1.34353899 1.00000 0.00000 O core 1.016333 0.609994 -11.368191 1.01848700 1.00000 0.00000 O shel 1.016551 0.610068 -11.366421 -2.1330000 1.00000 0.00000 O core 1.080160 0.546167 -12.901126 1.01848700 1.00000 0.00000 O shel 1.080525 0.546093 -12.902897 -2.1330000 1.00000 0.00000 O core 0.669265 0.578081 -12.134659 1.01848700 1.00000 0.00000 O shel 0.668682 0.578081 -12.134658 -2.1330000 1.00000 0.00000 Ca core 0.338586 0.661414 -12.134660 2.00000000 1.00000 0.00000 Ca core 0.505253 0.494747 -12.134660 2.00000000 1.00000 0.00000 C core 0.628939 0.371061 -9.100995 1.34353899 1.00000 0.00000 O core 0.723353 0.402974 -8.334527 1.01848700 1.00000 0.00000 O shel 0.723571 0.403048 -8.332757 -2.1330000 1.00000 0.00000 O core 0.376285 0.371061 -9.100994 1.01848700 1.00000 0.00000 O shel 0.375702 0.371061 -9.100995 -2.1330000 1.00000 0.00000 O core 0.787180 0.339147 -9.867462 1.01848700 1.00000 0.00000 O shel 0.787545 0.339073 -9.869232 -2.1330000 1.00000 0.00000 Ca core 0.292980 0.207020 -3.033664 2.00000000 1.00000 0.00000 Ca core 0.045606 0.454394 -9.100995 2.00000000 1.00000 0.00000 C core 0.876313 0.123687 -3.033665 1.34353899 1.00000 0.00000 O core 0.781900 0.091773 -3.800132 1.01848700 1.00000 0.00000 O shel 0.781682 0.091700 -3.801902 -2.1330000 1.00000 0.00000 O core 1.128967 0.123687 -3.033665 1.01848700 1.00000 0.00000 O shel 1.129551 0.123687 -3.033665 -2.1330000 1.00000 0.00000 O core 0.718073 0.155600 -2.267197 1.01848700 1.00000 0.00000 O shel 0.717707 0.155674 -2.265427 -2.1330000 1.00000 0.00000 C core 0.169293 0.330707 -6.067330 1.34353899 1.00000 0.00000 O core 0.074879 0.298793 -6.833797 1.01848700 1.00000 0.00000 O shel 0.074661 0.298720 -6.835568 -2.1330000 1.00000 0.00000 O core 0.011052 0.362621 -5.300863 1.01848700 1.00000 0.00000 O shel 0.010687 0.362694 -5.299093 -2.1330000 1.00000 0.00000 O core 0.421947 0.330707 -6.067330 1.01848700 1.00000 0.00000 O shel 0.422530 0.330707 -6.067330 -2.1330000 1.00000 0.00000 O core 0.456992 0.290353 -3.033664 1.01848700 1.00000 0.00000 O shel 0.456409 0.290353 -3.033664 -2.1330000 1.00000 0.00000 C core 0.709646 0.290353 -3.033664 1.34353899 1.00000 0.00000 O core 0.867887 0.258440 -3.800132 1.01848700 1.00000 0.00000 O shel 0.868252 0.258366 -3.801902 -2.1330000 1.00000 0.00000 O core 0.804060 0.322267 -2.267197 1.01848700 1.00000 0.00000 O shel 0.804278 0.322341 -2.265427 -2.1330000 1.00000 0.00000 O core 0.367859 0.505814 -9.867462 1.01848700 1.00000 0.00000 O shel 0.367641 0.505740 -9.869232 -2.1330000 1.00000 0.00000 C core 0.462273 0.537727 -9.100994 1.34353899 1.00000 0.00000 O core 0.304032 0.569641 -8.334527 1.01848700 1.00000 0.00000 O shel 0.303667 0.569714 -8.332756 -2.1330000 1.00000 0.00000 O core 0.714927 0.537727 -9.100994 1.01848700 1.00000 0.00000 O shel 0.715510 0.537727 -9.100994 -2.1330000 1.00000 0.00000 Ca core 0.585960 0.414040 -6.067329 2.00000000 1.00000 0.00000 Ca core 0.752626 0.247374 -6.067330 2.00000000 1.00000 0.00000 Ca core 0.171919 0.828081 -12.134659 2.00000000 1.00000 0.00000 Ca core 0.712273 0.787727 -9.100995 2.00000000 1.00000 0.00000 C core 0.755253 0.744747 -12.134660 1.34353899 1.00000 0.00000 O core 0.660839 0.712834 -12.901127 1.01848700 1.00000 0.00000 O shel 0.660621 0.712760 -12.902897 -2.1330000 1.00000 0.00000 O core 1.007906 0.744747 -12.134660 1.01848700 1.00000 0.00000 O shel 1.008490 0.744747 -12.134660 -2.1330000 1.00000 0.00000 O core 0.597012 0.776661 -11.368192 1.01848700 1.00000 0.00000 O shel 0.596647 0.776735 -11.366422 -2.1330000 1.00000 0.00000 C core 0.295606 0.704394 -9.100994 1.34353899 1.00000 0.00000 O core 0.390020 0.736307 -8.334526 1.01848700 1.00000 0.00000 O shel 0.390238 0.736381 -8.332756 -2.1330000 1.00000 0.00000 O core 0.453847 0.672480 -9.867461 1.01848700 1.00000 0.00000 O shel 0.454212 0.672407 -9.869232 -2.1330000 1.00000 0.00000 O core 0.042952 0.704394 -9.100994 1.01848700 1.00000 0.00000 O shel 0.042369 0.704394 -9.100993 -2.1330000 1.00000 0.00000 O core 0.335932 0.911414 -12.134659 1.01848700 1.00000 0.00000 O shel 0.335348 0.911414 -12.134659 -2.1330000 1.00000 0.00000 C core 0.588586 0.911414 -12.134659 1.34353899 1.00000 0.00000 O core 0.746826 0.879500 -12.901127 1.01848700 1.00000 0.00000 O shel 0.747192 0.879427 -12.902897 -2.1330000 1.00000 0.00000 O core 0.682999 0.943328 -11.368192 1.01848700 1.00000 0.00000 O shel 0.683218 0.943401 -11.366422 -2.1330000 1.00000 0.00000 Ca core 0.878939 0.621060 -9.100994 2.00000000 1.00000 0.00000 Ca core 0.419293 0.580707 -6.067329 2.00000000 1.00000 0.00000 C core 0.542980 0.457020 -3.033664 1.34353899 1.00000 0.00000 O core 0.448566 0.425107 -3.800132 1.01848700 1.00000 0.00000 O shel 0.448348 0.425033 -3.801902 -2.1330000 1.00000 0.00000 O core 0.384739 0.488934 -2.267197 1.01848700 1.00000 0.00000 O shel 0.384374 0.489007 -2.265427 -2.1330000 1.00000 0.00000 O core 0.795634 0.457020 -3.033665 1.01848700 1.00000 0.00000 O shel 0.796217 0.457020 -3.033665 -2.1330000 1.00000 0.00000 O core 0.741546 0.632127 -6.833797 1.01848700 1.00000 0.00000 O shel 0.741328 0.632053 -6.835567 -2.1330000 1.00000 0.00000 C core 0.835960 0.664040 -6.067329 1.34353899 1.00000 0.00000 O core 0.677719 0.695954 -5.300861 1.01848700 1.00000 0.00000 O shel 0.677354 0.696028 -5.299091 -2.1330000 1.00000 0.00000 O core 1.088614 0.664040 -6.067329 1.01848700 1.00000 0.00000 O shel 1.089197 0.664040 -6.067329 -2.1330000 1.00000 0.00000 Ca core 0.959646 0.540353 -3.033664 2.00000000 1.00000 0.00000 C core 0.002626 0.497374 -6.067329 1.34353899 1.00000 0.00000 O core 0.097040 0.529287 -5.300861 1.01848700 1.00000 0.00000 O shel 0.097258 0.529361 -5.299091 -2.1330000 1.00000 0.00000 O core -0.250028 0.497374 -6.067329 1.01848700 1.00000 0.00000 O shel -0.250611 0.497374 -6.067329 -2.1330000 1.00000 0.00000 O core 0.160867 0.465460 -6.833797 1.01848700 1.00000 0.00000 O shel 0.161232 0.465386 -6.835567 -2.1330000 1.00000 0.00000 Ca core 0.126313 0.373687 -3.033664 2.00000000 1.00000 0.00000 Ca core 0.545606 0.954394 -9.100992 2.00000000 1.00000 0.00000 C core 0.669293 0.830707 -6.067327 1.34353899 1.00000 0.00000 O core 0.763706 0.862621 -5.300859 1.01848700 1.00000 0.00000 O shel 0.763924 0.862694 -5.299089 -2.1330000 1.00000 0.00000 O core 0.827533 0.798793 -6.833795 1.01848700 1.00000 0.00000 O shel 0.827899 0.798720 -6.835566 -2.1330000 1.00000 0.00000 O core 0.416639 0.830707 -6.067327 1.01848700 1.00000 0.00000 O shel 0.416055 0.830707 -6.067327 -2.1330000 1.00000 0.00000 Ca core 0.792980 0.707020 -3.033665 2.00000000 1.00000 0.00000 Ca core 0.085960 0.914040 -6.067328 2.00000000 1.00000 0.00000 C core 0.128939 0.871060 -9.100993 1.34353899 1.00000 0.00000 O core 0.034526 0.839147 -9.867460 1.01848700 1.00000 0.00000 O shel 0.034308 0.839073 -9.869230 -2.1330000 1.00000 0.00000 O core 0.381593 0.871060 -9.100993 1.01848700 1.00000 0.00000 O shel 0.382177 0.871060 -9.100993 -2.1330000 1.00000 0.00000 O core -0.029301 0.902974 -8.334525 1.01848700 1.00000 0.00000 O shel -0.029666 0.903048 -8.332755 -2.1330000 1.00000 0.00000 Ca core 0.005253 0.994747 -12.134659 2.00000000 1.00000 0.00000 Ca core 0.252626 0.747374 -6.067329 2.00000000 1.00000 0.00000 C core 0.376313 0.623687 -3.033664 1.34353899 1.00000 0.00000 O core 0.470727 0.655600 -2.267197 1.01848700 1.00000 0.00000 O shel 0.470945 0.655674 -2.265427 -2.1330000 1.00000 0.00000 O core 0.123659 0.623687 -3.033664 1.01848700 1.00000 0.00000 O shel 0.123076 0.623687 -3.033664 -2.1330000 1.00000 0.00000 O core 0.534554 0.591773 -3.800132 1.01848700 1.00000 0.00000 O shel 0.534919 0.591700 -3.801902 -2.1330000 1.00000 0.00000 O core 0.115233 0.758440 -3.800132 1.01848700 1.00000 0.00000 O shel 0.115015 0.758366 -3.801902 -2.1330000 1.00000 0.00000 C core 0.209646 0.790353 -3.033664 1.34353899 1.00000 0.00000 O core 0.051406 0.822267 -2.267196 1.01848700 1.00000 0.00000 O shel 0.051040 0.822341 -2.265426 -2.1330000 1.00000 0.00000 O core 0.462300 0.790353 -3.033664 1.01848700 1.00000 0.00000 O shel 0.462884 0.790353 -3.033664 -2.1330000 1.00000 0.00000 C core 0.502626 0.997374 -6.067328 1.34353899 1.00000 0.00000 O core 0.408213 0.965460 -6.833796 1.01848700 1.00000 0.00000 O shel 0.407995 0.965387 -6.835566 -2.1330000 1.00000 0.00000 O core 0.755280 0.997374 -6.067328 1.01848700 1.00000 0.00000 O shel 0.755864 0.997374 -6.067328 -2.1330000 1.00000 0.00000 O core 0.344386 1.029287 -5.300860 1.01848700 1.00000 0.00000 O shel 0.344020 1.029361 -5.299090 -2.1330000 1.00000 0.00000 C core 0.042980 0.957020 -3.033663 1.34353899 1.00000 0.00000 O core 0.137393 0.988934 -2.267195 1.01848700 1.00000 0.00000 O shel 0.137611 0.989007 -2.265425 -2.1330000 1.00000 0.00000 O core 0.201220 0.925107 -3.800130 1.01848700 1.00000 0.00000 O shel 0.201586 0.925033 -3.801901 -2.1330000 1.00000 0.00000 O core -0.209674 0.957020 -3.033663 1.01848700 1.00000 0.00000 O shel -0.210258 0.957020 -3.033662 -2.1330000 1.00000 0.00000 Ca core 0.626313 0.873687 -3.033664 2.00000000 1.00000 0.00000 sfractional region 2 Ca core 0.843838 0.156161 -24.269321 2.00000000 1.00000 0.00000 C core 0.427172 0.072828 -24.269320 1.34353899 1.00000 0.00000 O core 0.521585 0.104741 -23.502851 1.01848700 1.00000 0.00000 O shel 0.521803 0.104815 -23.501081 -2.1330000 1.00000 0.00000 O core 0.585412 0.040914 -25.035786 1.01848700 1.00000 0.00000 O shel 0.585778 0.040841 -25.037558 -2.1330000 1.00000 0.00000 O core 0.174518 0.072828 -24.269320 1.01848700 1.00000 0.00000 O shel 0.173934 0.072828 -24.269318 -2.1330000 1.00000 0.00000 O core 0.873112 0.000561 -22.002121 1.01848700 1.00000 0.00000 O shel 0.872894 0.000487 -22.003893 -2.1330000 1.00000 0.00000 C core 0.967525 0.032474 -21.235655 1.34353899 1.00000 0.00000 O core 0.809285 0.064388 -20.469187 1.01848700 1.00000 0.00000 O shel 0.808919 0.064462 -20.467417 -2.1330000 1.00000 0.00000 O core 1.220179 0.032474 -21.235655 1.01848700 1.00000 0.00000 O shel 1.220763 0.032474 -21.235655 -2.1330000 1.00000 0.00000 Ca core 0.677172 0.322828 -24.269320 2.00000000 1.00000 0.00000 C core 0.800858 0.199141 -21.235655 1.34353899 1.00000 0.00000 O core 0.895272 0.231055 -20.469187 1.01848700 1.00000 0.00000 O shel 0.895490 0.231128 -20.467417 -2.1330000 1.00000 0.00000 O core 0.959099 0.167228 -22.002121 1.01848700 1.00000 0.00000 O shel 0.959465 0.167154 -22.003893 -2.1330000 1.00000 0.00000 O core 0.548204 0.199141 -21.235655 1.01848700 1.00000 0.00000 O shel 0.547621 0.199141 -21.235653 -2.1330000 1.00000 0.00000 Ca core 0.924545 0.075454 -18.201990 2.00000000 1.00000 0.00000 Ca core 0.217525 0.282475 -21.235657 2.00000000 1.00000 0.00000 C core 0.260505 0.239495 -24.269321 1.34353899 1.00000 0.00000 O core 0.166092 0.207581 -25.035788 1.01848700 1.00000 0.00000 O shel 0.165873 0.207507 -25.037558 -2.1330000 1.00000 0.00000 O core 0.513159 0.239495 -24.269321 1.01848700 1.00000 0.00000 O shel 0.513743 0.239495 -24.269321 -2.1330000 1.00000 0.00000 O core 0.102265 0.271408 -23.502853 1.01848700 1.00000 0.00000 O shel 0.101899 0.271482 -23.501083 -2.1330000 1.00000 0.00000 O core -0.158816 0.406161 -24.269320 1.01848700 1.00000 0.00000 O shel -0.159399 0.406161 -24.269320 -2.1330000 1.00000 0.00000 C core 0.093838 0.406161 -24.269320 1.34353899 1.00000 0.00000 O core 0.252079 0.374248 -25.035788 1.01848700 1.00000 0.00000 O shel 0.252444 0.374174 -25.037558 -2.1330000 1.00000 0.00000 O core 0.188252 0.438075 -23.502853 1.01848700 1.00000 0.00000 O shel 0.188470 0.438149 -23.501083 -2.1330000 1.00000 0.00000 Ca core 0.384192 0.115808 -21.235655 2.00000000 1.00000 0.00000 O core 0.246799 0.126874 -18.968456 1.01848700 1.00000 0.00000 O shel 0.246581 0.126800 -18.970228 -2.1330000 1.00000 0.00000 C core 0.341212 0.158788 -18.201990 1.34353899 1.00000 0.00000 O core 0.182971 0.190701 -17.435522 1.01848700 1.00000 0.00000 O shel 0.182606 0.190775 -17.433752 -2.1330000 1.00000 0.00000 O core 0.593866 0.158788 -18.201990 1.01848700 1.00000 0.00000 O shel 0.594450 0.158788 -18.201990 -2.1330000 1.00000 0.00000 Ca core 0.464899 0.035101 -15.168324 2.00000000 1.00000 0.00000 C core 0.927172 0.572828 -24.269320 1.34353899 1.00000 0.00000 O core 0.832758 0.540914 -25.035786 1.01848700 1.00000 0.00000 O shel 0.832540 0.540841 -25.037558 -2.1330000 1.00000 0.00000 O core 0.768931 0.604742 -23.502851 1.01848700 1.00000 0.00000 O shel 0.768566 0.604815 -23.501081 -2.1330000 1.00000 0.00000 O core 1.179826 0.572828 -24.269320 1.01848700 1.00000 0.00000 O shel 1.180409 0.572828 -24.269320 -2.1330000 1.00000 0.00000 Ca core 0.050859 0.449141 -21.235653 2.00000000 1.00000 0.00000 Ca core 0.591212 0.408788 -18.201988 2.00000000 1.00000 0.00000 C core 0.634192 0.365808 -21.235653 1.34353899 1.00000 0.00000 O core 0.539778 0.333894 -22.002121 1.01848700 1.00000 0.00000 O shel 0.539560 0.333821 -22.003891 -2.1330000 1.00000 0.00000 O core 0.886846 0.365808 -21.235653 1.01848700 1.00000 0.00000 O shel 0.887429 0.365808 -21.235653 -2.1330000 1.00000 0.00000 O core 0.475951 0.397721 -20.469185 1.01848700 1.00000 0.00000 O shel 0.475586 0.397795 -20.467415 -2.1330000 1.00000 0.00000 C core 0.174545 0.325454 -18.201988 1.34353899 1.00000 0.00000 O core 0.268959 0.357368 -17.435520 1.01848700 1.00000 0.00000 O shel 0.269177 0.357442 -17.433750 -2.1330000 1.00000 0.00000 O core 0.332786 0.293541 -18.968456 1.01848700 1.00000 0.00000 O shel 0.333151 0.293467 -18.970226 -2.1330000 1.00000 0.00000 O core -0.078109 0.325454 -18.201988 1.01848700 1.00000 0.00000 O shel -0.078692 0.325454 -18.201988 -2.1330000 1.00000 0.00000 O core 0.214871 0.532474 -21.235653 1.01848700 1.00000 0.00000 O shel 0.214288 0.532474 -21.235653 -2.1330000 1.00000 0.00000 C core 0.467525 0.532474 -21.235653 1.34353899 1.00000 0.00000 O core 0.625766 0.500561 -22.002121 1.01848700 1.00000 0.00000 O shel 0.626131 0.500487 -22.003891 -2.1330000 1.00000 0.00000 O core 0.561939 0.564388 -20.469185 1.01848700 1.00000 0.00000 O shel 0.562157 0.564462 -20.467415 -2.1330000 1.00000 0.00000 Ca core 0.343838 0.656161 -24.269318 2.00000000 1.00000 0.00000 Ca core 0.510505 0.489495 -24.269320 2.00000000 1.00000 0.00000 Ca core 0.757879 0.242121 -18.201990 2.00000000 1.00000 0.00000 C core 0.881566 0.118434 -15.168325 1.34353899 1.00000 0.00000 O core 0.975979 0.150348 -14.401857 1.01848700 1.00000 0.00000 O shel 0.976197 0.150421 -14.400087 -2.1330000 1.00000 0.00000 O core 0.628912 0.118434 -15.168325 1.01848700 1.00000 0.00000 O shel 0.628328 0.118434 -15.168325 -2.1330000 1.00000 0.00000 O core 1.039806 0.086521 -15.934793 1.01848700 1.00000 0.00000 O shel 1.040172 0.086447 -15.936563 -2.1330000 1.00000 0.00000 Ca core 0.298232 0.201768 -15.168325 2.00000000 1.00000 0.00000 O core 0.620485 0.253187 -15.934793 1.01848700 1.00000 0.00000 O shel 0.620267 0.253114 -15.936563 -2.1330000 1.00000 0.00000 C core 0.714899 0.285101 -15.168325 1.34353899 1.00000 0.00000 O core 0.556658 0.317014 -14.401857 1.01848700 1.00000 0.00000 O shel 0.556293 0.317088 -14.400087 -2.1330000 1.00000 0.00000 O core 0.967553 0.285101 -15.168325 1.01848700 1.00000 0.00000 O shel 0.968136 0.285101 -15.168325 -2.1330000 1.00000 0.00000 C core 0.760505 0.739495 -24.269320 1.34353899 1.00000 0.00000 O core 0.854918 0.771408 -23.502851 1.01848700 1.00000 0.00000 O shel 0.855137 0.771482 -23.501081 -2.1330000 1.00000 0.00000 O core 0.507851 0.739495 -24.269320 1.01848700 1.00000 0.00000 O shel 0.507268 0.739495 -24.269320 -2.1330000 1.00000 0.00000 O core 0.918746 0.707581 -25.035786 1.01848700 1.00000 0.00000 O shel 0.919111 0.707507 -25.037558 -2.1330000 1.00000 0.00000 Ca core 0.424545 0.575454 -18.201988 2.00000000 1.00000 0.00000 Ca core 0.964899 0.535101 -15.168324 2.00000000 1.00000 0.00000 Ca core 0.177172 0.822828 -24.269320 2.00000000 1.00000 0.00000 C core 0.300859 0.699141 -21.235655 1.34353899 1.00000 0.00000 O core 0.206445 0.667228 -22.002121 1.01848700 1.00000 0.00000 O shel 0.206227 0.667154 -22.003893 -2.1330000 1.00000 0.00000 O core 0.142618 0.731055 -20.469187 1.01848700 1.00000 0.00000 O shel 0.142253 0.731128 -20.467417 -2.1330000 1.00000 0.00000 O core 0.553513 0.699141 -21.235655 1.01848700 1.00000 0.00000 O shel 0.554096 0.699141 -21.235655 -2.1330000 1.00000 0.00000 C core 0.548232 0.451767 -15.168324 1.34353899 1.00000 0.00000 O core 0.642646 0.483681 -14.401855 1.01848700 1.00000 0.00000 O shel 0.642864 0.483755 -14.400085 -2.1330000 1.00000 0.00000 O core 0.706473 0.419854 -15.934791 1.01848700 1.00000 0.00000 O shel 0.706838 0.419780 -15.936562 -2.1330000 1.00000 0.00000 O core 0.295578 0.451767 -15.168324 1.01848700 1.00000 0.00000 O shel 0.294995 0.451767 -15.168323 -2.1330000 1.00000 0.00000 O core 0.588558 0.658788 -18.201988 1.01848700 1.00000 0.00000 O shel 0.587975 0.658788 -18.201988 -2.1330000 1.00000 0.00000 C core 0.841212 0.658788 -18.201988 1.34353899 1.00000 0.00000 O core 0.999453 0.626874 -18.968456 1.01848700 1.00000 0.00000 O shel 0.999818 0.626800 -18.970226 -2.1330000 1.00000 0.00000 O core 0.935626 0.690701 -17.435520 1.01848700 1.00000 0.00000 O shel 0.935844 0.690775 -17.433750 -2.1330000 1.00000 0.00000 O core 0.499425 0.874248 -25.035786 1.01848700 1.00000 0.00000 O shel 0.499207 0.874174 -25.037558 -2.1330000 1.00000 0.00000 C core 0.593838 0.906161 -24.269320 1.34353899 1.00000 0.00000 O core 0.435598 0.938075 -23.502851 1.01848700 1.00000 0.00000 O shel 0.435232 0.938149 -23.501081 -2.1330000 1.00000 0.00000 O core 0.846493 0.906161 -24.269320 1.01848700 1.00000 0.00000 O shel 0.847076 0.906161 -24.269320 -2.1330000 1.00000 0.00000 Ca core 0.717525 0.782474 -21.235653 2.00000000 1.00000 0.00000 Ca core 0.884192 0.615808 -21.235655 2.00000000 1.00000 0.00000 C core 0.007879 0.492121 -18.201988 1.34353899 1.00000 0.00000 O core -0.086535 0.460207 -18.968456 1.01848700 1.00000 0.00000 O shel -0.086753 0.460134 -18.970226 -2.1330000 1.00000 0.00000 O core 0.260533 0.492121 -18.201988 1.01848700 1.00000 0.00000 O shel 0.261116 0.492121 -18.201988 -2.1330000 1.00000 0.00000 O core -0.150362 0.524035 -17.435520 1.01848700 1.00000 0.00000 O shel -0.150727 0.524108 -17.433750 -2.1330000 1.00000 0.00000 Ca core 0.131566 0.368434 -15.168324 2.00000000 1.00000 0.00000 Ca core 0.798232 0.701767 -15.168324 2.00000000 1.00000 0.00000 Ca core 0.550858 0.949141 -21.235655 2.00000000 1.00000 0.00000 C core 0.674545 0.825454 -18.201990 1.34353899 1.00000 0.00000 O core 0.580132 0.793541 -18.968456 1.01848700 1.00000 0.00000 O shel 0.579914 0.793467 -18.970228 -2.1330000 1.00000 0.00000 O core 0.516305 0.857368 -17.435522 1.01848700 1.00000 0.00000 O shel 0.515939 0.857442 -17.433752 -2.1330000 1.00000 0.00000 O core 0.927199 0.825454 -18.201990 1.01848700 1.00000 0.00000 O shel 0.927783 0.825454 -18.201990 -2.1330000 1.00000 0.00000 Ca core 0.010505 0.989495 -24.269320 2.00000000 1.00000 0.00000 C core 0.134192 0.865808 -21.235655 1.34353899 1.00000 0.00000 O core 0.228605 0.897721 -20.469187 1.01848700 1.00000 0.00000 O shel 0.228824 0.897795 -20.467417 -2.1330000 1.00000 0.00000 O core -0.118462 0.865808 -21.235655 1.01848700 1.00000 0.00000 O shel -0.119046 0.865808 -21.235655 -2.1330000 1.00000 0.00000 O core 0.292432 0.833894 -22.002121 1.01848700 1.00000 0.00000 O shel 0.292798 0.833821 -22.003893 -2.1330000 1.00000 0.00000 C core 0.381566 0.618434 -15.168324 1.34353899 1.00000 0.00000 O core 0.287152 0.586521 -15.934792 1.01848700 1.00000 0.00000 O shel 0.286934 0.586447 -15.936562 -2.1330000 1.00000 0.00000 O core 0.634220 0.618434 -15.168324 1.01848700 1.00000 0.00000 O shel 0.634803 0.618434 -15.168324 -2.1330000 1.00000 0.00000 O core 0.223325 0.650348 -14.401856 1.01848700 1.00000 0.00000 O shel 0.222960 0.650421 -14.400086 -2.1330000 1.00000 0.00000 O core -0.037755 0.785101 -15.168324 1.01848700 1.00000 0.00000 O shel -0.038339 0.785101 -15.168324 -2.1330000 1.00000 0.00000 C core 0.214899 0.785101 -15.168324 1.34353899 1.00000 0.00000 O core 0.373140 0.753187 -15.934792 1.01848700 1.00000 0.00000 O shel 0.373505 0.753114 -15.936562 -2.1330000 1.00000 0.00000 O core 0.309313 0.817014 -14.401856 1.01848700 1.00000 0.00000 O shel 0.309531 0.817088 -14.400086 -2.1330000 1.00000 0.00000 Ca core 0.091212 0.908788 -18.201988 2.00000000 1.00000 0.00000 Ca core 0.257879 0.742121 -18.201990 2.00000000 1.00000 0.00000 C core 0.507879 0.992121 -18.201990 1.34353899 1.00000 0.00000 O core 0.602292 1.024035 -17.435522 1.01848700 1.00000 0.00000 O shel 0.602511 1.024108 -17.433752 -2.1330000 1.00000 0.00000 O core 0.255225 0.992121 -18.201990 1.01848700 1.00000 0.00000 O shel 0.254641 0.992121 -18.201990 -2.1330000 1.00000 0.00000 O core 0.666119 0.960207 -18.968456 1.01848700 1.00000 0.00000 O shel 0.666485 0.960134 -18.970228 -2.1330000 1.00000 0.00000 C core 0.048232 0.951768 -15.168325 1.34353899 1.00000 0.00000 O core -0.046181 0.919854 -15.934793 1.01848700 1.00000 0.00000 O shel -0.046399 0.919780 -15.936563 -2.1330000 1.00000 0.00000 O core -0.110008 0.983681 -14.401857 1.01848700 1.00000 0.00000 O shel -0.110374 0.983755 -14.400087 -2.1330000 1.00000 0.00000 O core 0.300886 0.951768 -15.168325 1.01848700 1.00000 0.00000 O shel 0.301470 0.951768 -15.168325 -2.1330000 1.00000 0.00000 Ca core 0.631566 0.868434 -15.168325 2.00000000 1.00000 0.00000 dhkl 3.033665 sbulkenergy -1023.043030 elements covalent 25 0.0000 covalent 26 0.0000 covalent 27 0.0000 covalent 28 0.0000 covalent 30 0.0000 covalent 48 0.0000 end species Cd core 2.000000 Mn core 2.000000 Mg core 2.000000 Zn core 2.000000 Ni core 2.000000 Co core 2.000000 Fe core 2.000000 Ca core 2.000000 C core 1.343539 O core 1.018487 O shel -2.133000 end buck intra O core O core 4030.30000 0.245497 0.0000000 0.000 2.500 buck Ca core O shel 2154.06000 0.289118 0.0000000 0.000 10.000 buck inter O shel O shel 64727.5050 0.198914 21.84357 0.000 15.000 buck Cd core O shel 4329.81000 0.256300 0.0000000 0.000 10.000 buck Mg core O shel 1039.58460 0.289329 0.0000000 0.000 10.000 buck Co core O shel 1095.59850 0.286300 0.0000000 0.000 10.000 buck Fe core O shel 2152.98610 0.265068 0.0000000 0.000 10.000 buck Mn core O shel 2000.93570 0.272681 0.0000000 0.000 10.000 buck Ni core O shel 1634.46190 0.266612 0.0000000 0.000 10.000 buck Zn core O shel 1029.39000 0.289100 0.0000000 0.000 10.000 morse intra bond C core O core 5.0000000 2.5228 1.19820 0.0000 spring O 52.739130 10000.000 three bond intra C core O core O core 1.7765 120.00 outofplane bond intra C cor O cor O cor O cor 8.8279 dump calcite_104_0.0000.res gdis-0.90/models/box.gin0000644000175000017500000000050607717054765013623 0ustar seanseanfit relax opti conp molmec bond torsion comp fix cell 5.0000 5.0000 5.0000 90.00000 90.00000 90.00000 frac Na 0.0 0.0 0.0 Na 1.0 1.0 0.0 Na 1.0 0.0 1.0 Na 0.0 1.0 1.0 O 1.0 1.0 1.0 O 0.0 0.0 1.0 O 0.0 1.0 0.0 O 1.0 0.0 0.0 space P 1 gdis-0.90/models/BUG_wrong_charges.gout0000644000175000017500000101074507717054764016567 0ustar seansean******************************************************************************** * GENERAL UTILITY LATTICE PROGRAM * * Julian Gale, Imperial College * * Version 1.3 * ******************************************************************************** **** Warning - inter/intra/both directive given on potential line **** **** but the molecule directive is currently inactive **** **** Warning - inter/intra/both directive given on potential line **** **** but the molecule directive is currently inactive **** **** Warning - inter/intra/both directive given on potential line **** **** but the molecule directive is currently inactive **** **** Warning - inter/intra/both/bond directive given on potential line **** **** but the molecule directive is currently inactive **** * optimise - perform optimisation run * * conp - constant pressure calculation * ******************************************************************************** * Zeolite X with occupancy info. P1. * * ordered 2in 2 out (i think!) * ******************************************************************************** Number of CPUs = 1 Total number of configurations input = 1 ******************************************************************************** * Input for Configuration = 1 * ******************************************************************************** Formula = Si96Al96O384K96 Number of irreducible atoms/shells = 1056 Total number atoms/shells = 1056 Dimensionality = 3 Symmetry : Crystal family : Triclinic Crystal class (Groth - 1921) : Triclinic Pedial Space group (noncentrosymmetric) : P 1 Patterson group : P -1 Cartesian lattice vectors (Angstroms) : 25.399856 0.000000 0.000000 0.000000 25.340593 0.000000 0.000000 0.000000 25.130961 Cell parameters (Angstroms/Degrees): a = 25.3999 alpha = 90.0000 b = 25.3406 beta = 90.0000 c = 25.1310 gamma = 90.0000 Initial cell volume = 16175.478038 Angs**3 Temperature of configuration = 0.000 K Pressure of configuration = 0.000 GPa Fractional coordinates of asymmetric unit : -------------------------------------------------------------------------------- No. Atomic x y z Charge Occupancy Label (Frac) (Frac) (Frac) (e) (Frac) -------------------------------------------------------------------------------- 1 Si1 c 0.047700 0.371500 0.285000 4.000000 1.000000 2 Si1 c 0.047700 * 0.370826 * 0.466948 * 4.000000 1.000000 3 Si1 c 0.047700 * 0.871500 * 0.785000 * 4.000000 1.000000 4 Si1 c 0.047700 * 0.870826 * 0.966948 * 4.000000 1.000000 5 Si1 c 0.192855 * 0.371500 * 0.966948 * 4.000000 1.000000 6 Si1 c 0.192855 * 0.370826 * 0.785000 * 4.000000 1.000000 7 Si1 c 0.192855 * 0.871500 * 0.466948 * 4.000000 1.000000 8 Si1 c 0.192855 * 0.870826 * 0.285000 * 4.000000 1.000000 9 Si1 c 0.297700 * 0.121500 * 0.216948 * 4.000000 1.000000 10 Si1 c 0.297700 * 0.120826 * 0.035000 * 4.000000 1.000000 11 Si1 c 0.297700 * 0.621500 * 0.716948 * 4.000000 1.000000 12 Si1 c 0.297700 * 0.620826 * 0.535000 * 4.000000 1.000000 13 Si1 c 0.442855 * 0.121500 * 0.535000 * 4.000000 1.000000 14 Si1 c 0.442855 * 0.120826 * 0.716948 * 4.000000 1.000000 15 Si1 c 0.442855 * 0.621500 * 0.035000 * 4.000000 1.000000 16 Si1 c 0.442855 * 0.620826 * 0.216948 * 4.000000 1.000000 17 Si1 c 0.547700 * 0.371500 * 0.785000 * 4.000000 1.000000 18 Si1 c 0.547700 * 0.370826 * 0.966948 * 4.000000 1.000000 19 Si1 c 0.547700 * 0.871500 * 0.285000 * 4.000000 1.000000 20 Si1 c 0.547700 * 0.870826 * 0.466948 * 4.000000 1.000000 21 Si1 c 0.692855 * 0.371500 * 0.466948 * 4.000000 1.000000 22 Si1 c 0.692855 * 0.370826 * 0.285000 * 4.000000 1.000000 23 Si1 c 0.692855 * 0.871500 * 0.966948 * 4.000000 1.000000 24 Si1 c 0.692855 * 0.870826 * 0.785000 * 4.000000 1.000000 25 Si1 c 0.797700 * 0.121500 * 0.716948 * 4.000000 1.000000 26 Si1 c 0.797700 * 0.120826 * 0.535000 * 4.000000 1.000000 27 Si1 c 0.797700 * 0.621500 * 0.216948 * 4.000000 1.000000 28 Si1 c 0.797700 * 0.620826 * 0.035000 * 4.000000 1.000000 29 Si1 c 0.942855 * 0.121500 * 0.035000 * 4.000000 1.000000 30 Si1 c 0.942855 * 0.120826 * 0.216948 * 4.000000 1.000000 31 Si1 c 0.942855 * 0.621500 * 0.535000 * 4.000000 1.000000 32 Si1 c 0.942855 * 0.620826 * 0.716948 * 4.000000 1.000000 33 Si2 c 0.030977 * 0.301318 * 0.123550 * 4.000000 1.000000 34 Si2 c 0.030977 * 0.441009 * 0.628398 * 4.000000 1.000000 35 Si2 c 0.030977 * 0.801318 * 0.623550 * 4.000000 1.000000 36 Si2 c 0.030977 * 0.941009 * 0.128398 * 4.000000 1.000000 37 Si2 c 0.209578 * 0.301318 * 0.128398 * 4.000000 1.000000 38 Si2 c 0.209578 * 0.441009 * 0.623550 * 4.000000 1.000000 39 Si2 c 0.209578 * 0.801318 * 0.628398 * 4.000000 1.000000 40 Si2 c 0.209578 * 0.941009 * 0.123550 * 4.000000 1.000000 41 Si2 c 0.280977 * 0.051318 * 0.378398 * 4.000000 1.000000 42 Si2 c 0.280977 * 0.191009 * 0.873550 * 4.000000 1.000000 43 Si2 c 0.280977 * 0.551318 * 0.878398 * 4.000000 1.000000 44 Si2 c 0.280977 * 0.691009 * 0.373550 * 4.000000 1.000000 45 Si2 c 0.459578 * 0.051318 * 0.373550 * 4.000000 1.000000 46 Si2 c 0.459578 * 0.191009 * 0.878398 * 4.000000 1.000000 47 Si2 c 0.459578 * 0.551318 * 0.873550 * 4.000000 1.000000 48 Si2 c 0.459578 * 0.691009 * 0.378398 * 4.000000 1.000000 49 Si2 c 0.530977 * 0.301318 * 0.623550 * 4.000000 1.000000 50 Si2 c 0.530977 * 0.441009 * 0.128398 * 4.000000 1.000000 51 Si2 c 0.530977 * 0.801318 * 0.123550 * 4.000000 1.000000 52 Si2 c 0.530977 * 0.941009 * 0.628398 * 4.000000 1.000000 53 Si2 c 0.709578 * 0.301318 * 0.628398 * 4.000000 1.000000 54 Si2 c 0.709578 * 0.441009 * 0.123550 * 4.000000 1.000000 55 Si2 c 0.709578 * 0.801318 * 0.128398 * 4.000000 1.000000 56 Si2 c 0.709578 * 0.941009 * 0.623550 * 4.000000 1.000000 57 Si2 c 0.780977 * 0.051318 * 0.878398 * 4.000000 1.000000 58 Si2 c 0.780977 * 0.191009 * 0.373550 * 4.000000 1.000000 59 Si2 c 0.780977 * 0.551318 * 0.378398 * 4.000000 1.000000 60 Si2 c 0.780977 * 0.691009 * 0.873550 * 4.000000 1.000000 61 Si2 c 0.959578 * 0.051318 * 0.873550 * 4.000000 1.000000 62 Si2 c 0.959578 * 0.191009 * 0.378398 * 4.000000 1.000000 63 Si2 c 0.959578 * 0.551318 * 0.373550 * 4.000000 1.000000 64 Si2 c 0.959578 * 0.691009 * 0.878398 * 4.000000 1.000000 65 Si3 c 0.117937 * 0.030798 * 0.310135 * 4.000000 1.000000 66 Si3 c 0.117937 * 0.211529 * 0.941813 * 4.000000 1.000000 67 Si3 c 0.117937 * 0.530798 * 0.810135 * 4.000000 1.000000 68 Si3 c 0.117937 * 0.711529 * 0.441813 * 4.000000 1.000000 69 Si3 c 0.122619 * 0.030798 * 0.941813 * 4.000000 1.000000 70 Si3 c 0.122619 * 0.211529 * 0.310135 * 4.000000 1.000000 71 Si3 c 0.122619 * 0.530798 * 0.441813 * 4.000000 1.000000 72 Si3 c 0.122619 * 0.711529 * 0.810135 * 4.000000 1.000000 73 Si3 c 0.367937 * 0.280798 * 0.691813 * 4.000000 1.000000 74 Si3 c 0.367937 * 0.461529 * 0.060135 * 4.000000 1.000000 75 Si3 c 0.367937 * 0.780798 * 0.191813 * 4.000000 1.000000 76 Si3 c 0.367937 * 0.961529 * 0.560135 * 4.000000 1.000000 77 Si3 c 0.372619 * 0.280798 * 0.060135 * 4.000000 1.000000 78 Si3 c 0.372619 * 0.461529 * 0.691813 * 4.000000 1.000000 79 Si3 c 0.372619 * 0.780798 * 0.560135 * 4.000000 1.000000 80 Si3 c 0.372619 * 0.961529 * 0.191813 * 4.000000 1.000000 81 Si3 c 0.617937 * 0.030798 * 0.810135 * 4.000000 1.000000 82 Si3 c 0.617937 * 0.211529 * 0.441813 * 4.000000 1.000000 83 Si3 c 0.617937 * 0.530798 * 0.310135 * 4.000000 1.000000 84 Si3 c 0.617937 * 0.711529 * 0.941813 * 4.000000 1.000000 85 Si3 c 0.622619 * 0.030798 * 0.441813 * 4.000000 1.000000 86 Si3 c 0.622619 * 0.211529 * 0.810135 * 4.000000 1.000000 87 Si3 c 0.622619 * 0.530798 * 0.941813 * 4.000000 1.000000 88 Si3 c 0.622619 * 0.711529 * 0.310135 * 4.000000 1.000000 89 Si3 c 0.867937 * 0.280798 * 0.191813 * 4.000000 1.000000 90 Si3 c 0.867937 * 0.461529 * 0.560135 * 4.000000 1.000000 91 Si3 c 0.867937 * 0.780798 * 0.691813 * 4.000000 1.000000 92 Si3 c 0.867937 * 0.961529 * 0.060135 * 4.000000 1.000000 93 Si3 c 0.872619 * 0.280798 * 0.560135 * 4.000000 1.000000 94 Si3 c 0.872619 * 0.461529 * 0.191813 * 4.000000 1.000000 95 Si3 c 0.872619 * 0.780798 * 0.060135 * 4.000000 1.000000 96 Si3 c 0.872619 * 0.961529 * 0.691813 * 4.000000 1.000000 97 Al1 c 0.049800 * 0.282425 * 0.376815 * 3.000000 1.000000 98 Al1 c 0.049800 * 0.459901 * 0.375133 * 3.000000 1.000000 99 Al1 c 0.049800 * 0.782425 * 0.876815 * 3.000000 1.000000 100 Al1 c 0.049800 * 0.959901 * 0.875133 * 3.000000 1.000000 101 Al1 c 0.190755 * 0.282425 * 0.875133 * 3.000000 1.000000 102 Al1 c 0.190755 * 0.459901 * 0.876815 * 3.000000 1.000000 103 Al1 c 0.190755 * 0.782425 * 0.375133 * 3.000000 1.000000 104 Al1 c 0.190755 * 0.959901 * 0.376815 * 3.000000 1.000000 105 Al1 c 0.299800 * 0.032425 * 0.125133 * 3.000000 1.000000 106 Al1 c 0.299800 * 0.209901 * 0.126815 * 3.000000 1.000000 107 Al1 c 0.299800 * 0.532425 * 0.625133 * 3.000000 1.000000 108 Al1 c 0.299800 * 0.709901 * 0.626815 * 3.000000 1.000000 109 Al1 c 0.440755 * 0.032425 * 0.626815 * 3.000000 1.000000 110 Al1 c 0.440755 * 0.209901 * 0.625133 * 3.000000 1.000000 111 Al1 c 0.440755 * 0.532425 * 0.126815 * 3.000000 1.000000 112 Al1 c 0.440755 * 0.709901 * 0.125133 * 3.000000 1.000000 113 Al1 c 0.549800 * 0.282425 * 0.876815 * 3.000000 1.000000 114 Al1 c 0.549800 * 0.459901 * 0.875133 * 3.000000 1.000000 115 Al1 c 0.549800 * 0.782425 * 0.376815 * 3.000000 1.000000 116 Al1 c 0.549800 * 0.959901 * 0.375133 * 3.000000 1.000000 117 Al1 c 0.690755 * 0.282425 * 0.375133 * 3.000000 1.000000 118 Al1 c 0.690755 * 0.459901 * 0.376815 * 3.000000 1.000000 119 Al1 c 0.690755 * 0.782425 * 0.875133 * 3.000000 1.000000 120 Al1 c 0.690755 * 0.959901 * 0.876815 * 3.000000 1.000000 121 Al1 c 0.799800 * 0.032425 * 0.625133 * 3.000000 1.000000 122 Al1 c 0.799800 * 0.209901 * 0.626815 * 3.000000 1.000000 123 Al1 c 0.799800 * 0.532425 * 0.125133 * 3.000000 1.000000 124 Al1 c 0.799800 * 0.709901 * 0.126815 * 3.000000 1.000000 125 Al1 c 0.940755 * 0.032425 * 0.126815 * 3.000000 1.000000 126 Al1 c 0.940755 * 0.209901 * 0.125133 * 3.000000 1.000000 127 Al1 c 0.940755 * 0.532425 * 0.626815 * 3.000000 1.000000 128 Al1 c 0.940755 * 0.709901 * 0.625133 * 3.000000 1.000000 129 Al2 c 0.118880 * 0.299227 * 0.215528 * 3.000000 1.000000 130 Al2 c 0.118880 * 0.443099 * 0.536420 * 3.000000 1.000000 131 Al2 c 0.118880 * 0.799227 * 0.715528 * 3.000000 1.000000 132 Al2 c 0.118880 * 0.943099 * 0.036420 * 3.000000 1.000000 133 Al2 c 0.121675 * 0.299227 * 0.036420 * 3.000000 1.000000 134 Al2 c 0.121675 * 0.443099 * 0.715528 * 3.000000 1.000000 135 Al2 c 0.121675 * 0.799227 * 0.536420 * 3.000000 1.000000 136 Al2 c 0.121675 * 0.943099 * 0.215528 * 3.000000 1.000000 137 Al2 c 0.368880 * 0.049227 * 0.286420 * 3.000000 1.000000 138 Al2 c 0.368880 * 0.193099 * 0.965528 * 3.000000 1.000000 139 Al2 c 0.368880 * 0.549227 * 0.786420 * 3.000000 1.000000 140 Al2 c 0.368880 * 0.693099 * 0.465528 * 3.000000 1.000000 141 Al2 c 0.371675 * 0.049227 * 0.465528 * 3.000000 1.000000 142 Al2 c 0.371675 * 0.193099 * 0.786420 * 3.000000 1.000000 143 Al2 c 0.371675 * 0.549227 * 0.965528 * 3.000000 1.000000 144 Al2 c 0.371675 * 0.693099 * 0.286420 * 3.000000 1.000000 145 Al2 c 0.618880 * 0.299227 * 0.715528 * 3.000000 1.000000 146 Al2 c 0.618880 * 0.443099 * 0.036420 * 3.000000 1.000000 147 Al2 c 0.618880 * 0.799227 * 0.215528 * 3.000000 1.000000 148 Al2 c 0.618880 * 0.943099 * 0.536420 * 3.000000 1.000000 149 Al2 c 0.621675 * 0.299227 * 0.536420 * 3.000000 1.000000 150 Al2 c 0.621675 * 0.443099 * 0.215528 * 3.000000 1.000000 151 Al2 c 0.621675 * 0.799227 * 0.036420 * 3.000000 1.000000 152 Al2 c 0.621675 * 0.943099 * 0.715528 * 3.000000 1.000000 153 Al2 c 0.868880 * 0.049227 * 0.786420 * 3.000000 1.000000 154 Al2 c 0.868880 * 0.193099 * 0.465528 * 3.000000 1.000000 155 Al2 c 0.868880 * 0.549227 * 0.286420 * 3.000000 1.000000 156 Al2 c 0.868880 * 0.693099 * 0.965528 * 3.000000 1.000000 157 Al2 c 0.871675 * 0.049227 * 0.965528 * 3.000000 1.000000 158 Al2 c 0.871675 * 0.193099 * 0.286420 * 3.000000 1.000000 159 Al2 c 0.871675 * 0.549227 * 0.465528 * 3.000000 1.000000 160 Al2 c 0.871675 * 0.693099 * 0.786420 * 3.000000 1.000000 161 Al3 c 0.032228 * 0.120624 * 0.310417 * 3.000000 1.000000 162 Al3 c 0.032228 * 0.121702 * 0.941531 * 3.000000 1.000000 163 Al3 c 0.032228 * 0.620624 * 0.810417 * 3.000000 1.000000 164 Al3 c 0.032228 * 0.621702 * 0.441531 * 3.000000 1.000000 165 Al3 c 0.208328 * 0.120624 * 0.941531 * 3.000000 1.000000 166 Al3 c 0.208328 * 0.121702 * 0.310417 * 3.000000 1.000000 167 Al3 c 0.208328 * 0.620624 * 0.441531 * 3.000000 1.000000 168 Al3 c 0.208328 * 0.621702 * 0.810417 * 3.000000 1.000000 169 Al3 c 0.282228 * 0.370624 * 0.691531 * 3.000000 1.000000 170 Al3 c 0.282228 * 0.371702 * 0.060417 * 3.000000 1.000000 171 Al3 c 0.282228 * 0.870624 * 0.191531 * 3.000000 1.000000 172 Al3 c 0.282228 * 0.871702 * 0.560417 * 3.000000 1.000000 173 Al3 c 0.458328 * 0.370624 * 0.060417 * 3.000000 1.000000 174 Al3 c 0.458328 * 0.371702 * 0.691531 * 3.000000 1.000000 175 Al3 c 0.458328 * 0.870624 * 0.560417 * 3.000000 1.000000 176 Al3 c 0.458328 * 0.871702 * 0.191531 * 3.000000 1.000000 177 Al3 c 0.532228 * 0.120624 * 0.810417 * 3.000000 1.000000 178 Al3 c 0.532228 * 0.121702 * 0.441531 * 3.000000 1.000000 179 Al3 c 0.532228 * 0.620624 * 0.310417 * 3.000000 1.000000 180 Al3 c 0.532228 * 0.621702 * 0.941531 * 3.000000 1.000000 181 Al3 c 0.708328 * 0.120624 * 0.441531 * 3.000000 1.000000 182 Al3 c 0.708328 * 0.121702 * 0.810417 * 3.000000 1.000000 183 Al3 c 0.708328 * 0.620624 * 0.941531 * 3.000000 1.000000 184 Al3 c 0.708328 * 0.621702 * 0.310417 * 3.000000 1.000000 185 Al3 c 0.782228 * 0.370624 * 0.191531 * 3.000000 1.000000 186 Al3 c 0.782228 * 0.371702 * 0.560417 * 3.000000 1.000000 187 Al3 c 0.782228 * 0.870624 * 0.691531 * 3.000000 1.000000 188 Al3 c 0.782228 * 0.871702 * 0.060417 * 3.000000 1.000000 189 Al3 c 0.958328 * 0.370624 * 0.560417 * 3.000000 1.000000 190 Al3 c 0.958328 * 0.371702 * 0.191531 * 3.000000 1.000000 191 Al3 c 0.958328 * 0.870624 * 0.060417 * 3.000000 1.000000 192 Al3 c 0.958328 * 0.871702 * 0.691531 * 3.000000 1.000000 193 O2 c 0.108029 * 0.250889 * 0.358794 * 0.869020 1.000000 194 O2 c 0.108029 * 0.491438 * 0.393154 * 0.869020 1.000000 195 O2 c 0.108029 * 0.750889 * 0.858794 * 0.869020 1.000000 196 O2 c 0.108029 * 0.991438 * 0.893154 * 0.869020 1.000000 197 O2 c 0.132527 * 0.250889 * 0.893154 * 0.869020 1.000000 198 O2 c 0.132527 * 0.491438 * 0.858794 * 0.869020 1.000000 199 O2 c 0.132527 * 0.750889 * 0.393154 * 0.869020 1.000000 200 O2 c 0.132527 * 0.991438 * 0.358794 * 0.869020 1.000000 201 O2 c 0.358029 * 0.000889 * 0.143154 * 0.869020 1.000000 202 O2 c 0.358029 * 0.241438 * 0.108794 * 0.869020 1.000000 203 O2 c 0.358029 * 0.500889 * 0.643154 * 0.869020 1.000000 204 O2 c 0.358029 * 0.741438 * 0.608794 * 0.869020 1.000000 205 O2 c 0.382527 * 0.000889 * 0.608794 * 0.869020 1.000000 206 O2 c 0.382527 * 0.241438 * 0.643154 * 0.869020 1.000000 207 O2 c 0.382527 * 0.500889 * 0.108794 * 0.869020 1.000000 208 O2 c 0.382527 * 0.741438 * 0.143154 * 0.869020 1.000000 209 O2 c 0.608029 * 0.250889 * 0.858794 * 0.869020 1.000000 210 O2 c 0.608029 * 0.491438 * 0.893154 * 0.869020 1.000000 211 O2 c 0.608029 * 0.750889 * 0.358794 * 0.869020 1.000000 212 O2 c 0.608029 * 0.991438 * 0.393154 * 0.869020 1.000000 213 O2 c 0.632527 * 0.250889 * 0.393154 * 0.869020 1.000000 214 O2 c 0.632527 * 0.491438 * 0.358794 * 0.869020 1.000000 215 O2 c 0.632527 * 0.750889 * 0.893154 * 0.869020 1.000000 216 O2 c 0.632527 * 0.991438 * 0.858794 * 0.869020 1.000000 217 O2 c 0.858029 * 0.000889 * 0.643154 * 0.869020 1.000000 218 O2 c 0.858029 * 0.241438 * 0.608794 * 0.869020 1.000000 219 O2 c 0.858029 * 0.500889 * 0.143154 * 0.869020 1.000000 220 O2 c 0.858029 * 0.741438 * 0.108794 * 0.869020 1.000000 221 O2 c 0.882527 * 0.000889 * 0.108794 * 0.869020 1.000000 222 O2 c 0.882527 * 0.241438 * 0.143154 * 0.869020 1.000000 223 O2 c 0.882527 * 0.500889 * 0.608794 * 0.869020 1.000000 224 O2 c 0.882527 * 0.741438 * 0.643154 * 0.869020 1.000000 225 O2 c 0.099638 * 0.355489 * 0.250874 * 0.869020 1.000000 226 O2 c 0.099638 * 0.386838 * 0.501074 * 0.869020 1.000000 227 O2 c 0.099638 * 0.855489 * 0.750874 * 0.869020 1.000000 228 O2 c 0.099638 * 0.886838 * 0.001074 * 0.869020 1.000000 229 O2 c 0.140918 * 0.355489 * 0.001074 * 0.869020 1.000000 230 O2 c 0.140918 * 0.386838 * 0.750874 * 0.869020 1.000000 231 O2 c 0.140918 * 0.855489 * 0.501074 * 0.869020 1.000000 232 O2 c 0.140918 * 0.886838 * 0.250874 * 0.869020 1.000000 233 O2 c 0.349638 * 0.105489 * 0.251074 * 0.869020 1.000000 234 O2 c 0.349638 * 0.136838 * 0.000874 * 0.869020 1.000000 235 O2 c 0.349638 * 0.605489 * 0.751074 * 0.869020 1.000000 236 O2 c 0.349638 * 0.636838 * 0.500874 * 0.869020 1.000000 237 O2 c 0.390918 * 0.105489 * 0.500874 * 0.869020 1.000000 238 O2 c 0.390918 * 0.136838 * 0.751074 * 0.869020 1.000000 239 O2 c 0.390918 * 0.605489 * 0.000874 * 0.869020 1.000000 240 O2 c 0.390918 * 0.636838 * 0.251074 * 0.869020 1.000000 241 O2 c 0.599638 * 0.355489 * 0.750874 * 0.869020 1.000000 242 O2 c 0.599638 * 0.386838 * 0.001074 * 0.869020 1.000000 243 O2 c 0.599638 * 0.855489 * 0.250874 * 0.869020 1.000000 244 O2 c 0.599638 * 0.886838 * 0.501074 * 0.869020 1.000000 245 O2 c 0.640918 * 0.355489 * 0.501074 * 0.869020 1.000000 246 O2 c 0.640918 * 0.386838 * 0.250874 * 0.869020 1.000000 247 O2 c 0.640918 * 0.855489 * 0.001074 * 0.869020 1.000000 248 O2 c 0.640918 * 0.886838 * 0.750874 * 0.869020 1.000000 249 O2 c 0.849638 * 0.105489 * 0.751074 * 0.869020 1.000000 250 O2 c 0.849638 * 0.136838 * 0.500874 * 0.869020 1.000000 251 O2 c 0.849638 * 0.605489 * 0.251074 * 0.869020 1.000000 252 O2 c 0.849638 * 0.636838 * 0.000874 * 0.869020 1.000000 253 O2 c 0.890918 * 0.105489 * 0.000874 * 0.869020 1.000000 254 O2 c 0.890918 * 0.136838 * 0.251074 * 0.869020 1.000000 255 O2 c 0.890918 * 0.605489 * 0.500874 * 0.869020 1.000000 256 O2 c 0.890918 * 0.636838 * 0.751074 * 0.869020 1.000000 257 O2 c 0.000951 * 0.355039 * 0.139852 * 0.869020 1.000000 258 O2 c 0.000951 * 0.387287 * 0.612097 * 0.869020 1.000000 259 O2 c 0.000951 * 0.855039 * 0.639852 * 0.869020 1.000000 260 O2 c 0.000951 * 0.887287 * 0.112096 * 0.869020 1.000000 261 O2 c 0.239604 * 0.355039 * 0.112096 * 0.869020 1.000000 262 O2 c 0.239604 * 0.387287 * 0.639852 * 0.869020 1.000000 263 O2 c 0.239604 * 0.855039 * 0.612097 * 0.869020 1.000000 264 O2 c 0.239604 * 0.887287 * 0.139852 * 0.869020 1.000000 265 O2 c 0.250951 * 0.105039 * 0.362096 * 0.869020 1.000000 266 O2 c 0.250951 * 0.137287 * 0.889852 * 0.869020 1.000000 267 O2 c 0.250951 * 0.605039 * 0.862097 * 0.869020 1.000000 268 O2 c 0.250951 * 0.637287 * 0.389852 * 0.869020 1.000000 269 O2 c 0.489604 * 0.105039 * 0.389852 * 0.869020 1.000000 270 O2 c 0.489604 * 0.137287 * 0.862097 * 0.869020 1.000000 271 O2 c 0.489604 * 0.605039 * 0.889852 * 0.869020 1.000000 272 O2 c 0.489604 * 0.637287 * 0.362096 * 0.869020 1.000000 273 O2 c 0.500951 * 0.355039 * 0.639852 * 0.869020 1.000000 274 O2 c 0.500951 * 0.387287 * 0.112096 * 0.869020 1.000000 275 O2 c 0.500951 * 0.855039 * 0.139852 * 0.869020 1.000000 276 O2 c 0.500951 * 0.887287 * 0.612097 * 0.869020 1.000000 277 O2 c 0.739604 * 0.355039 * 0.612097 * 0.869020 1.000000 278 O2 c 0.739604 * 0.387287 * 0.139852 * 0.869020 1.000000 279 O2 c 0.739604 * 0.855039 * 0.112096 * 0.869020 1.000000 280 O2 c 0.739604 * 0.887287 * 0.639852 * 0.869020 1.000000 281 O2 c 0.750951 * 0.105039 * 0.862097 * 0.869020 1.000000 282 O2 c 0.750951 * 0.137287 * 0.389852 * 0.869020 1.000000 283 O2 c 0.750951 * 0.605039 * 0.362096 * 0.869020 1.000000 284 O2 c 0.750951 * 0.637287 * 0.889852 * 0.869020 1.000000 285 O2 c 0.989604 * 0.105039 * 0.889852 * 0.869020 1.000000 286 O2 c 0.989604 * 0.137287 * 0.362096 * 0.869020 1.000000 287 O2 c 0.989604 * 0.605039 * 0.389852 * 0.869020 1.000000 288 O2 c 0.989604 * 0.637287 * 0.862097 * 0.869020 1.000000 289 O2 c 0.999017 * 0.003015 * 0.860867 * 0.869020 1.000000 290 O2 c 0.999017 * 0.239311 * 0.391081 * 0.869020 1.000000 291 O2 c 0.999017 * 0.503015 * 0.360867 * 0.869020 1.000000 292 O2 c 0.999017 * 0.739311 * 0.891081 * 0.869020 1.000000 293 O2 c 0.241539 * 0.003015 * 0.391081 * 0.869020 1.000000 294 O2 c 0.241539 * 0.239311 * 0.860867 * 0.869020 1.000000 295 O2 c 0.241539 * 0.503015 * 0.891081 * 0.869020 1.000000 296 O2 c 0.241539 * 0.739311 * 0.360867 * 0.869020 1.000000 297 O2 c 0.249016 * 0.253015 * 0.141081 * 0.869020 1.000000 298 O2 c 0.249016 * 0.489311 * 0.610867 * 0.869020 1.000000 299 O2 c 0.249016 * 0.753015 * 0.641081 * 0.869020 1.000000 300 O2 c 0.249016 * 0.989311 * 0.110867 * 0.869020 1.000000 301 O2 c 0.491539 * 0.253015 * 0.610867 * 0.869020 1.000000 302 O2 c 0.491539 * 0.489311 * 0.141081 * 0.869020 1.000000 303 O2 c 0.491539 * 0.753015 * 0.110867 * 0.869020 1.000000 304 O2 c 0.491539 * 0.989311 * 0.641081 * 0.869020 1.000000 305 O2 c 0.499016 * 0.003015 * 0.360867 * 0.869020 1.000000 306 O2 c 0.499016 * 0.239311 * 0.891081 * 0.869020 1.000000 307 O2 c 0.499016 * 0.503015 * 0.860867 * 0.869020 1.000000 308 O2 c 0.499016 * 0.739311 * 0.391081 * 0.869020 1.000000 309 O2 c 0.741539 * 0.003015 * 0.891081 * 0.869020 1.000000 310 O2 c 0.741539 * 0.239311 * 0.360867 * 0.869020 1.000000 311 O2 c 0.741539 * 0.503015 * 0.391081 * 0.869020 1.000000 312 O2 c 0.741539 * 0.739311 * 0.860867 * 0.869020 1.000000 313 O2 c 0.749016 * 0.253015 * 0.641081 * 0.869020 1.000000 314 O2 c 0.749016 * 0.489311 * 0.110867 * 0.869020 1.000000 315 O2 c 0.749016 * 0.753015 * 0.141081 * 0.869020 1.000000 316 O2 c 0.749016 * 0.989311 * 0.610867 * 0.869020 1.000000 317 O2 c 0.991539 * 0.253015 * 0.110867 * 0.869020 1.000000 318 O2 c 0.991539 * 0.489311 * 0.641081 * 0.869020 1.000000 319 O2 c 0.991539 * 0.753015 * 0.610867 * 0.869020 1.000000 320 O2 c 0.991539 * 0.989311 * 0.141081 * 0.869020 1.000000 321 O2 c 0.107568 * 0.995392 * 0.257055 * 0.869020 1.000000 322 O2 c 0.107568 * 0.246935 * 0.994893 * 0.869020 1.000000 323 O2 c 0.107568 * 0.495391 * 0.757055 * 0.869020 1.000000 324 O2 c 0.107568 * 0.746935 * 0.494893 * 0.869020 1.000000 325 O2 c 0.132988 * 0.995392 * 0.994893 * 0.869020 1.000000 326 O2 c 0.132988 * 0.246935 * 0.257055 * 0.869020 1.000000 327 O2 c 0.132988 * 0.495391 * 0.494893 * 0.869020 1.000000 328 O2 c 0.132988 * 0.746935 * 0.757055 * 0.869020 1.000000 329 O2 c 0.357568 * 0.245391 * 0.744893 * 0.869020 1.000000 330 O2 c 0.357568 * 0.496935 * 0.007055 * 0.869020 1.000000 331 O2 c 0.357568 * 0.745391 * 0.244893 * 0.869020 1.000000 332 O2 c 0.357568 * 0.996936 * 0.507055 * 0.869020 1.000000 333 O2 c 0.382988 * 0.245391 * 0.007055 * 0.869020 1.000000 334 O2 c 0.382988 * 0.496935 * 0.744893 * 0.869020 1.000000 335 O2 c 0.382988 * 0.745391 * 0.507055 * 0.869020 1.000000 336 O2 c 0.382988 * 0.996936 * 0.244893 * 0.869020 1.000000 337 O2 c 0.607568 * 0.995392 * 0.757055 * 0.869020 1.000000 338 O2 c 0.607568 * 0.246935 * 0.494893 * 0.869020 1.000000 339 O2 c 0.607568 * 0.495391 * 0.257055 * 0.869020 1.000000 340 O2 c 0.607568 * 0.746935 * 0.994893 * 0.869020 1.000000 341 O2 c 0.632988 * 0.995392 * 0.494893 * 0.869020 1.000000 342 O2 c 0.632988 * 0.246935 * 0.757055 * 0.869020 1.000000 343 O2 c 0.632988 * 0.495391 * 0.994893 * 0.869020 1.000000 344 O2 c 0.632988 * 0.746935 * 0.257055 * 0.869020 1.000000 345 O2 c 0.857568 * 0.245391 * 0.244893 * 0.869020 1.000000 346 O2 c 0.857568 * 0.496935 * 0.507055 * 0.869020 1.000000 347 O2 c 0.857568 * 0.745391 * 0.744893 * 0.869020 1.000000 348 O2 c 0.857568 * 0.996936 * 0.007055 * 0.869020 1.000000 349 O2 c 0.882988 * 0.245391 * 0.507055 * 0.869020 1.000000 350 O2 c 0.882988 * 0.496935 * 0.244893 * 0.869020 1.000000 351 O2 c 0.882988 * 0.745391 * 0.007055 * 0.869020 1.000000 352 O2 c 0.882988 * 0.996936 * 0.744893 * 0.869020 1.000000 353 O2 c 0.992841 * 0.108660 * 0.254504 * 0.869020 1.000000 354 O2 c 0.992841 * 0.133667 * 0.997445 * 0.869020 1.000000 355 O2 c 0.992841 * 0.608660 * 0.754504 * 0.869020 1.000000 356 O2 c 0.992841 * 0.633667 * 0.497445 * 0.869020 1.000000 357 O2 c 0.247715 * 0.108660 * 0.997445 * 0.869020 1.000000 358 O2 c 0.247715 * 0.133667 * 0.254504 * 0.869020 1.000000 359 O2 c 0.247715 * 0.608660 * 0.497445 * 0.869020 1.000000 360 O2 c 0.247715 * 0.633667 * 0.754504 * 0.869020 1.000000 361 O2 c 0.242841 * 0.358660 * 0.747445 * 0.869020 1.000000 362 O2 c 0.242841 * 0.383667 * 0.004504 * 0.869020 1.000000 363 O2 c 0.242841 * 0.858660 * 0.247445 * 0.869020 1.000000 364 O2 c 0.242841 * 0.883667 * 0.504504 * 0.869020 1.000000 365 O2 c 0.497715 * 0.358660 * 0.004504 * 0.869020 1.000000 366 O2 c 0.497715 * 0.383667 * 0.747445 * 0.869020 1.000000 367 O2 c 0.497715 * 0.858660 * 0.504504 * 0.869020 1.000000 368 O2 c 0.497715 * 0.883667 * 0.247445 * 0.869020 1.000000 369 O2 c 0.492841 * 0.108660 * 0.754504 * 0.869020 1.000000 370 O2 c 0.492841 * 0.133667 * 0.497445 * 0.869020 1.000000 371 O2 c 0.492841 * 0.608660 * 0.254504 * 0.869020 1.000000 372 O2 c 0.492841 * 0.633667 * 0.997445 * 0.869020 1.000000 373 O2 c 0.747715 * 0.108660 * 0.497445 * 0.869020 1.000000 374 O2 c 0.747715 * 0.133667 * 0.754504 * 0.869020 1.000000 375 O2 c 0.747715 * 0.608660 * 0.997445 * 0.869020 1.000000 376 O2 c 0.747715 * 0.633667 * 0.254504 * 0.869020 1.000000 377 O2 c 0.742841 * 0.358660 * 0.247445 * 0.869020 1.000000 378 O2 c 0.742841 * 0.383667 * 0.504504 * 0.869020 1.000000 379 O2 c 0.742841 * 0.858660 * 0.747445 * 0.869020 1.000000 380 O2 c 0.742841 * 0.883667 * 0.004504 * 0.869020 1.000000 381 O2 c 0.997715 * 0.358660 * 0.504504 * 0.869020 1.000000 382 O2 c 0.997715 * 0.383667 * 0.247445 * 0.869020 1.000000 383 O2 c 0.997715 * 0.858660 * 0.004504 * 0.869020 1.000000 384 O2 c 0.997715 * 0.883667 * 0.747445 * 0.869020 1.000000 385 O2 c 0.031572 * 0.324073 * 0.325015 * 0.869020 1.000000 386 O2 c 0.031572 * 0.418254 * 0.426933 * 0.869020 1.000000 387 O2 c 0.031572 * 0.824073 * 0.825015 * 0.869020 1.000000 388 O2 c 0.031572 * 0.918254 * 0.926933 * 0.869020 1.000000 389 O2 c 0.208983 * 0.324073 * 0.926933 * 0.869020 1.000000 390 O2 c 0.208983 * 0.418254 * 0.825015 * 0.869020 1.000000 391 O2 c 0.208983 * 0.824073 * 0.426933 * 0.869020 1.000000 392 O2 c 0.208983 * 0.918254 * 0.325015 * 0.869020 1.000000 393 O2 c 0.281572 * 0.074073 * 0.176933 * 0.869020 1.000000 394 O2 c 0.281572 * 0.168254 * 0.075015 * 0.869020 1.000000 395 O2 c 0.281572 * 0.574073 * 0.676933 * 0.869020 1.000000 396 O2 c 0.281572 * 0.668254 * 0.575015 * 0.869020 1.000000 397 O2 c 0.458983 * 0.074073 * 0.575015 * 0.869020 1.000000 398 O2 c 0.458983 * 0.168254 * 0.676933 * 0.869020 1.000000 399 O2 c 0.458983 * 0.574073 * 0.075015 * 0.869020 1.000000 400 O2 c 0.458983 * 0.668254 * 0.176933 * 0.869020 1.000000 401 O2 c 0.531572 * 0.324073 * 0.825015 * 0.869020 1.000000 402 O2 c 0.531572 * 0.418254 * 0.926933 * 0.869020 1.000000 403 O2 c 0.531572 * 0.824073 * 0.325015 * 0.869020 1.000000 404 O2 c 0.531572 * 0.918254 * 0.426933 * 0.869020 1.000000 405 O2 c 0.708983 * 0.324073 * 0.426933 * 0.869020 1.000000 406 O2 c 0.708983 * 0.418254 * 0.325015 * 0.869020 1.000000 407 O2 c 0.708983 * 0.824073 * 0.926933 * 0.869020 1.000000 408 O2 c 0.708983 * 0.918254 * 0.825015 * 0.869020 1.000000 409 O2 c 0.781572 * 0.074073 * 0.676933 * 0.869020 1.000000 410 O2 c 0.781572 * 0.168254 * 0.575015 * 0.869020 1.000000 411 O2 c 0.781572 * 0.574073 * 0.176933 * 0.869020 1.000000 412 O2 c 0.781572 * 0.668254 * 0.075015 * 0.869020 1.000000 413 O2 c 0.958983 * 0.074073 * 0.075015 * 0.869020 1.000000 414 O2 c 0.958983 * 0.168254 * 0.176933 * 0.869020 1.000000 415 O2 c 0.958983 * 0.574073 * 0.575015 * 0.869020 1.000000 416 O2 c 0.958983 * 0.668254 * 0.676933 * 0.869020 1.000000 417 O2 c 0.069073 * 0.282185 * 0.171598 * 0.869020 1.000000 418 O2 c 0.069073 * 0.460142 * 0.580350 * 0.869020 1.000000 419 O2 c 0.069073 * 0.782185 * 0.671598 * 0.869020 1.000000 420 O2 c 0.069073 * 0.960142 * 0.080350 * 0.869020 1.000000 421 O2 c 0.171482 * 0.282185 * 0.080350 * 0.869020 1.000000 422 O2 c 0.171482 * 0.460142 * 0.671598 * 0.869020 1.000000 423 O2 c 0.171482 * 0.782185 * 0.580350 * 0.869020 1.000000 424 O2 c 0.171482 * 0.960142 * 0.171598 * 0.869020 1.000000 425 O2 c 0.319073 * 0.032185 * 0.330350 * 0.869020 1.000000 426 O2 c 0.319073 * 0.210142 * 0.921598 * 0.869020 1.000000 427 O2 c 0.319073 * 0.532185 * 0.830350 * 0.869020 1.000000 428 O2 c 0.319073 * 0.710142 * 0.421598 * 0.869020 1.000000 429 O2 c 0.421482 * 0.032185 * 0.421598 * 0.869020 1.000000 430 O2 c 0.421482 * 0.210142 * 0.830350 * 0.869020 1.000000 431 O2 c 0.421482 * 0.532185 * 0.921598 * 0.869020 1.000000 432 O2 c 0.421482 * 0.710142 * 0.330350 * 0.869020 1.000000 433 O2 c 0.569073 * 0.282185 * 0.671598 * 0.869020 1.000000 434 O2 c 0.569073 * 0.460142 * 0.080350 * 0.869020 1.000000 435 O2 c 0.569073 * 0.782185 * 0.171598 * 0.869020 1.000000 436 O2 c 0.569073 * 0.960142 * 0.580350 * 0.869020 1.000000 437 O2 c 0.671482 * 0.282185 * 0.580350 * 0.869020 1.000000 438 O2 c 0.671482 * 0.460142 * 0.171598 * 0.869020 1.000000 439 O2 c 0.671482 * 0.782185 * 0.080350 * 0.869020 1.000000 440 O2 c 0.671482 * 0.960142 * 0.671598 * 0.869020 1.000000 441 O2 c 0.819073 * 0.032185 * 0.830350 * 0.869020 1.000000 442 O2 c 0.819073 * 0.210142 * 0.421598 * 0.869020 1.000000 443 O2 c 0.819073 * 0.532185 * 0.330350 * 0.869020 1.000000 444 O2 c 0.819073 * 0.710142 * 0.921598 * 0.869020 1.000000 445 O2 c 0.921482 * 0.032185 * 0.921598 * 0.869020 1.000000 446 O2 c 0.921482 * 0.210142 * 0.330350 * 0.869020 1.000000 447 O2 c 0.921482 * 0.532185 * 0.421598 * 0.869020 1.000000 448 O2 c 0.921482 * 0.710142 * 0.830350 * 0.869020 1.000000 449 O2 c 0.074309 * 0.069897 * 0.955974 * 0.869020 1.000000 450 O2 c 0.074309 * 0.172429 * 0.295974 * 0.869020 1.000000 451 O2 c 0.074309 * 0.569897 * 0.455974 * 0.869020 1.000000 452 O2 c 0.074309 * 0.672429 * 0.795974 * 0.869020 1.000000 453 O2 c 0.166246 * 0.069897 * 0.295974 * 0.869020 1.000000 454 O2 c 0.166246 * 0.172429 * 0.955974 * 0.869020 1.000000 455 O2 c 0.166246 * 0.569897 * 0.795974 * 0.869020 1.000000 456 O2 c 0.166246 * 0.672429 * 0.455974 * 0.869020 1.000000 457 O2 c 0.324309 * 0.319897 * 0.045974 * 0.869020 1.000000 458 O2 c 0.324309 * 0.422429 * 0.705974 * 0.869020 1.000000 459 O2 c 0.324309 * 0.819897 * 0.545974 * 0.869020 1.000000 460 O2 c 0.324309 * 0.922429 * 0.205974 * 0.869020 1.000000 461 O2 c 0.416246 * 0.319897 * 0.705974 * 0.869020 1.000000 462 O2 c 0.416246 * 0.422429 * 0.045974 * 0.869020 1.000000 463 O2 c 0.416246 * 0.819897 * 0.205974 * 0.869020 1.000000 464 O2 c 0.416246 * 0.922429 * 0.545974 * 0.869020 1.000000 465 O2 c 0.574309 * 0.069897 * 0.455974 * 0.869020 1.000000 466 O2 c 0.574309 * 0.172429 * 0.795974 * 0.869020 1.000000 467 O2 c 0.574309 * 0.569897 * 0.955974 * 0.869020 1.000000 468 O2 c 0.574309 * 0.672429 * 0.295974 * 0.869020 1.000000 469 O2 c 0.666246 * 0.069897 * 0.795974 * 0.869020 1.000000 470 O2 c 0.666246 * 0.172429 * 0.455974 * 0.869020 1.000000 471 O2 c 0.666246 * 0.569897 * 0.295974 * 0.869020 1.000000 472 O2 c 0.666246 * 0.672429 * 0.955974 * 0.869020 1.000000 473 O2 c 0.824309 * 0.319897 * 0.545974 * 0.869020 1.000000 474 O2 c 0.824309 * 0.422429 * 0.205974 * 0.869020 1.000000 475 O2 c 0.824309 * 0.819897 * 0.045974 * 0.869020 1.000000 476 O2 c 0.824309 * 0.922429 * 0.705974 * 0.869020 1.000000 477 O2 c 0.916246 * 0.319897 * 0.205974 * 0.869020 1.000000 478 O2 c 0.916246 * 0.422429 * 0.545974 * 0.869020 1.000000 479 O2 c 0.916246 * 0.819897 * 0.705974 * 0.869020 1.000000 480 O2 c 0.916246 * 0.922429 * 0.045974 * 0.869020 1.000000 481 O2 c 0.063799 * 0.317873 * 0.434520 * 0.869020 1.000000 482 O2 c 0.063799 * 0.424454 * 0.317429 * 0.869020 1.000000 483 O2 c 0.063799 * 0.817873 * 0.934520 * 0.869020 1.000000 484 O2 c 0.063799 * 0.924454 * 0.817429 * 0.869020 1.000000 485 O2 c 0.176756 * 0.317873 * 0.817429 * 0.869020 1.000000 486 O2 c 0.176756 * 0.424454 * 0.934520 * 0.869020 1.000000 487 O2 c 0.176756 * 0.817873 * 0.317429 * 0.869020 1.000000 488 O2 c 0.176756 * 0.924454 * 0.434520 * 0.869020 1.000000 489 O2 c 0.313799 * 0.067873 * 0.067429 * 0.869020 1.000000 490 O2 c 0.313799 * 0.174454 * 0.184520 * 0.869020 1.000000 491 O2 c 0.313799 * 0.567873 * 0.567429 * 0.869020 1.000000 492 O2 c 0.313799 * 0.674454 * 0.684520 * 0.869020 1.000000 493 O2 c 0.426756 * 0.067873 * 0.684520 * 0.869020 1.000000 494 O2 c 0.426756 * 0.174454 * 0.567429 * 0.869020 1.000000 495 O2 c 0.426756 * 0.567873 * 0.184520 * 0.869020 1.000000 496 O2 c 0.426756 * 0.674454 * 0.067429 * 0.869020 1.000000 497 O2 c 0.563799 * 0.317873 * 0.934520 * 0.869020 1.000000 498 O2 c 0.563799 * 0.424454 * 0.817429 * 0.869020 1.000000 499 O2 c 0.563799 * 0.817873 * 0.434520 * 0.869020 1.000000 500 O2 c 0.563799 * 0.924454 * 0.317429 * 0.869020 1.000000 501 O2 c 0.676756 * 0.317873 * 0.317429 * 0.869020 1.000000 502 O2 c 0.676756 * 0.424454 * 0.434520 * 0.869020 1.000000 503 O2 c 0.676756 * 0.817873 * 0.817429 * 0.869020 1.000000 504 O2 c 0.676756 * 0.924454 * 0.934520 * 0.869020 1.000000 505 O2 c 0.813799 * 0.067873 * 0.567429 * 0.869020 1.000000 506 O2 c 0.813799 * 0.174454 * 0.684520 * 0.869020 1.000000 507 O2 c 0.813799 * 0.567873 * 0.067429 * 0.869020 1.000000 508 O2 c 0.813799 * 0.674454 * 0.184520 * 0.869020 1.000000 509 O2 c 0.926756 * 0.067873 * 0.184520 * 0.869020 1.000000 510 O2 c 0.926756 * 0.174454 * 0.067429 * 0.869020 1.000000 511 O2 c 0.926756 * 0.567873 * 0.684520 * 0.869020 1.000000 512 O2 c 0.926756 * 0.674454 * 0.567429 * 0.869020 1.000000 513 O2 c 0.064299 * 0.315796 * 0.070330 * 0.869020 1.000000 514 O2 c 0.064299 * 0.426531 * 0.681618 * 0.869020 1.000000 515 O2 c 0.064299 * 0.815796 * 0.570330 * 0.869020 1.000000 516 O2 c 0.064299 * 0.926531 * 0.181618 * 0.869020 1.000000 517 O2 c 0.176256 * 0.315796 * 0.181618 * 0.869020 1.000000 518 O2 c 0.176256 * 0.426531 * 0.570330 * 0.869020 1.000000 519 O2 c 0.176256 * 0.815796 * 0.681618 * 0.869020 1.000000 520 O2 c 0.176256 * 0.926531 * 0.070330 * 0.869020 1.000000 521 O2 c 0.314299 * 0.065796 * 0.431618 * 0.869020 1.000000 522 O2 c 0.314299 * 0.176531 * 0.820330 * 0.869020 1.000000 523 O2 c 0.314299 * 0.565796 * 0.931618 * 0.869020 1.000000 524 O2 c 0.314299 * 0.676531 * 0.320330 * 0.869020 1.000000 525 O2 c 0.426256 * 0.065796 * 0.320330 * 0.869020 1.000000 526 O2 c 0.426256 * 0.176531 * 0.931618 * 0.869020 1.000000 527 O2 c 0.426256 * 0.565796 * 0.820330 * 0.869020 1.000000 528 O2 c 0.426256 * 0.676531 * 0.431618 * 0.869020 1.000000 529 O2 c 0.564299 * 0.315796 * 0.570330 * 0.869020 1.000000 530 O2 c 0.564299 * 0.426531 * 0.181618 * 0.869020 1.000000 531 O2 c 0.564299 * 0.815796 * 0.070330 * 0.869020 1.000000 532 O2 c 0.564299 * 0.926531 * 0.681618 * 0.869020 1.000000 533 O2 c 0.676256 * 0.315796 * 0.681618 * 0.869020 1.000000 534 O2 c 0.676256 * 0.426531 * 0.070330 * 0.869020 1.000000 535 O2 c 0.676256 * 0.815796 * 0.181618 * 0.869020 1.000000 536 O2 c 0.676256 * 0.926531 * 0.570330 * 0.869020 1.000000 537 O2 c 0.814299 * 0.065796 * 0.931618 * 0.869020 1.000000 538 O2 c 0.814299 * 0.176531 * 0.320330 * 0.869020 1.000000 539 O2 c 0.814299 * 0.565796 * 0.431618 * 0.869020 1.000000 540 O2 c 0.814299 * 0.676531 * 0.820330 * 0.869020 1.000000 541 O2 c 0.926256 * 0.065796 * 0.820330 * 0.869020 1.000000 542 O2 c 0.926256 * 0.176531 * 0.431618 * 0.869020 1.000000 543 O2 c 0.926256 * 0.565796 * 0.320330 * 0.869020 1.000000 544 O2 c 0.926256 * 0.676531 * 0.931618 * 0.869020 1.000000 545 O2 c 0.063371 * 0.060862 * 0.323467 * 0.869020 1.000000 546 O2 c 0.063371 * 0.181465 * 0.928481 * 0.869020 1.000000 547 O2 c 0.063371 * 0.560862 * 0.823467 * 0.869020 1.000000 548 O2 c 0.063371 * 0.681465 * 0.428481 * 0.869020 1.000000 549 O2 c 0.177185 * 0.060862 * 0.928481 * 0.869020 1.000000 550 O2 c 0.177185 * 0.181465 * 0.323467 * 0.869020 1.000000 551 O2 c 0.177185 * 0.560862 * 0.428481 * 0.869020 1.000000 552 O2 c 0.177185 * 0.681465 * 0.823467 * 0.869020 1.000000 553 O2 c 0.313371 * 0.310862 * 0.678481 * 0.869020 1.000000 554 O2 c 0.313371 * 0.431465 * 0.073467 * 0.869020 1.000000 555 O2 c 0.313371 * 0.810862 * 0.178481 * 0.869020 1.000000 556 O2 c 0.313371 * 0.931465 * 0.573467 * 0.869020 1.000000 557 O2 c 0.427185 * 0.310862 * 0.073467 * 0.869020 1.000000 558 O2 c 0.427185 * 0.431465 * 0.678481 * 0.869020 1.000000 559 O2 c 0.427185 * 0.810862 * 0.573467 * 0.869020 1.000000 560 O2 c 0.427185 * 0.931465 * 0.178481 * 0.869020 1.000000 561 O2 c 0.563371 * 0.060862 * 0.823467 * 0.869020 1.000000 562 O2 c 0.563371 * 0.181465 * 0.428481 * 0.869020 1.000000 563 O2 c 0.563371 * 0.560862 * 0.323467 * 0.869020 1.000000 564 O2 c 0.563371 * 0.681465 * 0.928481 * 0.869020 1.000000 565 O2 c 0.677185 * 0.060862 * 0.428481 * 0.869020 1.000000 566 O2 c 0.677185 * 0.181465 * 0.823467 * 0.869020 1.000000 567 O2 c 0.677185 * 0.560862 * 0.928481 * 0.869020 1.000000 568 O2 c 0.677185 * 0.681465 * 0.323467 * 0.869020 1.000000 569 O2 c 0.813371 * 0.310862 * 0.178481 * 0.869020 1.000000 570 O2 c 0.813371 * 0.431465 * 0.573467 * 0.869020 1.000000 571 O2 c 0.813371 * 0.810862 * 0.678481 * 0.869020 1.000000 572 O2 c 0.813371 * 0.931465 * 0.073467 * 0.869020 1.000000 573 O2 c 0.927185 * 0.310862 * 0.573467 * 0.869020 1.000000 574 O2 c 0.927185 * 0.431465 * 0.178481 * 0.869020 1.000000 575 O2 c 0.927185 * 0.810862 * 0.073467 * 0.869020 1.000000 576 O2 c 0.927185 * 0.931465 * 0.678481 * 0.869020 1.000000 577 K c 0.063300 * 0.062800 * 0.065160 * 1.000000 1.000000 578 K c 0.996760 * 0.246700 * 0.255940 * 1.000000 1.000000 579 K c 0.990900 * 0.494580 * 0.494800 * 1.000000 1.000000 580 K c 0.063690 * 0.679010 * 0.687050 * 1.000000 1.000000 581 K c 0.250500 * 0.991380 * 0.260310 * 1.000000 1.000000 582 K c 0.176950 * 0.178130 * 0.064610 * 1.000000 1.000000 583 K c 0.241570 * 0.495720 * 0.747410 * 1.000000 1.000000 584 K c 0.184680 * 0.684120 * 0.565420 * 1.000000 1.000000 585 K c 0.249900 * 0.262140 * 0.992830 * 1.000000 1.000000 586 K c 0.313130 * 0.427990 * 0.814360 * 1.000000 1.000000 587 K c 0.259500 * 0.750780 * 0.494990 * 1.000000 1.000000 588 K c 0.319970 * 0.922290 * 0.315770 * 1.000000 1.000000 589 K c 0.493600 * 0.248720 * 0.755390 * 1.000000 1.000000 590 K c 0.427140 * 0.428060 * 0.936610 * 1.000000 1.000000 591 K c 0.485700 * 0.754880 * 0.258440 * 1.000000 1.000000 592 K c 0.426250 * 0.923990 * 0.432590 * 1.000000 1.000000 593 K c 0.491510 * 0.001270 * 0.508320 * 1.000000 1.000000 594 K c 0.563210 * 0.178050 * 0.686990 * 1.000000 1.000000 595 K c 0.498740 * 0.497140 * 0.001270 * 1.000000 1.000000 596 K c 0.566960 * 0.673590 * 0.182440 * 1.000000 1.000000 597 K c 0.745840 * 0.995600 * 0.753130 * 1.000000 1.000000 598 K c 0.678050 * 0.178270 * 0.564970 * 1.000000 1.000000 599 K c 0.672290 * 0.566340 * 0.182500 * 1.000000 1.000000 600 K c 0.742190 * 0.742080 * 0.001870 * 1.000000 1.000000 601 K c 0.748870 * 0.252970 * 0.498880 * 1.000000 1.000000 602 K c 0.754870 * 0.486460 * 0.258440 * 1.000000 1.000000 603 K c 0.819130 * 0.810780 * 0.936020 * 1.000000 1.000000 604 K c 0.815210 * 0.924230 * 0.819270 * 1.000000 1.000000 605 K c 0.921270 * 0.319670 * 0.315790 * 1.000000 1.000000 606 K c 0.922890 * 0.427200 * 0.432390 * 1.000000 1.000000 607 K c 0.005530 * 0.750830 * 0.751950 * 1.000000 1.000000 608 K c 0.997150 * 0.999770 * 0.002690 * 1.000000 1.000000 609 K c 0.991470 * 0.991320 * 0.256150 * 1.000000 1.000000 610 K c 0.990970 * 0.250120 * 0.996560 * 1.000000 1.000000 611 K c 0.991420 * 0.490880 * 0.754960 * 1.000000 1.000000 612 K c 0.991720 * 0.751370 * 0.496830 * 1.000000 1.000000 613 K c 0.249370 * 0.990930 * 0.996570 * 1.000000 1.000000 614 K c 0.249810 * 0.250630 * 0.255300 * 1.000000 1.000000 615 K c 0.249380 * 0.490830 * 0.496570 * 1.000000 1.000000 616 K c 0.249670 * 0.750810 * 0.755410 * 1.000000 1.000000 617 K c 0.240760 * 0.240640 * 0.746170 * 1.000000 1.000000 618 K c 0.240570 * 0.500340 * 0.005150 * 1.000000 1.000000 619 K c 0.241180 * 0.742100 * 0.247340 * 1.000000 1.000000 620 K c 0.241500 * 0.000380 * 0.505220 * 1.000000 1.000000 621 K c 0.499390 * 0.240490 * 0.005380 * 1.000000 1.000000 622 K c 0.499800 * 0.500250 * 0.746100 * 1.000000 1.000000 623 K c 0.499460 * 0.741830 * 0.505620 * 1.000000 1.000000 624 K c 0.499080 * 0.000640 * 0.246980 * 1.000000 1.000000 625 K c 0.491020 * 0.991220 * 0.755050 * 1.000000 1.000000 626 K c 0.490920 * 0.250100 * 0.496750 * 1.000000 1.000000 627 K c 0.490550 * 0.490710 * 0.255860 * 1.000000 1.000000 628 K c 0.490860 * 0.751110 * 0.995610 * 1.000000 1.000000 629 K c 0.750640 * 0.991640 * 0.496820 * 1.000000 1.000000 630 K c 0.750120 * 0.250320 * 0.755530 * 1.000000 1.000000 631 K c 0.750440 * 0.490570 * 0.995790 * 1.000000 1.000000 632 K c 0.750180 * 0.750820 * 0.256100 * 1.000000 1.000000 633 K c 0.742250 * 0.240930 * 0.247280 * 1.000000 1.000000 634 K c 0.741740 * 0.500000 * 0.505730 * 1.000000 1.000000 635 K c 0.742090 * 0.742080 * 0.746060 * 1.000000 1.000000 636 K c 0.742050 * 0.000580 * 0.005080 * 1.000000 1.000000 637 K c 0.999650 * 0.241450 * 0.505250 * 1.000000 1.000000 638 K c 0.999680 * 0.499900 * 0.247100 * 1.000000 1.000000 639 K c 0.999850 * 0.741680 * 0.004940 * 1.000000 1.000000 640 K c 0.999840 * 0.000460 * 0.747150 * 1.000000 1.000000 641 K c 0.082690 * 0.369890 * 0.875380 * 1.000000 1.000000 642 K c 0.083580 * 0.872370 * 0.376600 * 1.000000 1.000000 643 K c 0.157600 * 0.369690 * 0.376140 * 1.000000 1.000000 644 K c 0.157520 * 0.872060 * 0.876270 * 1.000000 1.000000 645 K c 0.332740 * 0.119420 * 0.624800 * 1.000000 1.000000 646 K c 0.331310 * 0.622380 * 0.125900 * 1.000000 1.000000 647 K c 0.407410 * 0.119180 * 0.126240 * 1.000000 1.000000 648 K c 0.407850 * 0.621410 * 0.624910 * 1.000000 1.000000 649 K c 0.583040 * 0.366720 * 0.377910 * 1.000000 1.000000 650 K c 0.583220 * 0.873790 * 0.872430 * 1.000000 1.000000 651 K c 0.658030 * 0.367330 * 0.873200 * 1.000000 1.000000 652 K c 0.658040 * 0.874660 * 0.378690 * 1.000000 1.000000 653 K c 0.833480 * 0.120640 * 0.126700 * 1.000000 1.000000 654 K c 0.833370 * 0.621560 * 0.625900 * 1.000000 1.000000 655 K c 0.908420 * 0.120970 * 0.626330 * 1.000000 1.000000 656 K c 0.909950 * 0.620850 * 0.125650 * 1.000000 1.000000 657 K c 0.119400 * 0.331790 * 0.624300 * 1.000000 1.000000 658 K c 0.119320 * 0.409200 * 0.126500 * 1.000000 1.000000 659 K c 0.120300 * 0.832340 * 0.126860 * 1.000000 1.000000 660 K c 0.120690 * 0.909950 * 0.626380 * 1.000000 1.000000 661 K c 0.369510 * 0.081710 * 0.875510 * 1.000000 1.000000 662 K c 0.369420 * 0.159330 * 0.376340 * 1.000000 1.000000 663 K c 0.367680 * 0.582110 * 0.379240 * 1.000000 1.000000 664 K c 0.367950 * 0.659590 * 0.872160 * 1.000000 1.000000 665 K c 0.620930 * 0.330380 * 0.126390 * 1.000000 1.000000 666 K c 0.620860 * 0.409220 * 0.624220 * 1.000000 1.000000 667 K c 0.621190 * 0.832570 * 0.625910 * 1.000000 1.000000 668 K c 0.620880 * 0.911540 * 0.125270 * 1.000000 1.000000 669 K c 0.872090 * 0.082520 * 0.376640 * 1.000000 1.000000 670 K c 0.871750 * 0.159110 * 0.876200 * 1.000000 1.000000 671 K c 0.872490 * 0.582120 * 0.871040 * 1.000000 1.000000 672 K c 0.873010 * 0.659640 * 0.380120 * 1.000000 1.000000 673 O2 s 0.106081 * 0.249085 * 0.355130 * -2.869020 1.000000 674 O2 s 0.106081 * 0.493241 * 0.396818 * -2.869020 1.000000 675 O2 s 0.106081 * 0.749085 * 0.855130 * -2.869020 1.000000 676 O2 s 0.106081 * 0.993241 * 0.896818 * -2.869020 1.000000 677 O2 s 0.134474 * 0.249085 * 0.896818 * -2.869020 1.000000 678 O2 s 0.134474 * 0.493241 * 0.855130 * -2.869020 1.000000 679 O2 s 0.134474 * 0.749085 * 0.396818 * -2.869020 1.000000 680 O2 s 0.134474 * 0.993241 * 0.355130 * -2.869020 1.000000 681 O2 s 0.356081 * 0.999086 * 0.146818 * -2.869020 1.000000 682 O2 s 0.356081 * 0.243241 * 0.105130 * -2.869020 1.000000 683 O2 s 0.356081 * 0.499085 * 0.646818 * -2.869020 1.000000 684 O2 s 0.356081 * 0.743241 * 0.605130 * -2.869020 1.000000 685 O2 s 0.384474 * 0.999086 * 0.605130 * -2.869020 1.000000 686 O2 s 0.384474 * 0.243241 * 0.646818 * -2.869020 1.000000 687 O2 s 0.384474 * 0.499085 * 0.105130 * -2.869020 1.000000 688 O2 s 0.384474 * 0.743241 * 0.146818 * -2.869020 1.000000 689 O2 s 0.606081 * 0.249085 * 0.855130 * -2.869020 1.000000 690 O2 s 0.606081 * 0.493241 * 0.896818 * -2.869020 1.000000 691 O2 s 0.606081 * 0.749085 * 0.355130 * -2.869020 1.000000 692 O2 s 0.606081 * 0.993241 * 0.396818 * -2.869020 1.000000 693 O2 s 0.634474 * 0.249085 * 0.396818 * -2.869020 1.000000 694 O2 s 0.634474 * 0.493241 * 0.355130 * -2.869020 1.000000 695 O2 s 0.634474 * 0.749085 * 0.896818 * -2.869020 1.000000 696 O2 s 0.634474 * 0.993241 * 0.855130 * -2.869020 1.000000 697 O2 s 0.856081 * 0.999086 * 0.646818 * -2.869020 1.000000 698 O2 s 0.856081 * 0.243241 * 0.605130 * -2.869020 1.000000 699 O2 s 0.856081 * 0.499085 * 0.146818 * -2.869020 1.000000 700 O2 s 0.856081 * 0.743241 * 0.105130 * -2.869020 1.000000 701 O2 s 0.884474 * 0.999086 * 0.105130 * -2.869020 1.000000 702 O2 s 0.884474 * 0.243241 * 0.146818 * -2.869020 1.000000 703 O2 s 0.884474 * 0.499085 * 0.605130 * -2.869020 1.000000 704 O2 s 0.884474 * 0.743241 * 0.646818 * -2.869020 1.000000 705 O2 s 0.095837 * 0.353862 * 0.252098 * -2.869020 1.000000 706 O2 s 0.095837 * 0.388465 * 0.499850 * -2.869020 1.000000 707 O2 s 0.095837 * 0.853862 * 0.752098 * -2.869020 1.000000 708 O2 s 0.095837 * 0.888465 * 0.999851 * -2.869020 1.000000 709 O2 s 0.144718 * 0.353862 * 0.999851 * -2.869020 1.000000 710 O2 s 0.144718 * 0.388465 * 0.752098 * -2.869020 1.000000 711 O2 s 0.144718 * 0.853862 * 0.499850 * -2.869020 1.000000 712 O2 s 0.144718 * 0.888465 * 0.252098 * -2.869020 1.000000 713 O2 s 0.345837 * 0.103862 * 0.249850 * -2.869020 1.000000 714 O2 s 0.345837 * 0.138465 * 0.002098 * -2.869020 1.000000 715 O2 s 0.345837 * 0.603862 * 0.749850 * -2.869020 1.000000 716 O2 s 0.345837 * 0.638465 * 0.502098 * -2.869020 1.000000 717 O2 s 0.394718 * 0.103862 * 0.502098 * -2.869020 1.000000 718 O2 s 0.394718 * 0.138465 * 0.749850 * -2.869020 1.000000 719 O2 s 0.394718 * 0.603862 * 0.002098 * -2.869020 1.000000 720 O2 s 0.394718 * 0.638465 * 0.249850 * -2.869020 1.000000 721 O2 s 0.595837 * 0.353862 * 0.752098 * -2.869020 1.000000 722 O2 s 0.595837 * 0.388465 * 0.999851 * -2.869020 1.000000 723 O2 s 0.595837 * 0.853862 * 0.252098 * -2.869020 1.000000 724 O2 s 0.595837 * 0.888465 * 0.499850 * -2.869020 1.000000 725 O2 s 0.644718 * 0.353862 * 0.499850 * -2.869020 1.000000 726 O2 s 0.644718 * 0.388465 * 0.252098 * -2.869020 1.000000 727 O2 s 0.644718 * 0.853862 * 0.999851 * -2.869020 1.000000 728 O2 s 0.644718 * 0.888465 * 0.752098 * -2.869020 1.000000 729 O2 s 0.845837 * 0.103862 * 0.749850 * -2.869020 1.000000 730 O2 s 0.845837 * 0.138465 * 0.502098 * -2.869020 1.000000 731 O2 s 0.845837 * 0.603862 * 0.249850 * -2.869020 1.000000 732 O2 s 0.845837 * 0.638465 * 0.002098 * -2.869020 1.000000 733 O2 s 0.894718 * 0.103862 * 0.002098 * -2.869020 1.000000 734 O2 s 0.894718 * 0.138465 * 0.249850 * -2.869020 1.000000 735 O2 s 0.894718 * 0.603862 * 0.502098 * -2.869020 1.000000 736 O2 s 0.894718 * 0.638465 * 0.749850 * -2.869020 1.000000 737 O2 s 0.001573 * 0.350737 * 0.141277 * -2.869020 1.000000 738 O2 s 0.001573 * 0.391589 * 0.610671 * -2.869020 1.000000 739 O2 s 0.001573 * 0.850737 * 0.641277 * -2.869020 1.000000 740 O2 s 0.001573 * 0.891589 * 0.110671 * -2.869020 1.000000 741 O2 s 0.238982 * 0.350737 * 0.110671 * -2.869020 1.000000 742 O2 s 0.238982 * 0.391589 * 0.641277 * -2.869020 1.000000 743 O2 s 0.238982 * 0.850737 * 0.610671 * -2.869020 1.000000 744 O2 s 0.238982 * 0.891589 * 0.141277 * -2.869020 1.000000 745 O2 s 0.251573 * 0.100737 * 0.360671 * -2.869020 1.000000 746 O2 s 0.251573 * 0.141589 * 0.891277 * -2.869020 1.000000 747 O2 s 0.251573 * 0.600737 * 0.860671 * -2.869020 1.000000 748 O2 s 0.251573 * 0.641589 * 0.391277 * -2.869020 1.000000 749 O2 s 0.488982 * 0.100737 * 0.391277 * -2.869020 1.000000 750 O2 s 0.488982 * 0.141589 * 0.860671 * -2.869020 1.000000 751 O2 s 0.488982 * 0.600737 * 0.891277 * -2.869020 1.000000 752 O2 s 0.488982 * 0.641589 * 0.360671 * -2.869020 1.000000 753 O2 s 0.501573 * 0.350737 * 0.641277 * -2.869020 1.000000 754 O2 s 0.501573 * 0.391589 * 0.110671 * -2.869020 1.000000 755 O2 s 0.501573 * 0.850737 * 0.141277 * -2.869020 1.000000 756 O2 s 0.501573 * 0.891589 * 0.610671 * -2.869020 1.000000 757 O2 s 0.738982 * 0.350737 * 0.610671 * -2.869020 1.000000 758 O2 s 0.738982 * 0.391589 * 0.141277 * -2.869020 1.000000 759 O2 s 0.738982 * 0.850737 * 0.110671 * -2.869020 1.000000 760 O2 s 0.738982 * 0.891589 * 0.641277 * -2.869020 1.000000 761 O2 s 0.751573 * 0.100737 * 0.860671 * -2.869020 1.000000 762 O2 s 0.751573 * 0.141589 * 0.391277 * -2.869020 1.000000 763 O2 s 0.751573 * 0.600737 * 0.360671 * -2.869020 1.000000 764 O2 s 0.751573 * 0.641589 * 0.891277 * -2.869020 1.000000 765 O2 s 0.988982 * 0.100737 * 0.891277 * -2.869020 1.000000 766 O2 s 0.988982 * 0.141589 * 0.360671 * -2.869020 1.000000 767 O2 s 0.988982 * 0.600737 * 0.391277 * -2.869020 1.000000 768 O2 s 0.988982 * 0.641589 * 0.860671 * -2.869020 1.000000 769 O2 s 0.998184 * 0.005148 * 0.862754 * -2.869020 1.000000 770 O2 s 0.998184 * 0.237178 * 0.389194 * -2.869020 1.000000 771 O2 s 0.998184 * 0.505148 * 0.362754 * -2.869020 1.000000 772 O2 s 0.998184 * 0.737178 * 0.889194 * -2.869020 1.000000 773 O2 s 0.242372 * 0.005148 * 0.389194 * -2.869020 1.000000 774 O2 s 0.242372 * 0.237178 * 0.862754 * -2.869020 1.000000 775 O2 s 0.242372 * 0.505148 * 0.889194 * -2.869020 1.000000 776 O2 s 0.242372 * 0.737178 * 0.362754 * -2.869020 1.000000 777 O2 s 0.248184 * 0.255148 * 0.139194 * -2.869020 1.000000 778 O2 s 0.248184 * 0.487178 * 0.612754 * -2.869020 1.000000 779 O2 s 0.248184 * 0.755148 * 0.639194 * -2.869020 1.000000 780 O2 s 0.248184 * 0.987178 * 0.112754 * -2.869020 1.000000 781 O2 s 0.492372 * 0.255148 * 0.612754 * -2.869020 1.000000 782 O2 s 0.492372 * 0.487178 * 0.139194 * -2.869020 1.000000 783 O2 s 0.492372 * 0.755148 * 0.112754 * -2.869020 1.000000 784 O2 s 0.492372 * 0.987178 * 0.639194 * -2.869020 1.000000 785 O2 s 0.498184 * 0.005148 * 0.362754 * -2.869020 1.000000 786 O2 s 0.498184 * 0.237178 * 0.889194 * -2.869020 1.000000 787 O2 s 0.498184 * 0.505148 * 0.862754 * -2.869020 1.000000 788 O2 s 0.498184 * 0.737178 * 0.389194 * -2.869020 1.000000 789 O2 s 0.742372 * 0.005148 * 0.889194 * -2.869020 1.000000 790 O2 s 0.742372 * 0.237178 * 0.362754 * -2.869020 1.000000 791 O2 s 0.742372 * 0.505148 * 0.389194 * -2.869020 1.000000 792 O2 s 0.742372 * 0.737178 * 0.862754 * -2.869020 1.000000 793 O2 s 0.748184 * 0.255148 * 0.639194 * -2.869020 1.000000 794 O2 s 0.748184 * 0.487178 * 0.112754 * -2.869020 1.000000 795 O2 s 0.748184 * 0.755148 * 0.139194 * -2.869020 1.000000 796 O2 s 0.748184 * 0.987178 * 0.612754 * -2.869020 1.000000 797 O2 s 0.992372 * 0.255148 * 0.112754 * -2.869020 1.000000 798 O2 s 0.992372 * 0.487178 * 0.639194 * -2.869020 1.000000 799 O2 s 0.992372 * 0.755148 * 0.612754 * -2.869020 1.000000 800 O2 s 0.992372 * 0.987178 * 0.139194 * -2.869020 1.000000 801 O2 s 0.109241 * 0.995480 * 0.259436 * -2.869020 1.000000 802 O2 s 0.109241 * 0.246847 * 0.992512 * -2.869020 1.000000 803 O2 s 0.109241 * 0.495479 * 0.759436 * -2.869020 1.000000 804 O2 s 0.109241 * 0.746847 * 0.492512 * -2.869020 1.000000 805 O2 s 0.131315 * 0.995480 * 0.992512 * -2.869020 1.000000 806 O2 s 0.131315 * 0.246847 * 0.259436 * -2.869020 1.000000 807 O2 s 0.131315 * 0.495479 * 0.492512 * -2.869020 1.000000 808 O2 s 0.131315 * 0.746847 * 0.759436 * -2.869020 1.000000 809 O2 s 0.359241 * 0.245479 * 0.742512 * -2.869020 1.000000 810 O2 s 0.359241 * 0.496847 * 0.009436 * -2.869020 1.000000 811 O2 s 0.359241 * 0.745479 * 0.242512 * -2.869020 1.000000 812 O2 s 0.359241 * 0.996848 * 0.509436 * -2.869020 1.000000 813 O2 s 0.381315 * 0.245479 * 0.009436 * -2.869020 1.000000 814 O2 s 0.381315 * 0.496847 * 0.742512 * -2.869020 1.000000 815 O2 s 0.381315 * 0.745479 * 0.509436 * -2.869020 1.000000 816 O2 s 0.381315 * 0.996848 * 0.242512 * -2.869020 1.000000 817 O2 s 0.609241 * 0.995480 * 0.759436 * -2.869020 1.000000 818 O2 s 0.609241 * 0.246847 * 0.492512 * -2.869020 1.000000 819 O2 s 0.609241 * 0.495479 * 0.259436 * -2.869020 1.000000 820 O2 s 0.609241 * 0.746847 * 0.992512 * -2.869020 1.000000 821 O2 s 0.631315 * 0.995480 * 0.492512 * -2.869020 1.000000 822 O2 s 0.631315 * 0.246847 * 0.759436 * -2.869020 1.000000 823 O2 s 0.631315 * 0.495479 * 0.992512 * -2.869020 1.000000 824 O2 s 0.631315 * 0.746847 * 0.259436 * -2.869020 1.000000 825 O2 s 0.859241 * 0.245479 * 0.242512 * -2.869020 1.000000 826 O2 s 0.859241 * 0.496847 * 0.509436 * -2.869020 1.000000 827 O2 s 0.859241 * 0.745479 * 0.742512 * -2.869020 1.000000 828 O2 s 0.859241 * 0.996848 * 0.009436 * -2.869020 1.000000 829 O2 s 0.881315 * 0.245479 * 0.509436 * -2.869020 1.000000 830 O2 s 0.881315 * 0.496847 * 0.242512 * -2.869020 1.000000 831 O2 s 0.881315 * 0.745479 * 0.009436 * -2.869020 1.000000 832 O2 s 0.881315 * 0.996848 * 0.742512 * -2.869020 1.000000 833 O2 s 0.990078 * 0.110384 * 0.253877 * -2.869020 1.000000 834 O2 s 0.990078 * 0.131943 * 0.998072 * -2.869020 1.000000 835 O2 s 0.990078 * 0.610384 * 0.753877 * -2.869020 1.000000 836 O2 s 0.990078 * 0.631943 * 0.498071 * -2.869020 1.000000 837 O2 s 0.250478 * 0.110384 * 0.998072 * -2.869020 1.000000 838 O2 s 0.250478 * 0.131943 * 0.253877 * -2.869020 1.000000 839 O2 s 0.250478 * 0.610384 * 0.498071 * -2.869020 1.000000 840 O2 s 0.250478 * 0.631943 * 0.753877 * -2.869020 1.000000 841 O2 s 0.240077 * 0.360384 * 0.748071 * -2.869020 1.000000 842 O2 s 0.240077 * 0.381943 * 0.003877 * -2.869020 1.000000 843 O2 s 0.240077 * 0.860384 * 0.248071 * -2.869020 1.000000 844 O2 s 0.240077 * 0.881943 * 0.503877 * -2.869020 1.000000 845 O2 s 0.500478 * 0.360384 * 0.003877 * -2.869020 1.000000 846 O2 s 0.500478 * 0.381943 * 0.748071 * -2.869020 1.000000 847 O2 s 0.500478 * 0.860384 * 0.503877 * -2.869020 1.000000 848 O2 s 0.500478 * 0.881943 * 0.248071 * -2.869020 1.000000 849 O2 s 0.490077 * 0.110384 * 0.753877 * -2.869020 1.000000 850 O2 s 0.490077 * 0.131943 * 0.498071 * -2.869020 1.000000 851 O2 s 0.490077 * 0.610384 * 0.253877 * -2.869020 1.000000 852 O2 s 0.490077 * 0.631943 * 0.998072 * -2.869020 1.000000 853 O2 s 0.750478 * 0.110384 * 0.498071 * -2.869020 1.000000 854 O2 s 0.750478 * 0.131943 * 0.753877 * -2.869020 1.000000 855 O2 s 0.750478 * 0.610384 * 0.998072 * -2.869020 1.000000 856 O2 s 0.750478 * 0.631943 * 0.253877 * -2.869020 1.000000 857 O2 s 0.740077 * 0.360384 * 0.248071 * -2.869020 1.000000 858 O2 s 0.740077 * 0.381943 * 0.503877 * -2.869020 1.000000 859 O2 s 0.740077 * 0.860384 * 0.748071 * -2.869020 1.000000 860 O2 s 0.740077 * 0.881943 * 0.003877 * -2.869020 1.000000 861 O2 s 0.000478 * 0.360384 * 0.503877 * -2.869020 1.000000 862 O2 s 0.000478 * 0.381943 * 0.248071 * -2.869020 1.000000 863 O2 s 0.000478 * 0.860384 * 0.003877 * -2.869020 1.000000 864 O2 s 0.000478 * 0.881943 * 0.748071 * -2.869020 1.000000 865 O2 s 0.034051 * 0.326031 * 0.324001 * -2.869020 1.000000 866 O2 s 0.034051 * 0.416296 * 0.427947 * -2.869020 1.000000 867 O2 s 0.034051 * 0.826031 * 0.824001 * -2.869020 1.000000 868 O2 s 0.034051 * 0.916296 * 0.927947 * -2.869020 1.000000 869 O2 s 0.206504 * 0.326031 * 0.927947 * -2.869020 1.000000 870 O2 s 0.206504 * 0.416296 * 0.824001 * -2.869020 1.000000 871 O2 s 0.206504 * 0.826031 * 0.427947 * -2.869020 1.000000 872 O2 s 0.206504 * 0.916296 * 0.324001 * -2.869020 1.000000 873 O2 s 0.284051 * 0.076031 * 0.177947 * -2.869020 1.000000 874 O2 s 0.284051 * 0.166296 * 0.074001 * -2.869020 1.000000 875 O2 s 0.284051 * 0.576031 * 0.677947 * -2.869020 1.000000 876 O2 s 0.284051 * 0.666296 * 0.574001 * -2.869020 1.000000 877 O2 s 0.456504 * 0.076031 * 0.574001 * -2.869020 1.000000 878 O2 s 0.456504 * 0.166296 * 0.677947 * -2.869020 1.000000 879 O2 s 0.456504 * 0.576031 * 0.074001 * -2.869020 1.000000 880 O2 s 0.456504 * 0.666296 * 0.177947 * -2.869020 1.000000 881 O2 s 0.534051 * 0.326031 * 0.824001 * -2.869020 1.000000 882 O2 s 0.534051 * 0.416296 * 0.927947 * -2.869020 1.000000 883 O2 s 0.534051 * 0.826031 * 0.324001 * -2.869020 1.000000 884 O2 s 0.534051 * 0.916296 * 0.427947 * -2.869020 1.000000 885 O2 s 0.706504 * 0.326031 * 0.427947 * -2.869020 1.000000 886 O2 s 0.706504 * 0.416296 * 0.324001 * -2.869020 1.000000 887 O2 s 0.706504 * 0.826031 * 0.927947 * -2.869020 1.000000 888 O2 s 0.706504 * 0.916296 * 0.824001 * -2.869020 1.000000 889 O2 s 0.784051 * 0.076031 * 0.677947 * -2.869020 1.000000 890 O2 s 0.784051 * 0.166296 * 0.574001 * -2.869020 1.000000 891 O2 s 0.784051 * 0.576031 * 0.177947 * -2.869020 1.000000 892 O2 s 0.784051 * 0.666296 * 0.074001 * -2.869020 1.000000 893 O2 s 0.956504 * 0.076031 * 0.074001 * -2.869020 1.000000 894 O2 s 0.956504 * 0.166296 * 0.177947 * -2.869020 1.000000 895 O2 s 0.956504 * 0.576031 * 0.574001 * -2.869020 1.000000 896 O2 s 0.956504 * 0.666296 * 0.677947 * -2.869020 1.000000 897 O2 s 0.068216 * 0.284885 * 0.169790 * -2.869020 1.000000 898 O2 s 0.068216 * 0.457441 * 0.582158 * -2.869020 1.000000 899 O2 s 0.068216 * 0.784885 * 0.669790 * -2.869020 1.000000 900 O2 s 0.068216 * 0.957441 * 0.082158 * -2.869020 1.000000 901 O2 s 0.172340 * 0.284885 * 0.082158 * -2.869020 1.000000 902 O2 s 0.172340 * 0.457441 * 0.669790 * -2.869020 1.000000 903 O2 s 0.172340 * 0.784885 * 0.582158 * -2.869020 1.000000 904 O2 s 0.172340 * 0.957441 * 0.169790 * -2.869020 1.000000 905 O2 s 0.318216 * 0.034885 * 0.332158 * -2.869020 1.000000 906 O2 s 0.318216 * 0.207441 * 0.919790 * -2.869020 1.000000 907 O2 s 0.318216 * 0.534885 * 0.832158 * -2.869020 1.000000 908 O2 s 0.318216 * 0.707441 * 0.419790 * -2.869020 1.000000 909 O2 s 0.422340 * 0.034885 * 0.419790 * -2.869020 1.000000 910 O2 s 0.422340 * 0.207441 * 0.832158 * -2.869020 1.000000 911 O2 s 0.422340 * 0.534885 * 0.919790 * -2.869020 1.000000 912 O2 s 0.422340 * 0.707441 * 0.332158 * -2.869020 1.000000 913 O2 s 0.568216 * 0.284885 * 0.669790 * -2.869020 1.000000 914 O2 s 0.568216 * 0.457441 * 0.082158 * -2.869020 1.000000 915 O2 s 0.568216 * 0.784885 * 0.169790 * -2.869020 1.000000 916 O2 s 0.568216 * 0.957441 * 0.582158 * -2.869020 1.000000 917 O2 s 0.672340 * 0.284885 * 0.582158 * -2.869020 1.000000 918 O2 s 0.672340 * 0.457441 * 0.169790 * -2.869020 1.000000 919 O2 s 0.672340 * 0.784885 * 0.082158 * -2.869020 1.000000 920 O2 s 0.672340 * 0.957441 * 0.669790 * -2.869020 1.000000 921 O2 s 0.818216 * 0.034885 * 0.832158 * -2.869020 1.000000 922 O2 s 0.818216 * 0.207441 * 0.419790 * -2.869020 1.000000 923 O2 s 0.818216 * 0.534885 * 0.332158 * -2.869020 1.000000 924 O2 s 0.818216 * 0.707441 * 0.919790 * -2.869020 1.000000 925 O2 s 0.922340 * 0.034885 * 0.919790 * -2.869020 1.000000 926 O2 s 0.922340 * 0.207441 * 0.332158 * -2.869020 1.000000 927 O2 s 0.922340 * 0.534885 * 0.419790 * -2.869020 1.000000 928 O2 s 0.922340 * 0.707441 * 0.832158 * -2.869020 1.000000 929 O2 s 0.076336 * 0.069041 * 0.953892 * -2.869020 1.000000 930 O2 s 0.076336 * 0.173286 * 0.298056 * -2.869020 1.000000 931 O2 s 0.076336 * 0.569041 * 0.453892 * -2.869020 1.000000 932 O2 s 0.076336 * 0.673286 * 0.798056 * -2.869020 1.000000 933 O2 s 0.164219 * 0.069041 * 0.298056 * -2.869020 1.000000 934 O2 s 0.164219 * 0.173286 * 0.953892 * -2.869020 1.000000 935 O2 s 0.164219 * 0.569041 * 0.798056 * -2.869020 1.000000 936 O2 s 0.164219 * 0.673286 * 0.453892 * -2.869020 1.000000 937 O2 s 0.326336 * 0.319041 * 0.048056 * -2.869020 1.000000 938 O2 s 0.326336 * 0.423286 * 0.703892 * -2.869020 1.000000 939 O2 s 0.326336 * 0.819041 * 0.548056 * -2.869020 1.000000 940 O2 s 0.326336 * 0.923286 * 0.203892 * -2.869020 1.000000 941 O2 s 0.414219 * 0.319041 * 0.703892 * -2.869020 1.000000 942 O2 s 0.414219 * 0.423286 * 0.048056 * -2.869020 1.000000 943 O2 s 0.414219 * 0.819041 * 0.203892 * -2.869020 1.000000 944 O2 s 0.414219 * 0.923286 * 0.548056 * -2.869020 1.000000 945 O2 s 0.576336 * 0.069041 * 0.453892 * -2.869020 1.000000 946 O2 s 0.576336 * 0.173286 * 0.798056 * -2.869020 1.000000 947 O2 s 0.576336 * 0.569041 * 0.953892 * -2.869020 1.000000 948 O2 s 0.576336 * 0.673286 * 0.298056 * -2.869020 1.000000 949 O2 s 0.664219 * 0.069041 * 0.798056 * -2.869020 1.000000 950 O2 s 0.664219 * 0.173286 * 0.453892 * -2.869020 1.000000 951 O2 s 0.664219 * 0.569041 * 0.298056 * -2.869020 1.000000 952 O2 s 0.664219 * 0.673286 * 0.953892 * -2.869020 1.000000 953 O2 s 0.826336 * 0.319041 * 0.548056 * -2.869020 1.000000 954 O2 s 0.826336 * 0.423286 * 0.203892 * -2.869020 1.000000 955 O2 s 0.826336 * 0.819041 * 0.048056 * -2.869020 1.000000 956 O2 s 0.826336 * 0.923286 * 0.703892 * -2.869020 1.000000 957 O2 s 0.914219 * 0.319041 * 0.203892 * -2.869020 1.000000 958 O2 s 0.914219 * 0.423286 * 0.548056 * -2.869020 1.000000 959 O2 s 0.914219 * 0.819041 * 0.703892 * -2.869020 1.000000 960 O2 s 0.914219 * 0.923286 * 0.048056 * -2.869020 1.000000 961 O2 s 0.061459 * 0.320865 * 0.434312 * -2.869020 1.000000 962 O2 s 0.061459 * 0.421461 * 0.317636 * -2.869020 1.000000 963 O2 s 0.061459 * 0.820865 * 0.934312 * -2.869020 1.000000 964 O2 s 0.061459 * 0.921461 * 0.817636 * -2.869020 1.000000 965 O2 s 0.179097 * 0.320865 * 0.817636 * -2.869020 1.000000 966 O2 s 0.179097 * 0.421461 * 0.934312 * -2.869020 1.000000 967 O2 s 0.179097 * 0.820865 * 0.317636 * -2.869020 1.000000 968 O2 s 0.179097 * 0.921461 * 0.434312 * -2.869020 1.000000 969 O2 s 0.311459 * 0.070865 * 0.067636 * -2.869020 1.000000 970 O2 s 0.311459 * 0.171461 * 0.184312 * -2.869020 1.000000 971 O2 s 0.311459 * 0.570865 * 0.567636 * -2.869020 1.000000 972 O2 s 0.311459 * 0.671461 * 0.684312 * -2.869020 1.000000 973 O2 s 0.429097 * 0.070865 * 0.684312 * -2.869020 1.000000 974 O2 s 0.429097 * 0.171461 * 0.567636 * -2.869020 1.000000 975 O2 s 0.429097 * 0.570865 * 0.184312 * -2.869020 1.000000 976 O2 s 0.429097 * 0.671461 * 0.067636 * -2.869020 1.000000 977 O2 s 0.561459 * 0.320865 * 0.934312 * -2.869020 1.000000 978 O2 s 0.561459 * 0.421461 * 0.817636 * -2.869020 1.000000 979 O2 s 0.561459 * 0.820865 * 0.434312 * -2.869020 1.000000 980 O2 s 0.561459 * 0.921461 * 0.317636 * -2.869020 1.000000 981 O2 s 0.679097 * 0.320865 * 0.317636 * -2.869020 1.000000 982 O2 s 0.679097 * 0.421461 * 0.434312 * -2.869020 1.000000 983 O2 s 0.679097 * 0.820865 * 0.817636 * -2.869020 1.000000 984 O2 s 0.679097 * 0.921461 * 0.934312 * -2.869020 1.000000 985 O2 s 0.811459 * 0.070865 * 0.567636 * -2.869020 1.000000 986 O2 s 0.811459 * 0.171461 * 0.684312 * -2.869020 1.000000 987 O2 s 0.811459 * 0.570865 * 0.067636 * -2.869020 1.000000 988 O2 s 0.811459 * 0.671461 * 0.184312 * -2.869020 1.000000 989 O2 s 0.929097 * 0.070865 * 0.184312 * -2.869020 1.000000 990 O2 s 0.929097 * 0.171461 * 0.067636 * -2.869020 1.000000 991 O2 s 0.929097 * 0.570865 * 0.684312 * -2.869020 1.000000 992 O2 s 0.929097 * 0.671461 * 0.567636 * -2.869020 1.000000 993 O2 s 0.064467 * 0.313471 * 0.073371 * -2.869020 1.000000 994 O2 s 0.064467 * 0.428855 * 0.678578 * -2.869020 1.000000 995 O2 s 0.064467 * 0.813471 * 0.573371 * -2.869020 1.000000 996 O2 s 0.064467 * 0.928855 * 0.178578 * -2.869020 1.000000 997 O2 s 0.176088 * 0.313471 * 0.178578 * -2.869020 1.000000 998 O2 s 0.176088 * 0.428855 * 0.573371 * -2.869020 1.000000 999 O2 s 0.176088 * 0.813471 * 0.678578 * -2.869020 1.000000 1000 O2 s 0.176088 * 0.928855 * 0.073371 * -2.869020 1.000000 1001 O2 s 0.314467 * 0.063471 * 0.428578 * -2.869020 1.000000 1002 O2 s 0.314467 * 0.178855 * 0.823371 * -2.869020 1.000000 1003 O2 s 0.314467 * 0.563471 * 0.928578 * -2.869020 1.000000 1004 O2 s 0.314467 * 0.678855 * 0.323371 * -2.869020 1.000000 1005 O2 s 0.426088 * 0.063471 * 0.323371 * -2.869020 1.000000 1006 O2 s 0.426088 * 0.178855 * 0.928578 * -2.869020 1.000000 1007 O2 s 0.426088 * 0.563471 * 0.823371 * -2.869020 1.000000 1008 O2 s 0.426088 * 0.678855 * 0.428578 * -2.869020 1.000000 1009 O2 s 0.564467 * 0.313471 * 0.573371 * -2.869020 1.000000 1010 O2 s 0.564467 * 0.428855 * 0.178578 * -2.869020 1.000000 1011 O2 s 0.564467 * 0.813471 * 0.073371 * -2.869020 1.000000 1012 O2 s 0.564467 * 0.928855 * 0.678578 * -2.869020 1.000000 1013 O2 s 0.676088 * 0.313471 * 0.678578 * -2.869020 1.000000 1014 O2 s 0.676088 * 0.428855 * 0.073371 * -2.869020 1.000000 1015 O2 s 0.676088 * 0.813471 * 0.178578 * -2.869020 1.000000 1016 O2 s 0.676088 * 0.928855 * 0.573371 * -2.869020 1.000000 1017 O2 s 0.814467 * 0.063471 * 0.928578 * -2.869020 1.000000 1018 O2 s 0.814467 * 0.178855 * 0.323371 * -2.869020 1.000000 1019 O2 s 0.814467 * 0.563471 * 0.428578 * -2.869020 1.000000 1020 O2 s 0.814467 * 0.678855 * 0.823371 * -2.869020 1.000000 1021 O2 s 0.926088 * 0.063471 * 0.823371 * -2.869020 1.000000 1022 O2 s 0.926088 * 0.178855 * 0.428578 * -2.869020 1.000000 1023 O2 s 0.926088 * 0.563471 * 0.323371 * -2.869020 1.000000 1024 O2 s 0.926088 * 0.678855 * 0.928578 * -2.869020 1.000000 1025 O2 s 0.066748 * 0.061296 * 0.321237 * -2.869020 1.000000 1026 O2 s 0.066748 * 0.181031 * 0.930711 * -2.869020 1.000000 1027 O2 s 0.066748 * 0.561296 * 0.821237 * -2.869020 1.000000 1028 O2 s 0.066748 * 0.681031 * 0.430711 * -2.869020 1.000000 1029 O2 s 0.173808 * 0.061296 * 0.930711 * -2.869020 1.000000 1030 O2 s 0.173808 * 0.181031 * 0.321237 * -2.869020 1.000000 1031 O2 s 0.173808 * 0.561296 * 0.430711 * -2.869020 1.000000 1032 O2 s 0.173808 * 0.681031 * 0.821237 * -2.869020 1.000000 1033 O2 s 0.316748 * 0.311296 * 0.680711 * -2.869020 1.000000 1034 O2 s 0.316748 * 0.431031 * 0.071237 * -2.869020 1.000000 1035 O2 s 0.316748 * 0.811296 * 0.180711 * -2.869020 1.000000 1036 O2 s 0.316748 * 0.931031 * 0.571237 * -2.869020 1.000000 1037 O2 s 0.423808 * 0.311296 * 0.071237 * -2.869020 1.000000 1038 O2 s 0.423808 * 0.431031 * 0.680711 * -2.869020 1.000000 1039 O2 s 0.423808 * 0.811296 * 0.571237 * -2.869020 1.000000 1040 O2 s 0.423808 * 0.931031 * 0.180711 * -2.869020 1.000000 1041 O2 s 0.566748 * 0.061296 * 0.821237 * -2.869020 1.000000 1042 O2 s 0.566748 * 0.181031 * 0.430711 * -2.869020 1.000000 1043 O2 s 0.566748 * 0.561296 * 0.321237 * -2.869020 1.000000 1044 O2 s 0.566748 * 0.681031 * 0.930711 * -2.869020 1.000000 1045 O2 s 0.673808 * 0.061296 * 0.430711 * -2.869020 1.000000 1046 O2 s 0.673808 * 0.181031 * 0.821237 * -2.869020 1.000000 1047 O2 s 0.673808 * 0.561296 * 0.930711 * -2.869020 1.000000 1048 O2 s 0.673808 * 0.681031 * 0.321237 * -2.869020 1.000000 1049 O2 s 0.816748 * 0.311296 * 0.180711 * -2.869020 1.000000 1050 O2 s 0.816748 * 0.431031 * 0.571237 * -2.869020 1.000000 1051 O2 s 0.816748 * 0.811296 * 0.680711 * -2.869020 1.000000 1052 O2 s 0.816748 * 0.931031 * 0.071237 * -2.869020 1.000000 1053 O2 s 0.923808 * 0.311296 * 0.571237 * -2.869020 1.000000 1054 O2 s 0.923808 * 0.431031 * 0.180711 * -2.869020 1.000000 1055 O2 s 0.923808 * 0.811296 * 0.071237 * -2.869020 1.000000 1056 O2 s 0.923808 * 0.931031 * 0.680711 * -2.869020 1.000000 -------------------------------------------------------------------------------- ******************************************************************************** * General input information * ******************************************************************************** Species output for all configurations : -------------------------------------------------------------------------------- Species Type Atomic Atomic Charge Radii (Angs) Library Number Mass (e) Covalent Ionic Symbol -------------------------------------------------------------------------------- P Core 15 30.97 5.0000 1.050 0.000 Si Core 14 28.09 4.0000 1.200 0.000 Al Core 13 26.98 3.0000 1.350 0.000 O2 Core 8 16.00 0.8690 0.730 0.000 O2 Shell 8 0.00 -2.8690 0.730 0.000 Na Core 11 22.99 1.0000 0.970 0.000 K Core 19 39.10 1.0000 1.330 0.000 Li Core 3 6.94 1.0000 0.680 0.000 Mg Core 12 24.31 2.0000 1.100 0.000 Ca Core 20 40.08 2.0000 0.990 0.000 H Core 1 1.01 0.4000 0.370 0.000 O1 Core 8 16.00 1.2500 0.730 0.000 O1 Shell 8 0.00 -2.0500 0.730 0.000 Si1 Core 14 28.09 4.0000 1.200 0.000 Si2 Core 14 28.09 4.0000 1.200 0.000 Si3 Core 14 28.09 4.0000 1.200 0.000 Al1 Core 13 26.98 3.0000 1.350 0.000 Al2 Core 13 26.98 3.0000 1.350 0.000 Al3 Core 13 26.98 3.0000 1.350 0.000 K11 Core 19 39.10 1.0000 1.330 0.000 K12 Core 19 39.10 1.0000 1.330 0.000 K2 Core 19 39.10 1.0000 1.330 0.000 K31 Core 19 39.10 1.0000 1.330 0.000 K32 Core 19 39.10 1.0000 1.330 0.000 -------------------------------------------------------------------------------- Accuracy factor for lattice sums = 8.000 Time limit = Infinity General interatomic potentials : -------------------------------------------------------------------------------- Atom Types Potential A B C D Cutoffs(Ang) 1 2 Min Max -------------------------------------------------------------------------------- Si c O2 s Buckingham 0.128E+04 0.321 10.7 0.00 0.000 20.000 Al c O2 s Buckingham 0.146E+04 0.299 0.00 0.00 0.000 20.000 O2 s O2 s Buckingham 0.228E+05 0.149 27.9 0.00 0.000 20.000 Na c O2 s Buckingham 0.123E+04 0.307 0.00 0.00 0.000 20.000 Ca c O2 s Buckingham 0.109E+04 0.344 0.00 0.00 0.000 16.000 Li c O2 s Buckingham 0.130E+04 0.260 0.00 0.00 0.000 20.000 K c O2 s Buckingham 0.100E+04 0.362 10.6 0.00 0.000 20.000 Mg c O2 s Buckingham 0.143E+04 0.295 0.00 0.00 0.000 20.000 O2 c O2 s Spring (c-s) 74.9 0.00 0.00 0.00 0.000 0.800 Al c O1 s Buckingham 0.146E+04 0.299 0.00 0.00 0.000 16.000 Na c O1 s Buckingham 0.123E+04 0.307 0.00 0.00 0.000 20.000 Li c O1 s Buckingham 0.130E+04 0.260 0.00 0.00 0.000 20.000 K c O1 s Buckingham 0.100E+04 0.362 10.6 0.00 0.000 20.000 Ca c O1 s Buckingham 435. 0.344 0.00 0.00 0.000 12.000 Si c O1 s Buckingham 0.128E+04 0.321 10.7 0.00 0.000 16.000 O1 s O2 s Buckingham 0.228E+05 0.149 28.9 0.00 0.000 16.000 H c O1 s Buckingham 396. 0.250 10.0 0.00 0.000 2.000 H c O2 s Buckingham 396. 0.250 0.00 0.00 0.000 10.000 O1 c O1 s Spring (c-s) 209. 0.00 0.00 0.00 0.000 0.800 H c O1 s Morse-Coulomb 6.20 2.22 .924 .500 0.000 1.100 H c H c Morse-Coulomb 0.00 2.84 1.50 .500 0.000 1.650 O1 s O1 s Lennard 12 6 .3934E+05 42.15 0.00 0.00 0.000 20.000 -------------------------------------------------------------------------------- General Three-body potentials : Harmonic form: -------------------------------------------------------------------------------- Atom Atom Atom Force Constants Theta Cutoffs 1 2 3 (eVrad**-2/eVrad**-3/eVrad**-4) (deg) 1-2 1-3 2-3 -------------------------------------------------------------------------------- O2 s Al c Si c 0.000 0.0000 0.0000 160.470 1.90 1.90 3.50 Al c O2 s O2 s 2.097 0.0000 0.0000 109.470 1.90 1.90 3.50 Si c O2 s O2 s 2.097 0.0000 0.0000 109.470 1.90 1.90 4.00 O1 s H c H c 4.200 0.0000 0.0000 108.690 1.50 1.50 2.00 -------------------------------------------------------------------------------- ******************************************************************************** * Output for configuration 1 * ******************************************************************************** Components of energy : -------------------------------------------------------------------------------- Interatomic potentials = 5350.08307125 eV Three-body potentials = 2.54934086 eV Monopole - monopole (real) = -15844.95092311 eV Monopole - monopole (recip)= -10801.18314826 eV Monopole - monopole (total)= -26646.13407137 eV -------------------------------------------------------------------------------- Total lattice energy = -21293.50165927 eV -------------------------------------------------------------------------------- Total lattice energy = -2054497.4091 kJ/(mole unit cells) -------------------------------------------------------------------------------- Number of variables = 3171 Maximum number of calculations = 3000 Maximum Hessian update interval = 10 Maximum step size = 0.0250000 Maximum parameter tolerance = 0.0000100 Maximum function tolerance = 0.0000100 Maximum gradient tolerance = 0.0000100 Symmetry constrained optimisation Newton-Raphson optimiser to be used BFGS hessian update to be used Dumpfile to be written after every cycle Start of bulk optimisation : Cycle: 0 Energy: -21293.501659 Gnorm: 0.265172 CPU: 60.605 ** Hessian calculated ** Cycle: 1 Energy: -21294.722313 Gnorm: 0.253002 CPU: 195.664 Cycle: 2 Energy: -21296.700337 Gnorm: 0.231570 CPU: 228.027 Cycle: 3 Energy: -21299.042705 Gnorm: 0.202518 CPU: 255.590 Cycle: 4 Energy: -21300.832591 Gnorm: 0.176828 CPU: 282.869 Cycle: 5 Energy: -21302.201905 Gnorm: 0.154429 CPU: 310.152 Cycle: 6 Energy: -21303.260706 Gnorm: 0.134871 CPU: 337.371 Cycle: 7 Energy: -21304.084607 Gnorm: 0.117785 CPU: 364.523 Cycle: 8 Energy: -21304.728483 Gnorm: 0.102839 CPU: 391.680 Cycle: 9 Energy: -21305.233289 Gnorm: 0.089772 CPU: 419.033 Cycle: 10 Energy: -21305.630083 Gnorm: 0.078332 CPU: 446.191 ** Hessian calculated ** Cycle: 11 Energy: -21305.947026 Gnorm: 0.068531 CPU: 654.648 Cycle: 12 Energy: -21306.193909 Gnorm: 0.059946 CPU: 682.338 Cycle: 13 Energy: -21306.389372 Gnorm: 0.052424 CPU: 709.646 Cycle: 14 Energy: -21306.544220 Gnorm: 0.045836 CPU: 736.891 Cycle: 15 Energy: -21306.667026 Gnorm: 0.040066 CPU: 764.141 Cycle: 16 Energy: -21306.764508 Gnorm: 0.035014 CPU: 791.441 Cycle: 17 Energy: -21306.841949 Gnorm: 0.030590 CPU: 818.801 Cycle: 18 Energy: -21306.903523 Gnorm: 0.026717 CPU: 846.037 Cycle: 19 Energy: -21306.952513 Gnorm: 0.023327 CPU: 873.268 Cycle: 20 Energy: -21306.991519 Gnorm: 0.020360 CPU: 900.500 ** Hessian calculated ** Cycle: 21 Energy: -21307.023140 Gnorm: 0.017813 CPU: 1068.473 Cycle: 22 Energy: -21307.047909 Gnorm: 0.015584 CPU: 1095.701 Cycle: 23 Energy: -21307.067735 Gnorm: 0.013629 CPU: 1122.975 Cycle: 24 Energy: -21307.083625 Gnorm: 0.011915 CPU: 1150.213 Cycle: 25 Energy: -21307.096420 Gnorm: 0.010411 CPU: 1177.467 Cycle: 26 Energy: -21307.106801 Gnorm: 0.009086 CPU: 1204.734 Cycle: 27 Energy: -21307.115373 Gnorm: 0.007911 CPU: 1231.992 Cycle: 28 Energy: -21307.122743 Gnorm: 0.006845 CPU: 1259.256 Cycle: 29 Energy: -21307.129719 Gnorm: 0.005825 CPU: 1286.516 Cycle: 30 Energy: -21307.138900 Gnorm: 0.004621 CPU: 1318.498 ** Hessian calculated ** Cycle: 31 Energy: -21307.142267 Gnorm: 0.002668 CPU: 1483.662 Cycle: 32 Energy: -21307.144543 Gnorm: 0.002315 CPU: 1510.869 Cycle: 33 Energy: -21307.147457 Gnorm: 0.002014 CPU: 1542.816 Cycle: 34 Energy: -21307.150843 Gnorm: 0.001558 CPU: 1570.053 Cycle: 35 Energy: -21307.156073 Gnorm: 0.001968 CPU: 1601.941 Cycle: 36 Energy: -21307.164497 Gnorm: 0.002927 CPU: 1633.811 ** Hessian calculated ** Cycle: 37 Energy: -21307.166124 Gnorm: 0.003308 CPU: 1803.727 Cycle: 38 Energy: -21307.166836 Gnorm: 0.005005 CPU: 1826.137 ** Hessian calculated ** Cycle: 39 Energy: -21307.168781 Gnorm: 0.004458 CPU: 1999.107 Cycle: 40 Energy: -21307.171290 Gnorm: 0.003794 CPU: 2026.412 ** Hessian calculated ** Cycle: 41 Energy: -21307.173579 Gnorm: 0.004176 CPU: 2204.688 ** Hessian calculated ** Cycle: 42 Energy: -21307.176102 Gnorm: 0.004493 CPU: 2382.795 ** Hessian calculated ** Cycle: 43 Energy: -21307.178887 Gnorm: 0.004781 CPU: 2559.049 ** Hessian calculated ** Cycle: 44 Energy: -21307.181957 Gnorm: 0.005057 CPU: 2726.910 ** Hessian calculated ** Cycle: 45 Energy: -21307.185328 Gnorm: 0.005325 CPU: 2894.947 ** Hessian calculated ** Cycle: 46 Energy: -21307.189013 Gnorm: 0.005586 CPU: 3063.332 ** Hessian calculated ** Cycle: 47 Energy: -21307.193012 Gnorm: 0.005835 CPU: 3235.973 ** Hessian calculated ** Cycle: 48 Energy: -21307.197314 Gnorm: 0.006066 CPU: 3411.092 ** Hessian calculated ** Cycle: 49 Energy: -21307.201894 Gnorm: 0.006273 CPU: 3586.059 ** Hessian calculated ** Cycle: 50 Energy: -21307.206719 Gnorm: 0.006450 CPU: 3761.045 ** Hessian calculated ** Cycle: 51 Energy: -21307.211742 Gnorm: 0.006594 CPU: 3940.303 ** Hessian calculated ** Cycle: 52 Energy: -21307.216909 Gnorm: 0.006702 CPU: 4119.631 ** Hessian calculated ** Cycle: 53 Energy: -21307.222162 Gnorm: 0.006774 CPU: 4299.072 ** Hessian calculated ** Cycle: 54 Energy: -21307.227443 Gnorm: 0.006814 CPU: 4467.547 ** Hessian calculated ** Cycle: 55 Energy: -21307.232700 Gnorm: 0.006823 CPU: 4635.506 ** Hessian calculated ** Cycle: 56 Energy: -21307.237884 Gnorm: 0.006807 CPU: 4803.826 ** Hessian calculated ** Cycle: 57 Energy: -21307.242955 Gnorm: 0.006769 CPU: 4971.922 Cycle: 58 Energy: -21307.249359 Gnorm: 0.006645 CPU: 4999.469 Cycle: 59 Energy: -21307.260304 Gnorm: 0.006302 CPU: 5031.678 Cycle: 60 Energy: -21307.273374 Gnorm: 0.006108 CPU: 5058.898 Cycle: 61 Energy: -21307.277718 Gnorm: 0.006447 CPU: 5086.156 ** Hessian calculated ** Cycle: 62 Energy: -21307.289479 Gnorm: 0.006297 CPU: 5249.406 Cycle: 63 Energy: -21307.305913 Gnorm: 0.006060 CPU: 5281.658 Cycle: 64 Energy: -21307.317910 Gnorm: 0.005876 CPU: 5313.635 Cycle: 65 Energy: -21307.346565 Gnorm: 0.005484 CPU: 5340.920 Cycle: 66 Energy: -21307.363166 Gnorm: 0.004496 CPU: 5368.402 Cycle: 67 Energy: -21307.372513 Gnorm: 0.003829 CPU: 5395.680 Cycle: 68 Energy: -21307.379053 Gnorm: 0.003392 CPU: 5422.943 Cycle: 69 Energy: -21307.384987 Gnorm: 0.002940 CPU: 5454.908 Cycle: 70 Energy: -21307.393437 Gnorm: 0.002660 CPU: 5482.162 Cycle: 71 Energy: -21307.404498 Gnorm: 0.002410 CPU: 5509.643 ** Hessian calculated ** Cycle: 72 Energy: -21307.405893 Gnorm: 0.002228 CPU: 5673.857 Cycle: 73 Energy: -21307.408173 Gnorm: 0.002000 CPU: 5705.643 Cycle: 74 Energy: -21307.411515 Gnorm: 0.002241 CPU: 5737.395 Cycle: 75 Energy: -21307.416612 Gnorm: 0.002611 CPU: 5769.277 Cycle: 76 Energy: -21307.422916 Gnorm: 0.003227 CPU: 5796.488 Cycle: 77 Energy: -21307.431142 Gnorm: 0.003898 CPU: 5823.686 Cycle: 78 Energy: -21307.435660 Gnorm: 0.004133 CPU: 5850.863 Cycle: 79 Energy: -21307.437629 Gnorm: 0.004121 CPU: 5878.080 Cycle: 80 Energy: -21307.439404 Gnorm: 0.004103 CPU: 5905.270 Cycle: 81 Energy: -21307.441433 Gnorm: 0.004026 CPU: 5932.613 ** Hessian calculated ** Cycle: 82 Energy: -21307.445927 Gnorm: 0.003995 CPU: 6096.484 Cycle: 83 Energy: -21307.453353 Gnorm: 0.003940 CPU: 6128.424 Cycle: 84 Energy: -21307.462542 Gnorm: 0.003845 CPU: 6155.641 Cycle: 85 Energy: -21307.473582 Gnorm: 0.003439 CPU: 6182.859 Cycle: 86 Energy: -21307.476084 Gnorm: 0.002937 CPU: 6210.094 ** Hessian calculated ** Cycle: 87 Energy: -21307.476649 Gnorm: 0.002545 CPU: 6373.953 Cycle: 88 Energy: -21307.477272 Gnorm: 0.002361 CPU: 6401.186 Cycle: 89 Energy: -21307.478166 Gnorm: 0.002083 CPU: 6433.125 Cycle: 90 Energy: -21307.479137 Gnorm: 0.001860 CPU: 6460.379 Cycle: 91 Energy: -21307.480197 Gnorm: 0.001702 CPU: 6487.584 Cycle: 92 Energy: -21307.481318 Gnorm: 0.001535 CPU: 6514.799 Cycle: 93 Energy: -21307.482434 Gnorm: 0.001456 CPU: 6542.012 Cycle: 94 Energy: -21307.483580 Gnorm: 0.001423 CPU: 6569.248 Cycle: 95 Energy: -21307.484824 Gnorm: 0.001461 CPU: 6596.498 Cycle: 96 Energy: -21307.486277 Gnorm: 0.001572 CPU: 6623.748 ** Hessian calculated ** Cycle: 97 Energy: -21307.486427 Gnorm: 0.001504 CPU: 6787.061 Cycle: 98 Energy: -21307.486664 Gnorm: 0.001449 CPU: 6818.977 Cycle: 99 Energy: -21307.487001 Gnorm: 0.001426 CPU: 6850.994 Cycle: 100 Energy: -21307.487502 Gnorm: 0.001401 CPU: 6882.953 Cycle: 101 Energy: -21307.488232 Gnorm: 0.001422 CPU: 6915.035 Cycle: 102 Energy: -21307.489335 Gnorm: 0.001504 CPU: 6947.020 ** Hessian calculated ** Cycle: 103 Energy: -21307.489448 Gnorm: 0.001499 CPU: 7110.512 Cycle: 104 Energy: -21307.489640 Gnorm: 0.001504 CPU: 7142.461 ** Hessian calculated ** Cycle: 105 Energy: -21307.489778 Gnorm: 0.001512 CPU: 7310.617 ** Hessian calculated ** Cycle: 106 Energy: -21307.489919 Gnorm: 0.001523 CPU: 7478.695 Cycle: 107 Energy: -21307.490447 Gnorm: 0.002559 CPU: 7556.525 Cycle: 108 Energy: -21307.491509 Gnorm: 0.001904 CPU: 7583.818 Cycle: 109 Energy: -21307.492471 Gnorm: 0.002708 CPU: 7606.379 Cycle: 110 Energy: -21307.493600 Gnorm: 0.002416 CPU: 7628.902 Cycle: 111 Energy: -21307.494064 Gnorm: 0.002579 CPU: 7646.713 Cycle: 112 Energy: -21307.495252 Gnorm: 0.003510 CPU: 7669.299 Cycle: 113 Energy: -21307.496226 Gnorm: 0.002564 CPU: 7687.107 Cycle: 114 Energy: -21307.496862 Gnorm: 0.002717 CPU: 7704.885 Cycle: 115 Energy: -21307.497506 Gnorm: 0.002062 CPU: 7727.701 Cycle: 116 Energy: -21307.497973 Gnorm: 0.002502 CPU: 7745.465 ** Hessian calculated ** Cycle: 117 Energy: -21307.498707 Gnorm: 0.001996 CPU: 7908.707 Cycle: 118 Energy: -21307.499884 Gnorm: 0.001774 CPU: 7940.740 Cycle: 119 Energy: -21307.501684 Gnorm: 0.001788 CPU: 7972.848 Cycle: 120 Energy: -21307.503887 Gnorm: 0.002340 CPU: 8000.133 ** Hessian calculated ** Cycle: 121 Energy: -21307.504683 Gnorm: 0.002345 CPU: 8180.016 ** Hessian calculated ** Cycle: 122 Energy: -21307.505521 Gnorm: 0.002407 CPU: 8352.869 ** Hessian calculated ** Cycle: 123 Energy: -21307.506412 Gnorm: 0.002492 CPU: 8523.074 ** Hessian calculated ** Cycle: 124 Energy: -21307.507365 Gnorm: 0.002590 CPU: 8691.369 ** Hessian calculated ** Cycle: 125 Energy: -21307.508385 Gnorm: 0.002698 CPU: 8861.936 ** Hessian calculated ** Cycle: 126 Energy: -21307.509484 Gnorm: 0.002815 CPU: 9031.561 ** Hessian calculated ** Cycle: 127 Energy: -21307.510672 Gnorm: 0.002943 CPU: 9199.232 ** Hessian calculated ** Cycle: 128 Energy: -21307.511960 Gnorm: 0.003081 CPU: 9366.715 ** Hessian calculated ** Cycle: 129 Energy: -21307.513364 Gnorm: 0.003231 CPU: 9535.746 ** Hessian calculated ** Cycle: 130 Energy: -21307.514899 Gnorm: 0.003396 CPU: 9703.418 ** Hessian calculated ** Cycle: 131 Energy: -21307.516585 Gnorm: 0.003575 CPU: 9871.049 ** Hessian calculated ** Cycle: 132 Energy: -21307.518442 Gnorm: 0.003771 CPU:10038.740 ** Hessian calculated ** Cycle: 133 Energy: -21307.520496 Gnorm: 0.003984 CPU:10206.473 ** Hessian calculated ** Cycle: 134 Energy: -21307.522777 Gnorm: 0.004217 CPU:10374.063 ** Hessian calculated ** Cycle: 135 Energy: -21307.525315 Gnorm: 0.004469 CPU:10541.736 ** Hessian calculated ** Cycle: 136 Energy: -21307.528146 Gnorm: 0.004742 CPU:10710.574 ** Hessian calculated ** Cycle: 137 Energy: -21307.531308 Gnorm: 0.005035 CPU:10878.639 ** Hessian calculated ** Cycle: 138 Energy: -21307.534843 Gnorm: 0.005345 CPU:11046.336 ** Hessian calculated ** Cycle: 139 Energy: -21307.538788 Gnorm: 0.005669 CPU:11216.127 ** Hessian calculated ** Cycle: 140 Energy: -21307.543177 Gnorm: 0.006002 CPU:11396.652 ** Hessian calculated ** Cycle: 141 Energy: -21307.548034 Gnorm: 0.006334 CPU:11569.713 ** Hessian calculated ** Cycle: 142 Energy: -21307.553368 Gnorm: 0.006658 CPU:11738.354 ** Hessian calculated ** Cycle: 143 Energy: -21307.559168 Gnorm: 0.006960 CPU:11906.473 ** Hessian calculated ** Cycle: 144 Energy: -21307.565403 Gnorm: 0.007232 CPU:12074.844 ** Hessian calculated ** Cycle: 145 Energy: -21307.572020 Gnorm: 0.007465 CPU:12243.775 ** Hessian calculated ** Cycle: 146 Energy: -21307.578949 Gnorm: 0.007653 CPU:12411.654 ** Hessian calculated ** Cycle: 147 Energy: -21307.586106 Gnorm: 0.007795 CPU:12579.385 ** Hessian calculated ** Cycle: 148 Energy: -21307.593408 Gnorm: 0.007893 CPU:12747.055 ** Hessian calculated ** Cycle: 149 Energy: -21307.600772 Gnorm: 0.007952 CPU:12915.088 ** Hessian calculated ** Cycle: 150 Energy: -21307.608122 Gnorm: 0.007976 CPU:13083.361 ** Hessian calculated ** Cycle: 151 Energy: -21307.615395 Gnorm: 0.007971 CPU:13251.814 ** Hessian calculated ** Cycle: 152 Energy: -21307.622532 Gnorm: 0.007943 CPU:13420.754 Cycle: 153 Energy: -21307.632027 Gnorm: 0.007443 CPU:13448.029 ** Hessian calculated ** Cycle: 154 Energy: -21307.637530 Gnorm: 0.007547 CPU:13611.549 Cycle: 155 Energy: -21307.647017 Gnorm: 0.007529 CPU:13643.652 Cycle: 156 Energy: -21307.661364 Gnorm: 0.007675 CPU:13675.725 Cycle: 157 Energy: -21307.679311 Gnorm: 0.007533 CPU:13703.031 Cycle: 158 Energy: -21307.707196 Gnorm: 0.007343 CPU:13735.141 Cycle: 159 Energy: -21307.721500 Gnorm: 0.006686 CPU:13762.986 Cycle: 160 Energy: -21307.729730 Gnorm: 0.006437 CPU:13790.268 Cycle: 161 Energy: -21307.736901 Gnorm: 0.006022 CPU:13817.594 Cycle: 162 Energy: -21307.743544 Gnorm: 0.005782 CPU:13845.232 Cycle: 163 Energy: -21307.749526 Gnorm: 0.005401 CPU:13872.496 ** Hessian calculated ** Cycle: 164 Energy: -21307.756411 Gnorm: 0.005355 CPU:14035.617 Cycle: 165 Energy: -21307.768940 Gnorm: 0.005237 CPU:14067.662 Cycle: 166 Energy: -21307.785544 Gnorm: 0.004932 CPU:14095.213 ** Hessian calculated ** Cycle: 167 Energy: -21307.812362 Gnorm: 0.004320 CPU:14258.318 Cycle: 168 Energy: -21307.832455 Gnorm: 0.003767 CPU:14290.260 Cycle: 169 Energy: -21307.847820 Gnorm: 0.004654 CPU:14317.768 Cycle: 170 Energy: -21307.852311 Gnorm: 0.006523 CPU:14335.596 Cycle: 171 Energy: -21307.863279 Gnorm: 0.006472 CPU:14362.908 Cycle: 172 Energy: -21307.875157 Gnorm: 0.006059 CPU:14390.207 Cycle: 173 Energy: -21307.884430 Gnorm: 0.005798 CPU:14418.033 Cycle: 174 Energy: -21307.891671 Gnorm: 0.005680 CPU:14446.014 Cycle: 175 Energy: -21307.897243 Gnorm: 0.005403 CPU:14473.566 Cycle: 176 Energy: -21307.901338 Gnorm: 0.005364 CPU:14500.809 ** Hessian calculated ** Cycle: 177 Energy: -21307.905672 Gnorm: 0.004660 CPU:14663.713 Cycle: 178 Energy: -21307.911863 Gnorm: 0.003947 CPU:14695.811 Cycle: 179 Energy: -21307.918004 Gnorm: 0.003867 CPU:14723.166 Cycle: 180 Energy: -21307.925280 Gnorm: 0.003168 CPU:14750.436 Cycle: 181 Energy: -21307.931116 Gnorm: 0.003158 CPU:14777.877 Cycle: 182 Energy: -21307.935372 Gnorm: 0.002803 CPU:14805.176 Cycle: 183 Energy: -21307.938619 Gnorm: 0.002618 CPU:14832.764 Cycle: 184 Energy: -21307.941376 Gnorm: 0.002528 CPU:14859.984 Cycle: 185 Energy: -21307.943846 Gnorm: 0.002329 CPU:14887.699 Cycle: 186 Energy: -21307.946084 Gnorm: 0.002298 CPU:14915.088 ** Hessian calculated ** Cycle: 187 Energy: -21307.951418 Gnorm: 0.002263 CPU:15078.316 Cycle: 188 Energy: -21307.960284 Gnorm: 0.002215 CPU:15110.328 Cycle: 189 Energy: -21307.971644 Gnorm: 0.002140 CPU:15137.617 Cycle: 190 Energy: -21307.981446 Gnorm: 0.001880 CPU:15165.123 Cycle: 191 Energy: -21307.986305 Gnorm: 0.001577 CPU:15192.570 Cycle: 192 Energy: -21307.989349 Gnorm: 0.001397 CPU:15220.176 Cycle: 193 Energy: -21307.991606 Gnorm: 0.001188 CPU:15247.496 Cycle: 194 Energy: -21307.993280 Gnorm: 0.001070 CPU:15274.758 Cycle: 195 Energy: -21307.994574 Gnorm: 0.000884 CPU:15302.172 Cycle: 196 Energy: -21307.995552 Gnorm: 0.000806 CPU:15329.457 ** Hessian calculated ** Cycle: 197 Energy: -21307.996218 Gnorm: 0.000705 CPU:15497.484 Cycle: 198 Energy: -21307.996727 Gnorm: 0.000618 CPU:15524.889 Cycle: 199 Energy: -21307.997114 Gnorm: 0.000541 CPU:15552.240 Cycle: 200 Energy: -21307.997409 Gnorm: 0.000473 CPU:15579.574 Cycle: 201 Energy: -21307.997634 Gnorm: 0.000414 CPU:15606.920 Cycle: 202 Energy: -21307.997803 Gnorm: 0.000363 CPU:15634.283 Cycle: 203 Energy: -21307.997935 Gnorm: 0.000317 CPU:15661.660 Cycle: 204 Energy: -21307.998035 Gnorm: 0.000278 CPU:15689.051 Cycle: 205 Energy: -21307.998111 Gnorm: 0.000243 CPU:15716.525 Cycle: 206 Energy: -21307.998169 Gnorm: 0.000213 CPU:15743.959 ** Hessian calculated ** Cycle: 207 Energy: -21307.998214 Gnorm: 0.000186 CPU:15916.238 Cycle: 208 Energy: -21307.998249 Gnorm: 0.000163 CPU:15943.580 Cycle: 209 Energy: -21307.998275 Gnorm: 0.000143 CPU:15971.010 Cycle: 210 Energy: -21307.998294 Gnorm: 0.000125 CPU:15998.428 Cycle: 211 Energy: -21307.998309 Gnorm: 0.000109 CPU:16025.906 Cycle: 212 Energy: -21307.998320 Gnorm: 0.000096 CPU:16053.188 Cycle: 213 Energy: -21307.998325 Gnorm: 0.000088 CPU:16071.004 **** Optimisation achieved **** Final energy = -21307.99832512 Final Gnorm = 0.00008837 Components of energy : -------------------------------------------------------------------------------- Interatomic potentials = 5355.46094436 eV Three-body potentials = 2.71362277 eV Monopole - monopole (real) = -15846.56460801 eV Monopole - monopole (recip)= -10819.60828424 eV Monopole - monopole (total)= -26666.17289226 eV -------------------------------------------------------------------------------- Total lattice energy = -21307.99832512 eV -------------------------------------------------------------------------------- Total lattice energy = -2055896.1158 kJ/(mole unit cells) -------------------------------------------------------------------------------- Final asymmetric unit coordinates : -------------------------------------------------------------------------------- No. Atomic x y z Radius Label (Frac) (Frac) (Frac) (Angs) -------------------------------------------------------------------------------- 1 Si1 c 0.047700 0.371500 0.285000 0.000000 2 Si1 c 0.047989 0.372556 0.466247 0.000000 3 Si1 c 0.050231 0.871196 0.784347 0.000000 4 Si1 c 0.049764 0.870689 0.966207 0.000000 5 Si1 c 0.196566 0.371529 0.966036 0.000000 6 Si1 c 0.195533 0.370853 0.784165 0.000000 7 Si1 c 0.196093 0.871317 0.465897 0.000000 8 Si1 c 0.195830 0.872356 0.284166 0.000000 9 Si1 c 0.300180 0.123567 0.216979 0.000000 10 Si1 c 0.299127 0.122632 0.035200 0.000000 11 Si1 c 0.299522 0.620229 0.715713 0.000000 12 Si1 c 0.300299 0.619904 0.533520 0.000000 13 Si1 c 0.446406 0.120022 0.535677 0.000000 14 Si1 c 0.445710 0.119577 0.717040 0.000000 15 Si1 c 0.445861 0.623459 0.033989 0.000000 16 Si1 c 0.447300 0.622799 0.215348 0.000000 17 Si1 c 0.549556 0.371206 0.784624 0.000000 18 Si1 c 0.550374 0.372025 0.966357 0.000000 19 Si1 c 0.549238 0.871733 0.285226 0.000000 20 Si1 c 0.550495 0.870808 0.467046 0.000000 21 Si1 c 0.695640 0.372136 0.466513 0.000000 22 Si1 c 0.696112 0.370687 0.284791 0.000000 23 Si1 c 0.698119 0.871549 0.965985 0.000000 24 Si1 c 0.698446 0.871779 0.784993 0.000000 25 Si1 c 0.799836 0.122227 0.714879 0.000000 26 Si1 c 0.799984 0.121937 0.533197 0.000000 27 Si1 c 0.799952 0.620999 0.217587 0.000000 28 Si1 c 0.799311 0.620892 0.036257 0.000000 29 Si1 c 0.946011 0.120896 0.033057 0.000000 30 Si1 c 0.946520 0.120960 0.214859 0.000000 31 Si1 c 0.946577 0.622220 0.535974 0.000000 32 Si1 c 0.945841 0.621734 0.718241 0.000000 33 Si2 c 0.034609 0.301072 0.122338 0.000000 34 Si2 c 0.033765 0.441852 0.628706 0.000000 35 Si2 c 0.034634 0.799627 0.623483 0.000000 36 Si2 c 0.033757 0.941721 0.127245 0.000000 37 Si2 c 0.212345 0.302919 0.128194 0.000000 38 Si2 c 0.211571 0.440454 0.622574 0.000000 39 Si2 c 0.212339 0.798731 0.627285 0.000000 40 Si2 c 0.211887 0.942742 0.122256 0.000000 41 Si2 c 0.283684 0.051837 0.378416 0.000000 42 Si2 c 0.283394 0.191642 0.873169 0.000000 43 Si2 c 0.283941 0.550770 0.877625 0.000000 44 Si2 c 0.284824 0.691484 0.371551 0.000000 45 Si2 c 0.461882 0.050988 0.373825 0.000000 46 Si2 c 0.461383 0.191598 0.878166 0.000000 47 Si2 c 0.462152 0.551702 0.872715 0.000000 48 Si2 c 0.462838 0.691774 0.377614 0.000000 49 Si2 c 0.533256 0.300038 0.623196 0.000000 50 Si2 c 0.534225 0.442524 0.128483 0.000000 51 Si2 c 0.533695 0.803195 0.122683 0.000000 52 Si2 c 0.534093 0.940294 0.628767 0.000000 53 Si2 c 0.711671 0.301408 0.627417 0.000000 54 Si2 c 0.712229 0.441494 0.123493 0.000000 55 Si2 c 0.711346 0.801601 0.128740 0.000000 56 Si2 c 0.711995 0.941884 0.622589 0.000000 57 Si2 c 0.784446 0.051414 0.876041 0.000000 58 Si2 c 0.783850 0.191404 0.371606 0.000000 59 Si2 c 0.784030 0.551438 0.379464 0.000000 60 Si2 c 0.784101 0.691762 0.874822 0.000000 61 Si2 c 0.962168 0.050916 0.871161 0.000000 62 Si2 c 0.961734 0.192147 0.376423 0.000000 63 Si2 c 0.961540 0.551737 0.374301 0.000000 64 Si2 c 0.961719 0.691387 0.880044 0.000000 65 Si3 c 0.120450 0.032147 0.309479 0.000000 66 Si3 c 0.120105 0.211635 0.941148 0.000000 67 Si3 c 0.120278 0.530563 0.810234 0.000000 68 Si3 c 0.121394 0.711223 0.439948 0.000000 69 Si3 c 0.125154 0.030743 0.940188 0.000000 70 Si3 c 0.125778 0.213455 0.309381 0.000000 71 Si3 c 0.125936 0.530612 0.440998 0.000000 72 Si3 c 0.125210 0.711219 0.810979 0.000000 73 Si3 c 0.370007 0.279393 0.691679 0.000000 74 Si3 c 0.371163 0.463209 0.059501 0.000000 75 Si3 c 0.370487 0.782669 0.191030 0.000000 76 Si3 c 0.370464 0.959947 0.559720 0.000000 77 Si3 c 0.375800 0.282245 0.059630 0.000000 78 Si3 c 0.374772 0.460457 0.690960 0.000000 79 Si3 c 0.375853 0.779368 0.558900 0.000000 80 Si3 c 0.374999 0.963559 0.191394 0.000000 81 Si3 c 0.620182 0.030086 0.809499 0.000000 82 Si3 c 0.620540 0.211803 0.440850 0.000000 83 Si3 c 0.621034 0.530946 0.310430 0.000000 84 Si3 c 0.620098 0.713332 0.941713 0.000000 85 Si3 c 0.625474 0.030699 0.441236 0.000000 86 Si3 c 0.624717 0.211014 0.809511 0.000000 87 Si3 c 0.625488 0.531953 0.941429 0.000000 88 Si3 c 0.626013 0.711891 0.309594 0.000000 89 Si3 c 0.870388 0.280247 0.188727 0.000000 90 Si3 c 0.870023 0.462955 0.562139 0.000000 91 Si3 c 0.870392 0.781072 0.692323 0.000000 92 Si3 c 0.869729 0.961942 0.058854 0.000000 93 Si3 c 0.875724 0.281612 0.558870 0.000000 94 Si3 c 0.876081 0.461575 0.191922 0.000000 95 Si3 c 0.875300 0.780695 0.062460 0.000000 96 Si3 c 0.876242 0.962297 0.688280 0.000000 97 Al1 c 0.050825 0.283982 0.375799 0.000000 98 Al1 c 0.050728 0.460196 0.375082 0.000000 99 Al1 c 0.052109 0.782725 0.876837 0.000000 100 Al1 c 0.052542 0.959391 0.873670 0.000000 101 Al1 c 0.193254 0.282693 0.874450 0.000000 102 Al1 c 0.194330 0.459402 0.876092 0.000000 103 Al1 c 0.194390 0.783199 0.373677 0.000000 104 Al1 c 0.193035 0.960680 0.376594 0.000000 105 Al1 c 0.301813 0.034748 0.124842 0.000000 106 Al1 c 0.302479 0.211750 0.126795 0.000000 107 Al1 c 0.301545 0.531314 0.624056 0.000000 108 Al1 c 0.302399 0.707718 0.625188 0.000000 109 Al1 c 0.443487 0.030902 0.627017 0.000000 110 Al1 c 0.444083 0.208020 0.625605 0.000000 111 Al1 c 0.444343 0.534592 0.125945 0.000000 112 Al1 c 0.443694 0.711901 0.124009 0.000000 113 Al1 c 0.551682 0.282697 0.876414 0.000000 114 Al1 c 0.552871 0.460476 0.874400 0.000000 115 Al1 c 0.552960 0.782859 0.376594 0.000000 116 Al1 c 0.551853 0.959668 0.375276 0.000000 117 Al1 c 0.693565 0.282915 0.374361 0.000000 118 Al1 c 0.693806 0.459888 0.376924 0.000000 119 Al1 c 0.695118 0.783602 0.875443 0.000000 120 Al1 c 0.695327 0.959777 0.875535 0.000000 121 Al1 c 0.802607 0.033275 0.622883 0.000000 122 Al1 c 0.802153 0.210444 0.625170 0.000000 123 Al1 c 0.802410 0.532552 0.125680 0.000000 124 Al1 c 0.801785 0.709820 0.128134 0.000000 125 Al1 c 0.943483 0.032779 0.125098 0.000000 126 Al1 c 0.944119 0.209555 0.122845 0.000000 127 Al1 c 0.943612 0.533461 0.628032 0.000000 128 Al1 c 0.944101 0.709618 0.626114 0.000000 129 Al2 c 0.121356 0.300538 0.214796 0.000000 130 Al2 c 0.120978 0.444424 0.536262 0.000000 131 Al2 c 0.121066 0.797138 0.714898 0.000000 132 Al2 c 0.121128 0.943497 0.035209 0.000000 133 Al2 c 0.125087 0.298431 0.035826 0.000000 134 Al2 c 0.124600 0.444504 0.714839 0.000000 135 Al2 c 0.125631 0.797252 0.535791 0.000000 136 Al2 c 0.124305 0.944973 0.214277 0.000000 137 Al2 c 0.370997 0.050553 0.286698 0.000000 138 Al2 c 0.370842 0.195388 0.964974 0.000000 139 Al2 c 0.371031 0.547486 0.785718 0.000000 140 Al2 c 0.371982 0.692357 0.464220 0.000000 141 Al2 c 0.374561 0.047486 0.465578 0.000000 142 Al2 c 0.374283 0.192566 0.786377 0.000000 143 Al2 c 0.374894 0.550392 0.964514 0.000000 144 Al2 c 0.375661 0.695922 0.285501 0.000000 145 Al2 c 0.620722 0.297993 0.714764 0.000000 146 Al2 c 0.621726 0.444633 0.036376 0.000000 147 Al2 c 0.620877 0.798684 0.215126 0.000000 148 Al2 c 0.621220 0.944639 0.536630 0.000000 149 Al2 c 0.624259 0.299564 0.535692 0.000000 150 Al2 c 0.624915 0.443391 0.215576 0.000000 151 Al2 c 0.624544 0.800698 0.036147 0.000000 152 Al2 c 0.624892 0.942852 0.715089 0.000000 153 Al2 c 0.871624 0.049990 0.783777 0.000000 154 Al2 c 0.871537 0.194829 0.463499 0.000000 155 Al2 c 0.871624 0.548354 0.287288 0.000000 156 Al2 c 0.870896 0.693192 0.967105 0.000000 157 Al2 c 0.874429 0.048207 0.963160 0.000000 158 Al2 c 0.874643 0.192989 0.284334 0.000000 159 Al2 c 0.874615 0.550254 0.466672 0.000000 160 Al2 c 0.874375 0.694898 0.787886 0.000000 161 Al3 c 0.035364 0.121697 0.308148 0.000000 162 Al3 c 0.034519 0.121765 0.939109 0.000000 163 Al3 c 0.034002 0.620080 0.813196 0.000000 164 Al3 c 0.035300 0.622232 0.442018 0.000000 165 Al3 c 0.210417 0.121109 0.941922 0.000000 166 Al3 c 0.211231 0.123464 0.310881 0.000000 167 Al3 c 0.212451 0.619587 0.437788 0.000000 168 Al3 c 0.210988 0.621426 0.809451 0.000000 169 Al3 c 0.284115 0.369726 0.690259 0.000000 170 Al3 c 0.285514 0.372977 0.059166 0.000000 171 Al3 c 0.284576 0.872288 0.190146 0.000000 172 Al3 c 0.284929 0.870448 0.559265 0.000000 173 Al3 c 0.461662 0.371935 0.060456 0.000000 174 Al3 c 0.460319 0.370631 0.691669 0.000000 175 Al3 c 0.461242 0.869626 0.560074 0.000000 176 Al3 c 0.460666 0.873412 0.191771 0.000000 177 Al3 c 0.534211 0.119952 0.810877 0.000000 178 Al3 c 0.534872 0.121519 0.441960 0.000000 179 Al3 c 0.535828 0.621294 0.308641 0.000000 180 Al3 c 0.534730 0.623337 0.940071 0.000000 181 Al3 c 0.711216 0.120745 0.439483 0.000000 182 Al3 c 0.710558 0.121711 0.808163 0.000000 183 Al3 c 0.710544 0.621425 0.942904 0.000000 184 Al3 c 0.711568 0.621986 0.311579 0.000000 185 Al3 c 0.785085 0.370398 0.191173 0.000000 186 Al3 c 0.784650 0.372679 0.560011 0.000000 187 Al3 c 0.785302 0.870849 0.689652 0.000000 188 Al3 c 0.784554 0.872429 0.061489 0.000000 189 Al3 c 0.960877 0.371335 0.561458 0.000000 190 Al3 c 0.961162 0.371908 0.189697 0.000000 191 Al3 c 0.960708 0.870666 0.059751 0.000000 192 Al3 c 0.961723 0.871856 0.690847 0.000000 193 O2 c 0.110061 0.254492 0.356292 0.000000 194 O2 c 0.109812 0.490137 0.393553 0.000000 195 O2 c 0.111051 0.751644 0.858683 0.000000 196 O2 c 0.111039 0.991174 0.891756 0.000000 197 O2 c 0.135324 0.250745 0.892374 0.000000 198 O2 c 0.135651 0.490552 0.858098 0.000000 199 O2 c 0.135956 0.751548 0.392236 0.000000 200 O2 c 0.135028 0.992300 0.357944 0.000000 201 O2 c 0.360364 0.003565 0.143495 0.000000 202 O2 c 0.360671 0.243130 0.108604 0.000000 203 O2 c 0.360211 0.500151 0.642272 0.000000 204 O2 c 0.361044 0.738106 0.605658 0.000000 205 O2 c 0.385855 0.998605 0.608914 0.000000 206 O2 c 0.385069 0.238384 0.644648 0.000000 207 O2 c 0.385814 0.503348 0.107388 0.000000 208 O2 c 0.385510 0.743327 0.142182 0.000000 209 O2 c 0.609863 0.250512 0.858245 0.000000 210 O2 c 0.610791 0.492352 0.892844 0.000000 211 O2 c 0.610903 0.751151 0.358375 0.000000 212 O2 c 0.610787 0.990417 0.393183 0.000000 213 O2 c 0.634951 0.251277 0.392437 0.000000 214 O2 c 0.635201 0.491517 0.358854 0.000000 215 O2 c 0.635693 0.754562 0.894938 0.000000 216 O2 c 0.635856 0.988911 0.856300 0.000000 217 O2 c 0.861523 0.001543 0.639908 0.000000 218 O2 c 0.860625 0.241138 0.606541 0.000000 219 O2 c 0.860936 0.501994 0.144262 0.000000 220 O2 c 0.860679 0.741307 0.110759 0.000000 221 O2 c 0.884851 0.002443 0.106477 0.000000 222 O2 c 0.885124 0.240867 0.140385 0.000000 223 O2 c 0.884429 0.502622 0.610374 0.000000 224 O2 c 0.885521 0.740018 0.645171 0.000000 225 O2 c 0.100001 0.354619 0.251856 0.000000 226 O2 c 0.100183 0.389489 0.499206 0.000000 227 O2 c 0.101543 0.853995 0.749154 0.000000 228 O2 c 0.101494 0.886724 0.001195 0.000000 229 O2 c 0.144911 0.354873 0.000825 0.000000 230 O2 c 0.144243 0.387644 0.749688 0.000000 231 O2 c 0.144571 0.853651 0.500385 0.000000 232 O2 c 0.144211 0.888834 0.249966 0.000000 233 O2 c 0.351175 0.106931 0.251970 0.000000 234 O2 c 0.350712 0.139402 0.000565 0.000000 235 O2 c 0.351264 0.603940 0.750473 0.000000 236 O2 c 0.352583 0.637037 0.500678 0.000000 237 O2 c 0.394464 0.103512 0.501334 0.000000 238 O2 c 0.394120 0.136470 0.751156 0.000000 239 O2 c 0.394685 0.606814 0.999303 0.000000 240 O2 c 0.395880 0.639858 0.250130 0.000000 241 O2 c 0.601474 0.354640 0.750145 0.000000 242 O2 c 0.601894 0.388398 0.000801 0.000000 243 O2 c 0.600913 0.854906 0.250522 0.000000 244 O2 c 0.601051 0.887447 0.502740 0.000000 245 O2 c 0.643577 0.356026 0.500992 0.000000 246 O2 c 0.644464 0.386784 0.249769 0.000000 247 O2 c 0.645613 0.854652 0.998743 0.000000 248 O2 c 0.646060 0.888623 0.752048 0.000000 249 O2 c 0.851765 0.106487 0.749659 0.000000 250 O2 c 0.851781 0.138874 0.499417 0.000000 251 O2 c 0.851780 0.604129 0.251197 0.000000 252 O2 c 0.851132 0.636872 0.001444 0.000000 253 O2 c 0.894338 0.104011 0.999205 0.000000 254 O2 c 0.894688 0.136835 0.249745 0.000000 255 O2 c 0.894841 0.606463 0.501034 0.000000 256 O2 c 0.894056 0.639106 0.751673 0.000000 257 O2 c 0.005136 0.355242 0.139395 0.000000 258 O2 c 0.004162 0.387462 0.612378 0.000000 259 O2 c 0.005757 0.853977 0.640559 0.000000 260 O2 c 0.004248 0.887827 0.110491 0.000000 261 O2 c 0.242986 0.356007 0.111168 0.000000 262 O2 c 0.240802 0.385906 0.639204 0.000000 263 O2 c 0.241489 0.852857 0.610240 0.000000 264 O2 c 0.241593 0.888617 0.138886 0.000000 265 O2 c 0.254594 0.106157 0.361649 0.000000 266 O2 c 0.252975 0.138415 0.890264 0.000000 267 O2 c 0.254437 0.604812 0.860453 0.000000 268 O2 c 0.255400 0.636730 0.386896 0.000000 269 O2 c 0.491120 0.105188 0.390953 0.000000 270 O2 c 0.490611 0.137048 0.861463 0.000000 271 O2 c 0.491280 0.606075 0.889377 0.000000 272 O2 c 0.493059 0.638580 0.360155 0.000000 273 O2 c 0.503171 0.353816 0.640028 0.000000 274 O2 c 0.504535 0.388419 0.111799 0.000000 275 O2 c 0.503298 0.856437 0.139848 0.000000 276 O2 c 0.503973 0.886890 0.611334 0.000000 277 O2 c 0.741565 0.355243 0.611143 0.000000 278 O2 c 0.741782 0.387634 0.140280 0.000000 279 O2 c 0.740685 0.855869 0.111889 0.000000 280 O2 c 0.741297 0.887527 0.639418 0.000000 281 O2 c 0.754658 0.104844 0.858575 0.000000 282 O2 c 0.754464 0.137080 0.388212 0.000000 283 O2 c 0.754730 0.605816 0.362820 0.000000 284 O2 c 0.754585 0.638229 0.892388 0.000000 285 O2 c 0.991448 0.105250 0.887866 0.000000 286 O2 c 0.991468 0.138698 0.358729 0.000000 287 O2 c 0.991160 0.605324 0.391784 0.000000 288 O2 c 0.990506 0.636458 0.864050 0.000000 289 O2 c 0.002719 0.003518 0.858284 0.000000 290 O2 c 0.001356 0.239821 0.390831 0.000000 291 O2 c 0.001071 0.504007 0.359895 0.000000 292 O2 c 0.002790 0.738269 0.892418 0.000000 293 O2 c 0.243813 0.003810 0.391421 0.000000 294 O2 c 0.244879 0.240508 0.857904 0.000000 295 O2 c 0.243685 0.503657 0.891899 0.000000 296 O2 c 0.244225 0.738941 0.359059 0.000000 297 O2 c 0.250841 0.253914 0.143317 0.000000 298 O2 c 0.252274 0.487199 0.608037 0.000000 299 O2 c 0.252684 0.751525 0.641193 0.000000 300 O2 c 0.252222 0.990410 0.109757 0.000000 301 O2 c 0.493151 0.252445 0.609662 0.000000 302 O2 c 0.493924 0.490292 0.141050 0.000000 303 O2 c 0.495160 0.754248 0.107553 0.000000 304 O2 c 0.495102 0.988831 0.643919 0.000000 305 O2 c 0.502349 0.003879 0.359762 0.000000 306 O2 c 0.501873 0.238726 0.891815 0.000000 307 O2 c 0.502021 0.503676 0.859761 0.000000 308 O2 c 0.501415 0.740576 0.393075 0.000000 309 O2 c 0.744746 0.003830 0.890556 0.000000 310 O2 c 0.743324 0.238745 0.358962 0.000000 311 O2 c 0.743463 0.504165 0.392161 0.000000 312 O2 c 0.744349 0.739294 0.860350 0.000000 313 O2 c 0.751270 0.253122 0.640199 0.000000 314 O2 c 0.751850 0.489621 0.110657 0.000000 315 O2 c 0.751871 0.754245 0.141928 0.000000 316 O2 c 0.752605 0.989022 0.609284 0.000000 317 O2 c 0.994051 0.253807 0.108981 0.000000 318 O2 c 0.993014 0.488951 0.642441 0.000000 319 O2 c 0.994012 0.752761 0.609672 0.000000 320 O2 c 0.994018 0.989761 0.140116 0.000000 321 O2 c 0.110225 0.996631 0.256580 0.000000 322 O2 c 0.109035 0.247387 0.993663 0.000000 323 O2 c 0.108805 0.495588 0.757311 0.000000 324 O2 c 0.111564 0.744530 0.494545 0.000000 325 O2 c 0.134849 0.996287 0.994108 0.000000 326 O2 c 0.137768 0.247029 0.254931 0.000000 327 O2 c 0.137128 0.496205 0.494391 0.000000 328 O2 c 0.134959 0.744476 0.756248 0.000000 329 O2 c 0.357849 0.245483 0.745851 0.000000 330 O2 c 0.360970 0.497561 0.005618 0.000000 331 O2 c 0.359513 0.746941 0.243448 0.000000 332 O2 c 0.358841 0.996349 0.507846 0.000000 333 O2 c 0.387109 0.246224 0.007381 0.000000 334 O2 c 0.386400 0.496399 0.743298 0.000000 335 O2 c 0.387452 0.746188 0.504099 0.000000 336 O2 c 0.384949 0.997758 0.245459 0.000000 337 O2 c 0.608205 0.996332 0.755122 0.000000 338 O2 c 0.610622 0.246408 0.494734 0.000000 339 O2 c 0.611304 0.496470 0.256496 0.000000 340 O2 c 0.608257 0.746930 0.996246 0.000000 341 O2 c 0.636607 0.995436 0.494089 0.000000 342 O2 c 0.635851 0.246763 0.757077 0.000000 343 O2 c 0.635636 0.496449 0.994293 0.000000 344 O2 c 0.637004 0.747572 0.257086 0.000000 345 O2 c 0.860541 0.245591 0.242705 0.000000 346 O2 c 0.860479 0.497558 0.508098 0.000000 347 O2 c 0.859408 0.747025 0.746197 0.000000 348 O2 c 0.859081 0.996470 0.005254 0.000000 349 O2 c 0.886448 0.246761 0.505423 0.000000 350 O2 c 0.886833 0.496391 0.245363 0.000000 351 O2 c 0.884819 0.745986 0.008474 0.000000 352 O2 c 0.885872 0.997297 0.742129 0.000000 353 O2 c 0.996614 0.108970 0.252173 0.000000 354 O2 c 0.996416 0.133298 0.996022 0.000000 355 O2 c 0.995920 0.608871 0.755897 0.000000 356 O2 c 0.996832 0.634701 0.498594 0.000000 357 O2 c 0.249765 0.108836 0.997513 0.000000 358 O2 c 0.249000 0.136644 0.253539 0.000000 359 O2 c 0.250574 0.607626 0.494980 0.000000 360 O2 c 0.250152 0.634469 0.753554 0.000000 361 O2 c 0.246104 0.356288 0.747388 0.000000 362 O2 c 0.245759 0.385393 0.003993 0.000000 363 O2 c 0.246573 0.860505 0.247200 0.000000 364 O2 c 0.245536 0.883967 0.503892 0.000000 365 O2 c 0.499716 0.359944 0.003454 0.000000 366 O2 c 0.500130 0.384297 0.746759 0.000000 367 O2 c 0.499613 0.856139 0.503339 0.000000 368 O2 c 0.500107 0.885596 0.247242 0.000000 369 O2 c 0.496175 0.105547 0.754044 0.000000 370 O2 c 0.495720 0.133842 0.497876 0.000000 371 O2 c 0.496692 0.608948 0.252941 0.000000 372 O2 c 0.496945 0.636572 0.997388 0.000000 373 O2 c 0.749633 0.109269 0.496203 0.000000 374 O2 c 0.749590 0.134141 0.752177 0.000000 375 O2 c 0.749198 0.608939 0.998972 0.000000 376 O2 c 0.749633 0.633479 0.254703 0.000000 377 O2 c 0.746254 0.358029 0.247249 0.000000 378 O2 c 0.745478 0.384751 0.504240 0.000000 379 O2 c 0.748201 0.858993 0.747202 0.000000 380 O2 c 0.747742 0.884158 0.003838 0.000000 381 O2 c 0.998013 0.359777 0.503798 0.000000 382 O2 c 0.997844 0.383933 0.247334 0.000000 383 O2 c 0.999563 0.858318 0.003668 0.000000 384 O2 c 0.000276 0.884551 0.746967 0.000000 385 O2 c 0.029000 0.324650 0.324693 0.000000 386 O2 c 0.029212 0.419380 0.426390 0.000000 387 O2 c 0.034818 0.824177 0.824857 0.000000 388 O2 c 0.035342 0.918052 0.925798 0.000000 389 O2 c 0.212616 0.324200 0.925809 0.000000 390 O2 c 0.212923 0.417550 0.824386 0.000000 391 O2 c 0.212503 0.824895 0.425026 0.000000 392 O2 c 0.212980 0.919466 0.324604 0.000000 393 O2 c 0.283497 0.076995 0.176297 0.000000 394 O2 c 0.283044 0.169606 0.075950 0.000000 395 O2 c 0.283371 0.573041 0.675675 0.000000 396 O2 c 0.281379 0.666850 0.573336 0.000000 397 O2 c 0.462616 0.072701 0.575872 0.000000 398 O2 c 0.463322 0.166196 0.676967 0.000000 399 O2 c 0.462631 0.576926 0.074617 0.000000 400 O2 c 0.463390 0.669785 0.174710 0.000000 401 O2 c 0.533530 0.324245 0.824913 0.000000 402 O2 c 0.532981 0.419503 0.926514 0.000000 403 O2 c 0.533118 0.824555 0.325578 0.000000 404 O2 c 0.533529 0.917710 0.427015 0.000000 405 O2 c 0.710569 0.324700 0.426203 0.000000 406 O2 c 0.710864 0.418215 0.324950 0.000000 407 O2 c 0.717029 0.824524 0.926429 0.000000 408 O2 c 0.717112 0.918794 0.824514 0.000000 409 O2 c 0.785249 0.074667 0.674723 0.000000 410 O2 c 0.782149 0.168965 0.573479 0.000000 411 O2 c 0.782184 0.573951 0.177360 0.000000 412 O2 c 0.784251 0.668249 0.076545 0.000000 413 O2 c 0.963773 0.073901 0.073312 0.000000 414 O2 c 0.961622 0.168181 0.174548 0.000000 415 O2 c 0.961477 0.574901 0.576284 0.000000 416 O2 c 0.964584 0.668344 0.677896 0.000000 417 O2 c 0.073034 0.281576 0.169993 0.000000 418 O2 c 0.071212 0.460894 0.580353 0.000000 419 O2 c 0.071743 0.777637 0.671210 0.000000 420 O2 c 0.071633 0.962350 0.079296 0.000000 421 O2 c 0.174310 0.282106 0.080956 0.000000 422 O2 c 0.174528 0.460317 0.670867 0.000000 423 O2 c 0.174987 0.777615 0.579350 0.000000 424 O2 c 0.173369 0.961810 0.169716 0.000000 425 O2 c 0.320969 0.031244 0.329946 0.000000 426 O2 c 0.321406 0.212328 0.920441 0.000000 427 O2 c 0.321883 0.530510 0.830153 0.000000 428 O2 c 0.322762 0.709839 0.419950 0.000000 429 O2 c 0.423838 0.030588 0.421174 0.000000 430 O2 c 0.423483 0.211049 0.830189 0.000000 431 O2 c 0.424943 0.531249 0.921246 0.000000 432 O2 c 0.424613 0.712825 0.330665 0.000000 433 O2 c 0.571427 0.280624 0.670712 0.000000 434 O2 c 0.572741 0.461547 0.081070 0.000000 435 O2 c 0.571774 0.782373 0.169868 0.000000 436 O2 c 0.572009 0.961306 0.581604 0.000000 437 O2 c 0.674262 0.280886 0.579124 0.000000 438 O2 c 0.674385 0.462154 0.171483 0.000000 439 O2 c 0.672983 0.782235 0.080966 0.000000 440 O2 c 0.673503 0.961248 0.670347 0.000000 441 O2 c 0.822398 0.030274 0.828067 0.000000 442 O2 c 0.822300 0.210875 0.418921 0.000000 443 O2 c 0.822474 0.532011 0.331992 0.000000 444 O2 c 0.821863 0.712951 0.922764 0.000000 445 O2 c 0.923642 0.031474 0.918537 0.000000 446 O2 c 0.923670 0.213039 0.328585 0.000000 447 O2 c 0.923780 0.530658 0.422315 0.000000 448 O2 c 0.923652 0.710870 0.832462 0.000000 449 O2 c 0.076589 0.069948 0.954549 0.000000 450 O2 c 0.078242 0.173555 0.295183 0.000000 451 O2 c 0.078702 0.571131 0.454902 0.000000 452 O2 c 0.076439 0.671736 0.797830 0.000000 453 O2 c 0.168550 0.072175 0.296537 0.000000 454 O2 c 0.167892 0.172337 0.955527 0.000000 455 O2 c 0.167744 0.570528 0.796017 0.000000 456 O2 c 0.169619 0.671041 0.453358 0.000000 457 O2 c 0.327645 0.321274 0.045631 0.000000 458 O2 c 0.326311 0.421318 0.704860 0.000000 459 O2 c 0.327801 0.818866 0.545301 0.000000 460 O2 c 0.326577 0.924176 0.205751 0.000000 461 O2 c 0.417871 0.318791 0.706063 0.000000 462 O2 c 0.419665 0.423939 0.044938 0.000000 463 O2 c 0.418546 0.821757 0.204941 0.000000 464 O2 c 0.418740 0.920732 0.545123 0.000000 465 O2 c 0.577293 0.069881 0.454853 0.000000 466 O2 c 0.576758 0.171075 0.795758 0.000000 467 O2 c 0.577560 0.572251 0.954540 0.000000 468 O2 c 0.578139 0.672708 0.295321 0.000000 469 O2 c 0.667991 0.069576 0.795230 0.000000 470 O2 c 0.669112 0.172553 0.455191 0.000000 471 O2 c 0.669532 0.570195 0.296076 0.000000 472 O2 c 0.667746 0.673498 0.955644 0.000000 473 O2 c 0.828112 0.321875 0.545995 0.000000 474 O2 c 0.828480 0.421281 0.205006 0.000000 475 O2 c 0.827290 0.820483 0.047633 0.000000 476 O2 c 0.828161 0.922675 0.703484 0.000000 477 O2 c 0.918378 0.320013 0.203666 0.000000 478 O2 c 0.918202 0.423299 0.547466 0.000000 479 O2 c 0.918159 0.821253 0.704888 0.000000 480 O2 c 0.917325 0.921534 0.045990 0.000000 481 O2 c 0.064716 0.319825 0.433307 0.000000 482 O2 c 0.064451 0.424208 0.317628 0.000000 483 O2 c 0.066820 0.817426 0.934705 0.000000 484 O2 c 0.067844 0.924265 0.816008 0.000000 485 O2 c 0.178951 0.317946 0.816704 0.000000 486 O2 c 0.179161 0.424190 0.933679 0.000000 487 O2 c 0.179713 0.818994 0.316145 0.000000 488 O2 c 0.178716 0.924572 0.433993 0.000000 489 O2 c 0.316805 0.069742 0.067221 0.000000 490 O2 c 0.316357 0.176810 0.184975 0.000000 491 O2 c 0.315899 0.567018 0.566158 0.000000 492 O2 c 0.317280 0.672537 0.682643 0.000000 493 O2 c 0.429339 0.066422 0.684775 0.000000 494 O2 c 0.428846 0.172641 0.568211 0.000000 495 O2 c 0.429366 0.569904 0.183472 0.000000 496 O2 c 0.429780 0.676852 0.065921 0.000000 497 O2 c 0.566448 0.318970 0.933834 0.000000 498 O2 c 0.566711 0.424309 0.817053 0.000000 499 O2 c 0.567432 0.818032 0.434473 0.000000 500 O2 c 0.566701 0.924410 0.317571 0.000000 501 O2 c 0.678956 0.317599 0.316460 0.000000 502 O2 c 0.678853 0.425318 0.434759 0.000000 503 O2 c 0.681471 0.819250 0.817845 0.000000 504 O2 c 0.681421 0.924112 0.933104 0.000000 505 O2 c 0.816571 0.068840 0.565241 0.000000 506 O2 c 0.816595 0.175187 0.682708 0.000000 507 O2 c 0.816485 0.567907 0.068143 0.000000 508 O2 c 0.816199 0.674244 0.185626 0.000000 509 O2 c 0.929448 0.068012 0.182771 0.000000 510 O2 c 0.929678 0.174040 0.065231 0.000000 511 O2 c 0.929446 0.568832 0.685905 0.000000 512 O2 c 0.929326 0.674825 0.568422 0.000000 513 O2 c 0.067536 0.316326 0.069181 0.000000 514 O2 c 0.067050 0.426870 0.681653 0.000000 515 O2 c 0.068607 0.814090 0.570570 0.000000 516 O2 c 0.066993 0.927298 0.180475 0.000000 517 O2 c 0.178762 0.318305 0.181258 0.000000 518 O2 c 0.177881 0.425321 0.569648 0.000000 519 O2 c 0.178355 0.813399 0.680230 0.000000 520 O2 c 0.179031 0.927830 0.068771 0.000000 521 O2 c 0.317395 0.065821 0.431413 0.000000 522 O2 c 0.316873 0.175902 0.820306 0.000000 523 O2 c 0.317603 0.566576 0.930483 0.000000 524 O2 c 0.318139 0.677442 0.318326 0.000000 525 O2 c 0.428272 0.066516 0.320868 0.000000 526 O2 c 0.427946 0.176764 0.931264 0.000000 527 O2 c 0.428333 0.565632 0.819793 0.000000 528 O2 c 0.429576 0.675930 0.430573 0.000000 529 O2 c 0.566681 0.315203 0.569942 0.000000 530 O2 c 0.567032 0.427697 0.182004 0.000000 531 O2 c 0.567124 0.818561 0.069566 0.000000 532 O2 c 0.567541 0.924740 0.681717 0.000000 533 O2 c 0.677979 0.315556 0.680446 0.000000 534 O2 c 0.679064 0.427056 0.070233 0.000000 535 O2 c 0.678392 0.816799 0.181928 0.000000 536 O2 c 0.678935 0.926827 0.569502 0.000000 537 O2 c 0.817754 0.066727 0.928922 0.000000 538 O2 c 0.816965 0.176907 0.317997 0.000000 539 O2 c 0.816969 0.566202 0.432999 0.000000 540 O2 c 0.817500 0.676502 0.821921 0.000000 541 O2 c 0.929266 0.065555 0.817591 0.000000 542 O2 c 0.928524 0.176677 0.429389 0.000000 543 O2 c 0.928308 0.567042 0.321398 0.000000 544 O2 c 0.928654 0.677406 0.933652 0.000000 545 O2 c 0.065613 0.061838 0.323150 0.000000 546 O2 c 0.065376 0.181799 0.926668 0.000000 547 O2 c 0.065297 0.560171 0.825075 0.000000 548 O2 c 0.066290 0.681853 0.426889 0.000000 549 O2 c 0.179955 0.060912 0.927648 0.000000 550 O2 c 0.180561 0.183884 0.323896 0.000000 551 O2 c 0.180944 0.559664 0.425646 0.000000 552 O2 c 0.180062 0.681416 0.823856 0.000000 553 O2 c 0.315300 0.309435 0.677837 0.000000 554 O2 c 0.316606 0.433015 0.072995 0.000000 555 O2 c 0.315697 0.812505 0.176971 0.000000 556 O2 c 0.315931 0.929953 0.574076 0.000000 557 O2 c 0.430472 0.312247 0.073718 0.000000 558 O2 c 0.429245 0.430189 0.676992 0.000000 559 O2 c 0.430585 0.809266 0.572883 0.000000 560 O2 c 0.429698 0.933490 0.178007 0.000000 561 O2 c 0.565440 0.059707 0.824041 0.000000 562 O2 c 0.565811 0.181591 0.428115 0.000000 563 O2 c 0.566244 0.561182 0.323033 0.000000 564 O2 c 0.565301 0.683864 0.927185 0.000000 565 O2 c 0.680203 0.060716 0.426879 0.000000 566 O2 c 0.679593 0.181157 0.823195 0.000000 567 O2 c 0.680374 0.561604 0.927892 0.000000 568 O2 c 0.680716 0.682069 0.324049 0.000000 569 O2 c 0.815498 0.310214 0.176449 0.000000 570 O2 c 0.815107 0.432957 0.574398 0.000000 571 O2 c 0.815716 0.810519 0.676970 0.000000 572 O2 c 0.814913 0.932730 0.074001 0.000000 573 O2 c 0.930510 0.310934 0.573677 0.000000 574 O2 c 0.930804 0.432166 0.176804 0.000000 575 O2 c 0.930281 0.810555 0.074585 0.000000 576 O2 c 0.931131 0.932058 0.676038 0.000000 577 K c 0.082403 0.080025 0.074396 0.000000 578 K c 0.001207 0.243187 0.246675 0.000000 579 K c 0.002199 0.501235 0.504562 0.000000 580 K c 0.083669 0.647774 0.684535 0.000000 581 K c 0.243245 0.001536 0.247190 0.000000 582 K c 0.164183 0.165052 0.171419 0.000000 583 K c 0.247293 0.496312 0.749980 0.000000 584 K c 0.161698 0.641901 0.566040 0.000000 585 K c 0.247933 0.247066 0.000542 0.000000 586 K c 0.332630 0.330328 0.826903 0.000000 587 K c 0.251263 0.748657 0.496940 0.000000 588 K c 0.332212 0.913856 0.325781 0.000000 589 K c 0.498036 0.245885 0.750846 0.000000 590 K c 0.413955 0.413392 0.924901 0.000000 591 K c 0.498276 0.747317 0.250236 0.000000 592 K c 0.414461 0.829937 0.422351 0.000000 593 K c 0.498190 0.996146 0.500737 0.000000 594 K c 0.581539 0.080680 0.672938 0.000000 595 K c 0.502823 0.501247 0.003623 0.000000 596 K c 0.581700 0.664653 0.079532 0.000000 597 K c 0.745105 0.000137 0.746558 0.000000 598 K c 0.663408 0.163610 0.574903 0.000000 599 K c 0.663610 0.579523 0.176142 0.000000 600 K c 0.744383 0.742954 0.004725 0.000000 601 K c 0.752904 0.251598 0.496144 0.000000 602 K c 0.753165 0.491385 0.254931 0.000000 603 K c 0.846279 0.829307 0.932392 0.000000 604 K c 0.849506 0.913718 0.818389 0.000000 605 K c 0.896837 0.329542 0.318664 0.000000 606 K c 0.901284 0.414472 0.432192 0.000000 607 K c 0.993643 0.750306 0.754625 0.000000 608 K c 0.992876 0.991409 0.995831 0.000000 609 K c 0.994614 0.993154 0.253567 0.000000 610 K c 0.994542 0.250824 0.995928 0.000000 611 K c 0.994068 0.491159 0.755195 0.000000 612 K c 0.994485 0.750465 0.497113 0.000000 613 K c 0.251609 0.993503 0.997029 0.000000 614 K c 0.256261 0.256080 0.257283 0.000000 615 K c 0.252601 0.489943 0.496196 0.000000 616 K c 0.251508 0.749177 0.753474 0.000000 617 K c 0.239948 0.237751 0.744294 0.000000 618 K c 0.244408 0.500959 0.003544 0.000000 619 K c 0.244878 0.743285 0.246149 0.000000 620 K c 0.244644 0.999178 0.504591 0.000000 621 K c 0.501536 0.243015 0.003867 0.000000 622 K c 0.500567 0.498660 0.746749 0.000000 623 K c 0.505839 0.737103 0.506695 0.000000 624 K c 0.501563 0.001452 0.247869 0.000000 625 K c 0.489796 0.987643 0.757491 0.000000 626 K c 0.494144 0.249397 0.497829 0.000000 627 K c 0.494613 0.493346 0.253752 0.000000 628 K c 0.489558 0.755754 0.993747 0.000000 629 K c 0.751311 0.992293 0.496110 0.000000 630 K c 0.750562 0.250027 0.753435 0.000000 631 K c 0.751200 0.492648 0.997072 0.000000 632 K c 0.751480 0.750882 0.254928 0.000000 633 K c 0.742909 0.241915 0.246092 0.000000 634 K c 0.742763 0.500695 0.505079 0.000000 635 K c 0.744424 0.741775 0.747430 0.000000 636 K c 0.743969 0.001632 0.003556 0.000000 637 K c 0.001639 0.242656 0.503632 0.000000 638 K c 0.002053 0.501127 0.246976 0.000000 639 K c 0.002652 0.742107 0.005284 0.000000 640 K c 0.003407 0.000455 0.745544 0.000000 641 K c 0.085321 0.373125 0.876468 0.000000 642 K c 0.085041 0.871533 0.375489 0.000000 643 K c 0.159750 0.373753 0.377157 0.000000 644 K c 0.160447 0.870474 0.876106 0.000000 645 K c 0.335356 0.119794 0.623294 0.000000 646 K c 0.335421 0.623074 0.127968 0.000000 647 K c 0.410761 0.123739 0.122232 0.000000 648 K c 0.410652 0.614711 0.628215 0.000000 649 K c 0.585500 0.371375 0.376457 0.000000 650 K c 0.586445 0.872128 0.875662 0.000000 651 K c 0.660764 0.368740 0.872305 0.000000 652 K c 0.660912 0.873776 0.372999 0.000000 653 K c 0.835125 0.121172 0.124857 0.000000 654 K c 0.835109 0.621951 0.626037 0.000000 655 K c 0.910976 0.123406 0.624209 0.000000 656 K c 0.910769 0.620625 0.126227 0.000000 657 K c 0.121934 0.333108 0.628191 0.000000 658 K c 0.122247 0.411266 0.117062 0.000000 659 K c 0.124030 0.832991 0.124304 0.000000 660 K c 0.124452 0.908904 0.626388 0.000000 661 K c 0.371928 0.082998 0.880950 0.000000 662 K c 0.376622 0.160362 0.382557 0.000000 663 K c 0.374211 0.582586 0.368136 0.000000 664 K c 0.369133 0.659992 0.868728 0.000000 665 K c 0.621942 0.332773 0.125696 0.000000 666 K c 0.619562 0.409744 0.628267 0.000000 667 K c 0.625761 0.832092 0.619841 0.000000 668 K c 0.623487 0.911657 0.133982 0.000000 669 K c 0.872909 0.082487 0.375545 0.000000 670 K c 0.873953 0.160684 0.874219 0.000000 671 K c 0.872954 0.582189 0.876533 0.000000 672 K c 0.871659 0.660822 0.375693 0.000000 673 O2 s 0.108220 0.252366 0.352842 0.000000 674 O2 s 0.107959 0.492077 0.397024 0.000000 675 O2 s 0.109131 0.749597 0.854993 0.000000 676 O2 s 0.109125 0.993091 0.895508 0.000000 677 O2 s 0.137283 0.249042 0.896009 0.000000 678 O2 s 0.137516 0.492443 0.854499 0.000000 679 O2 s 0.137839 0.749569 0.395857 0.000000 680 O2 s 0.137031 0.994072 0.354407 0.000000 681 O2 s 0.358465 0.001590 0.147139 0.000000 682 O2 s 0.358686 0.244809 0.105020 0.000000 683 O2 s 0.358263 0.498391 0.645841 0.000000 684 O2 s 0.359134 0.740259 0.602169 0.000000 685 O2 s 0.387799 0.996995 0.605280 0.000000 686 O2 s 0.386921 0.240496 0.648182 0.000000 687 O2 s 0.387716 0.501384 0.103758 0.000000 688 O2 s 0.387511 0.745039 0.145768 0.000000 689 O2 s 0.607964 0.248767 0.854628 0.000000 690 O2 s 0.608805 0.494128 0.896436 0.000000 691 O2 s 0.608910 0.749436 0.354769 0.000000 692 O2 s 0.608840 0.992313 0.396759 0.000000 693 O2 s 0.636842 0.249367 0.396181 0.000000 694 O2 s 0.637108 0.493446 0.355083 0.000000 695 O2 s 0.637554 0.752423 0.898355 0.000000 696 O2 s 0.637706 0.991031 0.852873 0.000000 697 O2 s 0.859663 0.999613 0.643750 0.000000 698 O2 s 0.858661 0.243033 0.603042 0.000000 699 O2 s 0.858966 0.500089 0.147767 0.000000 700 O2 s 0.858799 0.743255 0.106946 0.000000 701 O2 s 0.886822 0.000509 0.102970 0.000000 702 O2 s 0.886991 0.242821 0.144194 0.000000 703 O2 s 0.886332 0.500637 0.606605 0.000000 704 O2 s 0.887467 0.742019 0.648626 0.000000 705 O2 s 0.096244 0.353083 0.252890 0.000000 706 O2 s 0.096313 0.390885 0.498054 0.000000 707 O2 s 0.097922 0.852376 0.750439 0.000000 708 O2 s 0.097857 0.888479 0.999937 0.000000 709 O2 s 0.148586 0.353314 0.999591 0.000000 710 O2 s 0.148094 0.389111 0.751074 0.000000 711 O2 s 0.148279 0.852133 0.499178 0.000000 712 O2 s 0.148052 0.890337 0.251271 0.000000 713 O2 s 0.347389 0.105331 0.250582 0.000000 714 O2 s 0.347014 0.140915 0.001814 0.000000 715 O2 s 0.347581 0.602376 0.749221 0.000000 716 O2 s 0.348658 0.638560 0.501752 0.000000 717 O2 s 0.398154 0.101966 0.502515 0.000000 718 O2 s 0.397953 0.138038 0.749884 0.000000 719 O2 s 0.398498 0.605223 0.000674 0.000000 720 O2 s 0.399555 0.641367 0.248875 0.000000 721 O2 s 0.597735 0.353086 0.751387 0.000000 722 O2 s 0.598065 0.389926 0.999492 0.000000 723 O2 s 0.597242 0.853376 0.251738 0.000000 724 O2 s 0.597316 0.888961 0.501237 0.000000 725 O2 s 0.647279 0.354293 0.499785 0.000000 726 O2 s 0.648112 0.388537 0.251021 0.000000 727 O2 s 0.649405 0.853140 0.997745 0.000000 728 O2 s 0.649823 0.890147 0.753074 0.000000 729 O2 s 0.848117 0.104692 0.748425 0.000000 730 O2 s 0.847923 0.140342 0.500657 0.000000 731 O2 s 0.847910 0.602661 0.249974 0.000000 732 O2 s 0.847467 0.638647 0.002676 0.000000 733 O2 s 0.898189 0.102537 0.000449 0.000000 734 O2 s 0.898340 0.138608 0.248515 0.000000 735 O2 s 0.898475 0.604684 0.502284 0.000000 736 O2 s 0.897965 0.640528 0.750462 0.000000 737 O2 s 0.005526 0.350988 0.140753 0.000000 738 O2 s 0.004576 0.391711 0.610883 0.000000 739 O2 s 0.006196 0.849688 0.641808 0.000000 740 O2 s 0.004795 0.892176 0.109180 0.000000 741 O2 s 0.242207 0.351674 0.109871 0.000000 742 O2 s 0.240398 0.390158 0.640648 0.000000 743 O2 s 0.240955 0.848553 0.608974 0.000000 744 O2 s 0.241093 0.892890 0.140322 0.000000 745 O2 s 0.255038 0.101852 0.360294 0.000000 746 O2 s 0.253697 0.142710 0.891577 0.000000 747 O2 s 0.254960 0.600553 0.859136 0.000000 748 O2 s 0.255803 0.640957 0.388497 0.000000 749 O2 s 0.490613 0.100889 0.392242 0.000000 750 O2 s 0.490235 0.141257 0.860051 0.000000 751 O2 s 0.490851 0.601785 0.890748 0.000000 752 O2 s 0.492351 0.642909 0.358895 0.000000 753 O2 s 0.503804 0.349536 0.641385 0.000000 754 O2 s 0.505048 0.392687 0.110369 0.000000 755 O2 s 0.504044 0.852094 0.141134 0.000000 756 O2 s 0.504581 0.891157 0.610018 0.000000 757 O2 s 0.740967 0.350912 0.609764 0.000000 758 O2 s 0.741220 0.391977 0.141599 0.000000 759 O2 s 0.740302 0.851606 0.110503 0.000000 760 O2 s 0.740912 0.891768 0.640786 0.000000 761 O2 s 0.755234 0.100475 0.857379 0.000000 762 O2 s 0.754939 0.141372 0.389625 0.000000 763 O2 s 0.755193 0.601524 0.361399 0.000000 764 O2 s 0.755135 0.642610 0.893587 0.000000 765 O2 s 0.990975 0.100962 0.889273 0.000000 766 O2 s 0.990904 0.143046 0.357529 0.000000 767 O2 s 0.990641 0.600987 0.393005 0.000000 768 O2 s 0.990150 0.640765 0.862547 0.000000 769 O2 s 0.001692 0.005581 0.860246 0.000000 770 O2 s 0.000461 0.237820 0.388710 0.000000 771 O2 s 0.000186 0.506046 0.362044 0.000000 772 O2 s 0.001669 0.736261 0.890471 0.000000 773 O2 s 0.244705 0.005901 0.389463 0.000000 774 O2 s 0.245631 0.238351 0.860059 0.000000 775 O2 s 0.244697 0.505678 0.889783 0.000000 776 O2 s 0.245211 0.736922 0.360949 0.000000 777 O2 s 0.250104 0.256043 0.141182 0.000000 778 O2 s 0.251272 0.485268 0.610185 0.000000 779 O2 s 0.251691 0.753544 0.639081 0.000000 780 O2 s 0.251235 0.988365 0.111673 0.000000 781 O2 s 0.494104 0.254439 0.611713 0.000000 782 O2 s 0.494888 0.488255 0.139126 0.000000 783 O2 s 0.495915 0.756368 0.109683 0.000000 784 O2 s 0.495921 0.986680 0.641758 0.000000 785 O2 s 0.501339 0.005883 0.361842 0.000000 786 O2 s 0.500871 0.236693 0.889786 0.000000 787 O2 s 0.501100 0.505798 0.861705 0.000000 788 O2 s 0.500650 0.738451 0.390916 0.000000 789 O2 s 0.745623 0.005805 0.888413 0.000000 790 O2 s 0.744364 0.236671 0.360917 0.000000 791 O2 s 0.744517 0.506231 0.390208 0.000000 792 O2 s 0.745254 0.737334 0.862497 0.000000 793 O2 s 0.750460 0.255232 0.638226 0.000000 794 O2 s 0.750993 0.487510 0.112651 0.000000 795 O2 s 0.750904 0.756237 0.140016 0.000000 796 O2 s 0.751614 0.987015 0.611210 0.000000 797 O2 s 0.995008 0.255791 0.110916 0.000000 798 O2 s 0.993983 0.487041 0.640442 0.000000 799 O2 s 0.995020 0.754788 0.611831 0.000000 800 O2 s 0.994903 0.987646 0.138120 0.000000 801 O2 s 0.111893 0.996718 0.258973 0.000000 802 O2 s 0.110873 0.247238 0.991286 0.000000 803 O2 s 0.110654 0.495697 0.759735 0.000000 804 O2 s 0.113200 0.744621 0.492003 0.000000 805 O2 s 0.133239 0.996285 0.991707 0.000000 806 O2 s 0.135936 0.247034 0.257355 0.000000 807 O2 s 0.135287 0.496285 0.491847 0.000000 808 O2 s 0.133356 0.744579 0.758729 0.000000 809 O2 s 0.359698 0.245490 0.743508 0.000000 810 O2 s 0.362634 0.497559 0.008044 0.000000 811 O2 s 0.361359 0.747099 0.241053 0.000000 812 O2 s 0.360694 0.996131 0.510169 0.000000 813 O2 s 0.385239 0.246428 0.009740 0.000000 814 O2 s 0.384569 0.496272 0.740995 0.000000 815 O2 s 0.385695 0.746098 0.506554 0.000000 816 O2 s 0.383301 0.997763 0.243024 0.000000 817 O2 s 0.610057 0.996312 0.757533 0.000000 818 O2 s 0.612233 0.246379 0.492305 0.000000 819 O2 s 0.612910 0.496469 0.258920 0.000000 820 O2 s 0.610072 0.746951 0.993799 0.000000 821 O2 s 0.634800 0.995505 0.491760 0.000000 822 O2 s 0.634064 0.246615 0.759453 0.000000 823 O2 s 0.633985 0.496532 0.991886 0.000000 824 O2 s 0.635165 0.747438 0.259475 0.000000 825 O2 s 0.862185 0.245711 0.240404 0.000000 826 O2 s 0.862104 0.497470 0.510418 0.000000 827 O2 s 0.861151 0.746968 0.743691 0.000000 828 O2 s 0.860819 0.996447 0.007720 0.000000 829 O2 s 0.884723 0.246781 0.507869 0.000000 830 O2 s 0.885090 0.496364 0.242908 0.000000 831 O2 s 0.883199 0.746090 0.010806 0.000000 832 O2 s 0.884246 0.997143 0.739841 0.000000 833 O2 s 0.993720 0.110729 0.251620 0.000000 834 O2 s 0.993568 0.131534 0.996587 0.000000 835 O2 s 0.993224 0.610634 0.755235 0.000000 836 O2 s 0.993965 0.632948 0.499109 0.000000 837 O2 s 0.252545 0.110713 0.998111 0.000000 838 O2 s 0.251768 0.134867 0.253013 0.000000 839 O2 s 0.253175 0.609352 0.495716 0.000000 840 O2 s 0.252929 0.632545 0.752939 0.000000 841 O2 s 0.243394 0.358190 0.747967 0.000000 842 O2 s 0.243053 0.383498 0.003382 0.000000 843 O2 s 0.243714 0.862210 0.247748 0.000000 844 O2 s 0.242738 0.882121 0.503228 0.000000 845 O2 s 0.502532 0.361671 0.002916 0.000000 846 O2 s 0.502907 0.382431 0.747436 0.000000 847 O2 s 0.502305 0.858067 0.502832 0.000000 848 O2 s 0.502840 0.883705 0.247853 0.000000 849 O2 s 0.493477 0.107439 0.753419 0.000000 850 O2 s 0.492913 0.131954 0.498494 0.000000 851 O2 s 0.493894 0.610845 0.252361 0.000000 852 O2 s 0.494180 0.634791 0.997923 0.000000 853 O2 s 0.752458 0.111034 0.496782 0.000000 854 O2 s 0.752486 0.132410 0.751616 0.000000 855 O2 s 0.752103 0.610692 0.999517 0.000000 856 O2 s 0.752482 0.631708 0.254129 0.000000 857 O2 s 0.743469 0.359803 0.247751 0.000000 858 O2 s 0.742721 0.382992 0.503692 0.000000 859 O2 s 0.745319 0.860796 0.747800 0.000000 860 O2 s 0.744859 0.882366 0.003230 0.000000 861 O2 s 0.000882 0.361557 0.503225 0.000000 862 O2 s 0.000736 0.382151 0.247891 0.000000 863 O2 s 0.002370 0.860070 0.003166 0.000000 864 O2 s 0.003069 0.882697 0.747453 0.000000 865 O2 s 0.031974 0.326619 0.323708 0.000000 866 O2 s 0.032120 0.417441 0.427364 0.000000 867 O2 s 0.037340 0.826101 0.823743 0.000000 868 O2 s 0.037760 0.916070 0.926905 0.000000 869 O2 s 0.209937 0.326159 0.926848 0.000000 870 O2 s 0.210171 0.415574 0.823284 0.000000 871 O2 s 0.209811 0.826755 0.426145 0.000000 872 O2 s 0.210429 0.917503 0.323595 0.000000 873 O2 s 0.286123 0.078896 0.177481 0.000000 874 O2 s 0.285719 0.167734 0.074862 0.000000 875 O2 s 0.286050 0.575034 0.676730 0.000000 876 O2 s 0.284190 0.664845 0.572325 0.000000 877 O2 s 0.459947 0.074599 0.574865 0.000000 878 O2 s 0.460501 0.164196 0.678094 0.000000 879 O2 s 0.459997 0.578826 0.073428 0.000000 880 O2 s 0.460700 0.667913 0.175794 0.000000 881 O2 s 0.536206 0.326211 0.823858 0.000000 882 O2 s 0.535543 0.417502 0.927465 0.000000 883 O2 s 0.535821 0.826483 0.324519 0.000000 884 O2 s 0.536217 0.915688 0.428140 0.000000 885 O2 s 0.708116 0.326638 0.427299 0.000000 886 O2 s 0.708424 0.416245 0.323860 0.000000 887 O2 s 0.714057 0.826491 0.927405 0.000000 888 O2 s 0.714140 0.916815 0.823530 0.000000 889 O2 s 0.787716 0.076647 0.675750 0.000000 890 O2 s 0.784768 0.167022 0.572463 0.000000 891 O2 s 0.784811 0.575892 0.178362 0.000000 892 O2 s 0.786772 0.666302 0.075492 0.000000 893 O2 s 0.961144 0.075844 0.072318 0.000000 894 O2 s 0.959092 0.166224 0.175597 0.000000 895 O2 s 0.958968 0.576875 0.575200 0.000000 896 O2 s 0.961851 0.666418 0.678944 0.000000 897 O2 s 0.072063 0.284506 0.168313 0.000000 898 O2 s 0.070333 0.458061 0.582183 0.000000 899 O2 s 0.070986 0.780759 0.669404 0.000000 900 O2 s 0.070830 0.959529 0.081089 0.000000 901 O2 s 0.175262 0.285057 0.082725 0.000000 902 O2 s 0.175316 0.457375 0.668988 0.000000 903 O2 s 0.175781 0.780690 0.581173 0.000000 904 O2 s 0.174361 0.958934 0.167968 0.000000 905 O2 s 0.320233 0.034076 0.331831 0.000000 906 O2 s 0.320474 0.209336 0.918649 0.000000 907 O2 s 0.320999 0.533549 0.831938 0.000000 908 O2 s 0.321882 0.707071 0.418148 0.000000 909 O2 s 0.424719 0.033617 0.419420 0.000000 910 O2 s 0.424320 0.208082 0.831991 0.000000 911 O2 s 0.425662 0.534072 0.919364 0.000000 912 O2 s 0.425595 0.709811 0.332396 0.000000 913 O2 s 0.570512 0.283592 0.668902 0.000000 914 O2 s 0.571734 0.458670 0.082817 0.000000 915 O2 s 0.570812 0.785325 0.168116 0.000000 916 O2 s 0.571065 0.958275 0.583392 0.000000 917 O2 s 0.675001 0.283676 0.580989 0.000000 918 O2 s 0.675190 0.459338 0.169681 0.000000 919 O2 s 0.673938 0.785125 0.082644 0.000000 920 O2 s 0.674461 0.958349 0.668660 0.000000 921 O2 s 0.821588 0.033147 0.829795 0.000000 922 O2 s 0.821345 0.208018 0.417211 0.000000 923 O2 s 0.821514 0.534875 0.333705 0.000000 924 O2 s 0.821053 0.710068 0.921030 0.000000 925 O2 s 0.924617 0.034352 0.916822 0.000000 926 O2 s 0.924503 0.210162 0.330313 0.000000 927 O2 s 0.924576 0.533529 0.420567 0.000000 928 O2 s 0.924571 0.708008 0.834211 0.000000 929 O2 s 0.078654 0.069143 0.952481 0.000000 930 O2 s 0.080250 0.174610 0.297266 0.000000 931 O2 s 0.080573 0.570075 0.452828 0.000000 932 O2 s 0.078483 0.672525 0.799696 0.000000 933 O2 s 0.166653 0.071233 0.298571 0.000000 934 O2 s 0.165887 0.173224 0.953256 0.000000 935 O2 s 0.165816 0.569553 0.798210 0.000000 936 O2 s 0.167659 0.671908 0.451462 0.000000 937 O2 s 0.329717 0.320419 0.047850 0.000000 938 O2 s 0.328341 0.422139 0.702672 0.000000 939 O2 s 0.329850 0.817849 0.547390 0.000000 940 O2 s 0.328621 0.925002 0.203688 0.000000 941 O2 s 0.415767 0.317803 0.703851 0.000000 942 O2 s 0.417601 0.424763 0.047014 0.000000 943 O2 s 0.416480 0.820899 0.202744 0.000000 944 O2 s 0.416781 0.921554 0.547417 0.000000 945 O2 s 0.579361 0.068992 0.452728 0.000000 946 O2 s 0.578669 0.171959 0.797953 0.000000 947 O2 s 0.579412 0.571300 0.952481 0.000000 948 O2 s 0.580168 0.673581 0.297563 0.000000 949 O2 s 0.665918 0.068554 0.797321 0.000000 950 O2 s 0.667066 0.173347 0.453122 0.000000 951 O2 s 0.667480 0.569394 0.298146 0.000000 952 O2 s 0.665707 0.674555 0.953600 0.000000 953 O2 s 0.830036 0.320794 0.548048 0.000000 954 O2 s 0.830388 0.422348 0.202956 0.000000 955 O2 s 0.829283 0.819624 0.049584 0.000000 956 O2 s 0.830148 0.923519 0.701503 0.000000 957 O2 s 0.916380 0.319139 0.201701 0.000000 958 O2 s 0.916165 0.424159 0.549410 0.000000 959 O2 s 0.916234 0.820189 0.702861 0.000000 960 O2 s 0.915419 0.922604 0.048021 0.000000 961 O2 s 0.062346 0.322731 0.433130 0.000000 962 O2 s 0.062062 0.421260 0.317802 0.000000 963 O2 s 0.064333 0.820513 0.934396 0.000000 964 O2 s 0.065294 0.921241 0.816284 0.000000 965 O2 s 0.181359 0.320928 0.816914 0.000000 966 O2 s 0.181664 0.421186 0.933473 0.000000 967 O2 s 0.182076 0.822025 0.316340 0.000000 968 O2 s 0.181143 0.921662 0.433722 0.000000 969 O2 s 0.314285 0.072711 0.067524 0.000000 970 O2 s 0.313989 0.173724 0.184758 0.000000 971 O2 s 0.313592 0.570129 0.566209 0.000000 972 O2 s 0.314761 0.669667 0.682418 0.000000 973 O2 s 0.431727 0.069416 0.684558 0.000000 974 O2 s 0.431360 0.169674 0.568426 0.000000 975 O2 s 0.431905 0.572873 0.183173 0.000000 976 O2 s 0.432144 0.673775 0.066156 0.000000 977 O2 s 0.564091 0.321996 0.933748 0.000000 978 O2 s 0.564327 0.421470 0.817328 0.000000 979 O2 s 0.564971 0.821044 0.434294 0.000000 980 O2 s 0.564218 0.921401 0.317786 0.000000 981 O2 s 0.681450 0.320665 0.316747 0.000000 982 O2 s 0.681328 0.422258 0.434456 0.000000 983 O2 s 0.683865 0.822182 0.818022 0.000000 984 O2 s 0.683802 0.921162 0.932943 0.000000 985 O2 s 0.814177 0.071851 0.565474 0.000000 986 O2 s 0.814162 0.172177 0.682453 0.000000 987 O2 s 0.814029 0.570907 0.068437 0.000000 988 O2 s 0.813810 0.671217 0.185397 0.000000 989 O2 s 0.931895 0.071002 0.182484 0.000000 990 O2 s 0.932073 0.171004 0.065435 0.000000 991 O2 s 0.931838 0.571899 0.685733 0.000000 992 O2 s 0.931839 0.671796 0.568660 0.000000 993 O2 s 0.067722 0.313884 0.072324 0.000000 994 O2 s 0.067208 0.429296 0.678547 0.000000 995 O2 s 0.068696 0.811762 0.573519 0.000000 996 O2 s 0.067133 0.929682 0.177397 0.000000 997 O2 s 0.178574 0.315812 0.178274 0.000000 998 O2 s 0.177715 0.427838 0.572634 0.000000 999 O2 s 0.178252 0.811104 0.677287 0.000000 1000 O2 s 0.178765 0.930139 0.071813 0.000000 1001 O2 s 0.317409 0.063478 0.428309 0.000000 1002 O2 s 0.317059 0.178366 0.823299 0.000000 1003 O2 s 0.317851 0.564158 0.927602 0.000000 1004 O2 s 0.318291 0.679833 0.321507 0.000000 1005 O2 s 0.428024 0.064132 0.323748 0.000000 1006 O2 s 0.427797 0.179201 0.928202 0.000000 1007 O2 s 0.428329 0.563308 0.822901 0.000000 1008 O2 s 0.429339 0.678411 0.427585 0.000000 1009 O2 s 0.566918 0.312884 0.572866 0.000000 1010 O2 s 0.567300 0.430005 0.178960 0.000000 1011 O2 s 0.567338 0.816059 0.072559 0.000000 1012 O2 s 0.567727 0.927262 0.678711 0.000000 1013 O2 s 0.677942 0.313218 0.677360 0.000000 1014 O2 s 0.678928 0.429437 0.073324 0.000000 1015 O2 s 0.678205 0.814349 0.178776 0.000000 1016 O2 s 0.678742 0.929250 0.572655 0.000000 1017 O2 s 0.817877 0.064210 0.925884 0.000000 1018 O2 s 0.817246 0.179210 0.321000 0.000000 1019 O2 s 0.817264 0.563888 0.429993 0.000000 1020 O2 s 0.817621 0.679012 0.824978 0.000000 1021 O2 s 0.928968 0.063266 0.820587 0.000000 1022 O2 s 0.928376 0.179179 0.426337 0.000000 1023 O2 s 0.928177 0.564517 0.324451 0.000000 1024 O2 s 0.928363 0.679671 0.930612 0.000000 1025 O2 s 0.069091 0.062321 0.320761 0.000000 1026 O2 s 0.068690 0.181243 0.928966 0.000000 1027 O2 s 0.068546 0.560796 0.822788 0.000000 1028 O2 s 0.069779 0.681396 0.429215 0.000000 1029 O2 s 0.176462 0.061288 0.929872 0.000000 1030 O2 s 0.177123 0.183386 0.321570 0.000000 1031 O2 s 0.177630 0.560277 0.427994 0.000000 1032 O2 s 0.176551 0.681034 0.821585 0.000000 1033 O2 s 0.318700 0.309873 0.680069 0.000000 1034 O2 s 0.320057 0.432662 0.070713 0.000000 1035 O2 s 0.319030 0.813032 0.179279 0.000000 1036 O2 s 0.319302 0.929498 0.571644 0.000000 1037 O2 s 0.427148 0.312751 0.071405 0.000000 1038 O2 s 0.425857 0.429789 0.679383 0.000000 1039 O2 s 0.427165 0.809743 0.570613 0.000000 1040 O2 s 0.426235 0.933109 0.180279 0.000000 1041 O2 s 0.568891 0.060124 0.821706 0.000000 1042 O2 s 0.569272 0.181228 0.430329 0.000000 1043 O2 s 0.569729 0.561570 0.320791 0.000000 1044 O2 s 0.568766 0.683380 0.929504 0.000000 1045 O2 s 0.676901 0.061236 0.429165 0.000000 1046 O2 s 0.676238 0.180648 0.820818 0.000000 1047 O2 s 0.676911 0.562117 0.930271 0.000000 1048 O2 s 0.677381 0.681524 0.321746 0.000000 1049 O2 s 0.819057 0.310595 0.178679 0.000000 1050 O2 s 0.818657 0.432589 0.572196 0.000000 1051 O2 s 0.819086 0.811108 0.679365 0.000000 1052 O2 s 0.818315 0.932119 0.071626 0.000000 1053 O2 s 0.927092 0.311512 0.571346 0.000000 1054 O2 s 0.927392 0.431591 0.179199 0.000000 1055 O2 s 0.926721 0.810940 0.072366 0.000000 1056 O2 s 0.927602 0.931722 0.678249 0.000000 -------------------------------------------------------------------------------- Final cell parameters and derivatives : -------------------------------------------------------------------------------- a 25.327527 Angstrom dE/de1(xx) 0.007544 eV/strain b 25.277120 Angstrom dE/de2(yy) -0.009144 eV/strain c 25.146195 Angstrom dE/de3(zz) 0.011109 eV/strain alpha 90.044477 Degrees dE/de4(yz) 0.001706 eV/strain beta 89.932751 Degrees dE/de5(xz) -0.005034 eV/strain gamma 89.972018 Degrees dE/de6(xy) -0.003223 eV/strain -------------------------------------------------------------------------------- Primitive cell volume = 16098.750259 Angs**3 Density of cell = 1.566243 g/cm**3 Non-primitive cell volume = 16098.750259 Angs**3 Final internal derivatives : -------------------------------------------------------------------------------- No. Atomic x y z Radius Label (eV) (eV) (eV) (eV/Angs) -------------------------------------------------------------------------------- 1 Si1 c 0.000000 0.000000 0.000000 0.000000 2 Si1 c 0.000130 -0.000362 0.000329 0.000000 3 Si1 c -0.000083 0.000349 -0.000487 0.000000 4 Si1 c 0.000583 -0.001167 0.000159 0.000000 5 Si1 c 0.001899 0.001206 -0.001651 0.000000 6 Si1 c 0.001901 0.001315 -0.000597 0.000000 7 Si1 c -0.000262 0.001073 0.000456 0.000000 8 Si1 c -0.000641 -0.000253 -0.001186 0.000000 9 Si1 c 0.001471 -0.001935 0.000064 0.000000 10 Si1 c -0.000188 0.003196 0.001349 0.000000 11 Si1 c -0.000715 -0.000872 -0.000995 0.000000 12 Si1 c 0.000421 0.000535 -0.002109 0.000000 13 Si1 c 0.003337 -0.008078 -0.002450 0.000000 14 Si1 c -0.041269 -0.001225 -0.001200 0.000000 15 Si1 c 0.000012 0.001340 0.000116 0.000000 16 Si1 c -0.000426 0.000795 0.001276 0.000000 17 Si1 c 0.001434 0.004804 0.001167 0.000000 18 Si1 c -0.004554 0.001171 0.004003 0.000000 19 Si1 c 0.003572 0.001823 0.001151 0.000000 20 Si1 c 0.001259 0.007307 0.008837 0.000000 21 Si1 c -0.001676 0.002690 -0.001187 0.000000 22 Si1 c 0.001671 0.001249 -0.001263 0.000000 23 Si1 c -0.004211 -0.000468 -0.001786 0.000000 24 Si1 c -0.011863 0.004241 -0.012281 0.000000 25 Si1 c 0.004358 0.009245 0.005740 0.000000 26 Si1 c 0.012568 -0.001139 -0.003942 0.000000 27 Si1 c -0.000547 0.000407 0.000776 0.000000 28 Si1 c 0.000459 0.000804 -0.000125 0.000000 29 Si1 c 0.000320 -0.000050 0.000969 0.000000 30 Si1 c -0.001507 -0.001287 0.000057 0.000000 31 Si1 c 0.000442 0.000676 -0.000072 0.000000 32 Si1 c -0.000933 -0.000577 0.000591 0.000000 33 Si2 c -0.000838 0.001177 -0.002317 0.000000 34 Si2 c 0.000288 0.001536 -0.000273 0.000000 35 Si2 c -0.000018 0.001141 0.000304 0.000000 36 Si2 c -0.000481 -0.002216 -0.000003 0.000000 37 Si2 c -0.000346 0.001504 -0.004513 0.000000 38 Si2 c -0.001143 0.002948 0.000045 0.000000 39 Si2 c -0.000455 0.002095 0.000740 0.000000 40 Si2 c -0.002273 0.000230 -0.000125 0.000000 41 Si2 c 0.000885 -0.001926 -0.000037 0.000000 42 Si2 c 0.000483 0.002968 0.001493 0.000000 43 Si2 c 0.002204 -0.002240 -0.001425 0.000000 44 Si2 c -0.000059 -0.002097 -0.002086 0.000000 45 Si2 c 0.000241 -0.004045 0.005513 0.000000 46 Si2 c -0.010327 0.011675 0.010658 0.000000 47 Si2 c -0.003476 -0.000863 0.000835 0.000000 48 Si2 c 0.000102 0.001098 0.001009 0.000000 49 Si2 c 0.008664 -0.011276 0.009222 0.000000 50 Si2 c -0.000167 0.000673 0.000177 0.000000 51 Si2 c 0.000832 0.000597 0.000358 0.000000 52 Si2 c 0.014726 0.056095 0.002308 0.000000 53 Si2 c -0.008077 -0.010188 0.000585 0.000000 54 Si2 c -0.000153 0.000816 0.000971 0.000000 55 Si2 c -0.002259 0.000172 0.000818 0.000000 56 Si2 c -0.005745 -0.009825 -0.013978 0.000000 57 Si2 c 0.006735 -0.001396 0.006136 0.000000 58 Si2 c 0.004060 0.000857 -0.004660 0.000000 59 Si2 c 0.001796 0.000281 -0.001147 0.000000 60 Si2 c -0.000465 -0.000165 -0.001418 0.000000 61 Si2 c 0.001241 -0.001711 0.000463 0.000000 62 Si2 c 0.000797 -0.000726 -0.000940 0.000000 63 Si2 c 0.000251 0.000684 0.000983 0.000000 64 Si2 c -0.000190 -0.000589 0.000488 0.000000 65 Si3 c -0.001050 -0.002738 0.000453 0.000000 66 Si3 c 0.003310 0.000162 0.005616 0.000000 67 Si3 c 0.000527 0.000804 -0.002304 0.000000 68 Si3 c -0.000990 0.000055 -0.000397 0.000000 69 Si3 c -0.000478 0.000493 0.002914 0.000000 70 Si3 c -0.000572 -0.000639 0.002752 0.000000 71 Si3 c 0.000136 0.002176 0.001547 0.000000 72 Si3 c 0.000145 -0.000058 0.000149 0.000000 73 Si3 c -0.004965 0.005154 -0.000532 0.000000 74 Si3 c 0.000291 0.000340 -0.001427 0.000000 75 Si3 c 0.000195 -0.000320 -0.000782 0.000000 76 Si3 c 0.012095 0.004100 0.005252 0.000000 77 Si3 c 0.000024 0.000334 -0.002643 0.000000 78 Si3 c -0.001997 0.001234 0.002479 0.000000 79 Si3 c 0.004402 0.005242 0.001654 0.000000 80 Si3 c 0.000324 -0.001697 0.000669 0.000000 81 Si3 c 0.005566 -0.005663 0.014729 0.000000 82 Si3 c -0.003481 0.002128 -0.006543 0.000000 83 Si3 c -0.000465 0.001851 -0.000422 0.000000 84 Si3 c -0.000321 0.000913 0.000163 0.000000 85 Si3 c -0.004965 -0.005044 0.002702 0.000000 86 Si3 c -0.004011 0.003365 -0.000236 0.000000 87 Si3 c -0.000795 0.002146 0.001178 0.000000 88 Si3 c -0.001511 0.002413 0.001574 0.000000 89 Si3 c 0.000100 -0.000292 -0.000189 0.000000 90 Si3 c 0.001474 0.000909 -0.000483 0.000000 91 Si3 c -0.000351 0.000849 -0.001109 0.000000 92 Si3 c -0.000230 -0.001192 0.001506 0.000000 93 Si3 c 0.004963 0.002526 0.000629 0.000000 94 Si3 c -0.000121 0.000897 0.000705 0.000000 95 Si3 c 0.000132 -0.000189 0.000258 0.000000 96 Si3 c 0.002853 -0.003209 0.002124 0.000000 97 Al1 c 0.000679 -0.000858 0.000278 0.000000 98 Al1 c 0.000789 0.000717 -0.000057 0.000000 99 Al1 c 0.000646 -0.000563 0.000567 0.000000 100 Al1 c 0.000527 -0.000287 -0.000258 0.000000 101 Al1 c 0.000731 0.000762 0.000769 0.000000 102 Al1 c 0.002569 0.000331 -0.001956 0.000000 103 Al1 c -0.000485 -0.000175 -0.000224 0.000000 104 Al1 c 0.000465 -0.000642 -0.000901 0.000000 105 Al1 c -0.000525 -0.000951 -0.000238 0.000000 106 Al1 c 0.001576 -0.000013 -0.002486 0.000000 107 Al1 c -0.000353 0.001796 -0.000037 0.000000 108 Al1 c 0.000630 0.001903 -0.000663 0.000000 109 Al1 c 0.028837 -0.004013 -0.002413 0.000000 110 Al1 c -0.004931 0.001004 0.001614 0.000000 111 Al1 c -0.000425 0.001111 0.000370 0.000000 112 Al1 c -0.000037 0.000946 -0.000548 0.000000 113 Al1 c -0.002408 0.008376 0.004204 0.000000 114 Al1 c -0.004637 0.002084 0.000517 0.000000 115 Al1 c 0.000693 0.002063 0.001927 0.000000 116 Al1 c -0.000737 0.000283 0.003690 0.000000 117 Al1 c -0.000267 0.001823 -0.001821 0.000000 118 Al1 c 0.000817 0.001177 -0.001199 0.000000 119 Al1 c -0.001683 0.001594 -0.001205 0.000000 120 Al1 c -0.003971 0.001307 0.000453 0.000000 121 Al1 c 0.003991 -0.003652 -0.002239 0.000000 122 Al1 c 0.000004 0.002684 0.000822 0.000000 123 Al1 c -0.000068 0.000975 0.001169 0.000000 124 Al1 c -0.000607 0.000690 0.000275 0.000000 125 Al1 c -0.000799 -0.001450 0.000820 0.000000 126 Al1 c -0.001200 0.000165 -0.000685 0.000000 127 Al1 c -0.000704 0.000662 0.000619 0.000000 128 Al1 c -0.000012 0.001118 -0.000219 0.000000 129 Al2 c -0.000276 0.001319 -0.001380 0.000000 130 Al2 c -0.000678 0.001267 0.000886 0.000000 131 Al2 c -0.000157 0.000676 -0.000263 0.000000 132 Al2 c -0.001065 -0.000846 0.001358 0.000000 133 Al2 c 0.001064 0.000878 0.000520 0.000000 134 Al2 c 0.000429 0.001945 -0.001372 0.000000 135 Al2 c -0.000986 0.001054 0.000148 0.000000 136 Al2 c -0.000260 0.000367 -0.000843 0.000000 137 Al2 c 0.000078 -0.002497 0.001644 0.000000 138 Al2 c -0.000375 0.001158 0.000996 0.000000 139 Al2 c -0.001119 -0.002580 0.000579 0.000000 140 Al2 c 0.002114 0.001671 -0.001316 0.000000 141 Al2 c 0.004255 -0.002583 0.000641 0.000000 142 Al2 c -0.007569 0.002302 0.004329 0.000000 143 Al2 c 0.000428 -0.000478 -0.000920 0.000000 144 Al2 c -0.000324 -0.001008 0.000628 0.000000 145 Al2 c -0.002681 -0.009862 -0.000134 0.000000 146 Al2 c -0.000641 -0.000134 0.002400 0.000000 147 Al2 c 0.000004 0.001148 0.000516 0.000000 148 Al2 c -0.006293 0.005231 0.009670 0.000000 149 Al2 c 0.001326 -0.004313 0.004283 0.000000 150 Al2 c 0.000558 0.002195 -0.000289 0.000000 151 Al2 c -0.001064 0.000423 0.000173 0.000000 152 Al2 c -0.015398 0.008628 -0.027125 0.000000 153 Al2 c 0.002705 -0.002171 0.002205 0.000000 154 Al2 c 0.004575 0.000348 -0.003003 0.000000 155 Al2 c -0.000313 -0.000417 0.000649 0.000000 156 Al2 c 0.000877 -0.000231 -0.000980 0.000000 157 Al2 c 0.001755 0.000113 0.000641 0.000000 158 Al2 c 0.000137 -0.000358 -0.000004 0.000000 159 Al2 c 0.001174 0.000617 -0.000705 0.000000 160 Al2 c -0.000329 -0.001065 0.000186 0.000000 161 Al3 c -0.001314 -0.001468 0.000364 0.000000 162 Al3 c -0.000061 -0.000158 0.002049 0.000000 163 Al3 c -0.000460 0.000003 0.000145 0.000000 164 Al3 c -0.000370 0.000236 0.001096 0.000000 165 Al3 c 0.000104 0.001527 0.002547 0.000000 166 Al3 c -0.000110 -0.001018 0.000229 0.000000 167 Al3 c -0.000727 -0.000570 0.000702 0.000000 168 Al3 c 0.000545 -0.000167 -0.001488 0.000000 169 Al3 c -0.001036 0.001698 0.001484 0.000000 170 Al3 c 0.000324 0.000539 -0.001655 0.000000 171 Al3 c -0.001089 -0.000589 -0.000252 0.000000 172 Al3 c 0.001786 0.003348 0.001185 0.000000 173 Al3 c -0.000600 0.000329 -0.000667 0.000000 174 Al3 c 0.000240 0.001475 0.000441 0.000000 175 Al3 c 0.008470 0.009409 0.008036 0.000000 176 Al3 c 0.001796 -0.000161 0.000436 0.000000 177 Al3 c -0.009036 0.017310 0.038143 0.000000 178 Al3 c -0.003928 -0.003132 0.001217 0.000000 179 Al3 c -0.001352 0.001406 0.001219 0.000000 180 Al3 c -0.001069 0.001029 0.001199 0.000000 181 Al3 c 0.000898 -0.003958 -0.008669 0.000000 182 Al3 c 0.005760 0.015854 0.006570 0.000000 183 Al3 c 0.000094 0.000888 -0.000413 0.000000 184 Al3 c 0.000125 0.001164 -0.000401 0.000000 185 Al3 c 0.000258 0.000097 0.000438 0.000000 186 Al3 c 0.000875 0.002252 0.000608 0.000000 187 Al3 c -0.001552 -0.002628 -0.003488 0.000000 188 Al3 c -0.001808 -0.000547 -0.000304 0.000000 189 Al3 c 0.001461 0.001162 -0.000789 0.000000 190 Al3 c 0.000572 0.000362 -0.000297 0.000000 191 Al3 c 0.000787 -0.000873 -0.000317 0.000000 192 Al3 c 0.000082 0.000356 0.000658 0.000000 193 O2 c -0.000392 -0.001430 0.001088 0.000000 194 O2 c 0.000147 0.001059 0.000617 0.000000 195 O2 c -0.000364 -0.000805 0.000232 0.000000 196 O2 c -0.001256 0.002000 0.003072 0.000000 197 O2 c 0.001006 -0.001445 0.003151 0.000000 198 O2 c 0.000721 -0.000817 -0.001692 0.000000 199 O2 c -0.001057 0.001060 -0.000745 0.000000 200 O2 c -0.000812 -0.003562 0.000599 0.000000 201 O2 c 0.000472 -0.000288 -0.000502 0.000000 202 O2 c 0.003526 -0.000354 -0.000287 0.000000 203 O2 c -0.001706 0.000476 -0.000719 0.000000 204 O2 c 0.000381 0.000790 -0.000626 0.000000 205 O2 c 0.005113 0.012658 0.000536 0.000000 206 O2 c -0.000858 0.001557 0.001140 0.000000 207 O2 c 0.001193 -0.000223 0.000019 0.000000 208 O2 c 0.000082 0.000113 -0.000152 0.000000 209 O2 c -0.000292 0.011568 0.015335 0.000000 210 O2 c 0.000665 -0.002764 0.001739 0.000000 211 O2 c -0.001720 0.001344 -0.000651 0.000000 212 O2 c 0.000055 0.003241 -0.000501 0.000000 213 O2 c -0.001663 0.004599 -0.004459 0.000000 214 O2 c 0.000054 -0.001148 -0.000993 0.000000 215 O2 c 0.000688 -0.001377 -0.001508 0.000000 216 O2 c -0.000279 0.013660 -0.009354 0.000000 217 O2 c 0.001417 0.003753 0.001518 0.000000 218 O2 c 0.004001 0.003465 0.001886 0.000000 219 O2 c -0.000867 0.000227 -0.000156 0.000000 220 O2 c 0.000648 -0.001010 0.000227 0.000000 221 O2 c -0.002390 -0.001055 -0.000093 0.000000 222 O2 c 0.000046 0.000934 0.000385 0.000000 223 O2 c 0.000351 -0.001146 -0.000156 0.000000 224 O2 c 0.000125 0.000203 0.000823 0.000000 225 O2 c -0.004627 0.000151 -0.003376 0.000000 226 O2 c -0.001558 -0.000894 0.001824 0.000000 227 O2 c -0.000817 0.000485 0.000748 0.000000 228 O2 c -0.001144 -0.001232 0.000745 0.000000 229 O2 c -0.000820 0.003239 -0.003629 0.000000 230 O2 c -0.000164 0.001505 0.000064 0.000000 231 O2 c 0.000449 0.001447 -0.000851 0.000000 232 O2 c 0.000129 -0.001227 -0.001322 0.000000 233 O2 c 0.001492 -0.003269 -0.001687 0.000000 234 O2 c -0.000540 -0.001915 -0.000910 0.000000 235 O2 c -0.002291 -0.000340 0.000676 0.000000 236 O2 c -0.000282 0.001617 -0.001578 0.000000 237 O2 c -0.000568 0.001110 -0.001180 0.000000 238 O2 c -0.011691 -0.001376 0.002591 0.000000 239 O2 c 0.001562 0.000280 -0.000455 0.000000 240 O2 c -0.000489 0.000205 -0.002157 0.000000 241 O2 c 0.000408 -0.001582 0.001069 0.000000 242 O2 c 0.000854 0.000825 -0.001671 0.000000 243 O2 c -0.001225 0.001188 -0.001549 0.000000 244 O2 c 0.007157 0.004552 -0.001608 0.000000 245 O2 c 0.001430 0.002448 0.002696 0.000000 246 O2 c 0.000406 0.000289 -0.000005 0.000000 247 O2 c 0.002105 0.001772 0.002219 0.000000 248 O2 c -0.006688 0.020704 -0.013479 0.000000 249 O2 c -0.000952 0.001122 0.003111 0.000000 250 O2 c 0.004681 -0.001850 -0.001057 0.000000 251 O2 c -0.000989 0.000044 0.000284 0.000000 252 O2 c -0.000032 -0.000619 0.000538 0.000000 253 O2 c 0.001181 0.000693 -0.001226 0.000000 254 O2 c 0.000205 -0.000408 -0.000078 0.000000 255 O2 c 0.001221 0.000730 -0.000742 0.000000 256 O2 c 0.000752 -0.000554 0.000594 0.000000 257 O2 c -0.001960 0.001683 -0.000881 0.000000 258 O2 c 0.000130 -0.000749 -0.000328 0.000000 259 O2 c -0.001013 0.001051 0.000945 0.000000 260 O2 c -0.001735 -0.003554 0.000365 0.000000 261 O2 c 0.000202 0.004547 -0.001459 0.000000 262 O2 c -0.000765 0.000130 -0.000595 0.000000 263 O2 c -0.001036 0.002932 -0.000409 0.000000 264 O2 c -0.000701 -0.000800 -0.000849 0.000000 265 O2 c -0.000985 -0.001836 -0.002888 0.000000 266 O2 c -0.001116 -0.000678 0.001656 0.000000 267 O2 c -0.000214 0.000372 -0.001644 0.000000 268 O2 c -0.002353 -0.002234 -0.001162 0.000000 269 O2 c -0.002343 -0.000864 0.001942 0.000000 270 O2 c -0.006698 -0.001992 0.020768 0.000000 271 O2 c 0.000867 -0.000033 0.001206 0.000000 272 O2 c -0.001591 -0.000553 0.000385 0.000000 273 O2 c 0.005381 -0.004707 0.006164 0.000000 274 O2 c 0.001327 -0.000967 -0.000574 0.000000 275 O2 c -0.000928 0.000378 -0.000178 0.000000 276 O2 c 0.010115 0.009918 0.007407 0.000000 277 O2 c -0.001561 0.001150 -0.001760 0.000000 278 O2 c -0.000219 -0.000951 0.001180 0.000000 279 O2 c 0.000724 0.001028 0.000379 0.000000 280 O2 c 0.002970 -0.002430 -0.005758 0.000000 281 O2 c 0.008240 0.003684 0.006935 0.000000 282 O2 c 0.001838 -0.002962 -0.004078 0.000000 283 O2 c -0.000171 0.000570 -0.001143 0.000000 284 O2 c 0.000565 -0.001887 -0.000475 0.000000 285 O2 c 0.000204 0.000369 0.002628 0.000000 286 O2 c -0.000985 -0.002363 -0.000856 0.000000 287 O2 c 0.000163 0.001145 0.000956 0.000000 288 O2 c 0.000522 -0.000593 0.000139 0.000000 289 O2 c 0.001827 0.001483 0.001051 0.000000 290 O2 c -0.001644 0.000719 0.000482 0.000000 291 O2 c -0.001278 -0.000807 0.001064 0.000000 292 O2 c 0.000516 -0.000541 0.000692 0.000000 293 O2 c -0.000427 -0.001396 0.000596 0.000000 294 O2 c 0.000938 0.002513 0.001420 0.000000 295 O2 c 0.002555 -0.001184 -0.000610 0.000000 296 O2 c -0.001951 -0.000347 -0.001666 0.000000 297 O2 c 0.001158 0.000069 -0.010272 0.000000 298 O2 c 0.000802 0.001278 0.001430 0.000000 299 O2 c -0.001913 -0.000906 0.000354 0.000000 300 O2 c -0.002006 0.000800 -0.001124 0.000000 301 O2 c 0.007234 -0.011246 0.003534 0.000000 302 O2 c -0.000236 -0.000126 -0.001150 0.000000 303 O2 c 0.000484 0.000309 -0.000830 0.000000 304 O2 c -0.016032 -0.017247 -0.010865 0.000000 305 O2 c -0.002600 -0.003269 0.002420 0.000000 306 O2 c 0.004129 0.000767 -0.001656 0.000000 307 O2 c -0.003937 0.000512 -0.000898 0.000000 308 O2 c 0.006021 -0.004521 -0.001224 0.000000 309 O2 c 0.001601 -0.001517 0.001390 0.000000 310 O2 c -0.000101 0.000737 -0.000501 0.000000 311 O2 c 0.001457 -0.000121 -0.000028 0.000000 312 O2 c -0.002335 0.001079 0.000458 0.000000 313 O2 c -0.008174 -0.013317 0.002016 0.000000 314 O2 c 0.000275 0.000865 0.000612 0.000000 315 O2 c -0.000355 -0.000123 0.000847 0.000000 316 O2 c 0.007084 -0.008142 -0.004290 0.000000 317 O2 c -0.000554 -0.000505 -0.001660 0.000000 318 O2 c -0.000520 0.000272 -0.000787 0.000000 319 O2 c 0.001265 -0.000056 -0.000616 0.000000 320 O2 c 0.002036 0.000796 -0.001279 0.000000 321 O2 c -0.001631 -0.001286 0.000089 0.000000 322 O2 c 0.005630 -0.004318 0.007622 0.000000 323 O2 c 0.001011 0.000522 -0.000419 0.000000 324 O2 c -0.000473 0.000092 -0.000095 0.000000 325 O2 c 0.000395 0.000864 0.003571 0.000000 326 O2 c -0.001547 0.007060 0.008282 0.000000 327 O2 c -0.000542 0.000125 -0.000504 0.000000 328 O2 c 0.000832 0.000095 0.000272 0.000000 329 O2 c 0.001886 0.004215 0.004936 0.000000 330 O2 c 0.000416 -0.001742 -0.002093 0.000000 331 O2 c -0.001190 -0.000653 -0.001725 0.000000 332 O2 c 0.002401 -0.003945 -0.003007 0.000000 333 O2 c -0.001247 0.001066 -0.001670 0.000000 334 O2 c -0.000622 -0.003192 0.002613 0.000000 335 O2 c -0.000501 -0.004248 0.008135 0.000000 336 O2 c 0.000226 -0.001550 -0.001072 0.000000 337 O2 c -0.000741 -0.025460 0.031850 0.000000 338 O2 c 0.003827 -0.007371 0.003223 0.000000 339 O2 c 0.000099 0.000215 0.001127 0.000000 340 O2 c 0.000007 -0.002331 0.001472 0.000000 341 O2 c -0.001122 -0.008267 -0.006168 0.000000 342 O2 c -0.015761 -0.049225 -0.040447 0.000000 343 O2 c 0.000252 -0.003056 -0.002104 0.000000 344 O2 c 0.000256 -0.000712 -0.000686 0.000000 345 O2 c -0.000459 0.000136 0.000011 0.000000 346 O2 c -0.000084 -0.000104 -0.001323 0.000000 347 O2 c 0.000285 -0.000721 -0.001662 0.000000 348 O2 c 0.000041 0.000415 0.000328 0.000000 349 O2 c -0.000673 0.000416 -0.001255 0.000000 350 O2 c -0.000558 -0.000305 0.000604 0.000000 351 O2 c 0.000995 -0.000474 0.000869 0.000000 352 O2 c 0.002178 0.000817 -0.001354 0.000000 353 O2 c -0.003140 -0.001245 0.001548 0.000000 354 O2 c -0.000648 0.000345 0.002080 0.000000 355 O2 c -0.000443 -0.000755 0.000482 0.000000 356 O2 c -0.001596 -0.000639 -0.000642 0.000000 357 O2 c -0.003747 0.005781 0.006398 0.000000 358 O2 c 0.009262 -0.001778 0.006388 0.000000 359 O2 c 0.000277 -0.000305 -0.000040 0.000000 360 O2 c 0.001156 -0.001883 -0.001091 0.000000 361 O2 c -0.000323 0.001126 0.000933 0.000000 362 O2 c 0.000788 -0.002162 -0.001677 0.000000 363 O2 c -0.001929 0.000277 -0.001325 0.000000 364 O2 c -0.000787 0.000985 0.001085 0.000000 365 O2 c -0.001967 -0.001095 0.000487 0.000000 366 O2 c 0.000741 -0.003931 0.000087 0.000000 367 O2 c -0.001690 0.005756 0.001947 0.000000 368 O2 c 0.001496 0.000223 -0.000151 0.000000 369 O2 c -0.006598 0.034085 0.031140 0.000000 370 O2 c -0.000744 0.001765 -0.000651 0.000000 371 O2 c 0.000247 -0.000429 0.000381 0.000000 372 O2 c -0.001009 -0.001181 0.000110 0.000000 373 O2 c 0.001748 0.006349 -0.001918 0.000000 374 O2 c -0.010687 0.010891 -0.003438 0.000000 375 O2 c 0.000682 -0.000656 -0.000348 0.000000 376 O2 c 0.000610 -0.001198 -0.000324 0.000000 377 O2 c -0.000892 0.000259 -0.001066 0.000000 378 O2 c -0.002717 -0.001596 0.001208 0.000000 379 O2 c 0.002424 -0.001821 0.003090 0.000000 380 O2 c -0.003032 -0.000624 -0.000999 0.000000 381 O2 c 0.000973 0.000186 -0.000595 0.000000 382 O2 c -0.000268 0.000750 -0.000531 0.000000 383 O2 c 0.001682 0.000361 0.000521 0.000000 384 O2 c 0.002228 -0.000251 -0.002058 0.000000 385 O2 c -0.001141 -0.000284 0.000808 0.000000 386 O2 c -0.000959 0.000762 -0.000432 0.000000 387 O2 c 0.000994 -0.000669 0.000231 0.000000 388 O2 c 0.000428 0.001268 0.000432 0.000000 389 O2 c 0.000588 0.001881 -0.000716 0.000000 390 O2 c 0.002572 -0.000780 -0.000131 0.000000 391 O2 c -0.002707 0.000977 -0.000103 0.000000 392 O2 c -0.000602 -0.000542 -0.001297 0.000000 393 O2 c 0.001572 -0.000189 -0.003688 0.000000 394 O2 c -0.002686 0.003805 -0.002495 0.000000 395 O2 c -0.000338 -0.000776 0.000769 0.000000 396 O2 c 0.001716 0.000004 0.000728 0.000000 397 O2 c -0.003121 0.004365 -0.000041 0.000000 398 O2 c 0.036492 0.008610 0.009780 0.000000 399 O2 c 0.000063 -0.000954 -0.000862 0.000000 400 O2 c -0.000141 0.000373 -0.001049 0.000000 401 O2 c 0.001383 -0.001445 -0.001213 0.000000 402 O2 c 0.000102 -0.001757 -0.002156 0.000000 403 O2 c 0.001265 0.000197 -0.001343 0.000000 404 O2 c -0.005518 0.001408 0.001144 0.000000 405 O2 c -0.002400 0.000631 0.000186 0.000000 406 O2 c -0.000643 -0.000050 0.000399 0.000000 407 O2 c 0.000520 -0.001962 0.001931 0.000000 408 O2 c 0.001874 -0.001758 0.003218 0.000000 409 O2 c 0.007537 0.007095 -0.001012 0.000000 410 O2 c 0.001124 0.004435 -0.002844 0.000000 411 O2 c -0.000236 -0.000247 0.000855 0.000000 412 O2 c 0.000826 0.000137 0.000206 0.000000 413 O2 c -0.001946 -0.001724 0.002180 0.000000 414 O2 c -0.000900 -0.000813 -0.001156 0.000000 415 O2 c 0.000398 -0.000927 -0.000444 0.000000 416 O2 c -0.000298 0.000141 -0.000747 0.000000 417 O2 c 0.000871 0.001290 -0.004371 0.000000 418 O2 c 0.000323 -0.000919 0.000243 0.000000 419 O2 c 0.000628 -0.000651 -0.000412 0.000000 420 O2 c -0.000657 -0.002921 0.001393 0.000000 421 O2 c 0.001594 -0.002377 -0.002318 0.000000 422 O2 c 0.000858 -0.000546 -0.000349 0.000000 423 O2 c -0.000057 -0.000960 0.000529 0.000000 424 O2 c -0.001489 -0.000334 -0.002125 0.000000 425 O2 c 0.000045 -0.002264 0.001698 0.000000 426 O2 c 0.003145 0.000656 -0.002338 0.000000 427 O2 c 0.000236 -0.002378 0.001234 0.000000 428 O2 c -0.003087 -0.004582 -0.000197 0.000000 429 O2 c 0.002232 -0.006548 0.002710 0.000000 430 O2 c -0.003803 0.003904 -0.000389 0.000000 431 O2 c -0.000492 -0.002014 0.000334 0.000000 432 O2 c 0.001182 -0.003464 -0.003303 0.000000 433 O2 c 0.007430 -0.040946 0.006037 0.000000 434 O2 c -0.001223 -0.001082 -0.000021 0.000000 435 O2 c 0.000538 -0.000765 -0.000040 0.000000 436 O2 c -0.007405 -0.006235 -0.013823 0.000000 437 O2 c -0.003891 -0.016169 0.004578 0.000000 438 O2 c 0.000240 -0.000321 -0.001207 0.000000 439 O2 c -0.001694 -0.000119 0.000557 0.000000 440 O2 c 0.021880 -0.021920 -0.004156 0.000000 441 O2 c -0.002132 0.001947 -0.000246 0.000000 442 O2 c 0.002889 -0.000514 -0.001785 0.000000 443 O2 c 0.000195 -0.000076 0.000642 0.000000 444 O2 c 0.000488 -0.001237 -0.000785 0.000000 445 O2 c 0.000340 0.002540 0.000728 0.000000 446 O2 c -0.000487 -0.000003 0.000413 0.000000 447 O2 c 0.000280 0.000336 -0.000048 0.000000 448 O2 c -0.000392 -0.000924 0.000054 0.000000 449 O2 c 0.001536 0.001041 0.003964 0.000000 450 O2 c -0.005545 0.002301 0.005647 0.000000 451 O2 c -0.000951 -0.000513 -0.001188 0.000000 452 O2 c 0.000586 -0.000407 0.000027 0.000000 453 O2 c 0.001357 -0.005263 0.003912 0.000000 454 O2 c 0.002583 0.001141 0.008385 0.000000 455 O2 c 0.000984 -0.000551 -0.000668 0.000000 456 O2 c -0.000330 0.000065 -0.000027 0.000000 457 O2 c 0.001497 0.001665 -0.001373 0.000000 458 O2 c 0.001803 -0.002069 0.001943 0.000000 459 O2 c -0.002163 0.001673 0.001893 0.000000 460 O2 c -0.001127 -0.000834 -0.001131 0.000000 461 O2 c 0.000271 0.001542 -0.000338 0.000000 462 O2 c -0.001418 -0.000630 -0.001130 0.000000 463 O2 c -0.000932 0.000982 -0.000576 0.000000 464 O2 c -0.000666 -0.000554 -0.004616 0.000000 465 O2 c 0.000640 0.001986 -0.004931 0.000000 466 O2 c 0.004837 0.000060 -0.025148 0.000000 467 O2 c -0.001868 -0.001187 -0.001030 0.000000 468 O2 c 0.001570 -0.000693 -0.000305 0.000000 469 O2 c 0.000533 0.036484 0.001102 0.000000 470 O2 c 0.003790 0.002964 -0.007441 0.000000 471 O2 c 0.001303 -0.000437 -0.000137 0.000000 472 O2 c -0.001768 -0.001357 0.000140 0.000000 473 O2 c -0.000126 0.000310 0.002317 0.000000 474 O2 c -0.000130 0.000526 0.000274 0.000000 475 O2 c 0.000280 0.000677 0.000384 0.000000 476 O2 c 0.000390 -0.001898 0.000129 0.000000 477 O2 c 0.000937 -0.000716 -0.000058 0.000000 478 O2 c -0.000894 -0.000702 -0.000053 0.000000 479 O2 c 0.001661 -0.001906 -0.001326 0.000000 480 O2 c 0.000699 0.000945 0.001161 0.000000 481 O2 c -0.000680 -0.001681 -0.000134 0.000000 482 O2 c -0.000223 0.000760 -0.000416 0.000000 483 O2 c -0.000261 -0.001437 0.000409 0.000000 484 O2 c 0.000679 0.000734 0.000381 0.000000 485 O2 c 0.002205 -0.000645 -0.000539 0.000000 486 O2 c 0.002061 0.003216 -0.002748 0.000000 487 O2 c -0.000588 -0.001376 -0.000286 0.000000 488 O2 c -0.000541 0.001329 -0.000777 0.000000 489 O2 c 0.000344 0.000013 0.000166 0.000000 490 O2 c 0.002445 -0.001164 -0.002226 0.000000 491 O2 c 0.000713 0.001175 -0.001801 0.000000 492 O2 c -0.000207 0.002004 -0.001978 0.000000 493 O2 c -0.021057 0.002147 -0.002179 0.000000 494 O2 c 0.001061 0.003301 -0.000747 0.000000 495 O2 c 0.000375 0.000150 0.000413 0.000000 496 O2 c 0.000067 0.001482 0.000237 0.000000 497 O2 c -0.000270 0.002880 0.003851 0.000000 498 O2 c 0.000338 0.002799 0.004588 0.000000 499 O2 c 0.001205 0.004331 0.001204 0.000000 500 O2 c 0.000102 0.003266 0.001381 0.000000 501 O2 c -0.000331 0.000337 -0.001181 0.000000 502 O2 c -0.000611 0.003062 -0.001666 0.000000 503 O2 c 0.000338 0.003521 -0.004347 0.000000 504 O2 c 0.000036 0.004731 -0.001926 0.000000 505 O2 c 0.004156 -0.001347 0.001750 0.000000 506 O2 c -0.003588 0.003818 0.003187 0.000000 507 O2 c -0.000267 -0.000730 -0.000082 0.000000 508 O2 c 0.000013 0.001210 -0.000667 0.000000 509 O2 c -0.000478 -0.001880 -0.000307 0.000000 510 O2 c 0.000214 0.000752 -0.000883 0.000000 511 O2 c 0.000510 -0.000228 0.000585 0.000000 512 O2 c 0.000725 0.001496 0.000336 0.000000 513 O2 c -0.000105 0.000791 -0.001448 0.000000 514 O2 c 0.000295 0.000423 -0.000677 0.000000 515 O2 c 0.000150 -0.000408 0.000288 0.000000 516 O2 c -0.000280 -0.000471 -0.000258 0.000000 517 O2 c -0.001612 0.002115 -0.005482 0.000000 518 O2 c -0.001230 0.000944 0.000532 0.000000 519 O2 c -0.000584 -0.000490 -0.001183 0.000000 520 O2 c -0.001277 0.000671 0.000551 0.000000 521 O2 c 0.000783 -0.000068 -0.001221 0.000000 522 O2 c -0.000990 0.001777 0.002626 0.000000 523 O2 c 0.001334 -0.002041 -0.001434 0.000000 524 O2 c -0.001249 -0.000533 -0.000352 0.000000 525 O2 c -0.001573 -0.000602 0.002287 0.000000 526 O2 c 0.000515 0.001901 0.000605 0.000000 527 O2 c -0.001433 -0.002572 0.000644 0.000000 528 O2 c -0.000517 -0.003474 -0.001208 0.000000 529 O2 c 0.004292 -0.003699 0.007927 0.000000 530 O2 c 0.001483 -0.000309 0.000072 0.000000 531 O2 c 0.000442 -0.001013 0.000907 0.000000 532 O2 c -0.004786 -0.019399 -0.004410 0.000000 533 O2 c -0.003778 -0.009011 -0.002703 0.000000 534 O2 c 0.000110 -0.000122 0.000833 0.000000 535 O2 c -0.000348 -0.000731 -0.001656 0.000000 536 O2 c 0.002712 -0.003596 -0.005001 0.000000 537 O2 c 0.001512 0.001082 -0.000206 0.000000 538 O2 c 0.000407 0.000390 0.000740 0.000000 539 O2 c 0.000724 -0.000630 -0.001123 0.000000 540 O2 c 0.000292 -0.001132 0.001662 0.000000 541 O2 c -0.000981 0.001580 0.000932 0.000000 542 O2 c 0.001640 -0.000476 -0.001531 0.000000 543 O2 c -0.000732 -0.000245 0.000590 0.000000 544 O2 c 0.000158 -0.000055 -0.000022 0.000000 545 O2 c -0.000159 -0.002527 -0.000002 0.000000 546 O2 c 0.002415 0.001322 0.002688 0.000000 547 O2 c 0.000742 -0.000208 -0.001071 0.000000 548 O2 c 0.000246 0.001536 -0.000265 0.000000 549 O2 c -0.000533 0.001038 0.001780 0.000000 550 O2 c -0.001362 -0.001352 0.003864 0.000000 551 O2 c -0.000608 0.000222 -0.000203 0.000000 552 O2 c -0.000683 0.000032 0.000217 0.000000 553 O2 c -0.001846 0.002685 0.000865 0.000000 554 O2 c 0.001251 0.000915 -0.001273 0.000000 555 O2 c -0.000064 -0.000509 -0.000307 0.000000 556 O2 c 0.002435 0.005305 -0.000580 0.000000 557 O2 c 0.001459 -0.001012 -0.002288 0.000000 558 O2 c -0.002297 0.002205 0.000557 0.000000 559 O2 c 0.001675 0.003471 0.001240 0.000000 560 O2 c -0.000673 -0.000243 0.000336 0.000000 561 O2 c 0.003362 0.008994 0.019783 0.000000 562 O2 c -0.001927 0.001827 -0.000294 0.000000 563 O2 c 0.000173 -0.000109 -0.000399 0.000000 564 O2 c 0.001046 0.000228 0.000170 0.000000 565 O2 c -0.000572 -0.001442 -0.003171 0.000000 566 O2 c -0.006898 -0.000508 -0.013611 0.000000 567 O2 c -0.000006 -0.000919 0.000076 0.000000 568 O2 c -0.001261 0.000770 0.000151 0.000000 569 O2 c 0.000331 -0.000293 -0.000042 0.000000 570 O2 c 0.001344 0.001630 0.000681 0.000000 571 O2 c 0.000186 0.001045 -0.000277 0.000000 572 O2 c 0.000087 -0.000928 0.000395 0.000000 573 O2 c 0.000933 0.000711 -0.000010 0.000000 574 O2 c -0.001629 0.000847 0.000533 0.000000 575 O2 c -0.000723 -0.001720 -0.000127 0.000000 576 O2 c -0.000897 0.002697 -0.000697 0.000000 577 K c -0.000023 -0.000055 0.000046 0.000000 578 K c 0.000228 -0.000149 -0.000200 0.000000 579 K c 0.000469 0.000478 0.000272 0.000000 580 K c -0.000420 -0.000178 -0.000100 0.000000 581 K c 0.000076 -0.000084 0.000105 0.000000 582 K c 0.000280 0.000192 -0.000147 0.000000 583 K c -0.000133 0.000185 -0.000099 0.000000 584 K c 0.001049 0.000562 0.000836 0.000000 585 K c 0.000116 0.000179 -0.000025 0.000000 586 K c -0.000789 0.000296 0.000128 0.000000 587 K c 0.000916 0.000772 -0.000442 0.000000 588 K c 0.000087 -0.000340 -0.000125 0.000000 589 K c -0.001924 0.004928 0.002994 0.000000 590 K c -0.000359 0.000017 0.000224 0.000000 591 K c -0.000071 0.000259 0.000333 0.000000 592 K c 0.000680 0.001206 0.001378 0.000000 593 K c 0.002658 0.001453 0.004426 0.000000 594 K c 0.000141 -0.018220 0.040051 0.000000 595 K c -0.000127 0.000137 0.000107 0.000000 596 K c -0.000193 0.000169 0.000179 0.000000 597 K c 0.000664 0.000684 -0.000266 0.000000 598 K c 0.007054 0.003434 -0.015922 0.000000 599 K c 0.000057 0.000333 0.000187 0.000000 600 K c -0.000004 0.000196 -0.000082 0.000000 601 K c 0.001642 0.002264 -0.000744 0.000000 602 K c 0.000015 0.000167 -0.000072 0.000000 603 K c 0.000771 0.000183 0.000201 0.000000 604 K c -0.001140 -0.000139 0.000210 0.000000 605 K c 0.000334 0.000050 -0.000203 0.000000 606 K c 0.000388 0.000443 -0.000125 0.000000 607 K c -0.000183 0.000156 0.000014 0.000000 608 K c 0.000000 -0.000124 -0.000023 0.000000 609 K c 0.000158 -0.000217 -0.000129 0.000000 610 K c 0.000290 0.000075 0.000124 0.000000 611 K c 0.000123 0.000010 -0.000233 0.000000 612 K c 0.000114 0.000078 0.000011 0.000000 613 K c -0.000060 -0.000138 0.000151 0.000000 614 K c -0.000043 -0.000025 -0.000186 0.000000 615 K c -0.000271 0.000242 0.000263 0.000000 616 K c 0.000088 0.000226 -0.000108 0.000000 617 K c 0.000073 -0.000100 0.000033 0.000000 618 K c 0.000161 0.000021 -0.000226 0.000000 619 K c 0.000038 -0.000113 0.000143 0.000000 620 K c 0.000534 -0.000267 -0.000283 0.000000 621 K c -0.000408 -0.000039 0.000079 0.000000 622 K c -0.000214 0.000105 -0.000053 0.000000 623 K c 0.000239 0.000637 -0.000020 0.000000 624 K c 0.000044 -0.000016 0.000536 0.000000 625 K c 0.000368 -0.002529 -0.006517 0.000000 626 K c -0.000307 -0.000090 -0.000001 0.000000 627 K c 0.000003 0.000098 -0.000087 0.000000 628 K c 0.000121 0.000371 -0.000074 0.000000 629 K c -0.000656 -0.000993 -0.000268 0.000000 630 K c -0.001329 0.000485 -0.000077 0.000000 631 K c 0.000056 0.000257 0.000480 0.000000 632 K c -0.000150 0.000321 0.000032 0.000000 633 K c 0.000230 -0.000103 0.000060 0.000000 634 K c 0.000267 0.000252 -0.000127 0.000000 635 K c 0.000003 -0.000173 0.000025 0.000000 636 K c -0.000007 -0.000024 0.000306 0.000000 637 K c 0.000051 -0.000117 0.000031 0.000000 638 K c -0.000084 0.000210 0.000108 0.000000 639 K c -0.000015 -0.000141 -0.000008 0.000000 640 K c -0.000271 -0.000347 0.000347 0.000000 641 K c 0.000195 0.000161 -0.000071 0.000000 642 K c 0.000175 -0.000022 -0.000037 0.000000 643 K c 0.000077 0.000090 0.000092 0.000000 644 K c 0.000039 -0.000028 -0.000038 0.000000 645 K c -0.000008 -0.002440 -0.001246 0.000000 646 K c 0.000076 0.000141 0.000102 0.000000 647 K c -0.000183 -0.000224 0.000259 0.000000 648 K c -0.000203 0.000371 -0.000194 0.000000 649 K c 0.000137 0.000190 -0.000335 0.000000 650 K c -0.000722 -0.000277 -0.000725 0.000000 651 K c -0.000589 0.001169 0.000573 0.000000 652 K c -0.000478 0.000126 0.000837 0.000000 653 K c 0.000010 -0.000101 -0.000013 0.000000 654 K c -0.000064 0.000209 -0.000035 0.000000 655 K c 0.000408 -0.000440 0.000265 0.000000 656 K c -0.000122 0.000131 0.000058 0.000000 657 K c 0.000018 0.000030 0.000014 0.000000 658 K c 0.000008 0.000221 -0.000084 0.000000 659 K c 0.000015 -0.000147 0.000119 0.000000 660 K c 0.000091 0.000269 -0.000030 0.000000 661 K c -0.000632 -0.000492 0.000233 0.000000 662 K c 0.000159 -0.000253 0.000212 0.000000 663 K c 0.000065 0.000072 0.000208 0.000000 664 K c -0.000064 0.000185 -0.000181 0.000000 665 K c 0.000042 -0.000069 0.000297 0.000000 666 K c 0.000228 -0.000477 -0.000332 0.000000 667 K c -0.002070 0.002001 0.000570 0.000000 668 K c -0.000011 0.000094 0.000143 0.000000 669 K c 0.000148 -0.000304 -0.000293 0.000000 670 K c 0.000433 0.000118 0.000173 0.000000 671 K c -0.000015 -0.000088 -0.000006 0.000000 672 K c -0.000004 0.000177 -0.000075 0.000000 673 O2 s -0.000382 -0.001875 0.002080 0.000000 674 O2 s 0.000135 0.000605 -0.000532 0.000000 675 O2 s -0.000421 -0.000338 -0.000262 0.000000 676 O2 s -0.000943 0.002309 0.003847 0.000000 677 O2 s 0.000470 -0.001440 0.003179 0.000000 678 O2 s -0.000762 -0.001021 -0.001097 0.000000 679 O2 s -0.000310 0.001263 0.000816 0.000000 680 O2 s -0.001654 -0.004535 -0.000076 0.000000 681 O2 s 0.000919 0.000076 -0.001048 0.000000 682 O2 s 0.005182 0.001170 0.000609 0.000000 683 O2 s -0.000745 -0.000410 -0.000688 0.000000 684 O2 s -0.000894 0.000411 0.000507 0.000000 685 O2 s -0.002649 0.012740 -0.002041 0.000000 686 O2 s -0.001398 -0.001879 0.004306 0.000000 687 O2 s 0.000736 -0.000659 0.000525 0.000000 688 O2 s 0.000328 0.000004 -0.000751 0.000000 689 O2 s 0.001422 0.012308 0.021342 0.000000 690 O2 s 0.001353 -0.003930 0.000168 0.000000 691 O2 s -0.001022 0.001470 -0.001012 0.000000 692 O2 s 0.001771 0.002762 -0.002225 0.000000 693 O2 s -0.001593 0.002949 -0.002705 0.000000 694 O2 s 0.000103 -0.001574 -0.000672 0.000000 695 O2 s 0.000800 -0.000478 -0.000432 0.000000 696 O2 s 0.001918 0.018091 -0.024361 0.000000 697 O2 s -0.004232 0.004995 0.002877 0.000000 698 O2 s 0.002738 0.001913 -0.000905 0.000000 699 O2 s -0.000608 0.000545 0.000188 0.000000 700 O2 s -0.000676 -0.001444 -0.001291 0.000000 701 O2 s -0.003309 -0.001188 0.000224 0.000000 702 O2 s 0.000330 0.001540 0.000124 0.000000 703 O2 s 0.000474 -0.001254 -0.000880 0.000000 704 O2 s -0.000275 -0.000143 -0.000162 0.000000 705 O2 s -0.004719 0.000504 -0.004656 0.000000 706 O2 s -0.001648 -0.002343 0.001908 0.000000 707 O2 s -0.000720 0.000243 0.000535 0.000000 708 O2 s -0.001189 -0.001519 0.000917 0.000000 709 O2 s -0.002023 0.005298 -0.004734 0.000000 710 O2 s -0.000834 -0.000044 0.000179 0.000000 711 O2 s 0.000757 0.000302 0.000029 0.000000 712 O2 s 0.000231 -0.001085 -0.002537 0.000000 713 O2 s 0.001130 -0.004326 -0.002833 0.000000 714 O2 s 0.000302 -0.002691 -0.002274 0.000000 715 O2 s -0.001113 0.001546 0.001538 0.000000 716 O2 s -0.001501 0.003024 -0.001791 0.000000 717 O2 s -0.005215 0.004523 -0.002124 0.000000 718 O2 s -0.006351 0.004131 0.000452 0.000000 719 O2 s 0.001321 0.001760 -0.001479 0.000000 720 O2 s 0.000071 0.000470 -0.002825 0.000000 721 O2 s -0.001063 0.003974 0.003343 0.000000 722 O2 s 0.000111 0.000857 -0.001254 0.000000 723 O2 s -0.001333 0.001268 -0.003155 0.000000 724 O2 s 0.005047 0.000565 -0.007540 0.000000 725 O2 s 0.000753 0.001890 0.002992 0.000000 726 O2 s 0.000332 0.000240 -0.000885 0.000000 727 O2 s 0.002679 0.000806 0.001537 0.000000 728 O2 s 0.001135 0.027775 -0.013202 0.000000 729 O2 s -0.003963 -0.001538 0.002092 0.000000 730 O2 s 0.001030 0.000193 0.000785 0.000000 731 O2 s -0.001009 0.000219 0.000687 0.000000 732 O2 s -0.001227 0.000907 0.000420 0.000000 733 O2 s 0.000817 0.000748 -0.002043 0.000000 734 O2 s -0.000143 -0.000574 0.000233 0.000000 735 O2 s 0.000524 0.001824 -0.001200 0.000000 736 O2 s 0.001219 0.000052 0.000629 0.000000 737 O2 s -0.002300 0.002109 -0.001714 0.000000 738 O2 s 0.000660 -0.001073 -0.000609 0.000000 739 O2 s -0.000618 0.000899 0.000764 0.000000 740 O2 s -0.002022 -0.003992 0.000114 0.000000 741 O2 s 0.000097 0.005700 -0.000497 0.000000 742 O2 s -0.001177 -0.001283 -0.001878 0.000000 743 O2 s -0.002973 0.001610 -0.000118 0.000000 744 O2 s -0.001498 -0.000816 -0.001193 0.000000 745 O2 s -0.000913 -0.001170 -0.004212 0.000000 746 O2 s -0.000126 -0.001387 0.000487 0.000000 747 O2 s 0.000969 0.001942 -0.000817 0.000000 748 O2 s -0.003239 -0.001265 -0.000674 0.000000 749 O2 s -0.003801 0.001415 0.000252 0.000000 750 O2 s -0.006266 -0.005314 0.018355 0.000000 751 O2 s -0.000651 0.000561 0.000762 0.000000 752 O2 s -0.001479 -0.001605 -0.000194 0.000000 753 O2 s 0.004667 -0.005453 0.001884 0.000000 754 O2 s 0.001188 -0.001316 0.000467 0.000000 755 O2 s -0.000183 0.000362 -0.000535 0.000000 756 O2 s 0.004042 -0.004703 0.002401 0.000000 757 O2 s 0.000505 -0.000681 -0.004062 0.000000 758 O2 s -0.000467 -0.001110 0.001629 0.000000 759 O2 s -0.000136 0.000245 -0.001532 0.000000 760 O2 s 0.006463 -0.000519 -0.000868 0.000000 761 O2 s 0.008072 0.000589 0.005166 0.000000 762 O2 s 0.001216 -0.000048 -0.000450 0.000000 763 O2 s 0.000597 0.000617 -0.001145 0.000000 764 O2 s -0.000057 -0.000828 0.000879 0.000000 765 O2 s -0.000282 0.001451 0.003017 0.000000 766 O2 s -0.001519 -0.002633 -0.000376 0.000000 767 O2 s -0.000492 0.001301 0.000582 0.000000 768 O2 s 0.000162 -0.000292 -0.000102 0.000000 769 O2 s 0.001113 0.002146 0.001429 0.000000 770 O2 s -0.001375 -0.000034 0.000328 0.000000 771 O2 s -0.001262 -0.000725 0.000627 0.000000 772 O2 s 0.000064 -0.000670 -0.000002 0.000000 773 O2 s 0.000074 -0.002591 0.000751 0.000000 774 O2 s -0.000862 0.000211 0.000931 0.000000 775 O2 s 0.000557 0.001203 0.000288 0.000000 776 O2 s -0.001894 0.000279 -0.000890 0.000000 777 O2 s 0.001628 0.000769 -0.012351 0.000000 778 O2 s 0.001090 0.000310 0.000538 0.000000 779 O2 s -0.002322 -0.000989 -0.000792 0.000000 780 O2 s -0.001956 0.000633 -0.001510 0.000000 781 O2 s 0.005146 -0.015631 0.001640 0.000000 782 O2 s 0.000594 -0.000764 -0.000206 0.000000 783 O2 s 0.000117 0.000355 -0.000921 0.000000 784 O2 s -0.056010 -0.040139 -0.010383 0.000000 785 O2 s -0.004803 -0.003180 0.000237 0.000000 786 O2 s 0.002813 0.001112 -0.004142 0.000000 787 O2 s -0.000506 0.001792 -0.000597 0.000000 788 O2 s 0.005149 -0.004870 -0.002103 0.000000 789 O2 s 0.001946 -0.001489 -0.005036 0.000000 790 O2 s -0.001142 -0.000371 0.005196 0.000000 791 O2 s 0.001432 -0.000476 -0.000367 0.000000 792 O2 s -0.000370 0.002474 0.001194 0.000000 793 O2 s -0.000182 -0.010101 -0.003551 0.000000 794 O2 s -0.000521 0.000564 0.000444 0.000000 795 O2 s -0.000299 -0.000860 -0.000896 0.000000 796 O2 s 0.010688 0.001370 0.001362 0.000000 797 O2 s -0.001121 0.000517 -0.002593 0.000000 798 O2 s -0.000903 -0.000526 -0.000989 0.000000 799 O2 s 0.000825 0.000657 -0.000632 0.000000 800 O2 s 0.001361 0.000201 -0.001900 0.000000 801 O2 s -0.002404 -0.001970 -0.000180 0.000000 802 O2 s 0.005834 -0.003845 0.008024 0.000000 803 O2 s -0.000995 -0.000159 -0.000557 0.000000 804 O2 s 0.001297 -0.000167 0.001098 0.000000 805 O2 s 0.000388 0.000264 0.003416 0.000000 806 O2 s -0.002512 0.008243 0.007832 0.000000 807 O2 s -0.001184 -0.001869 -0.001353 0.000000 808 O2 s 0.000268 0.000684 0.000730 0.000000 809 O2 s 0.005671 -0.000066 0.000253 0.000000 810 O2 s 0.000749 0.001184 0.000221 0.000000 811 O2 s -0.001250 -0.000420 -0.001975 0.000000 812 O2 s -0.000120 -0.001923 -0.005552 0.000000 813 O2 s -0.001026 -0.000616 -0.000332 0.000000 814 O2 s 0.000165 -0.001248 0.000561 0.000000 815 O2 s -0.001820 -0.004029 0.006154 0.000000 816 O2 s 0.000899 -0.002912 -0.000720 0.000000 817 O2 s 0.005526 0.021038 0.025380 0.000000 818 O2 s 0.007503 -0.009725 0.002436 0.000000 819 O2 s -0.000334 0.000376 0.000174 0.000000 820 O2 s 0.001034 -0.001437 0.000541 0.000000 821 O2 s 0.007295 -0.004146 -0.014844 0.000000 822 O2 s -0.021338 -0.033041 -0.012623 0.000000 823 O2 s 0.001024 -0.002524 -0.001246 0.000000 824 O2 s 0.000010 -0.000572 -0.000279 0.000000 825 O2 s 0.000385 -0.000063 -0.000080 0.000000 826 O2 s 0.000103 0.000215 -0.001114 0.000000 827 O2 s -0.000649 -0.000286 -0.000611 0.000000 828 O2 s -0.000946 -0.000568 -0.001175 0.000000 829 O2 s -0.004672 -0.000753 -0.000660 0.000000 830 O2 s -0.000097 -0.000516 0.000996 0.000000 831 O2 s -0.001047 0.000059 -0.000203 0.000000 832 O2 s -0.003501 0.001687 -0.000448 0.000000 833 O2 s -0.003709 -0.001780 0.001758 0.000000 834 O2 s -0.000851 0.000951 0.002546 0.000000 835 O2 s -0.001070 0.001018 0.001554 0.000000 836 O2 s -0.002130 0.001047 -0.000810 0.000000 837 O2 s -0.003300 0.006146 0.006310 0.000000 838 O2 s 0.009495 -0.002844 0.006208 0.000000 839 O2 s 0.001838 0.003754 -0.001185 0.000000 840 O2 s 0.001506 0.001093 -0.001146 0.000000 841 O2 s -0.001916 -0.000205 -0.002004 0.000000 842 O2 s -0.000981 -0.001069 0.000308 0.000000 843 O2 s -0.001244 -0.000159 -0.000830 0.000000 844 O2 s -0.001819 0.000217 -0.000003 0.000000 845 O2 s 0.001687 -0.000445 0.002568 0.000000 846 O2 s 0.000631 -0.001199 -0.001061 0.000000 847 O2 s 0.000339 0.005525 0.001184 0.000000 848 O2 s 0.000748 0.000854 -0.001490 0.000000 849 O2 s 0.022522 0.037497 0.003536 0.000000 850 O2 s 0.001251 0.010709 0.000210 0.000000 851 O2 s -0.000214 0.000089 0.000916 0.000000 852 O2 s -0.001175 0.000359 -0.000510 0.000000 853 O2 s -0.000349 0.014281 0.003977 0.000000 854 O2 s -0.007454 0.003996 -0.003682 0.000000 855 O2 s 0.000854 0.001258 -0.000675 0.000000 856 O2 s 0.000266 -0.000685 -0.000687 0.000000 857 O2 s -0.001235 0.000240 -0.000530 0.000000 858 O2 s -0.002151 -0.003322 0.000263 0.000000 859 O2 s 0.000075 0.005310 0.000816 0.000000 860 O2 s -0.001555 -0.001272 -0.002156 0.000000 861 O2 s 0.001045 -0.000726 -0.000536 0.000000 862 O2 s -0.000479 0.001212 -0.000918 0.000000 863 O2 s 0.000876 0.000201 0.000191 0.000000 864 O2 s 0.003433 -0.001088 -0.002723 0.000000 865 O2 s -0.001073 -0.000170 0.000659 0.000000 866 O2 s -0.000793 -0.000160 -0.000830 0.000000 867 O2 s 0.002342 -0.001395 -0.000021 0.000000 868 O2 s 0.001168 0.000601 0.000353 0.000000 869 O2 s -0.002877 0.001417 -0.000816 0.000000 870 O2 s -0.000020 -0.000091 -0.001112 0.000000 871 O2 s -0.002585 -0.000167 0.000652 0.000000 872 O2 s 0.000352 -0.001372 -0.001800 0.000000 873 O2 s 0.002747 -0.001411 -0.003626 0.000000 874 O2 s -0.002997 0.002810 -0.001622 0.000000 875 O2 s 0.000321 0.000583 -0.000223 0.000000 876 O2 s 0.001170 0.002799 -0.001158 0.000000 877 O2 s -0.023486 0.024763 -0.003050 0.000000 878 O2 s 0.061311 -0.011905 0.008813 0.000000 879 O2 s 0.000008 -0.000118 0.000277 0.000000 880 O2 s -0.000394 0.000967 -0.000485 0.000000 881 O2 s 0.000119 -0.000984 0.002388 0.000000 882 O2 s 0.002198 0.000582 -0.000130 0.000000 883 O2 s 0.002218 0.000971 -0.001883 0.000000 884 O2 s -0.006699 0.001307 -0.002784 0.000000 885 O2 s -0.002437 -0.001124 0.000905 0.000000 886 O2 s -0.000144 0.000083 0.000077 0.000000 887 O2 s 0.000579 -0.000568 0.000821 0.000000 888 O2 s 0.002679 0.006545 -0.002156 0.000000 889 O2 s 0.000227 0.004951 -0.001254 0.000000 890 O2 s -0.001040 0.000165 -0.006088 0.000000 891 O2 s -0.000571 0.000204 0.000565 0.000000 892 O2 s 0.000984 0.001304 -0.001403 0.000000 893 O2 s -0.003340 -0.001618 0.002319 0.000000 894 O2 s -0.001996 -0.000757 -0.000962 0.000000 895 O2 s -0.000916 -0.000236 -0.000265 0.000000 896 O2 s -0.001167 0.001011 0.000243 0.000000 897 O2 s 0.000181 0.002552 -0.004799 0.000000 898 O2 s -0.000400 -0.002522 0.000129 0.000000 899 O2 s 0.001098 -0.000365 -0.000446 0.000000 900 O2 s -0.001398 -0.004544 0.001534 0.000000 901 O2 s -0.000205 -0.001844 -0.001473 0.000000 902 O2 s -0.000330 -0.001815 -0.001095 0.000000 903 O2 s -0.000813 -0.002982 -0.000050 0.000000 904 O2 s -0.001756 -0.000291 -0.002128 0.000000 905 O2 s 0.000591 -0.003658 0.001947 0.000000 906 O2 s 0.003148 -0.002951 -0.001624 0.000000 907 O2 s 0.000812 0.000165 0.000643 0.000000 908 O2 s -0.004473 -0.005314 -0.000548 0.000000 909 O2 s -0.000578 -0.009086 -0.001198 0.000000 910 O2 s 0.001821 -0.001788 -0.001926 0.000000 911 O2 s 0.000755 0.001232 0.000980 0.000000 912 O2 s 0.000555 -0.004611 -0.003925 0.000000 913 O2 s 0.001845 -0.050302 0.004601 0.000000 914 O2 s -0.000208 -0.001052 0.000485 0.000000 915 O2 s 0.000138 -0.000571 -0.000698 0.000000 916 O2 s -0.000248 -0.048466 -0.031594 0.000000 917 O2 s -0.000127 -0.022693 -0.005539 0.000000 918 O2 s -0.000428 0.000105 -0.001067 0.000000 919 O2 s -0.001059 -0.000192 0.000049 0.000000 920 O2 s 0.034133 -0.021388 0.007180 0.000000 921 O2 s -0.006585 -0.002630 -0.000743 0.000000 922 O2 s 0.000115 -0.002005 0.001270 0.000000 923 O2 s 0.000461 -0.000567 0.000913 0.000000 924 O2 s -0.000056 0.000441 -0.001097 0.000000 925 O2 s -0.000731 0.002610 0.000430 0.000000 926 O2 s -0.000332 0.000120 0.000305 0.000000 927 O2 s -0.000115 -0.000004 -0.000210 0.000000 928 O2 s -0.000845 -0.000690 0.000343 0.000000 929 O2 s 0.001061 0.001604 0.005690 0.000000 930 O2 s -0.006451 0.002046 0.008979 0.000000 931 O2 s -0.001842 -0.000020 -0.003329 0.000000 932 O2 s -0.000465 0.000885 0.000207 0.000000 933 O2 s 0.000859 -0.006098 0.005528 0.000000 934 O2 s 0.001801 -0.000094 0.011577 0.000000 935 O2 s 0.000044 0.000865 0.000267 0.000000 936 O2 s 0.000529 0.002851 0.000995 0.000000 937 O2 s 0.001105 0.001873 0.002594 0.000000 938 O2 s 0.001163 -0.001958 -0.000969 0.000000 939 O2 s -0.003527 0.001586 0.002205 0.000000 940 O2 s -0.000960 -0.001874 -0.001218 0.000000 941 O2 s 0.000949 0.001225 -0.003454 0.000000 942 O2 s 0.000703 -0.000342 0.002710 0.000000 943 O2 s -0.000984 0.000436 -0.000846 0.000000 944 O2 s -0.003709 -0.001297 -0.004443 0.000000 945 O2 s 0.003248 0.007438 -0.010276 0.000000 946 O2 s -0.020668 -0.022318 -0.014669 0.000000 947 O2 s -0.000446 -0.001508 -0.001666 0.000000 948 O2 s 0.000429 -0.000749 -0.000222 0.000000 949 O2 s -0.003743 0.019810 -0.018401 0.000000 950 O2 s 0.006904 0.002073 -0.006362 0.000000 951 O2 s 0.000472 -0.000307 -0.000031 0.000000 952 O2 s 0.000333 -0.000548 0.000528 0.000000 953 O2 s -0.001209 -0.001950 0.001316 0.000000 954 O2 s 0.000002 -0.000147 0.000377 0.000000 955 O2 s -0.000763 -0.000496 -0.001790 0.000000 956 O2 s -0.003460 0.002412 0.001660 0.000000 957 O2 s 0.001154 -0.000849 -0.000738 0.000000 958 O2 s -0.000282 -0.000733 -0.000554 0.000000 959 O2 s 0.000888 -0.001840 -0.002467 0.000000 960 O2 s -0.000184 0.000330 0.000131 0.000000 961 O2 s -0.000301 -0.002137 0.000161 0.000000 962 O2 s 0.000069 0.000534 -0.000909 0.000000 963 O2 s -0.000085 -0.001395 0.000387 0.000000 964 O2 s 0.001577 0.001031 0.000385 0.000000 965 O2 s -0.001284 -0.001180 -0.002237 0.000000 966 O2 s -0.000629 0.004118 -0.002581 0.000000 967 O2 s 0.000871 -0.000967 -0.000435 0.000000 968 O2 s 0.000523 0.000799 -0.001172 0.000000 969 O2 s -0.000120 0.000076 0.000186 0.000000 970 O2 s 0.004612 -0.000837 -0.002295 0.000000 971 O2 s 0.002731 0.001500 -0.001992 0.000000 972 O2 s 0.000095 0.002656 -0.001223 0.000000 973 O2 s -0.016506 0.022899 0.009715 0.000000 974 O2 s 0.003458 0.004796 0.006226 0.000000 975 O2 s 0.000343 -0.000534 0.000312 0.000000 976 O2 s 0.000061 0.001736 -0.000918 0.000000 977 O2 s 0.000528 0.001947 0.005400 0.000000 978 O2 s 0.002917 0.006316 0.003237 0.000000 979 O2 s 0.003091 0.001797 -0.000570 0.000000 980 O2 s -0.000595 0.002250 0.000193 0.000000 981 O2 s 0.000052 -0.000080 -0.001272 0.000000 982 O2 s -0.001004 0.002262 -0.001595 0.000000 983 O2 s -0.002473 0.004921 -0.006167 0.000000 984 O2 s 0.000127 0.005809 -0.006139 0.000000 985 O2 s 0.000862 0.002468 0.003378 0.000000 986 O2 s -0.003395 -0.000971 0.000558 0.000000 987 O2 s -0.000631 -0.000422 0.000403 0.000000 988 O2 s -0.000736 0.000666 -0.000599 0.000000 989 O2 s -0.001452 -0.002238 -0.000092 0.000000 990 O2 s -0.000143 0.000883 -0.001136 0.000000 991 O2 s -0.000625 -0.000063 0.000697 0.000000 992 O2 s -0.000054 0.002225 -0.000502 0.000000 993 O2 s -0.001092 0.002224 -0.001839 0.000000 994 O2 s 0.000182 -0.000648 -0.000398 0.000000 995 O2 s 0.000723 -0.000025 0.000474 0.000000 996 O2 s -0.000626 -0.001376 -0.000536 0.000000 997 O2 s -0.001491 0.004164 -0.005558 0.000000 998 O2 s -0.001230 -0.000327 0.000509 0.000000 999 O2 s -0.001277 -0.000284 -0.001563 0.000000 1000 O2 s -0.001691 0.000337 0.000696 0.000000 1001 O2 s -0.000181 -0.000500 -0.003563 0.000000 1002 O2 s -0.001700 -0.003098 0.001397 0.000000 1003 O2 s 0.001014 0.001827 -0.001111 0.000000 1004 O2 s -0.001411 -0.000142 -0.000640 0.000000 1005 O2 s -0.003571 -0.002132 0.001386 0.000000 1006 O2 s 0.000814 0.000388 0.000902 0.000000 1007 O2 s -0.000910 0.001535 0.000665 0.000000 1008 O2 s -0.001217 -0.004250 -0.001069 0.000000 1009 O2 s 0.000611 -0.000521 0.002418 0.000000 1010 O2 s 0.001415 -0.000357 0.000173 0.000000 1011 O2 s 0.000313 -0.000496 0.000490 0.000000 1012 O2 s 0.010751 -0.037283 0.015762 0.000000 1013 O2 s 0.000760 -0.002160 -0.000649 0.000000 1014 O2 s -0.000415 0.000413 0.001135 0.000000 1015 O2 s -0.000798 -0.000617 -0.002449 0.000000 1016 O2 s 0.011536 -0.006653 -0.002308 0.000000 1017 O2 s 0.001601 -0.002375 -0.001812 0.000000 1018 O2 s 0.001030 -0.000419 0.001354 0.000000 1019 O2 s 0.001080 -0.000078 -0.001331 0.000000 1020 O2 s 0.000574 0.001170 0.001397 0.000000 1021 O2 s -0.002009 0.001579 0.001059 0.000000 1022 O2 s 0.001001 -0.001963 -0.000420 0.000000 1023 O2 s -0.000649 -0.000342 0.000560 0.000000 1024 O2 s -0.000418 0.000038 -0.000384 0.000000 1025 O2 s -0.001194 -0.003008 0.000665 0.000000 1026 O2 s 0.002540 0.001588 0.004925 0.000000 1027 O2 s 0.000714 -0.000755 -0.000308 0.000000 1028 O2 s -0.000237 0.001924 0.000363 0.000000 1029 O2 s 0.000000 0.001398 0.002881 0.000000 1030 O2 s -0.001279 -0.001239 0.006681 0.000000 1031 O2 s -0.000982 0.000259 -0.001893 0.000000 1032 O2 s 0.000348 0.000494 0.000349 0.000000 1033 O2 s -0.002782 0.001648 -0.003012 0.000000 1034 O2 s 0.000817 0.002033 0.002403 0.000000 1035 O2 s -0.000442 0.000014 -0.000095 0.000000 1036 O2 s -0.000664 0.003164 0.000468 0.000000 1037 O2 s 0.002252 -0.000924 0.001038 0.000000 1038 O2 s -0.000283 0.002147 -0.003944 0.000000 1039 O2 s -0.000043 0.000582 0.003222 0.000000 1040 O2 s -0.001101 -0.000185 0.001200 0.000000 1041 O2 s -0.007525 0.010524 -0.002129 0.000000 1042 O2 s 0.001529 0.005932 -0.000657 0.000000 1043 O2 s 0.000670 -0.000716 -0.000625 0.000000 1044 O2 s -0.000485 0.000673 0.000189 0.000000 1045 O2 s 0.004135 0.003296 -0.003177 0.000000 1046 O2 s 0.000355 0.001521 0.004039 0.000000 1047 O2 s -0.001136 -0.001147 0.000584 0.000000 1048 O2 s -0.000148 0.000458 0.000492 0.000000 1049 O2 s 0.000337 0.000327 -0.000338 0.000000 1050 O2 s 0.000752 0.000893 0.000605 0.000000 1051 O2 s -0.000149 0.001485 0.001027 0.000000 1052 O2 s 0.000248 -0.000887 -0.002447 0.000000 1053 O2 s 0.001416 -0.000048 -0.001325 0.000000 1054 O2 s -0.001347 0.000926 0.000870 0.000000 1055 O2 s -0.000760 -0.001361 -0.001466 0.000000 1056 O2 s -0.002141 0.001890 -0.001457 0.000000 -------------------------------------------------------------------------------- Time to end of optimisation = 16071.2988 seconds Timing analysis for Gulp : -------------------------------------------------------------------------------- Task / Subroutine Time (Seconds) -------------------------------------------------------------------------------- Calculation of reciprocal space energy and derivatives 4075.5371 Calculation of real space energy and derivatives 580.7637 Calculation of real space energy using symmetry 3855.2871 Calculation of three-body energy and derivatives 1485.3516 Calculation of hessian 38.3867 Matrix inversion 5853.0469 Symmetry generation of equivalent positions 124.8437 Global summation overhead 0.0371 -------------------------------------------------------------------------------- Total CPU time 16071.3027 -------------------------------------------------------------------------------- Dump file written as try1.dump XTL file written as try1.xtl **** GULP has completed with 4 warnings - beware! **** gdis-0.90/models/CVS/0000755000175000017500000000000011066565513012754 5ustar seanseangdis-0.90/models/CVS/Entries0000644000175000017500000001007711066565513014315 0ustar seansean/1FUF.gin/1.2/Fri May 20 07:33:13 2005// /1_C2H4_HOOH_Tifer.arc/1.1/Wed Sep 17 10:00:47 2003// /BUG_MS1.gin/1.1.1.1/Fri Aug 15 03:56:32 2003// /BUG_wrong_charges.gout/1.1.1.1/Fri Aug 15 03:56:36 2003// /adp1.cif/1.1.1.1/Fri Aug 15 03:56:36 2003// /adp2.cif/1.1.1.1/Fri Aug 15 03:56:36 2003// /al2o3_BFDH.gmf/1.1.1.1/Fri Aug 15 03:56:36 2003// /aloh4-.car/1.1.1.1/Fri Aug 15 03:56:36 2003// /arag.gin/1.1.1.1/Fri Aug 15 03:56:36 2003// /baso4-011.mvnout/1.1.1.1/Fri Aug 15 03:56:37 2003// /baso4.gin/1.1.1.1/Fri Aug 15 03:56:37 2003// /box.gin/1.1.1.1/Fri Aug 15 03:56:37 2003// /burk1.cif/1.1.1.1/Fri Aug 15 03:56:37 2003// /burk2.cif/1.1.1.1/Fri Aug 15 03:56:37 2003// /burk3.cif/1.1.1.1/Fri Aug 15 03:56:37 2003// /burkeite_p1.xtl/1.1.1.1/Fri Aug 15 03:56:37 2003// /butane.gin/1.1.1.1/Fri Aug 15 03:56:37 2003// /butanol.gin/1.1.1.1/Fri Aug 15 03:56:37 2003// /caco3-5116.mvnout/1.1.1.1/Fri Aug 15 03:56:37 2003// /caco3-5116.xtl/1.1.1.1/Fri Aug 15 03:56:38 2003// /caco3.gin/1.1.1.1/Fri Aug 15 03:56:38 2003// /calc2d.gin/1.1.1.1/Fri Aug 15 03:56:38 2003// /calc2d.xtl/1.1.1.1/Fri Aug 15 03:56:38 2003// /calcite.gin/1.1.1.1/Fri Aug 15 03:56:38 2003// /calcite_-114_0.0000.gin/1.1.1.1/Fri Aug 15 03:56:38 2003// /calcite_-114_0.0000.got/1.1.1.1/Fri Aug 15 03:56:39 2003// /calcite_-114_0.0000.res/1.1.1.1/Fri Aug 15 03:56:39 2003// /calcite_0-14_0.5000.gin/1.1.1.1/Fri Aug 15 03:56:39 2003// /calcite_0-14_0.5000.got/1.1.1.1/Fri Aug 15 03:56:40 2003// /calcite_0-14_0.5000.res/1.1.1.1/Fri Aug 15 03:56:40 2003// /calcite_104_0.0000.gin/1.1.1.1/Fri Aug 15 03:56:40 2003// /calcite_104_0.0000.got/1.1.1.1/Fri Aug 15 03:56:41 2003// /calcite_104_0.0000.res/1.1.1.1/Fri Aug 15 03:56:41 2003// /calcite_rhomb.gin/1.1.1.1/Fri Aug 15 03:56:41 2003// /canamgk.gin/1.1.1.1/Fri Aug 15 03:56:41 2003// /caox.cif/1.1.1.1/Fri Aug 15 03:56:42 2003// /caox.gin/1.1.1.1/Fri Aug 15 03:56:42 2003// /carbonate.car/1.1.1.1/Fri Aug 15 03:56:42 2003// /carbonate.gin/1.1.1.1/Fri Aug 15 03:56:42 2003// /caso4.gin/1.1.1.1/Fri Aug 15 03:56:42 2003// /caso4_DH.gin/1.1.1.1/Fri Aug 15 03:56:42 2003// /caso4_HH.gin/1.1.1.1/Fri Aug 15 03:56:42 2003// /deoxygalactose.gin/1.2/Mon Nov 13 06:00:33 2006// /diamond.dfx/1.1.1.1/Fri Aug 15 03:56:42 2003// /dummy.gin/1.1.1.1/Fri Aug 15 03:56:42 2003// /dummy.got/1.1.1.1/Fri Aug 15 03:56:43 2003// /ethane.gin/1.1.1.1/Fri Aug 15 03:56:43 2003// /full.car/1.1.1.1/Fri Aug 15 03:56:43 2003// /gibb.car/1.1.1.1/Fri Aug 15 03:56:43 2003// /gibb.gin/1.1.1.1/Fri Aug 15 03:56:43 2003// /gibb_001.gin/1.1.1.1/Fri Aug 15 03:56:43 2003// /gibb_best3.gin/1.2/Wed Mar 31 08:34:24 2004// /gibb_best3.got/1.1.1.1/Fri Aug 15 03:56:43 2003// /gibb_opt.res/1.1.1.1/Fri Aug 15 03:56:43 2003// /gibb_opt_bulk.arc/1.1.1.1/Fri Aug 15 03:56:44 2003// /gibb_re.xtl/1.1.1.1/Fri Aug 15 03:56:44 2003// /gibbsite.gmf/1.1.1.1/Fri Aug 15 03:56:44 2003// /gibbsite_BFDH.gmf/1.1.1.1/Fri Aug 15 03:56:44 2003// /iso_ribbon.gin/1.1.1.1/Fri Aug 15 03:56:47 2003// /la_rdefe_clus.car/1.1.1.1/Fri Aug 15 03:56:47 2003// /liox.gin/1.1.1.1/Fri Aug 15 03:56:47 2003// /methane.gin/1.1.1.1/Fri Aug 15 03:56:47 2003// /methane.inp/1.1.1.1/Fri Aug 15 03:56:47 2003// /mgo.gin/1.2/Wed May 18 02:19:21 2005// /multi12.gin/1.1.1.1/Fri Aug 15 03:56:47 2003// /naox.gin/1.1.1.1/Fri Aug 15 03:56:47 2003// /napth.xtl/1.1.1.1/Fri Aug 15 03:56:47 2003// /napth_full.gin/1.1.1.1/Fri Aug 15 03:56:47 2003// /napth_re.gin/1.1.1.1/Fri Aug 15 03:56:47 2003// /natrite.gin/1.1.1.1/Fri Aug 15 03:56:47 2003// /natrite_full8.gin/1.1.1.1/Fri Aug 15 03:56:47 2003// /natrite_gulpfull.gin/1.1.1.1/Fri Aug 15 03:56:47 2003// /oxalate.gin/1.2/Wed Mar 31 08:34:24 2004// /sio2.res/1.1.1.1/Fri Aug 15 03:56:47 2003// /so4_iso.gin/1.1.1.1/Fri Aug 15 03:56:47 2003// /trona.gin/1.1.1.1/Fri Aug 15 03:56:47 2003// /urea.gin/1.1.1.1/Fri Aug 15 03:56:47 2003// /urea_001_cut1.gin/1.1.1.1/Fri Aug 15 03:56:47 2003// /urea_conp.castep/1.1/Sun May 16 14:41:40 2004// /urea_conv.castep/1.1/Sun May 16 14:41:40 2004// /water.car/1.1.1.1/Fri Aug 15 03:56:47 2003// /zircon.gin/1.2/Tue Jul 13 09:14:26 2004// /zircon_BFDH.gmf/1.1.1.1/Fri Aug 15 03:56:47 2003// /zno_beta.res/1.1.1.1/Fri Aug 15 03:56:47 2003// D gdis-0.90/models/CVS/Root0000644000175000017500000000007011066565464013624 0ustar seansean:ext:seanfleming@gdis.cvs.sourceforge.net:/cvsroot/gdis gdis-0.90/models/CVS/Repository0000644000175000017500000000001411066565464015056 0ustar seanseangdis/models gdis-0.90/models/napth_re.gin0000644000175000017500000000272307717054777014641 0ustar seansean# # Keywords: # opti conp mole comp # # Options: # cell 8.018030 5.912759 8.554727 90.000000 124.086466 90.000000 fractional 9 C core 0.0830040 0.0170135 0.3291054 0.00000000 1.00000 0.00000 C core 0.1123820 0.1636948 0.2196271 0.00000000 1.00000 0.00000 H core 0.1635750 0.3922634 0.9764057 0.00000000 1.00000 0.00000 C core 0.0472533 0.1034587 0.0367162 0.00000000 1.00000 0.00000 H core 0.1954095 0.3086447 0.2683112 0.00000000 1.00000 0.00000 C core 0.0766313 0.2501400 0.9272378 0.00000000 1.00000 0.00000 H core 0.1185448 0.0749161 0.4566488 0.00000000 1.00000 0.00000 C core 0.9884971 0.8100960 0.2556730 0.00000000 1.00000 0.00000 H core 0.9638986 0.7010980 0.3331743 0.00000000 1.00000 0.00000 space P 1 21/N 1 species 2 C core 0.000000 H core 0.000000 lenn epsilon 12 6 inter C core C core 0.169161 0.00000 0.000 0.095 lenn epsilon 12 6 inter H core C core 0.138642 0.00000 0.000 0.015 harmonic intra bond C core C core 45.5631 1.39000 0.00000 harmonic intra bond H core C core 30.3754 1.02000 0.00000 three bond intra C core C core C core 4.3393 120.00 torsion bond intra C cor C cor C cor C cor .54242 -2 0.0000 gdis-0.90/models/methane.inp0000644000175000017500000000071707717054777014474 0ustar seansean $contrl coord=cart scftyp=rhf runtyp=optimize $end $system timlim=600 mwords=1 $end $statpt nstep=100 method=qa $end $basis gbasis=pm3 $end $data methane c1 C 6 0.017953444 0.093267404 -0.207635924 H 1 0.783154038 0.517269451 0.466138821 H 1 -0.967940233 0.526941695 0.035901837 H 1 -0.019784993 -1.002639029 -0.077860896 H 1 0.276601486 0.331332729 -1.254421732 $end gdis-0.90/models/ethane.gin0000644000175000017500000000264307717054773014302 0ustar seanseansingle conp molmec maxcyc 50 # was an attempt at amber, but RESP charges needed :-( name ethane cartesian C core -1.95042 -0.03671 0.64453 C core -0.68840 0.29830 -0.14533 H core -2.67179 -0.52381 -0.01172 H core -1.69758 -0.70435 1.46820 H core -2.38517 0.88026 1.04191 H core -0.94133 0.96543 -0.96935 H core 0.03104 0.78981 0.50973 H core -0.25378 -0.61896 -0.54266 harm bond kcal C C 310.0 1.526 0 0 harm bond kcal C H 340.0 1.090 0 0 harm bond kcal C O 320.0 1.410 0 0 harm bond kcal O H 553.0 0.960 0 0 three bond kcal C C C 40.0 109.50 0 0 three bond kcal C C H 50.0 109.50 0 0 three bond kcal H C H 35.0 109.50 0 0 three bond kcal C C O 50.0 109.50 0 0 three bond kcal C O H 55.0 108.50 0 0 torsion bond kcal H C C H 0.15 +3 0.0 0 0 torsion bond kcal H C C C 0.16 +3 0.0 0 0 torsion bond kcal H O C C 0.16 +3 0.0 0 0 torsion bond kcal H O C C 0.25 +1 0.0 0 0 torsion bond kcal C C C C 0.18 +3 0.0 0 0 torsion bond kcal C C C C 0.25 +2 180.0 0 0 torsion bond kcal C C C C 0.20 +1 180.0 0 0 torsion bond kcal H C C O 0.25 +1 0.0 0 0 print 1 gdis-0.90/models/caox.cif0000644000175000017500000003325107717054772013752 0ustar seanseandata_62712-ICSD _audit_creation_date 101-09-21 _audit_creation_method 'generated by RETRIEVE 2.0' _database_code_ICSD 62712 _chemical_name_systematic 'Calcium hydroxichloride carbonate hydrate *' _chemical_name_mineral 'Defernite' _chemical_formula_structural 'Ca6 (C O2.65)2 (O H.657)7 (H2 O)2' _chemical_formula_analytical 'Ca6 (C O3)2 (O H)8 (H2 O)2' _chemical_formula_sum 'H8.599 Ca6 O14.3' _publ_section_title 'La structure cristalline de la defernite.' loop_ _publ_author_name 'Liebich, B W' 'Sarp, H' _journal_name_full ; Schweizerische Mineralogische und Petrographische Mitteilungen ; _journal_coden_ASTM SMPTA8 _journal_volume 65 _journal_year 1985 _journal_page_first 153 _journal_page_last 158 _cell_length_a 17.85999(500) _cell_length_b 22.77499(600) _cell_length_c 3.658(1) _cell_angle_alpha 90 _cell_angle_beta 90 _cell_angle_gamma 90 _cell_volume 1487.9 _cell_formula_units_Z 4 _exptl_crystal_density_meas 2.5 _symmetry_space_group_name_H-M 'P n a m' _symmetry_Int_Tables_number 62 _symmetry_cell_setting orthorhombic loop_ _symmetry_equiv_pos_as_xyz 'x,y,z' '1/2+x,1/2-y,1/2-z' '-x,-y,1/2+z' '1/2-x,1/2+y,-z' '-x,-y,-z' '1/2-x,1/2+y,1/2+z' 'x,y,1/2-z' '1/2+x,1/2-y,z' loop_ _atom_type_symbol _atom_type_oxidation_number Ca2+ 2.000 C4+ 4.000 O2- -2.000 H1+ 1.000 loop_ _atom_site_label _atom_site_type_symbol _atom_site_symmetry_multiplicity _atom_site_Wyckoff_symbol _atom_site_fract_x _atom_site_fract_y _atom_site_fract_z _atom_site_occupancy _atom_site_attached_hydrogens _atom_site_calc_flag Ca1 Ca2+ 4 c 0.7113(6) 0.0827(4) 0.25 1. 0 d Ca2 Ca2+ 4 c 0.5335(6) 0.4267(4) 0.25 1. 0 d Ca3 Ca2+ 4 c 0.3713(6) 0.1795(4) 0.25 1. 0 d Ca4 Ca2+ 4 c 0.6204(6) 0.6577(4) 0.25 1. 0 d Ca5 Ca2+ 4 c 0.7689(5) 0.9096(4) 0.25 1. 0 d Ca6 Ca2+ 4 c 0.9745(5) 0.5740(4) 0.25 1. 0 d C1 C4+ 4 c 0.370(3) 0.473 0.25 1. 0 d C2 C4+ 4 c 0.869(2) 0.471 0.25 1. 0 d O1 O2- 4 c 0.152(1) 0.112(1) 0.25 1. 1 d O2 O2- 4 c 0.715(2) 0.811(1) 0.25 1. 1 d O3 O2- 4 c 0.077(1) 0.383(1) 0.25 1. 1 d O4 O2- 4 c 0.251(2) 0.858(1) 0.25 1. 1 d O5 O2- 4 c 0.047(2) 0.661(1) 0.25 1. 1 d O6 O2- 4 c 0.405(1) 0.282(1) 0.25 1. 1 d O7 O2- 4 c 0.496(2) 0.632(1) 0.25 1. 1 d O8 O2- 4 c 0.388(1) 0.415(1) 0.25 1. 0 d O9 O2- 4 c 0.433(8) 0.501(1) 0.25 1. 0 d O10 O2- 4 c 0.305(2) 0.491(2) 0.25 1. 0 d O11 O2- 4 c 0.949 0.47 0.25 1. 0 d O12 O2- 4 c 0.811 0.426 0.25 1. 0 d O13 O2- 4 c 0.844 0.529 0.25 1. 0 d O14 O2- 8 d 0.394(3) 0.76 0.36(1) 0.35 2 d O15 O2- 8 d 0.101(3) 0.252 0.39(1) 0.3 2 d H1 H1+ 4 ? -1. -1. -1. 8.6 0 dum _refine_ls_R_factor_all 0.142 data_64932-ICSD _audit_creation_date 101-09-21 _audit_creation_method 'generated by RETRIEVE 2.0' _database_code_ICSD 64932 _chemical_name_systematic 'Calcium oxalate hydrate (1/1/2.2)' _chemical_name_mineral 'Weddellite' _chemical_compound_source 'from a kidney calculus' _chemical_formula_structural 'Ca (C O2)2 (H2 O)2.2' _chemical_formula_analytical 'Ca (C O2)2 (H2 O)2.17' _chemical_formula_sum 'H4.4 Ca O6.2' _publ_section_title ; Crystal structure analysis of weddellite, Ca C2 O4 * (2+x)H2 O ; _publ_author_name 'Sterling, C' _journal_name_full 'Acta Crystallographica (1,1948-23,1967)' _journal_coden_ASTM ACCRA9 _journal_volume 18 _journal_year 1965 _journal_page_first 917 _journal_page_last 921 _cell_length_a 12.30(2) _cell_length_b 12.30(2) _cell_length_c 7.34(2) _cell_angle_alpha 90 _cell_angle_beta 90 _cell_angle_gamma 90 _cell_volume 1110.5 _cell_formula_units_Z 8 _exptl_crystal_density_meas 2 _symmetry_space_group_name_H-M 'I 4/m' _symmetry_Int_Tables_number 87 _symmetry_cell_setting tetragonal loop_ _symmetry_equiv_pos_as_xyz 'x,y,z' '-x,-y,z' '-y,x,z' 'y,-x,z' '-x,-y,-z' 'x,y,-z' 'y,-x,-z' '-y,x,-z' '1/2+x,1/2+y,1/2+z' '1/2-x,1/2-y,1/2+z' '1/2-y,1/2+x,1/2+z' '1/2+y,1/2-x,1/2+z' '1/2-x,1/2-y,1/2-z' '1/2+x,1/2+y,1/2-z' '1/2+y,1/2-x,1/2-z' '1/2-y,1/2+x,1/2-z' loop_ _atom_type_symbol _atom_type_oxidation_number Ca2+ 2.000 C3+ 3.000 O2- -2.000 H1+ 1.000 loop_ _atom_site_label _atom_site_type_symbol _atom_site_symmetry_multiplicity _atom_site_Wyckoff_symbol _atom_site_fract_x _atom_site_fract_y _atom_site_fract_z _atom_site_occupancy _atom_site_attached_hydrogens _atom_site_calc_flag Ca1 Ca2+ 8 h 0.2 0.3 0. 1. 0 d C2 C3+ 16 i 0.445 0.242 0.105 1. 0 d O1 O2- 16 i 0.356 0.246 0.181 1. 0 d O2 O2- 16 i 0.236 0.463 0.181 1. 0 d O3 O2- 8 h 0.144 0.114 0. 1. 2 d O4 O2- 8 h 0.02 0.386 0. 1. 2 d O5 O2- 4 e 0.5 0.5 0.21 0.4 2 d H1 H1+ 16 h -1. -1. -1. 2.2 0 dum _refine_ls_R_factor_all 0.13 data_30782-ICSD _audit_creation_date 101-09-21 _audit_creation_method 'generated by RETRIEVE 2.0' _database_code_ICSD 30782 _chemical_name_systematic 'Calcium oxalate hydrate' _chemical_name_mineral 'Whewellite' _chemical_compound_source 'from urinary calculi' _chemical_formula_structural 'Ca (C2 O4) (H2 O)' _chemical_formula_sum 'H2 Ca O5' _publ_section_title ; The crystal structures of whewellite and weddellite: re-examination and comparison ; loop_ _publ_author_name 'Tazzoli, V' 'Domeneghetti, C' _journal_name_full 'American Mineralogist' _journal_coden_ASTM AMMIAY _journal_volume 65 _journal_year 1980 _journal_page_first 327 _journal_page_last 334 _cell_length_a 6.290(1) _cell_length_b 14.583(1) _cell_length_c 10.116(1) _cell_angle_alpha 90 _cell_angle_beta 109.46(2) _cell_angle_gamma 90 _cell_volume 874.9 _cell_formula_units_Z 8 _exptl_crystal_density_meas 2.23 _symmetry_space_group_name_H-M 'P 1 21/c 1' _symmetry_Int_Tables_number 14 _symmetry_cell_setting monoclinic loop_ _symmetry_equiv_pos_as_xyz 'x,y,z' '-x,1/2+y,1/2-z' '-x,-y,-z' 'x,1/2-y,1/2+z' loop_ _atom_type_symbol _atom_type_oxidation_number Ca2+ 2.000 C3+ 3.000 O2- -2.000 H1+ 1.000 loop_ _atom_site_label _atom_site_type_symbol _atom_site_symmetry_multiplicity _atom_site_Wyckoff_symbol _atom_site_fract_x _atom_site_fract_y _atom_site_fract_z _atom_site_occupancy _atom_site_attached_hydrogens _atom_site_calc_flag Ca1 Ca2+ 4 e 0.9676(1) 0.1243(1) 0.0546(1) 1. 0 d Ca2 Ca2+ 4 e 0.9968(1) 0.1236(1) 0.4357(1) 1. 0 d C1 C3+ 4 e 0.9832(1) 0.3201(1) 0.2452(2) 1. 0 d C2 C3+ 4 e 1.0009(2) 0.4270(1) 0.2492(1) 1. 0 d C3 C3+ 4 e 0.5189(2) 0.1266(1) 0.1812(1) 1. 0 d C4 C3+ 4 e 0.4505(2) 0.1173(1) 0.3131(1) 1. 0 d O1 O2- 4 e 0.9756(2) 0.2826(1) 0.1322(1) 1. 0 d O2 O2- 4 e 1.0066(2) 0.4659(1) 0.1395(1) 1. 0 d O3 O2- 4 e 0.9799(2) 0.2819(1) 0.3550(1) 1. 0 d O4 O2- 4 e 1.0073(2) 0.4658(1) 0.3614(1) 1. 0 d O5 O2- 4 e 0.3614(2) 0.1418(1) 0.0690(1) 1. 0 d O6 O2- 4 e 0.7245(2) 0.1227(1) 0.1974(1) 1. 0 d O7 O2- 4 e 0.2438(1) 0.1229(1) 0.2957(1) 1. 0 d O8 O2- 4 e 0.6073(2) 0.1068(1) 0.4264(1) 1. 0 d O9 O2- 4 e 0.3932(3) 0.3459(1) 0.1022(2) 0.85 2 d O10 O2- 4 e 0.5913(3) 0.3829(3) 0.3908(2) 0.86 2 d O11 O2- 4 e 0.388 0.396 0.099 0.15 2 d O12 O2- 4 e 0.584 0.409 0.392 0.14 2 d H1 H1+ 4 e 0.487 0.372 0.051 0.85 0 d H2 H1+ 4 e 0.51 0.364 0.426 0.86 0 d H3 H1+ 4 e 0.53 0.367 0.32 0.86 0 d H4 H1+ 4 e -1. -1. -1. 1.43 0 dum _refine_ls_R_factor_all 0.033 data_30783-ICSD _audit_creation_date 101-09-21 _audit_creation_method 'generated by RETRIEVE 2.0' _database_code_ICSD 30783 _chemical_name_systematic 'Calcium oxalate 2.4-hydrate' _chemical_name_mineral 'Weddellite' _chemical_compound_source 'from urinary calculi' _chemical_formula_structural 'Ca (C2 O4) (H2 O)2.375' _chemical_formula_sum 'H4.75 Ca O6.375' _publ_section_title ; The crystal structures of whewellite and weddellite: re-examination and comparison ; loop_ _publ_author_name 'Tazzoli, V' 'Domeneghetti, C' _journal_name_full 'American Mineralogist' _journal_coden_ASTM AMMIAY _journal_volume 65 _journal_year 1980 _journal_page_first 327 _journal_page_last 334 _cell_length_a 12.371(3) _cell_length_b 12.371(3) _cell_length_c 7.357(2) _cell_angle_alpha 90 _cell_angle_beta 90 _cell_angle_gamma 90 _cell_volume 1125.9 _cell_formula_units_Z 8 _exptl_crystal_density_meas 1.94 _symmetry_space_group_name_H-M 'I 4/m' _symmetry_Int_Tables_number 87 _symmetry_cell_setting tetragonal loop_ _symmetry_equiv_pos_as_xyz 'x,y,z' '-x,-y,z' '-y,x,z' 'y,-x,z' '-x,-y,-z' 'x,y,-z' 'y,-x,-z' '-y,x,-z' '1/2+x,1/2+y,1/2+z' '1/2-x,1/2-y,1/2+z' '1/2-y,1/2+x,1/2+z' '1/2+y,1/2-x,1/2+z' '1/2-x,1/2-y,1/2-z' '1/2+x,1/2+y,1/2-z' '1/2+y,1/2-x,1/2-z' '1/2-y,1/2+x,1/2-z' loop_ _atom_type_symbol _atom_type_oxidation_number C3+ 3.000 O2- -2.000 Ca2+ 2.000 H1+ 1.000 loop_ _atom_site_label _atom_site_type_symbol _atom_site_symmetry_multiplicity _atom_site_Wyckoff_symbol _atom_site_fract_x _atom_site_fract_y _atom_site_fract_z _atom_site_occupancy _atom_site_attached_hydrogens _atom_site_calc_flag C1 C3+ 16 i 0.4464(2) 0.2415(2) 0.1053(3) 1. 0 d O1 O2- 16 i 0.3564(1) 0.2458(1) 0.1829(2) 1. 0 d O2 O2- 16 i 0.2355(2) 0.4634(1) 0.1799(2) 1. 0 d Ca1 Ca2+ 8 h 0.1993(1) 0.3011(1) 0. 1. 0 d O3 O2- 8 h 0.1490(3) 0.1145(3) 0. 1. 2 d O4 O2- 8 h 0.0192(2) 0.3841(3) 0. 1. 2 d O5 O2- 4 e 0. 0. 0.6830(19) 0.58 2 d O6 O2- 4 e 0. 0. 0.24 0.17 2 d H1 H1+ 16 i 0.166 0.071 0.105 1. 0 d H2 H1+ 16 i 0.35 0.018 0.115 1. 0 d H3 H1+ 8 h -1. -1. -1. 0.75 0 dum _refine_ls_R_factor_all 0.032 data_45115-ICSD _audit_creation_date 101-09-21 _audit_creation_method 'generated by RETRIEVE 2.0' _database_code_ICSD 45115 _chemical_name_systematic 'Calcium oxalate hydrate' _chemical_name_mineral 'Whewellite' _chemical_formula_structural 'Ca (C2 O4) (H2 O)' _chemical_formula_sum 'H2 Ca O5' _publ_section_title 'La struttura della whewellite' _publ_author_name 'Cocco, G' _journal_name_full ; Atti della Accademia Nazionale dei Lincei, Classe di Scienze Fisiche, Matematiche e Naturali, Rendiconti, Serie 8 (1, 1946-) ; _journal_coden_ASTM AANL8V _journal_volume 31 _journal_year 1961 _journal_page_first 292 _journal_page_last 298 _cell_length_a 6.24 _cell_length_b 14.58 _cell_length_c 9.89 _cell_angle_alpha 90 _cell_angle_beta 107 _cell_angle_gamma 90 _cell_volume 860.5 _cell_formula_units_Z 8 _exptl_crystal_density_meas 2.23 _symmetry_space_group_name_H-M 'P 1 21/c 1' _symmetry_Int_Tables_number 14 _symmetry_cell_setting monoclinic loop_ _symmetry_equiv_pos_as_xyz 'x,y,z' '-x,1/2+y,1/2-z' '-x,-y,-z' 'x,1/2-y,1/2+z' loop_ _atom_type_symbol _atom_type_oxidation_number Ca2+ 2.000 C3+ 3.000 O2- -2.000 H1+ 1.000 loop_ _atom_site_label _atom_site_type_symbol _atom_site_symmetry_multiplicity _atom_site_Wyckoff_symbol _atom_site_fract_x _atom_site_fract_y _atom_site_fract_z _atom_site_occupancy _atom_site_attached_hydrogens _atom_site_calc_flag Ca1 Ca2+ 4 e 0.015 0.122 0.062 1. 0 d Ca2 Ca2+ 4 e 0.015 0.128 0.438 1. 0 d C1 C3+ 4 e 0.017 0.323 0.25 1. 0 d C2 C3+ 4 e 0.003 0.427 0.25 1. 0 d O1 O2- 4 e 0.02 0.283 0.142 1. 0 d O2 O2- 4 e 0. 0.45 0.14 1. 0 d O3 O2- 4 e 0.02 0.297 0.363 1. 0 d O4 O2- 4 e 0. 0.463 0.363 1. 0 d C3 C3+ 4 e 0.55 0.125 0.183 1. 0 d C4 C3+ 4 e 0.463 0.125 0.317 1. 0 d O5 O2- 4 e 0.375 0.122 0.072 1. 0 d O6 O2- 4 e 0.755 0.128 0.198 1. 0 d O7 O2- 4 e 0.258 0.128 0.302 1. 0 d O8 O2- 4 e 0.638 0.122 0.428 1. 0 d O9 O2- 4 e 0.4 0.4 0.108 1. 2 d O10 O2- 4 e 0.6 0.353 0.39 1. 2 d H1 H1+ 4 ? -1. -1. -1. 4. 0 dum _refine_ls_R_factor_all 0.16 gdis-0.90/models/gibbsite.gmf0000644000175000017500000000774507717054774014633 0ustar seansean title: Created by GDIS version 0.80.0 name: gibbsite space: P 1 21/n 1 cell: 8.809466 4.993449 9.787438 90.000000 95.950869 90.000000 morph: Dhkl based miller: 1 0 -1 0.000000 1 1 1.2861 -0.4156 0.0000 0.0000 -1 0.035757 1 1 1.2861 -0.4156 0.0000 0.0000 -1 0.304600 1 1 3.1978 -1.0340 0.0000 0.0000 -1 0.570916 1 1 1.3491 -0.4362 0.0000 0.0000 -1 0.707052 1 1 3.1978 -1.0340 0.0000 0.0000 -1 miller: 1 0 1 0.000000 1 1 6.1408 -0.9014 0.0000 0.0000 -1 0.024727 1 1 6.1408 -0.9014 0.0000 0.0000 -1 0.322242 1 1 2.8747 -1.0307 0.0000 0.0000 -1 0.504783 1 1 6.8344 -1.0408 0.0000 0.0000 -1 0.840304 1 1 2.8747 -1.0307 0.0000 0.0000 -1 miller: 0 0 2 0.000000 1 1 17.6239 -8.4378 0.0000 0.0000 -1 0.208689 1 1 0.3235 -0.1472 0.0000 0.0000 -1 0.211835 1 1 0.3235 -0.1472 0.0000 0.0000 -1 0.788165 1 1 0.3235 -0.1472 0.0000 0.0000 -1 0.791311 1 1 0.3235 -0.1472 0.0000 0.0000 -1 miller: 0 1 1 0.000000 1 1 4.0550 -2.2207 0.0000 0.0000 -1 0.024336 1 1 4.0550 -2.2207 0.0000 0.0000 -1 0.045506 1 1 4.3222 -1.7057 0.0000 0.0000 -1 0.318934 1 1 2.8289 -1.4189 0.0000 0.0000 -1 0.541463 1 1 3.9499 -1.9094 0.0000 0.0000 -1 0.719538 1 1 2.8289 -1.4189 0.0000 0.0000 -1 0.961701 1 1 4.3222 -2.4845 0.0000 0.0000 -1 miller: 2 0 0 0.000000 1 1 1.7828 -0.9034 0.0000 0.0000 -1 miller: 1 1 0 0.000000 1 1 3.6961 -1.8998 0.0000 0.0000 -1 0.028001 1 1 3.6961 -1.8998 0.0000 0.0000 -1 0.381767 1 1 5.9386 -3.0144 0.0000 0.0000 -1 0.543197 1 1 4.6477 -2.4294 0.0000 0.0000 -1 0.622993 1 1 5.9386 -3.0144 0.0000 0.0000 -1 miller: 1 -1 -1 0.000000 1 1 3.1772 -1.7606 0.0000 0.0000 -1 0.007493 1 1 3.1772 -1.7606 0.0000 0.0000 -1 0.189060 1 1 4.7834 -2.4647 0.0000 0.0000 -1 0.279758 1 1 9.4185 -2.8014 0.0000 0.0000 -1 0.356515 1 1 4.7621 -2.6177 0.0000 0.0000 -1 0.572944 1 1 2.7206 -1.5207 0.0000 0.0000 -1 0.651839 1 1 4.7621 -2.6177 0.0000 0.0000 -1 0.722660 1 1 9.4185 -3.4028 0.0000 0.0000 -1 0.846997 1 1 4.7834 -2.4647 0.0000 0.0000 -1 miller: 1 1 1 0.000000 1 1 2.5191 -1.4418 0.0000 0.0000 -1 0.044339 1 1 2.5191 -1.4418 0.0000 0.0000 -1 0.178166 1 1 5.3183 -2.8720 0.0000 0.0000 -1 0.272380 1 1 8.8433 -4.2238 0.0000 0.0000 -1 0.373404 1 1 4.9166 -1.5850 0.0000 0.0000 -1 0.558832 1 1 2.3348 -1.3467 0.0000 0.0000 -1 0.639472 1 1 4.9166 -2.6079 0.0000 0.0000 -1 0.762267 1 1 8.8433 -4.2238 0.0000 0.0000 -1 0.841319 1 1 5.3183 -2.8720 0.0000 0.0000 -1 miller: 0 1 2 0.000000 1 1 6.0295 -3.7763 0.0000 0.0000 -1 0.008583 1 1 6.0295 -3.7763 0.0000 0.0000 -1 0.054093 1 1 9.2646 -2.9637 0.0000 0.0000 -1 0.265884 1 1 3.1490 -2.0322 0.0000 0.0000 -1 0.505901 1 1 3.9720 -2.5671 0.0000 0.0000 -1 0.749298 1 1 3.1490 -2.0322 0.0000 0.0000 -1 0.957516 1 1 9.2646 -4.5653 0.0000 0.0000 -1 miller: 1 1 -2 0.000000 1 1 1.3428 -0.9222 0.0000 0.0000 -1 0.011420 1 1 1.3428 -0.9222 0.0000 0.0000 -1 0.598635 1 1 3.5898 -2.4338 0.0000 0.0000 -1 gdis-0.90/models/gibb.car0000644000175000017500000001115207717054773013724 0ustar seansean!BIOSYM archive 3 PBC=ON Created by gtk_Dismol !DATE Sun Mar 11 16:16:01 2001 PBC 8.684000 5.078000 9.736000 90.0 94.5 90.0 (P 1) Al 0.689162076 2.688800573 9.683128357 CORE 1 xx AL 0.000 O1 0.860157609 1.108527064 8.623292923 CORE 1 xx O 0.000 O1 1.890435100 3.644988060 8.684437752 CORE 1 xx O 0.000 Al 2.135125160 0.119840354 9.682158470 CORE 1 xx AL 0.000 H1 -0.002965953 0.693395376 8.487068176 CORE 1 xx H 0.000 H1 1.956489801 3.639645815 7.706885338 CORE 1 xx H 0.000 O1 3.637907743 0.667756617 8.692202568 CORE 1 xx O 0.000 H1 3.679924726 0.563505292 7.720454216 CORE 1 xx H 0.000 end O1 5.119516373 3.330151796 8.712583542 CORE 2 xx O 0.000 H1 4.298533440 2.803223133 8.710584641 CORE 2 xx H 0.000 end O1 6.423237324 0.757129431 8.720348358 CORE 3 xx O 0.000 H1 6.383843899 0.819136918 7.740475655 CORE 3 xx H 0.000 end O1 7.817629337 3.195585012 8.668908119 CORE 4 xx O 0.000 H1 7.576333046 4.137274742 8.608142853 CORE 4 xx H 0.000 end Al 2.496856928 0.149801031 4.875048637 CORE 5 xx AL 0.000 O1 4.052389622 0.656585395 5.889268398 CORE 5 xx O 0.000 O1 1.295583844 1.105988264 5.873739243 CORE 5 xx O 0.000 O1 2.466563940 1.781869888 3.867622375 CORE 5 xx O 0.000 H1 4.293685913 1.598274946 5.950034142 CORE 5 xx H 0.000 Al 1.050893903 2.658840656 4.876018524 CORE 5 xx AL 0.000 H1 1.229529142 1.100645661 6.851291656 CORE 5 xx H 0.000 H1 2.427170515 1.719862580 2.887750149 CORE 5 xx H 0.000 O1 -0.451888829 3.206756830 5.865974903 CORE 5 xx O 0.000 O1 2.325861216 3.647527218 5.934884071 CORE 5 xx O 0.000 O1 1.162843466 4.286848068 3.859858036 CORE 5 xx O 0.000 H1 -0.493905902 3.102505445 6.837722778 CORE 5 xx H 0.000 H1 3.188984871 3.232395649 6.071109295 CORE 5 xx H 0.000 H1 0.341860920 4.813776493 3.857858896 CORE 5 xx H 0.000 end O1 5.446781635 3.296129704 5.837829113 CORE 6 xx O 0.000 Al 6.862452030 2.419158936 4.829432964 CORE 6 xx AL 0.000 H1 5.486175060 3.358137131 6.817701340 CORE 6 xx H 0.000 Al 5.416489124 4.928198814 4.830402851 CORE 6 xx AL 0.000 O1 6.617761612 3.972011328 3.831712246 CORE 6 xx O 0.000 O1 8.365234375 1.871242762 3.839476585 CORE 6 xx O 0.000 O1 6.750502586 0.791151702 5.845592976 CORE 6 xx O 0.000 O1 5.587484837 1.430472493 3.770567179 CORE 6 xx O 0.000 O1 3.860956430 4.421414375 3.816182852 CORE 6 xx O 0.000 H1 6.683816433 3.977353811 2.854159832 CORE 6 xx H 0.000 H1 8.407252312 1.975494266 2.867728233 CORE 6 xx H 0.000 H1 7.571485043 0.264223307 5.847592354 CORE 6 xx H 0.000 H1 4.724360943 1.845604062 3.634342194 CORE 6 xx H 0.000 H1 3.619660139 3.479724646 3.755417109 CORE 6 xx H 0.000 end Al 7.224183559 2.389199018 0.022322964 CORE 7 xx AL 0.000 O1 7.053188324 3.969472647 1.082158446 CORE 7 xx O 0.000 O1 6.022911072 1.433011532 1.021013379 CORE 7 xx O 0.000 Al 5.778220654 4.958159447 0.023292659 CORE 7 xx AL 0.000 H1 7.916311741 4.384604454 1.218383551 CORE 7 xx H 0.000 H1 5.956856251 1.438353658 1.998565912 CORE 7 xx H 0.000 O1 4.275438309 4.410243034 1.013249159 CORE 7 xx O 0.000 H1 4.233420849 4.514494419 1.984997272 CORE 7 xx H 0.000 end O1 2.793829441 1.747847795 0.992867529 CORE 8 xx O 0.000 H1 3.614812374 2.274776459 0.994866788 CORE 8 xx H 0.000 end O1 1.490108728 4.320870399 0.985103309 CORE 9 xx O 0.000 H1 1.529502153 4.258862972 1.964975476 CORE 9 xx H 0.000 end O1 0.095716417 1.882414579 1.036542773 CORE 10 xx O 0.000 H1 0.337012798 0.940724790 1.097308517 CORE 10 xx H 0.000 end end gdis-0.90/models/calcite_0-14_0.5000.gin0000644000175000017500000002053607717054767015711 0ustar seanseansingle conv mole name calcite_0-14_0.5000 svectors 4.980183 0.000000 4.980185 -24.270660 sfractional region 1 Ca core 0.166667 0.833333 -1.516832 2.00000000 1.00000 0.00000 O core 0.330679 0.916667 -1.516831 1.01848700 1.00000 0.00000 O shel 0.330096 0.916667 -1.516831 -2.1330000 1.00000 0.00000 C core 0.583333 0.916667 -1.516831 1.34353899 1.00000 0.00000 O core 0.741574 0.884753 -2.283299 1.01848700 1.00000 0.00000 O shel 0.741939 0.884679 -2.285069 -2.1330000 1.00000 0.00000 O core 0.677747 0.948580 -0.750363 1.01848700 1.00000 0.00000 O shel 0.677965 0.948654 -0.748593 -2.1330000 1.00000 0.00000 Ca core 0.333333 0.666667 -1.516831 2.00000000 1.00000 0.00000 O core -0.011080 0.384753 -2.283299 1.01848700 1.00000 0.00000 O shel -0.011298 0.384679 -2.285069 -2.1330000 1.00000 0.00000 C core 0.083333 0.416667 -1.516831 1.34353899 1.00000 0.00000 O core -0.074907 0.448580 -0.750363 1.01848700 1.00000 0.00000 O shel -0.075273 0.448654 -0.748593 -2.1330000 1.00000 0.00000 O core 0.335987 0.416667 -1.516831 1.01848700 1.00000 0.00000 O shel 0.336571 0.416667 -1.516831 -2.1330000 1.00000 0.00000 C core 0.750000 0.750000 -1.516831 1.34353899 1.00000 0.00000 O core 1.002654 0.750000 -1.516831 1.01848700 1.00000 0.00000 O shel 1.003237 0.750000 -1.516831 -2.1330000 1.00000 0.00000 O core 0.655586 0.718086 -2.283299 1.01848700 1.00000 0.00000 O shel 0.655368 0.718013 -2.285069 -2.1330000 1.00000 0.00000 O core 0.591759 0.781914 -0.750363 1.01848700 1.00000 0.00000 O shel 0.591394 0.781987 -0.748593 -2.1330000 1.00000 0.00000 C core 0.916667 0.583333 -1.516832 1.34353899 1.00000 0.00000 O core 0.664013 0.583333 -1.516832 1.01848700 1.00000 0.00000 O shel 0.663429 0.583333 -1.516832 -2.1330000 1.00000 0.00000 O core 1.074907 0.551420 -2.283299 1.01848700 1.00000 0.00000 O shel 1.075272 0.551346 -2.285069 -2.1330000 1.00000 0.00000 O core 1.011080 0.615247 -0.750364 1.01848700 1.00000 0.00000 O shel 1.011298 0.615321 -0.748594 -2.1330000 1.00000 0.00000 Ca core 0.666667 0.333333 -1.516831 2.00000000 1.00000 0.00000 Ca core 0.500000 0.500000 -1.516831 2.00000000 1.00000 0.00000 Ca core 0.833333 0.166667 -1.516832 2.00000000 1.00000 0.00000 C core 0.250000 0.250000 -1.516831 1.34353899 1.00000 0.00000 O core -0.002654 0.250000 -1.516831 1.01848700 1.00000 0.00000 O shel -0.003237 0.250000 -1.516831 -2.1330000 1.00000 0.00000 O core 0.344413 0.281913 -0.750364 1.01848700 1.00000 0.00000 O shel 0.344631 0.281987 -0.748593 -2.1330000 1.00000 0.00000 O core 0.408241 0.218086 -2.283299 1.01848700 1.00000 0.00000 O shel 0.408606 0.218013 -2.285069 -2.1330000 1.00000 0.00000 C core 0.416667 0.083333 -1.516831 1.34353899 1.00000 0.00000 O core 0.669321 0.083333 -1.516831 1.01848700 1.00000 0.00000 O shel 0.669904 0.083333 -1.516831 -2.1330000 1.00000 0.00000 O core 0.258426 0.115247 -0.750363 1.01848700 1.00000 0.00000 O shel 0.258061 0.115321 -0.748593 -2.1330000 1.00000 0.00000 O core 0.322253 0.051420 -2.283299 1.01848700 1.00000 0.00000 O shel 0.322035 0.051346 -2.285069 -2.1330000 1.00000 0.00000 Ca core 0.000000 0.000000 -1.516833 2.00000000 1.00000 0.00000 sfractional region 2 C core 0.042980 0.957020 -4.550495 1.34353899 1.00000 0.00000 O core 0.295634 0.957020 -4.550495 1.01848700 1.00000 0.00000 O shel 0.296217 0.957020 -4.550495 -2.1330000 1.00000 0.00000 O core -0.115261 0.988934 -3.784027 1.01848700 1.00000 0.00000 O shel -0.115626 0.989007 -3.782257 -2.1330000 1.00000 0.00000 O core -0.051434 0.925107 -5.316963 1.01848700 1.00000 0.00000 O shel -0.051652 0.925033 -5.318733 -2.1330000 1.00000 0.00000 O core -0.043008 0.790354 -4.550496 1.01848700 1.00000 0.00000 O shel -0.043591 0.790354 -4.550496 -2.1330000 1.00000 0.00000 C core 0.209646 0.790354 -4.550496 1.34353899 1.00000 0.00000 O core 0.367887 0.758440 -5.316964 1.01848700 1.00000 0.00000 O shel 0.368252 0.758366 -5.318735 -2.1330000 1.00000 0.00000 O core 0.304060 0.822267 -3.784029 1.01848700 1.00000 0.00000 O shel 0.304278 0.822341 -3.782258 -2.1330000 1.00000 0.00000 Ca core 0.626313 0.873687 -4.550496 2.00000000 1.00000 0.00000 Ca core 0.792980 0.707020 -4.550497 2.00000000 1.00000 0.00000 C core 0.376313 0.623687 -4.550497 1.34353899 1.00000 0.00000 O core 0.628967 0.623687 -4.550497 1.01848700 1.00000 0.00000 O shel 0.629551 0.623687 -4.550497 -2.1330000 1.00000 0.00000 O core 0.281900 0.591773 -5.316964 1.01848700 1.00000 0.00000 O shel 0.281682 0.591700 -5.318734 -2.1330000 1.00000 0.00000 O core 0.218073 0.655600 -3.784029 1.01848700 1.00000 0.00000 O shel 0.217707 0.655674 -3.782259 -2.1330000 1.00000 0.00000 C core 0.542980 0.457020 -4.550498 1.34353899 1.00000 0.00000 O core 0.290326 0.457020 -4.550498 1.01848700 1.00000 0.00000 O shel 0.289742 0.457020 -4.550498 -2.1330000 1.00000 0.00000 O core 0.701220 0.425107 -5.316965 1.01848700 1.00000 0.00000 O shel 0.701586 0.425033 -5.318735 -2.1330000 1.00000 0.00000 O core 0.637393 0.488934 -3.784030 1.01848700 1.00000 0.00000 O shel 0.637611 0.489007 -3.782260 -2.1330000 1.00000 0.00000 Ca core 0.959647 0.540353 -4.550497 2.00000000 1.00000 0.00000 Ca core 0.292980 0.207020 -4.550497 2.00000000 1.00000 0.00000 O core 0.615233 0.258440 -5.316965 1.01848700 1.00000 0.00000 O shel 0.615015 0.258366 -5.318735 -2.1330000 1.00000 0.00000 C core 0.709647 0.290353 -4.550497 1.34353899 1.00000 0.00000 O core 0.551406 0.322267 -3.784029 1.01848700 1.00000 0.00000 O shel 0.551040 0.322341 -3.782259 -2.1330000 1.00000 0.00000 O core 0.962300 0.290353 -4.550497 1.01848700 1.00000 0.00000 O shel 0.962884 0.290353 -4.550497 -2.1330000 1.00000 0.00000 Ca core 0.126313 0.373687 -4.550497 2.00000000 1.00000 0.00000 Ca core 0.459646 0.040354 -4.550498 2.00000000 1.00000 0.00000 C core 0.876313 0.123687 -4.550497 1.34353899 1.00000 0.00000 O core 0.623659 0.123687 -4.550497 1.01848700 1.00000 0.00000 O shel 0.623076 0.123687 -4.550497 -2.1330000 1.00000 0.00000 O core 0.970727 0.155600 -3.784030 1.01848700 1.00000 0.00000 O shel 0.970945 0.155674 -3.782259 -2.1330000 1.00000 0.00000 O core 1.034554 0.091773 -5.316965 1.01848700 1.00000 0.00000 O shel 1.034919 0.091700 -5.318735 -2.1330000 1.00000 0.00000 dhkl 3.033666 sbulkenergy -255.760757 elements covalent 25 0.0000 covalent 26 0.0000 covalent 27 0.0000 covalent 28 0.0000 covalent 30 0.0000 covalent 48 0.0000 end species Cd core 2.000000 Mn core 2.000000 Mg core 2.000000 Zn core 2.000000 Ni core 2.000000 Co core 2.000000 Fe core 2.000000 Ca core 2.000000 C core 1.343539 O core 1.018487 O shel -2.133000 end buck intra O core O core 4030.30000 0.245497 0.0000000 0.000 2.500 buck Ca core O shel 2154.06000 0.289118 0.0000000 0.000 10.000 buck inter O shel O shel 64727.5050 0.198914 21.84357 0.000 15.000 buck Cd core O shel 4329.81000 0.256300 0.0000000 0.000 10.000 buck Mg core O shel 1039.58460 0.289329 0.0000000 0.000 10.000 buck Co core O shel 1095.59850 0.286300 0.0000000 0.000 10.000 buck Fe core O shel 2152.98610 0.265068 0.0000000 0.000 10.000 buck Mn core O shel 2000.93570 0.272681 0.0000000 0.000 10.000 buck Ni core O shel 1634.46190 0.266612 0.0000000 0.000 10.000 buck Zn core O shel 1029.39000 0.289100 0.0000000 0.000 10.000 morse intra bond C core O core 5.0000000 2.5228 1.19820 0.0000 spring O 52.739130 10000.000 three bond intra C core O core O core 1.7765 120.00 outofplane bond intra C cor O cor O cor O cor 8.8279 dump calcite_0-14_0.5000.res gdis-0.90/models/methane.gin0000644000175000017500000000234707717054777014464 0ustar seanseanopti conp molmec maxcyc 50 name methane cartesian C core -1.95042 -0.03671 0.64453 H core -2.67173 -0.52377 -0.01166 H core -1.69758 -0.70435 1.46820 H core -2.38523 0.88039 1.04197 H core -1.01679 0.25640 0.16440 harm bond kcal C C 310.0 1.526 0 0 harm bond kcal C H 340.0 1.090 0 0 harm bond kcal C O 320.0 1.410 0 0 harm bond kcal O H 553.0 0.960 0 0 three bond kcal C C C 40.0 109.50 0 0 three bond kcal C C H 50.0 109.50 0 0 three bond kcal H C H 35.0 109.50 0 0 three bond kcal C C O 50.0 109.50 0 0 three bond kcal C O H 55.0 108.50 0 0 torsion bond kcal H C C H 0.15 +3 0.0 0 0 torsion bond kcal H C C C 0.16 +3 0.0 0 0 torsion bond kcal H O C C 0.16 +3 0.0 0 0 torsion bond kcal H O C C 0.25 +1 0.0 0 0 torsion bond kcal C C C C 0.18 +3 0.0 0 0 torsion bond kcal C C C C 0.25 +2 180.0 0 0 torsion bond kcal C C C C 0.20 +1 180.0 0 0 torsion bond kcal H C C O 0.25 +1 0.0 0 0 print 1 gdis-0.90/models/burk3.cif0000644000175000017500000000374407717054765014054 0ustar seanseandata_*Burkeite-Na4(SO4)1.39(CO3).61-Giuseppetti _audit_creation_date 01:06:08 _chemical_name_systematic 'Sodium sulfate carbonate (4/1.39/.61) ' _chemical_formula_structural 'Na4(SO4)1.39(CO3).61' _chemical_formula_sum ' C.61 NA4 O7.39 S1.39 ' _publ_section_title ; The crystal structure of synthetic burkeite ; loop_ _publ_author_name 'Giuseppetti G' 'Mazzi F' 'Tadini C' _journal_name_full 'Neues Jahrb.Min.,Monatsh.' _journal_volume 1988 _journal_year 1988 _journal_page_first 203 _journal_page_last 221 _cell_length_a 5.170 _cell_length_b 9.217 _cell_length_c 7.058 _cell_angle_alpha 90. _cell_angle_beta 90. _cell_angle_gamma 90. _symmetry_space_group_name_H-M 'P M N M ' _symmetry_Int_Tables_number '0' loop_ _atom_site_label _atom_site_type_symbol _atom_site_symmetry_multiplicity _atom_site_Wyckoff_symbol _atom_site_fract_x _atom_site_fract_y _atom_site_fract_z _atom_site_B_iso_or_equiv _atom_site_occupancy Na1 Na 4 f 0.25000 0.75090 0.00510 2.24000 1.00000 Na2 Na 2 a 0.25000 0.42540 0.25000 5.46000 1.00000 Na3 Na 2 b 0.75000 0.87540 0.25000 2.19000 1.00000 C1 C 2 b 0.75000 0.55840 0.25000 1.61000 0.61000 S1 S 2 b 0.75000 0.55840 0.25000 1.61000 0.39000 S2 S 4 e 0.29510 0.09130 0.25000 1.16000 0.50000 O1 O 2 b 0.75000 0.42260 0.25000 3.80000 0.85000 O2 O 4 e 0.53570 0.64030 0.25000 2.90000 0.88000 O3 O 4 f 0.75000 0.46930 0.08190 5.50000 0.15000 O4 O 8 g 0.93070 0.58090 0.09510 6.00000 0.12000 O5 O 8 g 0.19270 0.16450 0.08150 2.50000 0.50000 O6 O 4 e 0.21640 0.93680 0.25000 1.50000 0.50000 O7 O 4 e 0.57980 0.10570 0.25000 2.20000 0.50000 _refine_ls_R_factor_all 0.04gdis-0.90/models/aloh4-.car0000644000175000017500000000226007717054764014105 0ustar seansean!BIOSYM archive 3 PBC=OFF AL dimer species calcs !DATE Fri May 30 15:18:53 1997 AL 0.000000000 0.000000000 0.000000000 ALUM 1 Al034 Al 1.382 O1 -1.471137166 0.000000000 -0.949564874 ALUM 2 o* O -0.964 O1 1.471137166 0.000000000 -0.949564874 ALUM 3 o* O -0.964 O2 0.000000000 -1.471137643 0.949565768 ALUM 4 o* O -0.964 O2 0.000000000 1.471137643 0.949565768 ALUM 5 o* O -0.964 H -1.824304938 -0.843675673 -1.249842048 ALUM 6 h* H 0.382 H 1.824304938 0.843675673 -1.249842048 ALUM 7 h* H 0.382 H -0.843677461 1.824303627 1.249840260 ALUM 8 h* H 0.382 H 0.843677461 -1.824303627 1.249840260 ALUM 9 h* H 0.382 end end gdis-0.90/models/adp1.cif0000644000175000017500000000450707717054764013650 0ustar seanseandata_28154-ICSD _audit_creation_date 102-01-29 _audit_creation_method 'generated by RETRIEVE 2.0' _database_code_ICSD 28154 _chemical_name_systematic 'Ammonium dihydrogen phosphate' _chemical_name_mineral 'Biphosammite' _chemical_compound_source 'synthetic' _chemical_formula_structural 'N H4 H2 P O4' _chemical_formula_sum 'H6 N O4 P' _publ_section_title ; Refinement of the Crystal Structures of Ammonium Dihydrogen Phosphate and Ammonium Dihydrogen Arsenate ; loop_ _publ_author_name 'Khan, A A' 'Baur, W H' _journal_name_full 'Acta Crystallographica B (24,1968-38,1982)' _journal_coden_ASTM ACBCAR _journal_volume 29 _journal_year 1973 _journal_page_first 2721 _journal_page_last 2726 _cell_length_a 7.4997(4) _cell_length_b 7.4997(4) _cell_length_c 7.5494(12) _cell_angle_alpha 90 _cell_angle_beta 90 _cell_angle_gamma 90 _cell_volume 424.6 _cell_formula_units_Z 4 _exptl_crystal_density_meas 1.8 _symmetry_space_group_name_H-M 'I -4 2 d S' _symmetry_Int_Tables_number 122 _symmetry_cell_setting tetragonal loop_ _symmetry_equiv_pos_as_xyz 'x,y,z' '-x,-y,z' '-y,x,-z' 'y,-x,-z' '1/2-x,y,1/4-z' '1/2+x,-y,1/4-z' '1/2+y,x,1/4+z' '1/2-y,-x,1/4+z' '1/2+x,1/2+y,1/2+z' '1/2-x,1/2-y,1/2+z' '1/2-y,1/2+x,1/2-z' '1/2+y,1/2-x,1/2-z' '-x,1/2+y,3/4-z' 'x,1/2-y,3/4-z' 'y,1/2+x,3/4+z' '-y,1/2-x,3/4+z' loop_ _atom_type_symbol _atom_type_oxidation_number P5+ 5.000 N3- -3.000 O2- -2.000 H1+ 1.000 loop_ _atom_site_label _atom_site_type_symbol _atom_site_symmetry_multiplicity _atom_site_Wyckoff_symbol _atom_site_fract_x _atom_site_fract_y _atom_site_fract_z _atom_site_occupancy _atom_site_attached_hydrogens _atom_site_calc_flag P1 P5+ 4 a 0. 0. 0. 1. 0 d N1 N3- 4 b 0. 0. 0.5 1. 0 d O1 O2- 16 e 0.0843(1) 0.1466(1) 0.1151(1) 1. 0 d H1 H1+ 16 e -0.002(5) 0.089(3) 0.563(2) 1. 0 d H2 H1+ 8 d 0.25 0.150(6) 0.125 1. 0 d _refine_ls_R_factor_all 0.021 gdis-0.90/models/dummy.gin0000644000175000017500000007024707717054772014175 0ustar seanseansingle conv mole name calcite_-10-4_0.0000 svectors 4.980183 0.000000 4.980183 -24.270662 sfractional region 1 O core 0.862607 0.011066 -2.267198 1.01848700 1.00000 0.00000 O shel 0.862389 0.010993 -2.265427 -2.1330000 1.00000 0.00000 C core 0.957020 0.042980 -3.033665 1.34353899 1.00000 0.00000 O core 0.798780 0.074893 -3.800133 1.01848700 1.00000 0.00000 O shel 0.798414 0.074967 -3.801903 -2.1330000 1.00000 0.00000 O core 1.209674 0.042980 -3.033665 1.01848700 1.00000 0.00000 O shel 1.210258 0.042980 -3.033665 -2.1330000 1.00000 0.00000 C core 0.790353 0.209646 -3.033667 1.34353899 1.00000 0.00000 O core 0.884767 0.241560 -3.800135 1.01848700 1.00000 0.00000 O shel 0.884985 0.241634 -3.801905 -2.1330000 1.00000 0.00000 O core 0.948594 0.177733 -2.267200 1.01848700 1.00000 0.00000 O shel 0.948959 0.177659 -2.265429 -2.1330000 1.00000 0.00000 O core 0.537699 0.209646 -3.033667 1.01848700 1.00000 0.00000 O shel 0.537116 0.209646 -3.033668 -2.1330000 1.00000 0.00000 Ca core 0.914040 0.085960 -6.067330 2.00000000 1.00000 0.00000 Ca core 0.207020 0.292980 -3.033666 2.00000000 1.00000 0.00000 Ca core 0.373687 0.126313 -3.033665 2.00000000 1.00000 0.00000 C core 0.497374 0.002626 -6.067330 1.34353899 1.00000 0.00000 O core 0.591787 0.034540 -6.833797 1.01848700 1.00000 0.00000 O shel 0.592005 0.034614 -6.835568 -2.1330000 1.00000 0.00000 O core 0.244720 0.002626 -6.067330 1.01848700 1.00000 0.00000 O shel 0.244136 0.002626 -6.067330 -2.1330000 1.00000 0.00000 O core 0.655614 -0.029287 -5.300863 1.01848700 1.00000 0.00000 O shel 0.655980 -0.029361 -5.299092 -2.1330000 1.00000 0.00000 O core 0.236294 0.137379 -5.300863 1.01848700 1.00000 0.00000 O shel 0.236076 0.137306 -5.299092 -2.1330000 1.00000 0.00000 C core 0.330707 0.169293 -6.067330 1.34353899 1.00000 0.00000 O core 0.172466 0.201207 -6.833798 1.01848700 1.00000 0.00000 O shel 0.172101 0.201280 -6.835568 -2.1330000 1.00000 0.00000 O core 0.583361 0.169293 -6.067330 1.01848700 1.00000 0.00000 O shel 0.583945 0.169293 -6.067330 -2.1330000 1.00000 0.00000 Ca core 0.454394 0.045606 -9.100996 2.00000000 1.00000 0.00000 Ca core 0.040354 0.459646 -3.033667 2.00000000 1.00000 0.00000 Ca core 0.580707 0.419293 -6.067330 2.00000000 1.00000 0.00000 C core 0.623687 0.376313 -3.033666 1.34353899 1.00000 0.00000 O core 0.529273 0.344400 -2.267199 1.01848700 1.00000 0.00000 O shel 0.529055 0.344326 -2.265429 -2.1330000 1.00000 0.00000 O core 0.876341 0.376313 -3.033666 1.01848700 1.00000 0.00000 O shel 0.876924 0.376313 -3.033666 -2.1330000 1.00000 0.00000 O core 0.465446 0.408227 -3.800134 1.01848700 1.00000 0.00000 O shel 0.465081 0.408300 -3.801904 -2.1330000 1.00000 0.00000 C core 0.164040 0.335960 -6.067331 1.34353899 1.00000 0.00000 O core 0.258454 0.367873 -6.833799 1.01848700 1.00000 0.00000 O shel 0.258672 0.367947 -6.835569 -2.1330000 1.00000 0.00000 O core 0.322281 0.304046 -5.300864 1.01848700 1.00000 0.00000 O shel 0.322646 0.303972 -5.299093 -2.1330000 1.00000 0.00000 O core -0.088614 0.335960 -6.067331 1.01848700 1.00000 0.00000 O shel -0.089197 0.335960 -6.067332 -2.1330000 1.00000 0.00000 O core 0.204366 0.542980 -3.033667 1.01848700 1.00000 0.00000 O shel 0.203783 0.542980 -3.033667 -2.1330000 1.00000 0.00000 C core 0.457020 0.542980 -3.033667 1.34353899 1.00000 0.00000 O core 0.615261 0.511066 -2.267199 1.01848700 1.00000 0.00000 O shel 0.615626 0.510993 -2.265429 -2.1330000 1.00000 0.00000 O core 0.551434 0.574893 -3.800134 1.01848700 1.00000 0.00000 O shel 0.551652 0.574967 -3.801904 -2.1330000 1.00000 0.00000 Ca core 0.747374 0.252626 -6.067330 2.00000000 1.00000 0.00000 C core 0.871061 0.128940 -9.100995 1.34353899 1.00000 0.00000 O core 0.965474 0.160853 -9.867463 1.01848700 1.00000 0.00000 O shel 0.965692 0.160927 -9.869233 -2.1330000 1.00000 0.00000 O core 0.618407 0.128940 -9.100996 1.01848700 1.00000 0.00000 O shel 0.617823 0.128940 -9.100995 -2.1330000 1.00000 0.00000 O core 1.029301 0.097026 -8.334528 1.01848700 1.00000 0.00000 O shel 1.029667 0.096952 -8.332758 -2.1330000 1.00000 0.00000 Ca core 0.287727 0.212273 -9.100995 2.00000000 1.00000 0.00000 C core 0.411414 0.088586 -12.134661 1.34353899 1.00000 0.00000 O core 0.317001 0.056673 -11.368193 1.01848700 1.00000 0.00000 O shel 0.316783 0.056599 -11.366423 -2.1330000 1.00000 0.00000 O core 0.253174 0.120500 -12.901127 1.01848700 1.00000 0.00000 O shel 0.252808 0.120573 -12.902897 -2.1330000 1.00000 0.00000 O core 0.664068 0.088586 -12.134660 1.01848700 1.00000 0.00000 O shel 0.664652 0.088586 -12.134660 -2.1330000 1.00000 0.00000 O core 0.609981 0.263693 -8.334528 1.01848700 1.00000 0.00000 O shel 0.609762 0.263619 -8.332758 -2.1330000 1.00000 0.00000 C core 0.704394 0.295606 -9.100996 1.34353899 1.00000 0.00000 O core 0.546153 0.327520 -9.867463 1.01848700 1.00000 0.00000 O shel 0.545788 0.327593 -9.869234 -2.1330000 1.00000 0.00000 O core 0.957048 0.295606 -9.100996 1.01848700 1.00000 0.00000 O shel 0.957632 0.295606 -9.100996 -2.1330000 1.00000 0.00000 Ca core 0.828081 0.171919 -12.134661 2.00000000 1.00000 0.00000 Ca core 0.994747 0.005253 -12.134661 2.00000000 1.00000 0.00000 Ca core 0.414040 0.585960 -6.067332 2.00000000 1.00000 0.00000 Ca core 0.954394 0.545606 -9.100996 2.00000000 1.00000 0.00000 C core 0.997374 0.502626 -6.067331 1.34353899 1.00000 0.00000 O core 0.902960 0.470713 -5.300864 1.01848700 1.00000 0.00000 O shel 0.902742 0.470639 -5.299094 -2.1330000 1.00000 0.00000 O core 1.250028 0.502626 -6.067331 1.01848700 1.00000 0.00000 O shel 1.250611 0.502626 -6.067331 -2.1330000 1.00000 0.00000 O core 0.839133 0.534540 -6.833799 1.01848700 1.00000 0.00000 O shel 0.838768 0.534614 -6.835569 -2.1330000 1.00000 0.00000 C core 0.290353 0.709647 -3.033666 1.34353899 1.00000 0.00000 O core 0.195940 0.677733 -2.267198 1.01848700 1.00000 0.00000 O shel 0.195722 0.677659 -2.265428 -2.1330000 1.00000 0.00000 O core 0.132113 0.741560 -3.800133 1.01848700 1.00000 0.00000 O shel 0.131748 0.741634 -3.801903 -2.1330000 1.00000 0.00000 O core 0.543007 0.709647 -3.033665 1.01848700 1.00000 0.00000 O shel 0.543591 0.709647 -3.033665 -2.1330000 1.00000 0.00000 C core 0.537727 0.462273 -9.100996 1.34353899 1.00000 0.00000 O core 0.632141 0.494186 -9.867464 1.01848700 1.00000 0.00000 O shel 0.632359 0.494260 -9.869234 -2.1330000 1.00000 0.00000 O core 0.695968 0.430359 -8.334530 1.01848700 1.00000 0.00000 O shel 0.696333 0.430286 -8.332758 -2.1330000 1.00000 0.00000 O core 0.285073 0.462273 -9.100996 1.01848700 1.00000 0.00000 O shel 0.284490 0.462273 -9.100998 -2.1330000 1.00000 0.00000 O core 0.578053 0.669293 -6.067332 1.01848700 1.00000 0.00000 O shel 0.577470 0.669293 -6.067332 -2.1330000 1.00000 0.00000 C core 0.830707 0.669293 -6.067332 1.34353899 1.00000 0.00000 O core 0.988948 0.637379 -5.300864 1.01848700 1.00000 0.00000 O shel 0.989313 0.637306 -5.299094 -2.1330000 1.00000 0.00000 O core 0.925121 0.701207 -6.833799 1.01848700 1.00000 0.00000 O shel 0.925339 0.701280 -6.835569 -2.1330000 1.00000 0.00000 Ca core 0.707020 0.792980 -3.033666 2.00000000 1.00000 0.00000 Ca core 0.873687 0.626313 -3.033666 2.00000000 1.00000 0.00000 Ca core 0.661414 0.338586 -12.134661 2.00000000 1.00000 0.00000 Ca core 0.121061 0.378939 -9.100995 2.00000000 1.00000 0.00000 C core 0.244748 0.255253 -12.134660 1.34353899 1.00000 0.00000 O core 0.339161 0.287166 -12.901128 1.01848700 1.00000 0.00000 O shel 0.339379 0.287240 -12.902898 -2.1330000 1.00000 0.00000 O core -0.007906 0.255253 -12.134661 1.01848700 1.00000 0.00000 O shel -0.008490 0.255253 -12.134660 -2.1330000 1.00000 0.00000 O core 0.402988 0.223339 -11.368193 1.01848700 1.00000 0.00000 O shel 0.403354 0.223265 -11.366423 -2.1330000 1.00000 0.00000 O core -0.016333 0.390006 -11.368193 1.01848700 1.00000 0.00000 O shel -0.016551 0.389932 -11.366423 -2.1330000 1.00000 0.00000 C core 0.078081 0.421919 -12.134661 1.34353899 1.00000 0.00000 O core -0.080160 0.453833 -12.901128 1.01848700 1.00000 0.00000 O shel -0.080525 0.453907 -12.902899 -2.1330000 1.00000 0.00000 O core 0.330735 0.421919 -12.134661 1.01848700 1.00000 0.00000 O shel 0.331318 0.421919 -12.134661 -2.1330000 1.00000 0.00000 Ca core 0.787727 0.712273 -9.100997 2.00000000 1.00000 0.00000 Ca core 0.540354 0.959647 -3.033666 2.00000000 1.00000 0.00000 C core 0.664041 0.835960 -6.067331 1.34353899 1.00000 0.00000 O core 0.569627 0.804046 -5.300863 1.01848700 1.00000 0.00000 O shel 0.569409 0.803972 -5.299093 -2.1330000 1.00000 0.00000 O core 0.505800 0.867873 -6.833798 1.01848700 1.00000 0.00000 O shel 0.505434 0.867947 -6.835568 -2.1330000 1.00000 0.00000 O core 0.916694 0.835960 -6.067330 1.01848700 1.00000 0.00000 O shel 0.917278 0.835960 -6.067330 -2.1330000 1.00000 0.00000 C core 0.911414 0.588586 -12.134662 1.34353899 1.00000 0.00000 O core 1.005828 0.620499 -12.901130 1.01848700 1.00000 0.00000 O shel 1.006046 0.620573 -12.902900 -2.1330000 1.00000 0.00000 O core 1.069655 0.556672 -11.368195 1.01848700 1.00000 0.00000 O shel 1.070020 0.556599 -11.366424 -2.1330000 1.00000 0.00000 O core 0.658760 0.588586 -12.134662 1.01848700 1.00000 0.00000 O shel 0.658177 0.588586 -12.134663 -2.1330000 1.00000 0.00000 C core 0.123687 0.876313 -3.033666 1.34353899 1.00000 0.00000 O core 0.218100 0.908227 -3.800133 1.01848700 1.00000 0.00000 O shel 0.218318 0.908300 -3.801904 -2.1330000 1.00000 0.00000 O core -0.128967 0.876313 -3.033666 1.01848700 1.00000 0.00000 O shel -0.129551 0.876313 -3.033666 -2.1330000 1.00000 0.00000 O core 0.281927 0.844400 -2.267199 1.01848700 1.00000 0.00000 O shel 0.282293 0.844326 -2.265428 -2.1330000 1.00000 0.00000 Ca core 0.328081 0.671919 -12.134661 2.00000000 1.00000 0.00000 C core 0.371061 0.628940 -9.100996 1.34353899 1.00000 0.00000 O core 0.276647 0.597026 -8.334529 1.01848700 1.00000 0.00000 O shel 0.276429 0.596952 -8.332759 -2.1330000 1.00000 0.00000 O core 0.623715 0.628940 -9.100996 1.01848700 1.00000 0.00000 O shel 0.624298 0.628940 -9.100996 -2.1330000 1.00000 0.00000 O core 0.212820 0.660853 -9.867464 1.01848700 1.00000 0.00000 O shel 0.212455 0.660927 -9.869234 -2.1330000 1.00000 0.00000 O core -0.048260 0.795606 -9.100997 1.01848700 1.00000 0.00000 O shel -0.048844 0.795606 -9.100997 -2.1330000 1.00000 0.00000 C core 0.204394 0.795606 -9.100997 1.34353899 1.00000 0.00000 O core 0.362634 0.763693 -8.334529 1.01848700 1.00000 0.00000 O shel 0.363000 0.763619 -8.332759 -2.1330000 1.00000 0.00000 O core 0.298807 0.827520 -9.867464 1.01848700 1.00000 0.00000 O shel 0.299025 0.827593 -9.869234 -2.1330000 1.00000 0.00000 Ca core 0.080707 0.919293 -6.067331 2.00000000 1.00000 0.00000 Ca core 0.247374 0.752626 -6.067331 2.00000000 1.00000 0.00000 Ca core 0.494748 0.505253 -12.134661 2.00000000 1.00000 0.00000 Ca core 0.161414 0.838586 -12.134663 2.00000000 1.00000 0.00000 C core 0.744748 0.755253 -12.134661 1.34353899 1.00000 0.00000 O core 0.650334 0.723339 -11.368195 1.01848700 1.00000 0.00000 O shel 0.650116 0.723265 -11.366425 -2.1330000 1.00000 0.00000 O core 0.997402 0.755253 -12.134661 1.01848700 1.00000 0.00000 O shel 0.997985 0.755253 -12.134661 -2.1330000 1.00000 0.00000 O core 0.586507 0.787166 -12.901129 1.01848700 1.00000 0.00000 O shel 0.586142 0.787240 -12.902899 -2.1330000 1.00000 0.00000 C core 0.037727 0.962273 -9.100996 1.34353899 1.00000 0.00000 O core -0.056686 0.930359 -8.334528 1.01848700 1.00000 0.00000 O shel -0.056904 0.930286 -8.332758 -2.1330000 1.00000 0.00000 O core -0.120513 0.994186 -9.867463 1.01848700 1.00000 0.00000 O shel -0.120879 0.994260 -9.869233 -2.1330000 1.00000 0.00000 O core 0.290381 0.962273 -9.100996 1.01848700 1.00000 0.00000 O shel 0.290965 0.962273 -9.100996 -2.1330000 1.00000 0.00000 O core 0.325427 0.921919 -12.134663 1.01848700 1.00000 0.00000 O shel 0.324843 0.921919 -12.134663 -2.1330000 1.00000 0.00000 C core 0.578081 0.921919 -12.134663 1.34353899 1.00000 0.00000 O core 0.736322 0.890006 -11.368195 1.01848700 1.00000 0.00000 O shel 0.736687 0.889932 -11.366425 -2.1330000 1.00000 0.00000 O core 0.672494 0.953833 -12.901129 1.01848700 1.00000 0.00000 O shel 0.672712 0.953906 -12.902899 -2.1330000 1.00000 0.00000 Ca core 0.621061 0.878940 -9.100996 2.00000000 1.00000 0.00000 sfractional region 2 O core 0.699114 0.048232 -15.168326 1.01848700 1.00000 0.00000 O shel 0.698530 0.048232 -15.168326 -2.1330000 1.00000 0.00000 C core 0.951768 0.048232 -15.168326 1.34353899 1.00000 0.00000 O core 1.110008 0.016319 -14.401858 1.01848700 1.00000 0.00000 O shel 1.110374 0.016245 -14.400088 -2.1330000 1.00000 0.00000 O core 1.046181 0.080146 -15.934793 1.01848700 1.00000 0.00000 O shel 1.046399 0.080220 -15.936563 -2.1330000 1.00000 0.00000 Ca core 0.908788 0.091212 -18.201992 2.00000000 1.00000 0.00000 C core 0.785101 0.214899 -15.168325 1.34353899 1.00000 0.00000 O core 0.690687 0.182986 -14.401858 1.01848700 1.00000 0.00000 O shel 0.690469 0.182912 -14.400087 -2.1330000 1.00000 0.00000 O core 0.626861 0.246813 -15.934793 1.01848700 1.00000 0.00000 O shel 0.626495 0.246886 -15.936563 -2.1330000 1.00000 0.00000 O core 1.037755 0.214899 -15.168325 1.01848700 1.00000 0.00000 O shel 1.038338 0.214899 -15.168325 -2.1330000 1.00000 0.00000 Ca core 0.449141 0.050859 -21.235655 2.00000000 1.00000 0.00000 C core 0.492121 0.007879 -18.201990 1.34353899 1.00000 0.00000 O core 0.397708 -0.024035 -17.435524 1.01848700 1.00000 0.00000 O shel 0.397490 -0.024108 -17.433754 -2.1330000 1.00000 0.00000 O core 0.744775 0.007879 -18.201990 1.01848700 1.00000 0.00000 O shel 0.745359 0.007879 -18.201990 -2.1330000 1.00000 0.00000 O core 0.333881 0.039792 -18.968458 1.01848700 1.00000 0.00000 O shel 0.333515 0.039866 -18.970228 -2.1330000 1.00000 0.00000 O core 0.072801 0.174546 -18.201992 1.01848700 1.00000 0.00000 O shel 0.072217 0.174546 -18.201992 -2.1330000 1.00000 0.00000 C core 0.325455 0.174546 -18.201992 1.34353899 1.00000 0.00000 O core 0.483695 0.142632 -17.435524 1.01848700 1.00000 0.00000 O shel 0.484061 0.142558 -17.433754 -2.1330000 1.00000 0.00000 O core 0.419868 0.206459 -18.968458 1.01848700 1.00000 0.00000 O shel 0.420086 0.206533 -18.970228 -2.1330000 1.00000 0.00000 Ca core 0.201768 0.298232 -15.168325 2.00000000 1.00000 0.00000 Ca core 0.368434 0.131566 -15.168325 2.00000000 1.00000 0.00000 C core 0.618434 0.381566 -15.168325 1.34353899 1.00000 0.00000 O core 0.712848 0.413479 -15.934793 1.01848700 1.00000 0.00000 O shel 0.713066 0.413553 -15.936563 -2.1330000 1.00000 0.00000 O core 0.365780 0.381566 -15.168325 1.01848700 1.00000 0.00000 O shel 0.365197 0.381566 -15.168325 -2.1330000 1.00000 0.00000 O core 0.776675 0.349652 -14.401858 1.01848700 1.00000 0.00000 O shel 0.777040 0.349579 -14.400088 -2.1330000 1.00000 0.00000 Ca core 0.282475 0.217525 -21.235657 2.00000000 1.00000 0.00000 Ca core 0.822828 0.177172 -24.269321 2.00000000 1.00000 0.00000 Ca core 0.035101 0.464899 -15.168325 2.00000000 1.00000 0.00000 C core 0.865808 0.134192 -21.235657 1.34353899 1.00000 0.00000 O core 0.771395 0.102279 -20.469189 1.01848700 1.00000 0.00000 O shel 0.771177 0.102205 -20.467419 -2.1330000 1.00000 0.00000 O core 1.118462 0.134192 -21.235657 1.01848700 1.00000 0.00000 O shel 1.119046 0.134192 -21.235657 -2.1330000 1.00000 0.00000 O core 0.707568 0.166106 -22.002125 1.01848700 1.00000 0.00000 O shel 0.707202 0.166179 -22.003895 -2.1330000 1.00000 0.00000 C core 0.158788 0.341212 -18.201990 1.34353899 1.00000 0.00000 O core 0.064374 0.309299 -17.435524 1.01848700 1.00000 0.00000 O shel 0.064156 0.309225 -17.433752 -2.1330000 1.00000 0.00000 O core 0.000547 0.373126 -18.968458 1.01848700 1.00000 0.00000 O shel 0.000182 0.373200 -18.970228 -2.1330000 1.00000 0.00000 O core 0.411442 0.341212 -18.201990 1.01848700 1.00000 0.00000 O shel 0.412025 0.341212 -18.201990 -2.1330000 1.00000 0.00000 C core 0.406162 0.093839 -24.269321 1.34353899 1.00000 0.00000 O core 0.500575 0.125752 -25.035789 1.01848700 1.00000 0.00000 O shel 0.500793 0.125826 -25.037560 -2.1330000 1.00000 0.00000 O core 0.564402 0.061925 -23.502853 1.01848700 1.00000 0.00000 O shel 0.564768 0.061851 -23.501083 -2.1330000 1.00000 0.00000 O core 0.153508 0.093839 -24.269321 1.01848700 1.00000 0.00000 O shel 0.152924 0.093839 -24.269321 -2.1330000 1.00000 0.00000 O core 0.446487 0.300859 -21.235657 1.01848700 1.00000 0.00000 O shel 0.445904 0.300859 -21.235657 -2.1330000 1.00000 0.00000 C core 0.699142 0.300859 -21.235657 1.34353899 1.00000 0.00000 O core 0.857382 0.268945 -20.469189 1.01848700 1.00000 0.00000 O shel 0.857747 0.268872 -20.467419 -2.1330000 1.00000 0.00000 O core 0.793555 0.332772 -22.002125 1.01848700 1.00000 0.00000 O shel 0.793773 0.332846 -22.003895 -2.1330000 1.00000 0.00000 O core 0.357354 0.516319 -14.401858 1.01848700 1.00000 0.00000 O shel 0.357136 0.516245 -14.400088 -2.1330000 1.00000 0.00000 C core 0.451768 0.548232 -15.168325 1.34353899 1.00000 0.00000 O core 0.293527 0.580146 -15.934793 1.01848700 1.00000 0.00000 O shel 0.293162 0.580220 -15.936563 -2.1330000 1.00000 0.00000 O core 0.704422 0.548232 -15.168325 1.01848700 1.00000 0.00000 O shel 0.705005 0.548232 -15.168325 -2.1330000 1.00000 0.00000 Ca core 0.575455 0.424546 -18.201992 2.00000000 1.00000 0.00000 Ca core 0.742121 0.257879 -18.201990 2.00000000 1.00000 0.00000 Ca core 0.989495 0.010505 -24.269320 2.00000000 1.00000 0.00000 Ca core 0.701768 0.798232 -15.168325 2.00000000 1.00000 0.00000 C core 0.285101 0.714899 -15.168327 1.34353899 1.00000 0.00000 O core 0.379515 0.746813 -15.934795 1.01848700 1.00000 0.00000 O shel 0.379733 0.746886 -15.936565 -2.1330000 1.00000 0.00000 O core 0.443342 0.682986 -14.401859 1.01848700 1.00000 0.00000 O shel 0.443707 0.682912 -14.400089 -2.1330000 1.00000 0.00000 O core 0.032447 0.714899 -15.168327 1.01848700 1.00000 0.00000 O shel 0.031864 0.714899 -15.168327 -2.1330000 1.00000 0.00000 Ca core 0.868434 0.631566 -15.168325 2.00000000 1.00000 0.00000 C core 0.992121 0.507879 -18.201990 1.34353899 1.00000 0.00000 O core 1.086535 0.539793 -18.968458 1.01848700 1.00000 0.00000 O shel 1.086753 0.539866 -18.970228 -2.1330000 1.00000 0.00000 O core 0.739467 0.507879 -18.201990 1.01848700 1.00000 0.00000 O shel 0.738884 0.507879 -18.201990 -2.1330000 1.00000 0.00000 O core 1.150362 0.475965 -17.435524 1.01848700 1.00000 0.00000 O shel 1.150727 0.475892 -17.433752 -2.1330000 1.00000 0.00000 Ca core 0.656162 0.343839 -24.269321 2.00000000 1.00000 0.00000 Ca core 0.408788 0.591212 -18.201990 2.00000000 1.00000 0.00000 C core 0.532475 0.467526 -21.235655 1.34353899 1.00000 0.00000 O core 0.438061 0.435612 -20.469189 1.01848700 1.00000 0.00000 O shel 0.437843 0.435538 -20.467417 -2.1330000 1.00000 0.00000 O core 0.374234 0.499439 -22.002123 1.01848700 1.00000 0.00000 O shel 0.373869 0.499513 -22.003893 -2.1330000 1.00000 0.00000 O core 0.785129 0.467526 -21.235655 1.01848700 1.00000 0.00000 O shel 0.785712 0.467526 -21.235655 -2.1330000 1.00000 0.00000 O core 0.731041 0.642632 -17.435524 1.01848700 1.00000 0.00000 O shel 0.730823 0.642558 -17.433752 -2.1330000 1.00000 0.00000 C core 0.825455 0.674546 -18.201990 1.34353899 1.00000 0.00000 O core 0.667214 0.706459 -18.968458 1.01848700 1.00000 0.00000 O shel 0.666849 0.706533 -18.970228 -2.1330000 1.00000 0.00000 O core 1.078109 0.674546 -18.201990 1.01848700 1.00000 0.00000 O shel 1.078692 0.674546 -18.201990 -2.1330000 1.00000 0.00000 Ca core 0.949141 0.550859 -21.235657 2.00000000 1.00000 0.00000 C core 0.239495 0.260505 -24.269321 1.34353899 1.00000 0.00000 O core 0.145082 0.228592 -23.502853 1.01848700 1.00000 0.00000 O shel 0.144863 0.228518 -23.501083 -2.1330000 1.00000 0.00000 O core 0.492149 0.260505 -24.269321 1.01848700 1.00000 0.00000 O shel 0.492732 0.260505 -24.269321 -2.1330000 1.00000 0.00000 O core 0.081255 0.292419 -25.035789 1.01848700 1.00000 0.00000 O shel 0.080889 0.292493 -25.037560 -2.1330000 1.00000 0.00000 O core -0.179826 0.427172 -24.269321 1.01848700 1.00000 0.00000 O shel -0.180409 0.427172 -24.269321 -2.1330000 1.00000 0.00000 C core 0.072828 0.427172 -24.269321 1.34353899 1.00000 0.00000 O core 0.231069 0.395258 -23.502853 1.01848700 1.00000 0.00000 O shel 0.231434 0.395185 -23.501083 -2.1330000 1.00000 0.00000 O core 0.167242 0.459086 -25.035789 1.01848700 1.00000 0.00000 O shel 0.167460 0.459159 -25.037560 -2.1330000 1.00000 0.00000 Ca core 0.115808 0.384192 -21.235655 2.00000000 1.00000 0.00000 Ca core 0.535101 0.964899 -15.168327 2.00000000 1.00000 0.00000 C core 0.658788 0.841212 -18.201992 1.34353899 1.00000 0.00000 O core 0.753201 0.873126 -18.968460 1.01848700 1.00000 0.00000 O shel 0.753420 0.873200 -18.970230 -2.1330000 1.00000 0.00000 O core 0.817029 0.809299 -17.435524 1.01848700 1.00000 0.00000 O shel 0.817394 0.809225 -17.433754 -2.1330000 1.00000 0.00000 O core 0.406134 0.841212 -18.201992 1.01848700 1.00000 0.00000 O shel 0.405551 0.841212 -18.201992 -2.1330000 1.00000 0.00000 Ca core 0.782475 0.717526 -21.235655 2.00000000 1.00000 0.00000 C core 0.906162 0.593839 -24.269320 1.34353899 1.00000 0.00000 O core 0.811748 0.561925 -23.502853 1.01848700 1.00000 0.00000 O shel 0.811530 0.561851 -23.501081 -2.1330000 1.00000 0.00000 O core 0.747921 0.625752 -25.035788 1.01848700 1.00000 0.00000 O shel 0.747556 0.625826 -25.037558 -2.1330000 1.00000 0.00000 O core 1.158816 0.593839 -24.269320 1.01848700 1.00000 0.00000 O shel 1.159399 0.593839 -24.269320 -2.1330000 1.00000 0.00000 Ca core 0.075455 0.924546 -18.201992 2.00000000 1.00000 0.00000 C core 0.118434 0.881566 -15.168326 1.34353899 1.00000 0.00000 O core 0.024021 0.849652 -14.401859 1.01848700 1.00000 0.00000 O shel 0.023803 0.849579 -14.400089 -2.1330000 1.00000 0.00000 O core 0.371088 0.881566 -15.168326 1.01848700 1.00000 0.00000 O shel 0.371672 0.881566 -15.168326 -2.1330000 1.00000 0.00000 O core -0.039806 0.913479 -15.934794 1.01848700 1.00000 0.00000 O shel -0.040171 0.913553 -15.936564 -2.1330000 1.00000 0.00000 Ca core 0.242121 0.757879 -18.201990 2.00000000 1.00000 0.00000 C core 0.365808 0.634192 -21.235655 1.34353899 1.00000 0.00000 O core 0.460222 0.666106 -22.002123 1.01848700 1.00000 0.00000 O shel 0.460440 0.666179 -22.003893 -2.1330000 1.00000 0.00000 O core 0.113154 0.634192 -21.235655 1.01848700 1.00000 0.00000 O shel 0.112571 0.634192 -21.235655 -2.1330000 1.00000 0.00000 O core 0.524049 0.602279 -20.469189 1.01848700 1.00000 0.00000 O shel 0.524414 0.602205 -20.467417 -2.1330000 1.00000 0.00000 O core 0.104728 0.768945 -20.469189 1.01848700 1.00000 0.00000 O shel 0.104510 0.768872 -20.467417 -2.1330000 1.00000 0.00000 C core 0.199142 0.800859 -21.235655 1.34353899 1.00000 0.00000 O core 0.040901 0.832772 -22.002123 1.01848700 1.00000 0.00000 O shel 0.040536 0.832846 -22.003893 -2.1330000 1.00000 0.00000 O core 0.451796 0.800859 -21.235655 1.01848700 1.00000 0.00000 O shel 0.452379 0.800859 -21.235655 -2.1330000 1.00000 0.00000 Ca core 0.322828 0.677172 -24.269321 2.00000000 1.00000 0.00000 Ca core 0.489495 0.510505 -24.269320 2.00000000 1.00000 0.00000 C core 0.032475 0.967525 -21.235657 1.34353899 1.00000 0.00000 O core 0.126888 0.999439 -22.002125 1.01848700 1.00000 0.00000 O shel 0.127106 0.999513 -22.003895 -2.1330000 1.00000 0.00000 O core 0.190715 0.935612 -20.469189 1.01848700 1.00000 0.00000 O shel 0.191081 0.935538 -20.467419 -2.1330000 1.00000 0.00000 O core -0.220179 0.967525 -21.235657 1.01848700 1.00000 0.00000 O shel -0.220763 0.967525 -21.235657 -2.1330000 1.00000 0.00000 Ca core 0.615808 0.884192 -21.235657 2.00000000 1.00000 0.00000 C core 0.739495 0.760505 -24.269321 1.34353899 1.00000 0.00000 O core 0.833909 0.792419 -25.035789 1.01848700 1.00000 0.00000 O shel 0.834127 0.792493 -25.037560 -2.1330000 1.00000 0.00000 O core 0.486841 0.760505 -24.269321 1.01848700 1.00000 0.00000 O shel 0.486258 0.760505 -24.269321 -2.1330000 1.00000 0.00000 O core 0.897736 0.728592 -23.502853 1.01848700 1.00000 0.00000 O shel 0.898101 0.728518 -23.501083 -2.1330000 1.00000 0.00000 Ca core 0.156162 0.843839 -24.269321 2.00000000 1.00000 0.00000 O core 0.478415 0.895258 -23.502853 1.01848700 1.00000 0.00000 O shel 0.478197 0.895185 -23.501083 -2.1330000 1.00000 0.00000 C core 0.572828 0.927172 -24.269321 1.34353899 1.00000 0.00000 O core 0.414588 0.959086 -25.035789 1.01848700 1.00000 0.00000 O shel 0.414222 0.959159 -25.037560 -2.1330000 1.00000 0.00000 O core 0.825482 0.927172 -24.269321 1.01848700 1.00000 0.00000 O shel 0.826066 0.927172 -24.269321 -2.1330000 1.00000 0.00000 sbulkenergy -1023.042969 elements covalent 25 0.0000 covalent 26 0.0000 covalent 27 0.0000 covalent 28 0.0000 covalent 30 0.0000 covalent 48 0.0000 end species Cd core 2.000000 Mn core 2.000000 Mg core 2.000000 Zn core 2.000000 Ni core 2.000000 Co core 2.000000 Fe core 2.000000 Ca core 2.000000 C core 1.343539 O core 1.018487 O shel -2.133000 end buck intra O core O core 4030.30000 0.245497 0.0000000 0.000 2.500 buck Ca core O shel 2154.06000 0.289118 0.0000000 0.000 10.000 buck inter O shel O shel 64727.5050 0.198914 21.84357 0.000 15.000 buck Cd core O shel 4329.81000 0.256300 0.0000000 0.000 10.000 buck Mg core O shel 1039.58460 0.289329 0.0000000 0.000 10.000 buck Co core O shel 1095.59850 0.286300 0.0000000 0.000 10.000 buck Fe core O shel 2152.98610 0.265068 0.0000000 0.000 10.000 buck Mn core O shel 2000.93570 0.272681 0.0000000 0.000 10.000 buck Ni core O shel 1634.46190 0.266612 0.0000000 0.000 10.000 buck Zn core O shel 1029.39000 0.289100 0.0000000 0.000 10.000 morse intra bond C core O core 5.0000000 2.5228 1.19820 0.0000 spring O 52.739130 10000.000 three bond intra C core O core O core 1.7765 120.00 outofplane bond intra C cor O cor O cor O cor 8.8279 gdis-0.90/models/urea.gin0000644000175000017500000000270407717054777013774 0ustar seanseansing molecule conp prop opera title example of a molecular crystal - urea end cell 5.56500 5.56500 4.68400 90.00000 90.00000 90.00000 fractional C 0.0000 0.5000 0.3260 0.3800 O 0.0000 0.5000 0.5953 -0.3800 N 0.1459 0.6459 0.1766 -0.8300 H 0.2575 0.7575 0.2827 0.4150 H 0.1441 0.6441 -0.0380 0.4150 space 113 morse bond C core O core 6.288000 2.060000 1.23000 morse bond C core N core 4.206000 2.000000 1.32000 morse bond H core N core 3.816000 2.280000 1.02600 lennard 12 6 inter C core O core 39031.570000 35.266000 18.0 lennard 12 6 inter C core N core 112494.667000 55.387000 18.0 lennard 12 6 inter O core O core 11833.864000 21.633000 18.0 lennard 12 6 inter N core O core 34106.919000 33.977000 18.0 lennard 12 6 inter N core N core 98301.108000 53.362000 18.0 lennard 12 6 inter C core C core 128737.614000 57.488000 18.0 three bond C core N core O core 5.897000 121.000000 three bond N core H core C core 3.252000 120.000000 three bond N core H core H core 2.862000 120.000000 three bond C core N core N core 8.846000 118.000000 torsion bond O cor C cor N cor H cor 0.260200 -2 torsion bond N cor C cor N cor H cor 0.002170 -2 torsion O cor C cor N cor N cor 0.434000 -2 1.60 1.60 3.00 0.00 gdis-0.90/models/arag.gin0000644000175000017500000000114107717054764013740 0ustar seanseansingle conp dist compare full dump arag_full cell 5.739 4.962 7.971 90.000 90.000 90.000 fractional 4 Ca core 0.24030 0.25000 0.41510 2.00000 C core 0.08500 0.25000 0.76270 0.99805 O core 0.09520 0.25000 0.92310 -0.99935 O core 0.08700 0.47290 0.68010 -0.99935 space 62 buck Ca O 8839.3 0.23813 0.0 0.0 10.0 0 0 0 buck C O 3088.4 0.12635 0.0 0.0 10.0 0 0 0 buck O O 36010.8 0.19756 0.0 0.0 10.0 0 0 0 three C O O 9.3179 120.0 1.80 1.800 3.00 0 0 torsion O C O O 1.1392 -2 0 1.50 1.50 2.50 0.00 0 gdis-0.90/models/diamond.dfx0000644000175000017500000000306707717054772014455 0ustar seansean{data file for diamond, with random hexagonal intergrowths} {probability of cubic stacking = 70%} INSTRUMENTAL {Header for instrumental section} X-RAY {Simulate X-ray diffraction} 1.5418 {X-ray wavelength} {gaussian 0.1 trim} {Instrumental broadening (much faster)} PSEUDO-VOIGT 0.1 -0.036 0.009 0.6 TRIM {Instrumental broadening (much slower)} STRUCTURAL {Header for structural section} 2.52 2.52 2.06 120.0 {unit cell coordinates, a, b, c, gamma} 6/MMM {hexagonal, c = cubic [111]} 2 {111 sheet, plus its mirror} infinite {Layers are very wide in the a-b plane} LAYER 1 CENTROSYMMETRIC C 1 -.333333 -.166667 -.125 1.0 1.0 {C 2 .333333 .166667 .125 1.0 1.0, related to 1 by -1} LAYER 2 CENTROSYMMETRIC C 1 .333333 .166667 -.125 1.0 1.0 {C 2 -.333333 -.166667 .125 1.0 1.0, related to 1 by -1} STACKING {Header for stacking description} recursive {Statistical ensemble} infinite {Infinite number of layers} TRANSITIONS {Header for stacking transition data} {Transitions from layer 1} 0.7 0.666667 0.333333 1.0 {layer 1 to layer 1} 0.3 0.0 0.0 1.0 {layer 1 to layer 2} {Transitions from layer 2} 0.3 0.0 0.0 1.0 {layer 2 to layer 1} 0.7 -0.666667 -0.333333 1.0 {layer 2 to layer 2} gdis-0.90/models/baso4.gin0000644000175000017500000000245007717054765014043 0ustar seansean# # Keywords: # opti comp prop phon noden conp molmec full rfo # # Options: # cell 8.950666 5.452931 7.153354 90.000000 90.000000 90.000000 fractional 5 Ba core 0.1868584 0.2500000 0.1588846 2.00000000 1.00000 0.00000 S core 0.4441985 0.7500000 0.1908629 1.36000000 1.00000 0.00000 O core 0.5956493 0.7500000 0.1157128 -0.8400000 1.00000 0.00000 O core 0.3282314 0.7500000 0.0463450 -0.8400000 1.00000 0.00000 O core 0.4242455 0.9660919 0.3099129 -0.8400000 1.00000 0.00000 space P N M A observables elastic 1 1 9.5000 elastic 2 2 8.3600 elastic 3 3 11.0600 elastic 4 4 1.8100 elastic 5 5 2.9000 elastic 6 6 2.7700 elastic 1 2 5.1300 elastic 1 3 3.3600 elastic 2 3 3.2800 frequency 1 0.0000 end species 3 Ba core 2.000000 S core 1.360000 O core -0.840000 buck O core Ba core 4204.7937 0.290700 .00000E+00 0.000 10.000 buck inter O core O core 103585.02 0.200000 25.980 0.000 15.000 morse intra bond O core S core 5.0000000 1.2000 1.52029 0.0000 three bond intra S core O core O core 7.1524 109.47 dump gdis-0.90/models/water.car0000644000175000017500000000124207717054777014146 0ustar seansean!BIOSYM archive 3 PBC=OFF water molecule !DATE Fri May 30 15:32:45 1997 OH -0.037199497 0.049561262 -0.001966476 OHH 1 o* O -0.713353 HH1 0.890712261 0.062658191 0.243814468 OHH 1 h* H 0.356676 HH2 -0.300257206 -0.849346399 -0.212597847 OHH 1 h* H 0.356676 end end gdis-0.90/models/sio2.res0000644000175000017500000000161607717054777013731 0ustar seansean# # Keywords: # opti conp prop compare dist angle phonon inten # # Options: # title alpha quartz end cell 4.940911 4.940911 5.448922 90.000000 90.000000 120.000000 fractional 2 Si core 0.4647780 0.4647780 0.0000000 2.39999999 1.00000 0.00000 O core 0.1553033 0.4268321 0.1248693 -1.1999999 1.00000 0.00000 space P 32 2 1 totalenergy -175.0161148629 eV species 2 Si core 2.400000 O core -1.200000 buck O core O core 1388.7730 0.362319 175.00 0.000 10.000 buck O core Si core 18003.757 0.205205 133.54 0.000 10.000 dump sio2.res output movie arc quartz_opt.arc gdis-0.90/models/gibb_best3.gin0000644000175000017500000000313210032501220014773 0ustar seanseanopti conp comp mole bond phon switch rfo gnorm 1.0 title gibbsite fit end name gibbsite cell 8.684000 5.078000 9.736000 90.000000 94.540000 90.000000 fractional Al core 0.167900 0.529500 0.997700 Al core 0.334400 0.023600 0.997600 O1 core 0.177900 0.218300 0.888500 O1 core 0.669200 0.655800 0.897700 O1 core 0.498400 0.131500 0.895600 O1 core 0.979500 0.629300 0.893200 O1 core 0.297100 0.717800 0.894800 O1 core 0.819400 0.149100 0.898500 O1 shel 0.177900 0.218300 0.888500 O1 shel 0.669200 0.655800 0.897700 O1 shel 0.498400 0.131500 0.895600 O1 shel 0.979500 0.629300 0.893200 O1 shel 0.297100 0.717800 0.894800 O1 shel 0.819400 0.149100 0.898500 H1 core 0.077262 0.136549 0.874464 H1 core 0.574642 0.552033 0.897494 H1 core 0.494353 0.110970 0.795476 H1 core 0.951158 0.814745 0.886939 H1 core 0.295768 0.716748 0.794078 H1 core 0.805904 0.161311 0.797539 space P 1 21/N 1 element covalent Al 0.1 end species 4 Al core 3.000 O1 core 0.948 O1 shel -2.366 H1 core 0.418 # mine buck inter Al core O1 shel 1342.86 0.2944 0.0 0.0 15.0 0 0 0 buck inter Al core H1 core 560.44 0.2906 0.0 0.0 15.0 0 0 0 buck inter O1 shel O1 shel 9999.97 0.1490 17.0 0.0 15.0 0 0 0 buck inter O1 shel H1 core 235.00 0.2500 0.0 0.0 15.0 0 0 0 morse bond O1 core H1 core 5.4246 2.2682 0.95 0 0 0 spring O1 60.1 0 print 1 gdis-0.90/models/carbonate.car0000644000175000017500000000062107717054772014755 0ustar seansean!BIOSYM archive 3 PBC=OFF Created by GDIS !DATE Tue May 8 20:10:36 2001 C 0.000000477 0.000003517 0.000000000 CORE 1 xx C 0.000 O -0.002754565 -1.275211453 0.000000000 CORE 1 xx O 0.000 O -1.102979422 0.639990509 0.000000000 CORE 1 xx O 0.000 O 1.105733395 0.635217488 0.000000000 CORE 1 xx O 0.000 end end gdis-0.90/models/oxalate.gin0000644000175000017500000001234610032501220014434 0ustar seansean# # Keywords: # opti conp mole comp # # Options: # output arc oxal_full name calcium oxalate cell 6.290000 14.583000 10.116000 90.000000 109.460000 90.000000 fractional 20 Ca core 0.9676000 0.1242999 0.0546000 2.00000000 1.00000 0.00000 Ca core 0.9968000 0.1235999 0.4357000 2.00000000 1.00000 0.00000 C core 0.9832000 0.3201000 0.2452000 0.60000000 1.00000 0.00000 C core 0.0008999 0.4269999 0.2492000 0.60000000 1.00000 0.00000 C core 0.5189000 0.1265999 0.1812000 0.60000000 1.00000 0.00000 C core 0.4504999 0.1173000 0.3131000 0.60000000 1.00000 0.00000 O1 core 0.9756000 0.2826000 0.1321998 -0.8000000 1.00000 0.00000 O1 core 0.0065998 0.4658999 0.1394999 -0.8000000 1.00000 0.00000 O1 core 0.9799000 0.2819000 0.3550000 -0.8000000 1.00000 0.00000 O1 core 0.0072998 0.4657999 0.3613999 -0.8000000 1.00000 0.00000 O1 core 0.3613999 0.1417999 0.0690000 -0.8000000 1.00000 0.00000 O1 core 0.7245000 0.1227000 0.1974000 -0.8000000 1.00000 0.00000 O1 core 0.2438000 0.1228999 0.2957000 -0.8000000 1.00000 0.00000 O1 core 0.6073000 0.1067999 0.4263998 -0.8000000 1.00000 0.00000 O2 core 0.3932000 0.3459000 0.1021999 -0.7642613 1.00000 0.00000 O2 core 0.5913000 0.3828998 0.3908000 -0.7642613 1.00000 0.00000 H core 0.4896010 0.3709538 0.0460530 0.38213015 1.00000 0.00000 H core 0.4307239 0.2805119 0.0953809 0.38213015 1.00000 0.00000 H core 0.4764569 0.3773999 0.4411579 0.38213015 1.00000 0.00000 H core 0.4926800 0.3776620 0.2911780 0.38213015 1.00000 0.00000 space P 21/C observables frequency 1 0.0000 frequency 2 0.0000 frequency 3 0.0000 end name sodium oxalate cell 3.449000 5.243000 10.375000 90.000000 92.660000 90.000000 fractional 4 Na core 0.3019999 0.0564999 0.3551999 1.00000000 1.00000 0.00000 O1 core 0.1656998 0.8778000 0.1510999 -0.8000000 1.00000 0.00000 O1 core 0.2273999 0.2704000 0.0691000 -0.8000000 1.00000 0.00000 C core 0.1135000 0.0434999 0.0633999 0.60000000 1.00000 0.00000 space 14 origin 2 name potassium oxalate cell 9.222000 6.197000 10.690000 90.000000 110.700000 90.000000 fractional 6 K core 0.1319999 0.8301999 0.1320999 1.00000000 1.00000 0.00000 O1 core 0.1262000 0.2697000 0.0914999 -0.8000000 1.00000 0.00000 O1 core 0.3196998 0.4864999 0.0926000 -0.8000000 1.00000 0.00000 O2 core 0.0000000 0.4958000 0.2500000 -0.7642613 1.00000 0.00000 C core 0.2342998 0.3254999 0.0527999 0.60000000 1.00000 0.00000 H core 0.0350000 0.4039999 0.1936999 0.38213015 1.00000 0.00000 space C 2/C species 7 Ca core 2.000000 Na core 1.000000 K core 1.000000 O1 core -0.800000 O2 core -0.764261 C core 0.600000 H core 0.382130 buck inter C core C core 993.63011 0.240472 10.055 0.000 15.000 1 1 0 buck inter C core O1 core 604.56823 0.278199 13.562 0.000 15.000 1 1 0 buck inter C core O2 core 1130.7548 0.246409 18.637 0.000 15.000 1 1 0 buck inter O1 core O1 core 5161.9633 0.222373 19.968 0.000 15.000 1 1 0 buck inter O1 core O2 core 482.14605 0.370000 23.000 0.000 15.000 1 1 0 buck inter O2 core O2 core 10520.550 0.261400 50.286 0.000 15.000 1 1 0 buck inter O1 core Ca core 1976.9077 0.283009 .00000E+00 0.000 15.000 1 1 0 buck inter O2 core Ca core 2652.6303 0.275265 .00000E+00 0.000 15.000 1 1 0 buck inter O1 core Na core 2501.7615 0.248800 .00000E+00 0.000 15.000 0 0 0 buck inter C core Na core 730.60340 0.306000 .00000E+00 0.000 15.000 0 0 0 buck inter O1 core K core 1959.291 0.286601 14.000 0.000 15.000 0 0 0 buck inter O2 core K core 12287.957 0.244061 25.000 0.000 15.000 0 0 0 buck inter C core K core 6300.000 0.257758 0.000 0.000 15.000 0 0 0 # intra water potentials harmonic molmec H O2 23.71711 0.96 0 0 three molmec O2 H H 2.45050 104.5 0 0 # intra oxalate potentials # dmol oxalate intra harmonic bond C O1 52.721 1.27800 0 0 harmonic bond C C 29.289 1.56400 0 0 three bond C O1 O1 6.895 127.20 0 0 three bond C C O1 12.042 116.80 0 0 torsion bond O1 C C O1 0.020142 -2 0 0 torsion intra C C O1 O1 0.296115 -2 0 1.80 1.60 2.40 3.00 0 observables weight 15 1 2 3 4 5 6 7 68 69 70 71 84 85 86 87 10.000 10.000 10.000 15000.000 15000.000 40000.000 4000.000 40000.000 35000.000 15000.000 4000.000 50000.000 15000.000 40000.000 4000.000 end element covalent 11 0.1000 covalent 19 0.1000 covalent 20 0.1000 end print 1 switch_min rfo gnorm 0.100000 gdis-0.90/models/burk2.cif0000644000175000017500000000374407717054765014053 0ustar seanseandata_*Burkeite-Na4(SO4)1.45(CO3).55-Giuseppetti _audit_creation_date 01:06:08 _chemical_name_systematic 'Sodium sulfate carbonate (4/1.45/.55) ' _chemical_formula_structural 'Na4(SO4)1.45(CO3).55' _chemical_formula_sum ' C.55 NA4 O7.45 S1.45 ' _publ_section_title ; The crystal structure of synthetic burkeite ; loop_ _publ_author_name 'Giuseppetti G' 'Mazzi F' 'Tadini C' _journal_name_full 'Neues Jahrb.Min.,Monatsh.' _journal_volume 1988 _journal_year 1988 _journal_page_first 203 _journal_page_last 221 _cell_length_a 5.177 _cell_length_b 9.224 _cell_length_c 7.066 _cell_angle_alpha 90. _cell_angle_beta 90. _cell_angle_gamma 90. _symmetry_space_group_name_H-M 'P M N M ' _symmetry_Int_Tables_number '0' loop_ _atom_site_label _atom_site_type_symbol _atom_site_symmetry_multiplicity _atom_site_Wyckoff_symbol _atom_site_fract_x _atom_site_fract_y _atom_site_fract_z _atom_site_B_iso_or_equiv _atom_site_occupancy Na1 Na 4 f 0.25000 0.75100 0.00540 2.38000 1.00000 Na2 Na 2 a 0.25000 0.42570 0.25000 5.70000 1.00000 Na3 Na 2 b 0.75000 0.87880 0.25000 2.29000 1.00000 C1 C 2 b 0.75000 0.55900 0.25000 1.65000 0.55000 S1 S 2 b 0.75000 0.55900 0.25000 1.65000 0.45000 S2 S 4 e 0.29390 0.09080 0.25000 1.25000 0.50000 O1 O 2 b 0.75000 0.42190 0.25000 4.30000 0.83000 O2 O 4 e 0.53550 0.64270 0.25000 3.00000 0.86000 O3 O 4 f 0.75000 0.47000 0.07840 5.30000 0.17000 O4 O 8 g 0.92810 0.57830 0.09410 5.20000 0.14000 O5 O 8 g 0.18960 0.16320 0.08130 2.50000 0.50000 O6 O 4 e 0.21560 0.93590 0.25000 1.60000 0.50000 O7 O 4 e 0.57570 0.10610 0.25000 2.40000 0.50000 _refine_ls_R_factor_all 0.03gdis-0.90/models/1FUF.gin0000644000175000017500000007146110243311271013514 0ustar seanseansingle mole library gdis.lib name 1FUF cartesian O core -9.56100 11.31800 10.67500 C core -9.28200 12.61700 11.18800 C core -9.54600 12.73500 12.67100 O core -10.95200 12.50200 12.92800 C core -8.81400 11.74400 13.56200 O core -7.53400 12.25400 13.90600 C core -9.71400 11.69900 14.78800 O core -9.49400 12.83200 15.59600 C core -11.10200 11.77200 14.14200 N core -11.62800 10.45700 13.79400 C core -11.84900 9.96000 12.52400 N core -12.32000 8.74600 12.53000 C core -12.42800 8.42500 13.87500 C core -12.88600 7.23100 14.49500 O core -13.34600 6.22800 13.96300 N core -12.79100 7.30500 15.87700 C core -12.34800 8.40700 16.57500 N core -12.36100 8.31700 17.91200 N core -11.92500 9.52900 16.00200 C core -11.99300 9.46500 14.66400 P core -6.32000 11.25200 14.17100 O core -5.10700 12.11100 14.30500 O core -6.31100 10.12100 13.21200 O core -6.64100 10.63600 15.59400 C core -6.50400 11.40000 16.78400 C core -6.90100 10.56700 17.97600 O core -8.30700 10.19300 17.87800 C core -6.20300 9.23000 18.09000 O core -4.87200 9.35300 18.58100 C core -7.14700 8.50300 19.03700 O core -7.11500 9.03800 20.36000 C core -8.49100 8.88900 18.41800 N core -8.88500 7.99300 17.33000 C core -8.79300 8.22100 15.97200 N core -9.25200 7.23400 15.25300 C core -9.67800 6.29500 16.19100 C core -10.26100 5.02400 16.01500 O core -10.55000 4.45800 14.95800 N core -10.49900 4.39100 17.23900 C core -10.19800 4.91500 18.47800 N core -10.44100 4.12600 19.55900 N core -9.67700 6.11000 18.65500 C core -9.43900 6.74200 17.47800 P core -3.74500 8.33500 18.05400 O core -2.50400 8.83200 18.71000 O core -3.81100 8.23200 16.57200 O core -4.17800 6.94200 18.67100 C core -4.28800 6.80000 20.07100 C core -4.95300 5.50700 20.40500 O core -6.21300 5.43400 19.70200 C core -4.23100 4.25100 19.94900 O core -3.23100 3.93700 20.91100 C core -5.36800 3.23800 19.96700 O core -5.76500 2.83600 21.25800 C core -6.51900 4.08300 19.43100 N core -6.75600 3.92800 17.99000 C core -7.46900 2.80500 17.58800 O core -7.86100 1.96000 18.36700 N core -7.71200 2.72100 16.24200 C core -7.32500 3.61600 15.28700 O core -7.59400 3.39600 14.10200 C core -6.58400 4.75000 15.78300 C core -6.32500 4.85300 17.08300 P core -2.02900 2.95400 20.53600 O core -1.23700 2.80800 21.81200 O core -1.34800 3.36800 19.30700 O core -2.75700 1.56500 20.28400 C core -3.30400 0.84100 21.38000 C core -3.94100 -0.44300 20.89600 O core -5.03500 -0.12100 20.00700 C core -3.06900 -1.34100 20.04900 O core -2.17000 -2.08000 20.86500 C core -4.10700 -2.22100 19.36400 O core -4.61300 -3.24100 20.21600 C core -5.21400 -1.19600 19.08900 N core -5.18000 -0.63900 17.73300 C core -4.65900 0.55900 17.28300 N core -4.87500 0.77700 15.99400 C core -5.55600 -0.36000 15.57800 C core -6.08700 -0.74800 14.33800 N core -6.04100 -0.00300 13.24300 N core -6.70000 -1.95300 14.26700 C core -6.78000 -2.69700 15.37400 N core -6.33800 -2.43200 16.59300 C core -5.73300 -1.24300 16.63000 P core -0.70100 -2.39500 20.32600 O core 0.01100 -3.07800 21.45300 O core -0.07900 -1.21400 19.65500 O core -0.90700 -3.45700 19.14800 C core -1.41300 -4.77300 19.41000 C core -1.79500 -5.44800 18.11000 O core -2.88400 -4.70500 17.50800 C core -0.73300 -5.46400 17.03100 O core 0.11400 -6.59600 17.20200 C core -1.57800 -5.66700 15.77200 O core -1.97500 -7.01000 15.59500 C core -2.84500 -4.86900 16.10300 N core -2.84200 -3.55600 15.43600 C core -3.41200 -3.49700 14.17600 O core -3.92300 -4.46900 13.63100 N core -3.34500 -2.27000 13.55500 C core -2.76200 -1.10900 14.03800 O core -2.74800 -0.10000 13.31300 C core -2.19300 -1.22900 15.36700 C core -2.25900 -2.42400 16.01100 P core 1.65300 -6.40800 17.56500 O core 2.21300 -7.77700 17.84700 O core 1.73100 -5.37300 18.61100 O core 2.39700 -5.65600 16.35700 C core 2.46200 -6.10900 15.00600 C core 3.65900 -5.44400 14.30100 O core 3.66500 -3.99400 14.35900 C core 5.05000 -5.88200 14.77700 O core 5.67300 -6.34800 13.58400 C core 5.81500 -4.58700 15.05400 O core 7.17700 -4.57500 14.69400 C core 5.00600 -3.58700 14.22500 N core 5.17000 -2.16800 14.54800 C core 5.58200 -1.31500 13.51900 O core 5.72600 -1.68200 12.34200 N core 5.80100 -0.01600 13.91200 C core 5.63400 0.49600 15.19500 O core 5.91500 1.67400 15.42100 C core 5.17100 -0.43800 16.16100 C core 4.95500 -1.70000 15.81800 P core 6.12300 -7.86000 13.41500 O core 7.21100 -8.08000 14.39500 O core 6.40200 -7.99100 11.96400 O core 4.83600 -8.65600 13.89500 C core 3.79000 -9.08800 13.00000 C core 3.11800 -10.29700 13.60600 O core 4.17600 -11.21100 13.90000 C core 2.35800 -10.01100 14.90400 O core 1.07600 -10.60100 14.74300 C core 3.47800 -10.46700 15.79600 O core 2.76000 -10.30500 17.01700 C core 4.01800 -11.71800 15.19200 N core 5.32900 -11.91100 15.82000 C core 5.42600 -12.95100 16.72100 O core 4.45600 -13.62200 17.06200 N core 6.68700 -13.17900 17.20700 C core 7.83200 -12.47200 16.89900 O core 8.92000 -12.89500 17.29100 C core 7.63400 -11.37100 15.99800 C core 6.41800 -11.13400 15.50400 P core -0.20500 -9.77500 14.27400 O core -0.02300 -8.30800 14.47500 O core -1.34300 -10.45400 14.88000 O core -0.25900 -10.04700 12.72400 C core -0.62700 -11.31700 12.22900 C core -1.05900 -11.18000 10.79900 O core -2.28900 -10.39800 10.76800 C core -0.10200 -10.38800 9.91500 O core 0.99800 -11.18200 9.43600 C core -1.04000 -9.93800 8.80600 O core -1.37400 -11.00900 7.92900 C core -2.28800 -9.56300 9.61200 N core -2.24800 -8.14200 10.02600 C core -2.46500 -7.16200 9.04400 O core -2.77100 -7.52700 7.89200 N core -2.31800 -5.85900 9.36300 C core -1.96900 -5.50800 10.59800 N core -1.77300 -4.21100 10.84700 C core -1.79200 -6.47800 11.63800 C core -1.95000 -7.77400 11.31000 P core 2.39400 -10.46900 9.06800 O core 3.41700 -11.52200 8.90700 O core 2.64900 -9.34100 10.01000 O core 2.18500 -9.77200 7.63400 C core 1.87700 -10.52800 6.48200 C core 1.46100 -9.60600 5.34900 O core 0.31400 -8.82400 5.78000 C core 2.44100 -8.51900 4.92400 O core 3.49400 -9.00200 4.09200 C core 1.51200 -7.60400 4.14400 O core 1.14300 -8.19200 2.91000 C core 0.29400 -7.58000 5.06600 N core 0.40400 -6.45000 5.99400 C core 0.67600 -6.46300 7.33900 N core 0.81400 -5.26200 7.84900 C core 0.58900 -4.39800 6.76900 C core 0.63100 -2.97100 6.69500 O core 0.90800 -2.16000 7.59300 N core 0.34200 -2.50700 5.39600 C core 0.09000 -3.32900 4.30900 N core -0.12600 -2.72400 3.10600 N core 0.05600 -4.66000 4.38300 C core 0.31100 -5.11300 5.62700 P core 4.90000 -8.22800 4.04200 O core 5.78000 -8.97900 3.11300 O core 5.38200 -7.92300 5.40200 O core 4.54300 -6.82100 3.38200 C core 4.05300 -6.73200 2.05800 C core 3.95000 -5.28000 1.63900 O core 2.96200 -4.59600 2.45400 C core 5.19700 -4.43300 1.81500 O core 6.09100 -4.62800 0.72100 C core 4.60300 -3.03000 1.78600 O core 4.18900 -2.61600 0.49900 C core 3.32600 -3.23400 2.58300 N core 3.53000 -2.91200 3.98600 C core 3.62700 -3.76800 5.05200 N core 3.77400 -3.14900 6.19600 C core 3.78900 -1.79900 5.85300 C core 3.89400 -0.65900 6.67300 O core 3.96300 -0.62200 7.91200 N core 3.88000 0.53200 5.92200 C core 3.74800 0.59200 4.54200 N core 3.75700 1.82900 3.97600 N core 3.62000 -0.48200 3.77200 C core 3.65400 -1.63500 4.49500 P core 7.66300 -4.74700 0.99200 O core 8.25700 -5.18400 -0.31800 O core 7.87500 -5.57700 2.23700 O core 8.15200 -3.24900 1.24000 C core 8.07000 -2.30900 0.17100 C core 8.10600 -0.91100 0.69400 O core 6.95700 -0.69200 1.54800 C core 9.26800 -0.56400 1.58600 O core 10.44100 -0.38000 0.80900 C core 8.73100 0.68500 2.26800 O core 8.70400 1.79400 1.37600 C core 7.29100 0.25300 2.55200 N core 7.16900 -0.40800 3.85800 C core 7.12600 0.40200 4.97300 O core 7.17800 1.61000 4.90100 N core 7.04600 -0.26300 6.17900 C core 7.03900 -1.62900 6.36100 O core 6.92000 -2.07900 7.48700 C core 7.09900 -2.39700 5.15800 C core 7.14100 -1.77100 3.97100 P core 11.87900 -0.79600 1.42100 O core 12.87300 -0.74400 0.32800 O core 11.73600 -2.06100 2.22100 O core 12.18900 0.40700 2.40900 C core 12.17900 1.74900 1.95100 C core 12.17700 2.70700 3.12800 O core 10.93800 2.54800 3.85700 C core 13.24400 2.48400 4.18700 O core 14.48000 3.04500 3.78000 C core 12.62800 3.18700 5.39200 O core 12.70300 4.60100 5.32800 C core 11.16000 2.78100 5.24600 N core 10.81000 1.55800 5.97400 C core 10.62700 0.28700 5.48300 N core 10.30100 -0.59300 6.40000 C core 10.26900 0.14900 7.57000 C core 9.97900 -0.20000 8.88500 N core 9.60400 -1.42900 9.25600 N core 10.06400 0.76500 9.82100 C core 10.40000 2.01000 9.44100 N core 10.67700 2.46600 8.22200 C core 10.59000 1.47200 7.32300 P core 15.86200 2.50700 4.41100 O core 16.97500 3.17000 3.66300 O core 15.86500 1.03400 4.55900 O core 15.82300 3.06700 5.89900 C core 16.02300 4.42900 6.16800 C core 15.92800 4.68300 7.65400 O core 14.60100 4.35400 8.12200 C core 16.83300 3.84100 8.54300 O core 18.17700 4.31800 8.55200 C core 16.16200 4.02400 9.88300 C core 14.68600 3.93100 9.49500 N core 14.19500 2.53800 9.58600 C core 13.76800 2.03900 10.84500 O core 13.79800 2.78800 11.83500 N core 13.33900 0.74800 10.93500 C core 13.34000 -0.02600 9.84700 N core 12.94400 -1.29900 9.96500 C core 13.75400 0.46600 8.58200 C core 14.16400 1.73500 8.49000 P core 19.38200 3.28500 8.79200 O core 20.63800 4.07800 8.72100 O core 19.23400 2.07900 7.94800 O core 19.16000 2.84400 10.30300 C core 19.28700 3.79900 11.35600 C core 19.02200 3.14600 12.69300 O core 17.63400 2.74000 12.77200 C core 19.76600 1.86100 13.00900 O core 21.14000 2.07100 13.31200 C core 18.91700 1.31000 14.14700 O core 19.10000 2.05400 15.33200 C core 17.50900 1.61300 13.63500 N core 16.94200 0.48200 12.87100 C core 16.36700 -0.59900 13.57700 O core 16.31500 -0.55200 14.81300 N core 15.90400 -1.66600 12.88100 C core 16.02900 -1.69300 11.54100 N core 15.64700 -2.78600 10.90100 C core 16.57700 -0.59500 10.80700 C core 17.00400 0.46300 11.50500 Br core 13.74200 -0.64700 7.07700 O core 10.62100 -9.33000 16.75800 C core 10.88600 -9.56500 18.15000 C core 11.76000 -8.53200 18.82500 O core 13.11400 -8.61000 18.31200 C core 11.35800 -7.07800 18.66000 O core 10.38500 -6.71400 19.62700 C core 12.68200 -6.35900 18.89100 O core 13.04800 -6.29800 20.25900 C core 13.65000 -7.29400 18.17600 N core 13.72100 -6.97500 16.75100 C core 13.30600 -7.76800 15.70800 N core 13.48300 -7.21300 14.53900 C core 14.06000 -5.97800 14.82700 C core 14.49000 -4.93500 13.95300 O core 14.44700 -4.89200 12.73100 N core 15.02100 -3.86000 14.66000 C core 15.12400 -3.79200 16.03100 N core 15.67700 -2.66300 16.51500 N core 14.72300 -4.75000 16.85100 C core 14.21000 -5.81100 16.18500 P core 9.34500 -5.53200 19.30900 O core 8.32400 -5.53400 20.37400 O core 8.91600 -5.69200 17.88000 O core 10.22400 -4.20800 19.35400 C core 10.68200 -3.64100 20.56600 C core 11.32200 -2.30900 20.27400 O core 12.48200 -2.52800 19.41800 C core 10.46300 -1.35700 19.44900 O core 9.48200 -0.67200 20.21800 C core 11.51900 -0.44100 18.85900 O core 12.00700 0.46000 19.83400 C core 12.59600 -1.45700 18.49200 N core 12.36300 -1.95800 17.14600 C core 11.81000 -3.15800 16.75400 N core 11.68900 -3.26300 15.45500 C core 12.19300 -2.05600 14.96900 C core 12.31500 -1.57800 13.63100 O core 12.02100 -2.15100 12.58400 N core 12.85900 -0.30500 13.59100 C core 13.26300 0.42000 14.69100 N core 13.77100 1.64200 14.45300 N core 13.17600 -0.02600 15.94200 C core 12.62700 -1.25700 15.99900 P core 8.06500 -0.28000 19.53400 O core 7.22600 0.31400 20.59300 O core 7.54000 -1.42700 18.75600 O core 8.49000 0.83100 18.47400 C core 9.06800 2.04600 18.91100 C core 9.58700 2.84000 17.73600 O core 10.44300 2.01000 16.91600 C core 8.59600 3.44000 16.74900 O core 8.09100 4.64000 17.32300 C core 9.49700 3.70200 15.54700 O core 10.40700 4.77000 15.76500 C core 10.38200 2.45600 15.56900 N core 9.91700 1.35500 14.71800 C core 10.07300 1.53300 13.35300 O core 10.55400 2.53900 12.88300 N core 9.66100 0.47400 12.58000 C core 9.15700 -0.72900 13.03600 O core 8.91100 -1.62000 12.23100 C core 9.03200 -0.83200 14.46700 C core 9.38600 0.19900 15.23100 P core 6.64000 5.19100 16.90900 O core 6.53100 6.44200 17.70900 O core 5.55500 4.20100 16.98600 O core 6.80200 5.54900 15.37100 C core 7.54100 6.68300 14.96100 C core 7.51900 6.78300 13.46300 O core 8.25000 5.67900 12.88200 C core 6.15700 6.65700 12.80700 O core 5.43000 7.88100 12.92400 C core 6.56500 6.37500 11.36900 O core 7.06800 7.54300 10.73000 C core 7.73100 5.41300 11.58900 N core 7.31600 4.01400 11.53100 C core 6.94900 3.13900 12.52900 N core 6.68700 1.92700 12.09000 C core 6.88000 2.02400 10.72100 C core 6.77900 1.08100 9.68600 N core 6.42700 -0.18500 9.89200 N core 7.05900 1.49900 8.42500 C core 7.41000 2.78300 8.24100 N core 7.52800 3.75800 9.13300 C core 7.25200 3.30400 10.36500 P core 3.85000 7.84800 13.08600 O core 3.36400 9.24100 13.32600 O core 3.40700 6.76800 14.00900 O core 3.34700 7.41500 11.63800 C core 3.50200 8.27600 10.52100 C core 3.23200 7.50600 9.25600 O core 4.17200 6.40600 9.20800 C core 1.87700 6.83100 9.15200 O core 0.90300 7.75100 8.65900 C core 2.15800 5.72600 8.12700 O core 2.23600 6.18400 6.79100 C core 3.58700 5.31500 8.50500 N core 3.65300 4.08900 9.32100 C core 3.70000 2.90100 8.62900 O core 3.73700 2.86700 7.41500 N core 3.70400 1.76200 9.41100 C core 3.65700 1.70900 10.79900 O core 3.60800 0.61200 11.37200 C core 3.63700 2.99200 11.44400 C core 3.64200 4.11000 10.69900 P core -0.35100 8.15700 9.56300 O core -1.26800 9.01200 8.75000 O core 0.19300 8.72100 10.86300 O core -1.10200 6.79800 9.94100 C core -1.74500 5.95400 8.97100 C core -3.03600 5.43400 9.55900 O core -2.77300 4.78300 10.81500 C core -4.03800 6.54800 9.86200 O core -5.20900 6.22200 9.10500 C core -4.37900 6.39200 11.34900 O core -5.71400 6.57900 11.76700 C core -3.88800 4.96900 11.62400 N core -3.57800 4.56300 12.99400 C core -4.15900 3.38800 13.45000 O core -4.82900 2.64600 12.74500 N core -3.91000 3.09300 14.76000 C core -3.14700 3.82300 15.64500 O core -3.18700 3.53100 16.85100 C core -2.53300 4.98700 15.08100 C core -2.76500 5.31100 13.80700 P core -5.90200 7.31200 8.17200 O core -6.01200 8.56900 8.96200 O core -7.12100 6.67800 7.62200 O core -4.79100 7.61000 7.08000 C core -4.40200 6.66000 6.06400 C core -3.76800 7.43600 4.93900 O core -4.75700 8.37700 4.49200 C core -2.55800 8.21600 5.44500 O core -1.52300 8.12000 4.48600 C core -3.01400 9.68200 5.46300 O core -1.99600 10.58900 5.12800 C core -4.26600 9.68600 4.58900 N core -5.32100 10.54600 5.14300 C core -5.90600 11.47500 4.29100 O core -5.58700 11.59700 3.10900 N core -6.88000 12.25600 4.87300 C core -7.31400 12.20700 6.19800 O core -8.17200 13.00800 6.59200 C core -6.65800 11.21700 7.00700 C core -5.71100 10.44100 6.46600 P core -0.43700 6.94300 4.50300 O core -0.33300 6.34700 5.88000 O core 0.75000 7.45600 3.82000 O core -1.12200 5.81400 3.60100 C core -1.09600 5.89900 2.17700 C core -1.19100 4.51800 1.56900 O core 0.07200 3.81900 1.76800 C core -2.21200 3.60000 2.20600 O core -3.52700 3.85400 1.74500 C core -1.69100 2.23300 1.79900 O core -1.94800 1.93400 0.42100 C core -0.18300 2.44300 1.98800 N core 0.19900 2.06200 3.37200 C core 0.25400 0.69600 3.66500 O core 0.06800 -0.12200 2.73900 N core 0.50500 0.29700 4.93800 C core 0.71200 1.20800 5.89700 N core 0.91000 0.76100 7.17000 C core 0.71600 2.61200 5.61900 C core 0.45800 2.99400 4.34500 P core -4.77700 3.64600 2.72000 O core -5.95400 4.31200 2.09600 O core -4.37800 4.04600 4.11200 O core -5.03300 2.07800 2.73000 C core -5.25400 1.37800 1.51700 C core -5.12000 -0.10500 1.74600 O core -3.76000 -0.39800 2.15500 C core -5.93400 -0.74800 2.86000 O core -7.30100 -0.92200 2.50300 C core -5.20700 -2.07900 2.98200 O core -5.46100 -2.94300 1.89400 C core -3.75400 -1.61300 2.90800 N core -3.28400 -1.38000 4.27200 C core -3.03300 -0.21500 4.94700 N core -2.71100 -0.40700 6.20600 C core -2.72600 -1.78500 6.35200 C core -2.48800 -2.58400 7.47400 O core -2.20100 -2.23300 8.60800 N core -2.62700 -3.93900 7.17500 C core -2.94700 -4.45500 5.94800 N core -2.99200 -5.80300 5.83800 N core -3.19100 -3.71000 4.89500 C core -3.06000 -2.39900 5.16700 P core -8.45300 -0.99200 3.64000 O core -9.74800 -1.02900 2.88700 O core -8.24700 0.06400 4.71000 O core -8.19700 -2.38700 4.34000 C core -8.27300 -3.59300 3.59900 C core -7.97900 -4.76800 4.48900 O core -6.63700 -4.66100 5.01400 C core -8.82600 -4.86900 5.73800 O core -10.09900 -5.39800 5.41800 C core -7.99200 -5.82100 6.58000 O core -8.07400 -7.14500 6.07600 C core -6.58400 -5.28700 6.29900 N core -6.14900 -4.29400 7.27400 C core -5.97600 -2.94300 7.08200 N core -5.55100 -2.31900 8.15500 C core -5.43600 -3.31700 9.10300 C core -5.00600 -3.24500 10.43300 O core -4.59400 -2.26000 11.04600 N core -5.05600 -4.49100 11.05500 C core -5.43800 -5.66100 10.43900 N core -5.39000 -6.78200 11.19900 N core -5.82800 -5.74100 9.18200 C core -5.80400 -4.54300 8.57900 P core -11.38800 -4.88700 6.20700 O core -12.53300 -5.65000 5.64500 O core -11.46500 -3.40700 6.30100 O core -11.18300 -5.45700 7.67700 C core -11.08500 -6.84700 7.89900 C core -10.65100 -7.11200 9.32000 O core -9.29100 -6.63100 9.52200 C core -11.44700 -6.37700 10.38900 O core -12.64300 -7.07500 10.67700 C core -10.48700 -6.45000 11.55900 O core -10.45800 -7.75500 12.11200 C core -9.15700 -6.17200 10.85400 N core -8.81600 -4.74100 10.84000 C core -8.22500 -4.24300 11.98100 O core -8.01300 -4.95000 12.95400 N core -7.90200 -2.89600 11.94600 C core -8.11800 -2.02500 10.89800 O core -7.66800 -0.86500 10.96700 C core -8.76500 -2.61800 9.74700 C core -9.07400 -3.92000 9.75400 P core -13.95800 -6.26500 11.13000 O core -15.02100 -7.27300 11.12800 O core -14.13000 -5.04200 10.31000 O core -13.61000 -5.70600 12.58200 C core -13.51500 -6.56100 13.69900 C core -12.84900 -5.85200 14.85900 O core -11.55200 -5.34800 14.44200 C core -13.51400 -4.61200 15.44500 O core -14.59900 -4.97500 16.29100 C core -12.35100 -4.04000 16.24400 O core -12.07700 -4.83700 17.37000 C core -11.19400 -4.25100 15.26900 N core -10.93200 -3.07000 14.45000 C core -11.23300 -2.80200 13.14200 N core -10.82000 -1.62100 12.73600 C core -10.20100 -1.07700 13.86100 C core -9.53100 0.15600 14.09400 N core -9.34900 1.10600 13.17600 N core -9.04400 0.37400 15.33600 C core -9.20700 -0.56500 16.26100 N core -9.80000 -1.76000 16.16100 C core -10.27700 -1.94900 14.92100 P core -15.73700 -3.90400 16.66900 O core -16.78900 -4.70200 17.34900 O core -16.12000 -2.98500 15.59300 O core -15.07000 -3.02000 17.82000 C core -14.63200 -3.62200 19.04200 C core -13.89400 -2.61100 19.89200 O core -12.69100 -2.20900 19.20700 C core -14.63600 -1.30300 20.13700 O core -15.56000 -1.42700 21.22000 C core -13.50000 -0.35700 20.47400 C core -12.39600 -0.82800 19.51600 N core -12.35900 -0.05300 18.24900 C core -11.69900 1.17900 18.22800 O core -11.18300 1.57600 19.25100 N core -11.64400 1.90200 17.08500 C core -12.21900 1.41800 15.98800 N core -12.11300 2.11900 14.86100 C core -12.91700 0.18100 15.99700 C core -12.96100 -0.51700 17.12100 P core -16.93900 -0.62200 21.17200 O core -17.71000 -1.01700 22.38600 O core -17.58700 -0.71100 19.82700 O core -16.49500 0.90100 21.35000 C core -15.97200 1.37400 22.58800 C core -15.45600 2.78300 22.42300 O core -14.41700 2.79400 21.42200 C core -16.44600 3.80000 21.87800 O core -17.35700 4.26600 22.89300 C core -15.50200 4.89700 21.40300 O core -15.00700 5.60300 22.51300 C core -14.34700 4.08000 20.82100 N core -14.41000 3.94600 19.34900 C core -13.87200 4.98400 18.56400 O core -13.32700 5.97900 19.13400 N core -13.96000 4.90600 17.21700 C core -14.57600 3.86700 16.65200 N core -14.68900 3.86900 15.32500 C core -15.11800 2.78700 17.42100 C core -15.00400 2.86300 18.75900 Br core -13.77300 -0.44300 14.44100 MG core 9.87100 -5.70600 11.48100 N core -7.05400 1.06000 9.21500 C core -5.66100 1.69000 9.18900 C core -4.80100 0.78500 9.99400 C core -3.34300 1.20700 10.07600 N core -2.47900 -0.00200 10.14000 C core -1.00300 0.42900 10.21400 C core -0.27600 -0.93800 10.63200 C core 1.00600 -0.84300 10.37500 C core 1.39800 -2.38000 10.78200 N core 2.86200 -2.38700 10.22700 C core 3.61500 -3.75900 10.45000 C core 5.11200 -3.55600 9.82900 C core 5.48700 -4.93000 9.35500 N core 6.41000 -4.70800 8.18000 O core -6.88300 -6.71400 14.69400 O core 8.26800 -3.22600 16.76100 O core 3.63700 4.54400 4.70800 O core 2.54700 5.77900 2.56800 O core 0.48700 2.90900 9.16100 O core -11.67900 10.81700 19.38800 O core -12.23900 7.30500 10.37100 O core 3.33100 3.28400 1.48800 O core 12.71100 -8.48500 12.52400 O core 7.93400 4.04200 2.21700 O core -10.69700 12.89200 18.03200 O core -0.18400 -3.72000 13.25600 O core -11.68600 -2.75200 1.74700 O core -4.44900 -7.35900 13.89300 O core 14.47600 5.02800 12.83800 O core -10.30400 7.32300 21.09000 O core -13.03500 2.11900 12.02800 O core 2.33300 0.44200 13.86800 O core -13.26600 7.98100 21.25600 O core 1.54500 -2.07100 14.75300 O core -5.69800 4.57300 -0.75500 O core -3.92600 -10.16300 13.84500 O core -16.78800 -0.10200 16.78900 O core 3.88200 4.16100 14.64900 O core -7.92400 7.40600 22.56100 O core -8.06900 15.05800 15.64100 O core -9.92800 1.58900 1.47700 O core -8.88300 7.72900 12.59200 O core -6.48200 -4.36100 18.49800 O core -1.32600 -3.65400 0.54000 O core -6.24600 0.30500 6.59400 O core -14.87300 -6.53000 6.74800 O core -16.28000 1.87700 14.04600 O core 8.47800 -7.91500 16.55000 O core -9.71000 7.09000 10.27300 O core -6.76800 4.34800 23.47900 O core 11.46800 5.12700 7.68000 O core 10.43100 -3.18200 6.31600 O core -10.52200 5.11700 12.41000 O core -7.53500 4.70400 11.71000 O core 16.29100 -2.99300 8.24200 O core 1.67500 3.44300 18.74900 O core -5.51300 7.75900 14.32800 O core 6.53500 4.20800 4.88100 O core 12.51900 -3.84400 8.48200 O core -8.60200 0.13600 20.13300 O core 15.79500 -2.64100 19.32800 O core -7.27800 9.82300 10.81400 O core 14.82300 -4.56000 20.96100 O core 19.95900 3.90400 4.46200 O core -0.79000 1.75800 13.88700 O core -8.23100 11.77900 21.50700 O core 15.16100 -6.58100 10.89100 O core 4.72600 2.25300 18.52100 O core 15.16400 0.92400 17.88500 O core -10.50700 10.70400 21.76600 O core 10.52900 6.48300 17.99900 O core 2.97400 -0.27500 0.70000 O core -17.16400 -7.84100 9.66000 O core 2.50900 1.81300 16.84000 O core -9.73700 -0.98300 6.93100 O core -8.83400 3.76700 2.89700 O core 4.90400 6.97800 1.64300 O core 8.18600 -4.12500 12.35400 O core 8.26600 -6.38900 10.72600 O core 11.44700 -6.93600 10.98900 O core 11.27700 -4.55500 12.17300 O core 9.96700 -6.92600 13.29900 gdis-0.90/models/zircon.gin0000644000175000017500000000226610074723762014332 0ustar seansean# # Keywords: # opti conp comp diff molmec prop phon # # Options: # cell 6.624118 6.624118 5.969752 90.000000 90.000000 90.000000 fractional Zr core 0.0000000 0.7500000 0.1250000 4.00000000 1.00000 0.00000 Si core 0.0000000 0.2500000 0.3750000 1.15731200 1.00000 0.00000 O core 0.0000000 0.0559361 0.2224612 0.84367200 1.00000 0.00000 O shel 0.0000000 0.0492908 0.2113332 -2.1330000 1.00000 0.00000 space 141 origin 2 totalenergy -526.5920213399 eV species 4 Zr core 4.000000 Si core 1.157312 O core 0.843672 O shel -2.133000 buck inter Zr core O shel 1014.70900 0.352800 0.0000000 0.000 10.000 buck inter O shel O shel 110755.522 0.200000 33.09514 0.000 15.000 spring O 50.000000 0.80000000 morse bond Si core O shel 5.0000000 1.3272 1.76733 0.0000 three bond intra Si core O shel O shel 29.021 109.47 dump zircon.res element cova Zr 0.5 end gdis-0.90/models/napth_full.gin0000644000175000017500000000724707717054777015203 0ustar seansean# # Keywords: # single conp mole comp full nosym # # Options: # cell 8.018030 5.912759 8.554727 90.000000 124.086466 90.000000 fractional 36 C core 0.0830040 0.0170134 0.3291053 0.00000000 1.00000 0.00000 C core 0.4169960 0.5170135 0.1708946 0.00000000 1.00000 0.00000 C core 0.9169959 0.9829864 0.6708946 0.00000000 1.00000 0.00000 C core 0.5830040 0.4829865 0.8291054 0.00000000 1.00000 0.00000 C core 0.1123820 0.1636948 0.2196271 0.00000000 1.00000 0.00000 C core 0.3876180 0.6636948 0.2803729 0.00000000 1.00000 0.00000 C core 0.8876179 0.8363051 0.7803728 0.00000000 1.00000 0.00000 C core 0.6123820 0.3363052 0.7196271 0.00000000 1.00000 0.00000 H core 0.1635749 0.3922634 0.9764057 0.00000000 1.00000 0.00000 H core 0.3364250 0.8922634 0.5235943 0.00000000 1.00000 0.00000 H core 0.8364250 0.6077365 0.0235942 0.00000000 1.00000 0.00000 H core 0.6635750 0.1077366 0.4764057 0.00000000 1.00000 0.00000 C core 0.0472532 0.1034586 0.0367162 0.00000000 1.00000 0.00000 C core 0.4527467 0.6034587 0.4632838 0.00000000 1.00000 0.00000 C core 0.9527467 0.8965412 0.9632837 0.00000000 1.00000 0.00000 C core 0.5472533 0.3965413 0.5367162 0.00000000 1.00000 0.00000 H core 0.1954095 0.3086447 0.2683111 0.00000000 1.00000 0.00000 H core 0.3045905 0.8086447 0.2316888 0.00000000 1.00000 0.00000 H core 0.8045904 0.6913552 0.7316888 0.00000000 1.00000 0.00000 H core 0.6954095 0.1913553 0.7683112 0.00000000 1.00000 0.00000 C core 0.0766313 0.2501400 0.9272378 0.00000000 1.00000 0.00000 C core 0.4233687 0.7501400 0.5727622 0.00000000 1.00000 0.00000 C core 0.9233686 0.7498599 0.0727621 0.00000000 1.00000 0.00000 C core 0.5766313 0.2498600 0.4272378 0.00000000 1.00000 0.00000 H core 0.1185448 0.0749160 0.4566487 0.00000000 1.00000 0.00000 H core 0.3814552 0.5749161 0.0433512 0.00000000 1.00000 0.00000 H core 0.8814551 0.9250839 0.5433512 0.00000000 1.00000 0.00000 H core 0.6185448 0.4250839 0.9566488 0.00000000 1.00000 0.00000 C core 0.9884970 0.8100959 0.2556729 0.00000000 1.00000 0.00000 C core 0.5115029 0.3100960 0.2443270 0.00000000 1.00000 0.00000 C core 0.0115028 0.1899040 0.7443270 0.00000000 1.00000 0.00000 C core 0.4884971 0.6899040 0.7556730 0.00000000 1.00000 0.00000 H core 0.9638986 0.7010979 0.3331742 0.00000000 1.00000 0.00000 H core 0.5361014 0.2010980 0.1668257 0.00000000 1.00000 0.00000 H core 0.0361013 0.2989019 0.6668257 0.00000000 1.00000 0.00000 H core 0.4638986 0.7989020 0.8331743 0.00000000 1.00000 0.00000 species 2 C core 0.000000 H core 0.000000 lenn epsilon 12 6 inter C core C core 0.169161 0.00000 0.000 0.095 lenn epsilon 12 6 inter H core C core 0.138642 0.00000 0.000 0.015 harmonic intra bond C core C core 45.5631 1.39000 0.00000 harmonic intra bond H core C core 30.3754 1.02000 0.00000 three bond intra C core C core C core 4.3393 120.00 torsion bond intra C cor C cor C cor C cor .54242 -2 0.0000 dump napth_full.gin gdis-0.90/models/gibbsite_BFDH.gmf0000644000175000017500000000122007717054774015374 0ustar seansean title: GDIS morphology file name: gibbsite_morph space: P 1 21/n 1 cell: 8.809466 4.993449 9.787438 90.000003 95.950866 90.000003 miller: -1 0 1 0.0000 1 1 0.0000 0.0000 0.0000 0.0000 -1 miller: -1 0 -1 0.0000 1 1 0.0000 0.0000 0.0000 0.0000 -1 miller: 0 0 -2 0.0000 1 1 0.0000 0.0000 0.0000 0.0000 -1 miller: 0 -1 -1 0.0000 1 1 0.0000 0.0000 0.0000 0.0000 -1 miller: -1 -1 0 0.0000 1 1 0.0000 0.0000 0.0000 0.0000 -1 miller: -1 -1 1 0.0000 1 1 0.0000 0.0000 0.0000 0.0000 -1 gdis-0.90/models/deoxygalactose.gin0000644000175000017500000000446110526005001016015 0ustar seanseansingle conp # Created by GDIS version 0.90.0 # name deoxygalactose dump deoxygalactose.res cell 10.434830 7.006676 5.088075 89.999900 87.465800 89.999900 fractional O core 0.062943 0.939271 0.808373 O core 0.425136 0.806562 0.203639 O core 0.448291 0.631753 0.725529 O core 0.164775 0.648623 0.827515 O core 0.143079 0.260619 1.014451 C core 0.127494 0.800619 0.654484 C core 0.245550 0.888161 0.509632 C core 0.317653 0.730411 0.355920 C core 0.355013 0.568345 0.543686 C core 0.229397 0.496027 0.686863 C core 0.256169 0.337657 0.885366 O core 0.937060 0.439270 0.191613 O core 0.574867 0.306550 0.796337 O core 0.551714 0.131750 0.274451 O core 0.835228 0.148622 0.172464 O core 0.856921 -0.239382 -0.014491 C core 0.872510 0.300614 0.345495 C core 0.754452 0.388155 0.490349 C core 0.682351 0.230402 0.644062 C core 0.644995 0.068339 0.456291 C core 0.770608 -0.003979 0.313107 C core 0.743838 -0.162344 0.114607 H core 1.019970 0.381418 0.112712 H core 0.573343 0.244736 0.975235 H core 0.495762 0.017141 0.242940 H core 0.883480 -0.360882 0.075494 H core 0.938704 0.237084 0.491600 H core 0.691467 0.452760 0.342691 H core 0.785446 0.501333 0.628151 H core 0.750546 0.168016 0.783848 H core 0.602326 -0.052730 0.574586 H core 0.834514 -0.062377 0.466521 H core 0.682138 -0.104220 -0.039811 H core 0.687268 -0.276684 0.219188 H core -0.019967 0.881420 0.887264 H core 0.426663 0.744744 0.024747 H core 0.504244 0.517141 0.757039 H core 0.116524 0.139122 0.924471 H core 0.061300 0.737092 0.508378 H core 0.308535 0.952767 0.657289 H core 0.214553 1.001339 0.371830 H core 0.249460 0.668024 0.216130 H core 0.397682 0.447276 0.425385 H core 0.165495 0.437629 0.533447 H core 0.317864 0.395783 1.039789 H core 0.312742 0.223319 0.780788 space P 1 print 1 gdis-0.90/models/dummy.got0000644000175000017500000013236107717054773014206 0ustar seansean******************************************************************************** * GENERAL UTILITY LATTICE PROGRAM * * Julian Gale, Imperial College * * Version 1.4 * ******************************************************************************** * single - perform a single point run * * conv - constant volume calculation * * molecule - molecule option activated, Coulomb subtract within molecule * ******************************************************************************** Job Started at 10:52.48 23rd April 2002 Number of CPUs = 1 Total number of configurations input = 1 ******************************************************************************** * Input for Configuration = 1 : calcite_-10-4_0.0000 * ******************************************************************************** Formula = O144C48Ca48 Number of irreducible atoms/shells = 384 Total number atoms/shells = 384 Dimensionality = 2 : Surface Surface Cartesian vectors (Angstroms) : 4.980183 0.000000 0.000000 4.980183 -24.270662 0.000000 Surface cell parameters (Angstroms/Degrees): a = 4.9802 alpha = 78.4042 b = 24.7763 Initial surface area = 120.872338 Angs**2 Initial surface dipole = 0.000001 e.Angs Temperature of configuration = 0.0000 K Mixed fractional/Cartesian coordinates of surface : -------------------------------------------------------------------------------- No. Atomic x y z Charge Occupancy Label (Frac) (Frac) (Angs) (e) (Frac) -------------------------------------------------------------------------------- Region 1 : -------------------------------------------------------------------------------- 1 O c 0.862607 0.011066 -2.2672 1.018487 1.000000 2 C c 0.957020 0.042980 -3.0337 1.343539 1.000000 3 O c 0.798780 0.074893 -3.8001 1.018487 1.000000 4 O c 0.209674 0.042980 -3.0337 1.018487 1.000000 5 C c 0.790353 0.209646 -3.0337 1.343539 1.000000 6 O c 0.884767 0.241560 -3.8001 1.018487 1.000000 7 O c 0.948594 0.177733 -2.2672 1.018487 1.000000 8 O c 0.537699 0.209646 -3.0337 1.018487 1.000000 9 Ca c 0.914040 0.085960 -6.0673 2.000000 1.000000 10 Ca c 0.207020 0.292980 -3.0337 2.000000 1.000000 11 Ca c 0.373687 0.126313 -3.0337 2.000000 1.000000 12 C c 0.497374 0.002626 -6.0673 1.343539 1.000000 13 O c 0.591787 0.034540 -6.8338 1.018487 1.000000 14 O c 0.244720 0.002626 -6.0673 1.018487 1.000000 15 O c 0.655614 0.970713 -5.3009 1.018487 1.000000 16 O c 0.236294 0.137379 -5.3009 1.018487 1.000000 17 C c 0.330707 0.169293 -6.0673 1.343539 1.000000 18 O c 0.172466 0.201207 -6.8338 1.018487 1.000000 19 O c 0.583361 0.169293 -6.0673 1.018487 1.000000 20 Ca c 0.454394 0.045606 -9.1010 2.000000 1.000000 21 Ca c 0.040354 0.459646 -3.0337 2.000000 1.000000 22 Ca c 0.580707 0.419293 -6.0673 2.000000 1.000000 23 C c 0.623687 0.376313 -3.0337 1.343539 1.000000 24 O c 0.529273 0.344400 -2.2672 1.018487 1.000000 25 O c 0.876341 0.376313 -3.0337 1.018487 1.000000 26 O c 0.465446 0.408227 -3.8001 1.018487 1.000000 27 C c 0.164040 0.335960 -6.0673 1.343539 1.000000 28 O c 0.258454 0.367873 -6.8338 1.018487 1.000000 29 O c 0.322281 0.304046 -5.3009 1.018487 1.000000 30 O c 0.911386 0.335960 -6.0673 1.018487 1.000000 31 O c 0.204366 0.542980 -3.0337 1.018487 1.000000 32 C c 0.457020 0.542980 -3.0337 1.343539 1.000000 33 O c 0.615261 0.511066 -2.2672 1.018487 1.000000 34 O c 0.551434 0.574893 -3.8001 1.018487 1.000000 35 Ca c 0.747374 0.252626 -6.0673 2.000000 1.000000 36 C c 0.871061 0.128940 -9.1010 1.343539 1.000000 37 O c 0.965474 0.160853 -9.8675 1.018487 1.000000 38 O c 0.618407 0.128940 -9.1010 1.018487 1.000000 39 O c 0.029301 0.097026 -8.3345 1.018487 1.000000 40 Ca c 0.287727 0.212273 -9.1010 2.000000 1.000000 41 C c 0.411414 0.088586 -12.1347 1.343539 1.000000 42 O c 0.317001 0.056673 -11.3682 1.018487 1.000000 43 O c 0.253174 0.120500 -12.9011 1.018487 1.000000 44 O c 0.664068 0.088586 -12.1347 1.018487 1.000000 45 O c 0.609981 0.263693 -8.3345 1.018487 1.000000 46 C c 0.704394 0.295606 -9.1010 1.343539 1.000000 47 O c 0.546153 0.327520 -9.8675 1.018487 1.000000 48 O c 0.957048 0.295606 -9.1010 1.018487 1.000000 49 Ca c 0.828081 0.171919 -12.1347 2.000000 1.000000 50 Ca c 0.994747 0.005253 -12.1347 2.000000 1.000000 51 Ca c 0.414040 0.585960 -6.0673 2.000000 1.000000 52 Ca c 0.954394 0.545606 -9.1010 2.000000 1.000000 53 C c 0.997374 0.502626 -6.0673 1.343539 1.000000 54 O c 0.902960 0.470713 -5.3009 1.018487 1.000000 55 O c 0.250028 0.502626 -6.0673 1.018487 1.000000 56 O c 0.839133 0.534540 -6.8338 1.018487 1.000000 57 C c 0.290353 0.709647 -3.0337 1.343539 1.000000 58 O c 0.195940 0.677733 -2.2672 1.018487 1.000000 59 O c 0.132113 0.741560 -3.8001 1.018487 1.000000 60 O c 0.543007 0.709647 -3.0337 1.018487 1.000000 61 C c 0.537727 0.462273 -9.1010 1.343539 1.000000 62 O c 0.632141 0.494186 -9.8675 1.018487 1.000000 63 O c 0.695968 0.430359 -8.3345 1.018487 1.000000 64 O c 0.285073 0.462273 -9.1010 1.018487 1.000000 65 O c 0.578053 0.669293 -6.0673 1.018487 1.000000 66 C c 0.830707 0.669293 -6.0673 1.343539 1.000000 67 O c 0.988948 0.637379 -5.3009 1.018487 1.000000 68 O c 0.925121 0.701207 -6.8338 1.018487 1.000000 69 Ca c 0.707020 0.792980 -3.0337 2.000000 1.000000 70 Ca c 0.873687 0.626313 -3.0337 2.000000 1.000000 71 Ca c 0.661414 0.338586 -12.1347 2.000000 1.000000 72 Ca c 0.121061 0.378939 -9.1010 2.000000 1.000000 73 C c 0.244748 0.255253 -12.1347 1.343539 1.000000 74 O c 0.339161 0.287166 -12.9011 1.018487 1.000000 75 O c 0.992094 0.255253 -12.1347 1.018487 1.000000 76 O c 0.402988 0.223339 -11.3682 1.018487 1.000000 77 O c 0.983667 0.390006 -11.3682 1.018487 1.000000 78 C c 0.078081 0.421919 -12.1347 1.343539 1.000000 79 O c 0.919840 0.453833 -12.9011 1.018487 1.000000 80 O c 0.330735 0.421919 -12.1347 1.018487 1.000000 81 Ca c 0.787727 0.712273 -9.1010 2.000000 1.000000 82 Ca c 0.540354 0.959647 -3.0337 2.000000 1.000000 83 C c 0.664041 0.835960 -6.0673 1.343539 1.000000 84 O c 0.569627 0.804046 -5.3009 1.018487 1.000000 85 O c 0.505800 0.867873 -6.8338 1.018487 1.000000 86 O c 0.916694 0.835960 -6.0673 1.018487 1.000000 87 C c 0.911414 0.588586 -12.1347 1.343539 1.000000 88 O c 0.005828 0.620499 -12.9011 1.018487 1.000000 89 O c 0.069655 0.556672 -11.3682 1.018487 1.000000 90 O c 0.658760 0.588586 -12.1347 1.018487 1.000000 91 C c 0.123687 0.876313 -3.0337 1.343539 1.000000 92 O c 0.218100 0.908227 -3.8001 1.018487 1.000000 93 O c 0.871033 0.876313 -3.0337 1.018487 1.000000 94 O c 0.281927 0.844400 -2.2672 1.018487 1.000000 95 Ca c 0.328081 0.671919 -12.1347 2.000000 1.000000 96 C c 0.371061 0.628940 -9.1010 1.343539 1.000000 97 O c 0.276647 0.597026 -8.3345 1.018487 1.000000 98 O c 0.623715 0.628940 -9.1010 1.018487 1.000000 99 O c 0.212820 0.660853 -9.8675 1.018487 1.000000 100 O c 0.951740 0.795606 -9.1010 1.018487 1.000000 101 C c 0.204394 0.795606 -9.1010 1.343539 1.000000 102 O c 0.362634 0.763693 -8.3345 1.018487 1.000000 103 O c 0.298807 0.827520 -9.8675 1.018487 1.000000 104 Ca c 0.080707 0.919293 -6.0673 2.000000 1.000000 105 Ca c 0.247374 0.752626 -6.0673 2.000000 1.000000 106 Ca c 0.494748 0.505253 -12.1347 2.000000 1.000000 107 Ca c 0.161414 0.838586 -12.1347 2.000000 1.000000 108 C c 0.744748 0.755253 -12.1347 1.343539 1.000000 109 O c 0.650334 0.723339 -11.3682 1.018487 1.000000 110 O c 0.997402 0.755253 -12.1347 1.018487 1.000000 111 O c 0.586507 0.787166 -12.9011 1.018487 1.000000 112 C c 0.037727 0.962273 -9.1010 1.343539 1.000000 113 O c 0.943314 0.930359 -8.3345 1.018487 1.000000 114 O c 0.879487 0.994186 -9.8675 1.018487 1.000000 115 O c 0.290381 0.962273 -9.1010 1.018487 1.000000 116 O c 0.325427 0.921919 -12.1347 1.018487 1.000000 117 C c 0.578081 0.921919 -12.1347 1.343539 1.000000 118 O c 0.736322 0.890006 -11.3682 1.018487 1.000000 119 O c 0.672494 0.953833 -12.9011 1.018487 1.000000 120 Ca c 0.621061 0.878940 -9.1010 2.000000 1.000000 241 O s 0.862389 0.010993 -2.2654 -2.133000 1.000000 242 O s 0.798414 0.074967 -3.8019 -2.133000 1.000000 243 O s 0.210258 0.042980 -3.0337 -2.133000 1.000000 244 O s 0.884985 0.241634 -3.8019 -2.133000 1.000000 245 O s 0.948959 0.177659 -2.2654 -2.133000 1.000000 246 O s 0.537116 0.209646 -3.0337 -2.133000 1.000000 247 O s 0.592005 0.034614 -6.8356 -2.133000 1.000000 248 O s 0.244136 0.002626 -6.0673 -2.133000 1.000000 249 O s 0.655980 0.970639 -5.2991 -2.133000 1.000000 250 O s 0.236076 0.137306 -5.2991 -2.133000 1.000000 251 O s 0.172101 0.201280 -6.8356 -2.133000 1.000000 252 O s 0.583945 0.169293 -6.0673 -2.133000 1.000000 253 O s 0.529055 0.344326 -2.2654 -2.133000 1.000000 254 O s 0.876924 0.376313 -3.0337 -2.133000 1.000000 255 O s 0.465081 0.408300 -3.8019 -2.133000 1.000000 256 O s 0.258672 0.367947 -6.8356 -2.133000 1.000000 257 O s 0.322646 0.303972 -5.2991 -2.133000 1.000000 258 O s 0.910803 0.335960 -6.0673 -2.133000 1.000000 259 O s 0.203783 0.542980 -3.0337 -2.133000 1.000000 260 O s 0.615626 0.510993 -2.2654 -2.133000 1.000000 261 O s 0.551652 0.574967 -3.8019 -2.133000 1.000000 262 O s 0.965692 0.160927 -9.8692 -2.133000 1.000000 263 O s 0.617823 0.128940 -9.1010 -2.133000 1.000000 264 O s 0.029667 0.096952 -8.3328 -2.133000 1.000000 265 O s 0.316783 0.056599 -11.3664 -2.133000 1.000000 266 O s 0.252808 0.120573 -12.9029 -2.133000 1.000000 267 O s 0.664652 0.088586 -12.1347 -2.133000 1.000000 268 O s 0.609762 0.263619 -8.3328 -2.133000 1.000000 269 O s 0.545788 0.327593 -9.8692 -2.133000 1.000000 270 O s 0.957632 0.295606 -9.1010 -2.133000 1.000000 271 O s 0.902742 0.470639 -5.2991 -2.133000 1.000000 272 O s 0.250611 0.502626 -6.0673 -2.133000 1.000000 273 O s 0.838768 0.534614 -6.8356 -2.133000 1.000000 274 O s 0.195722 0.677659 -2.2654 -2.133000 1.000000 275 O s 0.131748 0.741634 -3.8019 -2.133000 1.000000 276 O s 0.543591 0.709647 -3.0337 -2.133000 1.000000 277 O s 0.632359 0.494260 -9.8692 -2.133000 1.000000 278 O s 0.696333 0.430286 -8.3328 -2.133000 1.000000 279 O s 0.284490 0.462273 -9.1010 -2.133000 1.000000 280 O s 0.577470 0.669293 -6.0673 -2.133000 1.000000 281 O s 0.989313 0.637306 -5.2991 -2.133000 1.000000 282 O s 0.925339 0.701280 -6.8356 -2.133000 1.000000 283 O s 0.339379 0.287240 -12.9029 -2.133000 1.000000 284 O s 0.991510 0.255253 -12.1347 -2.133000 1.000000 285 O s 0.403354 0.223265 -11.3664 -2.133000 1.000000 286 O s 0.983449 0.389932 -11.3664 -2.133000 1.000000 287 O s 0.919475 0.453907 -12.9029 -2.133000 1.000000 288 O s 0.331318 0.421919 -12.1347 -2.133000 1.000000 289 O s 0.569409 0.803972 -5.2991 -2.133000 1.000000 290 O s 0.505434 0.867947 -6.8356 -2.133000 1.000000 291 O s 0.917278 0.835960 -6.0673 -2.133000 1.000000 292 O s 0.006046 0.620573 -12.9029 -2.133000 1.000000 293 O s 0.070020 0.556599 -11.3664 -2.133000 1.000000 294 O s 0.658177 0.588586 -12.1347 -2.133000 1.000000 295 O s 0.218318 0.908300 -3.8019 -2.133000 1.000000 296 O s 0.870449 0.876313 -3.0337 -2.133000 1.000000 297 O s 0.282293 0.844326 -2.2654 -2.133000 1.000000 298 O s 0.276429 0.596952 -8.3328 -2.133000 1.000000 299 O s 0.624298 0.628940 -9.1010 -2.133000 1.000000 300 O s 0.212455 0.660927 -9.8692 -2.133000 1.000000 301 O s 0.951156 0.795606 -9.1010 -2.133000 1.000000 302 O s 0.363000 0.763619 -8.3328 -2.133000 1.000000 303 O s 0.299025 0.827593 -9.8692 -2.133000 1.000000 304 O s 0.650116 0.723265 -11.3664 -2.133000 1.000000 305 O s 0.997985 0.755253 -12.1347 -2.133000 1.000000 306 O s 0.586142 0.787240 -12.9029 -2.133000 1.000000 307 O s 0.943096 0.930286 -8.3328 -2.133000 1.000000 308 O s 0.879121 0.994260 -9.8692 -2.133000 1.000000 309 O s 0.290965 0.962273 -9.1010 -2.133000 1.000000 310 O s 0.324843 0.921919 -12.1347 -2.133000 1.000000 311 O s 0.736687 0.889932 -11.3664 -2.133000 1.000000 312 O s 0.672712 0.953906 -12.9029 -2.133000 1.000000 -------------------------------------------------------------------------------- Region 2 : -------------------------------------------------------------------------------- 121 O c 0.699114 0.048232 -15.1683 1.018487 1.000000 122 C c 0.951768 0.048232 -15.1683 1.343539 1.000000 123 O c 0.110008 0.016319 -14.4019 1.018487 1.000000 124 O c 0.046181 0.080146 -15.9348 1.018487 1.000000 125 Ca c 0.908788 0.091212 -18.2020 2.000000 1.000000 126 C c 0.785101 0.214899 -15.1683 1.343539 1.000000 127 O c 0.690687 0.182986 -14.4019 1.018487 1.000000 128 O c 0.626861 0.246813 -15.9348 1.018487 1.000000 129 O c 0.037755 0.214899 -15.1683 1.018487 1.000000 130 Ca c 0.449141 0.050859 -21.2357 2.000000 1.000000 131 C c 0.492121 0.007879 -18.2020 1.343539 1.000000 132 O c 0.397708 0.975965 -17.4355 1.018487 1.000000 133 O c 0.744775 0.007879 -18.2020 1.018487 1.000000 134 O c 0.333881 0.039792 -18.9685 1.018487 1.000000 135 O c 0.072801 0.174546 -18.2020 1.018487 1.000000 136 C c 0.325455 0.174546 -18.2020 1.343539 1.000000 137 O c 0.483695 0.142632 -17.4355 1.018487 1.000000 138 O c 0.419868 0.206459 -18.9685 1.018487 1.000000 139 Ca c 0.201768 0.298232 -15.1683 2.000000 1.000000 140 Ca c 0.368434 0.131566 -15.1683 2.000000 1.000000 141 C c 0.618434 0.381566 -15.1683 1.343539 1.000000 142 O c 0.712848 0.413479 -15.9348 1.018487 1.000000 143 O c 0.365780 0.381566 -15.1683 1.018487 1.000000 144 O c 0.776675 0.349652 -14.4019 1.018487 1.000000 145 Ca c 0.282475 0.217525 -21.2357 2.000000 1.000000 146 Ca c 0.822828 0.177172 -24.2693 2.000000 1.000000 147 Ca c 0.035101 0.464899 -15.1683 2.000000 1.000000 148 C c 0.865808 0.134192 -21.2357 1.343539 1.000000 149 O c 0.771395 0.102279 -20.4692 1.018487 1.000000 150 O c 0.118462 0.134192 -21.2357 1.018487 1.000000 151 O c 0.707568 0.166106 -22.0021 1.018487 1.000000 152 C c 0.158788 0.341212 -18.2020 1.343539 1.000000 153 O c 0.064374 0.309299 -17.4355 1.018487 1.000000 154 O c 0.000547 0.373126 -18.9685 1.018487 1.000000 155 O c 0.411442 0.341212 -18.2020 1.018487 1.000000 156 C c 0.406162 0.093839 -24.2693 1.343539 1.000000 157 O c 0.500575 0.125752 -25.0358 1.018487 1.000000 158 O c 0.564402 0.061925 -23.5029 1.018487 1.000000 159 O c 0.153508 0.093839 -24.2693 1.018487 1.000000 160 O c 0.446487 0.300859 -21.2357 1.018487 1.000000 161 C c 0.699142 0.300859 -21.2357 1.343539 1.000000 162 O c 0.857382 0.268945 -20.4692 1.018487 1.000000 163 O c 0.793555 0.332772 -22.0021 1.018487 1.000000 164 O c 0.357354 0.516319 -14.4019 1.018487 1.000000 165 C c 0.451768 0.548232 -15.1683 1.343539 1.000000 166 O c 0.293527 0.580146 -15.9348 1.018487 1.000000 167 O c 0.704422 0.548232 -15.1683 1.018487 1.000000 168 Ca c 0.575455 0.424546 -18.2020 2.000000 1.000000 169 Ca c 0.742121 0.257879 -18.2020 2.000000 1.000000 170 Ca c 0.989495 0.010505 -24.2693 2.000000 1.000000 171 Ca c 0.701768 0.798232 -15.1683 2.000000 1.000000 172 C c 0.285101 0.714899 -15.1683 1.343539 1.000000 173 O c 0.379515 0.746813 -15.9348 1.018487 1.000000 174 O c 0.443342 0.682986 -14.4019 1.018487 1.000000 175 O c 0.032447 0.714899 -15.1683 1.018487 1.000000 176 Ca c 0.868434 0.631566 -15.1683 2.000000 1.000000 177 C c 0.992121 0.507879 -18.2020 1.343539 1.000000 178 O c 0.086535 0.539793 -18.9685 1.018487 1.000000 179 O c 0.739467 0.507879 -18.2020 1.018487 1.000000 180 O c 0.150362 0.475965 -17.4355 1.018487 1.000000 181 Ca c 0.656162 0.343839 -24.2693 2.000000 1.000000 182 Ca c 0.408788 0.591212 -18.2020 2.000000 1.000000 183 C c 0.532475 0.467526 -21.2357 1.343539 1.000000 184 O c 0.438061 0.435612 -20.4692 1.018487 1.000000 185 O c 0.374234 0.499439 -22.0021 1.018487 1.000000 186 O c 0.785129 0.467526 -21.2357 1.018487 1.000000 187 O c 0.731041 0.642632 -17.4355 1.018487 1.000000 188 C c 0.825455 0.674546 -18.2020 1.343539 1.000000 189 O c 0.667214 0.706459 -18.9685 1.018487 1.000000 190 O c 0.078109 0.674546 -18.2020 1.018487 1.000000 191 Ca c 0.949141 0.550859 -21.2357 2.000000 1.000000 192 C c 0.239495 0.260505 -24.2693 1.343539 1.000000 193 O c 0.145082 0.228592 -23.5029 1.018487 1.000000 194 O c 0.492149 0.260505 -24.2693 1.018487 1.000000 195 O c 0.081255 0.292419 -25.0358 1.018487 1.000000 196 O c 0.820174 0.427172 -24.2693 1.018487 1.000000 197 C c 0.072828 0.427172 -24.2693 1.343539 1.000000 198 O c 0.231069 0.395258 -23.5029 1.018487 1.000000 199 O c 0.167242 0.459086 -25.0358 1.018487 1.000000 200 Ca c 0.115808 0.384192 -21.2357 2.000000 1.000000 201 Ca c 0.535101 0.964899 -15.1683 2.000000 1.000000 202 C c 0.658788 0.841212 -18.2020 1.343539 1.000000 203 O c 0.753201 0.873126 -18.9685 1.018487 1.000000 204 O c 0.817029 0.809299 -17.4355 1.018487 1.000000 205 O c 0.406134 0.841212 -18.2020 1.018487 1.000000 206 Ca c 0.782475 0.717526 -21.2357 2.000000 1.000000 207 C c 0.906162 0.593839 -24.2693 1.343539 1.000000 208 O c 0.811748 0.561925 -23.5029 1.018487 1.000000 209 O c 0.747921 0.625752 -25.0358 1.018487 1.000000 210 O c 0.158816 0.593839 -24.2693 1.018487 1.000000 211 Ca c 0.075455 0.924546 -18.2020 2.000000 1.000000 212 C c 0.118434 0.881566 -15.1683 1.343539 1.000000 213 O c 0.024021 0.849652 -14.4019 1.018487 1.000000 214 O c 0.371088 0.881566 -15.1683 1.018487 1.000000 215 O c 0.960194 0.913479 -15.9348 1.018487 1.000000 216 Ca c 0.242121 0.757879 -18.2020 2.000000 1.000000 217 C c 0.365808 0.634192 -21.2357 1.343539 1.000000 218 O c 0.460222 0.666106 -22.0021 1.018487 1.000000 219 O c 0.113154 0.634192 -21.2357 1.018487 1.000000 220 O c 0.524049 0.602279 -20.4692 1.018487 1.000000 221 O c 0.104728 0.768945 -20.4692 1.018487 1.000000 222 C c 0.199142 0.800859 -21.2357 1.343539 1.000000 223 O c 0.040901 0.832772 -22.0021 1.018487 1.000000 224 O c 0.451796 0.800859 -21.2357 1.018487 1.000000 225 Ca c 0.322828 0.677172 -24.2693 2.000000 1.000000 226 Ca c 0.489495 0.510505 -24.2693 2.000000 1.000000 227 C c 0.032475 0.967525 -21.2357 1.343539 1.000000 228 O c 0.126888 0.999439 -22.0021 1.018487 1.000000 229 O c 0.190715 0.935612 -20.4692 1.018487 1.000000 230 O c 0.779821 0.967525 -21.2357 1.018487 1.000000 231 Ca c 0.615808 0.884192 -21.2357 2.000000 1.000000 232 C c 0.739495 0.760505 -24.2693 1.343539 1.000000 233 O c 0.833909 0.792419 -25.0358 1.018487 1.000000 234 O c 0.486841 0.760505 -24.2693 1.018487 1.000000 235 O c 0.897736 0.728592 -23.5029 1.018487 1.000000 236 Ca c 0.156162 0.843839 -24.2693 2.000000 1.000000 237 O c 0.478415 0.895258 -23.5029 1.018487 1.000000 238 C c 0.572828 0.927172 -24.2693 1.343539 1.000000 239 O c 0.414588 0.959086 -25.0358 1.018487 1.000000 240 O c 0.825482 0.927172 -24.2693 1.018487 1.000000 313 O s 0.698530 0.048232 -15.1683 -2.133000 1.000000 314 O s 0.110374 0.016245 -14.4001 -2.133000 1.000000 315 O s 0.046399 0.080220 -15.9366 -2.133000 1.000000 316 O s 0.690469 0.182912 -14.4001 -2.133000 1.000000 317 O s 0.626495 0.246886 -15.9366 -2.133000 1.000000 318 O s 0.038338 0.214899 -15.1683 -2.133000 1.000000 319 O s 0.397490 0.975892 -17.4338 -2.133000 1.000000 320 O s 0.745359 0.007879 -18.2020 -2.133000 1.000000 321 O s 0.333515 0.039866 -18.9702 -2.133000 1.000000 322 O s 0.072217 0.174546 -18.2020 -2.133000 1.000000 323 O s 0.484061 0.142558 -17.4338 -2.133000 1.000000 324 O s 0.420086 0.206533 -18.9702 -2.133000 1.000000 325 O s 0.713066 0.413553 -15.9366 -2.133000 1.000000 326 O s 0.365197 0.381566 -15.1683 -2.133000 1.000000 327 O s 0.777040 0.349579 -14.4001 -2.133000 1.000000 328 O s 0.771177 0.102205 -20.4674 -2.133000 1.000000 329 O s 0.119046 0.134192 -21.2357 -2.133000 1.000000 330 O s 0.707202 0.166179 -22.0039 -2.133000 1.000000 331 O s 0.064156 0.309225 -17.4338 -2.133000 1.000000 332 O s 0.000182 0.373200 -18.9702 -2.133000 1.000000 333 O s 0.412025 0.341212 -18.2020 -2.133000 1.000000 334 O s 0.500793 0.125826 -25.0376 -2.133000 1.000000 335 O s 0.564768 0.061851 -23.5011 -2.133000 1.000000 336 O s 0.152924 0.093839 -24.2693 -2.133000 1.000000 337 O s 0.445904 0.300859 -21.2357 -2.133000 1.000000 338 O s 0.857747 0.268872 -20.4674 -2.133000 1.000000 339 O s 0.793773 0.332846 -22.0039 -2.133000 1.000000 340 O s 0.357136 0.516245 -14.4001 -2.133000 1.000000 341 O s 0.293162 0.580220 -15.9366 -2.133000 1.000000 342 O s 0.705005 0.548232 -15.1683 -2.133000 1.000000 343 O s 0.379733 0.746886 -15.9366 -2.133000 1.000000 344 O s 0.443707 0.682912 -14.4001 -2.133000 1.000000 345 O s 0.031864 0.714899 -15.1683 -2.133000 1.000000 346 O s 0.086753 0.539866 -18.9702 -2.133000 1.000000 347 O s 0.738884 0.507879 -18.2020 -2.133000 1.000000 348 O s 0.150727 0.475892 -17.4338 -2.133000 1.000000 349 O s 0.437843 0.435538 -20.4674 -2.133000 1.000000 350 O s 0.373869 0.499513 -22.0039 -2.133000 1.000000 351 O s 0.785712 0.467526 -21.2357 -2.133000 1.000000 352 O s 0.730823 0.642558 -17.4338 -2.133000 1.000000 353 O s 0.666849 0.706533 -18.9702 -2.133000 1.000000 354 O s 0.078692 0.674546 -18.2020 -2.133000 1.000000 355 O s 0.144863 0.228518 -23.5011 -2.133000 1.000000 356 O s 0.492732 0.260505 -24.2693 -2.133000 1.000000 357 O s 0.080889 0.292493 -25.0376 -2.133000 1.000000 358 O s 0.819591 0.427172 -24.2693 -2.133000 1.000000 359 O s 0.231434 0.395185 -23.5011 -2.133000 1.000000 360 O s 0.167460 0.459159 -25.0376 -2.133000 1.000000 361 O s 0.753420 0.873200 -18.9702 -2.133000 1.000000 362 O s 0.817394 0.809225 -17.4338 -2.133000 1.000000 363 O s 0.405551 0.841212 -18.2020 -2.133000 1.000000 364 O s 0.811530 0.561851 -23.5011 -2.133000 1.000000 365 O s 0.747556 0.625826 -25.0376 -2.133000 1.000000 366 O s 0.159399 0.593839 -24.2693 -2.133000 1.000000 367 O s 0.023803 0.849579 -14.4001 -2.133000 1.000000 368 O s 0.371672 0.881566 -15.1683 -2.133000 1.000000 369 O s 0.959829 0.913553 -15.9366 -2.133000 1.000000 370 O s 0.460440 0.666179 -22.0039 -2.133000 1.000000 371 O s 0.112571 0.634192 -21.2357 -2.133000 1.000000 372 O s 0.524414 0.602205 -20.4674 -2.133000 1.000000 373 O s 0.104510 0.768872 -20.4674 -2.133000 1.000000 374 O s 0.040536 0.832846 -22.0039 -2.133000 1.000000 375 O s 0.452379 0.800859 -21.2357 -2.133000 1.000000 376 O s 0.127106 0.999513 -22.0039 -2.133000 1.000000 377 O s 0.191081 0.935538 -20.4674 -2.133000 1.000000 378 O s 0.779237 0.967525 -21.2357 -2.133000 1.000000 379 O s 0.834127 0.792493 -25.0376 -2.133000 1.000000 380 O s 0.486258 0.760505 -24.2693 -2.133000 1.000000 381 O s 0.898101 0.728518 -23.5011 -2.133000 1.000000 382 O s 0.478197 0.895185 -23.5011 -2.133000 1.000000 383 O s 0.414222 0.959159 -25.0376 -2.133000 1.000000 384 O s 0.826066 0.927172 -24.2693 -2.133000 1.000000 -------------------------------------------------------------------------------- Molecule list generated from bondlengths : Total number of molecules = 48 -------------------------------------------------------------------------------- Molecule No./: Atoms Periodicity : -------------------------------------------------------------------------------- 1 0 : O c 1 C c 2 O c 3 O c 4 O s 241 : O s 242 O s 243 2 0 : C c 5 O c 6 O c 7 O c 8 O s 244 : O s 245 O s 246 3 0 : C c 12 O c 13 O c 14 O c 15 O s 247 : O s 248 O s 249 4 0 : O c 16 C c 17 O c 18 O c 19 O s 250 : O s 251 O s 252 5 0 : C c 23 O c 24 O c 25 O c 26 O s 253 : O s 254 O s 255 6 0 : C c 27 O c 28 O c 29 O c 30 O s 256 : O s 257 O s 258 7 0 : O c 31 C c 32 O c 33 O c 34 O s 259 : O s 260 O s 261 8 0 : C c 36 O c 37 O c 38 O c 39 O s 262 : O s 263 O s 264 9 0 : C c 41 O c 42 O c 43 O c 44 O s 265 : O s 266 O s 267 10 0 : O c 45 C c 46 O c 47 O c 48 O s 268 : O s 269 O s 270 11 0 : C c 53 O c 54 O c 55 O c 56 O s 271 : O s 272 O s 273 12 0 : C c 57 O c 58 O c 59 O c 60 O s 274 : O s 275 O s 276 13 0 : C c 61 O c 62 O c 63 O c 64 O s 277 : O s 278 O s 279 14 0 : O c 65 C c 66 O c 67 O c 68 O s 280 : O s 281 O s 282 15 0 : C c 73 O c 74 O c 75 O c 76 O s 283 : O s 284 O s 285 16 0 : O c 77 C c 78 O c 79 O c 80 O s 286 : O s 287 O s 288 17 0 : C c 83 O c 84 O c 85 O c 86 O s 289 : O s 290 O s 291 18 0 : C c 87 O c 88 O c 89 O c 90 O s 292 : O s 293 O s 294 19 0 : C c 91 O c 92 O c 93 O c 94 O s 295 : O s 296 O s 297 20 0 : C c 96 O c 97 O c 98 O c 99 O s 298 : O s 299 O s 300 21 0 : O c 100 C c 101 O c 102 O c 103 O s 301 : O s 302 O s 303 22 0 : C c 108 O c 109 O c 110 O c 111 O s 304 : O s 305 O s 306 23 0 : C c 112 O c 113 O c 114 O c 115 O s 307 : O s 308 O s 309 24 0 : O c 116 C c 117 O c 118 O c 119 O s 310 : O s 311 O s 312 25 0 : O c 121 C c 122 O c 123 O c 124 O s 313 : O s 314 O s 315 26 0 : C c 126 O c 127 O c 128 O c 129 O s 316 : O s 317 O s 318 27 0 : C c 131 O c 132 O c 133 O c 134 O s 319 : O s 320 O s 321 28 0 : O c 135 C c 136 O c 137 O c 138 O s 322 : O s 323 O s 324 29 0 : C c 141 O c 142 O c 143 O c 144 O s 325 : O s 326 O s 327 30 0 : C c 148 O c 149 O c 150 O c 151 O s 328 : O s 329 O s 330 31 0 : C c 152 O c 153 O c 154 O c 155 O s 331 : O s 332 O s 333 32 0 : C c 156 O c 157 O c 158 O c 159 O s 334 : O s 335 O s 336 33 0 : O c 160 C c 161 O c 162 O c 163 O s 337 : O s 338 O s 339 34 0 : O c 164 C c 165 O c 166 O c 167 O s 340 : O s 341 O s 342 35 0 : C c 172 O c 173 O c 174 O c 175 O s 343 : O s 344 O s 345 36 0 : C c 177 O c 178 O c 179 O c 180 O s 346 : O s 347 O s 348 37 0 : C c 183 O c 184 O c 185 O c 186 O s 349 : O s 350 O s 351 38 0 : O c 187 C c 188 O c 189 O c 190 O s 352 : O s 353 O s 354 39 0 : C c 192 O c 193 O c 194 O c 195 O s 355 : O s 356 O s 357 40 0 : O c 196 C c 197 O c 198 O c 199 O s 358 : O s 359 O s 360 41 0 : C c 202 O c 203 O c 204 O c 205 O s 361 : O s 362 O s 363 42 0 : C c 207 O c 208 O c 209 O c 210 O s 364 : O s 365 O s 366 43 0 : C c 212 O c 213 O c 214 O c 215 O s 367 : O s 368 O s 369 44 0 : C c 217 O c 218 O c 219 O c 220 O s 370 : O s 371 O s 372 45 0 : O c 221 C c 222 O c 223 O c 224 O s 373 : O s 374 O s 375 46 0 : C c 227 O c 228 O c 229 O c 230 O s 376 : O s 377 O s 378 47 0 : C c 232 O c 233 O c 234 O c 235 O s 379 : O s 380 O s 381 48 0 : O c 237 C c 238 O c 239 O c 240 O s 382 : O s 383 O s 384 -------------------------------------------------------------------------------- ******************************************************************************** * General input information * ******************************************************************************** Species output for all configurations : -------------------------------------------------------------------------------- Species Type Atomic Atomic Charge Radii (Angs) Library Number Mass (e) Cova Ionic VDW Symbol -------------------------------------------------------------------------------- Cd Core 48 112.41 2.0000 0.000 0.000 2.520 Mn Core 25 54.94 2.0000 0.000 0.000 2.010 Mg Core 12 24.31 2.0000 1.100 0.000 1.640 Zn Core 30 65.39 2.0000 0.000 0.000 2.160 Ni Core 28 58.69 2.0000 0.000 0.000 1.810 Co Core 27 58.93 2.0000 0.000 0.000 1.990 Fe Core 26 55.85 2.0000 0.000 0.000 2.000 Ca Core 20 40.08 2.0000 0.990 0.000 2.750 C Core 6 12.01 1.3435 0.770 0.000 1.530 O Core 8 16.00 1.0185 0.730 0.000 1.360 O Shell 8 0.00 -2.1330 0.730 0.000 1.360 -------------------------------------------------------------------------------- Accuracy factor for short range sums = 8.000 Time limit = Infinity **** Warning - potential 1 is acting on the core of an ion with a shell **** **** Warning - potential 11 is acting on the core of an ion with a shell **** General interatomic potentials : -------------------------------------------------------------------------------- Atom Types Potential A B C D Cutoffs(Ang) 1 2 Min Max -------------------------------------------------------------------------------- Ca c O s Buckingham 0.215E+04 0.289 .000 .000 0.000 10.000 Cd c O s Buckingham 0.433E+04 0.256 .000 .000 0.000 10.000 Mg c O s Buckingham 0.104E+04 0.289 .000 .000 0.000 10.000 Co c O s Buckingham 0.110E+04 0.286 .000 .000 0.000 10.000 Fe c O s Buckingham 0.215E+04 0.265 .000 .000 0.000 10.000 Mn c O s Buckingham 0.200E+04 0.273 .000 .000 0.000 10.000 Ni c O s Buckingham 0.163E+04 0.267 .000 .000 0.000 10.000 Zn c O s Buckingham 0.103E+04 0.289 .000 .000 0.000 10.000 O c O s Spring (c-s) 52.7 0.100E+05 .000 .000 0.000 0.600 -------------------------------------------------------------------------------- Intramolecular potentials : -------------------------------------------------------------------------------- Atom Types Potential A B C D Cutoffs(Ang) 1 2 Min Max -------------------------------------------------------------------------------- O c O c Buckingham 0.403E+04 0.245 .000 .000 0.000 2.500 C c O c Morse 5.00 2.52 1.20 .000 0.000 1 Bond -------------------------------------------------------------------------------- Intermolecular potentials : -------------------------------------------------------------------------------- Atom Types Potential A B C D Cutoffs(Ang) 1 2 Min Max -------------------------------------------------------------------------------- O s O s Buckingham 0.647E+05 0.199 21.8 .000 0.000 15.000 -------------------------------------------------------------------------------- Intramolecular Three-body potentials : Harmonic form: -------------------------------------------------------------------------------- Atom Atom Atom Force Constants Theta Cutoffs 1 2 3 (eVrad**-2/eVrad**-3/eVrad**-4) (deg) 1-2 1-3 2-3 -------------------------------------------------------------------------------- C c O c O c 1.777 0.0000 0.0000 120.000 Bonded -------------------------------------------------------------------------------- Intramolecular Four-body potentials : Out of plane potentials: -------------------------------------------------------------------------------- Atom Types Force cst Cutoffs 1 2 3 4 (eV) 1-2 1-3 2-3 1-4 -------------------------------------------------------------------------------- C c O c O c O c 8.8279 Bonded -------------------------------------------------------------------------------- ******************************************************************************** * Output for configuration 1 : calcite_-10-4_0.0000 * ******************************************************************************** Components of energy : -------------------------------------------------------------------------------- Interatomic potentials = -467.34503076 eV Three-body potentials = 0.00000000 eV Four-body potentials = 0.00000000 eV Out of plane potentials = 0.00000001 eV Monopole - monopole (real) = -149.61250397 eV Monopole - monopole (recip)= -1418.45612670 eV Monopole - monopole (total)= -1568.06863067 eV -------------------------------------------------------------------------------- Total lattice energy = -2035.41366141 eV -------------------------------------------------------------------------------- Total lattice energy = -196386.3042 kJ/(mole unit cells) -------------------------------------------------------------------------------- Surface energy (region 1) = 0.7073 J/m**2 -------------------------------------------------------------------------------- Peak dynamic memory used = 1.31 MB Timing analysis for Gulp : -------------------------------------------------------------------------------- Task / Subroutine Time (Seconds) -------------------------------------------------------------------------------- Calculation of reciprocal space energy and derivatives 0.6400 Calculation of real space energy and derivatives 1.0500 Calculation of three-body energy and derivatives 0.0200 Calculation of four-body energy and derivatives 0.0100 -------------------------------------------------------------------------------- Total CPU time 1.9000 -------------------------------------------------------------------------------- Job Finished at 10:52.50 23rd April 2002 gdis-0.90/models/la_rdefe_clus.car0000644000175000017500000001464307717054777015624 0ustar seansean!MSI archive 3 PBC=OFF Created by gtk_Dismol !DATE Tue Jul 11 11:23:30 2000 La 0.000000089 0.609756827 0.000000119 CORE 1 la La 3.0000 1 O1 1.717034340 -1.404943109 -0.380341411 CORE 1 o O -0.8400 2 O1 -1.717034578 -1.404943109 0.380341649 CORE 1 o O -0.8400 3 O2 -1.590991020 1.978848219 1.783354521 CORE 1 o O -0.8200 4 O2 1.590990782 1.978848219 -1.783354282 CORE 1 o O -0.8200 5 O1 1.657934904 0.970500827 2.079887390 CORE 1 o O -0.8400 6 O1 -1.657934904 0.970500827 -2.079887390 CORE 1 o O -0.8400 7 S 2.833667755 -2.262621880 -0.021493673 CORE 18 s S 1.3600 18 S -2.833667994 -2.262621880 0.021493793 CORE 19 s S 1.3600 19 H -2.466117859 1.644472837 2.065937996 CORE 10 h H 0.4100 10 H -1.638217926 2.902885914 2.098194599 CORE 14 h H 0.4100 14 H 2.466117859 1.644472837 -2.065937996 CORE 11 h H 0.4100 11 H 1.638217688 2.902885914 -2.098194599 CORE 15 h H 0.4100 15 S 1.233126044 0.081869721 3.134661674 CORE 12 s S 1.3600 12 S -1.233125925 0.081869721 -3.134661674 CORE 13 s S 1.3600 13 O1 2.502272606 -3.047226906 1.147499561 CORE 14 o O -0.8400 34 O1 3.981321335 -1.442512751 0.295644760 CORE 16 o O -0.8400 36 O1 3.111513138 -3.127166748 -1.145080328 CORE 16 o O -0.8400 46 O1 -2.502272844 -3.047226906 -1.147499442 CORE 15 o O -0.8400 35 O1 -3.981321573 -1.442512751 -0.295644641 CORE 17 o O -0.8400 37 O1 -3.111513138 -3.127166748 1.145080566 CORE 17 o O -0.8400 47 O1 2.301410198 -0.823366165 3.454752922 CORE 16 o O -0.8400 26 O1 0.901029944 0.861077785 4.290981770 CORE 12 o O -0.8400 32 O1 0.061953396 -0.653069556 2.657665730 CORE 1 o O -0.8400 8 O1 -2.301410198 -0.823366165 -3.454753399 CORE 17 o O -0.8400 27 O1 -0.901029825 0.861077785 -4.290981770 CORE 13 o O -0.8400 33 O1 -0.061953336 -0.653069556 -2.657666206 CORE 1 o O -0.8400 9 end Ca -1.622051239 -2.390408516 2.999818325 CORE 28 ca Ca 2.0000 28 end Ca 1.622051001 -2.390408516 -2.999818325 CORE 39 ca Ca 2.0000 29 end H 0.448348612 4.206163406 1.411655664 CORE 40 h H 0.4100 30 O2 1.282922387 3.736384630 1.206976414 CORE 42 o O -0.8200 22 H 1.507727385 3.372765779 2.077619553 CORE 46 h H 0.4100 16 end H -0.448348671 4.206163406 -1.411655426 CORE 51 h H 0.4100 31 O2 -1.282922268 3.736384630 -1.206976295 CORE 53 o O -0.8200 23 H -1.507727385 3.372765779 -2.077619553 CORE 57 h H 0.4100 17 end H -0.759551764 -3.590511799 -1.451990008 CORE 65 h H 0.4100 25 O2 0.149398655 -3.841061115 -1.705662727 CORE 69 o O -0.8200 39 H 0.167544931 -4.773675442 -1.420072317 CORE 67 h H 0.4100 57 end H 3.444510460 1.432256937 1.721963644 CORE 70 h H 0.4100 20 O2 4.226871490 1.718664885 1.216236353 CORE 74 o O -0.8200 44 H 4.273274422 2.658524513 1.469964743 CORE 72 h H 0.4100 52 end H -0.850077629 1.391218424 4.558143139 CORE 82 h H 0.4100 42 O2 -1.766494274 1.678683996 4.733806133 CORE 88 o O -0.8200 58 H -1.731636524 2.614564896 4.467250824 CORE 82 h H 0.4100 62 end O2 -4.226871014 1.718664885 -1.216236234 CORE 95 o O -0.8200 45 H -3.444510460 1.432256937 -1.721963406 CORE 91 h H 0.4100 21 H -4.273273945 2.658524513 -1.469964623 CORE 93 h H 0.4100 53 end H 0.759551883 -3.590511799 1.451990128 CORE 10 h H 0.4100 24 O2 -0.149398476 -3.841061115 1.705662727 CORE 10 o O -0.8200 38 H -0.167544872 -4.773675442 1.420072556 CORE 10 h H 0.4100 56 end H -1.087959290 2.715056896 -4.489156246 CORE 11 h H 0.4100 55 O2 -1.029557228 3.682294130 -4.589152336 CORE 11 o O -0.8200 77 H -1.958092451 3.952343225 -4.449419498 CORE 11 h H 0.4100 87 end O2 1.766494036 1.678683996 -4.733806133 CORE 12 o O -0.8200 59 H 1.731636286 2.614564896 -4.467251301 CORE 12 h H 0.4100 63 H 0.850077748 1.391218424 -4.558143139 CORE 12 h H 0.4100 43 end Ca -4.027231693 -2.371613264 -2.980931759 CORE 13 ca Ca 2.0000 67 end H 2.657418728 -4.937438011 1.372563839 CORE 14 h H 0.4100 78 O2 2.639310837 -5.857035637 1.689847469 CORE 146 o O -0.8200 126 H 3.527728558 -6.166109085 1.425499201 CORE 140 h H 0.4100 170 end H 2.977810383 -4.982982159 -1.380354404 CORE 15 h H 0.4100 85 O2 2.968774319 -5.901260376 -1.703546524 CORE 159 o O -0.8200 139 H 2.078460217 -6.192590714 -1.426877260 CORE 159 h H 0.4100 129 end O2 -3.834326506 1.655151129 -4.667788029 CORE 16 o O -0.8200 93 H -3.865645647 2.589752197 -4.396674633 CORE 16 h H 0.4100 99 H -4.735095501 1.362688780 -4.427471161 CORE 167 h H 0.4100 117 end O2 3.834326744 1.655151129 4.667788029 CORE 17 o O -0.8200 92 H 4.735096455 1.362688780 4.427471161 CORE 176 h H 0.4100 116 H 3.865645885 2.589752197 4.396674633 CORE 17 h H 0.4100 98 end H -2.657418966 -4.937438011 -1.372563601 CORE 18 h H 0.4100 79 O2 -2.639310837 -5.857035637 -1.689847469 CORE 187 o O -0.8200 127 H -3.527728796 -6.166109085 -1.425499082 CORE 181 h H 0.4100 171 end Ca 4.027231693 -2.371613264 2.980931282 CORE 19 ca Ca 2.0000 66 end H 1.958092451 3.952343225 4.449419022 CORE 21 h H 0.4100 86 O2 1.029557347 3.682294130 4.589152336 CORE 21 o O -0.8200 76 H 1.087959409 2.715056896 4.489155769 CORE 21 h H 0.4100 54 end O2 -2.968774319 -5.901260376 1.703546524 CORE 238 o O -0.8200 138 H -2.977810860 -4.982982159 1.380354643 CORE 23 h H 0.4100 84 H -2.078460455 -6.192590714 1.426877499 CORE 238 h H 0.4100 128 end end gdis-0.90/models/calcite_104_0.0000.res0000644000175000017500000010062607717054771015635 0ustar seansean# # Keywords: # single conv mole # # Options: # name calcite_104_0.0000 # Surface energy = 0.707324 J/m2 scell 4.980183 24.776345 78.404232 sfractional region 1 C core 0.4219190 0.0780809 -12.13466 1.34353899 1.00000 0.00000 % O core 0.3275059 0.0461670 -12.90112 1.01848700 1.00000 0.00000 % O core 0.2636789 0.1099940 -11.36819 1.01848700 1.00000 0.00000 % O core 0.6745730 0.0780809 -12.13466 1.01848700 1.00000 0.00000 % O core 0.7096190 0.0377270 -9.100994 1.01848700 1.00000 0.00000 % C core 0.9622729 0.0377270 -9.100994 1.34353899 1.00000 0.00000 % O core 0.1205130 0.0058140 -9.867462 1.01848700 1.00000 0.00000 % O core 0.0566859 0.0696410 -8.334526 1.01848700 1.00000 0.00000 % Ca core 0.8385859 0.1614140 -12.13465 2.00000000 1.00000 0.00000 % Ca core 0.9192929 0.0807070 -6.067327 2.00000000 1.00000 0.00000 % Ca core 0.6719190 0.3280810 -12.13465 2.00000000 1.00000 0.00000 % C core 0.7956059 0.2043940 -9.100994 1.34353899 1.00000 0.00000 % O core 0.7011920 0.1724800 -9.867462 1.01848700 1.00000 0.00000 % O core 0.6373660 0.2363070 -8.334527 1.01848700 1.00000 0.00000 % O core 0.0482600 0.2043940 -9.100994 1.01848700 1.00000 0.00000 % C core 0.2552529 0.2447470 -12.13465 1.34353899 1.00000 0.00000 % O core 0.3496660 0.2766610 -11.36819 1.01848700 1.00000 0.00000 % O core 0.0025990 0.2447470 -12.13465 1.01848700 1.00000 0.00000 % O core 0.4134930 0.2128340 -12.90112 1.01848700 1.00000 0.00000 % Ca core 0.4596459 0.0403529 -3.033664 2.00000000 1.00000 0.00000 % O core 0.0833060 0.1640400 -6.067327 1.01848700 1.00000 0.00000 % C core 0.3359600 0.1640400 -6.067327 1.34353899 1.00000 0.00000 % O core 0.4942000 0.1321270 -6.833797 1.01848700 1.00000 0.00000 % O core 0.4303729 0.1959540 -5.300861 1.01848700 1.00000 0.00000 % O core 0.9941720 0.3795000 -12.90112 1.01848700 1.00000 0.00000 % C core 0.0885859 0.4114140 -12.13465 1.34353899 1.00000 0.00000 % O core 0.9303449 0.4433279 -11.36819 1.01848700 1.00000 0.00000 % O core 0.3412400 0.4114140 -12.13465 1.01848700 1.00000 0.00000 % Ca core 0.2122729 0.2877270 -9.100994 2.00000000 1.00000 0.00000 % Ca core 0.3789390 0.1210600 -9.100994 2.00000000 1.00000 0.00000 % C core 0.9219190 0.5780810 -12.13465 1.34353899 1.00000 0.00000 % O core 0.0163329 0.6099940 -11.36819 1.01848700 1.00000 0.00000 % O core 0.0801600 0.5461670 -12.90112 1.01848700 1.00000 0.00000 % O core 0.6692649 0.5780810 -12.13465 1.01848700 1.00000 0.00000 % Ca core 0.3385859 0.6614140 -12.13465 2.00000000 1.00000 0.00000 % Ca core 0.5052529 0.4947470 -12.13465 2.00000000 1.00000 0.00000 % C core 0.6289390 0.3710609 -9.100994 1.34353899 1.00000 0.00000 % O core 0.7233529 0.4029740 -8.334526 1.01848700 1.00000 0.00000 % O core 0.3762849 0.3710609 -9.100994 1.01848700 1.00000 0.00000 % O core 0.7871800 0.3391470 -9.867462 1.01848700 1.00000 0.00000 % Ca core 0.2929800 0.2070200 -3.033664 2.00000000 1.00000 0.00000 % Ca core 0.0456059 0.4543940 -9.100994 2.00000000 1.00000 0.00000 % C core 0.8763129 0.1236870 -3.033664 1.34353899 1.00000 0.00000 % O core 0.7819000 0.0917729 -3.800132 1.01848700 1.00000 0.00000 % O core 0.1289669 0.1236870 -3.033664 1.01848700 1.00000 0.00000 % O core 0.7180730 0.1556000 -2.267197 1.01848700 1.00000 0.00000 % C core 0.1692929 0.3307070 -6.067330 1.34353899 1.00000 0.00000 % O core 0.0748789 0.2987929 -6.833797 1.01848700 1.00000 0.00000 % O core 0.0110519 0.3626210 -5.300863 1.01848700 1.00000 0.00000 % O core 0.4219469 0.3307070 -6.067330 1.01848700 1.00000 0.00000 % O core 0.4569919 0.2903529 -3.033664 1.01848700 1.00000 0.00000 % C core 0.7096459 0.2903529 -3.033664 1.34353899 1.00000 0.00000 % O core 0.8678869 0.2584400 -3.800132 1.01848700 1.00000 0.00000 % O core 0.8040600 0.3222670 -2.267197 1.01848700 1.00000 0.00000 % O core 0.3678589 0.5058140 -9.867462 1.01848700 1.00000 0.00000 % C core 0.4622729 0.5377270 -9.100994 1.34353899 1.00000 0.00000 % O core 0.3040319 0.5696410 -8.334526 1.01848700 1.00000 0.00000 % O core 0.7149269 0.5377270 -9.100994 1.01848700 1.00000 0.00000 % Ca core 0.5859600 0.4140400 -6.067329 2.00000000 1.00000 0.00000 % Ca core 0.7526259 0.2473740 -6.067330 2.00000000 1.00000 0.00000 % Ca core 0.1719190 0.8280810 -12.13465 2.00000000 1.00000 0.00000 % Ca core 0.7122729 0.7877270 -9.100994 2.00000000 1.00000 0.00000 % C core 0.7552529 0.7447470 -12.13465 1.34353899 1.00000 0.00000 % O core 0.6608389 0.7128340 -12.90112 1.01848700 1.00000 0.00000 % O core 0.0079060 0.7447470 -12.13465 1.01848700 1.00000 0.00000 % O core 0.5970119 0.7766610 -11.36819 1.01848700 1.00000 0.00000 % C core 0.2956059 0.7043940 -9.100994 1.34353899 1.00000 0.00000 % O core 0.3900200 0.7363070 -8.334526 1.01848700 1.00000 0.00000 % O core 0.4538469 0.6724800 -9.867461 1.01848700 1.00000 0.00000 % O core 0.0429519 0.7043940 -9.100994 1.01848700 1.00000 0.00000 % O core 0.3359319 0.9114140 -12.13465 1.01848700 1.00000 0.00000 % C core 0.5885859 0.9114140 -12.13465 1.34353899 1.00000 0.00000 % O core 0.7468260 0.8795000 -12.90112 1.01848700 1.00000 0.00000 % O core 0.6829990 0.9433279 -11.36819 1.01848700 1.00000 0.00000 % Ca core 0.8789390 0.6210600 -9.100994 2.00000000 1.00000 0.00000 % Ca core 0.4192929 0.5807070 -6.067329 2.00000000 1.00000 0.00000 % C core 0.5429800 0.4570200 -3.033664 1.34353899 1.00000 0.00000 % O core 0.4485659 0.4251070 -3.800132 1.01848700 1.00000 0.00000 % O core 0.3847389 0.4889340 -2.267197 1.01848700 1.00000 0.00000 % O core 0.7956339 0.4570200 -3.033664 1.01848700 1.00000 0.00000 % O core 0.7415459 0.6321270 -6.833797 1.01848700 1.00000 0.00000 % C core 0.8359600 0.6640400 -6.067329 1.34353899 1.00000 0.00000 % O core 0.6777189 0.6959540 -5.300861 1.01848700 1.00000 0.00000 % O core 0.0886139 0.6640400 -6.067329 1.01848700 1.00000 0.00000 % Ca core 0.9596459 0.5403529 -3.033664 2.00000000 1.00000 0.00000 % C core 0.0026259 0.4973740 -6.067329 1.34353899 1.00000 0.00000 % O core 0.0970400 0.5292870 -5.300861 1.01848700 1.00000 0.00000 % O core 0.7499719 0.4973740 -6.067329 1.01848700 1.00000 0.00000 % O core 0.1608669 0.4654600 -6.833797 1.01848700 1.00000 0.00000 % Ca core 0.1263129 0.3736870 -3.033664 2.00000000 1.00000 0.00000 % Ca core 0.5456059 0.9543940 -9.100991 2.00000000 1.00000 0.00000 % C core 0.6692929 0.8307070 -6.067326 1.34353899 1.00000 0.00000 % O core 0.7637060 0.8626210 -5.300859 1.01848700 1.00000 0.00000 % O core 0.8275330 0.7987930 -6.833795 1.01848700 1.00000 0.00000 % O core 0.4166390 0.8307070 -6.067326 1.01848700 1.00000 0.00000 % Ca core 0.7929800 0.7070200 -3.033664 2.00000000 1.00000 0.00000 % Ca core 0.0859600 0.9140400 -6.067327 2.00000000 1.00000 0.00000 % C core 0.1289390 0.8710600 -9.100992 1.34353899 1.00000 0.00000 % O core 0.0345259 0.8391470 -9.867460 1.01848700 1.00000 0.00000 % O core 0.3815930 0.8710600 -9.100992 1.01848700 1.00000 0.00000 % O core 0.9706989 0.9029740 -8.334524 1.01848700 1.00000 0.00000 % Ca core 0.0052529 0.9947470 -12.13465 2.00000000 1.00000 0.00000 % Ca core 0.2526259 0.7473740 -6.067329 2.00000000 1.00000 0.00000 % C core 0.3763129 0.6236870 -3.033664 1.34353899 1.00000 0.00000 % O core 0.4707270 0.6556000 -2.267197 1.01848700 1.00000 0.00000 % O core 0.1236590 0.6236870 -3.033664 1.01848700 1.00000 0.00000 % O core 0.5345540 0.5917730 -3.800132 1.01848700 1.00000 0.00000 % O core 0.1152330 0.7584400 -3.800132 1.01848700 1.00000 0.00000 % C core 0.2096459 0.7903529 -3.033664 1.34353899 1.00000 0.00000 % O core 0.0514060 0.8222670 -2.267196 1.01848700 1.00000 0.00000 % O core 0.4623000 0.7903529 -3.033664 1.01848700 1.00000 0.00000 % C core 0.5026259 0.9973740 -6.067327 1.34353899 1.00000 0.00000 % O core 0.4082130 0.9654600 -6.833796 1.01848700 1.00000 0.00000 % O core 0.7552800 0.9973740 -6.067327 1.01848700 1.00000 0.00000 % O core 0.3443860 0.0292870 -5.300860 1.01848700 1.00000 0.00000 % C core 0.0429800 0.9570200 -3.033662 1.34353899 1.00000 0.00000 % O core 0.1373929 0.9889340 -2.267195 1.01848700 1.00000 0.00000 % O core 0.2012200 0.9251070 -3.800130 1.01848700 1.00000 0.00000 % O core 0.7903260 0.9570200 -3.033662 1.01848700 1.00000 0.00000 % Ca core 0.6263129 0.8736870 -3.033664 2.00000000 1.00000 0.00000 % O shel 0.3272870 0.0460930 -12.90289 -2.1330000 1.00000 0.00000 % O shel 0.2633130 0.1100680 -11.36642 -2.1330000 1.00000 0.00000 % O shel 0.6751559 0.0780809 -12.13466 -2.1330000 1.00000 0.00000 % O shel 0.7090350 0.0377270 -9.100994 -2.1330000 1.00000 0.00000 % O shel 0.1208790 0.0057400 -9.869232 -2.1330000 1.00000 0.00000 % O shel 0.0569039 0.0697139 -8.332757 -2.1330000 1.00000 0.00000 % O shel 0.7009740 0.1724069 -9.869232 -2.1330000 1.00000 0.00000 % O shel 0.6370000 0.2363809 -8.332758 -2.1330000 1.00000 0.00000 % O shel 0.0488429 0.2043940 -9.100994 -2.1330000 1.00000 0.00000 % O shel 0.3498839 0.2767350 -11.36642 -2.1330000 1.00000 0.00000 % O shel 0.0020150 0.2447470 -12.13465 -2.1330000 1.00000 0.00000 % O shel 0.4138579 0.2127600 -12.90289 -2.1330000 1.00000 0.00000 % O shel 0.0827220 0.1640400 -6.067327 -2.1330000 1.00000 0.00000 % O shel 0.4945660 0.1320530 -6.835567 -2.1330000 1.00000 0.00000 % O shel 0.4305909 0.1960280 -5.299091 -2.1330000 1.00000 0.00000 % O shel 0.9939540 0.3794269 -12.90289 -2.1330000 1.00000 0.00000 % O shel 0.9299800 0.4434009 -11.36642 -2.1330000 1.00000 0.00000 % O shel 0.3418229 0.4114140 -12.13465 -2.1330000 1.00000 0.00000 % O shel 0.0165509 0.6100680 -11.36642 -2.1330000 1.00000 0.00000 % O shel 0.0805249 0.5460930 -12.90289 -2.1330000 1.00000 0.00000 % O shel 0.6686820 0.5780810 -12.13465 -2.1330000 1.00000 0.00000 % O shel 0.7235709 0.4030480 -8.332757 -2.1330000 1.00000 0.00000 % O shel 0.3757020 0.3710609 -9.100994 -2.1330000 1.00000 0.00000 % O shel 0.7875449 0.3390730 -9.869232 -2.1330000 1.00000 0.00000 % O shel 0.7816820 0.0917000 -3.801901 -2.1330000 1.00000 0.00000 % O shel 0.1295509 0.1236870 -3.033664 -2.1330000 1.00000 0.00000 % O shel 0.7177070 0.1556739 -2.265427 -2.1330000 1.00000 0.00000 % O shel 0.0746610 0.2987200 -6.835568 -2.1330000 1.00000 0.00000 % O shel 0.0106870 0.3626939 -5.299093 -2.1330000 1.00000 0.00000 % O shel 0.4225300 0.3307070 -6.067330 -2.1330000 1.00000 0.00000 % O shel 0.4564090 0.2903529 -3.033664 -2.1330000 1.00000 0.00000 % O shel 0.8682520 0.2583660 -3.801901 -2.1330000 1.00000 0.00000 % O shel 0.8042780 0.3223409 -2.265427 -2.1330000 1.00000 0.00000 % O shel 0.3676410 0.5057400 -9.869232 -2.1330000 1.00000 0.00000 % O shel 0.3036670 0.5697139 -8.332756 -2.1330000 1.00000 0.00000 % O shel 0.7155100 0.5377270 -9.100994 -2.1330000 1.00000 0.00000 % O shel 0.6606210 0.7127600 -12.90289 -2.1330000 1.00000 0.00000 % O shel 0.0084900 0.7447470 -12.13465 -2.1330000 1.00000 0.00000 % O shel 0.5966470 0.7767350 -11.36642 -2.1330000 1.00000 0.00000 % O shel 0.3902380 0.7363809 -8.332756 -2.1330000 1.00000 0.00000 % O shel 0.4542120 0.6724069 -9.869232 -2.1330000 1.00000 0.00000 % O shel 0.0423690 0.7043940 -9.100992 -2.1330000 1.00000 0.00000 % O shel 0.3353479 0.9114140 -12.13465 -2.1330000 1.00000 0.00000 % O shel 0.7471920 0.8794269 -12.90289 -2.1330000 1.00000 0.00000 % O shel 0.6832180 0.9434009 -11.36642 -2.1330000 1.00000 0.00000 % O shel 0.4483479 0.4250329 -3.801901 -2.1330000 1.00000 0.00000 % O shel 0.3843739 0.4890070 -2.265427 -2.1330000 1.00000 0.00000 % O shel 0.7962170 0.4570200 -3.033664 -2.1330000 1.00000 0.00000 % O shel 0.7413279 0.6320530 -6.835567 -2.1330000 1.00000 0.00000 % O shel 0.6773539 0.6960280 -5.299091 -2.1330000 1.00000 0.00000 % O shel 0.0891970 0.6640400 -6.067329 -2.1330000 1.00000 0.00000 % O shel 0.0972580 0.5293609 -5.299091 -2.1330000 1.00000 0.00000 % O shel 0.7493890 0.4973740 -6.067329 -2.1330000 1.00000 0.00000 % O shel 0.1612320 0.4653860 -6.835567 -2.1330000 1.00000 0.00000 % O shel 0.7639239 0.8626939 -5.299089 -2.1330000 1.00000 0.00000 % O shel 0.8278990 0.7987200 -6.835566 -2.1330000 1.00000 0.00000 % O shel 0.4160550 0.8307070 -6.067326 -2.1330000 1.00000 0.00000 % O shel 0.0343079 0.8390730 -9.869230 -2.1330000 1.00000 0.00000 % O shel 0.3821770 0.8710600 -9.100992 -2.1330000 1.00000 0.00000 % O shel 0.9703339 0.9030480 -8.332755 -2.1330000 1.00000 0.00000 % O shel 0.4709450 0.6556739 -2.265427 -2.1330000 1.00000 0.00000 % O shel 0.1230759 0.6236870 -3.033664 -2.1330000 1.00000 0.00000 % O shel 0.5349190 0.5917000 -3.801901 -2.1330000 1.00000 0.00000 % O shel 0.1150149 0.7583660 -3.801901 -2.1330000 1.00000 0.00000 % O shel 0.0510400 0.8223409 -2.265426 -2.1330000 1.00000 0.00000 % O shel 0.4628840 0.7903529 -3.033664 -2.1330000 1.00000 0.00000 % O shel 0.4079949 0.9653869 -6.835566 -2.1330000 1.00000 0.00000 % O shel 0.7558640 0.9973740 -6.067327 -2.1330000 1.00000 0.00000 % O shel 0.3440200 0.0293609 -5.299090 -2.1330000 1.00000 0.00000 % O shel 0.1376109 0.9890070 -2.265425 -2.1330000 1.00000 0.00000 % O shel 0.2015860 0.9250329 -3.801901 -2.1330000 1.00000 0.00000 % O shel 0.7897420 0.9570200 -3.033661 -2.1330000 1.00000 0.00000 % sfractional region 2 Ca core 0.8438379 0.1561610 -24.26932 2.00000000 1.00000 0.00000 C core 0.4271720 0.0728279 -24.26931 1.34353899 1.00000 0.00000 O core 0.5215850 0.1047410 -23.50285 1.01848700 1.00000 0.00000 O core 0.5854119 0.0409140 -25.03578 1.01848700 1.00000 0.00000 O core 0.1745180 0.0728279 -24.26931 1.01848700 1.00000 0.00000 O core 0.8731120 0.0005609 -22.00212 1.01848700 1.00000 0.00000 C core 0.9675250 0.0324740 -21.23565 1.34353899 1.00000 0.00000 O core 0.8092849 0.0643879 -20.46918 1.01848700 1.00000 0.00000 O core 0.2201790 0.0324740 -21.23565 1.01848700 1.00000 0.00000 Ca core 0.6771720 0.3228279 -24.26931 2.00000000 1.00000 0.00000 C core 0.8008579 0.1991410 -21.23565 1.34353899 1.00000 0.00000 O core 0.8952720 0.2310549 -20.46918 1.01848700 1.00000 0.00000 O core 0.9590990 0.1672279 -22.00212 1.01848700 1.00000 0.00000 O core 0.5482040 0.1991410 -21.23565 1.01848700 1.00000 0.00000 Ca core 0.9245450 0.0754540 -18.20199 2.00000000 1.00000 0.00000 Ca core 0.2175250 0.2824749 -21.23565 2.00000000 1.00000 0.00000 C core 0.2605050 0.2394949 -24.26932 1.34353899 1.00000 0.00000 O core 0.1660920 0.2075809 -25.03578 1.01848700 1.00000 0.00000 O core 0.5131590 0.2394949 -24.26932 1.01848700 1.00000 0.00000 O core 0.1022649 0.2714079 -23.50285 1.01848700 1.00000 0.00000 O core 0.8411840 0.4061610 -24.26931 1.01848700 1.00000 0.00000 C core 0.0938379 0.4061610 -24.26931 1.34353899 1.00000 0.00000 O core 0.2520790 0.3742479 -25.03578 1.01848700 1.00000 0.00000 O core 0.1882520 0.4380749 -23.50285 1.01848700 1.00000 0.00000 Ca core 0.3841920 0.1158079 -21.23565 2.00000000 1.00000 0.00000 O core 0.2467989 0.1268740 -18.96845 1.01848700 1.00000 0.00000 C core 0.3412120 0.1587879 -18.20199 1.34353899 1.00000 0.00000 O core 0.1829710 0.1907010 -17.43552 1.01848700 1.00000 0.00000 O core 0.5938660 0.1587879 -18.20199 1.01848700 1.00000 0.00000 Ca core 0.4648990 0.0351009 -15.16832 2.00000000 1.00000 0.00000 C core 0.9271720 0.5728279 -24.26931 1.34353899 1.00000 0.00000 O core 0.8327580 0.5409140 -25.03578 1.01848700 1.00000 0.00000 O core 0.7689310 0.6047420 -23.50285 1.01848700 1.00000 0.00000 O core 0.1798260 0.5728279 -24.26931 1.01848700 1.00000 0.00000 Ca core 0.0508590 0.4491410 -21.23565 2.00000000 1.00000 0.00000 Ca core 0.5912120 0.4087879 -18.20198 2.00000000 1.00000 0.00000 C core 0.6341920 0.3658079 -21.23565 1.34353899 1.00000 0.00000 O core 0.5397780 0.3338940 -22.00212 1.01848700 1.00000 0.00000 O core 0.8868460 0.3658079 -21.23565 1.01848700 1.00000 0.00000 O core 0.4759510 0.3977210 -20.46918 1.01848700 1.00000 0.00000 C core 0.1745450 0.3254540 -18.20198 1.34353899 1.00000 0.00000 O core 0.2689590 0.3573679 -17.43551 1.01848700 1.00000 0.00000 O core 0.3327860 0.2935409 -18.96845 1.01848700 1.00000 0.00000 O core 0.9218910 0.3254540 -18.20198 1.01848700 1.00000 0.00000 O core 0.2148710 0.5324740 -21.23565 1.01848700 1.00000 0.00000 C core 0.4675250 0.5324740 -21.23565 1.34353899 1.00000 0.00000 O core 0.6257660 0.5005609 -22.00212 1.01848700 1.00000 0.00000 O core 0.5619390 0.5643879 -20.46918 1.01848700 1.00000 0.00000 Ca core 0.3438379 0.6561610 -24.26931 2.00000000 1.00000 0.00000 Ca core 0.5105050 0.4894949 -24.26931 2.00000000 1.00000 0.00000 Ca core 0.7578790 0.2421209 -18.20199 2.00000000 1.00000 0.00000 C core 0.8815659 0.1184340 -15.16832 1.34353899 1.00000 0.00000 O core 0.9759790 0.1503479 -14.40185 1.01848700 1.00000 0.00000 O core 0.6289119 0.1184340 -15.16832 1.01848700 1.00000 0.00000 O core 0.0398060 0.0865209 -15.93479 1.01848700 1.00000 0.00000 Ca core 0.2982320 0.2017679 -15.16832 2.00000000 1.00000 0.00000 O core 0.6204850 0.2531870 -15.93479 1.01848700 1.00000 0.00000 C core 0.7148990 0.2851009 -15.16832 1.34353899 1.00000 0.00000 O core 0.5566580 0.3170140 -14.40185 1.01848700 1.00000 0.00000 O core 0.9675530 0.2851009 -15.16832 1.01848700 1.00000 0.00000 C core 0.7605050 0.7394949 -24.26931 1.34353899 1.00000 0.00000 O core 0.8549179 0.7714079 -23.50285 1.01848700 1.00000 0.00000 O core 0.5078510 0.7394949 -24.26931 1.01848700 1.00000 0.00000 O core 0.9187460 0.7075809 -25.03578 1.01848700 1.00000 0.00000 Ca core 0.4245450 0.5754540 -18.20198 2.00000000 1.00000 0.00000 Ca core 0.9648990 0.5351010 -15.16832 2.00000000 1.00000 0.00000 Ca core 0.1771720 0.8228279 -24.26931 2.00000000 1.00000 0.00000 C core 0.3008590 0.6991410 -21.23565 1.34353899 1.00000 0.00000 O core 0.2064450 0.6672279 -22.00212 1.01848700 1.00000 0.00000 O core 0.1426180 0.7310549 -20.46918 1.01848700 1.00000 0.00000 O core 0.5535130 0.6991410 -21.23565 1.01848700 1.00000 0.00000 C core 0.5482320 0.4517670 -15.16832 1.34353899 1.00000 0.00000 O core 0.6426460 0.4836810 -14.40185 1.01848700 1.00000 0.00000 O core 0.7064730 0.4198540 -15.93479 1.01848700 1.00000 0.00000 O core 0.2955780 0.4517670 -15.16832 1.01848700 1.00000 0.00000 O core 0.5885580 0.6587879 -18.20198 1.01848700 1.00000 0.00000 C core 0.8412120 0.6587879 -18.20198 1.34353899 1.00000 0.00000 O core 0.9994529 0.6268740 -18.96845 1.01848700 1.00000 0.00000 O core 0.9356259 0.6907010 -17.43551 1.01848700 1.00000 0.00000 O core 0.4994250 0.8742479 -25.03578 1.01848700 1.00000 0.00000 C core 0.5938380 0.9061610 -24.26931 1.34353899 1.00000 0.00000 O core 0.4355980 0.9380749 -23.50285 1.01848700 1.00000 0.00000 O core 0.8464930 0.9061610 -24.26931 1.01848700 1.00000 0.00000 Ca core 0.7175250 0.7824740 -21.23565 2.00000000 1.00000 0.00000 Ca core 0.8841920 0.6158079 -21.23565 2.00000000 1.00000 0.00000 C core 0.0078790 0.4921210 -18.20198 1.34353899 1.00000 0.00000 O core 0.9134650 0.4602070 -18.96845 1.01848700 1.00000 0.00000 O core 0.2605330 0.4921210 -18.20198 1.01848700 1.00000 0.00000 O core 0.8496380 0.5240349 -17.43551 1.01848700 1.00000 0.00000 Ca core 0.1315659 0.3684340 -15.16832 2.00000000 1.00000 0.00000 Ca core 0.7982320 0.7017670 -15.16832 2.00000000 1.00000 0.00000 Ca core 0.5508579 0.9491410 -21.23565 2.00000000 1.00000 0.00000 C core 0.6745450 0.8254540 -18.20199 1.34353899 1.00000 0.00000 O core 0.5801320 0.7935409 -18.96845 1.01848700 1.00000 0.00000 O core 0.5163049 0.8573679 -17.43552 1.01848700 1.00000 0.00000 O core 0.9271989 0.8254540 -18.20199 1.01848700 1.00000 0.00000 Ca core 0.0105050 0.9894949 -24.26931 2.00000000 1.00000 0.00000 C core 0.1341920 0.8658079 -21.23565 1.34353899 1.00000 0.00000 O core 0.2286050 0.8977210 -20.46918 1.01848700 1.00000 0.00000 O core 0.8815380 0.8658079 -21.23565 1.01848700 1.00000 0.00000 O core 0.2924319 0.8338940 -22.00212 1.01848700 1.00000 0.00000 C core 0.3815659 0.6184340 -15.16832 1.34353899 1.00000 0.00000 O core 0.2871520 0.5865209 -15.93479 1.01848700 1.00000 0.00000 O core 0.6342200 0.6184340 -15.16832 1.01848700 1.00000 0.00000 O core 0.2233250 0.6503480 -14.40185 1.01848700 1.00000 0.00000 O core 0.9622449 0.7851010 -15.16832 1.01848700 1.00000 0.00000 C core 0.2148990 0.7851010 -15.16832 1.34353899 1.00000 0.00000 O core 0.3731400 0.7531870 -15.93479 1.01848700 1.00000 0.00000 O core 0.3093129 0.8170140 -14.40185 1.01848700 1.00000 0.00000 Ca core 0.0912120 0.9087879 -18.20198 2.00000000 1.00000 0.00000 Ca core 0.2578790 0.7421210 -18.20199 2.00000000 1.00000 0.00000 C core 0.5078790 0.9921210 -18.20199 1.34353899 1.00000 0.00000 O core 0.6022920 0.0240349 -17.43552 1.01848700 1.00000 0.00000 O core 0.2552249 0.9921210 -18.20199 1.01848700 1.00000 0.00000 O core 0.6661190 0.9602070 -18.96845 1.01848700 1.00000 0.00000 C core 0.0482320 0.9517679 -15.16832 1.34353899 1.00000 0.00000 O core 0.9538189 0.9198540 -15.93479 1.01848700 1.00000 0.00000 O core 0.8899919 0.9836810 -14.40185 1.01848700 1.00000 0.00000 O core 0.3008860 0.9517679 -15.16832 1.01848700 1.00000 0.00000 Ca core 0.6315659 0.8684340 -15.16832 2.00000000 1.00000 0.00000 O shel 0.5218030 0.1048150 -23.50108 -2.1330000 1.00000 0.00000 O shel 0.5857779 0.0408410 -25.03755 -2.1330000 1.00000 0.00000 O shel 0.1739339 0.0728279 -24.26931 -2.1330000 1.00000 0.00000 O shel 0.8728940 0.0004869 -22.00389 -2.1330000 1.00000 0.00000 O shel 0.8089189 0.0644620 -20.46741 -2.1330000 1.00000 0.00000 O shel 0.2207629 0.0324740 -21.23565 -2.1330000 1.00000 0.00000 O shel 0.8954900 0.2311280 -20.46741 -2.1330000 1.00000 0.00000 O shel 0.9594649 0.1671540 -22.00389 -2.1330000 1.00000 0.00000 O shel 0.5476209 0.1991410 -21.23565 -2.1330000 1.00000 0.00000 O shel 0.1658729 0.2075069 -25.03755 -2.1330000 1.00000 0.00000 O shel 0.5137429 0.2394949 -24.26932 -2.1330000 1.00000 0.00000 O shel 0.1018989 0.2714820 -23.50108 -2.1330000 1.00000 0.00000 O shel 0.8406009 0.4061610 -24.26931 -2.1330000 1.00000 0.00000 O shel 0.2524440 0.3741740 -25.03755 -2.1330000 1.00000 0.00000 O shel 0.1884700 0.4381489 -23.50108 -2.1330000 1.00000 0.00000 O shel 0.2465810 0.1268000 -18.97022 -2.1330000 1.00000 0.00000 O shel 0.1826059 0.1907750 -17.43375 -2.1330000 1.00000 0.00000 O shel 0.5944500 0.1587879 -18.20199 -2.1330000 1.00000 0.00000 O shel 0.8325400 0.5408410 -25.03755 -2.1330000 1.00000 0.00000 O shel 0.7685660 0.6048150 -23.50108 -2.1330000 1.00000 0.00000 O shel 0.1804090 0.5728279 -24.26931 -2.1330000 1.00000 0.00000 O shel 0.5395600 0.3338210 -22.00389 -2.1330000 1.00000 0.00000 O shel 0.8874290 0.3658079 -21.23565 -2.1330000 1.00000 0.00000 O shel 0.4755859 0.3977950 -20.46741 -2.1330000 1.00000 0.00000 O shel 0.2691769 0.3574420 -17.43375 -2.1330000 1.00000 0.00000 O shel 0.3331510 0.2934669 -18.97022 -2.1330000 1.00000 0.00000 O shel 0.9213079 0.3254540 -18.20198 -2.1330000 1.00000 0.00000 O shel 0.2142879 0.5324740 -21.23565 -2.1330000 1.00000 0.00000 O shel 0.6261310 0.5004869 -22.00389 -2.1330000 1.00000 0.00000 O shel 0.5621569 0.5644620 -20.46741 -2.1330000 1.00000 0.00000 O shel 0.9761969 0.1504209 -14.40008 -2.1330000 1.00000 0.00000 O shel 0.6283279 0.1184340 -15.16832 -2.1330000 1.00000 0.00000 O shel 0.0401720 0.0864469 -15.93656 -2.1330000 1.00000 0.00000 O shel 0.6202670 0.2531140 -15.93656 -2.1330000 1.00000 0.00000 O shel 0.5562930 0.3170880 -14.40008 -2.1330000 1.00000 0.00000 O shel 0.9681359 0.2851009 -15.16832 -2.1330000 1.00000 0.00000 O shel 0.8551369 0.7714820 -23.50108 -2.1330000 1.00000 0.00000 O shel 0.5072679 0.7394949 -24.26931 -2.1330000 1.00000 0.00000 O shel 0.9191110 0.7075069 -25.03755 -2.1330000 1.00000 0.00000 O shel 0.2062270 0.6671540 -22.00389 -2.1330000 1.00000 0.00000 O shel 0.1422530 0.7311280 -20.46741 -2.1330000 1.00000 0.00000 O shel 0.5540959 0.6991410 -21.23565 -2.1330000 1.00000 0.00000 O shel 0.6428639 0.4837550 -14.40008 -2.1330000 1.00000 0.00000 O shel 0.7068379 0.4197800 -15.93656 -2.1330000 1.00000 0.00000 O shel 0.2949950 0.4517670 -15.16832 -2.1330000 1.00000 0.00000 O shel 0.5879750 0.6587879 -18.20198 -2.1330000 1.00000 0.00000 O shel 0.9998179 0.6268000 -18.97022 -2.1330000 1.00000 0.00000 O shel 0.9358439 0.6907750 -17.43375 -2.1330000 1.00000 0.00000 O shel 0.4992070 0.8741740 -25.03755 -2.1330000 1.00000 0.00000 O shel 0.4352319 0.9381489 -23.50108 -2.1330000 1.00000 0.00000 O shel 0.8470759 0.9061610 -24.26931 -2.1330000 1.00000 0.00000 O shel 0.9132470 0.4601340 -18.97022 -2.1330000 1.00000 0.00000 O shel 0.2611159 0.4921210 -18.20198 -2.1330000 1.00000 0.00000 O shel 0.8492730 0.5241080 -17.43375 -2.1330000 1.00000 0.00000 O shel 0.5799140 0.7934669 -18.97022 -2.1330000 1.00000 0.00000 O shel 0.5159389 0.8574420 -17.43375 -2.1330000 1.00000 0.00000 O shel 0.9277829 0.8254540 -18.20199 -2.1330000 1.00000 0.00000 O shel 0.2288239 0.8977950 -20.46741 -2.1330000 1.00000 0.00000 O shel 0.8809539 0.8658079 -21.23565 -2.1330000 1.00000 0.00000 O shel 0.2927979 0.8338210 -22.00389 -2.1330000 1.00000 0.00000 O shel 0.2869340 0.5864469 -15.93656 -2.1330000 1.00000 0.00000 O shel 0.6348029 0.6184340 -15.16832 -2.1330000 1.00000 0.00000 O shel 0.2229600 0.6504209 -14.40008 -2.1330000 1.00000 0.00000 O shel 0.9616609 0.7851010 -15.16832 -2.1330000 1.00000 0.00000 O shel 0.3735049 0.7531140 -15.93656 -2.1330000 1.00000 0.00000 O shel 0.3095309 0.8170880 -14.40008 -2.1330000 1.00000 0.00000 O shel 0.6025109 0.0241080 -17.43375 -2.1330000 1.00000 0.00000 O shel 0.2546409 0.9921210 -18.20199 -2.1330000 1.00000 0.00000 O shel 0.6664849 0.9601340 -18.97022 -2.1330000 1.00000 0.00000 O shel 0.9536010 0.9197800 -15.93656 -2.1330000 1.00000 0.00000 O shel 0.8896259 0.9837550 -14.40008 -2.1330000 1.00000 0.00000 O shel 0.3014700 0.9517679 -15.16832 -2.1330000 1.00000 0.00000 sbulkenergy -1023.04303000 species 11 Cd core 2.000000 Mn core 2.000000 Mg core 2.000000 Zn core 2.000000 Ni core 2.000000 Co core 2.000000 Fe core 2.000000 Ca core 2.000000 C core 1.343539 O core 1.018487 O shel -2.133000 buck intra O core O core 4030.30000 0.245497 0.0000000 0.000 2.500 buck Ca core O shel 2154.06000 0.289118 0.0000000 0.000 10.000 buck inter O shel O shel 64727.5050 0.198914 21.84357 0.000 15.000 buck Cd core O shel 4329.81000 0.256300 0.0000000 0.000 10.000 buck Mg core O shel 1039.58460 0.289329 0.0000000 0.000 10.000 buck Co core O shel 1095.59850 0.286300 0.0000000 0.000 10.000 buck Fe core O shel 2152.98610 0.265068 0.0000000 0.000 10.000 buck Mn core O shel 2000.93570 0.272681 0.0000000 0.000 10.000 buck Ni core O shel 1634.46190 0.266612 0.0000000 0.000 10.000 buck Zn core O shel 1029.39000 0.289100 0.0000000 0.000 10.000 morse intra bond C core O core 5.0000000 2.5228 1.19820 0.0000 spring O 52.739130 10000.000 three bond intra C core O core O core 1.7765 120.00 outofplane bond intra C cor O cor O cor O cor 8.8279 element covalent 25 0.0000 covalent 26 0.0000 covalent 27 0.0000 covalent 28 0.0000 covalent 30 0.0000 covalent 48 0.0000 end dump calcite_104_0.0000.res gdis-0.90/models/urea_conp.castep0000644000175000017500000114207710051676644015512 0ustar seansean +-------------------------------------------------+ | | | CCC AA SSS TTTTT EEEEE PPPP | | C A A S T E P P | | C AAAA SS T EEE PPPP | | C A A S T E P | | CCC A A SSS T EEEEE P | | | +-------------------------------------------------+ | | | Welcome to Materials Studio CASTEP version 3.0 | | Ab Initio Total Energy Program | | | | Authors: | | M. Segall, M. Probert, C. Pickard, P. Hasnip | | S. Clark, K. Refson, M. Payne | | | | Contributors: | | P. Lindan, P. Haynes, J. White, V. Milman | | N. Govind, M. Gibson, P. Tulip, V. Cocula | | B. Montanari | | | | Copyright (c) 2000,2001,2002,2003 | | | | Please cite | | | | "First-principles simulation: ideas, | | illustrations and the CASTEP code", | | | | J. Phys.: Cond. Matt. 14(11) pp.2717-2743 (2002)| | | | M. D. Segall, P. L. D. Lindan, M. J. Probert, | | C. J. Pickard, P. J. Hasnip, S. J. Clark, | | M. C. Payne | | | | in all publications arising from | | your use of CASTEP | | | +-------------------------------------------------+ License checkout of MS_castep successful Number of licenses checked out 1 Pseudo atomic calculation performed for H 1s1 Converged in 22 iterations to a total energy of -12.472095 eV Pseudo atomic calculation performed for C 2s2 2p2 Converged in 34 iterations to a total energy of -146.441546 eV Pseudo atomic calculation performed for N 2s2 2p3 Converged in 30 iterations to a total energy of -263.680177 eV Pseudo atomic calculation performed for O 2s2 2p4 Converged in 36 iterations to a total energy of -431.041234 eV Calculation parallelised over 1 nodes. K-points are distributed over 1 groups, each containing 1 nodes. ************************************ Title ************************************ CASTEP calculation from Materials Studio ***************************** General Parameters ****************************** output verbosity : normal (1) write checkpoint data to : urea.check type of calculation : geometry optimization stress calculation : on unlimited duration calculation timing information : on output length unit : A output mass unit : amu output time unit : ps output charge unit : e output energy unit : eV output force unit : eV/A output velocity unit : A/ps output pressure unit : GPa output inv_length unit : 1/A output frequency unit : cm-1 output force constant unit : eV/A**2 output volume unit : A**3 wavefunctions paging : none random number generator seed : randomised (181149251) data distribution : optimal for this architecture optimization strategy : balance speed and memory *********************** Exchange-Correlation Parameters *********************** using functional : Perdew Burke Ernzerhof ************************* Pseudopotential Parameters ************************** pseudopotential representation : reciprocal space representation : reciprocal space **************************** Basis Set Parameters ***************************** plane wave basis set cut-off : 600.0000 eV size of standard grid : 1.7500 size of fine grid : 21.9610 1/A finite basis set correction : automatic number of sample energies : 3 sample spacing : 5.0000 eV **************************** Electronic Parameters **************************** number of electrons : 48 net charge of system : 0 net spin of system : 0 number of up spins : 24 number of down spins : 24 treating system as non-spin-polarized number of bands : 28 ********************* Electronic Minimization Parameters ********************** Method: Treating system as metallic with density mixing treatment of electrons, and number of SD steps : 1 and number of CG steps : 4 total energy / atom convergence tol. : 0.5000E-06 eV eigen-energy convergence tolerance : 0.2857E-06 eV convergence tolerance window : 3 cycles max. number of SCF cycles : 100 number of fixed-spin iterations : 10 smearing scheme : Gaussian smearing width : 0.1000 eV Fermi energy convergence tolerance : 0.2857E-07 eV ************************** Density Mixing Parameters ************************** density-mixing scheme : Pulay max. length of mixing history : 20 charge density mixing amplitude : 0.5000 cut-off energy for mixing : 600.0 eV charge density mixing g-vector : 1.500 1/A ********************** Geometry Optimization Parameters *********************** optimization method : BFGS variable cell method : fixed basis quality max. number of steps : 100 estimated bulk modulus : 500.0 GPa estimated : 1668. cm-1 total energy convergence tolerance : 0.5000E-05 eV/atom max ionic |force| tolerance : 0.1000E-01 eV/A max ionic |displacement| tolerance : 0.5000E-03 A max |stress component| tolerance : 0.2000E-01 GPa convergence tolerance window : 2 steps backup results every : 5 steps ******************************************************************************* ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.5760000 0.0000000 0.0000000 1.1268266 0.0000000 0.0000000 0.0000000 5.5760000 0.0000000 0.0000000 1.1268266 0.0000000 0.0000000 0.0000000 4.6860000 0.0000000 0.0000000 1.3408419 Lattice parameters(A) Cell Angles a = 5.576000 alpha = 90.000000 b = 5.576000 beta = 90.000000 c = 4.686000 gamma = 90.000000 Current cell volume = 145.696062 A**3 ------------------------------- Cell Contents ------------------------------- Total number of ions in cell = 16 Total number of species in cell = 4 Max number of any one species = 8 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.262000 0.762000 0.291001 x x H 2 0.129000 0.629000 -0.042000 x x H 3 -0.262000 -0.762000 0.291001 x x H 4 -0.129000 -0.629000 -0.042000 x x H 5 0.762000 -0.262000 -0.291001 x x H 6 0.629000 -0.129000 0.042000 x x H 7 -0.762000 0.262000 -0.291001 x x H 8 -0.629000 0.129000 0.042000 x x C 1 0.000000 0.500000 0.328399 x x C 2 0.500000 0.000000 -0.328399 x x N 1 0.144800 0.644800 0.178700 x x N 2 -0.144800 -0.644800 0.178700 x x N 3 0.644800 -0.144800 -0.178700 x x N 4 -0.644800 0.144800 -0.178700 x x O 1 0.000000 0.500000 0.596601 x x O 2 0.500000 0.000000 -0.596601 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx No user defined ionic velocities ------------------------------- Details of Species ------------------------------- Mass of species in AMU H 1.0080000 C 12.0109997 N 14.0070000 O 15.9989996 Files used for pseudopotentials: H H_00.usp C C_00.usp N N_00.usp O O_00.usp ------------------------------- k-Points For BZ Sampling ------------------------------- Number of kpoints used = 9 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ + Number Fractional coordinates Weight + +-----------------------------------------------------+ + 1 0.375000 0.375000 0.400000 0.1000000 + + 2 0.375000 0.375000 0.200000 0.1000000 + + 3 0.375000 0.375000 0.000000 0.0500000 + + 4 0.375000 0.125000 0.400000 0.2000000 + + 5 0.375000 0.125000 0.200000 0.2000000 + + 6 0.375000 0.125000 0.000000 0.1000000 + + 7 0.125000 0.125000 0.400000 0.1000000 + + 8 0.125000 0.125000 0.200000 0.1000000 + + 9 0.125000 0.125000 0.000000 0.0500000 + +++++++++++++++++++++++++++++++++++++++++++++++++++++++ ------------------------------- Symmetry and Constraints ------------------------------- Number of symmetry operations = 8 Set iprint > 1 for symmetry rotation details Centre of mass is NOT constrained There are no ionic constraints specified or generated for this cell Number of cell constraints= 4 Cell constraints are: 1 1 3 0 0 0 External pressure/stress (GPa) 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 Calculating finite basis set correction with 3 cut-off energies. Calculating total energy with cut-off of 590.000eV. ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -1.31789479E+003 5.49868985E+001 20.89 <-- SCF 1 -2.35604805E+003 9.45342115E-001 6.48845788E+001 95.30 <-- SCF 2 -2.41612863E+003 -3.25284565E+000 3.75503654E+000 174.55 <-- SCF 3 -2.40869143E+003 -8.58103656E-001 -4.64825389E-001 256.38 <-- SCF 4 -2.40834342E+003 -5.94636344E-001 -2.17504079E-002 339.90 <-- SCF 5 -2.40830057E+003 -3.62989618E-001 -2.67804251E-003 437.01 <-- SCF 6 -2.40831275E+003 -2.90813095E-001 7.61453997E-004 504.08 <-- SCF 7 -2.40831889E+003 -2.80313135E-001 3.83695701E-004 559.89 <-- SCF 8 -2.40832101E+003 -2.63354432E-001 1.32284430E-004 608.20 <-- SCF 9 -2.40832108E+003 -2.64343556E-001 4.50904158E-006 645.65 <-- SCF 10 -2.40832108E+003 -2.63268696E-001 -1.42948836E-008 677.15 <-- SCF 11 -2.40832108E+003 -2.63194874E-001 5.31132219E-008 710.94 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.321082510 eV (not corrected for finite basis set) Calculating total energy with cut-off of 595.000eV. ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.40832108E+003 -2.63131728E-001 732.92 <-- SCF 1 -2.40832497E+003 -2.63151704E-001 2.42794032E-004 779.46 <-- SCF 2 -2.40832497E+003 -2.63151716E-001 2.34335250E-008 813.00 <-- SCF 3 -2.40832497E+003 -2.63212684E-001 7.65281613E-008 859.47 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.324969213 eV (not corrected for finite basis set) Calculating total energy with cut-off of 600.000eV. ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.40832497E+003 -2.63280692E-001 882.05 <-- SCF 1 -2.40832888E+003 -2.63306814E-001 2.44614908E-004 924.39 <-- SCF 2 -2.40832888E+003 -2.63306841E-001 2.37234994E-008 955.25 <-- SCF 3 -2.40832889E+003 -2.63258644E-001 8.09647603E-008 985.99 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.328886130 eV (not corrected for finite basis set) For future reference: finite basis dEtot/dlog(Ecut) = -0.480338eV Total energy corrected for finite basis set = -2408.329033 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.82394 -0.82394 -1.09773 * * H 2 0.58254 0.58254 0.65515 * * H 3 0.82394 0.82394 -1.09773 * * H 4 -0.58254 -0.58254 0.65515 * * H 5 -0.82394 0.82394 1.09773 * * H 6 0.58254 -0.58254 -0.65515 * * H 7 0.82394 -0.82394 1.09773 * * H 8 -0.58254 0.58254 -0.65515 * * C 1 0.00000 0.00000 -0.49028 * * C 2 0.00000 0.00000 0.49028 * * N 1 0.41889 0.41889 0.13648 * * N 2 -0.41889 -0.41889 0.13648 * * N 3 0.41889 -0.41889 -0.13648 * * N 4 -0.41889 0.41889 -0.13648 * * O 1 0.00000 0.00000 1.11987 * * O 2 0.00000 0.00000 -1.11987 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x 1.374707 0.000000 0.000000 * * y 0.000000 1.374707 0.000000 * * z 0.000000 0.000000 1.614277 * * * * Pressure: -1.4546 * * * ************************************************* BFGS: finished iteration 0 with enthalpy= -2.40832903E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 0.000000E+000 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 1.600864E+000 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 0.000000E+000 | 5.000000E-004 | A | Yes | <-- BFGS | Smax | 1.614277E+000 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 1 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.009307 | -2408.329033 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 1 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.5708898 0.0000000 0.0000000 1.1278603 0.0000000 0.0000000 0.0000000 5.5708898 0.0000000 0.0000000 1.1278603 0.0000000 0.0000000 0.0000000 4.6809570 0.0000000 0.0000000 1.3422865 Lattice parameters(A) Cell Angles a = 5.570890 alpha = 90.000000 b = 5.570890 beta = 90.000000 c = 4.680957 gamma = 90.000000 Current cell volume = 145.272624 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.260075 0.760075 0.287950 x x H 2 0.130360 0.630360 -0.040179 x x H 3 -0.260075 -0.760075 0.287950 x x H 4 -0.130360 -0.630360 -0.040179 x x H 5 0.760075 -0.260075 -0.287950 x x H 6 0.630360 -0.130360 0.040179 x x H 7 -0.760075 0.260075 -0.287950 x x H 8 -0.630360 0.130360 0.040179 x x C 1 0.000000 0.500000 0.327037 x x C 2 0.500000 0.000000 -0.327037 x x N 1 0.145778 0.645778 0.179079 x x N 2 -0.145778 -0.645778 0.179079 x x N 3 0.645778 -0.145778 -0.179079 x x N 4 -0.645778 0.145778 -0.179079 x x O 1 0.000000 0.500000 0.599713 x x O 2 0.500000 0.000000 -0.599713 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29101190E+003 -3.23747390E+000 1040.87 <-- SCF 1 -2.41669626E+003 -3.35844011E+000 7.85527239E+000 1115.38 <-- SCF 2 -2.41669744E+003 -3.35844101E+000 7.35744358E-005 1177.12 <-- SCF 3 -2.40887397E+003 -9.21463185E-001 -4.88966326E-001 1255.54 <-- SCF 4 -2.40851458E+003 -6.61875021E-001 -2.24623790E-002 1331.77 <-- SCF 5 -2.40846814E+003 -4.35208540E-001 -2.90249826E-003 1406.79 <-- SCF 6 -2.40847993E+003 -3.59384475E-001 7.37209113E-004 1476.83 <-- SCF 7 -2.40848666E+003 -3.48024667E-001 4.20561344E-004 1537.50 <-- SCF 8 -2.40848885E+003 -3.31224789E-001 1.36558969E-004 1591.88 <-- SCF 9 -2.40848892E+003 -3.32025393E-001 4.56263329E-006 1629.13 <-- SCF 10 -2.40848892E+003 -3.31042056E-001 -4.07482948E-008 1663.31 <-- SCF 11 -2.40848892E+003 -3.30955684E-001 5.15397276E-008 1708.45 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.488918798 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.19441 -0.19441 -0.52256 * * H 2 0.54347 0.54347 0.29878 * * H 3 0.19441 0.19441 -0.52256 * * H 4 -0.54347 -0.54347 0.29878 * * H 5 -0.19441 0.19441 0.52256 * * H 6 0.54347 -0.54347 -0.29878 * * H 7 0.19441 -0.19441 0.52256 * * H 8 -0.54347 0.54347 -0.29878 * * C 1 0.00000 0.00000 0.74096 * * C 2 0.00000 0.00000 -0.74096 * * N 1 -0.36197 -0.36197 -0.08866 * * N 2 0.36197 0.36197 -0.08866 * * N 3 -0.36197 0.36197 0.08866 * * N 4 0.36197 -0.36197 0.08866 * * O 1 0.00000 0.00000 -0.07971 * * O 2 0.00000 0.00000 0.07971 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x 0.085329 0.000000 0.000000 * * y 0.000000 0.085329 0.000000 * * z 0.000000 0.000000 2.040741 * * * * Pressure: -0.7371 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.009307 | -2408.329033 | <-- min BFGS | trial step | 1.000000 | 0.002338 | -2408.489005 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 1 with enthalpy= -2.40848900E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 9.998233E-003 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 8.246116E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 2.082662E-002 | 5.000000E-004 | A | No | <-- BFGS | Smax | 2.040741E+000 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 2 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.005273 | -2408.489005 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 2 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.5680023 0.0000000 0.0000000 1.1284452 0.0000000 0.0000000 0.0000000 5.5680023 0.0000000 0.0000000 1.1284452 0.0000000 0.0000000 0.0000000 4.6700267 0.0000000 0.0000000 1.3454281 Lattice parameters(A) Cell Angles a = 5.568002 alpha = 90.000000 b = 5.568002 beta = 90.000000 c = 4.670027 gamma = 90.000000 Current cell volume = 144.783203 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258542 0.758542 0.284542 x x H 2 0.132710 0.632710 -0.038194 x x H 3 -0.258542 -0.758542 0.284542 x x H 4 -0.132710 -0.632710 -0.038194 x x H 5 0.758542 -0.258542 -0.284542 x x H 6 0.632710 -0.132710 0.038194 x x H 7 -0.758542 0.258542 -0.284542 x x H 8 -0.632710 0.132710 0.038194 x x C 1 0.000000 0.500000 0.329127 x x C 2 0.500000 0.000000 -0.329127 x x N 1 0.145122 0.645122 0.178933 x x N 2 -0.145122 -0.645122 0.178933 x x N 3 0.645122 -0.145122 -0.178933 x x N 4 -0.645122 0.145122 -0.178933 x x O 1 0.000000 0.500000 0.600918 x x O 2 0.500000 0.000000 -0.600918 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.28924680E+003 -3.30339205E+000 1767.42 <-- SCF 1 -2.41709483E+003 -3.42737656E+000 7.99050196E+000 1842.99 <-- SCF 2 -2.41709617E+003 -3.42737742E+000 8.37282839E-005 1904.20 <-- SCF 3 -2.40899638E+003 -9.38206945E-001 -5.06237108E-001 1984.75 <-- SCF 4 -2.40861280E+003 -6.61797680E-001 -2.39735585E-002 2067.12 <-- SCF 5 -2.40856091E+003 -4.32491391E-001 -3.24298020E-003 2151.73 <-- SCF 6 -2.40857275E+003 -3.56375105E-001 7.40058010E-004 2241.21 <-- SCF 7 -2.40857979E+003 -3.44254198E-001 4.39937037E-004 2298.41 <-- SCF 8 -2.40858203E+003 -3.27181561E-001 1.40191610E-004 2346.56 <-- SCF 9 -2.40858211E+003 -3.27947420E-001 4.74720206E-006 2380.03 <-- SCF 10 -2.40858211E+003 -3.26996047E-001 -5.60649527E-008 2410.35 <-- SCF 11 -2.40858211E+003 -3.26895564E-001 5.35600987E-008 2443.20 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.582110060 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.13952 0.13952 -0.16493 * * H 2 0.36435 0.36435 -0.26244 * * H 3 -0.13952 -0.13952 -0.16493 * * H 4 -0.36435 -0.36435 -0.26244 * * H 5 0.13952 -0.13952 0.16493 * * H 6 0.36435 -0.36435 0.26244 * * H 7 -0.13952 0.13952 0.16493 * * H 8 -0.36435 0.36435 0.26244 * * C 1 0.00000 0.00000 0.27209 * * C 2 0.00000 0.00000 -0.27209 * * N 1 -0.42605 -0.42605 0.24875 * * N 2 0.42605 0.42605 0.24875 * * N 3 -0.42605 0.42605 -0.24875 * * N 4 0.42605 -0.42605 -0.24875 * * O 1 0.00000 0.00000 0.08813 * * O 2 0.00000 0.00000 -0.08813 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -1.433020 0.000000 0.000000 * * y 0.000000 -1.433020 0.000000 * * z 0.000000 0.000000 -1.902544 * * * * Pressure: 1.5895 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.005273 | -2408.489005 | <-- min BFGS | trial step | 1.000000 | 0.001546 | -2408.582188 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 2 with enthalpy= -2.40858219E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 5.823927E-003 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 6.518466E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 2.069545E-002 | 5.000000E-004 | A | No | <-- BFGS | Smax | 1.902544E+000 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 3 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.003075 | -2408.582188 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 3 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.5728873 0.0000000 0.0000000 1.1274560 0.0000000 0.0000000 0.0000000 5.5728873 0.0000000 0.0000000 1.1274560 0.0000000 0.0000000 0.0000000 4.6726129 0.0000000 0.0000000 1.3446835 Lattice parameters(A) Cell Angles a = 5.572887 alpha = 90.000000 b = 5.572887 beta = 90.000000 c = 4.672613 gamma = 90.000000 Current cell volume = 145.117676 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.257839 0.757839 0.281663 x x H 2 0.135238 0.635238 -0.037909 x x H 3 -0.257839 -0.757839 0.281663 x x H 4 -0.135238 -0.635238 -0.037909 x x H 5 0.757839 -0.257839 -0.281663 x x H 6 0.635238 -0.135238 0.037909 x x H 7 -0.757839 0.257839 -0.281663 x x H 8 -0.635238 0.135238 0.037909 x x C 1 0.000000 0.500000 0.330634 x x C 2 0.500000 0.000000 -0.330634 x x N 1 0.143735 0.643735 0.179959 x x N 2 -0.143735 -0.643735 0.179959 x x N 3 0.643735 -0.143735 -0.179959 x x N 4 -0.643735 0.143735 -0.179959 x x O 1 0.000000 0.500000 0.602636 x x O 2 0.500000 0.000000 -0.602636 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29254962E+003 -3.33725610E+000 2500.73 <-- SCF 1 -2.41724211E+003 -3.47444052E+000 7.79328069E+000 2585.14 <-- SCF 2 -2.41724345E+003 -3.47444149E+000 8.36723544E-005 2652.67 <-- SCF 3 -2.40905755E+003 -9.71845034E-001 -5.11618609E-001 2747.92 <-- SCF 4 -2.40866836E+003 -6.86043108E-001 -2.43246106E-002 2823.16 <-- SCF 5 -2.40861429E+003 -4.59646910E-001 -3.37901136E-003 2898.21 <-- SCF 6 -2.40862591E+003 -3.82211562E-001 7.25914815E-004 2969.70 <-- SCF 7 -2.40863316E+003 -3.69475736E-001 4.53453715E-004 3030.71 <-- SCF 8 -2.40863547E+003 -3.52391177E-001 1.44217670E-004 3084.84 <-- SCF 9 -2.40863555E+003 -3.53124069E-001 5.01217990E-006 3122.31 <-- SCF 10 -2.40863555E+003 -3.52164886E-001 -5.44932227E-008 3156.29 <-- SCF 11 -2.40863555E+003 -3.52059964E-001 5.53201260E-008 3204.77 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.635552055 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.19142 0.19142 0.02692 * * H 2 0.18610 0.18610 -0.15477 * * H 3 -0.19142 -0.19142 0.02692 * * H 4 -0.18610 -0.18610 -0.15477 * * H 5 0.19142 -0.19142 -0.02692 * * H 6 0.18610 -0.18610 0.15477 * * H 7 -0.19142 0.19142 -0.02692 * * H 8 -0.18610 0.18610 0.15477 * * C 1 0.00000 0.00000 0.39256 * * C 2 0.00000 0.00000 -0.39256 * * N 1 -0.02604 -0.02604 -0.04821 * * N 2 0.02604 0.02604 -0.04821 * * N 3 -0.02604 0.02604 0.04821 * * N 4 0.02604 -0.02604 0.04821 * * O 1 0.00000 0.00000 -0.05014 * * O 2 0.00000 0.00000 0.05014 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -2.556279 0.000000 0.000000 * * y 0.000000 -2.556279 0.000000 * * z 0.000000 0.000000 -1.544007 * * * * Pressure: 2.2189 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.003075 | -2408.582188 | <-- min BFGS | trial step | 1.000000 | 0.000844 | -2408.635660 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 3 with enthalpy= -2.40863566E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 3.342002E-003 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 3.925641E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 1.997023E-002 | 5.000000E-004 | A | No | <-- BFGS | Smax | 2.556279E+000 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 4 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.001294 | -2408.635660 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 4 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.5867241 0.0000000 0.0000000 1.1246636 0.0000000 0.0000000 0.0000000 5.5867241 0.0000000 0.0000000 1.1246636 0.0000000 0.0000000 0.0000000 4.6787250 0.0000000 0.0000000 1.3429268 Lattice parameters(A) Cell Angles a = 5.586724 alpha = 90.000000 b = 5.586724 beta = 90.000000 c = 4.678725 gamma = 90.000000 Current cell volume = 146.029959 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.257883 0.757883 0.280209 x x H 2 0.136999 0.636999 -0.038046 x x H 3 -0.257883 -0.757883 0.280209 x x H 4 -0.136999 -0.636999 -0.038046 x x H 5 0.757883 -0.257883 -0.280209 x x H 6 0.636999 -0.136999 0.038046 x x H 7 -0.757883 0.257883 -0.280209 x x H 8 -0.636999 0.136999 0.038046 x x C 1 0.000000 0.500000 0.332612 x x C 2 0.500000 0.000000 -0.332612 x x N 1 0.143267 0.643267 0.180148 x x N 2 -0.143267 -0.643267 0.180148 x x N 3 0.643267 -0.143267 -0.180148 x x N 4 -0.643267 0.143267 -0.180148 x x O 1 0.000000 0.500000 0.603472 x x O 2 0.500000 0.000000 -0.603472 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29597737E+003 -3.34345814E+000 3259.46 <-- SCF 1 -2.41722727E+003 -3.48186741E+000 7.57811870E+000 3335.24 <-- SCF 2 -2.41722833E+003 -3.48186838E+000 6.61367476E-005 3395.67 <-- SCF 3 -2.40907739E+003 -9.79091033E-001 -5.09433373E-001 3476.28 <-- SCF 4 -2.40869189E+003 -7.00177469E-001 -2.40939402E-002 3557.52 <-- SCF 5 -2.40863763E+003 -4.72136164E-001 -3.39097759E-003 3641.38 <-- SCF 6 -2.40864922E+003 -3.94710298E-001 7.24195317E-004 3730.57 <-- SCF 7 -2.40865646E+003 -3.82100301E-001 4.52461034E-004 3787.84 <-- SCF 8 -2.40865877E+003 -3.64868177E-001 1.44473056E-004 3837.02 <-- SCF 9 -2.40865885E+003 -3.65684021E-001 5.17804421E-006 3870.86 <-- SCF 10 -2.40865885E+003 -3.64669034E-001 -5.38127326E-008 3901.72 <-- SCF 11 -2.40865885E+003 -3.64558083E-001 5.83603137E-008 3934.50 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.658853576 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.10282 0.10282 0.03869 * * H 2 0.07451 0.07451 -0.03692 * * H 3 -0.10282 -0.10282 0.03869 * * H 4 -0.07451 -0.07451 -0.03692 * * H 5 0.10282 -0.10282 -0.03869 * * H 6 0.07451 -0.07451 0.03692 * * H 7 -0.10282 0.10282 -0.03869 * * H 8 -0.07451 0.07451 0.03692 * * C 1 0.00000 0.00000 -0.09734 * * C 2 0.00000 0.00000 0.09734 * * N 1 0.09314 0.09314 0.05569 * * N 2 -0.09314 -0.09314 0.05569 * * N 3 0.09314 -0.09314 -0.05569 * * N 4 -0.09314 0.09314 -0.05569 * * O 1 0.00000 0.00000 0.00498 * * O 2 0.00000 0.00000 -0.00498 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -2.012158 0.000000 0.000000 * * y 0.000000 -2.012158 0.000000 * * z 0.000000 0.000000 -0.623906 * * * * Pressure: 1.5494 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.001294 | -2408.635660 | <-- min BFGS | trial step | 1.000000 | 0.000420 | -2408.658881 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 4 with enthalpy= -2.40865888E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 1.451347E-003 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 1.504653E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 1.392704E-002 | 5.000000E-004 | A | No | <-- BFGS | Smax | 2.012158E+000 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 5 ... ================================================================================ Writing model to urea.check +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000548 | -2408.658881 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 5 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6020004 0.0000000 0.0000000 1.1215967 0.0000000 0.0000000 0.0000000 5.6020004 0.0000000 0.0000000 1.1215967 0.0000000 0.0000000 0.0000000 4.6829406 0.0000000 0.0000000 1.3417179 Lattice parameters(A) Cell Angles a = 5.602000 alpha = 90.000000 b = 5.602000 beta = 90.000000 c = 4.682941 gamma = 90.000000 Current cell volume = 146.961953 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258155 0.758155 0.279601 x x H 2 0.138066 0.638066 -0.038140 x x H 3 -0.258155 -0.758155 0.279601 x x H 4 -0.138066 -0.638066 -0.038140 x x H 5 0.758155 -0.258155 -0.279601 x x H 6 0.638066 -0.138066 0.038140 x x H 7 -0.758155 0.258155 -0.279601 x x H 8 -0.638066 0.138066 0.038140 x x C 1 0.000000 0.500000 0.333077 x x C 2 0.500000 0.000000 -0.333077 x x N 1 0.143265 0.643265 0.180490 x x N 2 -0.143265 -0.643265 0.180490 x x N 3 0.643265 -0.143265 -0.180490 x x N 4 -0.643265 0.143265 -0.180490 x x O 1 0.000000 0.500000 0.603836 x x O 2 0.500000 0.000000 -0.603836 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29667550E+003 -3.35950708E+000 3993.65 <-- SCF 1 -2.41717166E+003 -3.49741758E+000 7.53101034E+000 4078.51 <-- SCF 2 -2.41717264E+003 -3.49741858E+000 6.14210301E-005 4161.88 <-- SCF 3 -2.40908242E+003 -1.00384024E+000 -5.05639297E-001 4238.89 <-- SCF 4 -2.40870210E+003 -7.32106151E-001 -2.37699851E-002 4316.51 <-- SCF 5 -2.40864810E+003 -5.04120463E-001 -3.37463643E-003 4391.21 <-- SCF 6 -2.40865961E+003 -4.26226989E-001 7.19096763E-004 4456.98 <-- SCF 7 -2.40866686E+003 -4.13678692E-001 4.53244384E-004 4514.56 <-- SCF 8 -2.40866917E+003 -3.96414811E-001 1.44277483E-004 4565.76 <-- SCF 9 -2.40866925E+003 -3.97252004E-001 5.22070941E-006 4600.34 <-- SCF 10 -2.40866925E+003 -3.96220665E-001 -5.59143343E-008 4630.50 <-- SCF 11 -2.40866925E+003 -3.96104838E-001 5.95435341E-008 4660.86 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.669251058 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.02199 0.02199 0.04433 * * H 2 0.02609 0.02609 0.08163 * * H 3 -0.02199 -0.02199 0.04433 * * H 4 -0.02609 -0.02609 0.08163 * * H 5 0.02199 -0.02199 -0.04433 * * H 6 0.02609 -0.02609 -0.08163 * * H 7 -0.02199 0.02199 -0.04433 * * H 8 -0.02609 0.02609 -0.08163 * * C 1 0.00000 0.00000 -0.19077 * * C 2 0.00000 0.00000 0.19077 * * N 1 0.09107 0.09107 0.02522 * * N 2 -0.09107 -0.09107 0.02522 * * N 3 0.09107 -0.09107 -0.02522 * * N 4 -0.09107 0.09107 -0.02522 * * O 1 0.00000 0.00000 -0.07761 * * O 2 0.00000 0.00000 0.07761 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -1.249902 0.000000 0.000000 * * y 0.000000 -1.249902 0.000000 * * z 0.000000 0.000000 0.441324 * * * * Pressure: 0.6862 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000548 | -2408.658881 | <-- min BFGS | trial step | 1.000000 | 0.000214 | -2408.669259 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 5 with line minimization (lambda= 1.638726) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6117578 0.0000000 0.0000000 1.1196466 0.0000000 0.0000000 0.0000000 5.6117578 0.0000000 0.0000000 1.1196466 0.0000000 0.0000000 0.0000000 4.6856332 0.0000000 0.0000000 1.3409469 Lattice parameters(A) Cell Angles a = 5.611758 alpha = 90.000000 b = 5.611758 beta = 90.000000 c = 4.685633 gamma = 90.000000 Current cell volume = 147.559141 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258330 0.758330 0.279213 x x H 2 0.138748 0.638748 -0.038199 x x H 3 -0.258330 -0.758330 0.279213 x x H 4 -0.138748 -0.638748 -0.038199 x x H 5 0.758330 -0.258330 -0.279213 x x H 6 0.638748 -0.138748 0.038199 x x H 7 -0.758330 0.258330 -0.279213 x x H 8 -0.638748 0.138748 0.038199 x x C 1 0.000000 0.500000 0.333374 x x C 2 0.500000 0.000000 -0.333374 x x N 1 0.143263 0.643263 0.180709 x x N 2 -0.143263 -0.643263 0.180709 x x N 3 0.643263 -0.143263 -0.180709 x x N 4 -0.643263 0.143263 -0.180709 x x O 1 0.000000 0.500000 0.604069 x x O 2 0.500000 0.000000 -0.604069 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29478686E+003 -3.37412765E+000 4715.00 <-- SCF 1 -2.41713158E+003 -3.50709534E+000 7.64654471E+000 4795.69 <-- SCF 2 -2.41713252E+003 -3.50709633E+000 5.88200394E-005 4860.72 <-- SCF 3 -2.40908072E+003 -1.01939681E+000 -5.03237305E-001 4945.34 <-- SCF 4 -2.40870372E+003 -7.52281106E-001 -2.35628110E-002 5045.17 <-- SCF 5 -2.40865004E+003 -5.24303811E-001 -3.35451475E-003 5121.46 <-- SCF 6 -2.40866150E+003 -4.46134821E-001 7.15954274E-004 5188.13 <-- SCF 7 -2.40866876E+003 -4.33644621E-001 4.53649195E-004 5244.95 <-- SCF 8 -2.40867107E+003 -4.16351451E-001 1.44288810E-004 5299.06 <-- SCF 9 -2.40867115E+003 -4.17215914E-001 5.24110389E-006 5334.97 <-- SCF 10 -2.40867115E+003 -4.16164843E-001 -5.77906849E-008 5369.01 <-- SCF 11 -2.40867115E+003 -4.16044208E-001 6.04814435E-008 5403.05 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.671149298 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.02950 -0.02950 0.04848 * * H 2 -0.00510 -0.00510 0.15731 * * H 3 0.02950 0.02950 0.04848 * * H 4 0.00510 0.00510 0.15731 * * H 5 -0.02950 0.02950 -0.04848 * * H 6 -0.00510 0.00510 -0.15731 * * H 7 0.02950 -0.02950 -0.04848 * * H 8 0.00510 -0.00510 -0.15731 * * C 1 0.00000 0.00000 -0.25302 * * C 2 0.00000 0.00000 0.25302 * * N 1 0.09158 0.09158 0.00416 * * N 2 -0.09158 -0.09158 0.00416 * * N 3 0.09158 -0.09158 -0.00416 * * N 4 -0.09158 0.09158 -0.00416 * * O 1 0.00000 0.00000 -0.13033 * * O 2 0.00000 0.00000 0.13033 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.771109 0.000000 0.000000 * * y 0.000000 -0.771109 0.000000 * * z 0.000000 0.000000 1.111896 * * * * Pressure: 0.1434 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000548 | -2408.658881 | <-- min BFGS | trial step | 1.000000 | 0.000214 | -2408.669259 | <-- min BFGS | line step | 1.638726 | -0.000001 | -2408.671107 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 5 with enthalpy= -2.40867111E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 7.641427E-004 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 2.530172E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 1.390070E-002 | 5.000000E-004 | A | No | <-- BFGS | Smax | 1.111896E+000 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 6 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000213 | -2408.671107 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 6 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6177325 0.0000000 0.0000000 1.1184558 0.0000000 0.0000000 0.0000000 5.6177325 0.0000000 0.0000000 1.1184558 0.0000000 0.0000000 0.0000000 4.6834641 0.0000000 0.0000000 1.3415679 Lattice parameters(A) Cell Angles a = 5.617732 alpha = 90.000000 b = 5.617732 beta = 90.000000 c = 4.683464 gamma = 90.000000 Current cell volume = 147.805060 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258442 0.758442 0.279486 x x H 2 0.138788 0.638788 -0.037920 x x H 3 -0.258442 -0.758442 0.279486 x x H 4 -0.138788 -0.638788 -0.037920 x x H 5 0.758442 -0.258442 -0.279486 x x H 6 0.638788 -0.138788 0.037920 x x H 7 -0.758442 0.258442 -0.279486 x x H 8 -0.638788 0.138788 0.037920 x x C 1 0.000000 0.500000 0.332752 x x C 2 0.500000 0.000000 -0.332752 x x N 1 0.143471 0.643471 0.180758 x x N 2 -0.143471 -0.643471 0.180758 x x N 3 0.643471 -0.143471 -0.180758 x x N 4 -0.643471 0.143471 -0.180758 x x O 1 0.000000 0.500000 0.603602 x x O 2 0.500000 0.000000 -0.603602 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29250197E+003 -3.39271872E+000 5463.99 <-- SCF 1 -2.41714090E+003 -3.52263312E+000 7.78993259E+000 5561.16 <-- SCF 2 -2.41714184E+003 -3.52263407E+000 5.91507715E-005 5621.57 <-- SCF 3 -2.40908610E+003 -1.03683798E+000 -5.03483995E-001 5697.77 <-- SCF 4 -2.40870819E+003 -7.69767336E-001 -2.36193214E-002 5779.89 <-- SCF 5 -2.40865458E+003 -5.41785635E-001 -3.35080480E-003 5862.77 <-- SCF 6 -2.40866604E+003 -4.63528701E-001 7.16361743E-004 5938.48 <-- SCF 7 -2.40867331E+003 -4.51035827E-001 4.54257926E-004 6019.28 <-- SCF 8 -2.40867561E+003 -4.33740974E-001 1.44103999E-004 6070.27 <-- SCF 9 -2.40867570E+003 -4.34608187E-001 5.24642319E-006 6104.57 <-- SCF 10 -2.40867569E+003 -4.33562131E-001 -5.99711485E-008 6135.31 <-- SCF 11 -2.40867570E+003 -4.33437610E-001 6.02606395E-008 6165.48 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.675695545 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.04872 -0.04872 0.04525 * * H 2 0.00893 0.00893 0.08686 * * H 3 0.04872 0.04872 0.04525 * * H 4 -0.00893 -0.00893 0.08686 * * H 5 -0.04872 0.04872 -0.04525 * * H 6 0.00893 -0.00893 -0.08686 * * H 7 0.04872 -0.04872 -0.04525 * * H 8 -0.00893 0.00893 -0.08686 * * C 1 0.00000 0.00000 -0.16864 * * C 2 0.00000 0.00000 0.16864 * * N 1 0.03735 0.03735 0.02775 * * N 2 -0.03735 -0.03735 0.02775 * * N 3 0.03735 -0.03735 -0.02775 * * N 4 -0.03735 0.03735 -0.02775 * * O 1 0.00000 0.00000 -0.10776 * * O 2 0.00000 0.00000 0.10776 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.462869 0.000000 0.000000 * * y 0.000000 -0.462869 0.000000 * * z 0.000000 0.000000 0.627786 * * * * Pressure: 0.0993 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000213 | -2408.671107 | <-- min BFGS | trial step | 1.000000 | 0.000127 | -2408.675713 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 6 with line minimization (lambda= 2.477042) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6265573 0.0000000 0.0000000 1.1167015 0.0000000 0.0000000 0.0000000 5.6265573 0.0000000 0.0000000 1.1167015 0.0000000 0.0000000 0.0000000 4.6802603 0.0000000 0.0000000 1.3424863 Lattice parameters(A) Cell Angles a = 5.626557 alpha = 90.000000 b = 5.626557 beta = 90.000000 c = 4.680260 gamma = 90.000000 Current cell volume = 148.168370 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258608 0.758608 0.279888 x x H 2 0.138846 0.638846 -0.037507 x x H 3 -0.258608 -0.758608 0.279888 x x H 4 -0.138846 -0.638846 -0.037507 x x H 5 0.758608 -0.258608 -0.279888 x x H 6 0.638846 -0.138846 0.037507 x x H 7 -0.758608 0.258608 -0.279888 x x H 8 -0.638846 0.138846 0.037507 x x C 1 0.000000 0.500000 0.331833 x x C 2 0.500000 0.000000 -0.331833 x x N 1 0.143779 0.643779 0.180831 x x N 2 -0.143779 -0.643779 0.180831 x x N 3 0.643779 -0.143779 -0.180831 x x N 4 -0.643779 0.143779 -0.180831 x x O 1 0.000000 0.500000 0.602911 x x O 2 0.500000 0.000000 -0.602911 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29353954E+003 -3.41361456E+000 6221.49 <-- SCF 1 -2.41715086E+003 -3.54533689E+000 7.72570700E+000 6300.11 <-- SCF 2 -2.41715183E+003 -3.54533782E+000 6.07669300E-005 6367.91 <-- SCF 3 -2.40908999E+003 -1.06209631E+000 -5.03865156E-001 6452.43 <-- SCF 4 -2.40871066E+003 -7.95200174E-001 -2.37079761E-002 6546.69 <-- SCF 5 -2.40865718E+003 -5.67220640E-001 -3.34242172E-003 6624.74 <-- SCF 6 -2.40866871E+003 -4.88896061E-001 7.20925723E-004 6690.36 <-- SCF 7 -2.40867599E+003 -4.76419382E-001 4.54630161E-004 6747.01 <-- SCF 8 -2.40867829E+003 -4.59097127E-001 1.43870595E-004 6795.66 <-- SCF 9 -2.40867838E+003 -4.60000801E-001 5.25882309E-006 6829.90 <-- SCF 10 -2.40867837E+003 -4.58938429E-001 -6.59855680E-008 6861.09 <-- SCF 11 -2.40867837E+003 -4.58802244E-001 6.05579854E-008 6892.62 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.678374915 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.07685 -0.07685 0.04041 * * H 2 0.02974 0.02974 -0.01836 * * H 3 0.07685 0.07685 0.04041 * * H 4 -0.02974 -0.02974 -0.01836 * * H 5 -0.07685 0.07685 -0.04041 * * H 6 0.02974 -0.02974 0.01836 * * H 7 0.07685 -0.07685 -0.04041 * * H 8 -0.02974 0.02974 0.01836 * * C 1 0.00000 0.00000 -0.07203 * * C 2 0.00000 0.00000 0.07203 * * N 1 -0.04239 -0.04239 0.06384 * * N 2 0.04239 0.04239 0.06384 * * N 3 -0.04239 0.04239 -0.06384 * * N 4 0.04239 -0.04239 -0.06384 * * O 1 0.00000 0.00000 -0.07456 * * O 2 0.00000 0.00000 0.07456 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.011172 0.000000 0.000000 * * y 0.000000 -0.011172 0.000000 * * z 0.000000 0.000000 -0.084308 * * * * Pressure: 0.0356 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000213 | -2408.671107 | <-- min BFGS | trial step | 1.000000 | 0.000127 | -2408.675713 | <-- min BFGS | line step | 2.477042 | 0.000006 | -2408.678348 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 6 with enthalpy= -2.40867835E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 4.525458E-004 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 1.159543E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 7.210773E-003 | 5.000000E-004 | A | No | <-- BFGS | Smax | 8.430766E-002 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 7 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000062 | -2408.678348 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 7 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6296118 0.0000000 0.0000000 1.1160957 0.0000000 0.0000000 0.0000000 5.6296118 0.0000000 0.0000000 1.1160957 0.0000000 0.0000000 0.0000000 4.6799217 0.0000000 0.0000000 1.3425834 Lattice parameters(A) Cell Angles a = 5.629612 alpha = 90.000000 b = 5.629612 beta = 90.000000 c = 4.679922 gamma = 90.000000 Current cell volume = 148.318552 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258426 0.758426 0.279927 x x H 2 0.139095 0.639095 -0.037418 x x H 3 -0.258426 -0.758426 0.279927 x x H 4 -0.139095 -0.639095 -0.037418 x x H 5 0.758426 -0.258426 -0.279927 x x H 6 0.639095 -0.139095 0.037418 x x H 7 -0.758426 0.258426 -0.279927 x x H 8 -0.639095 0.139095 0.037418 x x C 1 0.000000 0.500000 0.331566 x x C 2 0.500000 0.000000 -0.331566 x x N 1 0.143726 0.643726 0.181037 x x N 2 -0.143726 -0.643726 0.181037 x x N 3 0.643726 -0.143726 -0.181037 x x N 4 -0.643726 0.143726 -0.181037 x x O 1 0.000000 0.500000 0.602626 x x O 2 0.500000 0.000000 -0.602626 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29168636E+003 -3.43194562E+000 6947.67 <-- SCF 1 -2.41717148E+003 -3.55981050E+000 7.84281974E+000 7024.30 <-- SCF 2 -2.41717247E+003 -3.55981147E+000 6.20463955E-005 7085.21 <-- SCF 3 -2.40909266E+003 -1.07602658E+000 -5.04987967E-001 7165.63 <-- SCF 4 -2.40871220E+003 -8.07195533E-001 -2.37786583E-002 7249.19 <-- SCF 5 -2.40865854E+003 -5.79646020E-001 -3.35414824E-003 7334.15 <-- SCF 6 -2.40867007E+003 -5.01116909E-001 7.20579591E-004 7422.25 <-- SCF 7 -2.40867737E+003 -4.88548205E-001 4.56612175E-004 7480.46 <-- SCF 8 -2.40867968E+003 -4.71237910E-001 1.44129864E-004 7530.76 <-- SCF 9 -2.40867976E+003 -4.72142709E-001 5.28785442E-006 7565.67 <-- SCF 10 -2.40867976E+003 -4.71079057E-001 -6.75657812E-008 7596.63 <-- SCF 11 -2.40867976E+003 -4.70939857E-001 6.11050892E-008 7630.77 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.679763606 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.05792 -0.05792 0.06916 * * H 2 0.02302 0.02302 -0.00349 * * H 3 0.05792 0.05792 0.06916 * * H 4 -0.02302 -0.02302 -0.00349 * * H 5 -0.05792 0.05792 -0.06916 * * H 6 0.02302 -0.02302 0.00349 * * H 7 0.05792 -0.05792 -0.06916 * * H 8 -0.02302 0.02302 0.00349 * * C 1 0.00000 0.00000 -0.01145 * * C 2 0.00000 0.00000 0.01145 * * N 1 -0.03777 -0.03777 -0.02915 * * N 2 0.03777 0.03777 -0.02915 * * N 3 -0.03777 0.03777 0.02915 * * N 4 0.03777 -0.03777 0.02915 * * O 1 0.00000 0.00000 -0.04044 * * O 2 0.00000 0.00000 0.04044 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.097814 0.000000 0.000000 * * y 0.000000 -0.097814 0.000000 * * z 0.000000 0.000000 -0.273824 * * * * Pressure: 0.1565 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000062 | -2408.678348 | <-- min BFGS | trial step | 1.000000 | 0.000036 | -2408.679673 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 7 with line minimization (lambda= 2.346044) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6337232 0.0000000 0.0000000 1.1152812 0.0000000 0.0000000 0.0000000 5.6337232 0.0000000 0.0000000 1.1152812 0.0000000 0.0000000 0.0000000 4.6794659 0.0000000 0.0000000 1.3427142 Lattice parameters(A) Cell Angles a = 5.633723 alpha = 90.000000 b = 5.633723 beta = 90.000000 c = 4.679466 gamma = 90.000000 Current cell volume = 148.520805 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258181 0.758181 0.279980 x x H 2 0.139430 0.639430 -0.037298 x x H 3 -0.258181 -0.758181 0.279980 x x H 4 -0.139430 -0.639430 -0.037298 x x H 5 0.758181 -0.258181 -0.279980 x x H 6 0.639430 -0.139430 0.037298 x x H 7 -0.758181 0.258181 -0.279980 x x H 8 -0.639430 0.139430 0.037298 x x C 1 0.000000 0.500000 0.331205 x x C 2 0.500000 0.000000 -0.331205 x x N 1 0.143654 0.643654 0.181314 x x N 2 -0.143654 -0.643654 0.181314 x x N 3 0.643654 -0.143654 -0.181314 x x N 4 -0.643654 0.143654 -0.181314 x x O 1 0.000000 0.500000 0.602244 x x O 2 0.500000 0.000000 -0.602244 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29198903E+003 -3.45041169E+000 7687.12 <-- SCF 1 -2.41719813E+003 -3.57926102E+000 7.82556833E+000 7772.97 <-- SCF 2 -2.41719914E+003 -3.57926199E+000 6.34934419E-005 7841.77 <-- SCF 3 -2.40909782E+003 -1.09485265E+000 -5.06332581E-001 7934.61 <-- SCF 4 -2.40871367E+003 -8.23337917E-001 -2.40096589E-002 8012.06 <-- SCF 5 -2.40865913E+003 -5.96348850E-001 -3.40852420E-003 8089.66 <-- SCF 6 -2.40867064E+003 -5.17529304E-001 7.19621965E-004 8159.57 <-- SCF 7 -2.40867799E+003 -5.04824610E-001 4.59322345E-004 8222.48 <-- SCF 8 -2.40868030E+003 -4.87547704E-001 1.44270688E-004 8278.36 <-- SCF 9 -2.40868039E+003 -4.88426328E-001 5.32605242E-006 8317.47 <-- SCF 10 -2.40868039E+003 -4.87373106E-001 -6.87113470E-008 8357.04 <-- SCF 11 -2.40868039E+003 -4.87236858E-001 6.20584665E-008 8396.20 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.680386994 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.03217 -0.03217 0.10806 * * H 2 0.01388 0.01388 0.01675 * * H 3 0.03217 0.03217 0.10806 * * H 4 -0.01388 -0.01388 0.01675 * * H 5 -0.03217 0.03217 -0.10806 * * H 6 0.01388 -0.01388 -0.01675 * * H 7 0.03217 -0.03217 -0.10806 * * H 8 -0.01388 0.01388 -0.01675 * * C 1 0.00000 0.00000 0.07430 * * C 2 0.00000 0.00000 -0.07430 * * N 1 -0.03137 -0.03137 -0.15481 * * N 2 0.03137 0.03137 -0.15481 * * N 3 -0.03137 0.03137 0.15481 * * N 4 0.03137 -0.03137 0.15481 * * O 1 0.00000 0.00000 0.00566 * * O 2 0.00000 0.00000 -0.00566 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.216211 0.000000 0.000000 * * y 0.000000 -0.216211 0.000000 * * z 0.000000 0.000000 -0.527452 * * * * Pressure: 0.3200 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000062 | -2408.678348 | <-- min BFGS | trial step | 1.000000 | 0.000036 | -2408.679673 | <-- min BFGS | line step | 2.346044 | -0.000001 | -2408.680313 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 7 with enthalpy= -2.40868031E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 1.227930E-004 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 1.610382E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 4.754618E-003 | 5.000000E-004 | A | No | <-- BFGS | Smax | 5.274516E-001 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 8 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000083 | -2408.680313 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 8 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6378437 0.0000000 0.0000000 1.1144660 0.0000000 0.0000000 0.0000000 5.6378437 0.0000000 0.0000000 1.1144660 0.0000000 0.0000000 0.0000000 4.6808971 0.0000000 0.0000000 1.3423037 Lattice parameters(A) Cell Angles a = 5.637844 alpha = 90.000000 b = 5.637844 beta = 90.000000 c = 4.680897 gamma = 90.000000 Current cell volume = 148.783631 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.257873 0.757873 0.280378 x x H 2 0.139710 0.639710 -0.037176 x x H 3 -0.257873 -0.757873 0.280378 x x H 4 -0.139710 -0.639710 -0.037176 x x H 5 0.757873 -0.257873 -0.280378 x x H 6 0.639710 -0.139710 0.037176 x x H 7 -0.757873 0.257873 -0.280378 x x H 8 -0.639710 0.139710 0.037176 x x C 1 0.000000 0.500000 0.330939 x x C 2 0.500000 0.000000 -0.330939 x x N 1 0.143529 0.643529 0.181185 x x N 2 -0.143529 -0.643529 0.181185 x x N 3 0.643529 -0.143529 -0.181185 x x N 4 -0.643529 0.143529 -0.181185 x x O 1 0.000000 0.500000 0.601928 x x O 2 0.500000 0.000000 -0.601928 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29215442E+003 -3.46510614E+000 8451.82 <-- SCF 1 -2.41721336E+003 -3.59477995E+000 7.81618417E+000 8528.20 <-- SCF 2 -2.41721439E+003 -3.59478094E+000 6.40962042E-005 8591.01 <-- SCF 3 -2.40910115E+003 -1.10912453E+000 -5.07077682E-001 8670.86 <-- SCF 4 -2.40871585E+003 -8.36433127E-001 -2.40808045E-002 8756.44 <-- SCF 5 -2.40866108E+003 -6.09600303E-001 -3.42356822E-003 8842.30 <-- SCF 6 -2.40867259E+003 -5.30467687E-001 7.19463235E-004 8929.30 <-- SCF 7 -2.40867999E+003 -5.17655670E-001 4.62367664E-004 8987.65 <-- SCF 8 -2.40868230E+003 -5.00354458E-001 1.44868091E-004 9037.49 <-- SCF 9 -2.40868239E+003 -5.01233378E-001 5.35828674E-006 9072.85 <-- SCF 10 -2.40868239E+003 -5.00176897E-001 -7.19583451E-008 9104.88 <-- SCF 11 -2.40868239E+003 -5.00042595E-001 6.28252867E-008 9137.39 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.682389380 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.04317 -0.04317 0.09246 * * H 2 0.00458 0.00458 -0.02257 * * H 3 0.04317 0.04317 0.09246 * * H 4 -0.00458 -0.00458 -0.02257 * * H 5 -0.04317 0.04317 -0.09246 * * H 6 0.00458 -0.00458 0.02257 * * H 7 0.04317 -0.04317 -0.09246 * * H 8 -0.00458 0.00458 0.02257 * * C 1 0.00000 0.00000 0.09030 * * C 2 0.00000 0.00000 -0.09030 * * N 1 0.00622 0.00622 -0.10192 * * N 2 -0.00622 -0.00622 -0.10192 * * N 3 0.00622 -0.00622 0.10192 * * N 4 -0.00622 0.00622 0.10192 * * O 1 0.00000 0.00000 -0.00629 * * O 2 0.00000 0.00000 0.00629 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.212792 0.000000 0.000000 * * y 0.000000 -0.212792 0.000000 * * z 0.000000 0.000000 -0.617354 * * * * Pressure: 0.3476 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000083 | -2408.680313 | <-- min BFGS | trial step | 1.000000 | 0.000065 | -2408.682313 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 8 with line minimization (lambda= 4.581294) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6526003 0.0000000 0.0000000 1.1115566 0.0000000 0.0000000 0.0000000 5.6526003 0.0000000 0.0000000 1.1115566 0.0000000 0.0000000 0.0000000 4.6860227 0.0000000 0.0000000 1.3408355 Lattice parameters(A) Cell Angles a = 5.652600 alpha = 90.000000 b = 5.652600 beta = 90.000000 c = 4.686023 gamma = 90.000000 Current cell volume = 149.727284 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.256770 0.756770 0.281803 x x H 2 0.140715 0.640715 -0.036739 x x H 3 -0.256770 -0.756770 0.281803 x x H 4 -0.140715 -0.640715 -0.036739 x x H 5 0.756770 -0.256770 -0.281803 x x H 6 0.640715 -0.140715 0.036739 x x H 7 -0.756770 0.256770 -0.281803 x x H 8 -0.640715 0.140715 0.036739 x x C 1 0.000000 0.500000 0.329984 x x C 2 0.500000 0.000000 -0.329984 x x N 1 0.143083 0.643083 0.180723 x x N 2 -0.143083 -0.643083 0.180723 x x N 3 0.643083 -0.143083 -0.180723 x x N 4 -0.643083 0.143083 -0.180723 x x O 1 0.000000 0.500000 0.600795 x x O 2 0.500000 0.000000 -0.600795 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29802010E+003 -3.50938762E+000 9194.17 <-- SCF 1 -2.41726363E+003 -3.64985059E+000 7.45272087E+000 9279.99 <-- SCF 2 -2.41726476E+003 -3.64985162E+000 7.01408801E-005 9348.41 <-- SCF 3 -2.40911023E+003 -1.15982394E+000 -5.09657699E-001 9441.03 <-- SCF 4 -2.40871922E+003 -8.83017757E-001 -2.44385803E-002 9517.75 <-- SCF 5 -2.40866407E+003 -6.56537455E-001 -3.44687065E-003 9594.44 <-- SCF 6 -2.40867556E+003 -5.76441206E-001 7.18532631E-004 9664.96 <-- SCF 7 -2.40868313E+003 -5.63268181E-001 4.72716979E-004 9728.08 <-- SCF 8 -2.40868547E+003 -5.45862015E-001 1.46708062E-004 9784.30 <-- SCF 9 -2.40868556E+003 -5.46804476E-001 5.46701862E-006 9823.62 <-- SCF 10 -2.40868556E+003 -5.45709641E-001 -8.10978324E-008 9865.90 <-- SCF 11 -2.40868556E+003 -5.45565563E-001 6.52978032E-008 9902.79 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.685560214 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.08340 -0.08340 0.03539 * * H 2 -0.02733 -0.02733 -0.16280 * * H 3 0.08340 0.08340 0.03539 * * H 4 0.02733 0.02733 -0.16280 * * H 5 -0.08340 0.08340 -0.03539 * * H 6 -0.02733 0.02733 0.16280 * * H 7 0.08340 -0.08340 -0.03539 * * H 8 0.02733 -0.02733 0.16280 * * C 1 0.00000 0.00000 0.15998 * * C 2 0.00000 0.00000 -0.15998 * * N 1 0.14074 0.14074 0.08840 * * N 2 -0.14074 -0.14074 0.08840 * * N 3 0.14074 -0.14074 -0.08840 * * N 4 -0.14074 0.14074 -0.08840 * * O 1 0.00000 0.00000 -0.04873 * * O 2 0.00000 0.00000 0.04873 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.204371 0.000000 0.000000 * * y 0.000000 -0.204371 0.000000 * * z 0.000000 0.000000 -0.930857 * * * * Pressure: 0.4465 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000083 | -2408.680313 | <-- min BFGS | trial step | 1.000000 | 0.000065 | -2408.682313 | <-- min BFGS | line step | 4.581294 | 0.000000 | -2408.685465 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 8 with enthalpy= -2.40868546E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 3.219885E-004 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 2.177823E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 1.415146E-002 | 5.000000E-004 | A | No | <-- BFGS | Smax | 9.308572E-001 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 9 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000227 | -2408.685465 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 9 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6624958 0.0000000 0.0000000 1.1096141 0.0000000 0.0000000 0.0000000 5.6624958 0.0000000 0.0000000 1.1096141 0.0000000 0.0000000 0.0000000 4.6925891 0.0000000 0.0000000 1.3389592 Lattice parameters(A) Cell Angles a = 5.662496 alpha = 90.000000 b = 5.662496 beta = 90.000000 c = 4.692589 gamma = 90.000000 Current cell volume = 150.462510 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.255803 0.755803 0.283227 x x H 2 0.141155 0.641155 -0.036934 x x H 3 -0.255803 -0.755803 0.283227 x x H 4 -0.141155 -0.641155 -0.036934 x x H 5 0.755803 -0.255803 -0.283227 x x H 6 0.641155 -0.141155 0.036934 x x H 7 -0.755803 0.255803 -0.283227 x x H 8 -0.641155 0.141155 0.036934 x x C 1 0.000000 0.500000 0.329648 x x C 2 0.500000 0.000000 -0.329648 x x N 1 0.143073 0.643073 0.180542 x x N 2 -0.143073 -0.643073 0.180542 x x N 3 0.643073 -0.143073 -0.180542 x x N 4 -0.643073 0.143073 -0.180542 x x O 1 0.000000 0.500000 0.599646 x x O 2 0.500000 0.000000 -0.599646 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29566463E+003 -3.54244964E+000 9958.96 <-- SCF 1 -2.41727862E+003 -3.67762195E+000 7.60087448E+000 10036.62 <-- SCF 2 -2.41727967E+003 -3.67762359E+000 6.56595413E-005 10096.87 <-- SCF 3 -2.40911529E+003 -1.18683222E+000 -5.10273626E-001 10172.63 <-- SCF 4 -2.40872347E+003 -9.10113706E-001 -2.44888470E-002 10250.01 <-- SCF 5 -2.40866829E+003 -6.82738806E-001 -3.44865680E-003 10328.78 <-- SCF 6 -2.40867986E+003 -6.02277640E-001 7.22897582E-004 10396.42 <-- SCF 7 -2.40868747E+003 -5.89024983E-001 4.75991142E-004 10454.48 <-- SCF 8 -2.40868983E+003 -5.71530338E-001 1.47250016E-004 10508.50 <-- SCF 9 -2.40868991E+003 -5.72547846E-001 5.47072844E-006 10545.22 <-- SCF 10 -2.40868991E+003 -5.71403200E-001 -9.47223043E-008 10579.19 <-- SCF 11 -2.40868991E+003 -5.71256571E-001 6.68205919E-008 10613.14 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.689914526 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.03433 -0.03433 0.02204 * * H 2 -0.02466 -0.02466 -0.08767 * * H 3 0.03433 0.03433 0.02204 * * H 4 0.02466 0.02466 -0.08767 * * H 5 -0.03433 0.03433 -0.02204 * * H 6 -0.02466 0.02466 0.08767 * * H 7 0.03433 -0.03433 -0.02204 * * H 8 0.02466 -0.02466 0.08767 * * C 1 0.00000 0.00000 0.00062 * * C 2 0.00000 0.00000 -0.00062 * * N 1 0.05033 0.05033 0.06252 * * N 2 -0.05033 -0.05033 0.06252 * * N 3 0.05033 -0.05033 -0.06252 * * N 4 -0.05033 0.05033 -0.06252 * * O 1 0.00000 0.00000 0.03774 * * O 2 0.00000 0.00000 -0.03774 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.182371 0.000000 0.000000 * * y 0.000000 -0.182371 0.000000 * * z 0.000000 0.000000 -0.586602 * * * * Pressure: 0.3171 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000227 | -2408.685465 | <-- min BFGS | trial step | 1.000000 | 0.000097 | -2408.689924 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 9 with line minimization (lambda= 1.747636) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6698939 0.0000000 0.0000000 1.1081663 0.0000000 0.0000000 0.0000000 5.6698939 0.0000000 0.0000000 1.1081663 0.0000000 0.0000000 0.0000000 4.6974984 0.0000000 0.0000000 1.3375599 Lattice parameters(A) Cell Angles a = 5.669894 alpha = 90.000000 b = 5.669894 beta = 90.000000 c = 4.697498 gamma = 90.000000 Current cell volume = 151.013754 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.255081 0.755081 0.284291 x x H 2 0.141484 0.641484 -0.037080 x x H 3 -0.255081 -0.755081 0.284291 x x H 4 -0.141484 -0.641484 -0.037080 x x H 5 0.755081 -0.255081 -0.284291 x x H 6 0.641484 -0.141484 0.037080 x x H 7 -0.755081 0.255081 -0.284291 x x H 8 -0.641484 0.141484 0.037080 x x C 1 0.000000 0.500000 0.329397 x x C 2 0.500000 0.000000 -0.329397 x x N 1 0.143065 0.643065 0.180406 x x N 2 -0.143065 -0.643065 0.180406 x x N 3 0.643065 -0.143065 -0.180406 x x N 4 -0.643065 0.143065 -0.180406 x x O 1 0.000000 0.500000 0.598787 x x O 2 0.500000 0.000000 -0.598787 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29415753E+003 -3.56488118E+000 10674.60 <-- SCF 1 -2.41728764E+003 -3.69797289E+000 7.69563175E+000 10774.19 <-- SCF 2 -2.41728866E+003 -3.69797455E+000 6.41811124E-005 10835.71 <-- SCF 3 -2.40911905E+003 -1.20693902E+000 -5.10600666E-001 10911.71 <-- SCF 4 -2.40872604E+003 -9.30396024E-001 -2.45632952E-002 10992.45 <-- SCF 5 -2.40866939E+003 -7.02417454E-001 -3.54068365E-003 11073.60 <-- SCF 6 -2.40868095E+003 -6.21384069E-001 7.22794384E-004 11149.35 <-- SCF 7 -2.40868862E+003 -6.08025193E-001 4.79108027E-004 11214.64 <-- SCF 8 -2.40869098E+003 -5.90493995E-001 1.47568424E-004 11283.41 <-- SCF 9 -2.40869107E+003 -5.91465450E-001 5.53235881E-006 11319.47 <-- SCF 10 -2.40869107E+003 -5.90331530E-001 -9.92638432E-008 11350.67 <-- SCF 11 -2.40869107E+003 -5.90200233E-001 6.87753211E-008 11381.42 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.691068460 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.00136 0.00136 0.01077 * * H 2 -0.02274 -0.02274 -0.03142 * * H 3 -0.00136 -0.00136 0.01077 * * H 4 0.02274 0.02274 -0.03142 * * H 5 0.00136 -0.00136 -0.01077 * * H 6 -0.02274 0.02274 0.03142 * * H 7 -0.00136 0.00136 -0.01077 * * H 8 0.02274 -0.02274 0.03142 * * C 1 0.00000 0.00000 -0.11968 * * C 2 0.00000 0.00000 0.11968 * * N 1 -0.01547 -0.01547 0.04338 * * N 2 0.01547 0.01547 0.04338 * * N 3 -0.01547 0.01547 -0.04338 * * N 4 0.01547 -0.01547 -0.04338 * * O 1 0.00000 0.00000 0.10363 * * O 2 0.00000 0.00000 -0.10363 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.165730 0.000000 0.000000 * * y 0.000000 -0.165730 0.000000 * * z 0.000000 0.000000 -0.335820 * * * * Pressure: 0.2224 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000227 | -2408.685465 | <-- min BFGS | trial step | 1.000000 | 0.000097 | -2408.689924 | <-- min BFGS | line step | 1.747636 | 0.000000 | -2408.690977 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 9 with enthalpy= -2.40869098E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 3.444967E-004 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 1.196782E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 1.789259E-002 | 5.000000E-004 | A | No | <-- BFGS | Smax | 3.358203E-001 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 10 ... ================================================================================ Writing model to urea.check +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000030 | -2408.690977 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 10 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6719400 0.0000000 0.0000000 1.1077665 0.0000000 0.0000000 0.0000000 5.6719400 0.0000000 0.0000000 1.1077665 0.0000000 0.0000000 0.0000000 4.6990388 0.0000000 0.0000000 1.3371214 Lattice parameters(A) Cell Angles a = 5.671940 alpha = 90.000000 b = 5.671940 beta = 90.000000 c = 4.699039 gamma = 90.000000 Current cell volume = 151.172322 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.254976 0.754976 0.284652 x x H 2 0.141415 0.641415 -0.037173 x x H 3 -0.254976 -0.754976 0.284652 x x H 4 -0.141415 -0.641415 -0.037173 x x H 5 0.754976 -0.254976 -0.284652 x x H 6 0.641415 -0.141415 0.037173 x x H 7 -0.754976 0.254976 -0.284652 x x H 8 -0.641415 0.141415 0.037173 x x C 1 0.000000 0.500000 0.329022 x x C 2 0.500000 0.000000 -0.329022 x x N 1 0.143050 0.643050 0.180430 x x N 2 -0.143050 -0.643050 0.180430 x x N 3 0.643050 -0.143050 -0.180430 x x N 4 -0.643050 0.143050 -0.180430 x x O 1 0.000000 0.500000 0.598754 x x O 2 0.500000 0.000000 -0.598754 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29092423E+003 -3.57504414E+000 11437.86 <-- SCF 1 -2.41727129E+003 -3.70376884E+000 7.89669132E+000 11518.44 <-- SCF 2 -2.41727230E+003 -3.70377045E+000 6.31094000E-005 11586.70 <-- SCF 3 -2.40911842E+003 -1.21648527E+000 -5.09617196E-001 11677.06 <-- SCF 4 -2.40872628E+003 -9.40310082E-001 -2.45089041E-002 11762.89 <-- SCF 5 -2.40866976E+003 -7.13047794E-001 -3.53229926E-003 11839.23 <-- SCF 6 -2.40868127E+003 -6.31656799E-001 7.18851324E-004 11906.59 <-- SCF 7 -2.40868895E+003 -6.18247099E-001 4.80448590E-004 11968.53 <-- SCF 8 -2.40869132E+003 -6.00731672E-001 1.47751086E-004 12023.95 <-- SCF 9 -2.40869141E+003 -6.01699100E-001 5.54691742E-006 12063.70 <-- SCF 10 -2.40869140E+003 -6.00568305E-001 -9.87674451E-008 12097.98 <-- SCF 11 -2.40869141E+003 -6.00435757E-001 6.84470396E-008 12132.39 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.691405438 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.00798 -0.00798 -0.00554 * * H 2 -0.01536 -0.01536 0.00349 * * H 3 0.00798 0.00798 -0.00554 * * H 4 0.01536 0.01536 0.00349 * * H 5 -0.00798 0.00798 0.00554 * * H 6 -0.01536 0.01536 -0.00349 * * H 7 0.00798 -0.00798 0.00554 * * H 8 0.01536 -0.01536 -0.00349 * * C 1 0.00000 0.00000 0.02394 * * C 2 0.00000 0.00000 -0.02394 * * N 1 -0.00690 -0.00690 0.00289 * * N 2 0.00690 0.00690 0.00289 * * N 3 -0.00690 0.00690 -0.00289 * * N 4 0.00690 -0.00690 -0.00289 * * O 1 0.00000 0.00000 0.01096 * * O 2 0.00000 0.00000 -0.01096 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.135805 0.000000 0.000000 * * y 0.000000 -0.135805 0.000000 * * z 0.000000 0.000000 0.099081 * * * * Pressure: 0.0575 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000030 | -2408.690977 | <-- min BFGS | trial step | 1.000000 | 0.000001 | -2408.691396 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 10 with enthalpy= -2.40869140E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 2.617931E-005 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 2.393608E-002 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 1.888648E-003 | 5.000000E-004 | A | No | <-- BFGS | Smax | 1.358046E-001 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 11 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000003 | -2408.691396 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 11 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6724453 0.0000000 0.0000000 1.1076679 0.0000000 0.0000000 0.0000000 5.6724453 0.0000000 0.0000000 1.1076679 0.0000000 0.0000000 0.0000000 4.6988513 0.0000000 0.0000000 1.3371748 Lattice parameters(A) Cell Angles a = 5.672445 alpha = 90.000000 b = 5.672445 beta = 90.000000 c = 4.698851 gamma = 90.000000 Current cell volume = 151.193226 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.254958 0.754958 0.284653 x x H 2 0.141358 0.641358 -0.037179 x x H 3 -0.254958 -0.754958 0.284653 x x H 4 -0.141358 -0.641358 -0.037179 x x H 5 0.754958 -0.254958 -0.284653 x x H 6 0.641358 -0.141358 0.037179 x x H 7 -0.754958 0.254958 -0.284653 x x H 8 -0.641358 0.141358 0.037179 x x C 1 0.000000 0.500000 0.329058 x x C 2 0.500000 0.000000 -0.329058 x x N 1 0.143034 0.643034 0.180446 x x N 2 -0.143034 -0.643034 0.180446 x x N 3 0.643034 -0.143034 -0.180446 x x N 4 -0.643034 0.143034 -0.180446 x x O 1 0.000000 0.500000 0.598810 x x O 2 0.500000 0.000000 -0.598810 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29008950E+003 -3.57722237E+000 12208.07 <-- SCF 1 -2.41727038E+003 -3.70434571E+000 7.94880497E+000 12285.44 <-- SCF 2 -2.41727138E+003 -3.70434731E+000 6.25286355E-005 12346.56 <-- SCF 3 -2.40911849E+003 -1.21712483E+000 -5.09555886E-001 12427.36 <-- SCF 4 -2.40872641E+003 -9.40970915E-001 -2.45049916E-002 12510.39 <-- SCF 5 -2.40866989E+003 -7.13672253E-001 -3.53239444E-003 12596.20 <-- SCF 6 -2.40868139E+003 -6.32265080E-001 7.18682244E-004 12687.09 <-- SCF 7 -2.40868907E+003 -6.18851738E-001 4.80458721E-004 12745.97 <-- SCF 8 -2.40869144E+003 -6.01328025E-001 1.47796268E-004 12796.28 <-- SCF 9 -2.40869153E+003 -6.02297932E-001 5.55070302E-006 12831.70 <-- SCF 10 -2.40869153E+003 -6.01165766E-001 -9.90960409E-008 12862.91 <-- SCF 11 -2.40869153E+003 -6.01032947E-001 6.84720057E-008 12896.82 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.691527947 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.00850 -0.00850 -0.00643 * * H 2 -0.01432 -0.01432 0.00606 * * H 3 0.00850 0.00850 -0.00643 * * H 4 0.01432 0.01432 0.00606 * * H 5 -0.00850 0.00850 0.00643 * * H 6 -0.01432 0.01432 -0.00606 * * H 7 0.00850 -0.00850 0.00643 * * H 8 0.01432 -0.01432 -0.00606 * * C 1 0.00000 0.00000 0.02493 * * C 2 0.00000 0.00000 -0.02493 * * N 1 -0.00751 -0.00751 0.00160 * * N 2 0.00751 0.00751 0.00160 * * N 3 -0.00751 0.00751 -0.00160 * * N 4 0.00751 -0.00751 -0.00160 * * O 1 0.00000 0.00000 0.00842 * * O 2 0.00000 0.00000 -0.00842 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.132865 0.000000 0.000000 * * y 0.000000 -0.132865 0.000000 * * z 0.000000 0.000000 0.119919 * * * * Pressure: 0.0486 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000003 | -2408.691396 | <-- min BFGS | trial step | 1.000000 | 0.000003 | -2408.691486 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 11 with line minimization (lambda= 28.546422) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6863658 0.0000000 0.0000000 1.1049562 0.0000000 0.0000000 0.0000000 5.6863658 0.0000000 0.0000000 1.1049562 0.0000000 0.0000000 0.0000000 4.6936849 0.0000000 0.0000000 1.3386466 Lattice parameters(A) Cell Angles a = 5.686366 alpha = 90.000000 b = 5.686366 beta = 90.000000 c = 4.693685 gamma = 90.000000 Current cell volume = 151.769159 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.254460 0.754460 0.284688 x x H 2 0.139782 0.639782 -0.037359 x x H 3 -0.254460 -0.754460 0.284688 x x H 4 -0.139782 -0.639782 -0.037359 x x H 5 0.754460 -0.254460 -0.284688 x x H 6 0.639782 -0.139782 0.037359 x x H 7 -0.754460 0.254460 -0.284688 x x H 8 -0.639782 0.139782 0.037359 x x C 1 0.000000 0.500000 0.330063 x x C 2 0.500000 0.000000 -0.330063 x x N 1 0.142587 0.642587 0.180877 x x N 2 -0.142587 -0.642587 0.180877 x x N 3 0.642587 -0.142587 -0.180877 x x N 4 -0.642587 0.142587 -0.180877 x x O 1 0.000000 0.500000 0.600354 x x O 2 0.500000 0.000000 -0.600354 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29554056E+003 -3.58378706E+000 12954.73 <-- SCF 1 -2.41724283E+003 -3.71989607E+000 7.60639165E+000 13040.91 <-- SCF 2 -2.41724383E+003 -3.71989766E+000 6.25163348E-005 13110.57 <-- SCF 3 -2.40911798E+003 -1.23456359E+000 -5.07865700E-001 13202.80 <-- SCF 4 -2.40872766E+003 -9.59060483E-001 -2.43949765E-002 13281.34 <-- SCF 5 -2.40867111E+003 -7.30671354E-001 -3.53426235E-003 13357.54 <-- SCF 6 -2.40868255E+003 -6.48861260E-001 7.15087533E-004 13424.37 <-- SCF 7 -2.40869024E+003 -6.35359618E-001 4.80338047E-004 13481.78 <-- SCF 8 -2.40869261E+003 -6.17596458E-001 1.48192028E-004 13534.08 <-- SCF 9 -2.40869270E+003 -6.18656750E-001 5.71592043E-006 13570.91 <-- SCF 10 -2.40869270E+003 -6.17478922E-001 -1.02077886E-007 13602.79 <-- SCF 11 -2.40869270E+003 -6.17330823E-001 6.88123957E-008 13633.56 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.692698979 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.02301 -0.02301 -0.03071 * * H 2 0.01513 0.01513 0.07721 * * H 3 0.02301 0.02301 -0.03071 * * H 4 -0.01513 -0.01513 0.07721 * * H 5 -0.02301 0.02301 0.03071 * * H 6 0.01513 -0.01513 -0.07721 * * H 7 0.02301 -0.02301 0.03071 * * H 8 -0.01513 0.01513 -0.07721 * * C 1 0.00000 0.00000 0.05097 * * C 2 0.00000 0.00000 -0.05097 * * N 1 -0.02449 -0.02449 -0.03491 * * N 2 0.02449 0.02449 -0.03491 * * N 3 -0.02449 0.02449 0.03491 * * N 4 0.02449 -0.02449 0.03491 * * O 1 0.00000 0.00000 -0.06029 * * O 2 0.00000 0.00000 0.06029 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.052709 0.000000 0.000000 * * y 0.000000 -0.052709 0.000000 * * z 0.000000 0.000000 0.691919 * * * * Pressure: -0.1955 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000003 | -2408.691396 | <-- min BFGS | trial step | 1.000000 | 0.000003 | -2408.691486 | <-- min BFGS | line step | 28.546422 | 0.000000 | -2408.692621 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 11 with enthalpy= -2.40869262E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 7.657452E-005 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 8.011981E-002 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 1.316147E-002 | 5.000000E-004 | A | No | <-- BFGS | Smax | 6.919186E-001 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 12 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000038 | -2408.692621 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 12 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6865580 0.0000000 0.0000000 1.1049189 0.0000000 0.0000000 0.0000000 5.6865580 0.0000000 0.0000000 1.1049189 0.0000000 0.0000000 0.0000000 4.6915269 0.0000000 0.0000000 1.3392623 Lattice parameters(A) Cell Angles a = 5.686558 alpha = 90.000000 b = 5.686558 beta = 90.000000 c = 4.691527 gamma = 90.000000 Current cell volume = 151.709631 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.254407 0.754407 0.284602 x x H 2 0.139817 0.639817 -0.037145 x x H 3 -0.254407 -0.754407 0.284602 x x H 4 -0.139817 -0.639817 -0.037145 x x H 5 0.754407 -0.254407 -0.284602 x x H 6 0.639817 -0.139817 0.037145 x x H 7 -0.754407 0.254407 -0.284602 x x H 8 -0.639817 0.139817 0.037145 x x C 1 0.000000 0.500000 0.330204 x x C 2 0.500000 0.000000 -0.330204 x x N 1 0.142531 0.642531 0.180780 x x N 2 -0.142531 -0.642531 0.180780 x x N 3 0.642531 -0.142531 -0.180780 x x N 4 -0.642531 0.142531 -0.180780 x x O 1 0.000000 0.500000 0.600187 x x O 2 0.500000 0.000000 -0.600187 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.28990432E+003 -3.59619980E+000 13688.78 <-- SCF 1 -2.41727318E+003 -3.72311203E+000 7.96055361E+000 13769.25 <-- SCF 2 -2.41727415E+003 -3.72311365E+000 6.06932914E-005 13833.90 <-- SCF 3 -2.40911694E+003 -1.23282269E+000 -5.09825903E-001 13920.70 <-- SCF 4 -2.40872666E+003 -9.55488063E-001 -2.43926140E-002 14017.59 <-- SCF 5 -2.40867146E+003 -7.26234420E-001 -3.44942651E-003 14097.51 <-- SCF 6 -2.40868302E+003 -6.45015829E-001 7.22448404E-004 14164.94 <-- SCF 7 -2.40869069E+003 -6.31566794E-001 4.79030894E-004 14223.23 <-- SCF 8 -2.40869305E+003 -6.13724634E-001 1.47707508E-004 14279.44 <-- SCF 9 -2.40869314E+003 -6.14920181E-001 5.71080266E-006 14317.43 <-- SCF 10 -2.40869314E+003 -6.13685102E-001 -1.05383082E-007 14351.94 <-- SCF 11 -2.40869314E+003 -6.13515278E-001 6.81313739E-008 14386.29 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.693142491 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.02471 -0.02471 -0.03052 * * H 2 0.01062 0.01062 -0.00365 * * H 3 0.02471 0.02471 -0.03052 * * H 4 -0.01062 -0.01062 -0.00365 * * H 5 -0.02471 0.02471 0.03052 * * H 6 0.01062 -0.01062 0.00365 * * H 7 0.02471 -0.02471 0.03052 * * H 8 -0.01062 0.01062 0.00365 * * C 1 0.00000 0.00000 -0.05478 * * C 2 0.00000 0.00000 0.05478 * * N 1 -0.00791 -0.00791 0.04600 * * N 2 0.00791 0.00791 0.04600 * * N 3 -0.00791 0.00791 -0.04600 * * N 4 0.00791 -0.00791 -0.04600 * * O 1 0.00000 0.00000 0.04166 * * O 2 0.00000 0.00000 -0.04166 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.092509 0.000000 0.000000 * * y 0.000000 -0.092509 0.000000 * * z 0.000000 0.000000 0.014251 * * * * Pressure: 0.0569 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000038 | -2408.692621 | <-- min BFGS | trial step | 1.000000 | -0.000003 | -2408.693090 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 12 with enthalpy= -2.40869309E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 2.935440E-005 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 5.478386E-002 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 1.042919E-003 | 5.000000E-004 | A | No | <-- BFGS | Smax | 9.250890E-002 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 13 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000012 | -2408.693090 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 13 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6869302 0.0000000 0.0000000 1.1048466 0.0000000 0.0000000 0.0000000 5.6869302 0.0000000 0.0000000 1.1048466 0.0000000 0.0000000 0.0000000 4.6908203 0.0000000 0.0000000 1.3394641 Lattice parameters(A) Cell Angles a = 5.686930 alpha = 90.000000 b = 5.686930 beta = 90.000000 c = 4.690820 gamma = 90.000000 Current cell volume = 151.706641 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.254338 0.754338 0.284498 x x H 2 0.139850 0.639850 -0.037088 x x H 3 -0.254338 -0.754338 0.284498 x x H 4 -0.139850 -0.639850 -0.037088 x x H 5 0.754338 -0.254338 -0.284498 x x H 6 0.639850 -0.139850 0.037088 x x H 7 -0.754338 0.254338 -0.284498 x x H 8 -0.639850 0.139850 0.037088 x x C 1 0.000000 0.500000 0.330106 x x C 2 0.500000 0.000000 -0.330106 x x N 1 0.142497 0.642497 0.180869 x x N 2 -0.142497 -0.642497 0.180869 x x N 3 0.642497 -0.142497 -0.180869 x x N 4 -0.642497 0.142497 -0.180869 x x O 1 0.000000 0.500000 0.600243 x x O 2 0.500000 0.000000 -0.600243 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.28993290E+003 -3.60112496E+000 14448.32 <-- SCF 1 -2.41728355E+003 -3.72857737E+000 7.95941546E+000 14545.08 <-- SCF 2 -2.41728453E+003 -3.72857898E+000 6.14784647E-005 14606.09 <-- SCF 3 -2.40911825E+003 -1.23759153E+000 -5.10393013E-001 14682.39 <-- SCF 4 -2.40872710E+003 -9.59191858E-001 -2.44464851E-002 14764.76 <-- SCF 5 -2.40867170E+003 -7.30231196E-001 -3.46267321E-003 14849.35 <-- SCF 6 -2.40868324E+003 -6.48880480E-001 7.21126152E-004 14924.80 <-- SCF 7 -2.40869092E+003 -6.35369312E-001 4.80442814E-004 15006.06 <-- SCF 8 -2.40869329E+003 -6.17530059E-001 1.47850761E-004 15056.96 <-- SCF 9 -2.40869338E+003 -6.18722661E-001 5.72847592E-006 15092.73 <-- SCF 10 -2.40869338E+003 -6.17489746E-001 -1.04703027E-007 15123.48 <-- SCF 11 -2.40869338E+003 -6.17318944E-001 6.82082783E-008 15154.13 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.693380677 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.00847 -0.00847 -0.00980 * * H 2 0.00830 0.00830 -0.00669 * * H 3 0.00847 0.00847 -0.00980 * * H 4 -0.00830 -0.00830 -0.00669 * * H 5 -0.00847 0.00847 0.00980 * * H 6 0.00830 -0.00830 0.00669 * * H 7 0.00847 -0.00847 0.00980 * * H 8 -0.00830 0.00830 0.00669 * * C 1 0.00000 0.00000 0.01179 * * C 2 0.00000 0.00000 -0.01179 * * N 1 -0.00787 -0.00787 0.00572 * * N 2 0.00787 0.00787 0.00572 * * N 3 -0.00787 0.00787 -0.00572 * * N 4 0.00787 -0.00787 -0.00572 * * O 1 0.00000 0.00000 0.02337 * * O 2 0.00000 0.00000 -0.02337 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.178153 0.000000 0.000000 * * y 0.000000 -0.178153 0.000000 * * z 0.000000 0.000000 -0.049652 * * * * Pressure: 0.1353 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000012 | -2408.693090 | <-- min BFGS | trial step | 1.000000 | 0.000003 | -2408.693297 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 13 with enthalpy= -2.40869330E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 1.291011E-005 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 2.337337E-002 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 7.403615E-004 | 5.000000E-004 | A | No | <-- BFGS | Smax | 1.781526E-001 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 14 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000006 | -2408.693297 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 14 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6879893 0.0000000 0.0000000 1.1046408 0.0000000 0.0000000 0.0000000 5.6879893 0.0000000 0.0000000 1.1046408 0.0000000 0.0000000 0.0000000 4.6905116 0.0000000 0.0000000 1.3395522 Lattice parameters(A) Cell Angles a = 5.687989 alpha = 90.000000 b = 5.687989 beta = 90.000000 c = 4.690512 gamma = 90.000000 Current cell volume = 151.753165 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.254280 0.754280 0.284411 x x H 2 0.139893 0.639893 -0.037067 x x H 3 -0.254280 -0.754280 0.284411 x x H 4 -0.139893 -0.639893 -0.037067 x x H 5 0.754280 -0.254280 -0.284411 x x H 6 0.639893 -0.139893 0.037067 x x H 7 -0.754280 0.254280 -0.284411 x x H 8 -0.639893 0.139893 0.037067 x x C 1 0.000000 0.500000 0.330132 x x C 2 0.500000 0.000000 -0.330132 x x N 1 0.142452 0.642452 0.180912 x x N 2 -0.142452 -0.642452 0.180912 x x N 3 0.642452 -0.142452 -0.180912 x x N 4 -0.642452 0.142452 -0.180912 x x O 1 0.000000 0.500000 0.600333 x x O 2 0.500000 0.000000 -0.600333 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29022742E+003 -3.60428137E+000 15210.70 <-- SCF 1 -2.41728743E+003 -3.73228775E+000 7.94125048E+000 15295.45 <-- SCF 2 -2.41728842E+003 -3.73228938E+000 6.15834751E-005 15363.43 <-- SCF 3 -2.40911884E+003 -1.24089453E+000 -5.10598493E-001 15463.51 <-- SCF 4 -2.40872734E+003 -9.62160225E-001 -2.44688369E-002 15540.79 <-- SCF 5 -2.40867181E+003 -7.33267527E-001 -3.47034816E-003 15616.60 <-- SCF 6 -2.40868334E+003 -6.51826842E-001 7.20416794E-004 15688.43 <-- SCF 7 -2.40869104E+003 -6.38282322E-001 4.81302192E-004 15750.35 <-- SCF 8 -2.40869341E+003 -6.20431198E-001 1.47957618E-004 15806.91 <-- SCF 9 -2.40869350E+003 -6.21626121E-001 5.74838504E-006 15846.25 <-- SCF 10 -2.40869350E+003 -6.20392080E-001 -1.04074620E-007 15880.29 <-- SCF 11 -2.40869350E+003 -6.20220292E-001 6.83866423E-008 15928.40 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.693499616 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.00281 -0.00281 0.00028 * * H 2 0.00409 0.00409 -0.00623 * * H 3 0.00281 0.00281 0.00028 * * H 4 -0.00409 -0.00409 -0.00623 * * H 5 -0.00281 0.00281 -0.00028 * * H 6 0.00409 -0.00409 0.00623 * * H 7 0.00281 -0.00281 -0.00028 * * H 8 -0.00409 0.00409 0.00623 * * C 1 0.00000 0.00000 0.02989 * * C 2 0.00000 0.00000 -0.02989 * * N 1 -0.00469 -0.00469 -0.00749 * * N 2 0.00469 0.00469 -0.00749 * * N 3 -0.00469 0.00469 0.00749 * * N 4 0.00469 -0.00469 0.00749 * * O 1 0.00000 0.00000 0.01083 * * O 2 0.00000 0.00000 -0.01083 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.204844 0.000000 0.000000 * * y 0.000000 -0.204844 0.000000 * * z 0.000000 0.000000 -0.044282 * * * * Pressure: 0.1513 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000006 | -2408.693297 | <-- min BFGS | trial step | 1.000000 | 0.000004 | -2408.693419 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 14 with line minimization (lambda= 2.906595) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6900086 0.0000000 0.0000000 1.1042488 0.0000000 0.0000000 0.0000000 5.6900086 0.0000000 0.0000000 1.1042488 0.0000000 0.0000000 0.0000000 4.6899230 0.0000000 0.0000000 1.3397204 Lattice parameters(A) Cell Angles a = 5.690009 alpha = 90.000000 b = 5.690009 beta = 90.000000 c = 4.689923 gamma = 90.000000 Current cell volume = 151.841877 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.254167 0.754167 0.284245 x x H 2 0.139974 0.639974 -0.037027 x x H 3 -0.254167 -0.754167 0.284245 x x H 4 -0.139974 -0.639974 -0.037027 x x H 5 0.754167 -0.254167 -0.284245 x x H 6 0.639974 -0.139974 0.037027 x x H 7 -0.754167 0.254167 -0.284245 x x H 8 -0.639974 0.139974 0.037027 x x C 1 0.000000 0.500000 0.330181 x x C 2 0.500000 0.000000 -0.330181 x x N 1 0.142368 0.642368 0.180995 x x N 2 -0.142368 -0.642368 0.180995 x x N 3 0.642368 -0.142368 -0.180995 x x N 4 -0.642368 0.142368 -0.180995 x x O 1 0.000000 0.500000 0.600505 x x O 2 0.500000 0.000000 -0.600505 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29061062E+003 -3.61061335E+000 15985.00 <-- SCF 1 -2.41729462E+003 -3.73935578E+000 7.91774969E+000 16061.57 <-- SCF 2 -2.41729561E+003 -3.73935739E+000 6.22816238E-005 16123.08 <-- SCF 3 -2.40911977E+003 -1.24718393E+000 -5.10990507E-001 16203.16 <-- SCF 4 -2.40872758E+003 -9.67807201E-001 -2.45114301E-002 16287.97 <-- SCF 5 -2.40867182E+003 -7.39044613E-001 -3.48503335E-003 16374.18 <-- SCF 6 -2.40868333E+003 -6.57431744E-001 7.19068243E-004 16462.56 <-- SCF 7 -2.40869106E+003 -6.43823657E-001 4.82957742E-004 16521.65 <-- SCF 8 -2.40869343E+003 -6.25949316E-001 1.48158785E-004 16573.82 <-- SCF 9 -2.40869352E+003 -6.27149772E-001 5.78396518E-006 16609.29 <-- SCF 10 -2.40869352E+003 -6.25913195E-001 -1.02683937E-007 16640.29 <-- SCF 11 -2.40869352E+003 -6.25739345E-001 6.87312135E-008 16670.78 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.693518161 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.00803 0.00803 0.01948 * * H 2 -0.00394 -0.00394 -0.00532 * * H 3 -0.00803 -0.00803 0.01948 * * H 4 0.00394 0.00394 -0.00532 * * H 5 0.00803 -0.00803 -0.01948 * * H 6 -0.00394 0.00394 0.00532 * * H 7 -0.00803 0.00803 -0.01948 * * H 8 0.00394 -0.00394 0.00532 * * C 1 0.00000 0.00000 0.06438 * * C 2 0.00000 0.00000 -0.06438 * * N 1 0.00139 0.00139 -0.03273 * * N 2 -0.00139 -0.00139 -0.03273 * * N 3 0.00139 -0.00139 0.03273 * * N 4 -0.00139 0.00139 0.03273 * * O 1 0.00000 0.00000 -0.01302 * * O 2 0.00000 0.00000 0.01302 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.255895 0.000000 0.000000 * * y 0.000000 -0.255895 0.000000 * * z 0.000000 0.000000 -0.034178 * * * * Pressure: 0.1820 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000006 | -2408.693297 | <-- min BFGS | trial step | 1.000000 | 0.000004 | -2408.693419 | <-- min BFGS | line step | 2.906595 | 0.000000 | -2408.693524 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 14 with enthalpy= -2.40869352E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 1.416256E-005 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 6.437630E-002 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 1.817120E-003 | 5.000000E-004 | A | No | <-- BFGS | Smax | 2.558952E-001 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 15 ... ================================================================================ Writing model to urea.check +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000007 | -2408.693524 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 15 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6917544 0.0000000 0.0000000 1.1039101 0.0000000 0.0000000 0.0000000 5.6917544 0.0000000 0.0000000 1.1039101 0.0000000 0.0000000 0.0000000 4.6898938 0.0000000 0.0000000 1.3397287 Lattice parameters(A) Cell Angles a = 5.691754 alpha = 90.000000 b = 5.691754 beta = 90.000000 c = 4.689894 gamma = 90.000000 Current cell volume = 151.934117 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.254125 0.754125 0.284209 x x H 2 0.140002 0.640002 -0.037040 x x H 3 -0.254125 -0.754125 0.284209 x x H 4 -0.140002 -0.640002 -0.037040 x x H 5 0.754125 -0.254125 -0.284209 x x H 6 0.640002 -0.140002 0.037040 x x H 7 -0.754125 0.254125 -0.284209 x x H 8 -0.640002 0.140002 0.037040 x x C 1 0.000000 0.500000 0.330302 x x C 2 0.500000 0.000000 -0.330302 x x N 1 0.142337 0.642337 0.180992 x x N 2 -0.142337 -0.642337 0.180992 x x N 3 0.642337 -0.142337 -0.180992 x x N 4 -0.642337 0.142337 -0.180992 x x O 1 0.000000 0.500000 0.600584 x x O 2 0.500000 0.000000 -0.600584 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29051121E+003 -3.61264910E+000 16727.08 <-- SCF 1 -2.41729252E+003 -3.74118088E+000 7.92383238E+000 16805.67 <-- SCF 2 -2.41729351E+003 -3.74118250E+000 6.13677791E-005 16867.14 <-- SCF 3 -2.40911982E+003 -1.24891442E+000 -5.10855362E-001 16943.12 <-- SCF 4 -2.40872777E+003 -9.69964020E-001 -2.45031338E-002 17022.96 <-- SCF 5 -2.40867199E+003 -7.40989972E-001 -3.48623137E-003 17103.34 <-- SCF 6 -2.40868350E+003 -6.59356179E-001 7.19267866E-004 17177.79 <-- SCF 7 -2.40869123E+003 -6.45751252E-001 4.83082425E-004 17242.94 <-- SCF 8 -2.40869360E+003 -6.27848852E-001 1.48177194E-004 17314.83 <-- SCF 9 -2.40869369E+003 -6.29061340E-001 5.79841941E-006 17351.03 <-- SCF 10 -2.40869369E+003 -6.27818408E-001 -1.03365031E-007 17381.65 <-- SCF 11 -2.40869369E+003 -6.27643084E-001 6.89743493E-008 17412.13 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.693690614 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.00444 0.00444 0.01863 * * H 2 -0.00757 -0.00757 -0.00264 * * H 3 -0.00444 -0.00444 0.01863 * * H 4 0.00757 0.00757 -0.00264 * * H 5 0.00444 -0.00444 -0.01863 * * H 6 -0.00757 0.00757 0.00264 * * H 7 -0.00444 0.00444 -0.01863 * * H 8 0.00757 -0.00757 0.00264 * * C 1 0.00000 0.00000 0.03102 * * C 2 0.00000 0.00000 -0.03102 * * N 1 -0.00051 -0.00051 -0.01977 * * N 2 0.00051 0.00051 -0.01977 * * N 3 -0.00051 0.00051 0.01977 * * N 4 0.00051 -0.00051 0.01977 * * O 1 0.00000 0.00000 -0.01146 * * O 2 0.00000 0.00000 0.01146 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.212873 0.000000 0.000000 * * y 0.000000 -0.212873 0.000000 * * z 0.000000 0.000000 0.007998 * * * * Pressure: 0.1392 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000007 | -2408.693524 | <-- min BFGS | trial step | 1.000000 | 0.000005 | -2408.693669 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 15 with line minimization (lambda= 3.135364) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6954822 0.0000000 0.0000000 1.1031876 0.0000000 0.0000000 0.0000000 5.6954822 0.0000000 0.0000000 1.1031876 0.0000000 0.0000000 0.0000000 4.6898313 0.0000000 0.0000000 1.3397466 Lattice parameters(A) Cell Angles a = 5.695482 alpha = 90.000000 b = 5.695482 beta = 90.000000 c = 4.689831 gamma = 90.000000 Current cell volume = 152.131176 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.254035 0.754035 0.284133 x x H 2 0.140061 0.640061 -0.037070 x x H 3 -0.254035 -0.754035 0.284133 x x H 4 -0.140061 -0.640061 -0.037070 x x H 5 0.754035 -0.254035 -0.284133 x x H 6 0.640061 -0.140061 0.037070 x x H 7 -0.754035 0.254035 -0.284133 x x H 8 -0.640061 0.140061 0.037070 x x C 1 0.000000 0.500000 0.330562 x x C 2 0.500000 0.000000 -0.330562 x x N 1 0.142271 0.642271 0.180987 x x N 2 -0.142271 -0.642271 0.180987 x x N 3 0.642271 -0.142271 -0.180987 x x N 4 -0.642271 0.142271 -0.180987 x x O 1 0.000000 0.500000 0.600752 x x O 2 0.500000 0.000000 -0.600752 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29148199E+003 -3.61532909E+000 17467.04 <-- SCF 1 -2.41728779E+003 -3.74510087E+000 7.86286281E+000 17548.81 <-- SCF 2 -2.41728877E+003 -3.74510194E+000 6.08913900E-005 17614.36 <-- SCF 3 -2.40911959E+003 -1.25259629E+000 -5.10573217E-001 17699.77 <-- SCF 4 -2.40872765E+003 -9.74531174E-001 -2.44967487E-002 17801.67 <-- SCF 5 -2.40867209E+003 -7.45098294E-001 -3.47239507E-003 17879.04 <-- SCF 6 -2.40868359E+003 -6.63452312E-001 7.18879076E-004 17945.89 <-- SCF 7 -2.40869132E+003 -6.49857338E-001 4.83245912E-004 18004.02 <-- SCF 8 -2.40869369E+003 -6.31889466E-001 1.48285023E-004 18057.74 <-- SCF 9 -2.40869379E+003 -6.33144755E-001 5.83557517E-006 18095.47 <-- SCF 10 -2.40869379E+003 -6.31879461E-001 -1.05922645E-007 18130.41 <-- SCF 11 -2.40869379E+003 -6.31697926E-001 6.91793229E-008 18164.57 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.693786761 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.00319 -0.00319 0.01682 * * H 2 -0.01532 -0.01532 0.00308 * * H 3 0.00319 0.00319 0.01682 * * H 4 0.01532 0.01532 0.00308 * * H 5 -0.00319 0.00319 -0.01682 * * H 6 -0.01532 0.01532 -0.00308 * * H 7 0.00319 -0.00319 -0.01682 * * H 8 0.01532 -0.01532 -0.00308 * * C 1 0.00000 0.00000 -0.03958 * * C 2 0.00000 0.00000 0.03958 * * N 1 -0.00450 -0.00450 0.00779 * * N 2 0.00450 0.00450 0.00779 * * N 3 -0.00450 0.00450 -0.00779 * * N 4 0.00450 -0.00450 -0.00779 * * O 1 0.00000 0.00000 -0.00803 * * O 2 0.00000 0.00000 0.00803 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.121489 0.000000 0.000000 * * y 0.000000 -0.121489 0.000000 * * z 0.000000 0.000000 0.097789 * * * * Pressure: 0.0484 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000007 | -2408.693524 | <-- min BFGS | trial step | 1.000000 | 0.000005 | -2408.693669 | <-- min BFGS | line step | 3.135364 | 0.000000 | -2408.693802 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 15 with enthalpy= -2.40869380E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 1.739369E-005 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 3.957535E-002 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 1.788536E-003 | 5.000000E-004 | A | No | <-- BFGS | Smax | 1.214890E-001 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 16 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000004 | -2408.693802 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 16 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.6971061 0.0000000 0.0000000 1.1028731 0.0000000 0.0000000 0.0000000 5.6971061 0.0000000 0.0000000 1.1028731 0.0000000 0.0000000 0.0000000 4.6894529 0.0000000 0.0000000 1.3398547 Lattice parameters(A) Cell Angles a = 5.697106 alpha = 90.000000 b = 5.697106 beta = 90.000000 c = 4.689453 gamma = 90.000000 Current cell volume = 152.205657 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.254000 0.754000 0.284155 x x H 2 0.140046 0.640046 -0.037064 x x H 3 -0.254000 -0.754000 0.284155 x x H 4 -0.140046 -0.640046 -0.037064 x x H 5 0.754000 -0.254000 -0.284155 x x H 6 0.640046 -0.140046 0.037064 x x H 7 -0.754000 0.254000 -0.284155 x x H 8 -0.640046 0.140046 0.037064 x x C 1 0.000000 0.500000 0.330547 x x C 2 0.500000 0.000000 -0.330547 x x N 1 0.142237 0.642237 0.180998 x x N 2 -0.142237 -0.642237 0.180998 x x N 3 0.642237 -0.142237 -0.180998 x x N 4 -0.642237 0.142237 -0.180998 x x O 1 0.000000 0.500000 0.600777 x x O 2 0.500000 0.000000 -0.600777 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29051672E+003 -3.61983348E+000 18226.88 <-- SCF 1 -2.41728757E+003 -3.74820415E+000 7.92317782E+000 18323.81 <-- SCF 2 -2.41728853E+003 -3.74820524E+000 6.05192575E-005 18384.56 <-- SCF 3 -2.40911969E+003 -1.25589661E+000 -5.10552628E-001 18460.74 <-- SCF 4 -2.40872774E+003 -9.77779540E-001 -2.44971778E-002 18543.54 <-- SCF 5 -2.40867215E+003 -7.48330205E-001 -3.47434089E-003 18626.89 <-- SCF 6 -2.40868364E+003 -6.66624994E-001 7.18530057E-004 18702.75 <-- SCF 7 -2.40869138E+003 -6.53012244E-001 4.83624178E-004 18783.66 <-- SCF 8 -2.40869376E+003 -6.35030338E-001 1.48323284E-004 18834.90 <-- SCF 9 -2.40869385E+003 -6.36294942E-001 5.84597156E-006 18870.75 <-- SCF 10 -2.40869385E+003 -6.35024444E-001 -1.06375588E-007 18902.14 <-- SCF 11 -2.40869385E+003 -6.34840248E-001 6.91459944E-008 18932.66 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.693849016 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.00986 -0.00986 0.01344 * * H 2 -0.01582 -0.01582 -0.00004 * * H 3 0.00986 0.00986 0.01344 * * H 4 0.01582 0.01582 -0.00004 * * H 5 -0.00986 0.00986 -0.01344 * * H 6 -0.01582 0.01582 0.00004 * * H 7 0.00986 -0.00986 -0.01344 * * H 8 0.01582 -0.01582 0.00004 * * C 1 0.00000 0.00000 -0.02928 * * C 2 0.00000 0.00000 0.02928 * * N 1 0.00260 0.00260 0.01097 * * N 2 -0.00260 -0.00260 0.01097 * * N 3 0.00260 -0.00260 -0.01097 * * N 4 -0.00260 0.00260 -0.01097 * * O 1 0.00000 0.00000 -0.01112 * * O 2 0.00000 0.00000 0.01112 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.095008 0.000000 0.000000 * * y 0.000000 -0.095008 0.000000 * * z 0.000000 0.000000 0.090913 * * * * Pressure: 0.0330 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000004 | -2408.693802 | <-- min BFGS | trial step | 1.000000 | 0.000003 | -2408.693895 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 16 with line minimization (lambda= 6.095914) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.7053813 0.0000000 0.0000000 1.1012735 0.0000000 0.0000000 0.0000000 5.7053813 0.0000000 0.0000000 1.1012735 0.0000000 0.0000000 0.0000000 4.6875245 0.0000000 0.0000000 1.3404058 Lattice parameters(A) Cell Angles a = 5.705381 alpha = 90.000000 b = 5.705381 beta = 90.000000 c = 4.687525 gamma = 90.000000 Current cell volume = 152.585370 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.253819 0.753819 0.284265 x x H 2 0.139970 0.639970 -0.037035 x x H 3 -0.253819 -0.753819 0.284265 x x H 4 -0.139970 -0.639970 -0.037035 x x H 5 0.753819 -0.253819 -0.284265 x x H 6 0.639970 -0.139970 0.037035 x x H 7 -0.753819 0.253819 -0.284265 x x H 8 -0.639970 0.139970 0.037035 x x C 1 0.000000 0.500000 0.330469 x x C 2 0.500000 0.000000 -0.330469 x x N 1 0.142065 0.642065 0.181058 x x N 2 -0.142065 -0.642065 0.181058 x x N 3 0.642065 -0.142065 -0.181058 x x N 4 -0.642065 0.142065 -0.181058 x x O 1 0.000000 0.500000 0.600902 x x O 2 0.500000 0.000000 -0.600902 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29330891E+003 -3.63119135E+000 18989.68 <-- SCF 1 -2.41728651E+003 -3.76400388E+000 7.74860019E+000 19072.24 <-- SCF 2 -2.41728749E+003 -3.76400500E+000 6.13871033E-005 19140.78 <-- SCF 3 -2.40911987E+003 -1.27280911E+000 -5.10476401E-001 19241.96 <-- SCF 4 -2.40872907E+003 -9.94495792E-001 -2.44247317E-002 19319.41 <-- SCF 5 -2.40867251E+003 -7.64752371E-001 -3.53509562E-003 19396.18 <-- SCF 6 -2.40868396E+003 -6.82769035E-001 7.15359648E-004 19465.73 <-- SCF 7 -2.40869173E+003 -6.69069157E-001 4.86076520E-004 19525.27 <-- SCF 8 -2.40869409E+003 -6.50988452E-001 1.47473643E-004 19580.86 <-- SCF 9 -2.40869419E+003 -6.52333257E-001 5.94006070E-006 19620.89 <-- SCF 10 -2.40869419E+003 -6.51026794E-001 -1.09806823E-007 19655.82 <-- SCF 11 -2.40869419E+003 -6.50830087E-001 6.96635642E-008 19690.15 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.694188591 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.04379 -0.04379 -0.00368 * * H 2 -0.01839 -0.01839 -0.01594 * * H 3 0.04379 0.04379 -0.00368 * * H 4 0.01839 0.01839 -0.01594 * * H 5 -0.04379 0.04379 0.00368 * * H 6 -0.01839 0.01839 0.01594 * * H 7 0.04379 -0.04379 0.00368 * * H 8 0.01839 -0.01839 0.01594 * * C 1 0.00000 0.00000 0.02329 * * C 2 0.00000 0.00000 -0.02329 * * N 1 0.03872 0.03872 0.02705 * * N 2 -0.03872 -0.03872 0.02705 * * N 3 0.03872 -0.03872 -0.02705 * * N 4 -0.03872 0.03872 -0.02705 * * O 1 0.00000 0.00000 -0.02693 * * O 2 0.00000 0.00000 0.02693 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x 0.038483 0.000000 0.000000 * * y 0.000000 0.038483 0.000000 * * z 0.000000 0.000000 0.056122 * * * * Pressure: -0.0444 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000004 | -2408.693802 | <-- min BFGS | trial step | 1.000000 | 0.000003 | -2408.693895 | <-- min BFGS | line step | 6.095914 | 0.000000 | -2408.694075 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 16 with enthalpy= -2.40869408E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 1.707662E-005 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 6.204244E-002 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 1.852813E-003 | 5.000000E-004 | A | No | <-- BFGS | Smax | 5.612164E-002 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 17 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000018 | -2408.694075 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 17 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.7123980 0.0000000 0.0000000 1.0999208 0.0000000 0.0000000 0.0000000 5.7123980 0.0000000 0.0000000 1.0999208 0.0000000 0.0000000 0.0000000 4.6856313 0.0000000 0.0000000 1.3409475 Lattice parameters(A) Cell Angles a = 5.712398 alpha = 90.000000 b = 5.712398 beta = 90.000000 c = 4.685631 gamma = 90.000000 Current cell volume = 152.899135 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.253564 0.753564 0.284354 x x H 2 0.139862 0.639862 -0.037048 x x H 3 -0.253564 -0.753564 0.284354 x x H 4 -0.139862 -0.639862 -0.037048 x x H 5 0.753564 -0.253564 -0.284354 x x H 6 0.639862 -0.139862 0.037048 x x H 7 -0.753564 0.253564 -0.284354 x x H 8 -0.639862 0.139862 0.037048 x x C 1 0.000000 0.500000 0.330488 x x C 2 0.500000 0.000000 -0.330488 x x N 1 0.142005 0.642005 0.181170 x x N 2 -0.142005 -0.642005 0.181170 x x N 3 0.642005 -0.142005 -0.181170 x x N 4 -0.642005 0.142005 -0.181170 x x O 1 0.000000 0.500000 0.600924 x x O 2 0.500000 0.000000 -0.600924 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29280607E+003 -3.64676992E+000 19767.66 <-- SCF 1 -2.41729418E+003 -3.77847570E+000 7.78050636E+000 19846.71 <-- SCF 2 -2.41729515E+003 -3.77847680E+000 6.09846325E-005 19908.84 <-- SCF 3 -2.40912116E+003 -1.28665324E+000 -5.10874766E-001 19985.83 <-- SCF 4 -2.40872968E+003 -1.00783429E+000 -2.44674776E-002 20063.10 <-- SCF 5 -2.40867280E+003 -7.77925135E-001 -3.55467879E-003 20142.64 <-- SCF 6 -2.40868422E+003 -6.95730292E-001 7.13382929E-004 20212.59 <-- SCF 7 -2.40869200E+003 -6.81939951E-001 4.86356682E-004 20271.43 <-- SCF 8 -2.40869436E+003 -6.63809470E-001 1.47415312E-004 20322.86 <-- SCF 9 -2.40869445E+003 -6.65162480E-001 5.97033828E-006 20359.42 <-- SCF 10 -2.40869445E+003 -6.63849276E-001 -1.14155304E-007 20394.15 <-- SCF 11 -2.40869445E+003 -6.63651113E-001 6.96210759E-008 20427.27 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.694450197 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.03318 -0.03318 0.00888 * * H 2 -0.01544 -0.01544 -0.00990 * * H 3 0.03318 0.03318 0.00888 * * H 4 0.01544 0.01544 -0.00990 * * H 5 -0.03318 0.03318 -0.00888 * * H 6 -0.01544 0.01544 0.00990 * * H 7 0.03318 -0.03318 -0.00888 * * H 8 0.01544 -0.01544 0.00990 * * C 1 0.00000 0.00000 0.01594 * * C 2 0.00000 0.00000 -0.01594 * * N 1 0.00352 0.00352 -0.00323 * * N 2 -0.00352 -0.00352 -0.00323 * * N 3 0.00352 -0.00352 0.00323 * * N 4 -0.00352 0.00352 0.00323 * * O 1 0.00000 0.00000 0.00328 * * O 2 0.00000 0.00000 -0.00328 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x 0.101976 0.000000 0.000000 * * y 0.000000 0.101976 0.000000 * * z 0.000000 0.000000 -0.048642 * * * * Pressure: -0.0518 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000018 | -2408.694075 | <-- min BFGS | trial step | 1.000000 | 0.000008 | -2408.694417 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 17 with line minimization (lambda= 1.777585) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.7178542 0.0000000 0.0000000 1.0988712 0.0000000 0.0000000 0.0000000 5.7178542 0.0000000 0.0000000 1.0988712 0.0000000 0.0000000 0.0000000 4.6841591 0.0000000 0.0000000 1.3413689 Lattice parameters(A) Cell Angles a = 5.717854 alpha = 90.000000 b = 5.717854 beta = 90.000000 c = 4.684159 gamma = 90.000000 Current cell volume = 153.143223 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.253366 0.753366 0.284422 x x H 2 0.139778 0.639778 -0.037058 x x H 3 -0.253366 -0.753366 0.284422 x x H 4 -0.139778 -0.639778 -0.037058 x x H 5 0.753366 -0.253366 -0.284422 x x H 6 0.639778 -0.139778 0.037058 x x H 7 -0.753366 0.253366 -0.284422 x x H 8 -0.639778 0.139778 0.037058 x x C 1 0.000000 0.500000 0.330504 x x C 2 0.500000 0.000000 -0.330504 x x N 1 0.141957 0.641957 0.181258 x x N 2 -0.141957 -0.641957 0.181258 x x N 3 0.641957 -0.141957 -0.181258 x x N 4 -0.641957 0.141957 -0.181258 x x O 1 0.000000 0.500000 0.600940 x x O 2 0.500000 0.000000 -0.600940 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29213349E+003 -3.65895634E+000 20490.19 <-- SCF 1 -2.41729993E+003 -3.78971021E+000 7.82290264E+000 20577.25 <-- SCF 2 -2.41730090E+003 -3.78971132E+000 6.05587521E-005 20654.71 <-- SCF 3 -2.40912216E+003 -1.29746996E+000 -5.11171309E-001 20731.93 <-- SCF 4 -2.40872978E+003 -1.01834925E+000 -2.45240760E-002 20807.67 <-- SCF 5 -2.40867274E+003 -7.88087487E-001 -3.56482947E-003 20890.63 <-- SCF 6 -2.40868412E+003 -7.05762336E-001 7.11541156E-004 20965.08 <-- SCF 7 -2.40869194E+003 -6.91933323E-001 4.88575441E-004 21030.13 <-- SCF 8 -2.40869430E+003 -6.73730262E-001 1.47414634E-004 21087.84 <-- SCF 9 -2.40869440E+003 -6.75121928E-001 5.97449979E-006 21139.60 <-- SCF 10 -2.40869439E+003 -6.73791040E-001 -1.15463089E-007 21171.71 <-- SCF 11 -2.40869439E+003 -6.73587941E-001 7.00714329E-008 21202.63 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.694394676 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.02480 -0.02480 0.01872 * * H 2 -0.01314 -0.01314 -0.00523 * * H 3 0.02480 0.02480 0.01872 * * H 4 0.01314 0.01314 -0.00523 * * H 5 -0.02480 0.02480 -0.01872 * * H 6 -0.01314 0.01314 0.00523 * * H 7 0.02480 -0.02480 -0.01872 * * H 8 0.01314 -0.01314 0.00523 * * C 1 0.00000 0.00000 0.01015 * * C 2 0.00000 0.00000 -0.01015 * * N 1 -0.02391 -0.02391 -0.02684 * * N 2 0.02391 0.02391 -0.02684 * * N 3 -0.02391 0.02391 0.02684 * * N 4 0.02391 -0.02391 0.02684 * * O 1 0.00000 0.00000 0.02683 * * O 2 0.00000 0.00000 -0.02683 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x 0.150414 0.000000 0.000000 * * y 0.000000 0.150414 0.000000 * * z 0.000000 0.000000 -0.130219 * * * * Pressure: -0.0569 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000018 | -2408.694075 | <-- min BFGS | trial step | 1.000000 | 0.000008 | -2408.694417 | <-- min BFGS | line step | 1.777585 | 0.000000 | -2408.694471 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 17 with enthalpy= -2.40869447E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 2.471580E-005 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 4.317771E-002 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 3.736572E-003 | 5.000000E-004 | A | No | <-- BFGS | Smax | 1.504139E-001 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 18 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000010 | -2408.694471 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 18 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.7210086 0.0000000 0.0000000 1.0982653 0.0000000 0.0000000 0.0000000 5.7210086 0.0000000 0.0000000 1.0982653 0.0000000 0.0000000 0.0000000 4.6835794 0.0000000 0.0000000 1.3415349 Lattice parameters(A) Cell Angles a = 5.721009 alpha = 90.000000 b = 5.721009 beta = 90.000000 c = 4.683579 gamma = 90.000000 Current cell volume = 153.293269 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.253173 0.753173 0.284528 x x H 2 0.139685 0.639685 -0.037083 x x H 3 -0.253173 -0.753173 0.284528 x x H 4 -0.139685 -0.639685 -0.037083 x x H 5 0.753173 -0.253173 -0.284528 x x H 6 0.639685 -0.139685 0.037083 x x H 7 -0.753173 0.253173 -0.284528 x x H 8 -0.639685 0.139685 0.037083 x x C 1 0.000000 0.500000 0.330528 x x C 2 0.500000 0.000000 -0.330528 x x N 1 0.141873 0.641873 0.181248 x x N 2 -0.141873 -0.641873 0.181248 x x N 3 0.641873 -0.141873 -0.181248 x x N 4 -0.641873 0.141873 -0.181248 x x O 1 0.000000 0.500000 0.601023 x x O 2 0.500000 0.000000 -0.601023 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29125818E+003 -3.66731955E+000 21258.42 <-- SCF 1 -2.41730338E+003 -3.79683466E+000 7.87782504E+000 21337.52 <-- SCF 2 -2.41730435E+003 -3.79683579E+000 6.03586418E-005 21400.64 <-- SCF 3 -2.40912301E+003 -1.30403293E+000 -5.11333643E-001 21484.73 <-- SCF 4 -2.40873020E+003 -1.02454396E+000 -2.45506916E-002 21572.08 <-- SCF 5 -2.40867301E+003 -7.94096343E-001 -3.57404405E-003 21670.28 <-- SCF 6 -2.40868439E+003 -7.11630085E-001 7.10893228E-004 21738.26 <-- SCF 7 -2.40869222E+003 -6.97751135E-001 4.89681255E-004 21795.81 <-- SCF 8 -2.40869459E+003 -6.79499401E-001 1.47570361E-004 21846.95 <-- SCF 9 -2.40869468E+003 -6.80912783E-001 5.99565768E-006 21885.84 <-- SCF 10 -2.40869468E+003 -6.79570425E-001 -1.18253978E-007 21919.21 <-- SCF 11 -2.40869468E+003 -6.79362921E-001 7.06364939E-008 21953.65 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.694680439 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.02181 -0.02181 0.01665 * * H 2 -0.01231 -0.01231 -0.00807 * * H 3 0.02181 0.02181 0.01665 * * H 4 0.01231 0.01231 -0.00807 * * H 5 -0.02181 0.02181 -0.01665 * * H 6 -0.01231 0.01231 0.00807 * * H 7 0.02181 -0.02181 -0.01665 * * H 8 0.01231 -0.01231 0.00807 * * C 1 0.00000 0.00000 0.01567 * * C 2 0.00000 0.00000 -0.01567 * * N 1 -0.02546 -0.02546 -0.02063 * * N 2 0.02546 0.02546 -0.02063 * * N 3 -0.02546 0.02546 0.02063 * * N 4 0.02546 -0.02546 0.02063 * * O 1 0.00000 0.00000 0.01737 * * O 2 0.00000 0.00000 -0.01737 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x 0.143603 0.000000 0.000000 * * y 0.000000 0.143603 0.000000 * * z 0.000000 0.000000 -0.107196 * * * * Pressure: -0.0600 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000010 | -2408.694471 | <-- min BFGS | trial step | 1.000000 | 0.000009 | -2408.694700 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 18 with line minimization (lambda= 10.886490) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.7521950 0.0000000 0.0000000 1.0923109 0.0000000 0.0000000 0.0000000 5.7521950 0.0000000 0.0000000 1.0923109 0.0000000 0.0000000 0.0000000 4.6778482 0.0000000 0.0000000 1.3431785 Lattice parameters(A) Cell Angles a = 5.752195 alpha = 90.000000 b = 5.752195 beta = 90.000000 c = 4.677848 gamma = 90.000000 Current cell volume = 154.779458 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.251271 0.751271 0.285569 x x H 2 0.138768 0.638768 -0.037333 x x H 3 -0.251271 -0.751271 0.285569 x x H 4 -0.138768 -0.638768 -0.037333 x x H 5 0.751271 -0.251271 -0.285569 x x H 6 0.638768 -0.138768 0.037333 x x H 7 -0.751271 0.251271 -0.285569 x x H 8 -0.638768 0.138768 0.037333 x x C 1 0.000000 0.500000 0.330775 x x C 2 0.500000 0.000000 -0.330775 x x N 1 0.141044 0.641044 0.181151 x x N 2 -0.141044 -0.641044 0.181151 x x N 3 0.641044 -0.141044 -0.181151 x x N 4 -0.641044 0.141044 -0.181151 x x O 1 0.000000 0.500000 0.601843 x x O 2 0.500000 0.000000 -0.601843 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.30334501E+003 -3.71392043E+000 22018.95 <-- SCF 1 -2.41734292E+003 -3.86693305E+000 7.12486906E+000 22123.90 <-- SCF 2 -2.41734401E+003 -3.86693427E+000 6.84923780E-005 22190.99 <-- SCF 3 -2.40913424E+003 -1.36798482E+000 -5.13110948E-001 22273.44 <-- SCF 4 -2.40873725E+003 -1.08573092E+000 -2.48117061E-002 22361.39 <-- SCF 5 -2.40867646E+003 -8.53230485E-001 -3.79910156E-003 22452.27 <-- SCF 6 -2.40868682E+003 -7.69320531E-001 6.47105900E-004 22533.14 <-- SCF 7 -2.40869419E+003 -7.54973830E-001 4.60673854E-004 22615.42 <-- SCF 8 -2.40869640E+003 -7.36618600E-001 1.38405984E-004 22671.43 <-- SCF 9 -2.40869650E+003 -7.37943917E-001 6.20362167E-006 22711.56 <-- SCF 10 -2.40869650E+003 -7.36627140E-001 -1.19671802E-007 22745.50 <-- SCF 11 -2.40869650E+003 -7.36439793E-001 7.55856357E-008 22778.63 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.696502372 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.01324 0.01324 -0.00194 * * H 2 -0.00258 -0.00258 -0.03711 * * H 3 -0.01324 -0.01324 -0.00194 * * H 4 0.00258 0.00258 -0.03711 * * H 5 0.01324 -0.01324 0.00194 * * H 6 -0.00258 0.00258 0.03711 * * H 7 -0.01324 0.01324 0.00194 * * H 8 0.00258 -0.00258 0.03711 * * C 1 0.00000 0.00000 0.11989 * * C 2 0.00000 0.00000 -0.11989 * * N 1 -0.04162 -0.04162 0.04076 * * N 2 0.04162 0.04162 0.04076 * * N 3 -0.04162 0.04162 -0.04076 * * N 4 0.04162 -0.04162 -0.04076 * * O 1 0.00000 0.00000 -0.07484 * * O 2 0.00000 0.00000 0.07484 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x 0.045739 0.000000 0.000000 * * y 0.000000 0.045739 0.000000 * * z 0.000000 0.000000 0.100116 * * * * Pressure: -0.0639 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000010 | -2408.694471 | <-- min BFGS | trial step | 1.000000 | 0.000009 | -2408.694700 | <-- min BFGS | line step | 10.886490 | 0.000000 | -2408.696627 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 18 with enthalpy= -2.40869663E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 1.348006E-004 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 1.198888E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 1.786192E-002 | 5.000000E-004 | A | No | <-- BFGS | Smax | 1.001159E-001 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 19 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000032 | -2408.696627 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 19 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.7648460 0.0000000 0.0000000 1.0899138 0.0000000 0.0000000 0.0000000 5.7648460 0.0000000 0.0000000 1.0899138 0.0000000 0.0000000 0.0000000 4.6753570 0.0000000 0.0000000 1.3438942 Lattice parameters(A) Cell Angles a = 5.764846 alpha = 90.000000 b = 5.764846 beta = 90.000000 c = 4.675357 gamma = 90.000000 Current cell volume = 155.378239 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.250593 0.750593 0.285804 x x H 2 0.138515 0.638515 -0.037515 x x H 3 -0.250593 -0.750593 0.285804 x x H 4 -0.138515 -0.638515 -0.037515 x x H 5 0.750593 -0.250593 -0.285804 x x H 6 0.638515 -0.138515 0.037515 x x H 7 -0.750593 0.250593 -0.285804 x x H 8 -0.638515 0.138515 0.037515 x x C 1 0.000000 0.500000 0.331231 x x C 2 0.500000 0.000000 -0.331231 x x N 1 0.140612 0.640612 0.181297 x x N 2 -0.140612 -0.640612 0.181297 x x N 3 0.640612 -0.140612 -0.181297 x x N 4 -0.640612 0.140612 -0.181297 x x O 1 0.000000 0.500000 0.602070 x x O 2 0.500000 0.000000 -0.602070 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29524244E+003 -3.75215837E+000 22842.01 <-- SCF 1 -2.41735861E+003 -3.89000498E+000 7.63226067E+000 22924.38 <-- SCF 2 -2.41735958E+003 -3.89000616E+000 6.05962105E-005 22992.10 <-- SCF 3 -2.40913632E+003 -1.38861826E+000 -5.13954046E-001 23074.96 <-- SCF 4 -2.40873825E+003 -1.10464634E+000 -2.48790513E-002 23156.93 <-- SCF 5 -2.40867690E+003 -8.71077286E-001 -3.83477074E-003 23244.69 <-- SCF 6 -2.40868723E+003 -7.86861803E-001 6.46224759E-004 23323.80 <-- SCF 7 -2.40869463E+003 -7.72348551E-001 4.61945106E-004 23393.34 <-- SCF 8 -2.40869685E+003 -7.53836566E-001 1.38823370E-004 23464.22 <-- SCF 9 -2.40869695E+003 -7.55197900E-001 6.27592262E-006 23506.58 <-- SCF 10 -2.40869695E+003 -7.53860961E-001 -1.28364220E-007 23540.89 <-- SCF 11 -2.40869695E+003 -7.53669462E-001 7.74856956E-008 23574.09 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.696946516 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.00861 0.00861 -0.00874 * * H 2 -0.01069 -0.01069 0.00719 * * H 3 -0.00861 -0.00861 -0.00874 * * H 4 0.01069 0.01069 0.00719 * * H 5 0.00861 -0.00861 0.00874 * * H 6 -0.01069 0.01069 -0.00719 * * H 7 -0.00861 0.00861 0.00874 * * H 8 0.01069 -0.01069 -0.00719 * * C 1 0.00000 0.00000 0.02584 * * C 2 0.00000 0.00000 -0.02584 * * N 1 0.00040 0.00040 0.00454 * * N 2 -0.00040 -0.00040 0.00454 * * N 3 0.00040 -0.00040 -0.00454 * * N 4 -0.00040 0.00040 -0.00454 * * O 1 0.00000 0.00000 0.01136 * * O 2 0.00000 0.00000 -0.01136 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x -0.010702 0.000000 0.000000 * * y 0.000000 -0.010702 0.000000 * * z 0.000000 0.000000 0.061828 * * * * Pressure: -0.0135 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000032 | -2408.696627 | <-- min BFGS | trial step | 1.000000 | 0.000000 | -2408.697042 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 19 with enthalpy= -2.40869704E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 2.594246E-005 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 2.584334E-002 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 5.640543E-003 | 5.000000E-004 | A | No | <-- BFGS | Smax | 6.182838E-002 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 20 ... ================================================================================ Writing model to urea.check +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000002 | -2408.697042 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 20 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.7634636 0.0000000 0.0000000 1.0901752 0.0000000 0.0000000 0.0000000 5.7634636 0.0000000 0.0000000 1.0901752 0.0000000 0.0000000 0.0000000 4.6754778 0.0000000 0.0000000 1.3438595 Lattice parameters(A) Cell Angles a = 5.763464 alpha = 90.000000 b = 5.763464 beta = 90.000000 c = 4.675478 gamma = 90.000000 Current cell volume = 155.307741 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.250706 0.750706 0.285710 x x H 2 0.138548 0.638548 -0.037482 x x H 3 -0.250706 -0.750706 0.285710 x x H 4 -0.138548 -0.638548 -0.037482 x x H 5 0.750706 -0.250706 -0.285710 x x H 6 0.638548 -0.138548 0.037482 x x H 7 -0.750706 0.250706 -0.285710 x x H 8 -0.638548 0.138548 0.037482 x x C 1 0.000000 0.500000 0.331291 x x C 2 0.500000 0.000000 -0.331291 x x N 1 0.140649 0.640649 0.181322 x x N 2 -0.140649 -0.640649 0.181322 x x N 3 0.640649 -0.140649 -0.181322 x x N 4 -0.640649 0.140649 -0.181322 x x O 1 0.000000 0.500000 0.602086 x x O 2 0.500000 0.000000 -0.602086 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.28906700E+003 -3.75788216E+000 23638.53 <-- SCF 1 -2.41735654E+003 -3.88612058E+000 8.01809600E+000 23724.42 <-- SCF 2 -2.41735745E+003 -3.88612172E+000 5.73618519E-005 23796.43 <-- SCF 3 -2.40913597E+003 -1.38490564E+000 -5.13842898E-001 23888.24 <-- SCF 4 -2.40873820E+003 -1.10125354E+000 -2.48607272E-002 23991.04 <-- SCF 5 -2.40867693E+003 -8.67700061E-001 -3.82901741E-003 24073.39 <-- SCF 6 -2.40868728E+003 -7.83580795E-001 6.47122032E-004 24145.43 <-- SCF 7 -2.40869467E+003 -7.69100444E-001 4.61437007E-004 24213.00 <-- SCF 8 -2.40869689E+003 -7.50607399E-001 1.38728141E-004 24272.75 <-- SCF 9 -2.40869699E+003 -7.51964006E-001 6.26454414E-006 24315.78 <-- SCF 10 -2.40869699E+003 -7.50629495E-001 -1.27502610E-007 24353.41 <-- SCF 11 -2.40869699E+003 -7.50438516E-001 7.73465330E-008 24390.23 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.696987044 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.00513 0.00513 -0.00744 * * H 2 -0.01184 -0.01184 0.00719 * * H 3 -0.00513 -0.00513 -0.00744 * * H 4 0.01184 0.01184 0.00719 * * H 5 0.00513 -0.00513 0.00744 * * H 6 -0.01184 0.01184 -0.00719 * * H 7 -0.00513 0.00513 0.00744 * * H 8 0.01184 -0.01184 -0.00719 * * C 1 0.00000 0.00000 0.01111 * * C 2 0.00000 0.00000 -0.01111 * * N 1 0.00096 0.00096 0.00642 * * N 2 -0.00096 -0.00096 0.00642 * * N 3 0.00096 -0.00096 -0.00642 * * N 4 -0.00096 0.00096 -0.00642 * * O 1 0.00000 0.00000 0.01993 * * O 2 0.00000 0.00000 -0.01993 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x 0.006740 0.000000 0.000000 * * y 0.000000 0.006740 0.000000 * * z 0.000000 0.000000 0.038715 * * * * Pressure: -0.0174 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000002 | -2408.697042 | <-- min BFGS | trial step | 1.000000 | 0.000002 | -2408.697098 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 20 with line minimization (lambda= 3.257761) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.7603424 0.0000000 0.0000000 1.0907659 0.0000000 0.0000000 0.0000000 5.7603424 0.0000000 0.0000000 1.0907659 0.0000000 0.0000000 0.0000000 4.6757506 0.0000000 0.0000000 1.3437811 Lattice parameters(A) Cell Angles a = 5.760342 alpha = 90.000000 b = 5.760342 beta = 90.000000 c = 4.675751 gamma = 90.000000 Current cell volume = 155.148627 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.250962 0.750962 0.285497 x x H 2 0.138622 0.638622 -0.037408 x x H 3 -0.250962 -0.750962 0.285497 x x H 4 -0.138622 -0.638622 -0.037408 x x H 5 0.750962 -0.250962 -0.285497 x x H 6 0.638622 -0.138622 0.037408 x x H 7 -0.750962 0.250962 -0.285497 x x H 8 -0.638622 0.138622 0.037408 x x C 1 0.000000 0.500000 0.331427 x x C 2 0.500000 0.000000 -0.331427 x x N 1 0.140732 0.640732 0.181378 x x N 2 -0.140732 -0.640732 0.181378 x x N 3 0.640732 -0.140732 -0.181378 x x N 4 -0.640732 0.140732 -0.181378 x x O 1 0.000000 0.500000 0.602121 x x O 2 0.500000 0.000000 -0.602121 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.28828959E+003 -3.75035188E+000 24474.75 <-- SCF 1 -2.41735182E+003 -3.87734354E+000 8.06638920E+000 24557.60 <-- SCF 2 -2.41735273E+003 -3.87734470E+000 5.67082300E-005 24623.09 <-- SCF 3 -2.40913497E+003 -1.37653938E+000 -5.13609988E-001 24711.15 <-- SCF 4 -2.40873801E+003 -1.09353939E+000 -2.48096616E-002 24801.92 <-- SCF 5 -2.40867707E+003 -8.60014840E-001 -3.80862647E-003 24894.19 <-- SCF 6 -2.40868746E+003 -7.76162995E-001 6.49323742E-004 24985.73 <-- SCF 7 -2.40869483E+003 -7.61760912E-001 4.60182685E-004 25048.26 <-- SCF 8 -2.40869704E+003 -7.43298862E-001 1.38416846E-004 25103.52 <-- SCF 9 -2.40869714E+003 -7.44671077E-001 6.23000180E-006 25142.59 <-- SCF 10 -2.40869714E+003 -7.43329528E-001 -1.26844863E-007 25180.37 <-- SCF 11 -2.40869714E+003 -7.43136645E-001 7.68462679E-008 25214.43 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.697140036 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.00274 -0.00274 -0.00449 * * H 2 -0.01445 -0.01445 0.00720 * * H 3 0.00274 0.00274 -0.00449 * * H 4 0.01445 0.01445 0.00720 * * H 5 -0.00274 0.00274 0.00449 * * H 6 -0.01445 0.01445 -0.00720 * * H 7 0.00274 -0.00274 0.00449 * * H 8 0.01445 -0.01445 -0.00720 * * C 1 0.00000 0.00000 -0.02221 * * C 2 0.00000 0.00000 0.02221 * * N 1 0.00227 0.00227 0.01067 * * N 2 -0.00227 -0.00227 0.01067 * * N 3 0.00227 -0.00227 -0.01067 * * N 4 -0.00227 0.00227 -0.01067 * * O 1 0.00000 0.00000 0.03932 * * O 2 0.00000 0.00000 -0.03932 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x 0.045858 0.000000 0.000000 * * y 0.000000 0.045858 0.000000 * * z 0.000000 0.000000 -0.013688 * * * * Pressure: -0.0260 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000002 | -2408.697042 | <-- min BFGS | trial step | 1.000000 | 0.000002 | -2408.697098 | <-- min BFGS | line step | 3.257761 | 0.000000 | -2408.697158 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 20 with enthalpy= -2.40869716E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 7.203122E-006 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 3.932161E-002 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 3.331239E-003 | 5.000000E-004 | A | No | <-- BFGS | Smax | 4.585802E-002 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 21 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000004 | -2408.697158 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 21 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.7618048 0.0000000 0.0000000 1.0904891 0.0000000 0.0000000 0.0000000 5.7618048 0.0000000 0.0000000 1.0904891 0.0000000 0.0000000 0.0000000 4.6750957 0.0000000 0.0000000 1.3439693 Lattice parameters(A) Cell Angles a = 5.761805 alpha = 90.000000 b = 5.761805 beta = 90.000000 c = 4.675096 gamma = 90.000000 Current cell volume = 155.205673 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.250907 0.750907 0.285475 x x H 2 0.138506 0.638506 -0.037374 x x H 3 -0.250907 -0.750907 0.285475 x x H 4 -0.138506 -0.638506 -0.037374 x x H 5 0.750907 -0.250907 -0.285475 x x H 6 0.638506 -0.138506 0.037374 x x H 7 -0.750907 0.250907 -0.285475 x x H 8 -0.638506 0.138506 0.037374 x x C 1 0.000000 0.500000 0.331563 x x C 2 0.500000 0.000000 -0.331563 x x N 1 0.140684 0.640684 0.181444 x x N 2 -0.140684 -0.640684 0.181444 x x N 3 0.640684 -0.140684 -0.181444 x x N 4 -0.640684 0.140684 -0.181444 x x O 1 0.000000 0.500000 0.602310 x x O 2 0.500000 0.000000 -0.602310 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29028281E+003 -3.74976634E+000 25286.10 <-- SCF 1 -2.41735223E+003 -3.87976059E+000 7.94183852E+000 25378.58 <-- SCF 2 -2.41735315E+003 -3.87976175E+000 5.76969478E-005 25458.25 <-- SCF 3 -2.40913558E+003 -1.37861761E+000 -5.13597922E-001 25540.12 <-- SCF 4 -2.40873833E+003 -1.09561868E+000 -2.48279697E-002 25622.42 <-- SCF 5 -2.40867718E+003 -8.61957443E-001 -3.82193469E-003 25708.58 <-- SCF 6 -2.40868756E+003 -7.78014618E-001 6.48611295E-004 25787.75 <-- SCF 7 -2.40869493E+003 -7.63589299E-001 4.60613052E-004 25857.05 <-- SCF 8 -2.40869715E+003 -7.45112206E-001 1.38559569E-004 25930.16 <-- SCF 9 -2.40869725E+003 -7.46469104E-001 6.24075154E-006 25970.36 <-- SCF 10 -2.40869725E+003 -7.45135585E-001 -1.26912849E-007 26004.88 <-- SCF 11 -2.40869725E+003 -7.44943677E-001 7.70658152E-008 26038.76 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.697246672 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.00159 -0.00159 -0.00268 * * H 2 -0.01359 -0.01359 0.00670 * * H 3 0.00159 0.00159 -0.00268 * * H 4 0.01359 0.01359 0.00670 * * H 5 -0.00159 0.00159 0.00268 * * H 6 -0.01359 0.01359 -0.00670 * * H 7 0.00159 -0.00159 0.00268 * * H 8 0.01359 -0.01359 -0.00670 * * C 1 0.00000 0.00000 -0.02114 * * C 2 0.00000 0.00000 0.02114 * * N 1 0.00024 0.00024 0.01150 * * N 2 -0.00024 -0.00024 0.01150 * * N 3 0.00024 -0.00024 -0.01150 * * N 4 -0.00024 0.00024 -0.01150 * * O 1 0.00000 0.00000 0.03290 * * O 2 0.00000 0.00000 -0.03290 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x 0.045461 0.000000 0.000000 * * y 0.000000 0.045461 0.000000 * * z 0.000000 0.000000 -0.004186 * * * * Pressure: -0.0289 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000004 | -2408.697158 | <-- min BFGS | trial step | 1.000000 | 0.000004 | -2408.697258 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 21 with line minimization (lambda= 10.014372) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.7749872 0.0000000 0.0000000 1.0879999 0.0000000 0.0000000 0.0000000 5.7749872 0.0000000 0.0000000 1.0879999 0.0000000 0.0000000 0.0000000 4.6691929 0.0000000 0.0000000 1.3456684 Lattice parameters(A) Cell Angles a = 5.774987 alpha = 90.000000 b = 5.774987 beta = 90.000000 c = 4.669193 gamma = 90.000000 Current cell volume = 155.719810 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.250415 0.750415 0.285283 x x H 2 0.137463 0.637463 -0.037060 x x H 3 -0.250415 -0.750415 0.285283 x x H 4 -0.137463 -0.637463 -0.037060 x x H 5 0.750415 -0.250415 -0.285283 x x H 6 0.637463 -0.137463 0.037060 x x H 7 -0.750415 0.250415 -0.285283 x x H 8 -0.637463 0.137463 0.037060 x x C 1 0.000000 0.500000 0.332790 x x C 2 0.500000 0.000000 -0.332790 x x N 1 0.140249 0.640249 0.182033 x x N 2 -0.140249 -0.640249 0.182033 x x N 3 0.640249 -0.140249 -0.182033 x x N 4 -0.640249 0.140249 -0.182033 x x O 1 0.000000 0.500000 0.604008 x x O 2 0.500000 0.000000 -0.604008 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.29483656E+003 -3.76333940E+000 26103.10 <-- SCF 1 -2.41735559E+003 -3.90140717E+000 7.65743934E+000 26184.61 <-- SCF 2 -2.41735654E+003 -3.90140839E+000 5.92282237E-005 26249.94 <-- SCF 3 -2.40913809E+003 -1.39741971E+000 -5.13653384E-001 26334.72 <-- SCF 4 -2.40873976E+003 -1.11380239E+000 -2.48954780E-002 26417.65 <-- SCF 5 -2.40867777E+003 -8.78820324E-001 -3.87437678E-003 26499.77 <-- SCF 6 -2.40868806E+003 -7.94530032E-001 6.43242532E-004 26576.42 <-- SCF 7 -2.40869547E+003 -7.79936964E-001 4.63194259E-004 26642.71 <-- SCF 8 -2.40869770E+003 -7.61222445E-001 1.39378752E-004 26704.50 <-- SCF 9 -2.40869780E+003 -7.62683961E-001 6.30953443E-006 26747.55 <-- SCF 10 -2.40869780E+003 -7.61300888E-001 -1.36961195E-007 26786.89 <-- SCF 11 -2.40869780E+003 -7.61087010E-001 7.78250464E-008 26831.73 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.697801826 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.00865 0.00865 0.01327 * * H 2 -0.00570 -0.00570 0.00257 * * H 3 -0.00865 -0.00865 0.01327 * * H 4 0.00570 0.00570 0.00257 * * H 5 0.00865 -0.00865 -0.01327 * * H 6 -0.00570 0.00570 -0.00257 * * H 7 -0.00865 0.00865 -0.01327 * * H 8 0.00570 -0.00570 -0.00257 * * C 1 0.00000 0.00000 -0.01163 * * C 2 0.00000 0.00000 0.01163 * * N 1 -0.01751 -0.01751 0.01882 * * N 2 0.01751 0.01751 0.01882 * * N 3 -0.01751 0.01751 -0.01882 * * N 4 0.01751 -0.01751 -0.01882 * * O 1 0.00000 0.00000 -0.02466 * * O 2 0.00000 0.00000 0.02466 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x 0.040781 0.000000 0.000000 * * y 0.000000 0.040781 0.000000 * * z 0.000000 0.000000 0.081715 * * * * Pressure: -0.0544 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000004 | -2408.697158 | <-- min BFGS | trial step | 1.000000 | 0.000004 | -2408.697258 | <-- min BFGS | line step | 10.014372 | 0.000000 | -2408.697669 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 21 with enthalpy= -2.40869767E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 3.197746E-005 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 3.110202E-002 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 9.604011E-003 | 5.000000E-004 | A | No | <-- BFGS | Smax | 8.171508E-002 | 2.000000E-002 | GPa | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 22 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000006 | -2408.697669 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 22 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.7715899 0.0000000 0.0000000 1.0886403 0.0000000 0.0000000 0.0000000 5.7715899 0.0000000 0.0000000 1.0886403 0.0000000 0.0000000 0.0000000 4.6689243 0.0000000 0.0000000 1.3457458 Lattice parameters(A) Cell Angles a = 5.771590 alpha = 90.000000 b = 5.771590 beta = 90.000000 c = 4.668924 gamma = 90.000000 Current cell volume = 155.527706 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.250593 0.750593 0.285291 x x H 2 0.137302 0.637302 -0.036987 x x H 3 -0.250593 -0.750593 0.285291 x x H 4 -0.137302 -0.637302 -0.036987 x x H 5 0.750593 -0.250593 -0.285291 x x H 6 0.637302 -0.137302 0.036987 x x H 7 -0.750593 0.250593 -0.285291 x x H 8 -0.637302 0.137302 0.036987 x x C 1 0.000000 0.500000 0.332830 x x C 2 0.500000 0.000000 -0.332830 x x N 1 0.140282 0.640282 0.182139 x x N 2 -0.140282 -0.640282 0.182139 x x N 3 0.640282 -0.140282 -0.182139 x x N 4 -0.640282 0.140282 -0.182139 x x O 1 0.000000 0.500000 0.604031 x x O 2 0.500000 0.000000 -0.604031 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.28811152E+003 -3.76672826E+000 26896.15 <-- SCF 1 -2.41735388E+003 -3.89382173E+000 8.07764806E+000 26978.21 <-- SCF 2 -2.41735477E+003 -3.89382288E+000 5.55609630E-005 27047.29 <-- SCF 3 -2.40913755E+003 -1.39041175E+000 -5.13576491E-001 27135.09 <-- SCF 4 -2.40873965E+003 -1.10651536E+000 -2.48685270E-002 27226.95 <-- SCF 5 -2.40867788E+003 -8.71706809E-001 -3.86087382E-003 27331.88 <-- SCF 6 -2.40868820E+003 -7.87605463E-001 6.44938424E-004 27404.87 <-- SCF 7 -2.40869559E+003 -7.73059862E-001 4.61870640E-004 27466.83 <-- SCF 8 -2.40869781E+003 -7.54393379E-001 1.39126286E-004 27522.87 <-- SCF 9 -2.40869791E+003 -7.55840447E-001 6.27878355E-006 27563.72 <-- SCF 10 -2.40869791E+003 -7.54467779E-001 -1.34548955E-007 27599.99 <-- SCF 11 -2.40869791E+003 -7.54256213E-001 7.73068241E-008 27636.95 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.697913892 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.00023 -0.00023 0.00593 * * H 2 0.00134 0.00134 0.00655 * * H 3 0.00023 0.00023 0.00593 * * H 4 -0.00134 -0.00134 0.00655 * * H 5 -0.00023 0.00023 -0.00593 * * H 6 0.00134 -0.00134 -0.00655 * * H 7 0.00023 -0.00023 -0.00593 * * H 8 -0.00134 0.00134 -0.00655 * * C 1 0.00000 0.00000 0.00444 * * C 2 0.00000 0.00000 -0.00444 * * N 1 -0.00082 -0.00082 0.00258 * * N 2 0.00082 0.00082 0.00258 * * N 3 -0.00082 0.00082 -0.00258 * * N 4 0.00082 -0.00082 -0.00258 * * O 1 0.00000 0.00000 -0.00149 * * O 2 0.00000 0.00000 0.00149 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x 0.007525 0.000000 0.000000 * * y 0.000000 0.007525 0.000000 * * z 0.000000 0.000000 -0.000196 * * * * Pressure: -0.0050 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000006 | -2408.697669 | <-- min BFGS | trial step | 1.000000 | 0.000000 | -2408.697768 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 22 with enthalpy= -2.40869777E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 6.190599E-006 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 6.821664E-003 | 1.000000E-002 | eV/A | Yes | <-- BFGS | |dR|max | 1.454672E-003 | 5.000000E-004 | A | No | <-- BFGS | Smax | 7.525037E-003 | 2.000000E-002 | GPa | Yes | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 23 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000000 | -2408.697768 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 23 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.7715629 0.0000000 0.0000000 1.0886454 0.0000000 0.0000000 0.0000000 5.7715629 0.0000000 0.0000000 1.0886454 0.0000000 0.0000000 0.0000000 4.6689250 0.0000000 0.0000000 1.3457456 Lattice parameters(A) Cell Angles a = 5.771563 alpha = 90.000000 b = 5.771563 beta = 90.000000 c = 4.668925 gamma = 90.000000 Current cell volume = 155.526270 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.250592 0.750592 0.285308 x x H 2 0.137305 0.637305 -0.036969 x x H 3 -0.250592 -0.750592 0.285308 x x H 4 -0.137305 -0.637305 -0.036969 x x H 5 0.750592 -0.250592 -0.285308 x x H 6 0.637305 -0.137305 0.036969 x x H 7 -0.750592 0.250592 -0.285308 x x H 8 -0.637305 0.137305 0.036969 x x C 1 0.000000 0.500000 0.332843 x x C 2 0.500000 0.000000 -0.332843 x x N 1 0.140281 0.640281 0.182146 x x N 2 -0.140281 -0.640281 0.182146 x x N 3 0.640281 -0.140281 -0.182146 x x N 4 -0.640281 0.140281 -0.182146 x x O 1 0.000000 0.500000 0.604027 x x O 2 0.500000 0.000000 -0.604027 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Fermi Energy gain Timer <-- SCF energy per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.28969433E+003 -3.76441836E+000 27708.99 <-- SCF 1 -2.41735467E+003 -3.89386020E+000 7.97877123E+000 27812.97 <-- SCF 2 -2.41735558E+003 -3.89386135E+000 5.63222867E-005 27878.78 <-- SCF 3 -2.40913760E+003 -1.39034153E+000 -5.13623612E-001 27960.71 <-- SCF 4 -2.40873966E+003 -1.10638783E+000 -2.48709357E-002 28048.82 <-- SCF 5 -2.40867789E+003 -8.71560283E-001 -3.86108028E-003 28139.13 <-- SCF 6 -2.40868821E+003 -7.87470688E-001 6.45112576E-004 28219.84 <-- SCF 7 -2.40869560E+003 -7.72926272E-001 4.61828696E-004 28302.91 <-- SCF 8 -2.40869782E+003 -7.54260506E-001 1.39116729E-004 28358.82 <-- SCF 9 -2.40869792E+003 -7.55707996E-001 6.27842380E-006 28397.67 <-- SCF 10 -2.40869792E+003 -7.54335258E-001 -1.34523095E-007 28431.34 <-- SCF 11 -2.40869792E+003 -7.54123621E-001 7.73049148E-008 28464.61 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2408.697921571 eV (not corrected for finite basis set) ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.00093 -0.00093 0.00513 * * H 2 0.00123 0.00123 0.00447 * * H 3 0.00093 0.00093 0.00513 * * H 4 -0.00123 -0.00123 0.00447 * * H 5 -0.00093 0.00093 -0.00513 * * H 6 0.00123 -0.00123 -0.00447 * * H 7 0.00093 -0.00093 -0.00513 * * H 8 -0.00123 0.00123 -0.00447 * * C 1 0.00000 0.00000 0.00038 * * C 2 0.00000 0.00000 -0.00038 * * N 1 0.00071 0.00071 0.00533 * * N 2 -0.00071 -0.00071 0.00533 * * N 3 0.00071 -0.00071 -0.00533 * * N 4 -0.00071 0.00071 -0.00533 * * O 1 0.00000 0.00000 0.00265 * * O 2 0.00000 0.00000 -0.00265 * * * ************************************************************************* ***************** Stress Tensor ***************** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x 0.006772 0.000000 0.000000 * * y 0.000000 0.006772 0.000000 * * z 0.000000 0.000000 -0.019631 * * * * Pressure: 0.0020 * * * ************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000000 | -2408.697768 | <-- min BFGS | trial step | 1.000000 | 0.000000 | -2408.697773 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 23 with enthalpy= -2.40869777E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 2.951149E-007 | 5.000000E-006 | eV | Yes | <-- BFGS | |F|max | 5.425149E-003 | 1.000000E-002 | eV/A | Yes | <-- BFGS | |dR|max | 8.883526E-005 | 5.000000E-004 | A | Yes | <-- BFGS | Smax | 1.963066E-002 | 2.000000E-002 | GPa | Yes | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS BFGS: Geometry optimization completed successfully. ================================================================================ BFGS: Final Configuration: ================================================================================ ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.7715629 0.0000000 0.0000000 1.0886454 0.0000000 0.0000000 0.0000000 5.7715629 0.0000000 0.0000000 1.0886454 0.0000000 0.0000000 0.0000000 4.6689250 0.0000000 0.0000000 1.3457456 Lattice parameters(A) Cell Angles a = 5.771563 alpha = 90.000000 b = 5.771563 beta = 90.000000 c = 4.668925 gamma = 90.000000 Current cell volume = 155.526270 A**3 ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.250592 0.750592 0.285308 x x H 2 0.137305 0.637305 -0.036969 x x H 3 -0.250592 -0.750592 0.285308 x x H 4 -0.137305 -0.637305 -0.036969 x x H 5 0.750592 -0.250592 -0.285308 x x H 6 0.637305 -0.137305 0.036969 x x H 7 -0.750592 0.250592 -0.285308 x x H 8 -0.637305 0.137305 0.036969 x x C 1 0.000000 0.500000 0.332843 x x C 2 0.500000 0.000000 -0.332843 x x N 1 0.140281 0.640281 0.182146 x x N 2 -0.140281 -0.640281 0.182146 x x N 3 0.640281 -0.140281 -0.182146 x x N 4 -0.640281 0.140281 -0.182146 x x O 1 0.000000 0.500000 0.604027 x x O 2 0.500000 0.000000 -0.604027 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx BFGS: Final Enthalpy = -2.40869777E+003 eV ************************** Symmetrised Forces *************************** * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.00093 -0.00093 0.00513 * * H 2 0.00123 0.00123 0.00447 * * H 3 0.00093 0.00093 0.00513 * * H 4 -0.00123 -0.00123 0.00447 * * H 5 -0.00093 0.00093 -0.00513 * * H 6 0.00123 -0.00123 -0.00447 * * H 7 0.00093 -0.00093 -0.00513 * * H 8 -0.00123 0.00123 -0.00447 * * C 1 0.00000 0.00000 0.00038 * * C 2 0.00000 0.00000 -0.00038 * * N 1 0.00071 0.00071 0.00533 * * N 2 -0.00071 -0.00071 0.00533 * * N 3 0.00071 -0.00071 -0.00533 * * N 4 -0.00071 0.00071 -0.00533 * * O 1 0.00000 0.00000 0.00265 * * O 2 0.00000 0.00000 -0.00265 * * * ************************************************************************* *********** Symmetrised Stress Tensor *********** * * * Cartesian components (GPa) * * --------------------------------------------- * * x y z * * * * x 0.006772 0.000000 0.000000 * * y 0.000000 0.006772 0.000000 * * z 0.000000 0.000000 -0.019631 * * * * Pressure: 0.0020 * * * ************************************************* Writing model to urea.check Initialisation time = 3.48 Calculation time = 28511.39 Finalisation time = 0.90 Total time = 28515.77 gdis-0.90/models/gibb_re.xtl0000644000175000017500000000160407717054774014456 0ustar seanseanTITLE gibbsite fit CELL 8.809497 4.993427 9.787895 90.000000 95.953833 90.000000 SYMMETRY NUMBER 14 SYMMETRY LABEL P121/N1 SYMMETRY QUALIFIER b_unique ATOMS NAME X Y Z Al 0.16390 0.54569 0.99579 Al 0.33511 0.04191 0.99641 O1 0.17415 0.23253 0.87603 O1 0.64641 0.61091 0.90888 O1 0.49581 0.09403 0.87323 O1 0.96873 0.68928 0.90725 O1 0.25318 0.77107 0.86365 O1 0.78531 0.15722 0.87314 H1 0.10559 0.17303 0.79480 H2 0.55584 0.49715 0.87930 H3 0.50272 0.11278 0.77267 H4 0.94803 0.88147 0.88403 H5 0.23179 0.80001 0.76302 H6 0.78788 0.14938 0.77157 EOF gdis-0.90/models/1_C2H4_HOOH_Tifer.arc0000644000175000017500001016521707732030317015645 0ustar seansean!BIOSYM archive 2 PBC=ON 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.214522867 4.762342132 3.441581043 CORE 1 Si Si 0.0000 1 Si -2.505641842 12.020308372 7.301711165 CORE 2 Si Si 0.0000 2 Si 1.123689917 4.750089602 3.497341944 CORE 3 Si Si 0.0000 3 Si -8.562097635 12.000704325 7.297983629 CORE 4 Si Si 0.0000 4 Si -13.565106158 7.665615116 11.119393017 CORE 5 Si Si 0.0000 5 Si -3.931663812 14.849922031 7.310155176 CORE 6 Si Si 0.0000 6 Si -7.079881546 9.161721085 7.241690223 CORE 7 Si Si 0.0000 7 Si 2.503140049 16.338532334 3.526705801 CORE 8 Si Si 0.0000 8 Si -13.551634965 16.334640354 3.455426178 CORE 9 Si Si 0.0000 9 Si -3.861421165 9.099449404 7.336247930 CORE 10 Si Si 0.0000 10 Si -7.145697945 14.877310039 7.283834205 CORE 11 Si Si 0.0000 11 Si 2.455990875 7.685507459 3.469347385 CORE 12 Si Si 0.0000 12 Si -9.932117932 4.532859455 5.710205297 CORE 13 Si Si 0.0000 13 Si -0.215923974 12.059516468 9.532375406 CORE 14 Si Si 0.0000 14 Si -10.847581699 11.987586910 9.535570437 CORE 15 Si Si 0.0000 15 Si -1.185849849 4.738990251 5.733103020 CORE 16 Si Si 0.0000 16 Si -10.003130362 4.707277821 8.764198634 CORE 17 Si Si 0.0000 17 Si -0.224584027 12.006614369 5.054006758 CORE 18 Si Si 0.0000 18 Si -10.869520498 12.067300428 5.046247397 CORE 19 Si Si 0.0000 19 Si -1.162563930 4.697619944 8.880893342 CORE 20 Si Si 0.0000 20 Ti -8.947758637 7.661146547 5.027609715 CORE 21 Ti Ti 0.0000 21 Si 0.761892170 14.949239596 8.900291746 CORE 22 Si Si 0.0000 22 Si -2.202732452 16.268188398 5.081468812 CORE 23 Si Si 0.0000 23 Si -11.878320386 9.103773826 8.815471276 CORE 24 Si Si 0.0000 24 Si 0.727251960 9.087052726 5.705260606 CORE 25 Si Si 0.0000 25 Si -8.954301788 16.287504151 9.517769550 CORE 26 Si Si 0.0000 26 Si -11.756694761 14.961203831 5.714161050 CORE 27 Si Si 0.0000 27 Si -2.134221815 7.658840188 9.554892769 CORE 28 Si Si 0.0000 28 Si -11.954721293 9.203812129 5.731049071 CORE 29 Si Si 0.0000 29 Si -2.158469962 16.250746561 9.560141748 CORE 30 Si Si 0.0000 30 Si 0.698192673 14.921707441 5.746948155 CORE 31 Si Si 0.0000 31 Si -9.014152372 7.634190981 9.232194623 CORE 32 Si Si 0.0000 32 Si -2.154428604 7.685795754 5.080708090 CORE 33 Si Si 0.0000 33 Si -11.828284527 14.902103393 8.839966515 CORE 34 Si Si 0.0000 34 Si -8.813046710 16.163969820 5.017339972 CORE 35 Si Si 0.0000 35 Si 0.705505606 9.115882208 8.866363558 CORE 36 Si Si 0.0000 36 O -15.176068359 7.711165698 3.431311300 CORE 37 O O 0.0000 37 O -5.538392210 14.971582445 7.385542697 CORE 38 O O 0.0000 38 O -15.145084616 16.112797490 3.577826299 CORE 39 O O 0.0000 39 O -5.474115376 9.096566455 7.373142933 CORE 40 O O 0.0000 40 O -10.466731837 4.338837041 7.242907378 CORE 41 O O 0.0000 41 O -0.662012898 12.006758516 3.487756850 CORE 42 O O 0.0000 42 O -10.394372287 12.070471671 3.489354366 CORE 43 O O 0.0000 43 O -0.767280647 4.648753973 7.303308681 CORE 44 O O 0.0000 44 O -13.053393281 6.127850547 3.679382646 CORE 45 O O 0.0000 45 O -3.531954280 13.271796186 7.242070584 CORE 46 O O 0.0000 46 O -7.587937957 10.707269615 7.245341687 CORE 47 O O 0.0000 47 O 2.183295445 17.937703700 3.555537154 CORE 48 O O 0.0000 48 O -3.337969105 10.637213974 7.379228707 CORE 49 O O 0.0000 49 O -13.244299326 17.929631445 3.305411859 CORE 50 O O 0.0000 50 O 1.935233054 6.146445562 3.441733187 CORE 51 O O 0.0000 51 O -7.638743598 13.329743445 7.366600726 CORE 52 O O 0.0000 52 O -11.214190586 4.491777443 4.703237982 CORE 53 O O 0.0000 53 O -1.564775255 12.167482878 8.626584078 CORE 54 O O 0.0000 54 O 0.170121919 4.723422331 4.825942393 CORE 55 O O 0.0000 55 O -9.493726833 11.912774405 8.634343439 CORE 56 O O 0.0000 56 O -1.578438893 12.007479253 5.959493798 CORE 57 O O 0.0000 57 O -11.339472678 4.917877187 9.675391086 CORE 58 O O 0.0000 58 O -9.528751934 12.053894719 5.978131479 CORE 59 O O 0.0000 59 O 0.207648813 4.603203391 9.759146545 CORE 60 O O 0.0000 60 O -10.494444005 8.495327608 5.477956962 CORE 61 O O 0.0000 61 O -0.683759252 15.619092611 9.258591666 CORE 62 O O 0.0000 62 O -10.401685221 8.411433816 8.874579352 CORE 63 O O 0.0000 63 O -0.768435321 15.584353085 5.464263971 CORE 64 O O 0.0000 64 O -0.715320332 8.413163585 5.338897035 CORE 65 O O 0.0000 65 O -10.400722992 15.602948101 9.204656498 CORE 66 O O 0.0000 66 O -10.235604659 15.498441228 5.462590383 CORE 67 O O 0.0000 67 O -0.723980385 8.430749569 9.264449223 CORE 68 O O 0.0000 68 O -12.411587171 9.048132926 7.282617051 CORE 69 O O 0.0000 69 O -2.529505098 16.005263522 3.513773532 CORE 70 O O 0.0000 70 O -8.778598946 7.698913168 3.231926142 CORE 71 O O 0.0000 71 O 1.067880690 15.125387731 7.315099867 CORE 72 O O 0.0000 72 O -2.540474498 7.826916068 3.510350285 CORE 73 O O 0.0000 73 O -12.161600324 15.161136289 7.272575524 CORE 74 O O 0.0000 74 O 1.013995919 8.867227926 7.289919979 CORE 75 O O 0.0000 75 O -8.532076119 15.925982446 3.436103847 CORE 76 O O 0.0000 76 O -13.101504683 8.516805572 4.817498382 CORE 77 O O 0.0000 77 O -3.275616728 15.526261679 8.637994903 CORE 78 O O 0.0000 78 O 1.819958134 15.642588638 4.829746001 CORE 79 O O 0.0000 79 O -7.768259493 8.347144071 8.479460501 CORE 80 O O 0.0000 80 O -3.319494327 8.386063872 5.970296046 CORE 81 O O 0.0000 81 O -13.011055246 15.545865726 9.742714956 CORE 82 O O 0.0000 82 O -7.589669967 15.489648236 5.839147625 CORE 83 O O 0.0000 83 O 1.894434585 8.464480063 9.757472957 CORE 84 O O 0.0000 84 O -7.539826554 8.462317851 5.837474037 CORE 85 O O 0.0000 85 O 1.929459686 15.681940881 9.754582215 CORE 86 O O 0.0000 86 O -3.387620073 15.608425702 5.972121778 CORE 87 O O 0.0000 87 O -12.918873799 8.303611553 9.766601618 CORE 88 O O 0.0000 88 O 1.916373384 8.398028107 4.838113940 CORE 89 O O 0.0000 89 O -7.823491383 15.721004829 8.502890730 CORE 90 O O 0.0000 90 O -12.813028714 15.771168128 4.792927071 CORE 91 O O 0.0000 91 O -3.314490741 8.291791465 8.641189935 CORE 92 O O 0.0000 92 O -9.133853542 5.946368957 5.572438597 CORE 93 O O 0.0000 93 O 0.734757339 13.357852190 9.271523935 CORE 94 O O 0.0000 94 O -2.128833338 17.878747410 5.348329984 CORE 95 O O 0.0000 95 O -11.764007694 10.661142444 9.294802019 CORE 96 O O 0.0000 96 O 0.675484091 10.683917734 5.366054800 CORE 97 O O 0.0000 97 O -9.086704367 17.910171545 9.370189540 CORE 98 O O 0.0000 98 O -11.794606546 13.374717437 5.341787777 CORE 99 O O 0.0000 99 O -1.961790548 6.075669184 9.211122632 CORE 100 O O 0.0000 100 O -11.815005780 10.779343320 5.346276035 CORE 101 O O 0.0000 101 O -2.138455618 17.856548709 9.249615150 CORE 102 O O 0.0000 102 O 0.669903168 13.329599298 5.383627471 CORE 103 O O 0.0000 103 O -9.116533437 6.075525037 8.754461396 CORE 104 O O 0.0000 104 O -2.033380315 6.105940140 5.472099405 CORE 105 O O 0.0000 105 O -11.728405256 13.299760784 9.131322926 CORE 106 O O 0.0000 106 O -8.879248000 17.761555565 5.338060241 CORE 107 O O 0.0000 107 O 0.626987797 10.720963619 9.144939844 CORE 108 O O 0.0000 108 O2 11.746495143 6.586095163 4.640098081 CORE 109 O2 O2 0.0000 109 O2 12.798595293 7.400816324 4.072599693 CORE 110 O2 O2 0.0000 110 H 11.307719152 5.804383758 4.280657078 CORE 111 H H 0.0000 111 H 12.322484854 8.224618772 3.907294868 CORE 112 H H 0.0000 112 C 13.083607241 6.254844415 5.453613867 CORE 113 C C 0.0000 113 C 12.254551554 5.132368533 5.343537437 CORE 114 C C 0.0000 114 H 12.450076293 4.460065013 4.701944756 CORE 115 H H 0.0000 115 H 11.407021087 5.063610218 5.872771524 CORE 116 H H 0.0000 116 H 13.749853943 6.361081056 4.848535827 CORE 117 H H 0.0000 117 H 12.888082502 6.927292082 6.095282621 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.214744179 4.762944379 3.441828278 CORE 1 Si Si 0.0000 1 Si -2.505472490 12.020470250 7.301723033 CORE 2 Si Si 0.0000 2 Si 1.124198935 4.750155477 3.497320872 CORE 3 Si Si 0.0000 3 Si -8.562608000 12.000000741 7.297863815 CORE 4 Si Si 0.0000 4 Si -13.564069646 7.666382701 11.119893191 CORE 5 Si Si 0.0000 5 Si -3.931829893 14.849816082 7.310170999 CORE 6 Si Si 0.0000 6 Si -7.083151197 9.162347549 7.240061898 CORE 7 Si Si 0.0000 7 Si 2.503495881 16.338538388 3.526694847 CORE 8 Si Si 0.0000 8 Si -13.551382861 16.334779312 3.455441925 CORE 9 Si Si 0.0000 9 Si -3.861529319 9.100121851 7.336548111 CORE 10 Si Si 0.0000 10 Si -7.146070135 14.876905129 7.283850485 CORE 11 Si Si 0.0000 11 Si 2.456836673 7.685525333 3.469332855 CORE 12 Si Si 0.0000 12 Si -9.936966792 4.534108780 5.710628486 CORE 13 Si Si 0.0000 13 Si -0.215689768 12.059565622 9.532391305 CORE 14 Si Si 0.0000 14 Si -10.847828029 11.986872804 9.535696717 CORE 15 Si Si 0.0000 15 Si -1.185298877 4.738708731 5.733096173 CORE 16 Si Si 0.0000 16 Si -10.003958841 4.707927493 8.763952084 CORE 17 Si Si 0.0000 17 Si -0.224372914 12.006655883 5.054029960 CORE 18 Si Si 0.0000 18 Si -10.870051456 12.066025444 5.046399465 CORE 19 Si Si 0.0000 19 Si -1.162184427 4.697445814 8.880964089 CORE 20 Si Si 0.0000 20 Ti -8.961416887 7.669867609 5.034946648 CORE 21 Ti Ti 0.0000 21 Si 0.762171409 14.949221866 8.900280183 CORE 22 Si Si 0.0000 22 Si -2.202530962 16.267874445 5.081516737 CORE 23 Si Si 0.0000 23 Si -11.877936649 9.103359690 8.814731170 CORE 24 Si Si 0.0000 24 Si 0.727804856 9.087125233 5.705254900 CORE 25 Si Si 0.0000 25 Si -8.954812923 16.287043888 9.517505731 CORE 26 Si Si 0.0000 26 Si -11.756841789 14.960719496 5.714150095 CORE 27 Si Si 0.0000 27 Si -2.133698170 7.658962858 9.554681896 CORE 28 Si Si 0.0000 28 Si -11.951677766 9.202311554 5.730593703 CORE 29 Si Si 0.0000 29 Si -2.158249034 16.250492141 9.560097322 CORE 30 Si Si 0.0000 30 Si 0.698472681 14.921717964 5.746947470 CORE 31 Si Si 0.0000 31 Si -9.015509691 7.635741142 9.234741520 CORE 32 Si Si 0.0000 32 Si -2.153575493 7.686080301 5.080706492 CORE 33 Si Si 0.0000 33 Si -11.828476588 14.901668212 8.839931217 CORE 34 Si Si 0.0000 34 Si -8.813777041 16.163266813 5.017599531 CORE 35 Si Si 0.0000 35 Si 0.706002116 9.115919687 8.866386988 CORE 36 Si Si 0.0000 36 O -15.177005377 7.710910989 3.431263146 CORE 37 O O 0.0000 37 O -5.538237676 14.971614013 7.386031080 CORE 38 O O 0.0000 38 O -15.145212592 16.112756119 3.578179122 CORE 39 O O 0.0000 39 O -5.472946269 9.096545410 7.373745424 CORE 40 O O 0.0000 40 O -10.466329048 4.338409067 7.243149744 CORE 41 O O 0.0000 41 O -0.662091416 12.006750300 3.487798690 CORE 42 O O 0.0000 42 O -10.394320135 12.070721479 3.489223750 CORE 43 O O 0.0000 43 O -0.767208288 4.648806730 7.303134171 CORE 44 O O 0.0000 44 O -13.053133287 6.127424447 3.679099430 CORE 45 O O 0.0000 45 O -3.531991037 13.271804258 7.242140494 CORE 46 O O 0.0000 46 O -7.587424127 10.708128589 7.246000092 CORE 47 O O 0.0000 47 O 2.183089914 17.937746800 3.555501856 CORE 48 O O 0.0000 48 O -3.337945435 10.636708016 7.379584496 CORE 49 O O 0.0000 49 O -13.244442505 17.929603769 3.305565981 CORE 50 O O 0.0000 50 O 1.934979603 6.146254855 3.441954786 CORE 51 O O 0.0000 51 O -7.638736092 13.330086660 7.366939856 CORE 52 O O 0.0000 52 O -11.214012959 4.491064057 4.703197284 CORE 53 O O 0.0000 53 O -1.564688847 12.167618377 8.626510897 CORE 54 O O 0.0000 54 O 0.169715667 4.723538081 4.826156536 CORE 55 O O 0.0000 55 O -9.493492434 11.913386887 8.634482119 CORE 56 O O 0.0000 56 O -1.578055926 12.007362494 5.959553743 CORE 57 O O 0.0000 57 O -11.339130317 4.917504133 9.675573887 CORE 58 O O 0.0000 58 O -9.528345681 12.054211123 5.978420021 CORE 59 O O 0.0000 59 O 0.207361107 4.603242455 9.758975459 CORE 60 O O 0.0000 60 O -10.500906328 8.499083225 5.479197699 CORE 61 O O 0.0000 61 O -0.684121435 15.619179964 9.258548686 CORE 62 O O 0.0000 62 O -10.401632298 8.411608234 8.874059551 CORE 63 O O 0.0000 63 O -0.768610446 15.584197261 5.464355638 CORE 64 O O 0.0000 64 O -0.715852060 8.413060663 5.339051461 CORE 65 O O 0.0000 65 O -10.400287103 15.603187962 9.204496366 CORE 66 O O 0.0000 66 O -10.235183588 15.498666819 5.462597915 CORE 67 O O 0.0000 67 O -0.724323708 8.430661495 9.264492889 CORE 68 O O 0.0000 68 O -12.412104850 9.048339489 7.283641971 CORE 69 O O 0.0000 69 O -2.529451598 16.005238440 3.513274955 CORE 70 O O 0.0000 70 O -8.782930127 7.701890821 3.220904274 CORE 71 O O 0.0000 71 O 1.067749442 15.125513716 7.314853089 CORE 72 O O 0.0000 72 O -2.540733145 7.826750010 3.510258694 CORE 73 O O 0.0000 73 O -12.161542590 15.161158199 7.272741666 CORE 74 O O 0.0000 74 O 1.013917209 8.867177763 7.289978022 CORE 75 O O 0.0000 75 O -8.531820744 15.926476151 3.436235528 CORE 76 O O 0.0000 76 O -13.102656663 8.515950922 4.816859832 CORE 77 O O 0.0000 77 O -3.275672729 15.526358690 8.638079648 CORE 78 O O 0.0000 78 O 1.819815147 15.642614152 4.829830213 CORE 79 O O 0.0000 79 O -7.767092888 8.347140611 8.479293675 CORE 80 O O 0.0000 80 O -3.319559374 8.385489588 5.970405970 CORE 81 O O 0.0000 81 O -13.011051590 15.545971675 9.742628386 CORE 82 O O 0.0000 82 O -7.589208290 15.490125508 5.839172044 CORE 83 O O 0.0000 83 O 1.894079908 8.464698878 9.757296546 CORE 84 O O 0.0000 84 O -7.538970171 8.472212130 5.846012682 CORE 85 O O 0.0000 85 O 1.929247418 15.681940593 9.754506371 CORE 86 O O 0.0000 86 O -3.387922212 15.608597958 5.972180278 CORE 87 O O 0.0000 87 O -12.919147842 8.303604634 9.766793852 CORE 88 O O 0.0000 88 O 1.916221737 8.398107532 4.838451624 CORE 89 O O 0.0000 89 O -7.823335310 15.721230420 8.502952044 CORE 90 O O 0.0000 90 O -12.812899775 15.771399773 4.792486765 CORE 91 O O 0.0000 91 O -3.314302914 8.291958244 8.641475814 CORE 92 O O 0.0000 92 O -9.156501119 5.940991826 5.579659367 CORE 93 O O 0.0000 93 O 0.734722699 13.357802315 9.271663299 CORE 94 O O 0.0000 94 O -2.128760401 17.878783591 5.348968458 CORE 95 O O 0.0000 95 O -11.763859318 10.661563931 9.295540832 CORE 96 O O 0.0000 96 O 0.675339757 10.683948870 5.366674940 CORE 97 O O 0.0000 97 O -9.086213631 17.910577897 9.370086234 CORE 98 O O 0.0000 98 O -11.794764351 13.375406606 5.342070994 CORE 99 O O 0.0000 99 O -1.962020521 6.075694554 9.211051657 CORE 100 O O 0.0000 100 O -11.815286366 10.780884976 5.346360095 CORE 101 O O 0.0000 101 O -2.138435412 17.856202322 9.249309112 CORE 102 O O 0.0000 102 O 0.669656838 13.329619190 5.383862382 CORE 103 O O 0.0000 103 O -9.116132573 6.074327460 8.754290157 CORE 104 O O 0.0000 104 O -2.033910503 6.105864895 5.472337739 CORE 105 O O 0.0000 105 O -11.728324814 13.299933472 9.131214523 CORE 106 O O 0.0000 106 O -8.880738683 17.760296870 5.337579161 CORE 107 O O 0.0000 107 O 0.626784575 10.720989854 9.145054105 CORE 108 O O 0.0000 108 O2 11.743329990 6.601627911 4.628490685 CORE 109 O2 O2 0.0000 109 O2 12.817319674 7.426581376 4.043407835 CORE 110 O2 O2 0.0000 110 H 11.305229868 5.792633582 4.270776672 CORE 111 H H 0.0000 111 H 12.322161160 8.228736776 3.904835531 CORE 112 H H 0.0000 112 C 13.065663613 6.219184652 5.472671391 CORE 113 C C 0.0000 113 C 12.274504892 5.120746216 5.372183706 CORE 114 C C 0.0000 114 H 12.457349390 4.437746525 4.681996655 CORE 115 H H 0.0000 115 H 11.403082880 5.060116662 5.883860564 CORE 116 H H 0.0000 116 H 13.787535756 6.361558616 4.825106207 CORE 117 H H 0.0000 117 H 12.885946740 6.946067138 6.118799876 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.215098279 4.763907861 3.442223853 CORE 1 Si Si 0.0000 1 Si -2.505201334 12.020729427 7.301742051 CORE 2 Si Si 0.0000 2 Si 1.125013365 4.750260705 3.497287172 CORE 3 Si Si 0.0000 3 Si -8.563424355 11.998875094 7.297672037 CORE 4 Si Si 0.0000 4 Si -13.562410957 7.667610981 11.120693394 CORE 5 Si Si 0.0000 5 Si -3.932095660 14.849646709 7.310196331 CORE 6 Si Si 0.0000 6 Si -7.088382639 9.163350095 7.237456579 CORE 7 Si Si 0.0000 7 Si 2.504065328 16.338548190 3.526677198 CORE 8 Si Si 0.0000 8 Si -13.550979303 16.335001731 3.455467181 CORE 9 Si Si 0.0000 9 Si -3.861702520 9.101197912 7.337028279 CORE 10 Si Si 0.0000 10 Si -7.146665946 14.876257186 7.283876578 CORE 11 Si Si 0.0000 11 Si 2.458190143 7.685553730 3.469309577 CORE 12 Si Si 0.0000 12 Si -9.944724852 4.536107817 5.711305681 CORE 13 Si Si 0.0000 13 Si -0.215314884 12.059644183 9.532416713 CORE 14 Si Si 0.0000 14 Si -10.848222350 11.985730148 9.535898689 CORE 15 Si Si 0.0000 15 Si -1.184417476 4.738258271 5.733085295 CORE 16 Si Si 0.0000 16 Si -10.005284598 4.708967084 8.763557573 CORE 17 Si Si 0.0000 17 Si -0.224035364 12.006722479 5.054067084 CORE 18 Si Si 0.0000 18 Si -10.870901103 12.063985614 5.046642744 CORE 19 Si Si 0.0000 19 Si -1.161577069 4.697167177 8.881077285 CORE 20 Si Si 0.0000 20 Ti -8.983270048 7.683821078 5.046685725 CORE 21 Ti Ti 0.0000 21 Si 0.762618075 14.949193469 8.900261621 CORE 22 Si Si 0.0000 22 Si -2.202208615 16.267371947 5.081593418 CORE 23 Si Si 0.0000 23 Si -11.877322556 9.102697045 8.813547031 CORE 24 Si Si 0.0000 24 Si 0.728689336 9.087241271 5.705245772 CORE 25 Si Si 0.0000 25 Si -8.955630817 16.286307295 9.517083683 CORE 26 Si Si 0.0000 26 Si -11.757077150 14.959944560 5.714132599 CORE 27 Si Si 0.0000 27 Si -2.132860070 7.659159330 9.554344516 CORE 28 Si Si 0.0000 28 Si -11.946807930 9.199910779 5.729865084 CORE 29 Si Si 0.0000 29 Si -2.157895704 16.250085069 9.560026119 CORE 30 Si Si 0.0000 30 Si 0.698920502 14.921734685 5.746946329 CORE 31 Si Si 0.0000 31 Si -9.017681632 7.638221487 9.238816630 CORE 32 Si Si 0.0000 32 Si -2.152210476 7.686535518 5.080703982 CORE 33 Si Si 0.0000 33 Si -11.828783924 14.900972124 8.839874696 CORE 34 Si Si 0.0000 34 Si -8.814945763 16.162142175 5.018014732 CORE 35 Si Si 0.0000 35 Si 0.706796724 9.115979508 8.866424416 CORE 36 Si Si 0.0000 36 O -15.178504720 7.710503485 3.431186085 CORE 37 O O 0.0000 37 O -5.537990576 14.971664609 7.386812417 CORE 38 O O 0.0000 38 O -15.145417547 16.112689956 3.578743654 CORE 39 O O 0.0000 39 O -5.471075890 9.096511824 7.374709411 CORE 40 O O 0.0000 40 O -10.465684355 4.337724367 7.243537484 CORE 41 O O 0.0000 41 O -0.662216891 12.006737038 3.487865709 CORE 42 O O 0.0000 42 O -10.394236806 12.071121055 3.489014780 CORE 43 O O 0.0000 43 O -0.767092435 4.648891057 7.302854910 CORE 44 O O 0.0000 44 O -13.052717027 6.126742485 3.678646268 CORE 45 O O 0.0000 45 O -3.532049733 13.271817232 7.242252320 CORE 46 O O 0.0000 46 O -7.586601807 10.709502746 7.247053463 CORE 47 O O 0.0000 47 O 2.182761216 17.937815559 3.555445411 CORE 48 O O 0.0000 48 O -3.337907330 10.635898628 7.380153820 CORE 49 O O 0.0000 49 O -13.244671708 17.929559372 3.305812455 CORE 50 O O 0.0000 50 O 1.934574313 6.145949839 3.442309282 CORE 51 O O 0.0000 51 O -7.638724353 13.330635862 7.367482479 CORE 52 O O 0.0000 52 O -11.213728909 4.489922842 4.703132242 CORE 53 O O 0.0000 53 O -1.564550478 12.167835319 8.626393898 CORE 54 O O 0.0000 54 O 0.169065393 4.723723167 4.826499165 CORE 55 O O 0.0000 55 O -9.493117550 11.914366801 8.634704021 CORE 56 O O 0.0000 56 O -1.577443180 12.007175679 5.959649594 CORE 57 O O 0.0000 57 O -11.338582617 4.916907219 9.675866309 CORE 58 O O 0.0000 58 O -9.527695792 12.054717368 5.978881627 CORE 59 O O 0.0000 59 O 0.206900585 4.603305015 9.758701751 CORE 60 O O 0.0000 60 O -10.511245853 8.505092154 5.481182802 CORE 61 O O 0.0000 61 O -0.684700889 15.619319787 9.258479916 CORE 62 O O 0.0000 62 O -10.401547814 8.411887159 8.873227930 CORE 63 O O 0.0000 63 O -0.768890455 15.583947742 5.464502229 CORE 64 O O 0.0000 64 O -0.716703054 8.412896047 5.339298468 CORE 65 O O 0.0000 65 O -10.399589873 15.603571826 9.204240155 CORE 66 O O 0.0000 66 O -10.234509836 15.499027620 5.462609934 CORE 67 O O 0.0000 67 O -0.724873332 8.430520518 9.264562723 CORE 68 O O 0.0000 68 O -12.412933136 9.048670163 7.285281783 CORE 69 O O 0.0000 69 O -2.529366152 16.005198367 3.512477339 CORE 70 O O 0.0000 70 O -8.789859901 7.706655037 3.203269376 CORE 71 O O 0.0000 71 O 1.067539484 15.125715090 7.314458198 CORE 72 O O 0.0000 72 O -2.541147095 7.826484347 3.510112103 CORE 73 O O 0.0000 73 O -12.161450216 15.161193371 7.273007538 CORE 74 O O 0.0000 74 O 1.013791349 8.867097473 7.290070830 CORE 75 O O 0.0000 75 O -8.531412182 15.927266223 3.436446248 CORE 76 O O 0.0000 76 O -13.104499907 8.514583396 4.815838183 CORE 77 O O 0.0000 77 O -3.275762409 15.526513792 8.638215209 CORE 78 O O 0.0000 78 O 1.819586521 15.642654802 4.829964861 CORE 79 O O 0.0000 79 O -7.765226550 8.347135278 8.479026662 CORE 80 O O 0.0000 80 O -3.319663294 8.384570649 5.970581773 CORE 81 O O 0.0000 81 O -13.011045624 15.546141192 9.742489859 CORE 82 O O 0.0000 82 O -7.588469684 15.490888913 5.839211145 CORE 83 O O 0.0000 83 O 1.893512578 8.465049157 9.757014318 CORE 84 O O 0.0000 84 O -7.537599766 8.488042975 5.859674483 CORE 85 O O 0.0000 85 O 1.928907944 15.681940016 9.754384960 CORE 86 O O 0.0000 86 O -3.388405828 15.608873424 5.972273922 CORE 87 O O 0.0000 87 O -12.919586425 8.303593390 9.767101336 CORE 88 O O 0.0000 88 O 1.915979256 8.398234526 4.838991889 CORE 89 O O 0.0000 89 O -7.823085516 15.721591365 8.503050177 CORE 90 O O 0.0000 90 O -12.812693666 15.771770376 4.791782337 CORE 91 O O 0.0000 91 O -3.314002507 8.292225061 8.641933160 CORE 92 O O 0.0000 92 O -9.192737280 5.932388388 5.591212676 CORE 93 O O 0.0000 93 O 0.734667082 13.357722457 9.271886267 CORE 94 O O 0.0000 94 O -2.128643586 17.878841538 5.349990031 CORE 95 O O 0.0000 95 O -11.763622033 10.662238396 9.296722994 CORE 96 O O 0.0000 96 O 0.675108630 10.683998601 5.367667149 CORE 97 O O 0.0000 97 O -9.085428453 17.911228146 9.369920853 CORE 98 O O 0.0000 98 O -11.795017032 13.376509333 5.342524156 CORE 99 O O 0.0000 99 O -1.962388284 6.075735204 9.210938081 CORE 100 O O 0.0000 100 O -11.815735534 10.783351627 5.346494591 CORE 101 O O 0.0000 101 O -2.138403273 17.855648220 9.248819359 CORE 102 O O 0.0000 102 O 0.669262517 13.329651191 5.384238178 CORE 103 O O 0.0000 103 O -9.115490959 6.072411164 8.754016069 CORE 104 O O 0.0000 104 O -2.034758996 6.105744676 5.472719165 CORE 105 O O 0.0000 105 O -11.728195875 13.300209803 9.131041002 CORE 106 O O 0.0000 106 O -8.883123662 17.758282843 5.336809386 CORE 107 O O 0.0000 107 O 0.626459534 10.721031945 9.145236982 CORE 108 O O 0.0000 108 O2 11.738265784 6.626480222 4.609918806 CORE 109 O2 O2 0.0000 109 O2 12.847278836 7.467805373 3.996700892 CORE 110 O2 O2 0.0000 110 H 11.301247207 5.773833301 4.254968115 CORE 111 H H 0.0000 111 H 12.321643097 8.235325754 3.900900545 CORE 112 H H 0.0000 112 C 13.036953614 6.162129089 5.503163399 CORE 113 C C 0.0000 113 C 12.306430271 5.102150623 5.418017721 CORE 114 C C 0.0000 114 H 12.468986384 4.402036743 4.650079587 CORE 115 H H 0.0000 115 H 11.396781441 5.054527202 5.901603105 CORE 116 H H 0.0000 116 H 13.847826849 6.362322598 4.787618831 CORE 117 H H 0.0000 117 H 12.882529484 6.976107170 6.156427378 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.215664647 4.765449661 3.442856697 CORE 1 Si Si 0.0000 1 Si -2.504767562 12.021143851 7.301772556 CORE 2 Si Si 0.0000 2 Si 1.126316414 4.750429213 3.497233236 CORE 3 Si Si 0.0000 3 Si -8.564730868 11.997073828 7.297365314 CORE 4 Si Si 0.0000 4 Si -13.559757324 7.669576143 11.121973765 CORE 5 Si Si 0.0000 5 Si -3.932520965 14.849375712 7.310236802 CORE 6 Si Si 0.0000 6 Si -7.096752868 9.164953879 7.233288128 CORE 7 Si Si 0.0000 7 Si 2.504976558 16.338563758 3.526649051 CORE 8 Si Si 0.0000 8 Si -13.550333648 16.335357631 3.455507575 CORE 9 Si Si 0.0000 9 Si -3.861979449 9.102919320 7.337796684 CORE 10 Si Si 0.0000 10 Si -7.147618937 14.875220478 7.283918265 CORE 11 Si Si 0.0000 11 Si 2.460355541 7.685599425 3.469272378 CORE 12 Si Si 0.0000 12 Si -9.957137786 4.539306015 5.712389100 CORE 13 Si Si 0.0000 13 Si -0.214715031 12.059769879 9.532457412 CORE 14 Si Si 0.0000 14 Si -10.848853187 11.983901926 9.536221919 CORE 15 Si Si 0.0000 15 Si -1.183007235 4.737537534 5.733067875 CORE 16 Si Si 0.0000 16 Si -10.007405734 4.710630546 8.762926403 CORE 17 Si Si 0.0000 17 Si -0.223495170 12.006828860 5.054126420 CORE 18 Si Si 0.0000 18 Si -10.872260347 12.060721685 5.047031929 CORE 19 Si Si 0.0000 19 Si -1.160605411 4.696721474 8.881258337 CORE 20 Si Si 0.0000 20 Ti -9.018235298 7.706146918 5.065468248 CORE 21 Ti Ti 0.0000 21 Si 0.763332818 14.949147919 8.900231953 CORE 22 Si Si 0.0000 22 Si -2.201692861 16.266568037 5.081716046 CORE 23 Si Si 0.0000 23 Si -11.876339928 9.101636841 8.811652453 CORE 24 Si Si 0.0000 24 Si 0.730104774 9.087426933 5.705231166 CORE 25 Si Si 0.0000 25 Si -8.956939447 16.285128890 9.516408390 CORE 26 Si Si 0.0000 26 Si -11.757453574 14.958704748 5.714104528 CORE 27 Si Si 0.0000 27 Si -2.131519301 7.659473428 9.553804632 CORE 28 Si Si 0.0000 28 Si -11.939016384 9.196069395 5.728699278 CORE 29 Si Si 0.0000 29 Si -2.157330106 16.249433667 9.559912315 CORE 30 Si Si 0.0000 30 Si 0.699637362 14.921761496 5.746944503 CORE 31 Si Si 0.0000 31 Si -9.021156430 7.642189865 9.245336699 CORE 32 Si Si 0.0000 32 Si -2.150026603 7.687263751 5.080699950 CORE 33 Si Si 0.0000 33 Si -11.829275815 14.899858153 8.839784246 CORE 34 Si Si 0.0000 34 Si -8.816815372 16.160342639 5.018679147 CORE 35 Si Si 0.0000 35 Si 0.708067827 9.116075366 8.866484437 CORE 36 Si Si 0.0000 36 O -15.180903362 7.709851506 3.431062772 CORE 37 O O 0.0000 37 O -5.537595100 14.971745620 7.388062587 CORE 38 O O 0.0000 38 O -15.145745282 16.112584152 3.579646935 CORE 39 O O 0.0000 39 O -5.468083169 9.096458057 7.376251850 CORE 40 O O 0.0000 40 O -10.464653232 4.336628991 7.244157852 CORE 41 O O 0.0000 41 O -0.662417612 12.006715848 3.487972895 CORE 42 O O 0.0000 42 O -10.394103633 12.071760349 3.488680442 CORE 43 O O 0.0000 43 O -0.766907110 4.649025979 7.302408139 CORE 44 O O 0.0000 44 O -13.052051165 6.125651578 3.677921148 CORE 45 O O 0.0000 45 O -3.532143647 13.271837989 7.242431166 CORE 46 O O 0.0000 46 O -7.585286249 10.711701571 7.248738994 CORE 47 O O 0.0000 47 O 2.182235263 17.937925832 3.555355037 CORE 48 O O 0.0000 48 O -3.337846518 10.634603320 7.381064708 CORE 49 O O 0.0000 49 O -13.245038317 17.929488307 3.306206965 CORE 50 O O 0.0000 50 O 1.933925579 6.145461756 3.442876476 CORE 51 O O 0.0000 51 O -7.638705301 13.331514440 7.368350614 CORE 52 O O 0.0000 52 O -11.213274545 4.488096639 4.703028099 CORE 53 O O 0.0000 53 O -1.564329358 12.168182281 8.626206608 CORE 54 O O 0.0000 54 O 0.168025224 4.724019389 4.827047265 CORE 55 O O 0.0000 55 O -9.492517504 11.915934548 8.635058974 CORE 56 O O 0.0000 56 O -1.576462669 12.006876861 5.959803031 CORE 57 O O 0.0000 57 O -11.337706027 4.915952242 9.676334229 CORE 58 O O 0.0000 58 O -9.526656008 12.055527477 5.979620288 CORE 59 O O 0.0000 59 O 0.206164095 4.603405053 9.758263880 CORE 60 O O 0.0000 60 O -10.527789440 8.514706498 5.484359043 CORE 61 O O 0.0000 61 O -0.685627899 15.619543360 9.258369916 CORE 62 O O 0.0000 62 O -10.401412525 8.412333440 8.871897352 CORE 63 O O 0.0000 63 O -0.769338660 15.583548742 5.464736760 CORE 64 O O 0.0000 64 O -0.718064414 8.412632546 5.339693739 CORE 65 O O 0.0000 65 O -10.398474073 15.604186039 9.203830126 CORE 66 O O 0.0000 66 O -10.233431948 15.499605075 5.462629256 CORE 67 O O 0.0000 67 O -0.725752424 8.430294928 9.264674473 CORE 68 O O 0.0000 68 O -12.414258316 9.049199040 7.287905512 CORE 69 O O 0.0000 69 O -2.529229516 16.005134222 3.511201000 CORE 70 O O 0.0000 70 O -8.800947462 7.714277696 3.175053447 CORE 71 O O 0.0000 71 O 1.067203474 15.126037548 7.313826343 CORE 72 O O 0.0000 72 O -2.541809493 7.826059256 3.509877648 CORE 73 O O 0.0000 73 O -12.161302418 15.161249445 7.273432858 CORE 74 O O 0.0000 74 O 1.013589859 8.866969037 7.290219399 CORE 75 O O 0.0000 75 O -8.530758444 15.928530108 3.436783399 CORE 76 O O 0.0000 76 O -13.107449136 8.512395527 4.814203544 CORE 77 O O 0.0000 77 O -3.275905974 15.526762014 8.638432090 CORE 78 O O 0.0000 78 O 1.819220490 15.642719957 4.830180373 CORE 79 O O 0.0000 79 O -7.762240179 8.347126485 8.478599592 CORE 80 O O 0.0000 80 O -3.319829567 8.383100489 5.970863088 CORE 81 O O 0.0000 81 O -13.011036194 15.546412477 9.742268184 CORE 82 O O 0.0000 82 O -7.587287683 15.492110562 5.839273753 CORE 83 O O 0.0000 83 O 1.892605004 8.465609458 9.756562754 CORE 84 O O 0.0000 84 O -7.535407233 8.513372269 5.881533364 CORE 85 O O 0.0000 85 O 1.928364670 15.681939152 9.754190747 CORE 86 O O 0.0000 86 O -3.389179460 15.609314371 5.972423785 CORE 87 O O 0.0000 87 O -12.920288082 8.303575660 9.767593371 CORE 88 O O 0.0000 88 O 1.915591285 8.398437774 4.839856297 CORE 89 O O 0.0000 89 O -7.822685998 15.722168820 8.503207190 CORE 90 O O 0.0000 90 O -12.812363814 15.772363543 4.790655252 CORE 91 O O 0.0000 91 O -3.313521970 8.292651881 8.642664898 CORE 92 O O 0.0000 92 O -9.250714984 5.918622887 5.609697985 CORE 93 O O 0.0000 93 O 0.734578172 13.357594887 9.272243045 CORE 94 O O 0.0000 94 O -2.128456914 17.878934225 5.351624594 CORE 95 O O 0.0000 95 O -11.763242145 10.663317484 9.298614452 CORE 96 O O 0.0000 96 O 0.674738942 10.684078170 5.369254775 CORE 97 O O 0.0000 97 O -9.084172168 17.912268457 9.369656350 CORE 98 O O 0.0000 98 O -11.795421168 13.378273698 5.343249276 CORE 99 O O 0.0000 99 O -1.962976783 6.075800070 9.210756345 CORE 100 O O 0.0000 100 O -11.816453934 10.787298239 5.346709723 CORE 101 O O 0.0000 101 O -2.138351698 17.854761569 9.248035816 CORE 102 O O 0.0000 102 O 0.668631873 13.329702219 5.384839453 CORE 103 O O 0.0000 103 O -9.114464454 6.069345293 8.753577665 CORE 104 O O 0.0000 104 O -2.036116507 6.105552095 5.473329339 CORE 105 O O 0.0000 105 O -11.727989766 13.300651903 9.130763491 CORE 106 O O 0.0000 106 O -8.886939858 17.755060571 5.335577778 CORE 107 O O 0.0000 107 O 0.625939354 10.721099117 9.145529556 CORE 108 O O 0.0000 108 O2 11.730163246 6.666244006 4.580203799 CORE 109 O2 O2 0.0000 109 O2 12.895213189 7.533763769 3.921969722 CORE 110 O2 O2 0.0000 110 H 11.294874755 5.743752763 4.229674347 CORE 111 H H 0.0000 111 H 12.320814426 8.245867975 3.894604584 CORE 112 H H 0.0000 112 C 12.991018002 6.070840102 5.551950612 CORE 113 C C 0.0000 113 C 12.357511110 5.072397589 5.491352206 CORE 114 C C 0.0000 114 H 12.487605689 4.344901323 4.599012415 CORE 115 H H 0.0000 115 H 11.386699408 5.045583720 5.929991185 CORE 116 H H 0.0000 116 H 13.944292520 6.363544968 4.727639044 CORE 117 H H 0.0000 117 H 12.877061911 7.024171394 6.216631501 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.215414467 4.764768853 3.442577208 CORE 1 Si Si 0.0000 1 Si -2.504959238 12.020960784 7.301759091 CORE 2 Si Si 0.0000 2 Si 1.125741002 4.750354833 3.497257047 CORE 3 Si Si 0.0000 3 Si -8.564153916 11.997869233 7.297500799 CORE 4 Si Si 0.0000 4 Si -13.560929126 7.668708376 11.121408321 CORE 5 Si Si 0.0000 5 Si -3.932333138 14.849495354 7.310218925 CORE 6 Si Si 0.0000 6 Si -7.093056373 9.164245683 7.235128998 CORE 7 Si Si 0.0000 7 Si 2.504574154 16.338556839 3.526661527 CORE 8 Si Si 0.0000 8 Si -13.550618852 16.335200511 3.455489774 CORE 9 Si Si 0.0000 9 Si -3.861857246 9.102159087 7.337457326 CORE 10 Si Si 0.0000 10 Si -7.147198058 14.875678290 7.283899856 CORE 11 Si Si 0.0000 11 Si 2.459399279 7.685579244 3.469288809 CORE 12 Si Si 0.0000 12 Si -9.951655973 4.537893659 5.711910683 CORE 13 Si Si 0.0000 13 Si -0.214980029 12.059714382 9.532439459 CORE 14 Si Si 0.0000 14 Si -10.848574718 11.984709296 9.536079208 CORE 15 Si Si 0.0000 15 Si -1.183630181 4.737855811 5.733075558 CORE 16 Si Si 0.0000 16 Si -10.006468909 4.709895970 8.763205131 CORE 17 Si Si 0.0000 17 Si -0.223733802 12.006781868 5.054100251 CORE 18 Si Si 0.0000 18 Si -10.871660109 12.062163159 5.046860082 CORE 19 Si Si 0.0000 19 Si -1.161034565 4.696918379 8.881178385 CORE 20 Si Si 0.0000 20 Ti -9.002794040 7.696287379 5.057173491 CORE 21 Ti Ti 0.0000 21 Si 0.763017207 14.949167955 8.900245037 CORE 22 Si Si 0.0000 22 Si -2.201920716 16.266923072 5.081661883 CORE 23 Si Si 0.0000 23 Si -11.876773893 9.102105031 8.812489171 CORE 24 Si Si 0.0000 24 Si 0.729479711 9.087344913 5.705237632 CORE 25 Si Si 0.0000 25 Si -8.956361533 16.285649262 9.516706669 CORE 26 Si Si 0.0000 26 Si -11.757287301 14.959252220 5.714116928 CORE 27 Si Si 0.0000 27 Si -2.132111456 7.659334758 9.554043042 CORE 28 Si Si 0.0000 28 Si -11.942457312 9.197765865 5.729214134 CORE 29 Si Si 0.0000 29 Si -2.157579901 16.249721385 9.559962598 CORE 30 Si Si 0.0000 30 Si 0.699320789 14.921749676 5.746945340 CORE 31 Si Si 0.0000 31 Si -9.019621869 7.640437321 9.242457292 CORE 32 Si Si 0.0000 32 Si -2.150991140 7.686942158 5.080701700 CORE 33 Si Si 0.0000 33 Si -11.829058544 14.900349984 8.839824184 CORE 34 Si Si 0.0000 34 Si -8.815989781 16.161137324 5.018385736 CORE 35 Si Si 0.0000 35 Si 0.707506463 9.116032987 8.866457963 CORE 36 Si Si 0.0000 36 O -15.179844142 7.710139368 3.431117164 CORE 37 O O 0.0000 37 O -5.537769841 14.971709871 7.387510532 CORE 38 O O 0.0000 38 O -15.145600370 16.112630855 3.579248012 CORE 39 O O 0.0000 39 O -5.469404885 9.096481841 7.375570700 CORE 40 O O 0.0000 40 O -10.465108558 4.337112750 7.243883840 CORE 41 O O 0.0000 41 O -0.662329087 12.006725218 3.487925578 CORE 42 O O 0.0000 42 O -10.394162522 12.071477964 3.488828098 CORE 43 O O 0.0000 43 O -0.766988900 4.648966302 7.302605394 CORE 44 O O 0.0000 44 O -13.052345222 6.126133318 3.678241412 CORE 45 O O 0.0000 45 O -3.532102271 13.271828763 7.242352203 CORE 46 O O 0.0000 46 O -7.585867242 10.710730594 7.247994628 CORE 47 O O 0.0000 47 O 2.182467544 17.937877110 3.555394975 CORE 48 O O 0.0000 48 O -3.337873268 10.635175297 7.380662439 CORE 49 O O 0.0000 49 O -13.244876470 17.929519731 3.306032760 CORE 50 O O 0.0000 50 O 1.934211938 6.145677401 3.442625970 CORE 51 O O 0.0000 51 O -7.638713769 13.331126395 7.367967211 CORE 52 O O 0.0000 52 O -11.213475266 4.488903144 4.703074047 CORE 53 O O 0.0000 53 O -1.564426928 12.168029053 8.626289298 CORE 54 O O 0.0000 54 O 0.168484592 4.723888504 4.826805203 CORE 55 O O 0.0000 55 O -9.492782502 11.915242208 8.634902189 CORE 56 O O 0.0000 56 O -1.576895672 12.007008756 5.959735251 CORE 57 O O 0.0000 57 O -11.338093228 4.916374018 9.676127617 CORE 58 O O 0.0000 58 O -9.527115184 12.055169703 5.979294090 CORE 59 O O 0.0000 59 O 0.206489328 4.603360944 9.758457255 CORE 60 O O 0.0000 60 O -10.520483435 8.510460636 5.482956349 CORE 61 O O 0.0000 61 O -0.685218567 15.619444619 9.258418526 CORE 62 O O 0.0000 62 O -10.401472183 8.412136390 8.872485009 CORE 63 O O 0.0000 63 O -0.769140634 15.583724890 5.464633225 CORE 64 O O 0.0000 64 O -0.717463022 8.412748873 5.339519153 CORE 65 O O 0.0000 65 O -10.398966734 15.603914897 9.204011178 CORE 66 O O 0.0000 66 O -10.233908059 15.499350078 5.462620736 CORE 67 O O 0.0000 67 O -0.725364069 8.430394534 9.264625178 CORE 68 O O 0.0000 68 O -12.413673089 9.048965521 7.286746781 CORE 69 O O 0.0000 69 O -2.529289944 16.005162475 3.511764618 CORE 70 O O 0.0000 70 O -8.796050876 7.710911278 3.187514145 CORE 71 O O 0.0000 71 O 1.067351849 15.125895130 7.314105376 CORE 72 O O 0.0000 72 O -2.541516975 7.826247080 3.509981182 CORE 73 O O 0.0000 73 O -12.161367657 15.161224651 7.273245035 CORE 74 O O 0.0000 74 O 1.013678769 8.867025831 7.290153825 CORE 75 O O 0.0000 75 O -8.531047113 15.927971969 3.436634526 CORE 76 O O 0.0000 76 O -13.106146664 8.513361747 4.814925393 CORE 77 O O 0.0000 77 O -3.275842467 15.526652318 8.638336315 CORE 78 O O 0.0000 78 O 1.819382144 15.642691271 4.830085207 CORE 79 O O 0.0000 79 O -7.763559009 8.347130377 8.478788175 CORE 80 O O 0.0000 80 O -3.319756245 8.383749729 5.970738862 CORE 81 O O 0.0000 81 O -13.011040236 15.546292691 9.742366089 CORE 82 O O 0.0000 82 O -7.587809595 15.491571163 5.839246062 CORE 83 O O 0.0000 83 O 1.893005869 8.465362101 9.756762139 CORE 84 O O 0.0000 84 O -7.536375620 8.502186286 5.871880034 CORE 85 O O 0.0000 85 O 1.928604650 15.681939584 9.754276557 CORE 86 O O 0.0000 86 O -3.388837869 15.609119628 5.972357602 CORE 87 O O 0.0000 87 O -12.919978052 8.303583444 9.767376108 CORE 88 O O 0.0000 88 O 1.915762562 8.398347970 4.839474567 CORE 89 O O 0.0000 89 O -7.822862471 15.721913823 8.503137888 CORE 90 O O 0.0000 90 O -12.812509496 15.772101627 4.791152992 CORE 91 O O 0.0000 91 O -3.313734237 8.292463481 8.642341743 CORE 92 O O 0.0000 92 O -9.225110865 5.924702016 5.601534528 CORE 93 O O 0.0000 93 O 0.734617431 13.357651248 9.272085500 CORE 94 O O 0.0000 94 O -2.128539473 17.878893287 5.350902745 CORE 95 O O 0.0000 95 O -11.763409958 10.662840933 9.297779180 CORE 96 O O 0.0000 96 O 0.674902136 10.684042998 5.368553618 CORE 97 O O 0.0000 97 O -9.084726989 17.911809060 9.369773197 CORE 98 O O 0.0000 98 O -11.795242771 13.377494581 5.342929088 CORE 99 O O 0.0000 99 O -1.962716982 6.075771385 9.210836601 CORE 100 O O 0.0000 100 O -11.816136591 10.785555352 5.346614709 CORE 101 O O 0.0000 101 O -2.138374406 17.855153217 9.248381868 CORE 102 O O 0.0000 102 O 0.668910342 13.329679588 5.384573885 CORE 103 O O 0.0000 103 O -9.114917856 6.070699270 8.753771269 CORE 104 O O 0.0000 104 O -2.035517039 6.105637142 5.473059892 CORE 105 O O 0.0000 105 O -11.728080793 13.300456727 9.130886043 CORE 106 O O 0.0000 106 O -8.885254612 17.756483595 5.336121694 CORE 107 O O 0.0000 107 O 0.626169134 10.721069423 9.145400385 CORE 108 O O 0.0000 108 O2 11.733741388 6.648683536 4.593326553 CORE 109 O2 O2 0.0000 109 O2 12.874044364 7.504635325 3.954972492 CORE 110 O2 O2 0.0000 110 H 11.297688887 5.757036956 4.240844556 CORE 111 H H 0.0000 111 H 12.321180458 8.241212301 3.897385022 CORE 112 H H 0.0000 112 C 13.011304079 6.111155105 5.530405224 CORE 113 C C 0.0000 113 C 12.334952828 5.085537202 5.458966229 CORE 114 C C 0.0000 114 H 12.479383066 4.370133462 4.621564695 CORE 115 H H 0.0000 115 H 11.391151830 5.049533359 5.917454415 CORE 116 H H 0.0000 116 H 13.901691220 6.363005136 4.754127297 CORE 117 H H 0.0000 117 H 12.879476526 7.002945256 6.190044126 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.215539364 4.764406611 3.442756967 CORE 1 Si Si 0.0000 1 Si -2.504957891 12.020731589 7.301756428 CORE 2 Si Si 0.0000 2 Si 1.125487551 4.750333932 3.497313264 CORE 3 Si Si 0.0000 3 Si -8.563658561 11.997759537 7.298028283 CORE 4 Si Si 0.0000 4 Si -13.561201821 7.668697132 11.120993879 CORE 5 Si Si 0.0000 5 Si -3.932454379 14.849644259 7.310401650 CORE 6 Si Si 0.0000 6 Si -7.092734989 9.170057274 7.242553566 CORE 7 Si Si 0.0000 7 Si 2.504616300 16.338584227 3.526670656 CORE 8 Si Si 0.0000 8 Si -13.550516471 16.335446282 3.455359463 CORE 9 Si Si 0.0000 9 Si -3.861679619 9.102095806 7.337801781 CORE 10 Si Si 0.0000 10 Si -7.147219035 14.875668632 7.283950291 CORE 11 Si Si 0.0000 11 Si 2.459160839 7.685539748 3.469279072 CORE 12 Si Si 0.0000 12 Si -9.966006064 4.527562902 5.714631252 CORE 13 Si Si 0.0000 13 Si -0.215020442 12.059779969 9.532512412 CORE 14 Si Si 0.0000 14 Si -10.848602623 11.984581869 9.535942658 CORE 15 Si Si 0.0000 15 Si -1.183707352 4.737961039 5.733240939 CORE 16 Si Si 0.0000 16 Si -10.007133808 4.710139291 8.762372217 CORE 17 Si Si 0.0000 17 Si -0.223615641 12.006806661 5.054122920 CORE 18 Si Si 0.0000 18 Si -10.871765761 12.062680648 5.046949923 CORE 19 Si Si 0.0000 19 Si -1.161246447 4.696806232 8.880941800 CORE 20 Si Si 0.0000 20 Ti -9.018568037 7.708892493 5.067832647 CORE 21 Ti Ti 0.0000 21 Si 0.762759907 14.949223596 8.900061019 CORE 22 Si Si 0.0000 22 Si -2.202030795 16.266811069 5.081565499 CORE 23 Si Si 0.0000 23 Si -11.875893262 9.101715689 8.812591640 CORE 24 Si Si 0.0000 24 Si 0.729353274 9.087326462 5.705399057 CORE 25 Si Si 0.0000 25 Si -8.956436010 16.285500358 9.516400555 CORE 26 Si Si 0.0000 26 Si -11.757075803 14.959482279 5.714164321 CORE 27 Si Si 0.0000 27 Si -2.132031591 7.659314001 9.553768422 CORE 28 Si Si 0.0000 28 Si -11.948439291 9.200204263 5.730363433 CORE 29 Si Si 0.0000 29 Si -2.157611847 16.249549994 9.559628641 CORE 30 Si Si 0.0000 30 Si 0.699227646 14.921811804 5.746866910 CORE 31 Si Si 0.0000 31 Si -9.021098312 7.641890615 9.237808978 CORE 32 Si Si 0.0000 32 Si -2.150685922 7.686883634 5.080799909 CORE 33 Si Si 0.0000 33 Si -11.828972328 14.900208431 8.839893942 CORE 34 Si Si 0.0000 34 Si -8.816637360 16.159988036 5.018731180 CORE 35 Si Si 0.0000 35 Si 0.707238771 9.116060086 8.866412472 CORE 36 Si Si 0.0000 36 O -15.178947923 7.709496327 3.431094266 CORE 37 O O 0.0000 37 O -5.538185908 14.971609256 7.388835404 CORE 38 O O 0.0000 38 O -15.145122720 16.112526060 3.580181266 CORE 39 O O 0.0000 39 O -5.470890373 9.096940518 7.376842931 CORE 40 O O 0.0000 40 O -10.465420127 4.335150183 7.245886212 CORE 41 O O 0.0000 41 O -0.662350063 12.006713110 3.488029645 CORE 42 O O 0.0000 42 O -10.394185615 12.071696059 3.489247104 CORE 43 O O 0.0000 43 O -0.766465063 4.649028862 7.302564543 CORE 44 O O 0.0000 44 O -13.052059825 6.126715674 3.677713471 CORE 45 O O 0.0000 45 O -3.532139413 13.271674093 7.242502217 CORE 46 O O 0.0000 46 O -7.585312229 10.713973767 7.249847746 CORE 47 O O 0.0000 47 O 2.182372669 17.937579878 3.555297678 CORE 48 O O 0.0000 48 O -3.337039016 10.635536530 7.381604060 CORE 49 O O 0.0000 49 O -13.245020420 17.930093294 3.306475956 CORE 50 O O 0.0000 50 O 1.934188652 6.146071500 3.443222833 CORE 51 O O 0.0000 51 O -7.639730844 13.330525445 7.368872926 CORE 52 O O 0.0000 52 O -11.216150067 4.486893296 4.700835547 CORE 53 O O 0.0000 53 O -1.563882307 12.168463225 8.626281387 CORE 54 O O 0.0000 54 O 0.168660295 4.724154023 4.826411530 CORE 55 O O 0.0000 55 O -9.492866023 11.916538238 8.635653326 CORE 56 O O 0.0000 56 O -1.575859930 12.006730119 5.959962402 CORE 57 O O 0.0000 57 O -11.338218125 4.915735445 9.677450740 CORE 58 O O 0.0000 58 O -9.527309169 12.055408555 5.978976337 CORE 59 O O 0.0000 59 O 0.206735081 4.603447288 9.758759414 CORE 60 O O 0.0000 60 O -10.533397113 8.517763000 5.485993226 CORE 61 O O 0.0000 61 O -0.685055951 15.619127494 9.258040219 CORE 62 O O 0.0000 62 O -10.403236525 8.413532458 8.869622414 CORE 63 O O 0.0000 63 O -0.768961082 15.582930494 5.464988406 CORE 64 O O 0.0000 64 O -0.716811786 8.413386004 5.340251272 CORE 65 O O 0.0000 65 O -10.399331611 15.603747686 9.203274114 CORE 66 O O 0.0000 66 O -10.234711711 15.498810390 5.463088656 CORE 67 O O 0.0000 67 O -0.724683966 8.430863301 9.264439562 CORE 68 O O 0.0000 68 O -12.414296806 9.049438180 7.285879710 CORE 69 O O 0.0000 69 O -2.529064013 16.005007660 3.511193621 CORE 70 O O 0.0000 70 O -8.809421227 7.721164339 3.180741287 CORE 71 O O 0.0000 71 O 1.067195776 15.126207642 7.313830147 CORE 72 O O 0.0000 72 O -2.541839129 7.825866819 3.509692489 CORE 73 O O 0.0000 73 O -12.161274514 15.161172614 7.273415513 CORE 74 O O 0.0000 74 O 1.013743430 8.866895378 7.290266183 CORE 75 O O 0.0000 75 O -8.530606412 15.929046155 3.436657348 CORE 76 O O 0.0000 76 O -13.106149935 8.513045055 4.816156697 CORE 77 O O 0.0000 77 O -3.276069552 15.526678409 8.638381578 CORE 78 O O 0.0000 78 O 1.819453541 15.642968611 4.829927966 CORE 79 O O 0.0000 79 O -7.762634501 8.346590257 8.478821951 CORE 80 O O 0.0000 80 O -3.319586316 8.382616442 5.971258131 CORE 81 O O 0.0000 81 O -13.010981925 15.546501560 9.742086144 CORE 82 O O 0.0000 82 O -7.586796369 15.492677494 5.839299313 CORE 83 O O 0.0000 83 O 1.892974308 8.465461995 9.757085065 CORE 84 O O 0.0000 84 O -7.545789289 8.519246276 5.878156597 CORE 85 O O 0.0000 85 O 1.928494186 15.682151769 9.754404054 CORE 86 O O 0.0000 86 O -3.389547608 15.609465293 5.972429490 CORE 87 O O 0.0000 87 O -12.919943412 8.304072248 9.767386378 CORE 88 O O 0.0000 88 O 1.916186327 8.398153515 4.839683385 CORE 89 O O 0.0000 89 O -7.822640004 15.722350734 8.503292847 CORE 90 O O 0.0000 90 O -12.811816114 15.772382138 4.790439663 CORE 91 O O 0.0000 91 O -3.313018532 8.293117189 8.643140425 CORE 92 O O 0.0000 92 O -9.267599584 5.930839524 5.613949659 CORE 93 O O 0.0000 93 O 0.734826812 13.357765413 9.272417251 CORE 94 O O 0.0000 94 O -2.128244454 17.878302427 5.352509541 CORE 95 O O 0.0000 95 O -11.763579887 10.662172377 9.299329607 CORE 96 O O 0.0000 96 O 0.674771657 10.684120261 5.370137060 CORE 97 O O 0.0000 97 O -9.083922951 17.912940329 9.369408583 CORE 98 O O 0.0000 98 O -11.795079577 13.377179042 5.343280313 CORE 99 O O 0.0000 99 O -1.962875942 6.075376853 9.210550037 CORE 100 O O 0.0000 100 O -11.817637089 10.785059918 5.347684207 CORE 101 O O 0.0000 101 O -2.138026465 17.854311252 9.247462612 CORE 102 O O 0.0000 102 O 0.668520639 13.329842330 5.385189765 CORE 103 O O 0.0000 103 O -9.113985842 6.070192736 8.753722811 CORE 104 O O 0.0000 104 O -2.036212730 6.105097454 5.473690378 CORE 105 O O 0.0000 105 O -11.727617768 13.299848714 9.130831956 CORE 106 O O 0.0000 106 O -8.891572602 17.755678820 5.335250439 CORE 107 O O 0.0000 107 O 0.625915875 10.720986971 9.145673941 CORE 108 O O 0.0000 108 O2 11.731274620 6.673389105 4.554768765 CORE 109 O2 O2 0.0000 109 O2 12.913934683 7.537118079 3.899386177 CORE 110 O2 O2 0.0000 110 H 11.301610544 5.746753912 4.223349706 CORE 111 H H 0.0000 111 H 12.311297798 8.266695545 3.888492109 CORE 112 H H 0.0000 112 C 13.059739944 6.124578833 5.560061427 CORE 113 C C 0.0000 113 C 12.343010333 4.979701723 5.499984571 CORE 114 C C 0.0000 114 H 12.489214919 4.343566950 4.601986000 CORE 115 H H 0.0000 115 H 11.388989318 5.040223743 5.940038721 CORE 116 H H 0.0000 116 H 13.934791480 6.354182882 4.743649573 CORE 117 H H 0.0000 117 H 12.880383908 7.016077229 6.219430729 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.215664262 4.764044512 3.442936725 CORE 1 Si Si 0.0000 1 Si -2.504956736 12.020502395 7.301753766 CORE 2 Si Si 0.0000 2 Si 1.125234100 4.750313030 3.497369558 CORE 3 Si Si 0.0000 3 Si -8.563163206 11.997649841 7.298555768 CORE 4 Si Si 0.0000 4 Si -13.561474517 7.668685889 11.120579438 CORE 5 Si Si 0.0000 5 Si -3.932575812 14.849793163 7.310584375 CORE 6 Si Si 0.0000 6 Si -7.092413604 9.175869009 7.249978058 CORE 7 Si Si 0.0000 7 Si 2.504658445 16.338611759 3.526679785 CORE 8 Si Si 0.0000 8 Si -13.550414282 16.335692197 3.455229151 CORE 9 Si Si 0.0000 9 Si -3.861501992 9.102032669 7.338146235 CORE 10 Si Si 0.0000 10 Si -7.147239819 14.875658974 7.284000651 CORE 11 Si Si 0.0000 11 Si 2.458922399 7.685500252 3.469269411 CORE 12 Si Si 0.0000 12 Si -9.980356349 4.517232146 5.717351897 CORE 13 Si Si 0.0000 13 Si -0.215060856 12.059845557 9.532585365 CORE 14 Si Si 0.0000 14 Si -10.848630527 11.984454443 9.535806109 CORE 15 Si Si 0.0000 15 Si -1.183784715 4.738066410 5.733406320 CORE 16 Si Si 0.0000 16 Si -10.007798900 4.710382468 8.761539303 CORE 17 Si Si 0.0000 17 Si -0.223497479 12.006831455 5.054145666 CORE 18 Si Si 0.0000 18 Si -10.871871414 12.063198137 5.047039841 CORE 19 Si Si 0.0000 19 Si -1.161458522 4.696694086 8.880705216 CORE 20 Si Si 0.0000 20 Ti -9.034342226 7.721497608 5.078491803 CORE 21 Ti Ti 0.0000 21 Si 0.762502607 14.949279237 8.899877000 CORE 22 Si Si 0.0000 22 Si -2.202140874 16.266699211 5.081469116 CORE 23 Si Si 0.0000 23 Si -11.875012823 9.101326203 8.812694185 CORE 24 Si Si 0.0000 24 Si 0.729227029 9.087308011 5.705560558 CORE 25 Si Si 0.0000 25 Si -8.956510294 16.285351597 9.516094516 CORE 26 Si Si 0.0000 26 Si -11.756864305 14.959712194 5.714211714 CORE 27 Si Si 0.0000 27 Si -2.131951534 7.659293388 9.553493725 CORE 28 Si Si 0.0000 28 Si -11.954421270 9.202642805 5.731512807 CORE 29 Si Si 0.0000 29 Si -2.157643793 16.249378602 9.559294685 CORE 30 Si Si 0.0000 30 Si 0.699134502 14.921873931 5.746788479 CORE 31 Si Si 0.0000 31 Si -9.022574562 7.643343909 9.233160664 CORE 32 Si Si 0.0000 32 Si -2.150380511 7.686825110 5.080898042 CORE 33 Si Si 0.0000 33 Si -11.828886112 14.900066879 8.839963624 CORE 34 Si Si 0.0000 34 Si -8.817284940 16.158838893 5.019076624 CORE 35 Si Si 0.0000 35 Si 0.706970887 9.116087330 8.866367057 CORE 36 Si Si 0.0000 36 O -15.178051896 7.708853285 3.431071368 CORE 37 O O 0.0000 37 O -5.538602168 14.971508641 7.390160277 CORE 38 O O 0.0000 38 O -15.144645070 16.112421409 3.581114519 CORE 39 O O 0.0000 39 O -5.472376053 9.097399195 7.378115162 CORE 40 O O 0.0000 40 O -10.465731697 4.333187472 7.247888584 CORE 41 O O 0.0000 41 O -0.662371232 12.006701001 3.488133712 CORE 42 O O 0.0000 42 O -10.394208901 12.071914010 3.489666109 CORE 43 O O 0.0000 43 O -0.765941418 4.649091422 7.302523692 CORE 44 O O 0.0000 44 O -13.051774236 6.127297885 3.677185530 CORE 45 O O 0.0000 45 O -3.532176555 13.271519423 7.242652232 CORE 46 O O 0.0000 46 O -7.584757216 10.717217083 7.251700940 CORE 47 O O 0.0000 47 O 2.182277793 17.937282790 3.555200306 CORE 48 O O 0.0000 48 O -3.336204572 10.635897764 7.382545605 CORE 49 O O 0.0000 49 O -13.245164369 17.930666856 3.306919153 CORE 50 O O 0.0000 50 O 1.934165558 6.146465599 3.443819695 CORE 51 O O 0.0000 51 O -7.640748111 13.329924494 7.369778565 CORE 52 O O 0.0000 52 O -11.218824869 4.484883305 4.698597048 CORE 53 O O 0.0000 53 O -1.563337494 12.168897541 8.626273475 CORE 54 O O 0.0000 54 O 0.168835805 4.724419399 4.826017856 CORE 55 O O 0.0000 55 O -9.492949545 11.917834123 8.636404463 CORE 56 O O 0.0000 56 O -1.574824187 12.006451338 5.960189554 CORE 57 O O 0.0000 57 O -11.338342830 4.915097016 9.678773863 CORE 58 O O 0.0000 58 O -9.527503346 12.055647263 5.978658584 CORE 59 O O 0.0000 59 O 0.206980834 4.603533633 9.759061572 CORE 60 O O 0.0000 60 O -10.546310598 8.525065219 5.489030027 CORE 61 O O 0.0000 61 O -0.684893142 15.618810226 9.257661912 CORE 62 O O 0.0000 62 O -10.405001058 8.414928526 8.866759894 CORE 63 O O 0.0000 63 O -0.768781723 15.582135953 5.465343663 CORE 64 O O 0.0000 64 O -0.716160550 8.414023136 5.340983390 CORE 65 O O 0.0000 65 O -10.399696295 15.603580619 9.202537127 CORE 66 O O 0.0000 66 O -10.235515364 15.498270558 5.463556576 CORE 67 O O 0.0000 67 O -0.724003863 8.431332068 9.264254022 CORE 68 O O 0.0000 68 O -12.414920329 9.049910984 7.285012563 CORE 69 O O 0.0000 69 O -2.528838081 16.004852846 3.510622547 CORE 70 O O 0.0000 70 O -8.822791386 7.731417256 3.173968430 CORE 71 O O 0.0000 71 O 1.067039703 15.126520153 7.313554994 CORE 72 O O 0.0000 72 O -2.542161283 7.825486702 3.509403719 CORE 73 O O 0.0000 73 O -12.161181370 15.161120577 7.273585991 CORE 74 O O 0.0000 74 O 1.013808092 8.866765069 7.290378466 CORE 75 O O 0.0000 75 O -8.530165712 15.930120342 3.436680246 CORE 76 O O 0.0000 76 O -13.106153399 8.512728363 4.817387925 CORE 77 O O 0.0000 77 O -3.276296446 15.526704644 8.638426917 CORE 78 O O 0.0000 78 O 1.819524939 15.643245951 4.829770649 CORE 79 O O 0.0000 79 O -7.761709799 8.346050280 8.478855727 CORE 80 O O 0.0000 80 O -3.319416579 8.381483011 5.971777475 CORE 81 O O 0.0000 81 O -13.010923421 15.546710430 9.741806274 CORE 82 O O 0.0000 82 O -7.585783143 15.493783970 5.839352487 CORE 83 O O 0.0000 83 O 1.892942746 8.465561889 9.757407916 CORE 84 O O 0.0000 84 O -7.555203151 8.536306267 5.884433083 CORE 85 O O 0.0000 85 O 1.928383530 15.682363954 9.754531627 CORE 86 O O 0.0000 86 O -3.390257540 15.609810959 5.972501378 CORE 87 O O 0.0000 87 O -12.919908579 8.304561052 9.767396648 CORE 88 O O 0.0000 88 O 1.916610092 8.397958916 4.839892279 CORE 89 O O 0.0000 89 O -7.822417537 15.722787789 8.503447806 CORE 90 O O 0.0000 90 O -12.811122732 15.772662648 4.789726258 CORE 91 O O 0.0000 91 O -3.312303019 8.293771042 8.643939107 CORE 92 O O 0.0000 92 O -9.310088303 5.936977033 5.626364789 CORE 93 O O 0.0000 93 O 0.735036193 13.357879722 9.272748925 CORE 94 O O 0.0000 94 O -2.127949435 17.877711422 5.354116338 CORE 95 O O 0.0000 95 O -11.763749817 10.661503821 9.300880034 CORE 96 O O 0.0000 96 O 0.674641372 10.684197525 5.371720503 CORE 97 O O 0.0000 97 O -9.083119106 17.914071597 9.369044045 CORE 98 O O 0.0000 98 O -11.794916383 13.376863503 5.343631615 CORE 99 O O 0.0000 99 O -1.963035094 6.074982322 9.210263473 CORE 100 O O 0.0000 100 O -11.819137395 10.784564339 5.348753706 CORE 101 O O 0.0000 101 O -2.137678331 17.853469287 9.246543356 CORE 102 O O 0.0000 102 O 0.668131129 13.330005072 5.385805569 CORE 103 O O 0.0000 103 O -9.113053828 6.069686202 8.753674277 CORE 104 O O 0.0000 104 O -2.036908421 6.104557767 5.474320940 CORE 105 O O 0.0000 105 O -11.727154744 13.299240556 9.130777945 CORE 106 O O 0.0000 106 O -8.897890783 17.754873900 5.334379261 CORE 107 O O 0.0000 107 O 0.625662424 10.720904662 9.145947496 CORE 108 O O 0.0000 108 O2 11.728807852 6.698094673 4.516210977 CORE 109 O2 O2 0.0000 109 O2 12.953825001 7.569600833 3.843799862 CORE 110 O2 O2 0.0000 110 H 11.305532200 5.736470868 4.205854781 CORE 111 H H 0.0000 111 H 12.301415139 8.292178790 3.879599273 CORE 112 H H 0.0000 112 C 13.108175618 6.138002416 5.589717630 CORE 113 C C 0.0000 113 C 12.351067838 4.873866388 5.541002838 CORE 114 C C 0.0000 114 H 12.499046773 4.317000438 4.582407306 CORE 115 H H 0.0000 115 H 11.386826807 5.030913982 5.962623027 CORE 116 H H 0.0000 116 H 13.967891548 6.345360628 4.733171849 CORE 117 H H 0.0000 117 H 12.881291481 7.029209202 6.248817332 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.215788966 4.763682414 3.443116408 CORE 1 Si Si 0.0000 1 Si -2.504955581 12.020273201 7.301751027 CORE 2 Si Si 0.0000 2 Si 1.124980649 4.750292129 3.497425775 CORE 3 Si Si 0.0000 3 Si -8.562667851 11.997540001 7.299083252 CORE 4 Si Si 0.0000 4 Si -13.561747020 7.668674645 11.120164997 CORE 5 Si Si 0.0000 5 Si -3.932697053 14.849941923 7.310767177 CORE 6 Si Si 0.0000 6 Si -7.092092413 9.181680744 7.257402626 CORE 7 Si Si 0.0000 7 Si 2.504700783 16.338639291 3.526688837 CORE 8 Si Si 0.0000 8 Si -13.550311901 16.335937969 3.455098839 CORE 9 Si Si 0.0000 9 Si -3.861324365 9.101969389 7.338490690 CORE 10 Si Si 0.0000 10 Si -7.147260796 14.875649461 7.284051087 CORE 11 Si Si 0.0000 11 Si 2.458684151 7.685460755 3.469259750 CORE 12 Si Si 0.0000 12 Si -9.994706441 4.506901245 5.720072466 CORE 13 Si Si 0.0000 13 Si -0.215101077 12.059911288 9.532658395 CORE 14 Si Si 0.0000 14 Si -10.848658432 11.984327017 9.535669559 CORE 15 Si Si 0.0000 15 Si -1.183862078 4.738171638 5.733571701 CORE 16 Si Si 0.0000 16 Si -10.008463800 4.710625789 8.760706312 CORE 17 Si Si 0.0000 17 Si -0.223379125 12.006856248 5.054168336 CORE 18 Si Si 0.0000 18 Si -10.871977067 12.063715626 5.047129682 CORE 19 Si Si 0.0000 19 Si -1.161670405 4.696581939 8.880468631 CORE 20 Si Si 0.0000 20 Ti -9.050116223 7.734102578 5.089151036 CORE 21 Ti Ti 0.0000 21 Si 0.762245308 14.949334734 8.899692982 CORE 22 Si Si 0.0000 22 Si -2.202251146 16.266587208 5.081372733 CORE 23 Si Si 0.0000 23 Si -11.874132192 9.100936717 8.812796655 CORE 24 Si Si 0.0000 24 Si 0.729100593 9.087289561 5.705721983 CORE 25 Si Si 0.0000 25 Si -8.956584770 16.285202693 9.515788478 CORE 26 Si Si 0.0000 26 Si -11.756652807 14.959942109 5.714259107 CORE 27 Si Si 0.0000 27 Si -2.131871669 7.659272630 9.553219029 CORE 28 Si Si 0.0000 28 Si -11.960403250 9.205081346 5.732662182 CORE 29 Si Si 0.0000 29 Si -2.157675546 16.249207211 9.558960804 CORE 30 Si Si 0.0000 30 Si 0.699041358 14.921936059 5.746710125 CORE 31 Si Si 0.0000 31 Si -9.024050812 7.644797347 9.228512274 CORE 32 Si Si 0.0000 32 Si -2.150075292 7.686766587 5.080996175 CORE 33 Si Si 0.0000 33 Si -11.828799704 14.899925326 8.840033382 CORE 34 Si Si 0.0000 34 Si -8.817932712 16.157689606 5.019422068 CORE 35 Si Si 0.0000 35 Si 0.706703195 9.116114430 8.866321566 CORE 36 Si Si 0.0000 36 O -15.177155677 7.708210244 3.431048471 CORE 37 O O 0.0000 37 O -5.539018428 14.971407882 7.391485150 CORE 38 O O 0.0000 38 O -15.144167228 16.112316614 3.582047772 CORE 39 O O 0.0000 39 O -5.473861733 9.097857872 7.379387317 CORE 40 O O 0.0000 40 O -10.466043266 4.331224905 7.249890879 CORE 41 O O 0.0000 41 O -0.662392209 12.006688893 3.488237778 CORE 42 O O 0.0000 42 O -10.394231994 12.072131961 3.490085115 CORE 43 O O 0.0000 43 O -0.765417581 4.649153982 7.302482841 CORE 44 O O 0.0000 44 O -13.051488646 6.127880097 3.676657589 CORE 45 O O 0.0000 45 O -3.532213889 13.271364753 7.242802322 CORE 46 O O 0.0000 46 O -7.584202203 10.720460400 7.253554058 CORE 47 O O 0.0000 47 O 2.182182725 17.936985558 3.555103010 CORE 48 O O 0.0000 48 O -3.335370127 10.636258997 7.383487227 CORE 49 O O 0.0000 49 O -13.245308318 17.931240419 3.307362425 CORE 50 O O 0.0000 50 O 1.934142272 6.146859698 3.444416557 CORE 51 O O 0.0000 51 O -7.641765379 13.329323399 7.370684280 CORE 52 O O 0.0000 52 O -11.221499863 4.482873457 4.696358472 CORE 53 O O 0.0000 53 O -1.562792680 12.169331713 8.626265564 CORE 54 O O 0.0000 54 O 0.169011508 4.724684774 4.825624183 CORE 55 O O 0.0000 55 O -9.493033066 11.919130152 8.637155523 CORE 56 O O 0.0000 56 O -1.573788445 12.006172557 5.960416705 CORE 57 O O 0.0000 57 O -11.338467727 4.914458587 9.680097062 CORE 58 O O 0.0000 58 O -9.527697332 12.055885971 5.978340754 CORE 59 O O 0.0000 59 O 0.207226395 4.603619977 9.759363731 CORE 60 O O 0.0000 60 O -10.559224276 8.532367583 5.492066904 CORE 61 O O 0.0000 61 O -0.684730525 15.618493101 9.257283605 CORE 62 O O 0.0000 62 O -10.406765400 8.416324593 8.863897298 CORE 63 O O 0.0000 63 O -0.768602171 15.581341413 5.465698920 CORE 64 O O 0.0000 64 O -0.715509122 8.414660267 5.341715509 CORE 65 O O 0.0000 65 O -10.400060980 15.603413553 9.201800064 CORE 66 O O 0.0000 66 O -10.236319017 15.497730726 5.464024496 CORE 67 O O 0.0000 67 O -0.723323760 8.431800836 9.264068482 CORE 68 O O 0.0000 68 O -12.415544046 9.050383788 7.284145493 CORE 69 O O 0.0000 69 O -2.528612343 16.004697888 3.510051473 CORE 70 O O 0.0000 70 O -8.836161545 7.741670173 3.167195496 CORE 71 O O 0.0000 71 O 1.066883822 15.126832665 7.313279764 CORE 72 O O 0.0000 72 O -2.542483245 7.825106586 3.509114949 CORE 73 O O 0.0000 73 O -12.161088226 15.161068540 7.273756469 CORE 74 O O 0.0000 74 O 1.013872754 8.866634760 7.290490824 CORE 75 O O 0.0000 75 O -8.529724819 15.931194384 3.436703143 CORE 76 O O 0.0000 76 O -13.106156671 8.512411527 4.818619229 CORE 77 O O 0.0000 77 O -3.276523339 15.526730734 8.638472180 CORE 78 O O 0.0000 78 O 1.819596336 15.643523434 4.829613331 CORE 79 O O 0.0000 79 O -7.760785291 8.345510160 8.478889504 CORE 80 O O 0.0000 80 O -3.319246842 8.380349580 5.972296744 CORE 81 O O 0.0000 81 O -13.010864918 15.546919300 9.741526405 CORE 82 O O 0.0000 82 O -7.584769725 15.494890301 5.839405738 CORE 83 O O 0.0000 83 O 1.892911185 8.465661783 9.757730766 CORE 84 O O 0.0000 84 O -7.564617013 8.553366257 5.890709646 CORE 85 O O 0.0000 85 O 1.928273066 15.682576139 9.754659200 CORE 86 O O 0.0000 86 O -3.390967472 15.610156624 5.972573266 CORE 87 O O 0.0000 87 O -12.919873747 8.305049712 9.767406994 CORE 88 O O 0.0000 88 O 1.917033858 8.397764461 4.840101097 CORE 89 O O 0.0000 89 O -7.822195262 15.723224700 8.503602765 CORE 90 O O 0.0000 90 O -12.810429351 15.772943159 4.789012853 CORE 91 O O 0.0000 91 O -3.311587314 8.294424894 8.644737789 CORE 92 O O 0.0000 92 O -9.352577023 5.943114541 5.638779919 CORE 93 O O 0.0000 93 O 0.735245573 13.357993887 9.273080676 CORE 94 O O 0.0000 94 O -2.127654416 17.877120418 5.355723134 CORE 95 O O 0.0000 95 O -11.763919746 10.660835265 9.302430460 CORE 96 O O 0.0000 96 O 0.674510894 10.684274788 5.373303945 CORE 97 O O 0.0000 97 O -9.082315260 17.915203010 9.368679431 CORE 98 O O 0.0000 98 O -11.794753382 13.376547965 5.343982840 CORE 99 O O 0.0000 99 O -1.963194054 6.074587790 9.209976909 CORE 100 O O 0.0000 100 O -11.820637701 10.784068904 5.349823205 CORE 101 O O 0.0000 101 O -2.137330196 17.852627467 9.245624100 CORE 102 O O 0.0000 102 O 0.667741427 13.330167815 5.386421373 CORE 103 O O 0.0000 103 O -9.112122006 6.069179668 8.753625819 CORE 104 O O 0.0000 104 O -2.037604112 6.104018079 5.474951502 CORE 105 O O 0.0000 105 O -11.726691720 13.298632542 9.130723858 CORE 106 O O 0.0000 106 O -8.904208773 17.754069125 5.333508006 CORE 107 O O 0.0000 107 O 0.625409166 10.720822210 9.146221128 CORE 108 O O 0.0000 108 O2 11.726341084 6.722800098 4.477653189 CORE 109 O2 O2 0.0000 109 O2 12.993715512 7.602083587 3.788213547 CORE 110 O2 O2 0.0000 110 H 11.309454050 5.726187825 4.188359855 CORE 111 H H 0.0000 111 H 12.291532287 8.317662034 3.870706436 CORE 112 H H 0.0000 112 C 13.156611484 6.151426144 5.619373833 CORE 113 C C 0.0000 113 C 12.359125343 4.768030909 5.582021180 CORE 114 C C 0.0000 114 H 12.508878627 4.290434070 4.562828611 CORE 115 H H 0.0000 115 H 11.384664296 5.021604366 5.985207332 CORE 116 H H 0.0000 116 H 14.000991808 6.336538518 4.722694048 CORE 117 H H 0.0000 117 H 12.882199055 7.042341175 6.278203859 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.215693128 4.763960619 3.442978413 CORE 1 Si Si 0.0000 1 Si -2.504956543 12.020449205 7.301753081 CORE 2 Si Si 0.0000 2 Si 1.125175404 4.750308273 3.497382566 CORE 3 Si Si 0.0000 3 Si -8.563048316 11.997624327 7.298678168 CORE 4 Si Si 0.0000 4 Si -13.561537639 7.668683294 11.120483283 CORE 5 Si Si 0.0000 5 Si -3.932603909 14.849827614 7.310626824 CORE 6 Si Si 0.0000 6 Si -7.092339128 9.177217220 7.251700408 CORE 7 Si Si 0.0000 7 Si 2.504668260 16.338618102 3.526681838 CORE 8 Si Si 0.0000 8 Si -13.550390419 16.335749136 3.455198874 CORE 9 Si Si 0.0000 9 Si -3.861460808 9.102017966 7.338226111 CORE 10 Si Si 0.0000 10 Si -7.147244823 14.875656812 7.284012366 CORE 11 Si Si 0.0000 11 Si 2.458867167 7.685491170 3.469267205 CORE 12 Si Si 0.0000 12 Si -9.983685080 4.514835551 5.717982991 CORE 13 Si Si 0.0000 13 Si -0.215070093 12.059860836 9.532602329 CORE 14 Si Si 0.0000 14 Si -10.848637071 11.984424893 9.535774387 CORE 15 Si Si 0.0000 15 Si -1.183802612 4.738090771 5.733444660 CORE 16 Si Si 0.0000 16 Si -10.007953049 4.710438974 8.761346079 CORE 17 Si Si 0.0000 17 Si -0.223469959 12.006837220 5.054150915 CORE 18 Si Si 0.0000 18 Si -10.871896047 12.063318212 5.047060685 CORE 19 Si Si 0.0000 19 Si -1.161507596 4.696668139 8.880650368 CORE 20 Si Si 0.0000 20 Ti -9.038001387 7.724421638 5.080964529 CORE 21 Ti Ti 0.0000 21 Si 0.762442949 14.949292066 8.899834324 CORE 22 Si Si 0.0000 22 Si -2.202166470 16.266673264 5.081446751 CORE 23 Si Si 0.0000 23 Si -11.874808446 9.101235823 8.812717920 CORE 24 Si Si 0.0000 24 Si 0.729197585 9.087303687 5.705597986 CORE 25 Si Si 0.0000 25 Si -8.956527614 16.285317002 9.516023541 CORE 26 Si Si 0.0000 26 Si -11.756815231 14.959765528 5.714222668 CORE 27 Si Si 0.0000 27 Si -2.131933059 7.659288487 9.553429977 CORE 28 Si Si 0.0000 28 Si -11.955808996 9.203208439 5.731779440 CORE 29 Si Si 0.0000 29 Si -2.157651106 16.249338818 9.559217243 CORE 30 Si Si 0.0000 30 Si 0.699112756 14.921888346 5.746770298 CORE 31 Si Si 0.0000 31 Si -9.022917115 7.643681070 9.232082341 CORE 32 Si Si 0.0000 32 Si -2.150309691 7.686811416 5.080920788 CORE 33 Si Si 0.0000 33 Si -11.828866098 14.900034013 8.839979827 CORE 34 Si Si 0.0000 34 Si -8.817435240 16.158572221 5.019156728 CORE 35 Si Si 0.0000 35 Si 0.706908727 9.116093529 8.866356483 CORE 36 Si Si 0.0000 36 O -15.177844055 7.708704093 3.431066119 CORE 37 O O 0.0000 37 O -5.538698776 14.971485289 7.390467609 CORE 38 O O 0.0000 38 O -15.144534221 16.112397048 3.581331020 CORE 39 O O 0.0000 39 O -5.472720723 9.097505576 7.378410246 CORE 40 O O 0.0000 40 O -10.465804056 4.332732254 7.248353080 CORE 41 O O 0.0000 41 O -0.662376043 12.006698262 3.488157827 CORE 42 O O 0.0000 42 O -10.394214289 12.071964606 3.489763330 CORE 43 O O 0.0000 43 O -0.765819792 4.649105836 7.302514259 CORE 44 O O 0.0000 44 O -13.051707842 6.127432951 3.677063054 CORE 45 O O 0.0000 45 O -3.532185215 13.271483530 7.242687073 CORE 46 O O 0.0000 46 O -7.584628470 10.717969389 7.252130824 CORE 47 O O 0.0000 47 O 2.182255662 17.937213743 3.555177789 CORE 48 O O 0.0000 48 O -3.336010971 10.635981657 7.382764085 CORE 49 O O 0.0000 49 O -13.245197662 17.930799904 3.307022002 CORE 50 O O 0.0000 50 O 1.934159977 6.146556988 3.443958146 CORE 51 O O 0.0000 51 O -7.640984050 13.329784959 7.369988676 CORE 52 O O 0.0000 52 O -11.219445506 4.484417132 4.698077779 CORE 53 O O 0.0000 53 O -1.563211057 12.168998156 8.626271650 CORE 54 O O 0.0000 54 O 0.168876604 4.724480949 4.825926494 CORE 55 O O 0.0000 55 O -9.492968789 11.918134814 8.636578668 CORE 56 O O 0.0000 56 O -1.574583823 12.006386616 5.960242272 CORE 57 O O 0.0000 57 O -11.338371889 4.914948976 9.679080814 CORE 58 O O 0.0000 58 O -9.527548186 12.055702616 5.978584870 CORE 59 O O 0.0000 59 O 0.207037798 4.603553669 9.759131635 CORE 60 O O 0.0000 60 O -10.549306399 8.526759239 5.489734531 CORE 61 O O 0.0000 61 O -0.684855423 15.618736711 9.257574201 CORE 62 O O 0.0000 62 O -10.405410198 8.415252281 8.866095784 CORE 63 O O 0.0000 63 O -0.768739962 15.581951589 5.465426050 CORE 64 O O 0.0000 64 O -0.716009288 8.414170887 5.341153259 CORE 65 O O 0.0000 65 O -10.399780971 15.603541844 9.202366117 CORE 66 O O 0.0000 66 O -10.235701844 15.498145294 5.463665131 CORE 67 O O 0.0000 67 O -0.723846250 8.431440756 9.264211041 CORE 68 O O 0.0000 68 O -12.415065048 9.050020680 7.284811428 CORE 69 O O 0.0000 69 O -2.528785736 16.004816809 3.510490105 CORE 70 O O 0.0000 70 O -8.825893032 7.733795688 3.172397311 CORE 71 O O 0.0000 71 O 1.067003523 15.126592660 7.313491093 CORE 72 O O 0.0000 72 O -2.542235952 7.825398484 3.509336699 CORE 73 O O 0.0000 73 O -12.161159816 15.161108613 7.273625548 CORE 74 O O 0.0000 74 O 1.013823103 8.866734798 7.290404559 CORE 75 O O 0.0000 75 O -8.530063331 15.930369429 3.436685571 CORE 76 O O 0.0000 76 O -13.106154169 8.512654848 4.817673576 CORE 77 O O 0.0000 77 O -3.276348983 15.526710698 8.638437415 CORE 78 O O 0.0000 78 O 1.819541489 15.643310384 4.829734134 CORE 79 O O 0.0000 79 O -7.761495415 8.345925016 8.478863563 CORE 80 O O 0.0000 80 O -3.319377128 8.381220086 5.971897898 CORE 81 O O 0.0000 81 O -13.010909950 15.546758864 9.741741385 CORE 82 O O 0.0000 82 O -7.585547975 15.494040552 5.839364887 CORE 83 O O 0.0000 83 O 1.892935434 8.465585097 9.757482771 CORE 84 O O 0.0000 84 O -7.557387024 8.540263834 5.885889105 CORE 85 O O 0.0000 85 O 1.928357935 15.682413108 9.754561219 CORE 86 O O 0.0000 86 O -3.390422273 15.609891105 5.972518114 CORE 87 O O 0.0000 87 O -12.919900497 8.304674352 9.767399082 CORE 88 O O 0.0000 88 O 1.916708432 8.397913798 4.839940737 CORE 89 O O 0.0000 89 O -7.822365961 15.722889124 8.503483788 CORE 90 O O 0.0000 90 O -12.810961848 15.772727803 4.789560801 CORE 91 O O 0.0000 91 O -3.312136939 8.293922685 8.644124419 CORE 92 O O 0.0000 92 O -9.319944598 5.938400777 5.629244805 CORE 93 O O 0.0000 93 O 0.735084881 13.357906245 9.272825910 CORE 94 O O 0.0000 94 O -2.127880924 17.877574338 5.354489091 CORE 95 O O 0.0000 95 O -11.763789268 10.661348719 9.301239703 CORE 96 O O 0.0000 96 O 0.674611158 10.684215399 5.372087855 CORE 97 O O 0.0000 97 O -9.082932626 17.914334090 9.368959453 CORE 98 O O 0.0000 98 O -11.794878664 13.376790277 5.343713088 CORE 99 O O 0.0000 99 O -1.963072044 6.074890788 9.210196986 CORE 100 O O 0.0000 100 O -11.819485337 10.784449454 5.349001777 CORE 101 O O 0.0000 101 O -2.137597503 17.853274112 9.246330126 CORE 102 O O 0.0000 102 O 0.668040680 13.330042839 5.385948433 CORE 103 O O 0.0000 103 O -9.112837711 6.069568722 8.753663094 CORE 104 O O 0.0000 104 O -2.037069690 6.104432502 5.474467227 CORE 105 O O 0.0000 105 O -11.727047360 13.299099579 9.130765393 CORE 106 O O 0.0000 106 O -8.899356449 17.754687230 5.334177137 CORE 107 O O 0.0000 107 O 0.625603729 10.720885491 9.146011017 CORE 108 O O 0.0000 108 O2 11.728235519 6.703825686 4.507266563 CORE 109 O2 O2 0.0000 109 O2 12.963078556 7.577135995 3.830905325 CORE 110 O2 O2 0.0000 110 H 11.306442083 5.734085373 4.201796407 CORE 111 H H 0.0000 111 H 12.299122534 8.298090275 3.877536348 CORE 112 H H 0.0000 112 C 13.119411555 6.141116433 5.596597064 CORE 113 C C 0.0000 113 C 12.352936870 4.849315345 5.550518021 CORE 114 C C 0.0000 114 H 12.501327446 4.310837704 4.577865569 CORE 115 H H 0.0000 115 H 11.386325294 5.028754510 5.967861965 CORE 116 H H 0.0000 116 H 13.975569935 6.343314167 4.730741267 CORE 117 H H 0.0000 117 H 12.881502017 7.032255469 6.255634236 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.218107166 4.761158970 3.440023922 CORE 1 Si Si 0.0000 1 Si -2.504091308 12.020396014 7.301647721 CORE 2 Si Si 0.0000 2 Si 1.123418568 4.750046213 3.497511128 CORE 3 Si Si 0.0000 3 Si -8.562916875 12.003793404 7.301628779 CORE 4 Si Si 0.0000 4 Si -13.565747771 7.665438248 11.117295631 CORE 5 Si Si 0.0000 5 Si -3.933297676 14.850600100 7.311250615 CORE 6 Si Si 0.0000 6 Si -7.075625804 9.201451571 7.292397041 CORE 7 Si Si 0.0000 7 Si 2.504141151 16.338404043 3.526662440 CORE 8 Si Si 0.0000 8 Si -13.550804370 16.337148519 3.454050261 CORE 9 Si Si 0.0000 9 Si -3.861127108 9.099176244 7.338503546 CORE 10 Si Si 0.0000 10 Si -7.146532966 14.877663632 7.284500141 CORE 11 Si Si 0.0000 11 Si 2.455814017 7.685576794 3.469471459 CORE 12 Si Si 0.0000 12 Si -10.012933542 4.471443433 5.725033588 CORE 13 Si Si 0.0000 13 Si -0.215734993 12.060187762 9.532971660 CORE 14 Si Si 0.0000 14 Si -10.847918671 11.986303998 9.535881801 CORE 15 Si Si 0.0000 15 Si -1.185463610 4.739080920 5.734108922 CORE 16 Si Si 0.0000 16 Si -10.005921593 4.708724484 8.763069494 CORE 17 Si Si 0.0000 17 Si -0.223081412 12.006715272 5.054132962 CORE 18 Si Si 0.0000 18 Si -10.871533864 12.069271644 5.047120629 CORE 19 Si Si 0.0000 19 Si -1.162998665 4.696299698 8.879607723 CORE 20 Si Si 0.0000 20 Ti -9.020790206 7.714084827 5.073937058 CORE 21 Ti Ti 0.0000 21 Si 0.761189166 14.949439961 8.898960635 CORE 22 Si Si 0.0000 22 Si -2.203352127 16.266384681 5.081044861 CORE 23 Si Si 0.0000 23 Si -11.877147815 9.103197957 8.814672899 CORE 24 Si Si 0.0000 24 Si 0.728246904 9.087365959 5.706741122 CORE 25 Si Si 0.0000 25 Si -8.954773087 16.289536917 9.516115208 CORE 26 Si Si 0.0000 26 Si -11.756836785 14.961711230 5.714687621 CORE 27 Si Si 0.0000 27 Si -2.132676092 7.658559677 9.553968948 CORE 28 Si Si 0.0000 28 Si -12.013184345 9.229866340 5.742107454 CORE 29 Si Si 0.0000 29 Si -2.158249419 16.248751417 9.557474430 CORE 30 Si Si 0.0000 30 Si 0.698461135 14.922061179 5.746311279 CORE 31 Si Si 0.0000 31 Si -9.025005343 7.639853668 9.199574801 CORE 32 Si Si 0.0000 32 Si -2.152264361 7.685563965 5.080620683 CORE 33 Si Si 0.0000 33 Si -11.828060906 14.900629486 8.840456115 CORE 34 Si Si 0.0000 34 Si -8.816944311 16.159072412 5.019033187 CORE 35 Si Si 0.0000 35 Si 0.705132454 9.116586513 8.865931620 CORE 36 Si Si 0.0000 36 O -15.173058317 7.707122796 3.431068326 CORE 37 O O 0.0000 37 O -5.540136537 14.970321011 7.394436827 CORE 38 O O 0.0000 38 O -15.142794321 16.112124466 3.584083692 CORE 39 O O 0.0000 39 O -5.479686484 9.100114500 7.382401525 CORE 40 O O 0.0000 40 O -10.475527756 4.319642228 7.264077730 CORE 41 O O 0.0000 41 O -0.662000197 12.006589863 3.488541991 CORE 42 O O 0.0000 42 O -10.394822802 12.071509965 3.491690314 CORE 43 O O 0.0000 43 O -0.763561828 4.649344833 7.303165361 CORE 44 O O 0.0000 44 O -13.051085280 6.131575027 3.675967462 CORE 45 O O 0.0000 45 O -3.532162891 13.270952924 7.242985428 CORE 46 O O 0.0000 46 O -7.583230352 10.730743156 7.260290934 CORE 47 O O 0.0000 47 O 2.182377480 17.936673623 3.554879510 CORE 48 O O 0.0000 48 O -3.333662558 10.637330589 7.385450117 CORE 49 O O 0.0000 49 O -13.246893685 17.931703132 3.307948713 CORE 50 O O 0.0000 50 O 1.934698633 6.147977849 3.445741582 CORE 51 O O 0.0000 51 O -7.644256395 13.328894849 7.372452730 CORE 52 O O 0.0000 52 O -11.240811780 4.473745467 4.685029576 CORE 53 O O 0.0000 53 O -1.561945535 12.170401863 8.625897222 CORE 54 O O 0.0000 54 O 0.169943907 4.725230084 4.824428861 CORE 55 O O 0.0000 55 O -9.493621950 11.920613717 8.638450500 CORE 56 O O 0.0000 56 O -1.573077551 12.005550705 5.962188350 CORE 57 O O 0.0000 57 O -11.339259063 4.913892664 9.682262685 CORE 58 O O 0.0000 58 O -9.529024244 12.054583599 5.977430779 CORE 59 O O 0.0000 59 O 0.208080854 4.603838360 9.760111977 CORE 60 O O 0.0000 60 O -10.564801157 8.538083604 5.498043286 CORE 61 O O 0.0000 61 O -0.683627427 15.617263236 9.256096880 CORE 62 O O 0.0000 62 O -10.412035715 8.420275530 8.849804929 CORE 63 O O 0.0000 63 O -0.769340008 15.579926750 5.466077075 CORE 64 O O 0.0000 64 O -0.713486133 8.416025487 5.343247831 CORE 65 O O 0.0000 65 O -10.402251011 15.602139434 9.200149070 CORE 66 O O 0.0000 66 O -10.240086140 15.493922640 5.465916563 CORE 67 O O 0.0000 67 O -0.721686818 8.432560348 9.263742361 CORE 68 O O 0.0000 68 O -12.417464268 9.051460425 7.282822445 CORE 69 O O 0.0000 69 O -2.527865269 16.004468117 3.511450593 CORE 70 O O 0.0000 70 O -8.878260176 7.778463655 3.210111154 CORE 71 O O 0.0000 71 O 1.067018534 15.127485364 7.313931779 CORE 72 O O 0.0000 72 O -2.541672856 7.824090635 3.509556928 CORE 73 O O 0.0000 73 O -12.161216972 15.160713793 7.273129025 CORE 74 O O 0.0000 74 O 1.014639072 8.866211975 7.290779671 CORE 75 O O 0.0000 75 O -8.529491960 15.932302734 3.436097533 CORE 76 O O 0.0000 76 O -13.105018932 8.512605261 4.822651967 CORE 77 O O 0.0000 77 O -3.277042365 15.526374546 8.638382339 CORE 78 O O 0.0000 78 O 1.820022795 15.644084600 4.829207030 CORE 79 O O 0.0000 79 O -7.762545013 8.343553503 8.479979770 CORE 80 O O 0.0000 80 O -3.318836548 8.379338818 5.975215861 CORE 81 O O 0.0000 81 O -13.010757341 15.547242911 9.740928934 CORE 82 O O 0.0000 82 O -7.583558087 15.496616755 5.839488276 CORE 83 O O 0.0000 83 O 1.894144377 8.465353740 9.759395681 CORE 84 O O 0.0000 84 O -7.610561478 8.563153145 5.865804606 CORE 85 O O 0.0000 85 O 1.928510159 15.683149846 9.755057133 CORE 86 O O 0.0000 86 O -3.391846756 15.610874767 5.972114779 CORE 87 O O 0.0000 87 O -12.918431944 8.307100641 9.766750947 CORE 88 O O 0.0000 88 O 1.918859589 8.397155438 4.839851276 CORE 89 O O 0.0000 89 O -7.821894662 15.723145851 8.503448110 CORE 90 O O 0.0000 90 O -12.807862319 15.772508843 4.788972003 CORE 91 O O 0.0000 91 O -3.310873148 8.296796408 8.645025265 CORE 92 O O 0.0000 92 O -9.384968698 6.007708581 5.644830395 CORE 93 O O 0.0000 93 O 0.736163539 13.358543953 9.273810132 CORE 94 O O 0.0000 94 O -2.126956223 17.875049596 5.358794396 CORE 95 O O 0.0000 95 O -11.764883706 10.656960727 9.304695661 CORE 96 O O 0.0000 96 O 0.674731629 10.684704203 5.375962591 CORE 97 O O 0.0000 97 O -9.081557794 17.915749185 9.367683570 CORE 98 O O 0.0000 98 O -11.794240707 13.373507752 5.344540981 CORE 99 O O 0.0000 99 O -1.963037788 6.073682833 9.209252094 CORE 100 O O 0.0000 100 O -11.823881372 10.781421061 5.352080646 CORE 101 O O 0.0000 101 O -2.135853369 17.852158699 9.243040689 CORE 102 O O 0.0000 102 O 0.667544940 13.330369045 5.387366342 CORE 103 O O 0.0000 103 O -9.111021410 6.073932640 8.753360479 CORE 104 O O 0.0000 104 O -2.038092346 6.103437165 5.475962425 CORE 105 O O 0.0000 105 O -11.726123236 13.296896142 9.130679279 CORE 106 O O 0.0000 106 O -8.927876504 17.750602380 5.330461620 CORE 107 O O 0.0000 107 O 0.625446308 10.720381552 9.146815328 CORE 108 O O 0.0000 108 O2 11.781850481 6.635906598 4.454879616 CORE 109 O2 O2 0.0000 109 O2 13.005616541 7.650705517 3.725526351 CORE 110 O2 O2 0.0000 110 H 11.347073510 5.758042528 4.180228121 CORE 111 H H 0.0000 111 H 12.308291605 8.345731282 3.850970957 CORE 112 H H 0.0000 112 C 13.175354724 6.085192859 5.578645553 CORE 113 C C 0.0000 113 C 12.458772333 4.804765579 5.591951185 CORE 114 C C 0.0000 114 H 12.512818566 4.276388059 4.579295269 CORE 115 H H 0.0000 115 H 11.390247143 5.001298464 6.016827947 CORE 116 H H 0.0000 116 H 13.965874910 6.313103032 4.791913029 CORE 117 H H 0.0000 117 H 12.901731129 7.008638502 6.283348468 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.220521204 4.758357465 3.437069507 CORE 1 Si Si 0.0000 1 Si -2.503225880 12.020342824 7.301542361 CORE 2 Si Si 0.0000 2 Si 1.121661733 4.749784153 3.497639690 CORE 3 Si Si 0.0000 3 Si -8.562785435 12.009962625 7.304579390 CORE 4 Si Si 0.0000 4 Si -13.569957712 7.662193345 11.114107903 CORE 5 Si Si 0.0000 5 Si -3.933991250 14.851372442 7.311874407 CORE 6 Si Si 0.0000 6 Si -7.058912480 9.225686066 7.333093674 CORE 7 Si Si 0.0000 7 Si 2.503614043 16.338189984 3.526642966 CORE 8 Si Si 0.0000 8 Si -13.551218320 16.338547902 3.452901723 CORE 9 Si Si 0.0000 9 Si -3.860793600 9.096334522 7.338780906 CORE 10 Si Si 0.0000 10 Si -7.145821110 14.879670597 7.284987992 CORE 11 Si Si 0.0000 11 Si 2.452760868 7.685662562 3.469675713 CORE 12 Si Si 0.0000 12 Si -10.042181810 4.428051315 5.732084261 CORE 13 Si Si 0.0000 13 Si -0.216399892 12.060514833 9.533340990 CORE 14 Si Si 0.0000 14 Si -10.847200079 11.988183248 9.535989215 CORE 15 Si Si 0.0000 15 Si -1.187124609 4.740071068 5.734773260 CORE 16 Si Si 0.0000 16 Si -10.003889945 4.707009995 8.764792985 CORE 17 Si Si 0.0000 17 Si -0.222692671 12.006593467 5.054114933 CORE 18 Si Si 0.0000 18 Si -10.871171682 12.075224932 5.047180650 CORE 19 Si Si 0.0000 19 Si -1.164489733 4.695931258 8.878565154 CORE 20 Si Si 0.0000 20 Ti -9.003579218 7.703748161 5.066909587 CORE 21 Ti Ti 0.0000 21 Si 0.759935383 14.949587856 8.898086946 CORE 22 Si Si 0.0000 22 Si -2.204537592 16.266096098 5.080642972 CORE 23 Si Si 0.0000 23 Si -11.879486991 9.105160092 8.816627801 CORE 24 Si Si 0.0000 24 Si 0.727296223 9.087428375 5.707884183 CORE 25 Si Si 0.0000 25 Si -8.953018368 16.293756833 9.516206951 CORE 26 Si Si 0.0000 26 Si -11.756858339 14.963656788 5.715152574 CORE 27 Si Si 0.0000 27 Si -2.133419317 7.657830724 9.554507919 CORE 28 Si Si 0.0000 28 Si -12.070559694 9.256524242 5.752435545 CORE 29 Si Si 0.0000 29 Si -2.158847925 16.248163872 9.555731616 CORE 30 Si Si 0.0000 30 Si 0.697809321 14.922234011 5.745852259 CORE 31 Si Si 0.0000 31 Si -9.027093377 7.636026266 9.167067185 CORE 32 Si Si 0.0000 32 Si -2.154219223 7.684316513 5.080320502 CORE 33 Si Si 0.0000 33 Si -11.827255713 14.901224815 8.840932327 CORE 34 Si Si 0.0000 34 Si -8.816453575 16.159572459 5.018909646 CORE 35 Si Si 0.0000 35 Si 0.703356181 9.117079497 8.865506681 CORE 36 Si Si 0.0000 36 O -15.168272772 7.705541498 3.431070532 CORE 37 O O 0.0000 37 O -5.541574491 14.969156876 7.398406120 CORE 38 O O 0.0000 38 O -15.141054420 16.111851883 3.586836287 CORE 39 O O 0.0000 39 O -5.486652438 9.102723280 7.386392727 CORE 40 O O 0.0000 40 O -10.485251648 4.306552057 7.279802380 CORE 41 O O 0.0000 41 O -0.661624158 12.006481609 3.488926155 CORE 42 O O 0.0000 42 O -10.395431508 12.071055324 3.493617298 CORE 43 O O 0.0000 43 O -0.761303671 4.649583685 7.303816539 CORE 44 O O 0.0000 44 O -13.050462719 6.135717103 3.674871871 CORE 45 O O 0.0000 45 O -3.532140568 13.270422317 7.243283783 CORE 46 O O 0.0000 46 O -7.581832427 10.743516923 7.268450967 CORE 47 O O 0.0000 47 O 2.182499298 17.936133359 3.554581231 CORE 48 O O 0.0000 48 O -3.331314144 10.638679664 7.388136149 CORE 49 O O 0.0000 49 O -13.248589901 17.932606504 3.308875501 CORE 50 O O 0.0000 50 O 1.935237096 6.149398710 3.447524942 CORE 51 O O 0.0000 51 O -7.647528740 13.328004595 7.374916784 CORE 52 O O 0.0000 52 O -11.262177861 4.463073946 4.671981449 CORE 53 O O 0.0000 53 O -1.560680012 12.171805571 8.625522795 CORE 54 O O 0.0000 54 O 0.171011210 4.725979218 4.822931304 CORE 55 O O 0.0000 55 O -9.494275110 11.923092765 8.640322332 CORE 56 O O 0.0000 56 O -1.571571279 12.004714650 5.964134504 CORE 57 O O 0.0000 57 O -11.340146430 4.912836352 9.685444632 CORE 58 O O 0.0000 58 O -9.530500109 12.053464583 5.976276764 CORE 59 O O 0.0000 59 O 0.209124101 4.604123196 9.761092395 CORE 60 O O 0.0000 60 O -10.580295916 8.549407969 5.506352040 CORE 61 O O 0.0000 61 O -0.682399239 15.615789617 9.254619634 CORE 62 O O 0.0000 62 O -10.418661040 8.425298634 8.833514073 CORE 63 O O 0.0000 63 O -0.769939861 15.577902056 5.466728101 CORE 64 O O 0.0000 64 O -0.710962979 8.417880088 5.345342478 CORE 65 O O 0.0000 65 O -10.404721050 15.600736879 9.197931946 CORE 66 O O 0.0000 66 O -10.244470243 15.489700129 5.468167995 CORE 67 O O 0.0000 67 O -0.719527386 8.433679941 9.263273680 CORE 68 O O 0.0000 68 O -12.419863487 9.052900169 7.280833539 CORE 69 O O 0.0000 69 O -2.526944609 16.004119424 3.512411156 CORE 70 O O 0.0000 70 O -8.930627321 7.823131766 3.247824922 CORE 71 O O 0.0000 71 O 1.067033544 15.128378213 7.314372465 CORE 72 O O 0.0000 72 O -2.541109953 7.822782641 3.509777081 CORE 73 O O 0.0000 73 O -12.161274129 15.160318973 7.272632578 CORE 74 O O 0.0000 74 O 1.015454849 8.865689153 7.291154782 CORE 75 O O 0.0000 75 O -8.528920396 15.934235895 3.435509495 CORE 76 O O 0.0000 76 O -13.103883888 8.512555674 4.827630358 CORE 77 O O 0.0000 77 O -3.277735746 15.526038394 8.638327263 CORE 78 O O 0.0000 78 O 1.820503910 15.644858816 4.828680002 CORE 79 O O 0.0000 79 O -7.763594804 8.341181990 8.481095977 CORE 80 O O 0.0000 80 O -3.318295968 8.377457550 5.978533825 CORE 81 O O 0.0000 81 O -13.010604731 15.547726958 9.740116559 CORE 82 O O 0.0000 82 O -7.581568199 15.499192813 5.839611741 CORE 83 O O 0.0000 83 O 1.895353128 8.465122528 9.761308516 CORE 84 O O 0.0000 84 O -7.663736124 8.586042601 5.845720108 CORE 85 O O 0.0000 85 O 1.928662384 15.683886439 9.755553124 CORE 86 O O 0.0000 86 O -3.393271431 15.611858284 5.971711521 CORE 87 O O 0.0000 87 O -12.916963199 8.309527074 9.766102812 CORE 88 O O 0.0000 88 O 1.921010746 8.396396935 4.839761815 CORE 89 O O 0.0000 89 O -7.821423170 15.723402433 8.503412509 CORE 90 O O 0.0000 90 O -12.804762790 15.772290027 4.788383204 CORE 91 O O 0.0000 91 O -3.309609358 8.299669986 8.645926112 CORE 92 O O 0.0000 92 O -9.449992990 6.077016386 5.660415985 CORE 93 O O 0.0000 93 O 0.737242197 13.359181806 9.274794278 CORE 94 O O 0.0000 94 O -2.126031522 17.872524998 5.363099700 CORE 95 O O 0.0000 95 O -11.765978144 10.652572880 9.308151696 CORE 96 O O 0.0000 96 O 0.674852100 10.685193007 5.379837403 CORE 97 O O 0.0000 97 O -9.080183155 17.917164280 9.366407688 CORE 98 O O 0.0000 98 O -11.793602749 13.370225083 5.345368875 CORE 99 O O 0.0000 99 O -1.963003725 6.072474877 9.208307201 CORE 100 O O 0.0000 100 O -11.828277214 10.778392668 5.355159515 CORE 101 O O 0.0000 101 O -2.134109234 17.851043431 9.239751252 CORE 102 O O 0.0000 102 O 0.667049200 13.330695250 5.388784251 CORE 103 O O 0.0000 103 O -9.109205301 6.078296559 8.753057864 CORE 104 O O 0.0000 104 O -2.039115002 6.102441827 5.477457624 CORE 105 O O 0.0000 105 O -11.725198920 13.294692705 9.130593166 CORE 106 O O 0.0000 106 O -8.956396751 17.746517531 5.326746103 CORE 107 O O 0.0000 107 O 0.625289080 10.719877468 9.147619639 CORE 108 O O 0.0000 108 O2 11.835465443 6.567987654 4.402492668 CORE 109 O2 O2 0.0000 109 O2 13.048154526 7.724275184 3.620147454 CORE 110 O2 O2 0.0000 110 H 11.387704744 5.781999828 4.158659835 CORE 111 H H 0.0000 111 H 12.317460484 8.393372434 3.824405490 CORE 112 H H 0.0000 112 C 13.231297893 6.029269286 5.560693967 CORE 113 C C 0.0000 113 C 12.564607604 4.760215957 5.633384272 CORE 114 C C 0.0000 114 H 12.524309878 4.241938413 4.580724970 CORE 115 H H 0.0000 115 H 11.394168992 4.973842419 6.065793853 CORE 116 H H 0.0000 116 H 13.956179885 6.282892041 4.853084791 CORE 117 H H 0.0000 117 H 12.921960050 6.985021679 6.311062777 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.218736078 4.760429007 3.439254147 CORE 1 Si Si 0.0000 1 Si -2.503865762 12.020382176 7.301620259 CORE 2 Si Si 0.0000 2 Si 1.122960740 4.749977887 3.497544676 CORE 3 Si Si 0.0000 3 Si -8.562882620 12.005400936 7.302397564 CORE 4 Si Si 0.0000 4 Si -13.566844711 7.664592823 11.116464999 CORE 5 Si Si 0.0000 5 Si -3.933478382 14.850801330 7.311413182 CORE 6 Si Si 0.0000 6 Si -7.071270952 9.207766092 7.303000817 CORE 7 Si Si 0.0000 7 Si 2.504003745 16.338348258 3.526657343 CORE 8 Si Si 0.0000 8 Si -13.550912139 16.337513212 3.453750993 CORE 9 Si Si 0.0000 9 Si -3.861040315 9.098435759 7.338575815 CORE 10 Si Si 0.0000 10 Si -7.146347449 14.878186599 7.284627258 CORE 11 Si Si 0.0000 11 Si 2.455018447 7.685599137 3.469524633 CORE 12 Si Si 0.0000 12 Si -10.020554388 4.460137231 5.726870731 CORE 13 Si Si 0.0000 13 Si -0.215908194 12.060272954 9.533067891 CORE 14 Si Si 0.0000 14 Si -10.847731422 11.986793667 9.535909795 CORE 15 Si Si 0.0000 15 Si -1.185896421 4.739338944 5.734282062 CORE 16 Si Si 0.0000 16 Si -10.005392175 4.708277772 8.763518624 CORE 17 Si Si 0.0000 17 Si -0.222980185 12.006683559 5.054128246 CORE 18 Si Si 0.0000 18 Si -10.871439566 12.070822814 5.047136300 CORE 19 Si Si 0.0000 19 Si -1.163387212 4.696203696 8.879336069 CORE 20 Si Si 0.0000 20 Ti -9.016305839 7.711391577 5.072106001 CORE 21 Ti Ti 0.0000 21 Si 0.760862586 14.949478593 8.898732951 CORE 22 Si Si 0.0000 22 Si -2.203661002 16.266309436 5.080940186 CORE 23 Si Si 0.0000 23 Si -11.877757290 9.103709248 8.815182278 CORE 24 Si Si 0.0000 24 Si 0.727999226 9.087382247 5.707038945 CORE 25 Si Si 0.0000 25 Si -8.954315836 16.290636474 9.516139095 CORE 26 Si Si 0.0000 26 Si -11.756842366 14.962218052 5.714808804 CORE 27 Si Si 0.0000 27 Si -2.132869884 7.658369691 9.554109377 CORE 28 Si Si 0.0000 28 Si -12.028133905 9.236812228 5.744798507 CORE 29 Si Si 0.0000 29 Si -2.158405300 16.248598332 9.557020279 CORE 30 Si Si 0.0000 30 Si 0.698291205 14.922106297 5.746191693 CORE 31 Si Si 0.0000 31 Si -9.025549386 7.638856456 9.191104697 CORE 32 Si Si 0.0000 32 Si -2.152773764 7.685238912 5.080542481 CORE 33 Si Si 0.0000 33 Si -11.827851140 14.900784589 8.840580189 CORE 34 Si Si 0.0000 34 Si -8.816816527 16.159202721 5.019001008 CORE 35 Si Si 0.0000 35 Si 0.704669623 9.116714948 8.865820859 CORE 36 Si Si 0.0000 36 O -15.171811462 7.706710822 3.431068934 CORE 37 O O 0.0000 37 O -5.540511229 14.970017725 7.395471104 CORE 38 O O 0.0000 38 O -15.142340919 16.112053401 3.584800900 CORE 39 O O 0.0000 39 O -5.481501631 9.100794155 7.383441431 CORE 40 O O 0.0000 40 O -10.478061302 4.316231412 7.268174901 CORE 41 O O 0.0000 41 O -0.661902242 12.006561611 3.488642102 CORE 42 O O 0.0000 42 O -10.394981378 12.071391476 3.492192390 CORE 43 O O 0.0000 43 O -0.762973522 4.649407104 7.303335002 CORE 44 O O 0.0000 44 O -13.050923049 6.132654259 3.675682040 CORE 45 O O 0.0000 45 O -3.532157118 13.270814686 7.243063174 CORE 46 O O 0.0000 46 O -7.582866245 10.734071519 7.262417075 CORE 47 O O 0.0000 47 O 2.182409233 17.936532791 3.554801764 CORE 48 O O 0.0000 48 O -3.333050581 10.637682164 7.386149981 CORE 49 O O 0.0000 49 O -13.247335733 17.931938525 3.308190243 CORE 50 O O 0.0000 50 O 1.934838926 6.148348020 3.446206231 CORE 51 O O 0.0000 51 O -7.645109121 13.328662916 7.373094779 CORE 52 O O 0.0000 52 O -11.246378846 4.470965008 4.681629835 CORE 53 O O 0.0000 53 O -1.561615683 12.170767565 8.625799622 CORE 54 O O 0.0000 54 O 0.170221991 4.725425259 4.824038687 CORE 55 O O 0.0000 55 O -9.493792072 11.921259642 8.638938198 CORE 56 O O 0.0000 56 O -1.572685154 12.005332898 5.962695447 CORE 57 O O 0.0000 57 O -11.339490191 4.913617487 9.683091795 CORE 58 O O 0.0000 58 O -9.529408750 12.054291989 5.977130141 CORE 59 O O 0.0000 59 O 0.208352779 4.603912596 9.760367427 CORE 60 O O 0.0000 60 O -10.568838474 8.541034157 5.500208224 CORE 61 O O 0.0000 61 O -0.683307390 15.616879227 9.255711954 CORE 62 O O 0.0000 62 O -10.413761952 8.421584244 8.845560254 CORE 63 O O 0.0000 63 O -0.769496273 15.579399171 5.466246716 CORE 64 O O 0.0000 64 O -0.712828739 8.416508669 5.343793648 CORE 65 O O 0.0000 65 O -10.402894549 15.601773876 9.199571378 CORE 66 O O 0.0000 66 O -10.241228305 15.492822506 5.466503231 CORE 67 O O 0.0000 67 O -0.721124107 8.432852103 9.263620189 CORE 68 O O 0.0000 68 O -12.418089331 9.051835496 7.282304242 CORE 69 O O 0.0000 69 O -2.527625289 16.004377304 3.511700870 CORE 70 O O 0.0000 70 O -8.891904763 7.790102261 3.219937777 CORE 71 O O 0.0000 71 O 1.067022575 15.127718018 7.314046648 CORE 72 O O 0.0000 72 O -2.541526213 7.823749870 3.509614286 CORE 73 O O 0.0000 73 O -12.161231791 15.160610872 7.272999703 CORE 74 O O 0.0000 74 O 1.014851532 8.866075756 7.290877423 CORE 75 O O 0.0000 75 O -8.529343007 15.932806385 3.435944323 CORE 76 O O 0.0000 76 O -13.104723336 8.512592432 4.823949150 CORE 77 O O 0.0000 77 O -3.277223071 15.526286904 8.638367961 CORE 78 O O 0.0000 78 O 1.820148078 15.644286407 4.829069720 CORE 79 O O 0.0000 79 O -7.762818671 8.342935543 8.480270594 CORE 80 O O 0.0000 80 O -3.318695678 8.378848717 5.976080346 CORE 81 O O 0.0000 81 O -13.010717504 15.547369040 9.740717301 CORE 82 O O 0.0000 82 O -7.583039639 15.497287905 5.839520455 CORE 83 O O 0.0000 83 O 1.894459218 8.465293486 9.759894030 CORE 84 O O 0.0000 84 O -7.624416599 8.569117244 5.860571450 CORE 85 O O 0.0000 85 O 1.928549803 15.683341706 9.755186380 CORE 86 O O 0.0000 86 O -3.392217983 15.611131061 5.972009724 CORE 87 O O 0.0000 87 O -12.918049170 8.307732872 9.766582067 CORE 88 O O 0.0000 88 O 1.919419991 8.396957812 4.839827922 CORE 89 O O 0.0000 89 O -7.821771882 15.723212735 8.503438830 CORE 90 O O 0.0000 90 O -12.807054817 15.772451905 4.788818565 CORE 91 O O 0.0000 91 O -3.310543874 8.297545109 8.645260024 CORE 92 O O 0.0000 92 O -9.401911417 6.025767225 5.648891356 CORE 93 O O 0.0000 93 O 0.736444510 13.358710155 9.274066571 CORE 94 O O 0.0000 94 O -2.126715281 17.874391852 5.359916156 CORE 95 O O 0.0000 95 O -11.765168911 10.655817494 9.305596128 CORE 96 O O 0.0000 96 O 0.674762997 10.684831629 5.376972221 CORE 97 O O 0.0000 97 O -9.081199653 17.916117914 9.367351135 CORE 98 O O 0.0000 98 O -11.794074434 13.372652381 5.344756722 CORE 99 O O 0.0000 99 O -1.963028936 6.073368159 9.209005924 CORE 100 O O 0.0000 100 O -11.825026616 10.780631998 5.352882903 CORE 101 O O 0.0000 101 O -2.135398812 17.851868098 9.242183584 CORE 102 O O 0.0000 102 O 0.667415809 13.330454092 5.387735748 CORE 103 O O 0.0000 103 O -9.110548186 6.075069675 8.753281592 CORE 104 O O 0.0000 104 O -2.038358883 6.103177843 5.476351991 CORE 105 O O 0.0000 105 O -11.725882294 13.296322003 9.130656838 CORE 106 O O 0.0000 106 O -8.935307791 17.749537996 5.329493526 CORE 107 O O 0.0000 107 O 0.625405510 10.720250233 9.147024906 CORE 108 O O 0.0000 108 O2 11.795820300 6.618209764 4.441229758 CORE 109 O2 O2 0.0000 109 O2 13.016700254 7.669874672 3.698069090 CORE 110 O2 O2 0.0000 110 H 11.357660328 5.764284832 4.174608289 CORE 111 H H 0.0000 111 H 12.310680625 8.358144536 3.844049074 CORE 112 H H 0.0000 112 C 13.189931132 6.070621430 5.573968104 CORE 113 C C 0.0000 113 C 12.486348634 4.793157821 5.602746890 CORE 114 C C 0.0000 114 H 12.515812827 4.267411999 4.579667795 CORE 115 H H 0.0000 115 H 11.391269029 4.994144573 6.029586391 CORE 116 H H 0.0000 116 H 13.963348869 6.305231286 4.807851822 CORE 117 H H 0.0000 117 H 12.907001830 7.002484993 6.290569695 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.233744719 4.767419292 3.427786344 CORE 1 Si Si 0.0000 1 Si -2.501792738 12.021886498 7.302066574 CORE 2 Si Si 0.0000 2 Si 1.125275476 4.750712319 3.497176791 CORE 3 Si Si 0.0000 3 Si -8.574504603 12.011367053 7.302276229 CORE 4 Si Si 0.0000 4 Si -13.561165256 7.668216689 11.117899035 CORE 5 Si Si 0.0000 5 Si -3.933899453 14.849860768 7.310840967 CORE 6 Si Si 0.0000 6 Si -7.086377933 9.213427914 7.293103295 CORE 7 Si Si 0.0000 7 Si 2.505662626 16.338492837 3.526359749 CORE 8 Si Si 0.0000 8 Si -13.550556885 16.338927586 3.453091979 CORE 9 Si Si 0.0000 9 Si -3.860479913 9.099524649 7.340085848 CORE 10 Si Si 0.0000 10 Si -7.146890723 14.875909791 7.286658613 CORE 11 Si Si 0.0000 11 Si 2.459462016 7.685713734 3.470006246 CORE 12 Si Si 0.0000 12 Si -10.040401496 4.490591398 5.730302499 CORE 13 Si Si 0.0000 13 Si -0.214675965 12.060920608 9.533206571 CORE 14 Si Si 0.0000 14 Si -10.848841255 11.981186910 9.539483590 CORE 15 Si Si 0.0000 15 Si -1.184170184 4.738356003 5.734824229 CORE 16 Si Si 0.0000 16 Si -10.005922748 4.713054240 8.775094907 CORE 17 Si Si 0.0000 17 Si -0.221678098 12.006410400 5.054931339 CORE 18 Si Si 0.0000 18 Si -10.874135344 12.062308747 5.048623663 CORE 19 Si Si 0.0000 19 Si -1.161137716 4.695766353 8.879188261 CORE 20 Si Si 0.0000 20 Ti -9.021988565 7.705205491 5.052191905 CORE 21 Ti Ti 0.0000 21 Si 0.762980642 14.949251128 8.898507853 CORE 22 Si Si 0.0000 22 Si -2.203249938 16.264716031 5.081762374 CORE 23 Si Si 0.0000 23 Si -11.884034674 9.106016327 8.810568577 CORE 24 Si Si 0.0000 24 Si 0.731726513 9.087475222 5.707879010 CORE 25 Si Si 0.0000 25 Si -8.956405026 16.291815023 9.513980243 CORE 26 Si Si 0.0000 26 Si -11.762104599 14.956404732 5.715517721 CORE 27 Si Si 0.0000 27 Si -2.131705204 7.657851913 9.554960625 CORE 28 Si Si 0.0000 28 Si -12.035529975 9.242989521 5.747895253 CORE 29 Si Si 0.0000 29 Si -2.156991787 16.247211778 9.556501999 CORE 30 Si Si 0.0000 30 Si 0.699283840 14.922707247 5.746182945 CORE 31 Si Si 0.0000 31 Si -9.037784308 7.648330400 9.212259303 CORE 32 Si Si 0.0000 32 Si -2.151780745 7.685401655 5.080197494 CORE 33 Si Si 0.0000 33 Si -11.830075619 14.897099604 8.840178224 CORE 34 Si Si 0.0000 34 Si -8.819851202 16.148755205 5.017558223 CORE 35 Si Si 0.0000 35 Si 0.707560540 9.116859240 8.866187451 CORE 36 Si Si 0.0000 36 O -15.180074114 7.704977450 3.430384132 CORE 37 O O 0.0000 37 O -5.540789698 14.968564142 7.399920337 CORE 38 O O 0.0000 38 O -15.142852247 16.111658581 3.588135372 CORE 39 O O 0.0000 39 O -5.468992667 9.103684887 7.389948949 CORE 40 O O 0.0000 40 O -10.492890968 4.294217940 7.280530923 CORE 41 O O 0.0000 41 O -0.661607031 12.006339768 3.489297768 CORE 42 O O 0.0000 42 O -10.396108147 12.072233153 3.491687956 CORE 43 O O 0.0000 43 O -0.760383974 4.650062831 7.302829807 CORE 44 O O 0.0000 44 O -13.048201098 6.130574933 3.673302730 CORE 45 O O 0.0000 45 O -3.532692694 13.271817520 7.243384655 CORE 46 O O 0.0000 46 O -7.576350999 10.748839710 7.276604306 CORE 47 O O 0.0000 47 O 2.181848639 17.937142679 3.554449093 CORE 48 O O 0.0000 48 O -3.333587696 10.633614757 7.389043081 CORE 49 O O 0.0000 49 O -13.253069650 17.929491911 3.307377564 CORE 50 O O 0.0000 50 O 1.933695221 6.146484915 3.448313582 CORE 51 O O 0.0000 51 O -7.643814924 13.339166217 7.375546737 CORE 52 O O 0.0000 52 O -11.258893969 4.451145892 4.683708811 CORE 53 O O 0.0000 53 O -1.561070484 12.172618418 8.625017600 CORE 54 O O 0.0000 54 O 0.167171920 4.726298792 4.825722620 CORE 55 O O 0.0000 55 O -9.493062895 11.924527752 8.640241543 CORE 56 O O 0.0000 56 O -1.571405968 12.004341308 5.964797930 CORE 57 O O 0.0000 57 O -11.334832237 4.911870276 9.681025751 CORE 58 O O 0.0000 58 O -9.527236424 12.054574374 5.980531100 CORE 59 O O 0.0000 59 O 0.206193924 4.604254514 9.758810458 CORE 60 O O 0.0000 60 O -10.581725979 8.553331517 5.508436494 CORE 61 O O 0.0000 61 O -0.685838820 15.616514390 9.254449385 CORE 62 O O 0.0000 62 O -10.411770333 8.421323770 8.822049693 CORE 63 O O 0.0000 63 O -0.772729167 15.577865010 5.466470977 CORE 64 O O 0.0000 64 O -0.717075629 8.415165792 5.344984178 CORE 65 O O 0.0000 65 O -10.397424667 15.604685077 9.199228368 CORE 66 O O 0.0000 66 O -10.234986139 15.492225015 5.467400427 CORE 67 O O 0.0000 67 O -0.724084690 8.431331636 9.264282473 CORE 68 O O 0.0000 68 O -12.432835476 9.055287682 7.304186934 CORE 69 O O 0.0000 69 O -2.526399026 16.004319645 3.510396004 CORE 70 O O 0.0000 70 O -8.953768521 7.834797328 3.218391686 CORE 71 O O 0.0000 71 O 1.067024114 15.128791628 7.313414260 CORE 72 O O 0.0000 72 O -2.539819990 7.822120428 3.510578045 CORE 73 O O 0.0000 73 O -12.161451179 15.160578583 7.273417111 CORE 74 O O 0.0000 74 O 1.015990233 8.865337433 7.291800939 CORE 75 O O 0.0000 75 O -8.528790111 15.935940294 3.437491023 CORE 76 O O 0.0000 76 O -13.126687346 8.501874351 4.812607550 CORE 77 O O 0.0000 77 O -3.278318857 15.525980591 8.638589636 CORE 78 O O 0.0000 78 O 1.819324795 15.644166620 4.829975435 CORE 79 O O 0.0000 79 O -7.758912795 8.341474897 8.483529678 CORE 80 O O 0.0000 80 O -3.319117711 8.376810040 5.980419578 CORE 81 O O 0.0000 81 O -13.010629749 15.548292880 9.740048170 CORE 82 O O 0.0000 82 O -7.582879716 15.502929835 5.838162414 CORE 83 O O 0.0000 83 O 1.893214672 8.467024985 9.759262555 CORE 84 O O 0.0000 84 O -7.654309561 8.611955980 5.883747065 CORE 85 O O 0.0000 85 O 1.927594695 15.683363040 9.754501426 CORE 86 O O 0.0000 86 O -3.394806569 15.611749886 5.972308231 CORE 87 O O 0.0000 87 O -12.919936292 8.308218937 9.769173237 CORE 88 O O 0.0000 88 O 1.919433270 8.398149479 4.842356789 CORE 89 O O 0.0000 89 O -7.822278591 15.724834970 8.504220623 CORE 90 O O 0.0000 90 O -12.804468926 15.773470162 4.786514263 CORE 91 O O 0.0000 91 O -3.310092782 8.300705541 8.645591623 CORE 92 O O 0.0000 92 O -9.475956020 6.028985316 5.670621599 CORE 93 O O 0.0000 93 O 0.737046095 13.358572206 9.275510649 CORE 94 O O 0.0000 94 O -2.125803859 17.872994775 5.364640390 CORE 95 O O 0.0000 95 O -11.763954964 10.659342331 9.310470604 CORE 96 O O 0.0000 96 O 0.674838821 10.685930897 5.380500372 CORE 97 O O 0.0000 97 O -9.077285887 17.916766577 9.366903450 CORE 98 O O 0.0000 98 O -11.796811780 13.378171065 5.347990170 CORE 99 O O 0.0000 99 O -1.963827585 6.073847737 9.208144559 CORE 100 O O 0.0000 100 O -11.829714783 10.805428812 5.351284171 CORE 101 O O 0.0000 101 O -2.134209691 17.849951802 9.238160659 CORE 102 O O 0.0000 102 O 0.666844245 13.330301440 5.388841534 CORE 103 O O 0.0000 103 O -9.109774940 6.068243863 8.751159483 CORE 104 O O 0.0000 104 O -2.040357816 6.103776199 5.477803524 CORE 105 O O 0.0000 105 O -11.726964031 13.299037164 9.129325043 CORE 106 O O 0.0000 106 O -8.960351123 17.740042862 5.322580772 CORE 107 O O 0.0000 107 O 0.624738686 10.720814570 9.148271273 CORE 108 O O 0.0000 108 O2 11.895957256 6.552494546 4.428397068 CORE 109 O2 O2 0.0000 109 O2 13.043114183 7.751716382 3.592233684 CORE 110 O2 O2 0.0000 110 H 11.389754290 5.766843881 4.133143403 CORE 111 H H 0.0000 111 H 12.338628539 8.394993659 3.815921770 CORE 112 H H 0.0000 112 C 13.181869585 6.036353122 5.578701695 CORE 113 C C 0.0000 113 C 12.539159174 4.799142389 5.635912911 CORE 114 C C 0.0000 114 H 12.530384424 4.241564639 4.611015767 CORE 115 H H 0.0000 115 H 11.462068229 4.954468575 6.061190041 CORE 116 H H 0.0000 116 H 13.962860635 6.278915302 4.861011815 CORE 117 H H 0.0000 117 H 12.944589344 6.929941368 6.284038899 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.248753167 4.774409576 3.416318464 CORE 1 Si Si 0.0000 1 Si -2.499719713 12.023390821 7.302512890 CORE 2 Si Si 0.0000 2 Si 1.127590020 4.751446750 3.496808906 CORE 3 Si Si 0.0000 3 Si -8.586126778 12.017333314 7.302154970 CORE 4 Si Si 0.0000 4 Si -13.555485994 7.671840555 11.119332996 CORE 5 Si Si 0.0000 5 Si -3.934320524 14.848920206 7.310268752 CORE 6 Si Si 0.0000 6 Si -7.101484913 9.219089736 7.283205697 CORE 7 Si Si 0.0000 7 Si 2.507321315 16.338637273 3.526062155 CORE 8 Si Si 0.0000 8 Si -13.550201438 16.340341960 3.452432966 CORE 9 Si Si 0.0000 9 Si -3.859919704 9.100613394 7.341595804 CORE 10 Si Si 0.0000 10 Si -7.147434189 14.873632982 7.288689968 CORE 11 Si Si 0.0000 11 Si 2.463905585 7.685828187 3.470487859 CORE 12 Si Si 0.0000 12 Si -10.060248604 4.521045566 5.733734267 CORE 13 Si Si 0.0000 13 Si -0.213443735 12.061568262 9.533345174 CORE 14 Si Si 0.0000 14 Si -10.849951089 11.975580296 9.543057308 CORE 15 Si Si 0.0000 15 Si -1.182443946 4.737373206 5.735366395 CORE 16 Si Si 0.0000 16 Si -10.006453513 4.717830709 8.786671189 CORE 17 Si Si 0.0000 17 Si -0.220376011 12.006137385 5.055734509 CORE 18 Si Si 0.0000 18 Si -10.876831122 12.053794681 5.050111026 CORE 19 Si Si 0.0000 19 Si -1.158888219 4.695329010 8.879040452 CORE 20 Si Si 0.0000 20 Ti -9.027671484 7.699019549 5.032277808 CORE 21 Ti Ti 0.0000 21 Si 0.765098699 14.949023519 8.898282680 CORE 22 Si Si 0.0000 22 Si -2.202839067 16.263122625 5.082584638 CORE 23 Si Si 0.0000 23 Si -11.890312057 9.108323551 8.805954876 CORE 24 Si Si 0.0000 24 Si 0.735453800 9.087568198 5.708718999 CORE 25 Si Si 0.0000 25 Si -8.958494215 16.292993717 9.511821391 CORE 26 Si Si 0.0000 26 Si -11.767366639 14.950591411 5.716226713 CORE 27 Si Si 0.0000 27 Si -2.130540523 7.657333992 9.555811872 CORE 28 Si Si 0.0000 28 Si -12.042926044 9.249166670 5.750991923 CORE 29 Si Si 0.0000 29 Si -2.155578466 16.245825369 9.555983719 CORE 30 Si Si 0.0000 30 Si 0.700276474 14.923308198 5.746174197 CORE 31 Si Si 0.0000 31 Si -9.050019231 7.657804201 9.233413984 CORE 32 Si Si 0.0000 32 Si -2.150787725 7.685564541 5.079852506 CORE 33 Si Si 0.0000 33 Si -11.832300098 14.893414764 8.839776182 CORE 34 Si Si 0.0000 34 Si -8.822885877 16.138307689 5.016115515 CORE 35 Si Si 0.0000 35 Si 0.710451458 9.117003387 8.866554043 CORE 36 Si Si 0.0000 36 O -15.188336959 7.703243933 3.429699407 CORE 37 O O 0.0000 37 O -5.541067974 14.967110560 7.404369646 CORE 38 O O 0.0000 38 O -15.143363767 16.111263761 3.591469919 CORE 39 O O 0.0000 39 O -5.456483895 9.106575475 7.396456467 CORE 40 O O 0.0000 40 O -10.507720442 4.272204612 7.292886870 CORE 41 O O 0.0000 41 O -0.661312011 12.006117781 3.489953434 CORE 42 O O 0.0000 42 O -10.397234916 12.073074829 3.491183521 CORE 43 O O 0.0000 43 O -0.757794426 4.650718702 7.302324535 CORE 44 O O 0.0000 44 O -13.045478955 6.128495462 3.670923345 CORE 45 O O 0.0000 45 O -3.533228270 13.272820353 7.243706212 CORE 46 O O 0.0000 46 O -7.569835753 10.763607900 7.290791462 CORE 47 O O 0.0000 47 O 2.181288238 17.937752566 3.554096347 CORE 48 O O 0.0000 48 O -3.334124619 10.629547349 7.391936182 CORE 49 O O 0.0000 49 O -13.258803567 17.927045153 3.306564961 CORE 50 O O 0.0000 50 O 1.932551517 6.144621665 3.450420933 CORE 51 O O 0.0000 51 O -7.642520920 13.349669662 7.377998696 CORE 52 O O 0.0000 52 O -11.271409092 4.431326776 4.685787863 CORE 53 O O 0.0000 53 O -1.560525286 12.174469126 8.624235654 CORE 54 O O 0.0000 54 O 0.164121850 4.727172182 4.827406478 CORE 55 O O 0.0000 55 O -9.492333526 11.927796006 8.641544963 CORE 56 O O 0.0000 56 O -1.570126782 12.003349862 5.966900489 CORE 57 O O 0.0000 57 O -11.330174283 4.910123065 9.678959707 CORE 58 O O 0.0000 58 O -9.525063906 12.054856615 5.983932135 CORE 59 O O 0.0000 59 O 0.204035070 4.604596287 9.757253489 CORE 60 O O 0.0000 60 O -10.594613677 8.565628877 5.516664764 CORE 61 O O 0.0000 61 O -0.688370442 15.616149553 9.253186739 CORE 62 O O 0.0000 62 O -10.409778713 8.421063151 8.798539056 CORE 63 O O 0.0000 63 O -0.775962061 15.576330705 5.466695238 CORE 64 O O 0.0000 64 O -0.721322711 8.413822915 5.346174707 CORE 65 O O 0.0000 65 O -10.391954786 15.607596134 9.198885359 CORE 66 O O 0.0000 66 O -10.228743781 15.491627524 5.468297622 CORE 67 O O 0.0000 67 O -0.727045274 8.429811169 9.264944758 CORE 68 O O 0.0000 68 O -12.447581621 9.058739869 7.326069550 CORE 69 O O 0.0000 69 O -2.525172762 16.004261986 3.509091138 CORE 70 O O 0.0000 70 O -9.015632279 7.879492250 3.216845672 CORE 71 O O 0.0000 71 O 1.067025654 15.129865238 7.312781948 CORE 72 O O 0.0000 72 O -2.538113767 7.820491130 3.511541727 CORE 73 O O 0.0000 73 O -12.161670374 15.160546294 7.273834443 CORE 74 O O 0.0000 74 O 1.017128934 8.864598966 7.292724379 CORE 75 O O 0.0000 75 O -8.528237022 15.939074058 3.439037722 CORE 76 O O 0.0000 76 O -13.148651356 8.491156415 4.801266026 CORE 77 O O 0.0000 77 O -3.279414642 15.525674278 8.638811310 CORE 78 O O 0.0000 78 O 1.818501321 15.644046834 4.830881226 CORE 79 O O 0.0000 79 O -7.755006919 8.340014396 8.486788762 CORE 80 O O 0.0000 80 O -3.319539936 8.374771508 5.984758735 CORE 81 O O 0.0000 81 O -13.010541802 15.549216865 9.739378963 CORE 82 O O 0.0000 82 O -7.582719794 15.508571764 5.836804374 CORE 83 O O 0.0000 83 O 1.891969934 8.468756340 9.758631080 CORE 84 O O 0.0000 84 O -7.684202522 8.654794861 5.906922755 CORE 85 O O 0.0000 85 O 1.926639395 15.683384229 9.753816396 CORE 86 O O 0.0000 86 O -3.397394963 15.612368855 5.972606662 CORE 87 O O 0.0000 87 O -12.921823413 8.308704858 9.771764408 CORE 88 O O 0.0000 88 O 1.919446548 8.399341001 4.844885580 CORE 89 O O 0.0000 89 O -7.822785493 15.726457349 8.505002417 CORE 90 O O 0.0000 90 O -12.801883226 15.774488564 4.784209961 CORE 91 O O 0.0000 91 O -3.309641689 8.303866117 8.645923297 CORE 92 O O 0.0000 92 O -9.550000816 6.032203407 5.692351843 CORE 93 O O 0.0000 93 O 0.737647680 13.358434257 9.276954727 CORE 94 O O 0.0000 94 O -2.124892437 17.871597554 5.369364700 CORE 95 O O 0.0000 95 O -11.762741017 10.662867023 9.315345004 CORE 96 O O 0.0000 96 O 0.674914645 10.687030309 5.384028599 CORE 97 O O 0.0000 97 O -9.073372120 17.917415241 9.366455766 CORE 98 O O 0.0000 98 O -11.799549319 13.383689604 5.351223617 CORE 99 O O 0.0000 99 O -1.964626427 6.074327460 9.207283118 CORE 100 O O 0.0000 100 O -11.834402951 10.830225770 5.349685438 CORE 101 O O 0.0000 101 O -2.133020569 17.848035507 9.234137659 CORE 102 O O 0.0000 102 O 0.666272682 13.330148932 5.389947319 CORE 103 O O 0.0000 103 O -9.109001501 6.061418050 8.749037298 CORE 104 O O 0.0000 104 O -2.042356941 6.104374555 5.479254981 CORE 105 O O 0.0000 105 O -11.728045767 13.301752324 9.127993247 CORE 106 O O 0.0000 106 O -8.985394455 17.730547728 5.315668094 CORE 107 O O 0.0000 107 O 0.624071861 10.721378763 9.149517715 CORE 108 O O 0.0000 108 O2 11.996094405 6.486779471 4.415564377 CORE 109 O2 O2 0.0000 109 O2 13.069528113 7.833557948 3.486398277 CORE 110 O2 O2 0.0000 110 H 11.421848444 5.769402786 4.091678441 CORE 111 H H 0.0000 111 H 12.366576645 8.431842638 3.787794465 CORE 112 H H 0.0000 112 C 13.173808038 6.002084670 5.583435285 CORE 113 C C 0.0000 113 C 12.591969906 4.805127101 5.669078856 CORE 114 C C 0.0000 114 H 12.544956020 4.215717279 4.642363739 CORE 115 H H 0.0000 115 H 11.532867430 4.914792577 6.092793768 CORE 116 H H 0.0000 116 H 13.962372400 6.252599319 4.914171732 CORE 117 H H 0.0000 117 H 12.982177051 6.857397742 6.277508103 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.242336453 4.771420968 3.421221392 CORE 1 Si Si 0.0000 1 Si -2.500605925 12.022747635 7.302322101 CORE 2 Si Si 0.0000 2 Si 1.126600464 4.751132797 3.496966223 CORE 3 Si Si 0.0000 3 Si -8.581157833 12.014782482 7.302206775 CORE 4 Si Si 0.0000 4 Si -13.557914080 7.670291258 11.118719930 CORE 5 Si Si 0.0000 5 Si -3.934140587 14.849322378 7.310513400 CORE 6 Si Si 0.0000 6 Si -7.095026054 9.216669068 7.287437288 CORE 7 Si Si 0.0000 7 Si 2.506612153 16.338575578 3.526189347 CORE 8 Si Si 0.0000 8 Si -13.550353470 16.339737262 3.452714738 CORE 9 Si Si 0.0000 9 Si -3.860159299 9.100147942 7.340950256 CORE 10 Si Si 0.0000 10 Si -7.147201907 14.874606410 7.287821452 CORE 11 Si Si 0.0000 11 Si 2.462005762 7.685779177 3.470281932 CORE 12 Si Si 0.0000 12 Si -10.051763292 4.508025162 5.732267063 CORE 13 Si Si 0.0000 13 Si -0.213970651 12.061291355 9.533285914 CORE 14 Si Si 0.0000 14 Si -10.849476711 11.977977323 9.541529399 CORE 15 Si Si 0.0000 15 Si -1.183181975 4.737793395 5.735134603 CORE 16 Si Si 0.0000 16 Si -10.006226620 4.715788572 8.781721858 CORE 17 Si Si 0.0000 17 Si -0.220932564 12.006254144 5.055391120 CORE 18 Si Si 0.0000 18 Si -10.875678565 12.057434835 5.049475139 CORE 19 Si Si 0.0000 19 Si -1.159849870 4.695515969 8.879103668 CORE 20 Si Si 0.0000 20 Ti -9.025241858 7.701664366 5.040791881 CORE 21 Ti Ti 0.0000 21 Si 0.764193242 14.949120819 8.898378987 CORE 22 Si Si 0.0000 22 Si -2.203014770 16.263803866 5.082233109 CORE 23 Si Si 0.0000 23 Si -11.887628210 9.107337150 8.807927427 CORE 24 Si Si 0.0000 24 Si 0.733860158 9.087528413 5.708359862 CORE 25 Si Si 0.0000 25 Si -8.957601075 16.292489777 9.512744450 CORE 26 Si Si 0.0000 26 Si -11.765116950 14.953076800 5.715923566 CORE 27 Si Si 0.0000 27 Si -2.131038380 7.657555402 9.555447943 CORE 28 Si Si 0.0000 28 Si -12.039763970 9.246525745 5.749667963 CORE 29 Si Si 0.0000 29 Si -2.156182746 16.246418103 9.556205318 CORE 30 Si Si 0.0000 30 Si 0.699852132 14.923051327 5.746177924 CORE 31 Si Si 0.0000 31 Si -9.044788366 7.653753803 9.224369460 CORE 32 Si Si 0.0000 32 Si -2.151212260 7.685494918 5.080000010 CORE 33 Si Si 0.0000 33 Si -11.831349031 14.894990151 8.839948029 CORE 34 Si Si 0.0000 34 Si -8.821588408 16.142774385 5.016732308 CORE 35 Si Si 0.0000 35 Si 0.709215573 9.116941692 8.866397334 CORE 36 Si Si 0.0000 36 O -15.184804235 7.703984995 3.429992133 CORE 37 O O 0.0000 37 O -5.540949043 14.967731979 7.402467385 CORE 38 O O 0.0000 38 O -15.143145149 16.111432558 3.590044251 CORE 39 O O 0.0000 39 O -5.461831958 9.105339555 7.393674279 CORE 40 O O 0.0000 40 O -10.501380129 4.281616141 7.287604190 CORE 41 O O 0.0000 41 O -0.661438256 12.006212630 3.489673108 CORE 42 O O 0.0000 42 O -10.396753224 12.072715037 3.491399186 CORE 43 O O 0.0000 43 O -0.758901565 4.650438335 7.302540580 CORE 44 O O 0.0000 44 O -13.046642866 6.129384563 3.671940658 CORE 45 O O 0.0000 45 O -3.532999260 13.272391659 7.243568749 CORE 46 O O 0.0000 46 O -7.572621211 10.757293955 7.284725847 CORE 47 O O 0.0000 47 O 2.181527833 17.937491804 3.554247198 CORE 48 O O 0.0000 48 O -3.333895032 10.631286344 7.390699249 CORE 49 O O 0.0000 49 O -13.256352002 17.928091230 3.306912382 CORE 50 O O 0.0000 50 O 1.933040521 6.145418224 3.449519935 CORE 51 O O 0.0000 51 O -7.643074201 13.345179038 7.376950345 CORE 52 O O 0.0000 52 O -11.266058334 4.439800193 4.684898960 CORE 53 O O 0.0000 53 O -1.560758338 12.173677901 8.624569991 CORE 54 O O 0.0000 54 O 0.165425861 4.726798840 4.826686607 CORE 55 O O 0.0000 55 O -9.492645288 11.926398641 8.640987735 CORE 56 O O 0.0000 56 O -1.570673713 12.003773656 5.966001544 CORE 57 O O 0.0000 57 O -11.332165711 4.910870037 9.679842981 CORE 58 O O 0.0000 58 O -9.525992648 12.054735963 5.982478091 CORE 59 O O 0.0000 59 O 0.204958039 4.604450122 9.757919120 CORE 60 O O 0.0000 60 O -10.589103766 8.560371244 5.513146883 CORE 61 O O 0.0000 61 O -0.687288127 15.616305520 9.253726547 CORE 62 O O 0.0000 62 O -10.410630285 8.421174577 8.808590777 CORE 63 O O 0.0000 63 O -0.774579917 15.576986720 5.466599387 CORE 64 O O 0.0000 64 O -0.719506987 8.414397054 5.345665708 CORE 65 O O 0.0000 65 O -10.394293385 15.606351421 9.199032026 CORE 66 O O 0.0000 66 O -10.231412616 15.491882954 5.467913990 CORE 67 O O 0.0000 67 O -0.725779559 8.430461274 9.264661617 CORE 68 O O 0.0000 68 O -12.441276910 9.057263943 7.316713890 CORE 69 O O 0.0000 69 O -2.525696984 16.004286635 3.509649051 CORE 70 O O 0.0000 70 O -8.989182939 7.860383349 3.217506663 CORE 71 O O 0.0000 71 O 1.067025077 15.129406273 7.313052309 CORE 72 O O 0.0000 72 O -2.538843329 7.821187650 3.511129720 CORE 73 O O 0.0000 73 O -12.161576653 15.160560132 7.273656053 CORE 74 O O 0.0000 74 O 1.016642046 8.864914793 7.292329565 CORE 75 O O 0.0000 75 O -8.528473538 15.937734208 3.438376427 CORE 76 O O 0.0000 76 O -13.139260780 8.495738717 4.806115018 CORE 77 O O 0.0000 77 O -3.278946229 15.525805308 8.638716524 CORE 78 O O 0.0000 78 O 1.818853304 15.644098006 4.830493943 CORE 79 O O 0.0000 79 O -7.756676962 8.340638842 8.485395348 CORE 80 O O 0.0000 80 O -3.319359423 8.375643167 5.982903563 CORE 81 O O 0.0000 81 O -13.010579328 15.548821757 9.739665071 CORE 82 O O 0.0000 82 O -7.582788112 15.506159601 5.837385033 CORE 83 O O 0.0000 83 O 1.892502046 8.468016143 9.758901060 CORE 84 O O 0.0000 84 O -7.671422017 8.636479491 5.897014203 CORE 85 O O 0.0000 85 O 1.927047765 15.683375148 9.754109274 CORE 86 O O 0.0000 86 O -3.396288400 15.612104200 5.972479089 CORE 87 O O 0.0000 87 O -12.921016681 8.308497141 9.770656569 CORE 88 O O 0.0000 88 O 1.919440967 8.398831584 4.843804442 CORE 89 O O 0.0000 89 O -7.822568799 15.725763712 8.504668156 CORE 90 O O 0.0000 90 O -12.802988634 15.774053094 4.785195172 CORE 91 O O 0.0000 91 O -3.309834519 8.302514880 8.645781499 CORE 92 O O 0.0000 92 O -9.518343705 6.030827519 5.683061301 CORE 93 O O 0.0000 93 O 0.737390572 13.358493358 9.276337326 CORE 94 O O 0.0000 94 O -2.125282139 17.872194901 5.367344908 CORE 95 O O 0.0000 95 O -11.763260042 10.661360106 9.313261007 CORE 96 O O 0.0000 96 O 0.674882314 10.686560245 5.382520164 CORE 97 O O 0.0000 97 O -9.075045435 17.917137901 9.366647163 CORE 98 O O 0.0000 98 O -11.798378865 13.381330199 5.349841158 CORE 99 O O 0.0000 99 O -1.964284836 6.074122338 9.207651383 CORE 100 O O 0.0000 100 O -11.832398630 10.819624016 5.350368946 CORE 101 O O 0.0000 101 O -2.133529011 17.848854841 9.235857650 CORE 102 O O 0.0000 102 O 0.666517088 13.330214086 5.389474530 CORE 103 O O 0.0000 103 O -9.109332315 6.064336315 8.749944611 CORE 104 O O 0.0000 104 O -2.041502290 6.104118694 5.478634460 CORE 105 O O 0.0000 105 O -11.727583321 13.300591505 9.128562647 CORE 106 O O 0.0000 106 O -8.974687359 17.734607207 5.318623497 CORE 107 O O 0.0000 107 O 0.624356873 10.721137605 9.148984830 CORE 108 O O 0.0000 108 O2 11.953281800 6.514875387 4.421050854 CORE 109 O2 O2 0.0000 109 O2 13.058235212 7.798567318 3.531647145 CORE 110 O2 O2 0.0000 110 H 11.408126880 5.768308707 4.109406376 CORE 111 H H 0.0000 111 H 12.354627697 8.416088191 3.799820030 CORE 112 H H 0.0000 112 C 13.177254547 6.016735813 5.581411461 CORE 113 C C 0.0000 113 C 12.569391224 4.802568340 5.654899079 CORE 114 C C 0.0000 114 H 12.538726171 4.226768051 4.628961268 CORE 115 H H 0.0000 115 H 11.502598045 4.931755700 6.079281905 CORE 116 H H 0.0000 116 H 13.962581011 6.263850601 4.891443726 CORE 117 H H 0.0000 117 H 12.966106688 6.888413075 6.280300332 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.245411157 4.764327906 3.417337071 CORE 1 Si Si 0.0000 1 Si -2.504019526 12.019374874 7.303466911 CORE 2 Si Si 0.0000 2 Si 1.123866774 4.750968468 3.497262981 CORE 3 Si Si 0.0000 3 Si -8.579090967 12.024137793 7.305332505 CORE 4 Si Si 0.0000 4 Si -13.567621037 7.663614206 11.108365443 CORE 5 Si Si 0.0000 5 Si -3.935616068 14.848280048 7.311221936 CORE 6 Si Si 0.0000 6 Si -7.094701590 9.221433429 7.283405234 CORE 7 Si Si 0.0000 7 Si 2.506891199 16.338526136 3.526523608 CORE 8 Si Si 0.0000 8 Si -13.549341783 16.337057850 3.453368197 CORE 9 Si Si 0.0000 9 Si -3.855670890 9.101419178 7.343754048 CORE 10 Si Si 0.0000 10 Si -7.147748068 14.881195100 7.287539148 CORE 11 Si Si 0.0000 11 Si 2.457473091 7.685444178 3.470816415 CORE 12 Si Si 0.0000 12 Si -10.067198392 4.520892049 5.741939944 CORE 13 Si Si 0.0000 13 Si -0.214991575 12.061609344 9.533732001 CORE 14 Si Si 0.0000 14 Si -10.848951142 11.982317169 9.542745412 CORE 15 Si Si 0.0000 15 Si -1.183927317 4.738849275 5.736733108 CORE 16 Si Si 0.0000 16 Si -10.006425608 4.707564963 8.780934511 CORE 17 Si Si 0.0000 17 Si -0.221918270 12.006080735 5.056425853 CORE 18 Si Si 0.0000 18 Si -10.869363270 12.070662811 5.048588974 CORE 19 Si Si 0.0000 19 Si -1.160408154 4.696591741 8.877620337 CORE 20 Si Si 0.0000 20 Ti -9.032499944 7.699207373 5.036223367 CORE 21 Ti Ti 0.0000 21 Si 0.763045112 14.948931842 8.898150162 CORE 22 Si Si 0.0000 22 Si -2.204614763 16.262698832 5.082535191 CORE 23 Si Si 0.0000 23 Si -11.885302505 9.109675077 8.818807117 CORE 24 Si Si 0.0000 24 Si 0.730714826 9.086767747 5.709175280 CORE 25 Si Si 0.0000 25 Si -8.956271469 16.292767549 9.514361440 CORE 26 Si Si 0.0000 26 Si -11.761066740 14.957367925 5.716138926 CORE 27 Si Si 0.0000 27 Si -2.134664055 7.658739573 9.554877934 CORE 28 Si Si 0.0000 28 Si -12.037301436 9.244667541 5.749977805 CORE 29 Si Si 0.0000 29 Si -2.157100904 16.245566768 9.555152859 CORE 30 Si Si 0.0000 30 Si 0.697842422 14.923194466 5.746258408 CORE 31 Si Si 0.0000 31 Si -9.046908347 7.660294635 9.230741721 CORE 32 Si Si 0.0000 32 Si -2.153909193 7.686740496 5.081871690 CORE 33 Si Si 0.0000 33 Si -11.827995667 14.898658414 8.839647544 CORE 34 Si Si 0.0000 34 Si -8.826332000 16.139334740 5.015109004 CORE 35 Si Si 0.0000 35 Si 0.706064468 9.116441789 8.867514073 CORE 36 Si Si 0.0000 36 O -15.178729689 7.701395963 3.428367155 CORE 37 O O 0.0000 37 O -5.540113829 14.966760858 7.406164112 CORE 38 O O 0.0000 38 O -15.143619142 16.110800616 3.593083334 CORE 39 O O 0.0000 39 O -5.474949628 9.107326627 7.396145636 CORE 40 O O 0.0000 40 O -10.512712289 4.262656720 7.295460924 CORE 41 O O 0.0000 41 O -0.660481994 12.006032301 3.490295911 CORE 42 O O 0.0000 42 O -10.398005468 12.072945385 3.494854384 CORE 43 O O 0.0000 43 O -0.755871894 4.651296589 7.302549328 CORE 44 O O 0.0000 44 O -13.050217928 6.137629074 3.668904998 CORE 45 O O 0.0000 45 O -3.532296064 13.271988335 7.243493210 CORE 46 O O 0.0000 46 O -7.565939114 10.774137436 7.300866992 CORE 47 O O 0.0000 47 O 2.181795332 17.936927755 3.553838082 CORE 48 O O 0.0000 48 O -3.329901785 10.635871673 7.392647305 CORE 49 O O 0.0000 49 O -13.264344653 17.929955921 3.302574139 CORE 50 O O 0.0000 50 O 1.933468328 6.146978187 3.451558745 CORE 51 O O 0.0000 51 O -7.649178961 13.345460269 7.379154308 CORE 52 O O 0.0000 52 O -11.286730264 4.422808241 4.680880067 CORE 53 O O 0.0000 53 O -1.558464194 12.176119326 8.625637284 CORE 54 O O 0.0000 54 O 0.165984146 4.727379466 4.824658675 CORE 55 O O 0.0000 55 O -9.497339229 11.929018953 8.646421798 CORE 56 O O 0.0000 56 O -1.568264101 12.003103658 5.966505294 CORE 57 O O 0.0000 57 O -11.336155301 4.912548922 9.685241519 CORE 58 O O 0.0000 58 O -9.531069171 12.054776325 5.979397092 CORE 59 O O 0.0000 59 O 0.206456420 4.604706272 9.759651360 CORE 60 O O 0.0000 60 O -10.584887668 8.564669576 5.514859800 CORE 61 O O 0.0000 61 O -0.685919647 15.613701930 9.251185965 CORE 62 O O 0.0000 62 O -10.416135961 8.422494246 8.785096495 CORE 63 O O 0.0000 63 O -0.774526994 15.573576769 5.467627882 CORE 64 O O 0.0000 64 O -0.716693817 8.415867790 5.348122840 CORE 65 O O 0.0000 65 O -10.397612687 15.604973948 9.197187352 CORE 66 O O 0.0000 66 O -10.237949224 15.482252177 5.471762785 CORE 67 O O 0.0000 67 O -0.722786067 8.431244715 9.264268704 CORE 68 O O 0.0000 68 O -12.465827389 9.064201614 7.308893747 CORE 69 O O 0.0000 69 O -2.524370072 16.004861062 3.509859087 CORE 70 O O 0.0000 70 O -9.038877399 7.890605727 3.224964398 CORE 71 O O 0.0000 71 O 1.067450766 15.130408530 7.312856042 CORE 72 O O 0.0000 72 O -2.536809179 7.819332473 3.511784701 CORE 73 O O 0.0000 73 O -12.162866424 15.160251368 7.275086971 CORE 74 O O 0.0000 74 O 1.018701214 8.864148937 7.293080549 CORE 75 O O 0.0000 75 O -8.527440874 15.939599043 3.434047312 CORE 76 O O 0.0000 76 O -13.149019504 8.505427008 4.818936830 CORE 77 O O 0.0000 77 O -3.279630951 15.525806893 8.639164970 CORE 78 O O 0.0000 78 O 1.819104445 15.644939394 4.829798567 CORE 79 O O 0.0000 79 O -7.761713648 8.335015940 8.495807117 CORE 80 O O 0.0000 80 O -3.318066765 8.371501379 5.983630204 CORE 81 O O 0.0000 81 O -13.011078725 15.549815654 9.739265235 CORE 82 O O 0.0000 82 O -7.578717310 15.509741520 5.840612090 CORE 83 O O 0.0000 83 O 1.893629585 8.467963673 9.760996088 CORE 84 O O 0.0000 84 O -7.704884845 8.657859579 5.899763071 CORE 85 O O 0.0000 85 O 1.927515600 15.684288466 9.754667416 CORE 86 O O 0.0000 86 O -3.398444946 15.613293128 5.971670366 CORE 87 O O 0.0000 87 O -12.920661042 8.310024671 9.772019249 CORE 88 O O 0.0000 88 O 1.921513029 8.398807367 4.843903793 CORE 89 O O 0.0000 89 O -7.821990885 15.727945671 8.504789035 CORE 90 O O 0.0000 90 O -12.802117625 15.775173985 4.782137299 CORE 91 O O 0.0000 91 O -3.306358952 8.302279631 8.649616449 CORE 92 O O 0.0000 92 O -9.563316320 6.042471315 5.691705077 CORE 93 O O 0.0000 93 O 0.738856238 13.359370495 9.277579584 CORE 94 O O 0.0000 94 O -2.125308119 17.870779806 5.371011738 CORE 95 O O 0.0000 95 O -11.764711852 10.658839112 9.316188645 CORE 96 O O 0.0000 96 O 0.676201528 10.686320383 5.385200111 CORE 97 O O 0.0000 97 O -9.069748370 17.920463238 9.367884629 CORE 98 O O 0.0000 98 O -11.797525946 13.374696247 5.350215433 CORE 99 O O 0.0000 99 O -1.964433981 6.072271918 9.206365003 CORE 100 O O 0.0000 100 O -11.852924878 10.820022295 5.355615720 CORE 101 O O 0.0000 101 O -2.132489227 17.847789591 9.231568169 CORE 102 O O 0.0000 102 O 0.666902364 13.331035871 5.390408240 CORE 103 O O 0.0000 103 O -9.104046604 6.075366475 8.755962984 CORE 104 O O 0.0000 104 O -2.042755303 6.102012556 5.480451825 CORE 105 O O 0.0000 105 O -11.726454435 13.295304034 9.129143839 CORE 106 O O 0.0000 106 O -9.002886606 17.744008934 5.315077697 CORE 107 O O 0.0000 107 O 0.624603204 10.720936663 9.149899826 CORE 108 O O 0.0000 108 O2 12.059117071 6.491201770 4.426067814 CORE 109 O2 O2 0.0000 109 O2 13.082208547 7.856368988 3.439301921 CORE 110 O2 O2 0.0000 110 H 11.425923865 5.746375525 4.061197312 CORE 111 H H 0.0000 111 H 12.376477587 8.457238673 3.779007825 CORE 112 H H 0.0000 112 C 13.167312229 6.054018387 5.584269721 CORE 113 C C 0.0000 113 C 12.548737577 4.754640047 5.663219245 CORE 114 C C 0.0000 114 H 12.559890762 4.210563865 4.686251599 CORE 115 H H 0.0000 115 H 11.587869732 4.887583311 6.108809014 CORE 116 H H 0.0000 116 H 13.987494250 6.244741123 4.919885361 CORE 117 H H 0.0000 117 H 13.000222483 6.816082500 6.274523184 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.245186958 4.764845251 3.417620287 CORE 1 Si Si 0.0000 1 Si -2.503770501 12.019620789 7.303383384 CORE 2 Si Si 0.0000 2 Si 1.124066148 4.750980433 3.497241300 CORE 3 Si Si 0.0000 3 Si -8.579241652 12.023455543 7.305104593 CORE 4 Si Si 0.0000 4 Si -13.566913222 7.664101136 11.109120535 CORE 5 Si Si 0.0000 5 Si -3.935508491 14.848356013 7.311170207 CORE 6 Si Si 0.0000 6 Si -7.094725261 9.221086033 7.283699253 CORE 7 Si Si 0.0000 7 Si 2.506870992 16.338529739 3.526499265 CORE 8 Si Si 0.0000 8 Si -13.549415490 16.337253314 3.453320500 CORE 9 Si Si 0.0000 9 Si -3.855998240 9.101326491 7.343549566 CORE 10 Si Si 0.0000 10 Si -7.147708232 14.880714512 7.287559764 CORE 11 Si Si 0.0000 11 Si 2.457803712 7.685468539 3.470777466 CORE 12 Si Si 0.0000 12 Si -10.066072778 4.519953793 5.741234526 CORE 13 Si Si 0.0000 13 Si -0.214917099 12.061586137 9.533699518 CORE 14 Si Si 0.0000 14 Si -10.848989439 11.982000766 9.542656712 CORE 15 Si Si 0.0000 15 Si -1.183873048 4.738772156 5.736616565 CORE 16 Si Si 0.0000 16 Si -10.006411175 4.708164616 8.780991945 CORE 17 Si Si 0.0000 17 Si -0.221846488 12.006093420 5.056350390 CORE 18 Si Si 0.0000 18 Si -10.869823793 12.069698176 5.048653636 CORE 19 Si Si 0.0000 19 Si -1.160367356 4.696513325 8.877728512 CORE 20 Si Si 0.0000 20 Ti -9.031970527 7.699386548 5.036556487 CORE 21 Ti Ti 0.0000 21 Si 0.763128825 14.948945536 8.898166822 CORE 22 Si Si 0.0000 22 Si -2.204497948 16.262779410 5.082513206 CORE 23 Si Si 0.0000 23 Si -11.885472242 9.109504550 8.818013760 CORE 24 Si Si 0.0000 24 Si 0.730944222 9.086823244 5.709115791 CORE 25 Si Si 0.0000 25 Si -8.956368269 16.292747224 9.514243528 CORE 26 Si Si 0.0000 26 Si -11.761362144 14.957055125 5.716123255 CORE 27 Si Si 0.0000 27 Si -2.134399827 7.658653229 9.554919470 CORE 28 Si Si 0.0000 28 Si -12.037480988 9.244803039 5.749955212 CORE 29 Si Si 0.0000 29 Si -2.157033933 16.245628896 9.555229616 CORE 30 Si Si 0.0000 30 Si 0.697989066 14.923184087 5.746252551 CORE 31 Si Si 0.0000 31 Si -9.046753621 7.659817652 9.230276996 CORE 32 Si Si 0.0000 32 Si -2.153712514 7.686649683 5.081735216 CORE 33 Si Si 0.0000 33 Si -11.828240265 14.898391021 8.839669453 CORE 34 Si Si 0.0000 34 Si -8.825985983 16.139585556 5.015227372 CORE 35 Si Si 0.0000 35 Si 0.706294248 9.116478258 8.867432676 CORE 36 Si Si 0.0000 36 O -15.179172699 7.701584796 3.428485599 CORE 37 O O 0.0000 37 O -5.540174834 14.966831634 7.405894512 CORE 38 O O 0.0000 38 O -15.143584502 16.110846599 3.592861736 CORE 39 O O 0.0000 39 O -5.473992981 9.107181759 7.395965421 CORE 40 O O 0.0000 40 O -10.511885927 4.264039382 7.294887948 CORE 41 O O 0.0000 41 O -0.660551659 12.006045419 3.490250496 CORE 42 O O 0.0000 42 O -10.397914056 12.072928520 3.494602433 CORE 43 O O 0.0000 43 O -0.756092822 4.651234029 7.302548720 CORE 44 O O 0.0000 44 O -13.049957164 6.137027836 3.669126368 CORE 45 O O 0.0000 45 O -3.532347447 13.272017741 7.243498763 CORE 46 O O 0.0000 46 O -7.566426386 10.772909156 7.299689928 CORE 47 O O 0.0000 47 O 2.181775895 17.936968837 3.553867902 CORE 48 O O 0.0000 48 O -3.330193148 10.635537251 7.392505278 CORE 49 O O 0.0000 49 O -13.263761735 17.929819846 3.302890523 CORE 50 O O 0.0000 50 O 1.933437152 6.146864455 3.451410024 CORE 51 O O 0.0000 51 O -7.648733834 13.345439656 7.378993567 CORE 52 O O 0.0000 52 O -11.285222838 4.424047332 4.681173173 CORE 53 O O 0.0000 53 O -1.558631429 12.175941304 8.625559462 CORE 54 O O 0.0000 54 O 0.165943348 4.727337086 4.824806559 CORE 55 O O 0.0000 55 O -9.496996868 11.928827813 8.646025538 CORE 56 O O 0.0000 56 O -1.568439804 12.003152524 5.966468551 CORE 57 O O 0.0000 57 O -11.335864323 4.912426541 9.684847845 CORE 58 O O 0.0000 58 O -9.530698906 12.054773297 5.979621733 CORE 59 O O 0.0000 59 O 0.206347111 4.604687677 9.759525004 CORE 60 O O 0.0000 60 O -10.585195003 8.564356199 5.514734889 CORE 61 O O 0.0000 61 O -0.686019526 15.613891916 9.251371200 CORE 62 O O 0.0000 62 O -10.415734327 8.422397956 8.786809793 CORE 63 O O 0.0000 63 O -0.774530843 15.573825423 5.467552875 CORE 64 O O 0.0000 64 O -0.716898964 8.415760544 5.347943690 CORE 65 O O 0.0000 65 O -10.397370590 15.605074419 9.197321847 CORE 66 O O 0.0000 66 O -10.237472536 15.482954463 5.471482079 CORE 67 O O 0.0000 67 O -0.723004301 8.431187489 9.264297383 CORE 68 O O 0.0000 68 O -12.464037068 9.063695657 7.309463984 CORE 69 O O 0.0000 69 O -2.524466872 16.004819115 3.509843796 CORE 70 O O 0.0000 70 O -9.035253649 7.888401713 3.224420558 CORE 71 O O 0.0000 71 O 1.067419590 15.130335447 7.312870344 CORE 72 O O 0.0000 72 O -2.536957554 7.819467683 3.511736928 CORE 73 O O 0.0000 73 O -12.162772318 15.160273855 7.274982600 CORE 74 O O 0.0000 74 O 1.018551107 8.864204867 7.293025777 CORE 75 O O 0.0000 75 O -8.527516121 15.939463112 3.434363011 CORE 76 O O 0.0000 76 O -13.148307840 8.504720542 4.818001827 CORE 77 O O 0.0000 77 O -3.279580915 15.525806749 8.639132259 CORE 78 O O 0.0000 78 O 1.819086163 15.644877988 4.829849307 CORE 79 O O 0.0000 79 O -7.761346270 8.335425895 8.495047841 CORE 80 O O 0.0000 80 O -3.318161064 8.371803512 5.983577182 CORE 81 O O 0.0000 81 O -13.011042353 15.549743292 9.739294371 CORE 82 O O 0.0000 82 O -7.579014254 15.509480325 5.840376799 CORE 83 O O 0.0000 83 O 1.893547411 8.467967421 9.760843335 CORE 84 O O 0.0000 84 O -7.702444634 8.656300481 5.899562621 CORE 85 O O 0.0000 85 O 1.927481537 15.684221870 9.754626717 CORE 86 O O 0.0000 86 O -3.398287525 15.613206495 5.971729322 CORE 87 O O 0.0000 87 O -12.920687022 8.309913390 9.771919899 CORE 88 O O 0.0000 88 O 1.921361959 8.398809241 4.843896566 CORE 89 O O 0.0000 89 O -7.822033030 15.727786677 8.504780210 CORE 90 O O 0.0000 90 O -12.802181132 15.775092253 4.782360266 CORE 91 O O 0.0000 91 O -3.306612403 8.302296785 8.649336808 CORE 92 O O 0.0000 92 O -9.560036662 6.041622287 5.691074743 CORE 93 O O 0.0000 93 O 0.738749431 13.359306493 9.277488982 CORE 94 O O 0.0000 94 O -2.125306195 17.870883015 5.370744345 CORE 95 O O 0.0000 95 O -11.764606007 10.659022900 9.315975186 CORE 96 O O 0.0000 96 O 0.676105306 10.686337825 5.385004681 CORE 97 O O 0.0000 97 O -9.070134608 17.920220782 9.367794407 CORE 98 O O 0.0000 98 O -11.797588106 13.375180006 5.350188123 CORE 99 O O 0.0000 99 O -1.964423012 6.072406840 9.206458876 CORE 100 O O 0.0000 100 O -11.851428036 10.819993178 5.355233077 CORE 101 O O 0.0000 101 O -2.132565051 17.847867287 9.231880978 CORE 102 O O 0.0000 102 O 0.666874267 13.330975905 5.390340155 CORE 103 O O 0.0000 103 O -9.104432072 6.074562132 8.755524048 CORE 104 O O 0.0000 104 O -2.042664084 6.102166073 5.480319307 CORE 105 O O 0.0000 105 O -11.726536801 13.295689484 9.129101466 CORE 106 O O 0.0000 106 O -9.000830325 17.743323369 5.315336267 CORE 107 O O 0.0000 107 O 0.624585306 10.720951222 9.149833111 CORE 108 O O 0.0000 108 O2 12.051399232 6.492928223 4.425701907 CORE 109 O2 O2 0.0000 109 O2 13.080460178 7.852153973 3.446036057 CORE 110 O2 O2 0.0000 110 H 11.424626012 5.747974985 4.064712911 CORE 111 H H 0.0000 111 H 12.374884137 8.454237813 3.780525465 CORE 112 H H 0.0000 112 C 13.168037172 6.051299623 5.584061283 CORE 113 C C 0.0000 113 C 12.550243656 4.758135189 5.662612493 CORE 114 C C 0.0000 114 H 12.558347348 4.211745441 4.682073792 CORE 115 H H 0.0000 115 H 11.581651430 4.890804429 6.106655791 CORE 116 H H 0.0000 116 H 13.985677564 6.246134596 4.917811253 CORE 117 H H 0.0000 117 H 12.997734739 6.821356998 6.274944471 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.245958472 4.753715342 3.426433629 CORE 1 Si Si 0.0000 1 Si -2.503405047 12.019778775 7.304887559 CORE 2 Si Si 0.0000 2 Si 1.122180566 4.750159657 3.498262873 CORE 3 Si Si 0.0000 3 Si -8.574248458 12.028539045 7.311714275 CORE 4 Si Si 0.0000 4 Si -13.580411549 7.664317646 11.106875189 CORE 5 Si Si 0.0000 5 Si -3.934464281 14.847395992 7.312644334 CORE 6 Si Si 0.0000 6 Si -7.095653811 9.226602987 7.298095075 CORE 7 Si Si 0.0000 7 Si 2.506003640 16.338359789 3.527367781 CORE 8 Si Si 0.0000 8 Si -13.552273692 16.334139153 3.453315175 CORE 9 Si Si 0.0000 9 Si -3.859324662 9.103389241 7.347905154 CORE 10 Si Si 0.0000 10 Si -7.146719254 14.888676494 7.288516752 CORE 11 Si Si 0.0000 11 Si 2.453603972 7.685874170 3.471952248 CORE 12 Si Si 0.0000 12 Si -10.091527174 4.504536507 5.749457395 CORE 13 Si Si 0.0000 13 Si -0.213871157 12.062031696 9.535171287 CORE 14 Si Si 0.0000 14 Si -10.851598424 11.988476012 9.544767791 CORE 15 Si Si 0.0000 15 Si -1.183787409 4.739799495 5.737783360 CORE 16 Si Si 0.0000 16 Si -10.008370849 4.701954313 8.770740764 CORE 17 Si Si 0.0000 17 Si -0.220554216 12.006084771 5.057244542 CORE 18 Si Si 0.0000 18 Si -10.872277282 12.080052285 5.048765310 CORE 19 Si Si 0.0000 19 Si -1.159809264 4.697329776 8.876249136 CORE 20 Si Si 0.0000 20 Ti -9.047577288 7.708666182 5.055584191 CORE 21 Ti Ti 0.0000 21 Si 0.763293559 14.948613276 8.897781364 CORE 22 Si Si 0.0000 22 Si -2.204499295 16.262033015 5.083067164 CORE 23 Si Si 0.0000 23 Si -11.885704717 9.111148696 8.820083075 CORE 24 Si Si 0.0000 24 Si 0.728738410 9.086412568 5.710700222 CORE 25 Si Si 0.0000 25 Si -8.956618833 16.292632339 9.514579083 CORE 26 Si Si 0.0000 26 Si -11.760785384 14.960868977 5.716496693 CORE 27 Si Si 0.0000 27 Si -2.133729154 7.658049828 9.556494012 CORE 28 Si Si 0.0000 28 Si -12.033960966 9.239632760 5.749646054 CORE 29 Si Si 0.0000 29 Si -2.156264920 16.245142831 9.553546519 CORE 30 Si Si 0.0000 30 Si 0.697573768 14.922684616 5.746346880 CORE 31 Si Si 0.0000 31 Si -9.046788261 7.669402157 9.216777761 CORE 32 Si Si 0.0000 32 Si -2.152523970 7.685863936 5.083508839 CORE 33 Si Si 0.0000 33 Si -11.826562909 14.900589557 8.840624919 CORE 34 Si Si 0.0000 34 Si -8.836382857 16.154418901 5.017380595 CORE 35 Si Si 0.0000 35 Si 0.704169649 9.116436888 8.868383350 CORE 36 Si Si 0.0000 36 O -15.177727625 7.697818224 3.423932300 CORE 37 O O 0.0000 37 O -5.541960344 14.966643666 7.408531554 CORE 38 O O 0.0000 38 O -15.142068993 16.109570894 3.595588238 CORE 39 O O 0.0000 39 O -5.493035282 9.106605458 7.392181287 CORE 40 O O 0.0000 40 O -10.518487774 4.249353933 7.297043453 CORE 41 O O 0.0000 41 O -0.659455104 12.005790278 3.491118099 CORE 42 O O 0.0000 42 O -10.397236263 12.073710231 3.497347116 CORE 43 O O 0.0000 43 O -0.752412684 4.652748441 7.303084040 CORE 44 O O 0.0000 44 O -13.052793235 6.139839431 3.663286840 CORE 45 O O 0.0000 45 O -3.530988203 13.270240836 7.242886686 CORE 46 O O 0.0000 46 O -7.554178378 10.784285846 7.317959572 CORE 47 O O 0.0000 47 O 2.181430455 17.937251510 3.553368412 CORE 48 O O 0.0000 48 O -3.326986234 10.638718152 7.393839204 CORE 49 O O 0.0000 49 O -13.278000016 17.931428099 3.292119616 CORE 50 O O 0.0000 50 O 1.933233352 6.148131511 3.453454235 CORE 51 O O 0.0000 51 O -7.656885060 13.350090140 7.380002741 CORE 52 O O 0.0000 52 O -11.305522578 4.408234361 4.682899099 CORE 53 O O 0.0000 53 O -1.559074631 12.178680970 8.625192946 CORE 54 O O 0.0000 54 O 0.165988188 4.727639796 4.822270237 CORE 55 O O 0.0000 55 O -9.500929302 11.931722293 8.649746761 CORE 56 O O 0.0000 56 O -1.569798855 12.002446634 5.969115406 CORE 57 O O 0.0000 57 O -11.340259203 4.917002212 9.689993063 CORE 58 O O 0.0000 58 O -9.532574481 12.055632272 5.979118896 CORE 59 O O 0.0000 59 O 0.207490815 4.604969485 9.761194256 CORE 60 O O 0.0000 60 O -10.552314901 8.555906566 5.507759604 CORE 61 O O 0.0000 61 O -0.686179256 15.610619193 9.247944529 CORE 62 O O 0.0000 62 O -10.421065841 8.421548784 8.766431580 CORE 63 O O 0.0000 63 O -0.776331557 15.570395435 5.468493279 CORE 64 O O 0.0000 64 O -0.715143282 8.416485318 5.350584307 CORE 65 O O 0.0000 65 O -10.400052512 15.604287374 9.196424196 CORE 66 O O 0.0000 66 O -10.241825463 15.467531123 5.475635543 CORE 67 O O 0.0000 67 O -0.722154268 8.430565925 9.264441388 CORE 68 O O 0.0000 68 O -12.492597536 9.075529438 7.291119485 CORE 69 O O 0.0000 69 O -2.523342412 16.006436882 3.510861642 CORE 70 O O 0.0000 70 O -9.066041675 7.896306902 3.243176760 CORE 71 O O 0.0000 71 O 1.067894546 15.131347794 7.313221797 CORE 72 O O 0.0000 72 O -2.534422661 7.817444142 3.512643176 CORE 73 O O 0.0000 73 O -12.164509139 15.160144987 7.274827565 CORE 74 O O 0.0000 74 O 1.020595264 8.863284485 7.294260581 CORE 75 O O 0.0000 75 O -8.525182525 15.938866630 3.431311072 CORE 76 O O 0.0000 76 O -13.150819256 8.524563730 4.838911709 CORE 77 O O 0.0000 77 O -3.281281557 15.525412939 8.638881068 CORE 78 O O 0.0000 78 O 1.818185325 15.645704673 4.829279983 CORE 79 O O 0.0000 79 O -7.767075568 8.335300920 8.501913050 CORE 80 O O 0.0000 80 O -3.320116119 8.369301690 5.986249673 CORE 81 O O 0.0000 81 O -13.009949262 15.549684624 9.737547374 CORE 82 O O 0.0000 82 O -7.576551335 15.515626194 5.841944418 CORE 83 O O 0.0000 83 O 1.894264655 8.467563087 9.763460065 CORE 84 O O 0.0000 84 O -7.737880799 8.651435938 5.878200947 CORE 85 O O 0.0000 85 O 1.927997292 15.685382689 9.755197334 CORE 86 O O 0.0000 86 O -3.401943800 15.613819266 5.971334583 CORE 87 O O 0.0000 87 O -12.917882320 8.311915020 9.772143019 CORE 88 O O 0.0000 88 O 1.922562050 8.398957425 4.843621185 CORE 89 O O 0.0000 89 O -7.820810616 15.732196002 8.505128621 CORE 90 O O 0.0000 90 O -12.799468611 15.774081203 4.782503586 CORE 91 O O 0.0000 91 O -3.305811444 8.302118762 8.651020285 CORE 92 O O 0.0000 92 O -9.561964967 6.066713738 5.683423937 CORE 93 O O 0.0000 93 O 0.739992244 13.359666862 9.278981518 CORE 94 O O 0.0000 94 O -2.126676600 17.869835784 5.373087976 CORE 95 O O 0.0000 95 O -11.765071725 10.658213945 9.319845662 CORE 96 O O 0.0000 96 O 0.677386224 10.685620404 5.385973232 CORE 97 O O 0.0000 97 O -9.060231357 17.921997254 9.372968000 CORE 98 O O 0.0000 98 O -11.797167612 13.372539514 5.350979958 CORE 99 O O 0.0000 99 O -1.965846917 6.072278837 9.205270705 CORE 100 O O 0.0000 100 O -11.874347154 10.810406654 5.363964565 CORE 101 O O 0.0000 101 O -2.132258870 17.847643858 9.227039669 CORE 102 O O 0.0000 102 O 0.667196998 13.331211010 5.390525163 CORE 103 O O 0.0000 103 O -9.101358331 6.088442230 8.772417319 CORE 104 O O 0.0000 104 O -2.044695732 6.101134266 5.481961629 CORE 105 O O 0.0000 105 O -11.726225232 13.293489795 9.129812513 CORE 106 O O 0.0000 106 O -9.026452726 17.763595684 5.313791089 CORE 107 O O 0.0000 107 O 0.624702698 10.720405048 9.150671274 CORE 108 O O 0.0000 108 O2 12.121783905 6.479232778 4.422578307 CORE 109 O2 O2 0.0000 109 O2 13.087123415 7.889941208 3.382054342 CORE 110 O2 O2 0.0000 110 H 11.475889481 5.742173340 4.040877218 CORE 111 H H 0.0000 111 H 12.403583743 8.494074247 3.762300018 CORE 112 H H 0.0000 112 C 13.127003149 6.023219852 5.507382514 CORE 113 C C 0.0000 113 C 12.551967969 4.741176679 5.644128249 CORE 114 C C 0.0000 114 H 12.585493149 4.185909756 4.742989267 CORE 115 H H 0.0000 115 H 11.618683354 4.840121624 6.162588310 CORE 116 H H 0.0000 116 H 14.049037394 6.234178433 4.924072982 CORE 117 H H 0.0000 117 H 13.012163348 6.814090815 6.329573266 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.245810674 4.755845840 3.424746500 CORE 1 Si Si 0.0000 1 Si -2.503475097 12.019748504 7.304599626 CORE 2 Si Si 0.0000 2 Si 1.122541594 4.750316778 3.498067368 CORE 3 Si Si 0.0000 3 Si -8.575204335 12.027566050 7.310449043 CORE 4 Si Si 0.0000 4 Si -13.577827582 7.664276131 11.107304997 CORE 5 Si Si 0.0000 5 Si -3.934664039 14.847579780 7.312362182 CORE 6 Si Si 0.0000 6 Si -7.095475991 9.225546963 7.295339360 CORE 7 Si Si 0.0000 7 Si 2.506169528 16.338392367 3.527201564 CORE 8 Si Si 0.0000 8 Si -13.551726569 16.334735203 3.453316240 CORE 9 Si Si 0.0000 9 Si -3.858688052 9.102994421 7.347071403 CORE 10 Si Si 0.0000 10 Si -7.146908620 14.887152280 7.288333570 CORE 11 Si Si 0.0000 11 Si 2.454407817 7.685796619 3.471727379 CORE 12 Si Si 0.0000 12 Si -10.086654451 4.507487781 5.747883310 CORE 13 Si Si 0.0000 13 Si -0.214071301 12.061946361 9.534889591 CORE 14 Si Si 0.0000 14 Si -10.851099027 11.987236488 9.544363696 CORE 15 Si Si 0.0000 15 Si -1.183803767 4.739602878 5.737560012 CORE 16 Si Si 0.0000 16 Si -10.007995772 4.703143097 8.772703122 CORE 17 Si Si 0.0000 17 Si -0.220801701 12.006086357 5.057073380 CORE 18 Si Si 0.0000 18 Si -10.871807714 12.078070258 5.048743933 CORE 19 Si Si 0.0000 19 Si -1.159916071 4.697173520 8.876532353 CORE 20 Si Si 0.0000 20 Ti -9.044589763 7.706889709 5.051941779 CORE 21 Ti Ti 0.0000 21 Si 0.763262190 14.948676845 8.897855154 CORE 22 Si Si 0.0000 22 Si -2.204499103 16.262175865 5.082961119 CORE 23 Si Si 0.0000 23 Si -11.885660069 9.110834022 8.819686968 CORE 24 Si Si 0.0000 24 Si 0.729160636 9.086491272 5.710396923 CORE 25 Si Si 0.0000 25 Si -8.956570914 16.292654394 9.514514802 CORE 26 Si Si 0.0000 26 Si -11.760895848 14.960138870 5.716425186 CORE 27 Si Si 0.0000 27 Si -2.133857515 7.658165434 9.556192614 CORE 28 Si Si 0.0000 28 Si -12.034634718 9.240622476 5.749705238 CORE 29 Si Si 0.0000 29 Si -2.156412141 16.245235950 9.553868685 CORE 30 Si Si 0.0000 30 Si 0.697653248 14.922780186 5.746328851 CORE 31 Si Si 0.0000 31 Si -9.046781526 7.667567449 9.219361857 CORE 32 Si Si 0.0000 32 Si -2.152751440 7.686014425 5.083169329 CORE 33 Si Si 0.0000 33 Si -11.826883908 14.900168791 8.840442042 CORE 34 Si Si 0.0000 34 Si -8.834392777 16.151579341 5.016968436 CORE 35 Si Si 0.0000 35 Si 0.704576479 9.116444816 8.868201385 CORE 36 Si Si 0.0000 36 O -15.178004169 7.698539250 3.424803934 CORE 37 O O 0.0000 37 O -5.541618561 14.966679703 7.408026739 CORE 38 O O 0.0000 38 O -15.142359009 16.109815080 3.595066307 CORE 39 O O 0.0000 39 O -5.489389977 9.106715730 7.392905646 CORE 40 O O 0.0000 40 O -10.517223984 4.252165095 7.296630838 CORE 41 O O 0.0000 41 O -0.659665062 12.005839144 3.490952033 CORE 42 O O 0.0000 42 O -10.397365971 12.073560606 3.496821686 CORE 43 O O 0.0000 43 O -0.753117228 4.652458561 7.302981571 CORE 44 O O 0.0000 44 O -13.052250346 6.139301184 3.664404721 CORE 45 O O 0.0000 45 O -3.531248390 13.270581023 7.243003837 CORE 46 O O 0.0000 46 O -7.556522943 10.782108067 7.314462306 CORE 47 O O 0.0000 47 O 2.181496464 17.937197455 3.553464035 CORE 48 O O 0.0000 48 O -3.327600136 10.638109273 7.393583829 CORE 49 O O 0.0000 49 O -13.275274409 17.931120200 3.294181400 CORE 50 O O 0.0000 50 O 1.933272226 6.147888910 3.453062920 CORE 51 O O 0.0000 51 O -7.655324711 13.349199886 7.379809518 CORE 52 O O 0.0000 52 O -11.301636716 4.411261457 4.682568717 CORE 53 O O 0.0000 53 O -1.558989763 12.178156561 8.625263085 CORE 54 O O 0.0000 54 O 0.165979720 4.727581849 4.822755806 CORE 55 O O 0.0000 55 O -9.500176647 11.931168191 8.649034421 CORE 56 O O 0.0000 56 O -1.569538669 12.002581701 5.968608765 CORE 57 O O 0.0000 57 O -11.339418023 4.916126373 9.689008156 CORE 58 O O 0.0000 58 O -9.532215570 12.055467944 5.979215204 CORE 59 O O 0.0000 59 O 0.207272005 4.604915574 9.760874753 CORE 60 O O 0.0000 60 O -10.558609027 8.557524045 5.509094822 CORE 61 O O 0.0000 61 O -0.686148657 15.611245658 9.248600424 CORE 62 O O 0.0000 62 O -10.420045301 8.421711382 8.770332485 CORE 63 O O 0.0000 63 O -0.775986886 15.571052027 5.468313217 CORE 64 O O 0.0000 64 O -0.715479485 8.416346504 5.350078807 CORE 65 O O 0.0000 65 O -10.399539260 15.604438008 9.196596043 CORE 66 O O 0.0000 66 O -10.240992174 15.470483550 5.474840437 CORE 67 O O 0.0000 67 O -0.722316885 8.430684846 9.264413774 CORE 68 O O 0.0000 68 O -12.487130348 9.073264162 7.294631128 CORE 69 O O 0.0000 69 O -2.523557566 16.006127109 3.510666821 CORE 70 O O 0.0000 70 O -9.060148028 7.894793642 3.239586306 CORE 71 O O 0.0000 71 O 1.067803712 15.131154060 7.313154550 CORE 72 O O 0.0000 72 O -2.534908008 7.817831610 3.512469731 CORE 73 O O 0.0000 73 O -12.164176593 15.160169636 7.274857233 CORE 74 O O 0.0000 74 O 1.020204022 8.863460634 7.294024225 CORE 75 O O 0.0000 75 O -8.525629384 15.938980795 3.431895306 CORE 76 O O 0.0000 76 O -13.150338527 8.520765158 4.834909019 CORE 77 O O 0.0000 77 O -3.280956131 15.525488328 8.638929146 CORE 78 O O 0.0000 78 O 1.818357756 15.645546399 4.829388994 CORE 79 O O 0.0000 79 O -7.765978820 8.335324848 8.500598827 CORE 80 O O 0.0000 80 O -3.319741812 8.369780548 5.985738088 CORE 81 O O 0.0000 81 O -13.010158450 15.549695867 9.737881787 CORE 82 O O 0.0000 82 O -7.577022827 15.514449663 5.841644390 CORE 83 O O 0.0000 83 O 1.894127442 8.467640495 9.762959130 CORE 84 O O 0.0000 84 O -7.731097476 8.652367130 5.882290130 CORE 85 O O 0.0000 85 O 1.927898567 15.685160558 9.755088095 CORE 86 O O 0.0000 86 O -3.401243875 15.613701930 5.971410199 CORE 87 O O 0.0000 87 O -12.918419243 8.311531877 9.772100266 CORE 88 O O 0.0000 88 O 1.922332463 8.398929028 4.843673903 CORE 89 O O 0.0000 89 O -7.821044630 15.731351875 8.505061905 CORE 90 O O 0.0000 90 O -12.799987829 15.774274649 4.782476200 CORE 91 O O 0.0000 91 O -3.305964631 8.302152781 8.650698043 CORE 92 O O 0.0000 92 O -9.561595856 6.061910602 5.684888479 CORE 93 O O 0.0000 93 O 0.739754382 13.359597959 9.278695791 CORE 94 O O 0.0000 94 O -2.126414297 17.870036293 5.372639302 CORE 95 O O 0.0000 95 O -11.764982623 10.658368759 9.319104719 CORE 96 O O 0.0000 96 O 0.677141048 10.685757776 5.385787844 CORE 97 O O 0.0000 97 O -9.062127139 17.921657211 9.371977692 CORE 98 O O 0.0000 98 O -11.797248054 13.373044894 5.350828346 CORE 99 O O 0.0000 99 O -1.965574221 6.072303342 9.205498160 CORE 100 O O 0.0000 100 O -11.869959971 10.812241795 5.362293107 CORE 101 O O 0.0000 101 O -2.132317566 17.847686670 9.227966380 CORE 102 O O 0.0000 102 O 0.667135223 13.331166036 5.390489713 CORE 103 O O 0.0000 103 O -9.101946637 6.085785161 8.769183567 CORE 104 O O 0.0000 104 O -2.044306800 6.101331892 5.481647223 CORE 105 O O 0.0000 105 O -11.726284890 13.293910849 9.129676420 CORE 106 O O 0.0000 106 O -9.021547865 17.759715091 5.314086857 CORE 107 O O 0.0000 107 O 0.624680375 10.720509699 9.150510838 CORE 108 O O 0.0000 108 O2 12.108310595 6.481854387 4.423176235 CORE 109 O2 O2 0.0000 109 O2 13.085847886 7.882707747 3.394302113 CORE 110 O2 O2 0.0000 110 H 11.466076294 5.743283852 4.045440027 CORE 111 H H 0.0000 111 H 12.398089806 8.486448560 3.765788840 CORE 112 H H 0.0000 112 C 13.134858202 6.028595109 5.522060867 CORE 113 C C 0.0000 113 C 12.551637924 4.744422879 5.647666670 CORE 114 C C 0.0000 114 H 12.580296732 4.190855454 4.731328468 CORE 115 H H 0.0000 115 H 11.611594427 4.849823609 6.151881381 CORE 116 H H 0.0000 116 H 14.036908702 6.236467206 4.922874312 CORE 117 H H 0.0000 117 H 13.009401369 6.815481693 6.319115929 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.254588696 4.754803222 3.428456920 CORE 1 Si Si 0.0000 1 Si -2.500060920 12.023136977 7.305882050 CORE 2 Si Si 0.0000 2 Si 1.124035357 4.750712030 3.498469333 CORE 3 Si Si 0.0000 3 Si -8.577544281 12.027189537 7.314982488 CORE 4 Si Si 0.0000 4 Si -13.575103322 7.675959135 11.120787876 CORE 5 Si Si 0.0000 5 Si -3.933984899 14.846148107 7.312473856 CORE 6 Si Si 0.0000 6 Si -7.115473400 9.222604770 7.294095961 CORE 7 Si Si 0.0000 7 Si 2.506014224 16.338984380 3.527780321 CORE 8 Si Si 0.0000 8 Si -13.554400408 16.333893382 3.451886692 CORE 9 Si Si 0.0000 9 Si -3.870391824 9.104196322 7.349665007 CORE 10 Si Si 0.0000 10 Si -7.146627457 14.890020813 7.289765628 CORE 11 Si Si 0.0000 11 Si 2.453823937 7.686128878 3.473048981 CORE 12 Si Si 0.0000 12 Si -10.106729223 4.518386767 5.747259975 CORE 13 Si Si 0.0000 13 Si -0.212903925 12.062292891 9.535531945 CORE 14 Si Si 0.0000 14 Si -10.854336732 11.986602816 9.548084309 CORE 15 Si Si 0.0000 15 Si -1.183577259 4.739261969 5.737659210 CORE 16 Si Si 0.0000 16 Si -10.007198470 4.710935994 8.774549850 CORE 17 Si Si 0.0000 17 Si -0.219922609 12.005448937 5.058946733 CORE 18 Si Si 0.0000 18 Si -10.883940448 12.066026453 5.053179473 CORE 19 Si Si 0.0000 19 Si -1.158440013 4.697844094 8.876576551 CORE 20 Si Si 0.0000 20 Ti -9.053814835 7.712420934 5.065927039 CORE 21 Ti Ti 0.0000 21 Si 0.765380054 14.948294278 8.897763867 CORE 22 Si Si 0.0000 22 Si -2.204757172 16.261920004 5.084504472 CORE 23 Si Si 0.0000 23 Si -11.893324408 9.112700010 8.801703050 CORE 24 Si Si 0.0000 24 Si 0.731543882 9.086443848 5.712341327 CORE 25 Si Si 0.0000 25 Si -8.957767541 16.292786721 9.512749243 CORE 26 Si Si 0.0000 26 Si -11.767882009 14.955138397 5.718724087 CORE 27 Si Si 0.0000 27 Si -2.131656322 7.656365610 9.558640692 CORE 28 Si Si 0.0000 28 Si -12.017707779 9.234000056 5.749468502 CORE 29 Si Si 0.0000 29 Si -2.155267282 16.245354007 9.552948972 CORE 30 Si Si 0.0000 30 Si 0.698364142 14.922422700 5.746833666 CORE 31 Si Si 0.0000 31 Si -9.054593470 7.679639939 9.228069838 CORE 32 Si Si 0.0000 32 Si -2.151741678 7.684858651 5.085185470 CORE 33 Si Si 0.0000 33 Si -11.829163234 14.896732749 8.840200589 CORE 34 Si Si 0.0000 34 Si -8.841896424 16.168029300 5.020313786 CORE 35 Si Si 0.0000 35 Si 0.706197641 9.116120196 8.868920952 CORE 36 Si Si 0.0000 36 O -15.189232216 7.695505667 3.419443053 CORE 37 O O 0.0000 37 O -5.541935134 14.966713289 7.409729006 CORE 38 O O 0.0000 38 O -15.143325086 16.107632976 3.597536523 CORE 39 O O 0.0000 39 O -5.489358223 9.104730676 7.387365842 CORE 40 O O 0.0000 40 O -10.523575651 4.240473876 7.296979248 CORE 41 O O 0.0000 41 O -0.658718422 12.005596832 3.492084444 CORE 42 O O 0.0000 42 O -10.396486687 12.075287204 3.497618162 CORE 43 O O 0.0000 43 O -0.749192107 4.654230709 7.302775491 CORE 44 O O 0.0000 44 O -13.052088499 6.134763856 3.658568844 CORE 45 O O 0.0000 45 O -3.531091547 13.270487616 7.242342238 CORE 46 O O 0.0000 46 O -7.542308718 10.786485968 7.330421563 CORE 47 O O 0.0000 47 O 2.181154296 17.937373891 3.553162637 CORE 48 O O 0.0000 48 O -3.328640305 10.634978968 7.394895542 CORE 49 O O 0.0000 49 O -13.290615596 17.929225670 3.281875966 CORE 50 O O 0.0000 50 O 1.931784814 6.146724343 3.454938099 CORE 51 O O 0.0000 51 O -7.659627795 13.362801635 7.379663611 CORE 52 O O 0.0000 52 O -11.313373589 4.395864063 4.696316936 CORE 53 O O 0.0000 53 O -1.558959356 12.180723538 8.626125439 CORE 54 O O 0.0000 54 O 0.163469267 4.727607795 4.822769879 CORE 55 O O 0.0000 55 O -9.500788432 11.933996940 8.649365867 CORE 56 O O 0.0000 56 O -1.570129284 12.001894262 5.969976010 CORE 57 O O 0.0000 57 O -11.337498379 4.918346387 9.689346449 CORE 58 O O 0.0000 58 O -9.529042719 12.056419317 5.984382786 CORE 59 O O 0.0000 59 O 0.206189306 4.605127903 9.760496141 CORE 60 O O 0.0000 60 O -10.549848326 8.562098274 5.509392112 CORE 61 O O 0.0000 61 O -0.688555767 15.608275501 9.244988061 CORE 62 O O 0.0000 62 O -10.423579373 8.421314832 8.753306240 CORE 63 O O 0.0000 63 O -0.778393419 15.568028679 5.469204402 CORE 64 O O 0.0000 64 O -0.716938992 8.415320030 5.352079353 CORE 65 O O 0.0000 65 O -10.397216249 15.606635103 9.197243721 CORE 66 O O 0.0000 66 O -10.232585765 15.460785024 5.476175580 CORE 67 O O 0.0000 67 O -0.723904561 8.428911833 9.265143915 CORE 68 O O 0.0000 68 O -12.505906497 9.083918241 7.297520197 CORE 69 O O 0.0000 69 O -2.522204866 16.008153533 3.509739805 CORE 70 O O 0.0000 70 O -9.075104708 7.887385042 3.239915242 CORE 71 O O 0.0000 71 O 1.068340827 15.131928852 7.313021119 CORE 72 O O 0.0000 72 O -2.531802514 7.816205195 3.514290519 CORE 73 O O 0.0000 73 O -12.165604732 15.160511122 7.274659369 CORE 74 O O 0.0000 74 O 1.021600215 8.862646201 7.295499036 CORE 75 O O 0.0000 75 O -8.524725082 15.938768466 3.438117401 CORE 76 O O 0.0000 76 O -13.160567973 8.525820984 4.834152025 CORE 77 O O 0.0000 77 O -3.282050377 15.525451426 8.639661797 CORE 78 O O 0.0000 78 O 1.816383649 15.645761467 4.829806250 CORE 79 O O 0.0000 79 O -7.763998747 8.343677037 8.498662638 CORE 80 O O 0.0000 80 O -3.323319568 8.369850315 5.990663989 CORE 81 O O 0.0000 81 O -13.009149458 15.549693561 9.737159406 CORE 82 O O 0.0000 82 O -7.582953230 15.526548964 5.837374078 CORE 83 O O 0.0000 83 O 1.892637528 8.468490820 9.763513772 CORE 84 O O 0.0000 84 O -7.740511723 8.653286214 5.884863728 CORE 85 O O 0.0000 85 O 1.927758852 15.685808789 9.754958696 CORE 86 O O 0.0000 86 O -3.404531231 15.613752958 5.971290690 CORE 87 O O 0.0000 87 O -12.917578448 8.311842947 9.775141708 CORE 88 O O 0.0000 88 O 1.921359265 8.400261094 4.845108091 CORE 89 O O 0.0000 89 O -7.820661086 15.737084041 8.506287580 CORE 90 O O 0.0000 90 O -12.798015839 15.774256198 4.782133495 CORE 91 O O 0.0000 91 O -3.308004362 8.303311871 8.650133207 CORE 92 O O 0.0000 92 O -9.554148018 6.051138754 5.676278098 CORE 93 O O 0.0000 93 O 0.740727387 13.359431613 9.280215257 CORE 94 O O 0.0000 94 O -2.127142703 17.870314354 5.374298436 CORE 95 O O 0.0000 95 O -11.763500600 10.661402630 9.323008211 CORE 96 O O 0.0000 96 O 0.677743787 10.685605124 5.385565029 CORE 97 O O 0.0000 97 O -9.054220511 17.924424841 9.376291289 CORE 98 O O 0.0000 98 O -11.801146040 13.381210989 5.353467138 CORE 99 O O 0.0000 99 O -1.967006594 6.072848075 9.204416034 CORE 100 O O 0.0000 100 O -11.877399919 10.817507644 5.366992161 CORE 101 O O 0.0000 101 O -2.132217879 17.847360464 9.223542327 CORE 102 O O 0.0000 102 O 0.667517613 13.330878606 5.390281428 CORE 103 O O 0.0000 103 O -9.106923088 6.081102100 8.785082270 CORE 104 O O 0.0000 104 O -2.045721275 6.101233007 5.482978866 CORE 105 O O 0.0000 105 O -11.729121731 13.300310994 9.129178375 CORE 106 O O 0.0000 106 O -9.033817042 17.767389499 5.310374840 CORE 107 O O 0.0000 107 O 0.624281242 10.720472076 9.151390688 CORE 108 O O 0.0000 108 O2 12.139151351 6.472835660 4.406678615 CORE 109 O2 O2 0.0000 109 O2 13.081985502 7.905175715 3.349131372 CORE 110 O2 O2 0.0000 110 H 11.536194237 5.752528602 4.043413236 CORE 111 H H 0.0000 111 H 12.426604857 8.519042596 3.751069560 CORE 112 H H 0.0000 112 C 13.114457812 6.054278141 5.454111455 CORE 113 C C 0.0000 113 C 12.555659653 4.744829807 5.651994720 CORE 114 C C 0.0000 114 H 12.605087961 4.138339958 4.750710744 CORE 115 H H 0.0000 115 H 11.619455253 4.800687937 6.213679141 CORE 116 H H 0.0000 116 H 14.090984956 6.221597103 4.930386820 CORE 117 H H 0.0000 117 H 13.019681236 6.792477496 6.347679507 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.267837998 4.753229421 3.434057353 CORE 1 Si Si 0.0000 1 Si -2.494907419 12.028251471 7.307817707 CORE 2 Si Si 0.0000 2 Si 1.126289857 4.751308656 3.499076161 CORE 3 Si Si 0.0000 3 Si -8.581076428 12.026621164 7.321825332 CORE 4 Si Si 0.0000 4 Si -13.570991722 7.693593120 11.141138703 CORE 5 Si Si 0.0000 5 Si -3.932959549 14.843987194 7.312642356 CORE 6 Si Si 0.0000 6 Si -7.145656954 9.218163877 7.292219108 CORE 7 Si Si 0.0000 7 Si 2.505779633 16.339877950 3.528653933 CORE 8 Si Si 0.0000 8 Si -13.558436185 16.332622722 3.449728981 CORE 9 Si Si 0.0000 9 Si -3.888057562 9.106010417 7.353579757 CORE 10 Si Si 0.0000 10 Si -7.146202922 14.894350425 7.291927067 CORE 11 Si Si 0.0000 11 Si 2.452942536 7.686630367 3.475043745 CORE 12 Si Si 0.0000 12 Si -10.137029591 4.534837590 5.746319114 CORE 13 Si Si 0.0000 13 Si -0.211141893 12.062815858 9.536501561 CORE 14 Si Si 0.0000 14 Si -10.859223888 11.985646398 9.553700109 CORE 15 Si Si 0.0000 15 Si -1.183235090 4.738747507 5.737808920 CORE 16 Si Si 0.0000 16 Si -10.005995300 4.722698423 8.777337286 CORE 17 Si Si 0.0000 17 Si -0.218595697 12.004486753 5.061774335 CORE 18 Si Si 0.0000 18 Si -10.902253572 12.047847591 5.059874357 CORE 19 Si Si 0.0000 19 Si -1.156212455 4.698856441 8.876643190 CORE 20 Si Si 0.0000 20 Ti -9.067738853 7.720769519 5.087036306 CORE 21 Ti Ti 0.0000 21 Si 0.768577153 14.947716679 8.897625949 CORE 22 Si Si 0.0000 22 Si -2.205146490 16.261533833 5.086833878 CORE 23 Si Si 0.0000 23 Si -11.904892699 9.115516506 8.774558370 CORE 24 Si Si 0.0000 24 Si 0.735141076 9.086372351 5.715276268 CORE 25 Si Si 0.0000 25 Si -8.959573643 16.292986653 9.510084206 CORE 26 Si Si 0.0000 26 Si -11.778427066 14.947590550 5.722193966 CORE 27 Si Si 0.0000 27 Si -2.128333749 7.653649007 9.562335746 CORE 28 Si Si 0.0000 28 Si -11.992158123 9.224004154 5.749111115 CORE 29 Si Si 0.0000 29 Si -2.153539120 16.245532173 9.551560731 CORE 30 Si Si 0.0000 30 Si 0.699437411 14.921883013 5.747595681 CORE 31 Si Si 0.0000 31 Si -9.066384613 7.697862189 9.241213436 CORE 32 Si Si 0.0000 32 Si -2.150217702 7.683114180 5.088228585 CORE 33 Si Si 0.0000 33 Si -11.832603777 14.891546325 8.839836127 CORE 34 Si Si 0.0000 34 Si -8.853222425 16.192858547 5.025363152 CORE 35 Si Si 0.0000 35 Si 0.708644971 9.115630383 8.870007187 CORE 36 Si Si 0.0000 36 O -15.206179939 7.690926825 3.411351408 CORE 37 O O 0.0000 37 O -5.542412976 14.966764174 7.412298344 CORE 38 O O 0.0000 38 O -15.144783054 16.104339352 3.601264896 CORE 39 O O 0.0000 39 O -5.489310304 9.101734428 7.379003989 CORE 40 O O 0.0000 40 O -10.533162714 4.222827205 7.297505211 CORE 41 O O 0.0000 41 O -0.657289706 12.005231274 3.493793633 CORE 42 O O 0.0000 42 O -10.395159582 12.077893389 3.498820406 CORE 43 O O 0.0000 43 O -0.743267669 4.656905653 7.302464432 CORE 44 O O 0.0000 44 O -13.051844286 6.127915125 3.649760296 CORE 45 O O 0.0000 45 O -3.530854646 13.270346640 7.241343638 CORE 46 O O 0.0000 46 O -7.520853919 10.793093974 7.354510348 CORE 47 O O 0.0000 47 O 2.180637772 17.937640131 3.552707725 CORE 48 O O 0.0000 48 O -3.330210276 10.630254104 7.396875320 CORE 49 O O 0.0000 49 O -13.313771421 17.926365930 3.263302109 CORE 50 O O 0.0000 50 O 1.929539743 6.144966610 3.457768592 CORE 51 O O 0.0000 51 O -7.666122835 13.383331830 7.379443230 CORE 52 O O 0.0000 52 O -11.331088977 4.372623464 4.717068207 CORE 53 O O 0.0000 53 O -1.558913362 12.184597933 8.627427034 CORE 54 O O 0.0000 54 O 0.159680205 4.727646859 4.822791255 CORE 55 O O 0.0000 55 O -9.501711978 11.938266586 8.649866194 CORE 56 O O 0.0000 56 O -1.571020692 12.000856833 5.972039772 CORE 57 O O 0.0000 57 O -11.334601302 4.921697526 9.689857122 CORE 58 O O 0.0000 58 O -9.524253710 12.057855313 5.992182694 CORE 59 O O 0.0000 59 O 0.204555250 4.605448487 9.759924687 CORE 60 O O 0.0000 60 O -10.536625003 8.569002503 5.509840710 CORE 61 O O 0.0000 61 O -0.692189140 15.603792372 9.239535588 CORE 62 O O 0.0000 62 O -10.428913773 8.420716476 8.727607007 CORE 63 O O 0.0000 63 O -0.782025637 15.563465404 5.470549510 CORE 64 O O 0.0000 64 O -0.719142110 8.413770589 5.355098886 CORE 65 O O 0.0000 65 O -10.393709890 15.609951358 9.198221477 CORE 66 O O 0.0000 66 O -10.219897441 15.446146278 5.478190884 CORE 67 O O 0.0000 67 O -0.726300894 8.426235593 9.266245896 CORE 68 O O 0.0000 68 O -12.534247000 9.099999182 7.301880958 CORE 69 O O 0.0000 69 O -2.520163018 16.011212053 3.508340610 CORE 70 O O 0.0000 70 O -9.097679925 7.876202374 3.240411689 CORE 71 O O 0.0000 71 O 1.069151601 15.133098465 7.312819756 CORE 72 O O 0.0000 72 O -2.527115501 7.813750364 3.517038854 CORE 73 O O 0.0000 73 O -12.167760508 15.161026593 7.274360634 CORE 74 O O 0.0000 74 O 1.023707687 8.861417056 7.297725136 CORE 75 O O 0.0000 75 O -8.523360258 15.938448026 3.447508967 CORE 76 O O 0.0000 76 O -13.176008077 8.533452292 4.833009421 CORE 77 O O 0.0000 77 O -3.283702138 15.525395785 8.640767734 CORE 78 O O 0.0000 78 O 1.813404014 15.646086087 4.830436052 CORE 79 O O 0.0000 79 O -7.761010067 8.356283737 8.495740098 CORE 80 O O 0.0000 80 O -3.328719592 8.369955543 5.998098979 CORE 81 O O 0.0000 81 O -13.007626251 15.549690101 9.736069063 CORE 82 O O 0.0000 82 O -7.591904453 15.544811576 5.830928559 CORE 83 O O 0.0000 83 O 1.890388801 8.469774165 9.764350870 CORE 84 O O 0.0000 84 O -7.754721714 8.654673489 5.888748353 CORE 85 O O 0.0000 85 O 1.927548124 15.686787117 9.754763419 CORE 86 O O 0.0000 86 O -3.409493248 15.613829789 5.971110399 CORE 87 O O 0.0000 87 O -12.916309269 8.312312291 9.779732435 CORE 88 O O 0.0000 88 O 1.919890520 8.402271662 4.847272801 CORE 89 O O 0.0000 89 O -7.820082209 15.745736056 8.508137503 CORE 90 O O 0.0000 90 O -12.795039476 15.774228233 4.781616356 CORE 91 O O 0.0000 91 O -3.311083107 8.305061244 8.649280742 CORE 92 O O 0.0000 92 O -9.542906116 6.034880080 5.663281624 CORE 93 O O 0.0000 93 O 0.742196132 13.359180508 9.282508757 CORE 94 O O 0.0000 94 O -2.128242145 17.870734111 5.376802656 CORE 95 O O 0.0000 95 O -11.761263612 10.665981905 9.328900076 CORE 96 O O 0.0000 96 O 0.678653478 10.685374632 5.385228714 CORE 97 O O 0.0000 97 O -9.042286189 17.928602233 9.382802229 CORE 98 O O 0.0000 98 O -11.807029295 13.393536746 5.357450124 CORE 99 O O 0.0000 99 O -1.969168336 6.073670292 9.202782840 CORE 100 O O 0.0000 100 O -11.888629890 10.825455788 5.374084826 CORE 101 O O 0.0000 101 O -2.132067386 17.846868201 9.216864712 CORE 102 O O 0.0000 102 O 0.668094757 13.330444866 5.389967097 CORE 103 O O 0.0000 103 O -9.114434625 6.074033399 8.809079540 CORE 104 O O 0.0000 104 O -2.047856074 6.101083958 5.484988769 CORE 105 O O 0.0000 105 O -11.733403646 13.309971177 9.128426554 CORE 106 O O 0.0000 106 O -9.052335698 17.778973329 5.304771896 CORE 107 O O 0.0000 107 O 0.623679080 10.720415282 9.152718680 CORE 108 O O 0.0000 108 O2 12.185702405 6.459222811 4.381777303 CORE 109 O2 O2 0.0000 109 O2 13.076155747 7.939088556 3.280951233 CORE 110 O2 O2 0.0000 110 H 11.642029700 5.766482359 4.040354070 CORE 111 H H 0.0000 111 H 12.469645125 8.568239531 3.728852455 CORE 112 H H 0.0000 112 C 13.083665937 6.093043992 5.351549434 CORE 113 C C 0.0000 113 C 12.561730157 4.745443731 5.658527570 CORE 114 C C 0.0000 114 H 12.642507662 4.059073874 4.779966123 CORE 115 H H 0.0000 115 H 11.631320102 4.726523086 6.306955869 CORE 116 H H 0.0000 116 H 14.172607297 6.199152342 4.941726137 CORE 117 H H 0.0000 117 H 13.035197741 6.757755124 6.390793029 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.256220057 4.754609488 3.429146514 CORE 1 Si Si 0.0000 1 Si -2.499426426 12.023766757 7.306120308 CORE 2 Si Si 0.0000 2 Si 1.124312863 4.750785545 3.498544112 CORE 3 Si Si 0.0000 3 Si -8.577979208 12.027119482 7.315824987 CORE 4 Si Si 0.0000 4 Si -13.574597190 7.678130283 11.123293541 CORE 5 Si Si 0.0000 5 Si -3.933858654 14.845882155 7.312494548 CORE 6 Si Si 0.0000 6 Si -7.119189717 9.222058019 7.293864853 CORE 7 Si Si 0.0000 7 Si 2.505985358 16.339094365 3.527887887 CORE 8 Si Si 0.0000 8 Si -13.554897303 16.333736982 3.451621048 CORE 9 Si Si 0.0000 9 Si -3.872566845 9.104419606 7.350147001 CORE 10 Si Si 0.0000 10 Si -7.146575112 14.890553870 7.290031729 CORE 11 Si Si 0.0000 11 Si 2.453715398 7.686190574 3.473294618 CORE 12 Si Si 0.0000 12 Si -10.110459781 4.520412326 5.747144117 CORE 13 Si Si 0.0000 13 Si -0.212687039 12.062357325 9.535651378 CORE 14 Si Si 0.0000 14 Si -10.854938510 11.986485048 9.548775729 CORE 15 Si Si 0.0000 15 Si -1.183535113 4.739198688 5.737677620 CORE 16 Si Si 0.0000 16 Si -10.007050479 4.712384243 8.774893011 CORE 17 Si Si 0.0000 17 Si -0.219759223 12.005330448 5.059294839 CORE 18 Si Si 0.0000 18 Si -10.886195141 12.063788132 5.054003715 CORE 19 Si Si 0.0000 19 Si -1.158165778 4.697968781 8.876584767 CORE 20 Si Si 0.0000 20 Ti -9.055529141 7.713448849 5.068526121 CORE 21 Ti Ti 0.0000 21 Si 0.765773798 14.948223069 8.897746827 CORE 22 Si Si 0.0000 22 Si -2.204805091 16.261872435 5.084791264 CORE 23 Si Si 0.0000 23 Si -11.894748698 9.113046829 8.798360895 CORE 24 Si Si 0.0000 24 Si 0.731986700 9.086435055 5.712702670 CORE 25 Si Si 0.0000 25 Si -8.957989815 16.292811370 9.512421067 CORE 26 Si Si 0.0000 26 Si -11.769180439 14.954209078 5.719151308 CORE 27 Si Si 0.0000 27 Si -2.131247183 7.656031188 9.559095604 CORE 28 Si Si 0.0000 28 Si -12.014561871 9.232769325 5.749424532 CORE 29 Si Si 0.0000 29 Si -2.155054630 16.245375917 9.552778038 CORE 30 Si Si 0.0000 30 Si 0.698496352 14.922356248 5.746927463 CORE 31 Si Si 0.0000 31 Si -9.056045280 7.681883593 9.229688121 CORE 32 Si Si 0.0000 32 Si -2.151554044 7.684643872 5.085560125 CORE 33 Si Si 0.0000 33 Si -11.829586807 14.896094176 8.840155706 CORE 34 Si Si 0.0000 34 Si -8.843290885 16.171086378 5.020935447 CORE 35 Si Si 0.0000 35 Si 0.706499010 9.116059942 8.869054687 CORE 36 Si Si 0.0000 36 O -15.191318904 7.694941907 3.418446735 CORE 37 O O 0.0000 37 O -5.541994022 14.966719632 7.410045314 CORE 38 O O 0.0000 38 O -15.143504637 16.107227490 3.597995542 CORE 39 O O 0.0000 39 O -5.489352450 9.104361803 7.386336281 CORE 40 O O 0.0000 40 O -10.524756113 4.238301142 7.297043986 CORE 41 O O 0.0000 41 O -0.658542527 12.005551858 3.492294859 CORE 42 O O 0.0000 42 O -10.396323301 12.075608076 3.497766198 CORE 43 O O 0.0000 43 O -0.748462738 4.654560086 7.302737151 CORE 44 O O 0.0000 44 O -13.052058478 6.133920594 3.657484283 CORE 45 O O 0.0000 45 O -3.531062295 13.270470318 7.242219305 CORE 46 O O 0.0000 46 O -7.539667017 10.787299536 7.333387541 CORE 47 O O 0.0000 47 O 2.181090789 17.937406613 3.553106572 CORE 48 O O 0.0000 48 O -3.328833520 10.634397189 7.395139277 CORE 49 O O 0.0000 49 O -13.293466677 17.928873518 3.279589008 CORE 50 O O 0.0000 50 O 1.931508462 6.146507978 3.455286662 CORE 51 O O 0.0000 51 O -7.660427407 13.365329404 7.379636453 CORE 52 O O 0.0000 52 O -11.315554768 4.393002593 4.698871896 CORE 53 O O 0.0000 53 O -1.558953583 12.181200522 8.626285723 CORE 54 O O 0.0000 54 O 0.163002779 4.727612552 4.822772541 CORE 55 O O 0.0000 55 O -9.500902167 11.934522645 8.649427486 CORE 56 O O 0.0000 56 O -1.570238978 12.001766547 5.970230091 CORE 57 O O 0.0000 57 O -11.337141777 4.918759081 9.689409361 CORE 58 O O 0.0000 58 O -9.528453066 12.056596041 5.985343121 CORE 59 O O 0.0000 59 O 0.205988200 4.605167399 9.760425775 CORE 60 O O 0.0000 60 O -10.548220236 8.562948312 5.509447341 CORE 61 O O 0.0000 61 O -0.689003203 15.607723560 9.244316724 CORE 62 O O 0.0000 62 O -10.424236190 8.421241173 8.750142018 CORE 63 O O 0.0000 63 O -0.778840662 15.567466936 5.469370011 CORE 64 O O 0.0000 64 O -0.717210341 8.415129179 5.352451118 CORE 65 O O 0.0000 65 O -10.396784593 15.607043473 9.197364144 CORE 66 O O 0.0000 66 O -10.231023684 15.458982605 5.476423727 CORE 67 O O 0.0000 67 O -0.724199580 8.428582312 9.265279551 CORE 68 O O 0.0000 68 O -12.509395921 9.085898106 7.298057115 CORE 69 O O 0.0000 69 O -2.521953532 16.008530046 3.509567502 CORE 70 O O 0.0000 70 O -9.077884200 7.886008146 3.239976328 CORE 71 O O 0.0000 71 O 1.068440707 15.132072856 7.312996320 CORE 72 O O 0.0000 72 O -2.531225562 7.815902918 3.514628888 CORE 73 O O 0.0000 73 O -12.165870307 15.160574691 7.274622550 CORE 74 O O 0.0000 74 O 1.021859632 8.862494846 7.295773124 CORE 75 O O 0.0000 75 O -8.524557077 15.938728969 3.439273698 CORE 76 O O 0.0000 76 O -13.162468951 8.526760681 4.834011368 CORE 77 O O 0.0000 77 O -3.282253792 15.525444651 8.639797966 CORE 78 O O 0.0000 78 O 1.816016848 15.645801540 4.829883768 CORE 79 O O 0.0000 79 O -7.763630791 8.345229217 8.498302817 CORE 80 O O 0.0000 80 O -3.323984275 8.369863288 5.991579366 CORE 81 O O 0.0000 81 O -13.008961823 15.549693128 9.737025138 CORE 82 O O 0.0000 82 O -7.584055174 15.528797520 5.836580493 CORE 83 O O 0.0000 83 O 1.892360599 8.468648806 9.763616774 CORE 84 O O 0.0000 84 O -7.742261438 8.653457029 5.885342070 CORE 85 O O 0.0000 85 O 1.927733064 15.685929296 9.754934657 CORE 86 O O 0.0000 86 O -3.405142246 15.613762328 5.971268476 CORE 87 O O 0.0000 87 O -12.917422182 8.311900750 9.775706924 CORE 88 O O 0.0000 88 O 1.921178366 8.400508595 4.845374648 CORE 89 O O 0.0000 89 O -7.820589881 15.738149290 8.506515340 CORE 90 O O 0.0000 90 O -12.797649423 15.774252739 4.782069823 CORE 91 O O 0.0000 91 O -3.308383480 8.303527227 8.650028304 CORE 92 O O 0.0000 92 O -9.552763757 6.049136979 5.674677920 CORE 93 O O 0.0000 93 O 0.740908286 13.359400766 9.280497637 CORE 94 O O 0.0000 94 O -2.127277992 17.870365959 5.374606757 CORE 95 O O 0.0000 95 O -11.763225210 10.661966390 9.323733635 CORE 96 O O 0.0000 96 O 0.677855791 10.685576727 5.385523646 CORE 97 O O 0.0000 97 O -9.052750996 17.924939159 9.377092937 CORE 98 O O 0.0000 98 O -11.801870405 13.382728573 5.353957575 CORE 99 O O 0.0000 99 O -1.967272746 6.072949267 9.204214975 CORE 100 O O 0.0000 100 O -11.878782640 10.818486261 5.367865469 CORE 101 O O 0.0000 101 O -2.132199404 17.847299922 9.222720139 CORE 102 O O 0.0000 102 O 0.667588625 13.330825271 5.390242783 CORE 103 O O 0.0000 103 O -9.107847982 6.080231738 8.788036913 CORE 104 O O 0.0000 104 O -2.045983963 6.101214700 5.483226329 CORE 105 O O 0.0000 105 O -11.729649032 13.301500355 9.129085796 CORE 106 O O 0.0000 106 O -9.036097138 17.768815838 5.309684941 CORE 107 O O 0.0000 107 O 0.624207151 10.720465013 9.151554167 CORE 108 O O 0.0000 108 O2 12.144882959 6.471159514 4.403612679 CORE 109 O2 O2 0.0000 109 O2 13.081267680 7.909351233 3.340736732 CORE 110 O2 O2 0.0000 110 H 11.549225307 5.754246695 4.043036602 CORE 111 H H 0.0000 111 H 12.431904232 8.525099959 3.748334157 CORE 112 H H 0.0000 112 C 13.110666634 6.059051150 5.441483551 CORE 113 C C 0.0000 113 C 12.556407112 4.744905340 5.652799107 CORE 114 C C 0.0000 114 H 12.609695301 4.128580458 4.754312837 CORE 115 H H 0.0000 115 H 11.620916107 4.791556343 6.225163756 CORE 116 H H 0.0000 116 H 14.101034658 6.218833509 4.931782972 CORE 117 H H 0.0000 117 H 13.021591836 6.788202373 6.352987823 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.265278087 4.747001676 3.421661089 CORE 1 Si Si 0.0000 1 Si -2.502446283 12.018507395 7.308226442 CORE 2 Si Si 0.0000 2 Si 1.122184800 4.751095607 3.498652743 CORE 3 Si Si 0.0000 3 Si -8.570138012 12.033116446 7.319708852 CORE 4 Si Si 0.0000 4 Si -13.577506775 7.679637921 11.128078633 CORE 5 Si Si 0.0000 5 Si -3.936094680 14.845653826 7.312890503 CORE 6 Si Si 0.0000 6 Si -7.117692105 9.222514102 7.284094220 CORE 7 Si Si 0.0000 7 Si 2.504554332 16.339498842 3.528708553 CORE 8 Si Si 0.0000 8 Si -13.555376877 16.329907274 3.450029846 CORE 9 Si Si 0.0000 9 Si -3.881365073 9.102790596 7.351297744 CORE 10 Si Si 0.0000 10 Si -7.150287773 14.905618428 7.280995724 CORE 11 Si Si 0.0000 11 Si 2.442115161 7.685334338 3.474295499 CORE 12 Si Si 0.0000 12 Si -10.115278041 4.529346727 5.749392201 CORE 13 Si Si 0.0000 13 Si -0.214042241 12.062300819 9.536973056 CORE 14 Si Si 0.0000 14 Si -10.855465811 11.992610880 9.550345098 CORE 15 Si Si 0.0000 15 Si -1.185985138 4.739620464 5.739252998 CORE 16 Si Si 0.0000 16 Si -10.004138970 4.709339417 8.785936560 CORE 17 Si Si 0.0000 17 Si -0.222081849 12.004140367 5.061338138 CORE 18 Si Si 0.0000 18 Si -10.889572754 12.062985520 5.061860221 CORE 19 Si Si 0.0000 19 Si -1.159341428 4.699674478 8.875468864 CORE 20 Si Si 0.0000 20 Ti -9.044212377 7.695566209 5.054466310 CORE 21 Ti Ti 0.0000 21 Si 0.765186646 14.947926413 8.897810728 CORE 22 Si Si 0.0000 22 Si -2.208299326 16.262079863 5.086077112 CORE 23 Si Si 0.0000 23 Si -11.908257802 9.118243055 8.789299026 CORE 24 Si Si 0.0000 24 Si 0.729979299 9.086137390 5.715470556 CORE 25 Si Si 0.0000 25 Si -8.953970781 16.296337792 9.521861776 CORE 26 Si Si 0.0000 26 Si -11.763755782 14.959415250 5.721876974 CORE 27 Si Si 0.0000 27 Si -2.137982587 7.657985971 9.557288966 CORE 28 Si Si 0.0000 28 Si -12.012563708 9.233733095 5.752277162 CORE 29 Si Si 0.0000 29 Si -2.156265882 16.246458608 9.551356478 CORE 30 Si Si 0.0000 30 Si 0.696036512 14.921685819 5.747975053 CORE 31 Si Si 0.0000 31 Si -9.060302754 7.684342748 9.245434148 CORE 32 Si Si 0.0000 32 Si -2.159535533 7.687768844 5.093846971 CORE 33 Si Si 0.0000 33 Si -11.827933314 14.902453960 8.837777538 CORE 34 Si Si 0.0000 34 Si -8.847021443 16.181878983 5.021758168 CORE 35 Si Si 0.0000 35 Si 0.703595006 9.114936313 8.870509187 CORE 36 Si Si 0.0000 36 O -15.183757523 7.692233665 3.413234118 CORE 37 O O 0.0000 37 O -5.539119847 14.966903708 7.411040490 CORE 38 O O 0.0000 38 O -15.148172213 16.102509401 3.601129639 CORE 39 O O 0.0000 39 O -5.508895879 9.101809962 7.376444617 CORE 40 O O 0.0000 40 O -10.530873766 4.233421319 7.302340054 CORE 41 O O 0.0000 41 O -0.656633274 12.005355962 3.493815466 CORE 42 O O 0.0000 42 O -10.399303129 12.076066753 3.507351596 CORE 43 O O 0.0000 43 O -0.742993626 4.657135135 7.302106741 CORE 44 O O 0.0000 44 O -13.057793742 6.144012498 3.653943504 CORE 45 O O 0.0000 45 O -3.531403886 13.271626092 7.241240104 CORE 46 O O 0.0000 46 O -7.528102768 10.793606129 7.350229995 CORE 47 O O 0.0000 47 O 2.181985276 17.936542737 3.553081392 CORE 48 O O 0.0000 48 O -3.328382235 10.637031339 7.396673044 CORE 49 O O 0.0000 49 O -13.307299090 17.933027414 3.263457524 CORE 50 O O 0.0000 50 O 1.930265841 6.147087739 3.457874789 CORE 51 O O 0.0000 51 O -7.672637888 13.368430159 7.378171836 CORE 52 O O 0.0000 52 O -11.343879875 4.377226956 4.709453916 CORE 53 O O 0.0000 53 O -1.555442797 12.185221658 8.631153277 CORE 54 O O 0.0000 54 O 0.161886787 4.727104865 4.821154638 CORE 55 O O 0.0000 55 O -9.505870728 11.936254000 8.653603315 CORE 56 O O 0.0000 56 O -1.566637359 12.001427801 5.968385417 CORE 57 O O 0.0000 57 O -11.338815091 4.919092782 9.698569591 CORE 58 O O 0.0000 58 O -9.535211755 12.053035889 5.986330994 CORE 59 O O 0.0000 59 O 0.206927527 4.605316880 9.761875025 CORE 60 O O 0.0000 60 O -10.572154889 8.587154698 5.522901541 CORE 61 O O 0.0000 61 O -0.689294373 15.601784399 9.237753597 CORE 62 O O 0.0000 62 O -10.433603864 8.425076503 8.722073669 CORE 63 O O 0.0000 63 O -0.779796540 15.562772199 5.471395052 CORE 64 O O 0.0000 64 O -0.713842927 8.415350877 5.356274049 CORE 65 O O 0.0000 65 O -10.401442931 15.606655140 9.196221768 CORE 66 O O 0.0000 66 O -10.230279497 15.446351111 5.479776912 CORE 67 O O 0.0000 67 O -0.720149370 8.428635935 9.265334095 CORE 68 O O 0.0000 68 O -12.523835500 9.097579523 7.290548183 CORE 69 O O 0.0000 69 O -2.519216956 16.012220364 3.509273103 CORE 70 O O 0.0000 70 O -9.086430325 7.866596679 3.244596038 CORE 71 O O 0.0000 71 O 1.070179453 15.132620328 7.312870724 CORE 72 O O 0.0000 72 O -2.526644201 7.813795915 3.518304695 CORE 73 O O 0.0000 73 O -12.169415540 15.161287932 7.278334111 CORE 74 O O 0.0000 74 O 1.024459957 8.861687909 7.297427161 CORE 75 O O 0.0000 75 O -8.528039765 15.942375466 3.444565278 CORE 76 O O 0.0000 76 O -13.162449706 8.535570394 4.839204130 CORE 77 O O 0.0000 77 O -3.282668897 15.525593411 8.641466761 CORE 78 O O 0.0000 78 O 1.814557533 15.646912917 4.829289264 CORE 79 O O 0.0000 79 O -7.775675192 8.348159445 8.504230817 CORE 80 O O 0.0000 80 O -3.324660144 8.368256333 5.993887852 CORE 81 O O 0.0000 81 O -13.009895184 15.550121967 9.738475911 CORE 82 O O 0.0000 82 O -7.591973734 15.546326277 5.839716416 CORE 83 O O 0.0000 83 O 1.891060436 8.469070869 9.765467001 CORE 84 O O 0.0000 84 O -7.739188275 8.657544329 5.900048570 CORE 85 O O 0.0000 85 O 1.928397579 15.687224316 9.755436125 CORE 86 O O 0.0000 86 O -3.407015704 15.614280249 5.969684654 CORE 87 O O 0.0000 87 O -12.913144886 8.314978009 9.779864268 CORE 88 O O 0.0000 88 O 1.921279400 8.401506239 4.846727439 CORE 89 O O 0.0000 89 O -7.817882748 15.745359976 8.506646337 CORE 90 O O 0.0000 90 O -12.799919704 15.778379823 4.776932212 CORE 91 O O 0.0000 91 O -3.308535512 8.302667676 8.653573571 CORE 92 O O 0.0000 92 O -9.533063870 6.026825555 5.660945600 CORE 93 O O 0.0000 93 O 0.743418546 13.359816198 9.282190471 CORE 94 O O 0.0000 94 O -2.127727545 17.870602504 5.376184646 CORE 95 O O 0.0000 95 O -11.764102377 10.655115640 9.322830202 CORE 96 O O 0.0000 96 O 0.679407287 10.684665283 5.385207033 CORE 97 O O 0.0000 97 O -9.050586560 17.935661852 9.378635148 CORE 98 O O 0.0000 98 O -11.804968010 13.372448989 5.352833989 CORE 99 O O 0.0000 99 O -1.967588742 6.069975794 9.202505633 CORE 100 O O 0.0000 100 O -11.884615474 10.813554257 5.375830150 CORE 101 O O 0.0000 101 O -2.131492551 17.847378915 9.217288738 CORE 102 O O 0.0000 102 O 0.669157634 13.330633267 5.390342209 CORE 103 O O 0.0000 103 O -9.112913150 6.086174791 8.807430676 CORE 104 O O 0.0000 104 O -2.046242225 6.098572334 5.485201467 CORE 105 O O 0.0000 105 O -11.731138946 13.298530630 9.131380132 CORE 106 O O 0.0000 106 O -9.046033874 17.783900720 5.305736491 CORE 107 O O 0.0000 107 O 0.624134791 10.720081725 9.152239197 CORE 108 O O 0.0000 108 O2 12.165031629 6.506627417 4.381474156 CORE 109 O2 O2 0.0000 109 O2 13.079368050 7.925324784 3.295989788 CORE 110 O2 O2 0.0000 110 H 11.632456108 5.742407868 4.039910645 CORE 111 H H 0.0000 111 H 12.465477138 8.566938024 3.734624811 CORE 112 H H 0.0000 112 C 13.127518134 6.123664362 5.413091820 CORE 113 C C 0.0000 113 C 12.551658516 4.761824498 5.660340065 CORE 114 C C 0.0000 114 H 12.637825461 4.047481395 4.768564882 CORE 115 H H 0.0000 115 H 11.638823172 4.728347992 6.296688180 CORE 116 H H 0.0000 116 H 14.140686152 6.196581617 4.947754248 CORE 117 H H 0.0000 117 H 13.032599917 6.732681835 6.331046632 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.263598807 4.748412014 3.423048797 CORE 1 Si Si 0.0000 1 Si -2.501886459 12.019482408 7.307836040 CORE 2 Si Si 0.0000 2 Si 1.122579313 4.751038236 3.498632584 CORE 3 Si Si 0.0000 3 Si -8.571591554 12.032004637 7.318988829 CORE 4 Si Si 0.0000 4 Si -13.576967350 7.679358419 11.127191555 CORE 5 Si Si 0.0000 5 Si -3.935680152 14.845696205 7.312817094 CORE 6 Si Si 0.0000 6 Si -7.117969612 9.222429631 7.285905498 CORE 7 Si Si 0.0000 7 Si 2.504819522 16.339423886 3.528556409 CORE 8 Si Si 0.0000 8 Si -13.555287968 16.330617200 3.450324854 CORE 9 Si Si 0.0000 9 Si -3.879734096 9.103092585 7.351084438 CORE 10 Si Si 0.0000 10 Si -7.149599395 14.902825716 7.282670910 CORE 11 Si Si 0.0000 11 Si 2.444265549 7.685493044 3.474109959 CORE 12 Si Si 0.0000 12 Si -10.114384901 4.527690329 5.748975478 CORE 13 Si Si 0.0000 13 Si -0.213791100 12.062311198 9.536728028 CORE 14 Si Si 0.0000 14 Si -10.855368048 11.991475287 9.550054198 CORE 15 Si Si 0.0000 15 Si -1.185530966 4.739542192 5.738960957 CORE 16 Si Si 0.0000 16 Si -10.004678780 4.709903898 8.783889230 CORE 17 Si Si 0.0000 17 Si -0.221651348 12.004361056 5.060959374 CORE 18 Si Si 0.0000 18 Si -10.888946728 12.063134280 5.060403743 CORE 19 Si Si 0.0000 19 Si -1.159123580 4.699358362 8.875675704 CORE 20 Si Si 0.0000 20 Ti -9.046310226 7.698881312 5.057072771 CORE 21 Ti Ti 0.0000 21 Si 0.765295378 14.947981478 8.897798937 CORE 22 Si Si 0.0000 22 Si -2.207651554 16.262041376 5.085838777 CORE 23 Si Si 0.0000 23 Si -11.905753508 9.117279718 8.790978928 CORE 24 Si Si 0.0000 24 Si 0.730351297 9.086192599 5.714957449 CORE 25 Si Si 0.0000 25 Si -8.954715931 16.295684084 9.520111660 CORE 26 Si Si 0.0000 26 Si -11.764761311 14.958450039 5.721371702 CORE 27 Si Si 0.0000 27 Si -2.136734000 7.657623584 9.557623912 CORE 28 Si Si 0.0000 28 Si -12.012934166 9.233554352 5.751748309 CORE 29 Si Si 0.0000 29 Si -2.156041298 16.246257955 9.551619992 CORE 30 Si Si 0.0000 30 Si 0.696492609 14.921810218 5.747780841 CORE 31 Si Si 0.0000 31 Si -9.059513535 7.683886810 9.242515106 CORE 32 Si Si 0.0000 32 Si -2.158055819 7.687189515 5.092310693 CORE 33 Si Si 0.0000 33 Si -11.828239880 14.901274978 8.838218452 CORE 34 Si Si 0.0000 34 Si -8.846329986 16.179878217 5.021605643 CORE 35 Si Si 0.0000 35 Si 0.704133277 9.115144606 8.870239587 CORE 36 Si Si 0.0000 36 O -15.185159297 7.692735731 3.414200463 CORE 37 O O 0.0000 37 O -5.539652729 14.966869545 7.410856015 CORE 38 O O 0.0000 38 O -15.147306978 16.103384087 3.600548676 CORE 39 O O 0.0000 39 O -5.505272898 9.102283053 7.378278337 CORE 40 O O 0.0000 40 O -10.529739684 4.234325844 7.301358266 CORE 41 O O 0.0000 41 O -0.656987181 12.005392287 3.493533543 CORE 42 O O 0.0000 42 O -10.398750810 12.075981706 3.505574626 CORE 43 O O 0.0000 43 O -0.744007430 4.656657719 7.302223587 CORE 44 O O 0.0000 44 O -13.056730480 6.142141609 3.654599931 CORE 45 O O 0.0000 45 O -3.531340571 13.271411889 7.241421612 CORE 46 O O 0.0000 46 O -7.530246612 10.792436950 7.347107689 CORE 47 O O 0.0000 47 O 2.181819388 17.936702885 3.553086032 CORE 48 O O 0.0000 48 O -3.328465756 10.636542967 7.396388686 CORE 49 O O 0.0000 49 O -13.304734753 17.932257379 3.266448074 CORE 50 O O 0.0000 50 O 1.930496198 6.146980205 3.457395002 CORE 51 O O 0.0000 51 O -7.670374343 13.367855444 7.378443337 CORE 52 O O 0.0000 52 O -11.338628804 4.380151418 4.707492242 CORE 53 O O 0.0000 53 O -1.556093649 12.184476272 8.630250909 CORE 54 O O 0.0000 54 O 0.162093666 4.727198993 4.821454591 CORE 55 O O 0.0000 55 O -9.504949683 11.935932983 8.652829205 CORE 56 O O 0.0000 56 O -1.567304952 12.001490649 5.968727362 CORE 57 O O 0.0000 57 O -11.338504869 4.919030799 9.696871432 CORE 58 O O 0.0000 58 O -9.533958934 12.053695940 5.986147889 CORE 59 O O 0.0000 59 O 0.206753364 4.605289204 9.761606339 CORE 60 O O 0.0000 60 O -10.567717863 8.582667245 5.520407363 CORE 61 O O 0.0000 61 O -0.689240488 15.602885397 9.238970295 CORE 62 O O 0.0000 62 O -10.431867235 8.424365424 8.727277082 CORE 63 O O 0.0000 63 O -0.779619297 15.563642561 5.471019636 CORE 64 O O 0.0000 64 O -0.714467221 8.415309795 5.355565284 CORE 65 O O 0.0000 65 O -10.400579236 15.606727069 9.196433553 CORE 66 O O 0.0000 66 O -10.230417480 15.448692786 5.479155327 CORE 67 O O 0.0000 67 O -0.720900100 8.428625989 9.265323977 CORE 68 O O 0.0000 68 O -12.521158581 9.095413997 7.291940228 CORE 69 O O 0.0000 69 O -2.519724242 16.011536241 3.509327723 CORE 70 O O 0.0000 70 O -9.084846113 7.870195319 3.243739618 CORE 71 O O 0.0000 71 O 1.069857106 15.132518848 7.312894002 CORE 72 O O 0.0000 72 O -2.527493464 7.814186410 3.517623241 CORE 73 O O 0.0000 73 O -12.168758338 15.161155749 7.277646039 CORE 74 O O 0.0000 74 O 1.023977880 8.861837534 7.297120514 CORE 75 O O 0.0000 75 O -8.527394110 15.941699415 3.443584327 CORE 76 O O 0.0000 76 O -13.162453363 8.533937204 4.838241513 CORE 77 O O 0.0000 77 O -3.282591919 15.525565735 8.641157452 CORE 78 O O 0.0000 78 O 1.814828111 15.646706786 4.829399492 CORE 79 O O 0.0000 79 O -7.773442438 8.347616154 8.503131878 CORE 80 O O 0.0000 80 O -3.324534862 8.368554142 5.993459870 CORE 81 O O 0.0000 81 O -13.009722176 15.550042542 9.738206919 CORE 82 O O 0.0000 82 O -7.590505758 15.543076762 5.839135073 CORE 83 O O 0.0000 83 O 1.891301378 8.468992597 9.765123992 CORE 84 O O 0.0000 84 O -7.739757914 8.656786546 5.897322219 CORE 85 O O 0.0000 85 O 1.928274413 15.686984311 9.755343165 CORE 86 O O 0.0000 86 O -3.406668339 15.614184247 5.969978292 CORE 87 O O 0.0000 87 O -12.913937762 8.314407473 9.779093581 CORE 88 O O 0.0000 88 O 1.921260733 8.401321298 4.846476630 CORE 89 O O 0.0000 89 O -7.818384647 15.744023297 8.506622070 CORE 90 O O 0.0000 90 O -12.799498825 15.777614689 4.777884636 CORE 91 O O 0.0000 91 O -3.308507222 8.302827103 8.652916308 CORE 92 O O 0.0000 92 O -9.536715910 6.030961721 5.663491355 CORE 93 O O 0.0000 93 O 0.742953213 13.359739224 9.281876673 CORE 94 O O 0.0000 94 O -2.127644216 17.870558684 5.375892148 CORE 95 O O 0.0000 95 O -11.763939760 10.656385579 9.322997637 CORE 96 O O 0.0000 96 O 0.679119774 10.684834224 5.385265761 CORE 97 O O 0.0000 97 O -9.050987809 17.933674060 9.378349193 CORE 98 O O 0.0000 98 O -11.804393752 13.374354618 5.353042275 CORE 99 O O 0.0000 99 O -1.967530239 6.070527014 9.202822474 CORE 100 O O 0.0000 100 O -11.883534315 10.814468440 5.374353589 CORE 101 O O 0.0000 101 O -2.131623607 17.847364212 9.218295629 CORE 102 O O 0.0000 102 O 0.668866849 13.330668871 5.390323724 CORE 103 O O 0.0000 103 O -9.111974016 6.085073073 8.803835353 CORE 104 O O 0.0000 104 O -2.046194306 6.099062147 5.484835255 CORE 105 O O 0.0000 105 O -11.730862786 13.299081273 9.130954813 CORE 106 O O 0.0000 106 O -9.044191785 17.781104261 5.306468458 CORE 107 O O 0.0000 107 O 0.624148262 10.720152790 9.152112157 CORE 108 O O 0.0000 108 O2 12.161296452 6.500052277 4.385578325 CORE 109 O2 O2 0.0000 109 O2 13.079720225 7.922363564 3.304285154 CORE 110 O2 O2 0.0000 110 H 11.617026397 5.744602656 4.040490087 CORE 111 H H 0.0000 111 H 12.459253255 8.559181884 3.737166306 CORE 112 H H 0.0000 112 C 13.124394164 6.111686144 5.418355177 CORE 113 C C 0.0000 113 C 12.552538955 4.758687995 5.658942087 CORE 114 C C 0.0000 114 H 12.632610570 4.062515681 4.765922820 CORE 115 H H 0.0000 115 H 11.635503485 4.740065735 6.283428800 CORE 116 H H 0.0000 116 H 14.133335307 6.200706684 4.944793443 CORE 117 H H 0.0000 117 H 13.030559224 6.742974393 6.335114211 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.276978588 4.749990140 3.418832573 CORE 1 Si Si 0.0000 1 Si -2.500343430 12.018664948 7.309564171 CORE 2 Si Si 0.0000 2 Si 1.122587396 4.749336432 3.499280871 CORE 3 Si Si 0.0000 3 Si -8.573204056 12.030692175 7.320099635 CORE 4 Si Si 0.0000 4 Si -13.577264679 7.682354523 11.124807606 CORE 5 Si Si 0.0000 5 Si -3.934009532 14.847072092 7.313433811 CORE 6 Si Si 0.0000 6 Si -7.118940307 9.228800226 7.293219153 CORE 7 Si Si 0.0000 7 Si 2.502955301 16.338772628 3.529235429 CORE 8 Si Si 0.0000 8 Si -13.560996482 16.331544067 3.447636159 CORE 9 Si Si 0.0000 9 Si -3.887625136 9.102997160 7.352781456 CORE 10 Si Si 0.0000 10 Si -7.152962959 14.910543657 7.275955943 CORE 11 Si Si 0.0000 11 Si 2.447075639 7.685723248 3.474713896 CORE 12 Si Si 0.0000 12 Si -10.124925725 4.521032304 5.750612932 CORE 13 Si Si 0.0000 13 Si -0.209943727 12.062941843 9.539915908 CORE 14 Si Si 0.0000 14 Si -10.858196229 11.989315382 9.555689701 CORE 15 Si Si 0.0000 15 Si -1.183738913 4.738726894 5.740280505 CORE 16 Si Si 0.0000 16 Si -10.009975460 4.709344318 8.792491471 CORE 17 Si Si 0.0000 17 Si -0.218175396 12.004128258 5.060451897 CORE 18 Si Si 0.0000 18 Si -10.889544849 12.060305243 5.066849795 CORE 19 Si Si 0.0000 19 Si -1.156300018 4.698893919 8.873846549 CORE 20 Si Si 0.0000 20 Ti -9.043950458 7.689671013 5.053871350 CORE 21 Ti Ti 0.0000 21 Si 0.767442879 14.947232488 8.897597422 CORE 22 Si Si 0.0000 22 Si -2.206609654 16.261647565 5.086392203 CORE 23 Si Si 0.0000 23 Si -11.918249386 9.119494254 8.790165564 CORE 24 Si Si 0.0000 24 Si 0.731305250 9.087219073 5.717814263 CORE 25 Si Si 0.0000 25 Si -8.955808444 16.301180857 9.526638652 CORE 26 Si Si 0.0000 26 Si -11.763829297 14.957062765 5.719532962 CORE 27 Si Si 0.0000 27 Si -2.136453414 7.657868346 9.558112219 CORE 28 Si Si 0.0000 28 Si -12.039974314 9.246441130 5.756948070 CORE 29 Si Si 0.0000 29 Si -2.153402292 16.246287505 9.549868354 CORE 30 Si Si 0.0000 30 Si 0.696959289 14.920887531 5.748297447 CORE 31 Si Si 0.0000 31 Si -9.072434910 7.686978483 9.236688511 CORE 32 Si Si 0.0000 32 Si -2.156990247 7.688163952 5.097784771 CORE 33 Si Si 0.0000 33 Si -11.830022119 14.902571584 8.839990325 CORE 34 Si Si 0.0000 34 Si -8.855530425 16.185713881 5.023273449 CORE 35 Si Si 0.0000 35 Si 0.704880735 9.116236955 8.870381309 CORE 36 Si Si 0.0000 36 O -15.188050408 7.691745006 3.410873751 CORE 37 O O 0.0000 37 O -5.544885902 14.967813423 7.409684124 CORE 38 O O 0.0000 38 O -15.148202042 16.098256187 3.602826581 CORE 39 O O 0.0000 39 O -5.507645175 9.098283539 7.368450801 CORE 40 O O 0.0000 40 O -10.529990633 4.239069880 7.309951151 CORE 41 O O 0.0000 41 O -0.655898709 12.005045468 3.494698968 CORE 42 O O 0.0000 42 O -10.403829449 12.075361295 3.511604410 CORE 43 O O 0.0000 43 O -0.739881396 4.659224840 7.302281250 CORE 44 O O 0.0000 44 O -13.057193312 6.143878441 3.653036267 CORE 45 O O 0.0000 45 O -3.530757654 13.270581744 7.240547923 CORE 46 O O 0.0000 46 O -7.524563116 10.797924209 7.358983011 CORE 47 O O 0.0000 47 O 2.181291894 17.938706390 3.553251717 CORE 48 O O 0.0000 48 O -3.333024216 10.631796626 7.397987571 CORE 49 O O 0.0000 49 O -13.315934125 17.933292646 3.251401759 CORE 50 O O 0.0000 50 O 1.927683798 6.145849513 3.459750272 CORE 51 O O 0.0000 51 O -7.675420459 13.380709789 7.374711541 CORE 52 O O 0.0000 52 O -11.364654571 4.368476199 4.719836397 CORE 53 O O 0.0000 53 O -1.558885457 12.187384734 8.630046959 CORE 54 O O 0.0000 54 O 0.159069575 4.726550906 4.821332191 CORE 55 O O 0.0000 55 O -9.504387934 11.937346493 8.653194960 CORE 56 O O 0.0000 56 O -1.569754978 12.000861734 5.972106031 CORE 57 O O 0.0000 57 O -11.336606201 4.916570635 9.704082541 CORE 58 O O 0.0000 58 O -9.536361425 12.047846870 5.992685455 CORE 59 O O 0.0000 59 O 0.205119693 4.605480199 9.760961779 CORE 60 O O 0.0000 60 O -10.557064459 8.584727255 5.526485377 CORE 61 O O 0.0000 61 O -0.693892476 15.599230106 9.233081853 CORE 62 O O 0.0000 62 O -10.431794106 8.423989776 8.701540497 CORE 63 O O 0.0000 63 O -0.785336664 15.561867819 5.472258395 CORE 64 O O 0.0000 64 O -0.718388493 8.412478020 5.358851906 CORE 65 O O 0.0000 65 O -10.395499441 15.611617414 9.197685320 CORE 66 O O 0.0000 66 O -10.224847719 15.443859667 5.480667109 CORE 67 O O 0.0000 67 O -0.724799433 8.425406745 9.266636983 CORE 68 O O 0.0000 68 O -12.531139003 9.103655193 7.286312028 CORE 69 O O 0.0000 69 O -2.517259784 16.015894538 3.509521478 CORE 70 O O 0.0000 70 O -9.087345596 7.850056628 3.255219973 CORE 71 O O 0.0000 71 O 1.071632610 15.132688365 7.313095518 CORE 72 O O 0.0000 72 O -2.524117775 7.812585365 3.520731473 CORE 73 O O 0.0000 73 O -12.172362267 15.163231616 7.276924494 CORE 74 O O 0.0000 74 O 1.025925622 8.861296404 7.299025589 CORE 75 O O 0.0000 75 O -8.531740109 15.947228621 3.446962008 CORE 76 O O 0.0000 76 O -13.159280127 8.538213913 4.840558747 CORE 77 O O 0.0000 77 O -3.284621835 15.524879881 8.641123219 CORE 78 O O 0.0000 78 O 1.811690093 15.647092236 4.830146369 CORE 79 O O 0.0000 79 O -7.787434389 8.349870043 8.507853374 CORE 80 O O 0.0000 80 O -3.329320022 8.369731105 5.998538600 CORE 81 O O 0.0000 81 O -13.009767016 15.549143062 9.737788903 CORE 82 O O 0.0000 82 O -7.595430057 15.560250629 5.845177561 CORE 83 O O 0.0000 83 O 1.888373895 8.469747786 9.765863641 CORE 84 O O 0.0000 84 O -7.738747574 8.651881642 5.896775184 CORE 85 O O 0.0000 85 O 1.927270617 15.687622596 9.754538321 CORE 86 O O 0.0000 86 O -3.409194573 15.613925791 5.969570089 CORE 87 O O 0.0000 87 O -12.909921999 8.317356585 9.783813174 CORE 88 O O 0.0000 88 O 1.920109908 8.402288672 4.848860884 CORE 89 O O 0.0000 89 O -7.816329905 15.752075515 8.507911493 CORE 90 O O 0.0000 90 O -12.797459479 15.779859208 4.778078240 CORE 91 O O 0.0000 91 O -3.314610250 8.305051009 8.651938019 CORE 92 O O 0.0000 92 O -9.509890724 6.021992148 5.647457091 CORE 93 O O 0.0000 93 O 0.744483155 13.358666623 9.283628539 CORE 94 O O 0.0000 94 O -2.129009810 17.870034996 5.377045631 CORE 95 O O 0.0000 95 O -11.761713934 10.656629044 9.321746173 CORE 96 O O 0.0000 96 O 0.679570866 10.684364591 5.385135678 CORE 97 O O 0.0000 97 O -9.048156742 17.934444527 9.382052234 CORE 98 O O 0.0000 98 O -11.810299715 13.372327761 5.354530931 CORE 99 O O 0.0000 99 O -1.970084954 6.072426876 9.202284415 CORE 100 O O 0.0000 100 O -11.883942685 10.814902324 5.379341565 CORE 101 O O 0.0000 101 O -2.131631689 17.847443205 9.213903603 CORE 102 O O 0.0000 102 O 0.669370671 13.328884038 5.390460730 CORE 103 O O 0.0000 103 O -9.116127377 6.090820807 8.818729143 CORE 104 O O 0.0000 104 O -2.048721694 6.101086264 5.486262141 CORE 105 O O 0.0000 105 O -11.733552214 13.300808879 9.132522128 CORE 106 O O 0.0000 106 O -9.045112060 17.787735906 5.300959768 CORE 107 O O 0.0000 107 O 0.623110018 10.719879486 9.152536792 CORE 108 O O 0.0000 108 O2 12.174873105 6.562090583 4.374371754 CORE 109 O2 O2 0.0000 109 O2 13.075720243 7.936022252 3.273182819 CORE 110 O2 O2 0.0000 110 H 11.683560040 5.713046338 4.033338390 CORE 111 H H 0.0000 111 H 12.492556737 8.593089391 3.724846266 CORE 112 H H 0.0000 112 C 13.143575026 6.108035755 5.413918496 CORE 113 C C 0.0000 113 C 12.554472263 4.784573266 5.633273892 CORE 114 C C 0.0000 114 H 12.653728781 4.011516616 4.804187578 CORE 115 H H 0.0000 115 H 11.667862637 4.689205772 6.335461708 CORE 116 H H 0.0000 116 H 14.153994151 6.185461221 4.957913915 CORE 117 H H 0.0000 117 H 13.037125276 6.711998700 6.307008358 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.298262110 4.752500323 3.412125899 CORE 1 Si Si 0.0000 1 Si -2.497889171 12.017364738 7.312313191 CORE 2 Si Si 0.0000 2 Si 1.122600290 4.746629487 3.500312105 CORE 3 Si Si 0.0000 3 Si -8.575768971 12.028604200 7.321866563 CORE 4 Si Si 0.0000 4 Si -13.577737710 7.687120324 11.121015484 CORE 5 Si Si 0.0000 5 Si -3.931351858 14.849260538 7.314414913 CORE 6 Si Si 0.0000 6 Si -7.120484298 9.238934222 7.304853022 CORE 7 Si Si 0.0000 7 Si 2.499989907 16.337736640 3.530315502 CORE 8 Si Si 0.0000 8 Si -13.570076835 16.333018551 3.443359306 CORE 9 Si Si 0.0000 9 Si -3.900177401 9.102845517 7.355480877 CORE 10 Si Si 0.0000 10 Si -7.158313524 14.922820691 7.265274346 CORE 11 Si Si 0.0000 11 Si 2.451545381 7.686089382 3.475674536 CORE 12 Si Si 0.0000 12 Si -10.141692933 4.510441361 5.753217643 CORE 13 Si Si 0.0000 13 Si -0.203823572 12.063944965 9.544986955 CORE 14 Si Si 0.0000 14 Si -10.862694838 11.985879484 9.564654197 CORE 15 Si Si 0.0000 15 Si -1.180888409 4.737430000 5.742379565 CORE 16 Si Si 0.0000 16 Si -10.018401114 4.708454208 8.806175029 CORE 17 Si Si 0.0000 17 Si -0.212646241 12.003757943 5.059644695 CORE 18 Si Si 0.0000 18 Si -10.890496493 12.055804960 5.077103486 CORE 19 Si Si 0.0000 19 Si -1.151808530 4.698155164 8.870936788 CORE 20 Si Si 0.0000 20 Ti -9.040196614 7.675020158 5.048778774 CORE 21 Ti Ti 0.0000 21 Si 0.770858788 14.946040965 8.897276929 CORE 22 Si Si 0.0000 22 Si -2.204952505 16.261020812 5.087272662 CORE 23 Si Si 0.0000 23 Si -11.938126708 9.123017073 8.788871729 CORE 24 Si Si 0.0000 24 Si 0.732822491 9.088852119 5.722358663 CORE 25 Si Si 0.0000 25 Si -8.957546613 16.309924551 9.537021058 CORE 26 Si Si 0.0000 26 Si -11.762346696 14.954855868 5.716608063 CORE 27 Si Si 0.0000 27 Si -2.136007133 7.658257688 9.558889068 CORE 28 Si Si 0.0000 28 Si -12.082987254 9.266940189 5.765219245 CORE 29 Si Si 0.0000 29 Si -2.149204475 16.246334641 9.547081906 CORE 30 Si Si 0.0000 30 Si 0.697701552 14.919420110 5.749119255 CORE 31 Si Si 0.0000 31 Si -9.092989256 7.691896216 9.227420258 CORE 32 Si Si 0.0000 32 Si -2.155294994 7.689713825 5.106492296 CORE 33 Si Si 0.0000 33 Si -11.832857228 14.904634045 8.842808799 CORE 34 Si Si 0.0000 34 Si -8.870165914 16.194996541 5.025926466 CORE 35 Si Si 0.0000 35 Si 0.706069472 9.117974652 8.870606787 CORE 36 Si Si 0.0000 36 O -15.192649280 7.690168898 3.405581866 CORE 37 O O 0.0000 37 O -5.553210137 14.969314862 7.407820051 CORE 38 O O 0.0000 38 O -15.149625755 16.090099318 3.606450127 CORE 39 O O 0.0000 39 O -5.511419033 9.091921449 7.352817971 CORE 40 O O 0.0000 40 O -10.530389573 4.246616285 7.323619874 CORE 41 O O 0.0000 41 O -0.654167276 12.004493960 3.496552771 CORE 42 O O 0.0000 42 O -10.411908124 12.074374174 3.521196046 CORE 43 O O 0.0000 43 O -0.733317846 4.663308392 7.302372841 CORE 44 O O 0.0000 44 O -13.057929224 6.146641315 3.650549012 CORE 45 O O 0.0000 45 O -3.529830451 13.269261354 7.239158085 CORE 46 O O 0.0000 46 O -7.515522406 10.806652623 7.377873177 CORE 47 O O 0.0000 47 O 2.180452639 17.941893489 3.553515307 CORE 48 O O 0.0000 48 O -3.340275181 10.624246473 7.400530968 CORE 49 O O 0.0000 49 O -13.333749200 17.934939530 3.227467476 CORE 50 O O 0.0000 50 O 1.923210015 6.144050986 3.463496827 CORE 51 O O 0.0000 51 O -7.683447558 13.401157243 7.368775325 CORE 52 O O 0.0000 52 O -11.406054048 4.349904391 4.739472298 CORE 53 O O 0.0000 53 O -1.563326524 12.192011434 8.629722435 CORE 54 O O 0.0000 54 O 0.154259012 4.725519964 4.821137370 CORE 55 O O 0.0000 55 O -9.503494409 11.939594904 8.653776760 CORE 56 O O 0.0000 56 O -1.573652194 11.999861351 5.977480378 CORE 57 O O 0.0000 57 O -11.333585574 4.912657177 9.715553312 CORE 58 O O 0.0000 58 O -9.540183010 12.038542732 6.003084825 CORE 59 O O 0.0000 59 O 0.202521292 4.605784062 9.759936478 CORE 60 O O 0.0000 60 O -10.540117891 8.588004159 5.536153693 CORE 61 O O 0.0000 61 O -0.701292395 15.593415488 9.223715163 CORE 62 O O 0.0000 62 O -10.431677869 8.423392141 8.660601194 CORE 63 O O 0.0000 63 O -0.794431066 15.559044836 5.474229045 CORE 64 O O 0.0000 64 O -0.724626232 8.407973413 5.364079966 CORE 65 O O 0.0000 65 O -10.387419035 15.619396473 9.199676433 CORE 66 O O 0.0000 66 O -10.215987908 15.436171709 5.483071902 CORE 67 O O 0.0000 67 O -0.731001955 8.420285908 9.268725620 CORE 68 O O 0.0000 68 O -12.547014804 9.116764535 7.277359323 CORE 69 O O 0.0000 69 O -2.513339282 16.022827307 3.509829799 CORE 70 O O 0.0000 70 O -9.091321330 7.818021885 3.273481782 CORE 71 O O 0.0000 71 O 1.074456941 15.132958065 7.313415934 CORE 72 O O 0.0000 72 O -2.518748158 7.810038425 3.525675784 CORE 73 O O 0.0000 73 O -12.178095415 15.166533600 7.275776717 CORE 74 O O 0.0000 74 O 1.029024189 8.860435556 7.302056000 CORE 75 O O 0.0000 75 O -8.538653333 15.956023776 3.452334985 CORE 76 O O 0.0000 76 O -13.154232279 8.545016950 4.844244900 CORE 77 O O 0.0000 77 O -3.287850688 15.523788686 8.641068828 CORE 78 O O 0.0000 78 O 1.806698631 15.647705295 4.831334312 CORE 79 O O 0.0000 79 O -7.809691686 8.353455133 8.515363903 CORE 80 O O 0.0000 80 O -3.336932016 8.371603148 6.006617236 CORE 81 O O 0.0000 81 O -13.009838413 15.547712255 9.737123804 CORE 82 O O 0.0000 82 O -7.603262978 15.587569158 5.854789356 CORE 83 O O 0.0000 83 O 1.883717289 8.470948966 9.767040098 CORE 84 O O 0.0000 84 O -7.737140461 8.644079087 5.895904919 CORE 85 O O 0.0000 85 O 1.925674088 15.688637826 9.753257950 CORE 86 O O 0.0000 86 O -3.413212837 15.613514682 5.968920737 CORE 87 O O 0.0000 87 O -12.903533960 8.322047863 9.791320585 CORE 88 O O 0.0000 88 O 1.918279366 8.403827301 4.852653538 CORE 89 O O 0.0000 89 O -7.813061216 15.764884454 8.509962627 CORE 90 O O 0.0000 90 O -12.794215616 15.783429739 4.778386256 CORE 91 O O 0.0000 91 O -3.324317976 8.308588531 8.650381811 CORE 92 O O 0.0000 92 O -9.467219759 6.007724005 5.621951386 CORE 93 O O 0.0000 93 O 0.746916630 13.356960350 9.286415291 CORE 94 O O 0.0000 94 O -2.131181944 17.869201968 5.378880491 CORE 95 O O 0.0000 95 O -11.758173320 10.657016224 9.319755365 CORE 96 O O 0.0000 96 O 0.680288688 10.683617331 5.384928838 CORE 97 O O 0.0000 97 O -9.043653515 17.935670213 9.387942578 CORE 98 O O 0.0000 98 O -11.819694525 13.369103472 5.356898981 CORE 99 O O 0.0000 99 O -1.974148828 6.075449071 9.201428604 CORE 100 O O 0.0000 100 O -11.884592381 10.815592501 5.387275892 CORE 101 O O 0.0000 101 O -2.131644583 17.847568902 9.206917135 CORE 102 O O 0.0000 102 O 0.670171822 13.326044767 5.390678676 CORE 103 O O 0.0000 103 O -9.122733842 6.099963933 8.842420755 CORE 104 O O 0.0000 104 O -2.052742076 6.104305941 5.488531754 CORE 105 O O 0.0000 105 O -11.737830472 13.303556906 9.135015317 CORE 106 O O 0.0000 106 O -9.046576379 17.798284902 5.292197090 CORE 107 O O 0.0000 107 O 0.621458258 10.719444737 9.153212313 CORE 108 O O 0.0000 108 O2 12.196469929 6.660775197 4.356545382 CORE 109 O2 O2 0.0000 109 O2 13.069357221 7.957749159 3.223708142 CORE 110 O2 O2 0.0000 110 H 11.789395311 5.662849453 4.021962101 CORE 111 H H 0.0000 111 H 12.545532972 8.647026036 3.705248782 CORE 112 H H 0.0000 112 C 13.174085930 6.102228921 5.406860901 CORE 113 C C 0.0000 113 C 12.557547544 4.825748974 5.592443295 CORE 114 C C 0.0000 114 H 12.687321702 3.930391895 4.865055660 CORE 115 H H 0.0000 115 H 11.719336449 4.608302461 6.418230816 CORE 116 H H 0.0000 116 H 14.186855970 6.161209861 4.978784695 CORE 117 H H 0.0000 117 H 13.047570069 6.662725368 6.262300135 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.277047868 4.749998212 3.418810741 CORE 1 Si Si 0.0000 1 Si -2.500335539 12.018660768 7.309573148 CORE 2 Si Si 0.0000 2 Si 1.122587396 4.749327639 3.499284218 CORE 3 Si Si 0.0000 3 Si -8.573212331 12.030685400 7.320105340 CORE 4 Si Si 0.0000 4 Si -13.577266218 7.682369946 11.124795282 CORE 5 Si Si 0.0000 5 Si -3.934000872 14.847079156 7.313437006 CORE 6 Si Si 0.0000 6 Si -7.118945311 9.228833236 7.293257037 CORE 7 Si Si 0.0000 7 Si 2.502945679 16.338769168 3.529238928 CORE 8 Si Si 0.0000 8 Si -13.561025926 16.331548824 3.447622238 CORE 9 Si Si 0.0000 9 Si -3.887665935 9.102996727 7.352790204 CORE 10 Si Si 0.0000 10 Si -7.152980472 14.910583585 7.275921102 CORE 11 Si Si 0.0000 11 Si 2.447090073 7.685724401 3.474717015 CORE 12 Si Si 0.0000 12 Si -10.124980379 4.520997853 5.750621376 CORE 13 Si Si 0.0000 13 Si -0.209923713 12.062945158 9.539932416 CORE 14 Si Si 0.0000 14 Si -10.858210855 11.989304139 9.555718912 CORE 15 Si Si 0.0000 15 Si -1.183729676 4.738722714 5.740287352 CORE 16 Si Si 0.0000 16 Si -10.010002980 4.709341435 8.792536049 CORE 17 Si Si 0.0000 17 Si -0.218157306 12.004127105 5.060449310 CORE 18 Si Si 0.0000 18 Si -10.889547928 12.060290540 5.066883190 CORE 19 Si Si 0.0000 19 Si -1.156285392 4.698891469 8.873837040 CORE 20 Si Si 0.0000 20 Ti -9.043938334 7.689623300 5.053854766 CORE 21 Ti Ti 0.0000 21 Si 0.767454041 14.947228596 8.897596357 CORE 22 Si Si 0.0000 22 Si -2.206604265 16.261645403 5.086395093 CORE 23 Si Si 0.0000 23 Si -11.918314048 9.119505786 8.790161381 CORE 24 Si Si 0.0000 24 Si 0.731310253 9.087224406 5.717829097 CORE 25 Si Si 0.0000 25 Si -8.955814218 16.301209254 9.526672428 CORE 26 Si Si 0.0000 26 Si -11.763824485 14.957055557 5.719523377 CORE 27 Si Si 0.0000 27 Si -2.136451875 7.657869644 9.558114805 CORE 28 Si Si 0.0000 28 Si -12.040114414 9.246507871 5.756974999 CORE 29 Si Si 0.0000 29 Si -2.153388628 16.246287649 9.549859225 CORE 30 Si Si 0.0000 30 Si 0.696961791 14.920882774 5.748300109 CORE 31 Si Si 0.0000 31 Si -9.072501881 7.686994484 9.236658386 CORE 32 Si Si 0.0000 32 Si -2.156984667 7.688168997 5.097813070 CORE 33 Si Si 0.0000 33 Si -11.830031356 14.902578215 8.839999454 CORE 34 Si Si 0.0000 34 Si -8.855578152 16.185744007 5.023282122 CORE 35 Si Si 0.0000 35 Si 0.704884584 9.116242721 8.870382070 CORE 36 Si Si 0.0000 36 O -15.188065418 7.691739816 3.410856482 CORE 37 O O 0.0000 37 O -5.544912845 14.967818324 7.409678038 CORE 38 O O 0.0000 38 O -15.148206661 16.098229664 3.602838373 CORE 39 O O 0.0000 39 O -5.507657492 9.098262782 7.368399833 CORE 40 O O 0.0000 40 O -10.529991788 4.239094529 7.309995653 CORE 41 O O 0.0000 41 O -0.655893128 12.005043738 3.494704978 CORE 42 O O 0.0000 42 O -10.403855815 12.075357980 3.511635676 CORE 43 O O 0.0000 43 O -0.739860034 4.659238102 7.302281478 CORE 44 O O 0.0000 44 O -13.057195621 6.143887522 3.653028204 CORE 45 O O 0.0000 45 O -3.530754574 13.270577564 7.240543359 CORE 46 O O 0.0000 46 O -7.524533671 10.797952606 7.359044478 CORE 47 O O 0.0000 47 O 2.181289200 17.938716768 3.553252630 CORE 48 O O 0.0000 48 O -3.333047886 10.631771976 7.397995863 CORE 49 O O 0.0000 49 O -13.315992244 17.933297979 3.251323785 CORE 50 O O 0.0000 50 O 1.927669172 6.145843747 3.459762444 CORE 51 O O 0.0000 51 O -7.675446632 13.380776385 7.374692219 CORE 52 O O 0.0000 52 O -11.364789475 4.368415801 4.719900298 CORE 53 O O 0.0000 53 O -1.558899890 12.187399870 8.630045894 CORE 54 O O 0.0000 54 O 0.159053795 4.726547591 4.821331506 CORE 55 O O 0.0000 55 O -9.504385048 11.937353844 8.653196862 CORE 56 O O 0.0000 56 O -1.569767679 12.000858418 5.972123528 CORE 57 O O 0.0000 57 O -11.336596193 4.916557950 9.704119893 CORE 58 O O 0.0000 58 O -9.536373742 12.047816599 5.992719307 CORE 59 O O 0.0000 59 O 0.205111225 4.605481208 9.760958432 CORE 60 O O 0.0000 60 O -10.557009227 8.584737922 5.526516795 CORE 61 O O 0.0000 61 O -0.693916532 15.599211223 9.233051348 CORE 62 O O 0.0000 62 O -10.431793721 8.423987758 8.701407143 CORE 63 O O 0.0000 63 O -0.785366301 15.561858593 5.472264862 CORE 64 O O 0.0000 64 O -0.718408892 8.412463317 5.358868946 CORE 65 O O 0.0000 65 O -10.395473269 15.611642784 9.197691786 CORE 66 O O 0.0000 66 O -10.224818852 15.443834730 5.480674944 CORE 67 O O 0.0000 67 O -0.724819640 8.425390024 9.266643829 CORE 68 O O 0.0000 68 O -12.531190771 9.103697860 7.286282892 CORE 69 O O 0.0000 69 O -2.517246890 16.015917025 3.509522543 CORE 70 O O 0.0000 70 O -9.087358490 7.849952266 3.255279462 CORE 71 O O 0.0000 71 O 1.071641847 15.132689230 7.313096507 CORE 72 O O 0.0000 72 O -2.524100263 7.812577005 3.520747601 CORE 73 O O 0.0000 73 O -12.172380935 15.163242283 7.276920767 CORE 74 O O 0.0000 74 O 1.025935822 8.861293521 7.299035479 CORE 75 O O 0.0000 75 O -8.531762625 15.947257163 3.446979505 CORE 76 O O 0.0000 76 O -13.159263577 8.538236112 4.840570767 CORE 77 O O 0.0000 77 O -3.284632227 15.524876278 8.641123067 CORE 78 O O 0.0000 78 O 1.811673928 15.647094254 4.830150173 CORE 79 O O 0.0000 79 O -7.787506941 8.349881718 8.507877869 CORE 80 O O 0.0000 80 O -3.329344848 8.369737159 5.998564921 CORE 81 O O 0.0000 81 O -13.009767208 15.549138305 9.737786697 CORE 82 O O 0.0000 82 O -7.595455460 15.560339568 5.845208827 CORE 83 O O 0.0000 83 O 1.888358884 8.469751678 9.765867445 CORE 84 O O 0.0000 84 O -7.738742378 8.651856128 5.896772294 CORE 85 O O 0.0000 85 O 1.927265421 15.687625911 9.754534137 CORE 86 O O 0.0000 86 O -3.409207659 15.613924493 5.969567959 CORE 87 O O 0.0000 87 O -12.909901215 8.317371865 9.783837593 CORE 88 O O 0.0000 88 O 1.920103943 8.402293717 4.848873207 CORE 89 O O 0.0000 89 O -7.816319320 15.752117318 8.507918187 CORE 90 O O 0.0000 90 O -12.797448895 15.779870884 4.778079229 CORE 91 O O 0.0000 91 O -3.314641811 8.305062541 8.651932923 CORE 92 O O 0.0000 92 O -9.509751778 6.021945589 5.647374020 CORE 93 O O 0.0000 93 O 0.744491045 13.358661001 9.283637592 CORE 94 O O 0.0000 94 O -2.129016931 17.870032257 5.377051640 CORE 95 O O 0.0000 95 O -11.761702388 10.656630341 9.321739631 CORE 96 O O 0.0000 96 O 0.679573175 10.684362141 5.385134993 CORE 97 O O 0.0000 97 O -9.048142116 17.934448564 9.382071404 CORE 98 O O 0.0000 98 O -11.810330314 13.372317238 5.354538690 CORE 99 O O 0.0000 99 O -1.970098233 6.072436678 9.202281677 CORE 100 O O 0.0000 100 O -11.883944801 10.814904630 5.379367429 CORE 101 O O 0.0000 101 O -2.131631689 17.847443637 9.213880857 CORE 102 O O 0.0000 102 O 0.669373173 13.328874813 5.390461490 CORE 103 O O 0.0000 103 O -9.116148931 6.090850645 8.818806280 CORE 104 O O 0.0000 104 O -2.048734781 6.101096643 5.486269520 CORE 105 O O 0.0000 105 O -11.733566262 13.300817817 9.132530267 CORE 106 O O 0.0000 106 O -9.045116871 17.787770213 5.300931241 CORE 107 O O 0.0000 107 O 0.623104630 10.719878045 9.152538998 CORE 108 O O 0.0000 108 O2 12.174943540 6.562411888 4.374313634 CORE 109 O2 O2 0.0000 109 O2 13.075699459 7.936093028 3.273021698 CORE 110 O2 O2 0.0000 110 H 11.683904710 5.712882875 4.033301343 CORE 111 H H 0.0000 111 H 12.492729361 8.593264962 3.724782441 CORE 112 H H 0.0000 112 C 13.143674327 6.108016728 5.413895446 CORE 113 C C 0.0000 113 C 12.554482271 4.784707323 5.633140917 CORE 114 C C 0.0000 114 H 12.653838283 4.011252394 4.804385822 CORE 115 H H 0.0000 115 H 11.668030257 4.688942270 6.335731232 CORE 116 H H 0.0000 116 H 14.154101150 6.185382228 4.957981847 CORE 117 H H 0.0000 117 H 13.037159339 6.711838264 6.306862756 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.285312252 4.750629145 3.423676317 CORE 1 Si Si 0.0000 1 Si -2.504464075 12.016152314 7.311445817 CORE 2 Si Si 0.0000 2 Si 1.118843751 4.748616848 3.499928473 CORE 3 Si Si 0.0000 3 Si -8.573234654 12.032904261 7.322819215 CORE 4 Si Si 0.0000 4 Si -13.576648083 7.684875949 11.124739825 CORE 5 Si Si 0.0000 5 Si -3.938728106 14.846396762 7.313283188 CORE 6 Si Si 0.0000 6 Si -7.131078044 9.227191253 7.303661047 CORE 7 Si Si 0.0000 7 Si 2.501172293 16.338914469 3.529964048 CORE 8 Si Si 0.0000 8 Si -13.563547541 16.334279409 3.446356702 CORE 9 Si Si 0.0000 9 Si -3.892494588 9.102875643 7.354540092 CORE 10 Si Si 0.0000 10 Si -7.156754330 14.917215664 7.279588389 CORE 11 Si Si 0.0000 11 Si 2.449655373 7.685570596 3.475979509 CORE 12 Si Si 0.0000 12 Si -10.134960609 4.518392388 5.748896820 CORE 13 Si Si 0.0000 13 Si -0.211202514 12.063496810 9.539969082 CORE 14 Si Si 0.0000 14 Si -10.856262728 11.987802555 9.560807075 CORE 15 Si Si 0.0000 15 Si -1.186129857 4.740192729 5.740954124 CORE 16 Si Si 0.0000 16 Si -10.008074867 4.715562261 8.799773480 CORE 17 Si Si 0.0000 17 Si -0.219431681 12.003289897 5.062655784 CORE 18 Si Si 0.0000 18 Si -10.887533792 12.059073791 5.073161655 CORE 19 Si Si 0.0000 19 Si -1.157372132 4.701189611 8.872549062 CORE 20 Si Si 0.0000 20 Ti -9.047143708 7.688515527 5.067349741 CORE 21 Ti Ti 0.0000 21 Si 0.766065738 14.946015595 8.896714376 CORE 22 Si Si 0.0000 22 Si -2.209259245 16.262120224 5.086865524 CORE 23 Si Si 0.0000 23 Si -11.913042770 9.118740652 8.786433844 CORE 24 Si Si 0.0000 24 Si 0.727756360 9.086049893 5.719671565 CORE 25 Si Si 0.0000 25 Si -8.952447382 16.305565533 9.524978833 CORE 26 Si Si 0.0000 26 Si -11.765321327 14.952053065 5.717098120 CORE 27 Si Si 0.0000 27 Si -2.141521084 7.658323564 9.560209985 CORE 28 Si Si 0.0000 28 Si -12.037970955 9.251976967 5.756186663 CORE 29 Si Si 0.0000 29 Si -2.154936660 16.246492915 9.548097242 CORE 30 Si Si 0.0000 30 Si 0.692925052 14.920019475 5.749184372 CORE 31 Si Si 0.0000 31 Si -9.088780471 7.690282486 9.233732346 CORE 32 Si Si 0.0000 32 Si -2.159445084 7.688504428 5.101024913 CORE 33 Si Si 0.0000 33 Si -11.825619156 14.902918403 8.841729183 CORE 34 Si Si 0.0000 34 Si -8.860228215 16.190586207 5.024372768 CORE 35 Si Si 0.0000 35 Si 0.700302262 9.115650564 8.871388429 CORE 36 Si Si 0.0000 36 O -15.190065890 7.692692919 3.408429780 CORE 37 O O 0.0000 37 O -5.547175235 14.969335331 7.405924789 CORE 38 O O 0.0000 38 O -15.151845807 16.091937197 3.604871401 CORE 39 O O 0.0000 39 O -5.503071513 9.093956811 7.359420122 CORE 40 O O 0.0000 40 O -10.527394927 4.250275467 7.316544706 CORE 41 O O 0.0000 41 O -0.654701505 12.004638828 3.495676648 CORE 42 O O 0.0000 42 O -10.411276517 12.073401323 3.514187821 CORE 43 O O 0.0000 43 O -0.735046392 4.661750447 7.302059728 CORE 44 O O 0.0000 44 O -13.058987482 6.147391890 3.652393382 CORE 45 O O 0.0000 45 O -3.529585852 13.269736031 7.239877880 CORE 46 O O 0.0000 46 O -7.523377651 10.806413771 7.369970191 CORE 47 O O 0.0000 47 O 2.182407501 17.937689862 3.553715529 CORE 48 O O 0.0000 48 O -3.337247242 10.630789323 7.399772757 CORE 49 O O 0.0000 49 O -13.328897069 17.932268478 3.234954499 CORE 50 O O 0.0000 50 O 1.925785322 6.147379638 3.462275184 CORE 51 O O 0.0000 51 O -7.683096345 13.389408508 7.367276704 CORE 52 O O 0.0000 52 O -11.395909855 4.360584417 4.734387939 CORE 53 O O 0.0000 53 O -1.557800834 12.189570297 8.633544529 CORE 54 O O 0.0000 54 O 0.158168160 4.725302734 4.819521445 CORE 55 O O 0.0000 55 O -9.506239454 11.938727281 8.656704397 CORE 56 O O 0.0000 56 O -1.567996025 11.999470279 5.972795930 CORE 57 O O 0.0000 57 O -11.338924785 4.912154823 9.714285189 CORE 58 O O 0.0000 58 O -9.538642291 12.039556664 6.000619782 CORE 59 O O 0.0000 59 O 0.205583102 4.605250717 9.761869700 CORE 60 O O 0.0000 60 O -10.554500891 8.584812879 5.532680542 CORE 61 O O 0.0000 61 O -0.693598227 15.594157559 9.225939741 CORE 62 O O 0.0000 62 O -10.442759464 8.426662557 8.677351221 CORE 63 O O 0.0000 63 O -0.785129977 15.557627867 5.475407479 CORE 64 O O 0.0000 64 O -0.716280059 8.412821811 5.365065405 CORE 65 O O 0.0000 65 O -10.394951164 15.615656569 9.198556118 CORE 66 O O 0.0000 66 O -10.224824818 15.440229747 5.483208604 CORE 67 O O 0.0000 67 O -0.724233066 8.424980645 9.266209229 CORE 68 O O 0.0000 68 O -12.546394744 9.110314659 7.299171192 CORE 69 O O 0.0000 69 O -2.513665862 16.021371851 3.508038223 CORE 70 O O 0.0000 70 O -9.090605240 7.829644346 3.245494603 CORE 71 O O 0.0000 71 O 1.074082635 15.132244247 7.312909673 CORE 72 O O 0.0000 72 O -2.520696670 7.811535251 3.523332837 CORE 73 O O 0.0000 73 O -12.174971445 15.165902956 7.273579829 CORE 74 O O 0.0000 74 O 1.028272112 8.861236151 7.300628582 CORE 75 O O 0.0000 75 O -8.536934024 15.953204541 3.452594544 CORE 76 O O 0.0000 76 O -13.167573570 8.531758848 4.828284579 CORE 77 O O 0.0000 77 O -3.285139514 15.525720117 8.643252099 CORE 78 O O 0.0000 78 O 1.808435260 15.647999067 4.830173222 CORE 79 O O 0.0000 79 O -7.797449836 8.358590673 8.507065570 CORE 80 O O 0.0000 80 O -3.333142377 8.369762818 6.000712971 CORE 81 O O 0.0000 81 O -13.012484732 15.549026591 9.738693933 CORE 82 O O 0.0000 82 O -7.600916104 15.580834446 5.848107938 CORE 83 O O 0.0000 83 O 1.886913233 8.469189070 9.768866743 CORE 84 O O 0.0000 84 O -7.732492322 8.647679601 5.897125573 CORE 85 O O 0.0000 85 O 1.926177334 15.688958986 9.754416301 CORE 86 O O 0.0000 86 O -3.410010735 15.614562490 5.967801107 CORE 87 O O 0.0000 87 O -12.909415290 8.319308197 9.789571761 CORE 88 O O 0.0000 88 O 1.920701486 8.401692622 4.849361210 CORE 89 O O 0.0000 89 O -7.816751938 15.762174627 8.511517466 CORE 90 O O 0.0000 90 O -12.794815854 15.783428009 4.777325962 CORE 91 O O 0.0000 91 O -3.320556049 8.305964327 8.654589515 CORE 92 O O 0.0000 92 O -9.486670237 6.002234728 5.632535763 CORE 93 O O 0.0000 93 O 0.747469911 13.358925944 9.285431602 CORE 94 O O 0.0000 94 O -2.129408943 17.870666794 5.379032331 CORE 95 O O 0.0000 95 O -11.760806553 10.658316145 9.320211493 CORE 96 O O 0.0000 96 O 0.680382217 10.683838597 5.385490935 CORE 97 O O 0.0000 97 O -9.047528215 17.934453176 9.387398814 CORE 98 O O 0.0000 98 O -11.817322633 13.374471377 5.357899331 CORE 99 O O 0.0000 99 O -1.971628753 6.072096346 9.200804051 CORE 100 O O 0.0000 100 O -11.884384732 10.825434454 5.380842164 CORE 101 O O 0.0000 101 O -2.130882691 17.847525081 9.209532876 CORE 102 O O 0.0000 102 O 0.671131741 13.328842812 5.391281929 CORE 103 O O 0.0000 103 O -9.125390361 6.085067451 8.827939429 CORE 104 O O 0.0000 104 O -2.050091522 6.100298499 5.489443631 CORE 105 O O 0.0000 105 O -11.735835004 13.302357023 9.135323181 CORE 106 O O 0.0000 106 O -9.042939734 17.787286455 5.294515238 CORE 107 O O 0.0000 107 O 0.622173386 10.719901829 9.152795057 CORE 108 O O 0.0000 108 O2 12.178079826 6.594849668 4.357633214 CORE 109 O2 O2 0.0000 109 O2 13.070572708 7.948443434 3.245393731 CORE 110 O2 O2 0.0000 110 H 11.765621158 5.703676468 4.033824034 CORE 111 H H 0.0000 111 H 12.529612524 8.628440822 3.712697693 CORE 112 H H 0.0000 112 C 13.162168351 6.059141530 5.399040225 CORE 113 C C 0.0000 113 C 12.534452531 4.789648408 5.600101633 CORE 114 C C 0.0000 114 H 12.675990119 3.982714955 4.863374693 CORE 115 H H 0.0000 115 H 11.735834426 4.647858240 6.364942793 CORE 116 H H 0.0000 116 H 14.170358378 6.173879409 4.965689175 CORE 117 H H 0.0000 117 H 13.042346903 6.713755136 6.300962066 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.284636768 4.750577685 3.423278687 CORE 1 Si Si 0.0000 1 Si -2.504126718 12.016357292 7.311292759 CORE 2 Si Si 0.0000 2 Si 1.119149740 4.748674939 3.499875755 CORE 3 Si Si 0.0000 3 Si -8.573232730 12.032722924 7.322597388 CORE 4 Si Si 0.0000 4 Si -13.576698504 7.684671260 11.124744390 CORE 5 Si Si 0.0000 5 Si -3.938341675 14.846452547 7.313295740 CORE 6 Si Si 0.0000 6 Si -7.130086372 9.227325454 7.302810788 CORE 7 Si Si 0.0000 7 Si 2.501317204 16.338902649 3.529904788 CORE 8 Si Si 0.0000 8 Si -13.563341431 16.334056268 3.446460160 CORE 9 Si Si 0.0000 9 Si -3.892099882 9.102885590 7.354397077 CORE 10 Si Si 0.0000 10 Si -7.156446032 14.916673669 7.279288665 CORE 11 Si Si 0.0000 11 Si 2.449445800 7.685583136 3.475876355 CORE 12 Si Si 0.0000 12 Si -10.134145024 4.518605294 5.749037781 CORE 13 Si Si 0.0000 13 Si -0.211098016 12.063451692 9.539966116 CORE 14 Si Si 0.0000 14 Si -10.856421880 11.987925224 9.560391189 CORE 15 Si Si 0.0000 15 Si -1.185933755 4.740072654 5.740899657 CORE 16 Si Si 0.0000 16 Si -10.008232480 4.715053853 8.799181942 CORE 17 Si Si 0.0000 17 Si -0.219327567 12.003358223 5.062475417 CORE 18 Si Si 0.0000 18 Si -10.887698526 12.059173253 5.072648548 CORE 19 Si Si 0.0000 19 Si -1.157283222 4.701001787 8.872654270 CORE 20 Si Si 0.0000 20 Ti -9.046881790 7.688606052 5.066246923 CORE 21 Ti Ti 0.0000 21 Si 0.766179281 14.946114625 8.896786492 CORE 22 Si Si 0.0000 22 Si -2.209042359 16.262081449 5.086827107 CORE 23 Si Si 0.0000 23 Si -11.913473656 9.118803212 8.786738437 CORE 24 Si Si 0.0000 24 Si 0.728046761 9.086145895 5.719521019 CORE 25 Si Si 0.0000 25 Si -8.952722387 16.305209489 9.525117208 CORE 26 Si Si 0.0000 26 Si -11.765198932 14.952461867 5.717296364 CORE 27 Si Si 0.0000 27 Si -2.141106749 7.658286374 9.560038747 CORE 28 Si Si 0.0000 28 Si -12.038146080 9.251529966 5.756251097 CORE 29 Si Si 0.0000 29 Si -2.154810031 16.246476050 9.548241246 CORE 30 Si Si 0.0000 30 Si 0.693254904 14.920089963 5.749112104 CORE 31 Si Si 0.0000 31 Si -9.087450094 7.690013795 9.233971441 CORE 32 Si Si 0.0000 32 Si -2.159243978 7.688477040 5.100762464 CORE 33 Si Si 0.0000 33 Si -11.825979799 14.902890582 8.841587841 CORE 34 Si Si 0.0000 34 Si -8.859848328 16.190190523 5.024283612 CORE 35 Si Si 0.0000 35 Si 0.700676761 9.115698997 8.871306195 CORE 36 Si Si 0.0000 36 O -15.189902504 7.692614935 3.408628100 CORE 37 O O 0.0000 37 O -5.546990488 14.969211364 7.406231512 CORE 38 O O 0.0000 38 O -15.151548286 16.092451515 3.604705260 CORE 39 O O 0.0000 39 O -5.503446204 9.094308675 7.360153990 CORE 40 O O 0.0000 40 O -10.527607194 4.249361717 7.316009538 CORE 41 O O 0.0000 41 O -0.654798882 12.004671838 3.495597228 CORE 42 O O 0.0000 42 O -10.410670121 12.073561327 3.513979308 CORE 43 O O 0.0000 43 O -0.735439751 4.661545181 7.302077833 CORE 44 O O 0.0000 44 O -13.058841031 6.147105469 3.652445263 CORE 45 O O 0.0000 45 O -3.529681305 13.269804934 7.239932271 CORE 46 O O 0.0000 46 O -7.523472141 10.805722296 7.369077256 CORE 47 O O 0.0000 47 O 2.182316090 17.937773756 3.553677646 CORE 48 O O 0.0000 48 O -3.336903919 10.630869614 7.399627535 CORE 49 O O 0.0000 49 O -13.327842467 17.932352660 3.236292305 CORE 50 O O 0.0000 50 O 1.925939278 6.147254085 3.462069789 CORE 51 O O 0.0000 51 O -7.682471089 13.388703051 7.367882771 CORE 52 O O 0.0000 52 O -11.393366494 4.361224431 4.733203951 CORE 53 O O 0.0000 53 O -1.557890706 12.189392852 8.633258650 CORE 54 O O 0.0000 54 O 0.158240520 4.725404502 4.819669329 CORE 55 O O 0.0000 55 O -9.506087806 11.938614990 8.656417757 CORE 56 O O 0.0000 56 O -1.568140936 11.999583723 5.972740929 CORE 57 O O 0.0000 57 O -11.338734457 4.912514615 9.713454481 CORE 58 O O 0.0000 58 O -9.538456966 12.040231707 5.999974082 CORE 59 O O 0.0000 59 O 0.205544613 4.605269600 9.761795226 CORE 60 O O 0.0000 60 O -10.554705845 8.584806825 5.532176792 CORE 61 O O 0.0000 61 O -0.693624207 15.594570541 9.226520933 CORE 62 O O 0.0000 62 O -10.441863245 8.426444030 8.679317154 CORE 63 O O 0.0000 63 O -0.785149222 15.557973676 5.475150583 CORE 64 O O 0.0000 64 O -0.716454029 8.412792549 5.364558993 CORE 65 O O 0.0000 65 O -10.394993887 15.615328489 9.198485447 CORE 66 O O 0.0000 66 O -10.224824241 15.440524385 5.483001536 CORE 67 O O 0.0000 67 O -0.724280985 8.425014087 9.266244755 CORE 68 O O 0.0000 68 O -12.545152123 9.109773818 7.298117972 CORE 69 O O 0.0000 69 O -2.513958572 16.020926003 3.508159558 CORE 70 O O 0.0000 70 O -9.090339857 7.831303915 3.246294274 CORE 71 O O 0.0000 71 O 1.073883068 15.132280572 7.312924964 CORE 72 O O 0.0000 72 O -2.520974946 7.811620298 3.523121585 CORE 73 O O 0.0000 73 O -12.174759755 15.165685581 7.273852852 CORE 74 O O 0.0000 74 O 1.028081206 8.861240763 7.300498347 CORE 75 O O 0.0000 75 O -8.536511413 15.952718476 3.452135676 CORE 76 O O 0.0000 76 O -13.166894430 8.532288157 4.829288655 CORE 77 O O 0.0000 77 O -3.285098138 15.525651214 8.643078046 CORE 78 O O 0.0000 78 O 1.808699873 15.647925120 4.830171321 CORE 79 O O 0.0000 79 O -7.796637138 8.357878873 8.507131905 CORE 80 O O 0.0000 80 O -3.332832155 8.369760799 6.000537396 CORE 81 O O 0.0000 81 O -13.012262650 15.549035816 9.738619763 CORE 82 O O 0.0000 82 O -7.600469822 15.579159598 5.847870973 CORE 83 O O 0.0000 83 O 1.887031395 8.469235053 9.768621638 CORE 84 O O 0.0000 84 O -7.733003265 8.648020942 5.897096665 CORE 85 O O 0.0000 85 O 1.926266243 15.688850155 9.754425963 CORE 86 O O 0.0000 86 O -3.409945111 15.614510309 5.967945492 CORE 87 O O 0.0000 87 O -12.909455126 8.319150067 9.789103157 CORE 88 O O 0.0000 88 O 1.920652797 8.401741776 4.849321348 CORE 89 O O 0.0000 89 O -7.816716528 15.761352699 8.511223371 CORE 90 O O 0.0000 90 O -12.795031008 15.783137408 4.777387504 CORE 91 O O 0.0000 91 O -3.320072626 8.305890668 8.654372405 CORE 92 O O 0.0000 92 O -9.488556589 6.003845575 5.633748430 CORE 93 O O 0.0000 93 O 0.747226467 13.358904322 9.285285010 CORE 94 O O 0.0000 94 O -2.129376804 17.870615045 5.378870450 CORE 95 O O 0.0000 95 O -11.760879875 10.658178340 9.320336328 CORE 96 O O 0.0000 96 O 0.680316015 10.683881409 5.385461875 CORE 97 O O 0.0000 97 O -9.047578250 17.934452888 9.386963453 CORE 98 O O 0.0000 98 O -11.816751070 13.374295373 5.357624634 CORE 99 O O 0.0000 99 O -1.971503663 6.072124167 9.200924854 CORE 100 O O 0.0000 100 O -11.884348745 10.824573894 5.380721590 CORE 101 O O 0.0000 101 O -2.130943889 17.847518450 9.209888209 CORE 102 O O 0.0000 102 O 0.670987984 13.328845407 5.391214909 CORE 103 O O 0.0000 103 O -9.124635012 6.085539966 8.827193085 CORE 104 O O 0.0000 104 O -2.049980674 6.100363653 5.489184225 CORE 105 O O 0.0000 105 O -11.735649678 13.302231326 9.135094888 CORE 106 O O 0.0000 106 O -9.043117554 17.787325951 5.295039603 CORE 107 O O 0.0000 107 O 0.622249594 10.719899955 9.152774137 CORE 108 O O 0.0000 108 O2 12.177823489 6.592198653 4.358996427 CORE 109 O2 O2 0.0000 109 O2 13.070991662 7.947434114 3.247651629 CORE 110 O2 O2 0.0000 110 H 11.758942910 5.704428773 4.033781282 CORE 111 H H 0.0000 111 H 12.526598249 8.625566091 3.713685261 CORE 112 H H 0.0000 112 C 13.160657075 6.063135855 5.400254261 CORE 113 C C 0.0000 113 C 12.536089281 4.789244651 5.602801738 CORE 114 C C 0.0000 114 H 12.674179784 3.985047115 4.858553923 CORE 115 H H 0.0000 115 H 11.730293340 4.651215722 6.362555496 CORE 116 H H 0.0000 116 H 14.169029734 6.174819539 4.965059297 CORE 117 H H 0.0000 117 H 13.041922945 6.713598448 6.301444288 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.295401021 4.744838023 3.431331307 CORE 1 Si Si 0.0000 1 Si -2.504263162 12.012925430 7.313310117 CORE 2 Si Si 0.0000 2 Si 1.121357861 4.750054430 3.499750769 CORE 3 Si Si 0.0000 3 Si -8.574116633 12.042373161 7.331695620 CORE 4 Si Si 0.0000 4 Si -13.586358311 7.677815177 11.115427451 CORE 5 Si Si 0.0000 5 Si -3.941273391 14.845172806 7.312871409 CORE 6 Si Si 0.0000 6 Si -7.130141219 9.227795663 7.303821103 CORE 7 Si Si 0.0000 7 Si 2.499529577 16.337593069 3.530464907 CORE 8 Si Si 0.0000 8 Si -13.565582076 16.332928027 3.447970497 CORE 9 Si Si 0.0000 9 Si -3.887219461 9.101702139 7.355383352 CORE 10 Si Si 0.0000 10 Si -7.162510763 14.926843269 7.284417755 CORE 11 Si Si 0.0000 11 Si 2.446209827 7.685434088 3.477463601 CORE 12 Si Si 0.0000 12 Si -10.140257674 4.511118998 5.743326283 CORE 13 Si Si 0.0000 13 Si -0.210968115 12.064617124 9.539494240 CORE 14 Si Si 0.0000 14 Si -10.858677920 11.993125775 9.559164449 CORE 15 Si Si 0.0000 15 Si -1.185548287 4.741262014 5.741200066 CORE 16 Si Si 0.0000 16 Si -10.009473754 4.712536030 8.808253016 CORE 17 Si Si 0.0000 17 Si -0.219059683 12.003189426 5.064789076 CORE 18 Si Si 0.0000 18 Si -10.886212076 12.074550322 5.074281133 CORE 19 Si Si 0.0000 19 Si -1.156839828 4.703245874 8.872583979 CORE 20 Si Si 0.0000 20 Ti -9.046264039 7.684764379 5.066179142 CORE 21 Ti Ti 0.0000 21 Si 0.768307152 14.944923246 8.895019868 CORE 22 Si Si 0.0000 22 Si -2.206886006 16.262654290 5.087236528 CORE 23 Si Si 0.0000 23 Si -11.913040268 9.121682268 8.794048516 CORE 24 Si Si 0.0000 24 Si 0.731526755 9.084662762 5.720000806 CORE 25 Si Si 0.0000 25 Si -8.954059114 16.307649472 9.527878704 CORE 26 Si Si 0.0000 26 Si -11.770942279 14.955876720 5.717706849 CORE 27 Si Si 0.0000 27 Si -2.144624270 7.659452094 9.559768995 CORE 28 Si Si 0.0000 28 Si -12.029708687 9.242873626 5.755896372 CORE 29 Si Si 0.0000 29 Si -2.151502468 16.247028999 9.545271389 CORE 30 Si Si 0.0000 30 Si 0.693763345 14.919180969 5.750672648 CORE 31 Si Si 0.0000 31 Si -9.100855278 7.685637480 9.233541177 CORE 32 Si Si 0.0000 32 Si -2.159676211 7.689471657 5.104268782 CORE 33 Si Si 0.0000 33 Si -11.825503303 14.906806635 8.838578046 CORE 34 Si Si 0.0000 34 Si -8.864904836 16.189961184 5.023517565 CORE 35 Si Si 0.0000 35 Si 0.700881331 9.114028040 8.873873402 CORE 36 Si Si 0.0000 36 O -15.184153192 7.694966556 3.406877223 CORE 37 O O 0.0000 37 O -5.549277319 14.971128525 7.401332464 CORE 38 O O 0.0000 38 O -15.153672501 16.085838032 3.606477133 CORE 39 O O 0.0000 39 O -5.519994025 9.092631808 7.353521334 CORE 40 O O 0.0000 40 O -10.521690839 4.265675023 7.313881800 CORE 41 O O 0.0000 41 O -0.654361838 12.004288262 3.496600392 CORE 42 O O 0.0000 42 O -10.416353232 12.070646810 3.519433150 CORE 43 O O 0.0000 43 O -0.731842750 4.664097888 7.300948085 CORE 44 O O 0.0000 44 O -13.061158653 6.149376944 3.653312942 CORE 45 O O 0.0000 45 O -3.531375596 13.272823525 7.239768564 CORE 46 O O 0.0000 46 O -7.522592472 10.806136431 7.378432687 CORE 47 O O 0.0000 47 O 2.181992396 17.938657668 3.554438367 CORE 48 O O 0.0000 48 O -3.339859884 10.635007077 7.401717846 CORE 49 O O 0.0000 49 O -13.337341005 17.938385950 3.222797710 CORE 50 O O 0.0000 50 O 1.923245617 6.147231022 3.464574237 CORE 51 O O 0.0000 51 O -7.692775205 13.391371364 7.357944018 CORE 52 O O 0.0000 52 O -11.416074883 4.360634580 4.756133397 CORE 53 O O 0.0000 53 O -1.560849942 12.189932828 8.633550463 CORE 54 O O 0.0000 54 O 0.153796951 4.723915459 4.820892113 CORE 55 O O 0.0000 55 O -9.505454468 11.940058482 8.660488151 CORE 56 O O 0.0000 56 O -1.569431669 11.997150659 5.976688314 CORE 57 O O 0.0000 57 O -11.339731710 4.906174003 9.722547387 CORE 58 O O 0.0000 58 O -9.540760924 12.029929347 6.005845864 CORE 59 O O 0.0000 59 O 0.203140390 4.604755426 9.760361113 CORE 60 O O 0.0000 60 O -10.567573914 8.586502431 5.539819839 CORE 61 O O 0.0000 61 O -0.697705786 15.593311270 9.221516373 CORE 62 O O 0.0000 62 O -10.444373698 8.422975843 8.664679119 CORE 63 O O 0.0000 63 O -0.790557521 15.556957149 5.477600183 CORE 64 O O 0.0000 64 O -0.720104915 8.411097520 5.370738791 CORE 65 O O 0.0000 65 O -10.395189604 15.618468164 9.198623442 CORE 66 O O 0.0000 66 O -10.229626529 15.438072870 5.486108323 CORE 67 O O 0.0000 67 O -0.729938308 8.423108747 9.265997140 CORE 68 O O 0.0000 68 O -12.560777359 9.116195729 7.295940483 CORE 69 O O 0.0000 69 O -2.510439896 16.026805487 3.507562164 CORE 70 O O 0.0000 70 O -9.098527841 7.817975325 3.237136173 CORE 71 O O 0.0000 71 O 1.076105623 15.130980218 7.311975887 CORE 72 O O 0.0000 72 O -2.519320299 7.811584550 3.525728730 CORE 73 O O 0.0000 73 O -12.173656464 15.166915447 7.275743093 CORE 74 O O 0.0000 74 O 1.029403884 8.861818795 7.301682714 CORE 75 O O 0.0000 75 O -8.541337372 15.956457227 3.449408413 CORE 76 O O 0.0000 76 O -13.162967962 8.537029166 4.833474070 CORE 77 O O 0.0000 77 O -3.289878487 15.524342500 8.641407121 CORE 78 O O 0.0000 78 O 1.803584091 15.648405995 4.830719801 CORE 79 O O 0.0000 79 O -7.811692735 8.364422588 8.510150525 CORE 80 O O 0.0000 80 O -3.333261886 8.367441468 5.997520678 CORE 81 O O 0.0000 81 O -13.012782253 15.547047735 9.737379787 CORE 82 O O 0.0000 82 O -7.596855694 15.592806321 5.859778017 CORE 83 O O 0.0000 83 O 1.883834681 8.469358299 9.771007489 CORE 84 O O 0.0000 84 O -7.723816297 8.647843929 5.902133632 CORE 85 O O 0.0000 85 O 1.923086657 15.689987910 9.753778969 CORE 86 O O 0.0000 86 O -3.412742115 15.613449960 5.968812639 CORE 87 O O 0.0000 87 O -12.903399633 8.325031137 9.785922427 CORE 88 O O 0.0000 88 O 1.919887634 8.401419174 4.850826056 CORE 89 O O 0.0000 89 O -7.812168076 15.767706140 8.511353454 CORE 90 O O 0.0000 90 O -12.792698567 15.788533999 4.773899063 CORE 91 O O 0.0000 91 O -3.324255624 8.304612224 8.662773587 CORE 92 O O 0.0000 92 O -9.473995961 5.985831041 5.623992326 CORE 93 O O 0.0000 93 O 0.749380896 13.357467460 9.287432832 CORE 94 O O 0.0000 94 O -2.130104441 17.871072713 5.381307574 CORE 95 O O 0.0000 95 O -11.759557197 10.657834981 9.319145038 CORE 96 O O 0.0000 96 O 0.680182458 10.683248026 5.386468234 CORE 97 O O 0.0000 97 O -9.050450501 17.940056042 9.391520176 CORE 98 O O 0.0000 98 O -11.817725229 13.365355495 5.358839811 CORE 99 O O 0.0000 99 O -1.974211180 6.073477134 9.199733107 CORE 100 O O 0.0000 100 O -11.890670006 10.827120835 5.381906718 CORE 101 O O 0.0000 101 O -2.130248198 17.847282336 9.206275161 CORE 102 O O 0.0000 102 O 0.671713312 13.327395716 5.392055278 CORE 103 O O 0.0000 103 O -9.130444368 6.088678920 8.827349489 CORE 104 O O 0.0000 104 O -2.052270969 6.100802006 5.492862162 CORE 105 O O 0.0000 105 O -11.732714883 13.297659691 9.140839554 CORE 106 O O 0.0000 106 O -9.048102087 17.792820130 5.292703199 CORE 107 O O 0.0000 107 O 0.620249699 10.720504653 9.152710845 CORE 108 O O 0.0000 108 O2 12.196780151 6.580125586 4.347621508 CORE 109 O2 O2 0.0000 109 O2 13.067344818 7.954768046 3.224995663 CORE 110 O2 O2 0.0000 110 H 11.833098362 5.718301087 4.029197629 CORE 111 H H 0.0000 111 H 12.562377929 8.660658201 3.704904555 CORE 112 H H 0.0000 112 C 13.166202588 6.060878507 5.419410298 CORE 113 C C 0.0000 113 C 12.502849113 4.761044372 5.586866901 CORE 114 C C 0.0000 114 H 12.699468099 3.955531348 4.904221188 CORE 115 H H 0.0000 115 H 11.809194308 4.625819831 6.376590507 CORE 116 H H 0.0000 116 H 14.187580721 6.162100259 4.957576915 CORE 117 H H 0.0000 117 H 13.053451014 6.715893996 6.284938757 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.290370108 4.747520462 3.427567712 CORE 1 Si Si 0.0000 1 Si -2.504199462 12.014529359 7.312367279 CORE 2 Si Si 0.0000 2 Si 1.120325775 4.749409658 3.499809192 CORE 3 Si Si 0.0000 3 Si -8.573703452 12.037862932 7.327443338 CORE 4 Si Si 0.0000 4 Si -13.581843537 7.681019574 11.119781898 CORE 5 Si Si 0.0000 5 Si -3.939903179 14.845770874 7.313069729 CORE 6 Si Si 0.0000 6 Si -7.130115624 9.227575838 7.303348923 CORE 7 Si Si 0.0000 7 Si 2.500364984 16.338205119 3.530203143 CORE 8 Si Si 0.0000 8 Si -13.564534787 16.333455318 3.447264547 CORE 9 Si Si 0.0000 9 Si -3.889500519 9.102255233 7.354922355 CORE 10 Si Si 0.0000 10 Si -7.159676232 14.922090152 7.282020569 CORE 11 Si Si 0.0000 11 Si 2.447722257 7.685503855 3.476721745 CORE 12 Si Si 0.0000 12 Si -10.137400819 4.514617888 5.745995731 CORE 13 Si Si 0.0000 13 Si -0.211028735 12.064072391 9.539714773 CORE 14 Si Si 0.0000 14 Si -10.857623511 11.990695161 9.559737805 CORE 15 Si Si 0.0000 15 Si -1.185728416 4.740706038 5.741059636 CORE 16 Si Si 0.0000 16 Si -10.008893723 4.713712705 8.804013438 CORE 17 Si Si 0.0000 17 Si -0.219184773 12.003268419 5.063707710 CORE 18 Si Si 0.0000 18 Si -10.886906805 12.067363421 5.073518129 CORE 19 Si Si 0.0000 19 Si -1.157047092 4.702197057 8.872616842 CORE 20 Si Si 0.0000 20 Ti -9.046552708 7.686559879 5.066210788 CORE 21 Ti Ti 0.0000 21 Si 0.767312593 14.945480088 8.895845556 CORE 22 Si Si 0.0000 22 Si -2.207893843 16.262386609 5.087045130 CORE 23 Si Si 0.0000 23 Si -11.913242721 9.120336652 8.790631963 CORE 24 Si Si 0.0000 24 Si 0.729900204 9.085355967 5.719776545 CORE 25 Si Si 0.0000 25 Si -8.953434435 16.306509122 9.526588064 CORE 26 Si Si 0.0000 26 Si -11.768258047 14.954280720 5.717514995 CORE 27 Si Si 0.0000 27 Si -2.142980207 7.658907217 9.559895046 CORE 28 Si Si 0.0000 28 Si -12.033652090 9.246919411 5.756062133 CORE 29 Si Si 0.0000 29 Si -2.153048384 16.246770543 9.546659401 CORE 30 Si Si 0.0000 30 Si 0.693525675 14.919605916 5.749943268 CORE 31 Si Si 0.0000 31 Si -9.094590019 7.687682788 9.233742312 CORE 32 Si Si 0.0000 32 Si -2.159474143 7.689006781 5.102630035 CORE 33 Si Si 0.0000 33 Si -11.825725963 14.904976395 8.839984696 CORE 34 Si Si 0.0000 34 Si -8.862541604 16.190068286 5.023875561 CORE 35 Si Si 0.0000 35 Si 0.700785685 9.114809031 8.872673516 CORE 36 Si Si 0.0000 36 O -15.186840310 7.693867576 3.407695532 CORE 37 O O 0.0000 37 O -5.548208476 14.970232504 7.403622161 CORE 38 O O 0.0000 38 O -15.152679674 16.088928985 3.605649011 CORE 39 O O 0.0000 39 O -5.512260021 9.093415537 7.356621275 CORE 40 O O 0.0000 40 O -10.524455897 4.258050634 7.314876215 CORE 41 O O 0.0000 41 O -0.654566216 12.004467581 3.496131559 CORE 42 O O 0.0000 42 O -10.413697098 12.072009003 3.516884199 CORE 43 O O 0.0000 43 O -0.733523763 4.662904780 7.301476102 CORE 44 O O 0.0000 44 O -13.060075377 6.148315298 3.652907401 CORE 45 O O 0.0000 45 O -3.530583683 13.271412610 7.239845093 CORE 46 O O 0.0000 46 O -7.523003729 10.805942841 7.374060211 CORE 47 O O 0.0000 47 O 2.182143658 17.938244541 3.554082882 CORE 48 O O 0.0000 48 O -3.338478317 10.633073339 7.400740851 CORE 49 O O 0.0000 49 O -13.332901670 17.935566138 3.229104702 CORE 50 O O 0.0000 50 O 1.924504596 6.147241833 3.463403714 CORE 51 O O 0.0000 51 O -7.687959253 13.390124344 7.362589136 CORE 52 O O 0.0000 52 O -11.405461700 4.360910334 4.745416806 CORE 53 O O 0.0000 53 O -1.559466835 12.189680426 8.633414066 CORE 54 O O 0.0000 54 O 0.155873824 4.724611403 4.820320583 CORE 55 O O 0.0000 55 O -9.505750449 11.939383872 8.658585738 CORE 56 O O 0.0000 56 O -1.568828352 11.998287838 5.974843412 CORE 57 O O 0.0000 57 O -11.339265607 4.909137385 9.718297539 CORE 58 O O 0.0000 58 O -9.539684191 12.034744447 6.003101561 CORE 59 O O 0.0000 59 O 0.204264080 4.604995720 9.761031385 CORE 60 O O 0.0000 60 O -10.561559796 8.585709908 5.536247718 CORE 61 O O 0.0000 61 O -0.695798072 15.593899824 9.223855364 CORE 62 O O 0.0000 62 O -10.443200357 8.424596781 8.671520517 CORE 63 O O 0.0000 63 O -0.788029940 15.557432259 5.476455297 CORE 64 O O 0.0000 64 O -0.718398500 8.411889754 5.367850483 CORE 65 O O 0.0000 65 O -10.395098000 15.617000743 9.198558933 CORE 66 O O 0.0000 66 O -10.227382228 15.439218697 5.484656257 CORE 67 O O 0.0000 67 O -0.727294298 8.423999290 9.266112846 CORE 68 O O 0.0000 68 O -12.553474625 9.113194292 7.296958176 CORE 69 O O 0.0000 69 O -2.512084344 16.024057605 3.507841348 CORE 70 O O 0.0000 70 O -9.094700867 7.824204800 3.241416450 CORE 71 O O 0.0000 71 O 1.075066801 15.131587944 7.312419464 CORE 72 O O 0.0000 72 O -2.520093545 7.811601271 3.524510206 CORE 73 O O 0.0000 73 O -12.174172026 15.166340587 7.274859667 CORE 74 O O 0.0000 74 O 1.028785749 8.861548662 7.301129213 CORE 75 O O 0.0000 75 O -8.539081909 15.954709872 3.450683078 CORE 76 O O 0.0000 76 O -13.164803123 8.534813332 4.831517950 CORE 77 O O 0.0000 77 O -3.287644386 15.524954117 8.642188078 CORE 78 O O 0.0000 78 O 1.805975036 15.648181270 4.830463438 CORE 79 O O 0.0000 79 O -7.804656154 8.361364357 8.508739691 CORE 80 O O 0.0000 80 O -3.333060973 8.368525456 5.998930600 CORE 81 O O 0.0000 81 O -13.012539387 15.547976909 9.737959305 CORE 82 O O 0.0000 82 O -7.598544789 15.586428231 5.854213033 CORE 83 O O 0.0000 83 O 1.885328828 8.469300640 9.769892424 CORE 84 O O 0.0000 84 O -7.728109951 8.647926669 5.899779503 CORE 85 O O 0.0000 85 O 1.924572722 15.689456151 9.754081356 CORE 86 O O 0.0000 86 O -3.411434832 15.613945539 5.968407402 CORE 87 O O 0.0000 87 O -12.906229738 8.322282390 9.787409030 CORE 88 O O 0.0000 88 O 1.920245198 8.401569953 4.850122769 CORE 89 O O 0.0000 89 O -7.814293830 15.764736703 8.511292596 CORE 90 O O 0.0000 90 O -12.793788771 15.786011708 4.775529518 CORE 91 O O 0.0000 91 O -3.322300569 8.305209715 8.658847046 CORE 92 O O 0.0000 92 O -9.480801223 5.994250547 5.628552092 CORE 93 O O 0.0000 93 O 0.748374021 13.358139043 9.286428984 CORE 94 O O 0.0000 94 O -2.129764390 17.870858799 5.380168545 CORE 95 O O 0.0000 95 O -11.760175332 10.657995417 9.319701810 CORE 96 O O 0.0000 96 O 0.680245003 10.683544104 5.385997880 CORE 97 O O 0.0000 97 O -9.049108193 17.937437172 9.389390460 CORE 98 O O 0.0000 98 O -11.817269903 13.369533752 5.358271856 CORE 99 O O 0.0000 99 O -1.972945851 6.072844904 9.200290107 CORE 100 O O 0.0000 100 O -11.887715581 10.825930465 5.381352837 CORE 101 O O 0.0000 101 O -2.130573239 17.847392753 9.207963811 CORE 102 O O 0.0000 102 O 0.671374415 13.328073209 5.391662518 CORE 103 O O 0.0000 103 O -9.127729345 6.087211932 8.827276384 CORE 104 O O 0.0000 104 O -2.051200586 6.100597172 5.491143236 CORE 105 O O 0.0000 105 O -11.734086443 13.299796244 9.138154663 CORE 106 O O 0.0000 106 O -9.045772533 17.790252288 5.293795139 CORE 107 O O 0.0000 107 O 0.621184408 10.720221980 9.152740437 CORE 108 O O 0.0000 108 O2 12.187920340 6.585768237 4.352937811 CORE 109 O2 O2 0.0000 109 O2 13.069049308 7.951340365 3.235584453 CORE 110 O2 O2 0.0000 110 H 11.798440062 5.711817625 4.031339898 CORE 111 H H 0.0000 111 H 12.545655368 8.644257109 3.709008420 CORE 112 H H 0.0000 112 C 13.163610730 6.061933522 5.410457288 CORE 113 C C 0.0000 113 C 12.518384670 4.774224491 5.594314443 CORE 114 C C 0.0000 114 H 12.687649052 3.969326255 4.882877467 CORE 115 H H 0.0000 115 H 11.772318072 4.637689217 6.370030956 CORE 116 H H 0.0000 116 H 14.178910469 6.168044899 4.961073953 CORE 117 H H 0.0000 117 H 13.048063115 6.714821106 6.292653007 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.294015220 4.745127039 3.433453721 CORE 1 Si Si 0.0000 1 Si -2.504261430 12.017431190 7.313204986 CORE 2 Si Si 0.0000 2 Si 1.120321734 4.749557409 3.499896599 CORE 3 Si Si 0.0000 3 Si -8.574848888 12.038185823 7.332625602 CORE 4 Si Si 0.0000 4 Si -13.580631130 7.682392433 11.117032041 CORE 5 Si Si 0.0000 5 Si -3.941065550 14.845746657 7.312198018 CORE 6 Si Si 0.0000 6 Si -7.131578403 9.230250637 7.303770439 CORE 7 Si Si 0.0000 7 Si 2.498560229 16.337070679 3.530533220 CORE 8 Si Si 0.0000 8 Si -13.566385151 16.333285368 3.445597045 CORE 9 Si Si 0.0000 9 Si -3.891928605 9.101007205 7.355211657 CORE 10 Si Si 0.0000 10 Si -7.160095763 14.923608313 7.284704319 CORE 11 Si Si 0.0000 11 Si 2.446877036 7.685842602 3.477598401 CORE 12 Si Si 0.0000 12 Si -10.137615781 4.512393550 5.744327164 CORE 13 Si Si 0.0000 13 Si -0.211816993 12.064496329 9.539872090 CORE 14 Si Si 0.0000 14 Si -10.858828220 11.990755415 9.559919161 CORE 15 Si Si 0.0000 15 Si -1.186392353 4.740967665 5.741967482 CORE 16 Si Si 0.0000 16 Si -10.012933157 4.712732503 8.806221128 CORE 17 Si Si 0.0000 17 Si -0.219586984 12.002879509 5.064775306 CORE 18 Si Si 0.0000 18 Si -10.887884813 12.068317388 5.074631825 CORE 19 Si Si 0.0000 19 Si -1.157716418 4.703194990 8.871577544 CORE 20 Si Si 0.0000 20 Ti -9.045243693 7.682317621 5.058447091 CORE 21 Ti Ti 0.0000 21 Si 0.767432102 14.944640285 8.894759017 CORE 22 Si Si 0.0000 22 Si -2.208273346 16.262999379 5.088131517 CORE 23 Si Si 0.0000 23 Si -11.916109968 9.124468061 8.788224735 CORE 24 Si Si 0.0000 24 Si 0.731984198 9.085102844 5.720633346 CORE 25 Si Si 0.0000 25 Si -8.956097113 16.309164317 9.527229352 CORE 26 Si Si 0.0000 26 Si -11.773136929 14.954210087 5.718630822 CORE 27 Si Si 0.0000 27 Si -2.143631058 7.657827841 9.561880226 CORE 28 Si Si 0.0000 28 Si -12.034767890 9.245188922 5.759874262 CORE 29 Si Si 0.0000 29 Si -2.153303182 16.246727299 9.543778929 CORE 30 Si Si 0.0000 30 Si 0.692711052 14.918848710 5.750478056 CORE 31 Si Si 0.0000 31 Si -9.097825992 7.683866773 9.230630884 CORE 32 Si Si 0.0000 32 Si -2.158053702 7.687431971 5.102441452 CORE 33 Si Si 0.0000 33 Si -11.826965120 14.903883325 8.839217660 CORE 34 Si Si 0.0000 34 Si -8.863330054 16.188947107 5.025060841 CORE 35 Si Si 0.0000 35 Si 0.700321699 9.114280442 8.873597869 CORE 36 Si Si 0.0000 36 O -15.191682241 7.695634103 3.406130347 CORE 37 O O 0.0000 37 O -5.551867059 14.971383666 7.400653216 CORE 38 O O 0.0000 38 O -15.152779361 16.084876569 3.606701546 CORE 39 O O 0.0000 39 O -5.514131554 9.092220411 7.353880775 CORE 40 O O 0.0000 40 O -10.519543338 4.269407720 7.312292500 CORE 41 O O 0.0000 41 O -0.654462295 12.004378498 3.496746679 CORE 42 O O 0.0000 42 O -10.415150255 12.071293600 3.516604482 CORE 43 O O 0.0000 43 O -0.732020762 4.664591881 7.301634865 CORE 44 O O 0.0000 44 O -13.061215233 6.145313429 3.653639976 CORE 45 O O 0.0000 45 O -3.530956835 13.271034799 7.240058779 CORE 46 O O 0.0000 46 O -7.524581590 10.805795955 7.379058001 CORE 47 O O 0.0000 47 O 2.181949866 17.938631433 3.554713825 CORE 48 O O 0.0000 48 O -3.341300339 10.633885466 7.402380587 CORE 49 O O 0.0000 49 O -13.339764857 17.936720471 3.224105771 CORE 50 O O 0.0000 50 O 1.923649753 6.148074572 3.464871527 CORE 51 O O 0.0000 51 O -7.691948651 13.397057547 7.355845871 CORE 52 O O 0.0000 52 O -11.418174850 4.364215922 4.759653256 CORE 53 O O 0.0000 53 O -1.561671877 12.189159910 8.633543312 CORE 54 O O 0.0000 54 O 0.154900434 4.723947604 4.819294065 CORE 55 O O 0.0000 55 O -9.504804772 11.941372386 8.663364288 CORE 56 O O 0.0000 56 O -1.569689546 11.996016795 5.977581858 CORE 57 O O 0.0000 57 O -11.340295960 4.903078870 9.725646567 CORE 58 O O 0.0000 58 O -9.540191093 12.029120248 6.006510507 CORE 59 O O 0.0000 59 O 0.203957706 4.604890925 9.761395467 CORE 60 O O 0.0000 60 O -10.561979712 8.579412108 5.538600783 CORE 61 O O 0.0000 61 O -0.695857538 15.593413614 9.221134262 CORE 62 O O 0.0000 62 O -10.442775630 8.420038119 8.669255773 CORE 63 O O 0.0000 63 O -0.789492334 15.556471516 5.478757926 CORE 64 O O 0.0000 64 O -0.719836453 8.411457600 5.372142475 CORE 65 O O 0.0000 65 O -10.395790227 15.618310467 9.197826282 CORE 66 O O 0.0000 66 O -10.231276365 15.439116929 5.486144685 CORE 67 O O 0.0000 67 O -0.730370926 8.423811466 9.265054073 CORE 68 O O 0.0000 68 O -12.559532428 9.116769147 7.293414734 CORE 69 O O 0.0000 69 O -2.509714761 16.027840898 3.507406520 CORE 70 O O 0.0000 70 O -9.102984496 7.820585114 3.245879985 CORE 71 O O 0.0000 71 O 1.076676994 15.130403917 7.312136400 CORE 72 O O 0.0000 72 O -2.519780629 7.812074795 3.525607395 CORE 73 O O 0.0000 73 O -12.172389980 15.166609710 7.276432535 CORE 74 O O 0.0000 74 O 1.029085002 8.862092386 7.302303463 CORE 75 O O 0.0000 75 O -8.541169944 15.954495669 3.448440775 CORE 76 O O 0.0000 76 O -13.161240570 8.536067126 4.832401681 CORE 77 O O 0.0000 77 O -3.290508362 15.524839376 8.641813955 CORE 78 O O 0.0000 78 O 1.803098551 15.649054082 4.829858968 CORE 79 O O 0.0000 79 O -7.816075107 8.364654954 8.511288032 CORE 80 O O 0.0000 80 O -3.333855388 8.368053806 5.998099131 CORE 81 O O 0.0000 81 O -13.012364839 15.546776594 9.737545852 CORE 82 O O 0.0000 82 O -7.596302990 15.594429854 5.861297254 CORE 83 O O 0.0000 83 O 1.883421307 8.468859405 9.772276145 CORE 84 O O 0.0000 84 O -7.725755571 8.645888281 5.899166361 CORE 85 O O 0.0000 85 O 1.922358058 15.690672034 9.754240118 CORE 86 O O 0.0000 86 O -3.412331821 15.613699047 5.968333232 CORE 87 O O 0.0000 87 O -12.904613580 8.323144824 9.786848150 CORE 88 O O 0.0000 88 O 1.920359125 8.400487694 4.850420515 CORE 89 O O 0.0000 89 O -7.812615897 15.769209021 8.514481085 CORE 90 O O 0.0000 90 O -12.792596186 15.790051151 4.773311786 CORE 91 O O 0.0000 91 O -3.326877118 8.305510263 8.663319861 CORE 92 O O 0.0000 92 O -9.475777046 5.989539233 5.623980839 CORE 93 O O 0.0000 93 O 0.749490398 13.357702565 9.287488060 CORE 94 O O 0.0000 94 O -2.130120222 17.871380468 5.381956089 CORE 95 O O 0.0000 95 O -11.757715107 10.660277271 9.320523389 CORE 96 O O 0.0000 96 O 0.679782556 10.682430998 5.386901845 CORE 97 O O 0.0000 97 O -9.050611578 17.938771256 9.393177408 CORE 98 O O 0.0000 98 O -11.819378337 13.373275674 5.360937120 CORE 99 O O 0.0000 99 O -1.975071605 6.074209836 9.199566053 CORE 100 O O 0.0000 100 O -11.890609578 10.825119780 5.381250292 CORE 101 O O 0.0000 101 O -2.129783442 17.847957811 9.205980990 CORE 102 O O 0.0000 102 O 0.671453318 13.327336327 5.392482880 CORE 103 O O 0.0000 103 O -9.130383555 6.089263438 8.821863621 CORE 104 O O 0.0000 104 O -2.052928171 6.101722819 5.493614668 CORE 105 O O 0.0000 105 O -11.732905404 13.303831218 9.140689692 CORE 106 O O 0.0000 106 O -9.051083840 17.789580561 5.292274760 CORE 107 O O 0.0000 107 O 0.619618285 10.719486252 9.152301196 CORE 108 O O 0.0000 108 O2 12.217932041 6.575926572 4.362109072 CORE 109 O2 O2 0.0000 109 O2 13.067274960 7.954193907 3.226371505 CORE 110 O2 O2 0.0000 110 H 11.829259649 5.712661032 4.015619280 CORE 111 H H 0.0000 111 H 12.568382232 8.662995263 3.704729513 CORE 112 H H 0.0000 112 C 13.163010685 6.060982581 5.419593708 CORE 113 C C 0.0000 113 C 12.525251707 4.776545697 5.586608256 CORE 114 C C 0.0000 114 H 12.707024861 3.938929602 4.891882130 CORE 115 H H 0.0000 115 H 11.802148682 4.625228394 6.391403280 CORE 116 H H 0.0000 116 H 14.182187432 6.157930796 4.954458260 CORE 117 H H 0.0000 117 H 13.056266109 6.722472739 6.287906180 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.299847477 4.741297330 3.442871303 CORE 1 Si Si 0.0000 1 Si -2.504360732 12.022074034 7.314545453 CORE 2 Si Si 0.0000 2 Si 1.120315191 4.749793667 3.500036344 CORE 3 Si Si 0.0000 3 Si -8.576681355 12.038702447 7.340917240 CORE 4 Si Si 0.0000 4 Si -13.578691086 7.684589240 11.112632255 CORE 5 Si Si 0.0000 5 Si -3.942925345 14.845707737 7.310803311 CORE 6 Si Si 0.0000 6 Si -7.133919119 9.234530374 7.304444895 CORE 7 Si Si 0.0000 7 Si 2.495672582 16.335255575 3.531061389 CORE 8 Si Si 0.0000 8 Si -13.569345542 16.333013218 3.442929042 CORE 9 Si Si 0.0000 9 Si -3.895813889 9.099010475 7.355674481 CORE 10 Si Si 0.0000 10 Si -7.160767206 14.926037053 7.288998212 CORE 11 Si Si 0.0000 11 Si 2.445524913 7.686384596 3.479001096 CORE 12 Si Si 0.0000 12 Si -10.137960066 4.508834838 5.741657564 CORE 13 Si Si 0.0000 13 Si -0.213077896 12.065174542 9.540123889 CORE 14 Si Si 0.0000 14 Si -10.860755563 11.990851561 9.560209452 CORE 15 Si Si 0.0000 15 Si -1.187454460 4.741386125 5.743420004 CORE 16 Si Si 0.0000 16 Si -10.019396250 4.711164179 8.809753464 CORE 17 Si Si 0.0000 17 Si -0.220230522 12.002257225 5.066483431 CORE 18 Si Si 0.0000 18 Si -10.889449588 12.069843621 5.076413740 CORE 19 Si Si 0.0000 19 Si -1.158787377 4.704791566 8.869914683 CORE 20 Si Si 0.0000 20 Ti -9.043149307 7.675529864 5.046025190 CORE 21 Ti Ti 0.0000 21 Si 0.767623008 14.943296543 8.893020463 CORE 22 Si Si 0.0000 22 Si -2.208880512 16.263980014 5.089869766 CORE 23 Si Si 0.0000 23 Si -11.920697679 9.131078228 8.784373125 CORE 24 Si Si 0.0000 24 Si 0.735318510 9.084698078 5.722004318 CORE 25 Si Si 0.0000 25 Si -8.960357666 16.313412774 9.528255490 CORE 26 Si Si 0.0000 26 Si -11.780943292 14.954096932 5.720416236 CORE 27 Si Si 0.0000 27 Si -2.144672381 7.656100667 9.565056391 CORE 28 Si Si 0.0000 28 Si -12.036553015 9.242420282 5.765973652 CORE 29 Si Si 0.0000 29 Si -2.153711167 16.246657964 9.539170096 CORE 30 Si Si 0.0000 30 Si 0.691407811 14.917637151 5.751333639 CORE 31 Si Si 0.0000 31 Si -9.103003356 7.677760977 9.225652645 CORE 32 Si Si 0.0000 32 Si -2.155780919 7.684912274 5.102139750 CORE 33 Si Si 0.0000 33 Si -11.828947887 14.902134529 8.837990236 CORE 34 Si Si 0.0000 34 Si -8.864591727 16.187153192 5.026957320 CORE 35 Si Si 0.0000 35 Si 0.699579051 9.113434874 8.875076864 CORE 36 Si Si 0.0000 36 O -15.199429332 7.698460834 3.403625975 CORE 37 O O 0.0000 37 O -5.557720870 14.973225437 7.395902889 CORE 38 O O 0.0000 38 O -15.152938898 16.078392530 3.608385555 CORE 39 O O 0.0000 39 O -5.517126008 9.090308296 7.349495975 CORE 40 O O 0.0000 40 O -10.511682897 4.287579231 7.308158510 CORE 41 O O 0.0000 41 O -0.654296214 12.004236080 3.497730825 CORE 42 O O 0.0000 42 O -10.417475190 12.070149213 3.516156873 CORE 43 O O 0.0000 43 O -0.729615770 4.667291185 7.301888946 CORE 44 O O 0.0000 44 O -13.063038847 6.140510581 3.654811944 CORE 45 O O 0.0000 45 O -3.531553801 13.270430101 7.240400724 CORE 46 O O 0.0000 46 O -7.527106477 10.805560851 7.387054403 CORE 47 O O 0.0000 47 O 2.181639643 17.939250690 3.555723378 CORE 48 O O 0.0000 48 O -3.345815498 10.635184955 7.405004088 CORE 49 O O 0.0000 49 O -13.350745804 17.938567288 3.216107467 CORE 50 O O 0.0000 50 O 1.922282234 6.149406927 3.467219951 CORE 51 O O 0.0000 51 O -7.698331494 13.408150555 7.345056707 CORE 52 O O 0.0000 52 O -11.438515773 4.369504979 4.782431622 CORE 53 O O 0.0000 53 O -1.565199790 12.188326738 8.633750152 CORE 54 O O 0.0000 54 O 0.153342971 4.722885526 4.817651591 CORE 55 O O 0.0000 55 O -9.503291764 11.944554296 8.671009997 CORE 56 O O 0.0000 56 O -1.571067457 11.992383127 5.981963387 CORE 57 O O 0.0000 57 O -11.341944449 4.893385101 9.737404891 CORE 58 O O 0.0000 58 O -9.541002444 12.020121557 6.011964729 CORE 59 O O 0.0000 59 O 0.203467740 4.604723281 9.761978103 CORE 60 O O 0.0000 60 O -10.562651732 8.569335627 5.542365823 CORE 61 O O 0.0000 61 O -0.695952799 15.592635507 9.216780424 CORE 62 O O 0.0000 62 O -10.442095719 8.412744260 8.665632075 CORE 63 O O 0.0000 63 O -0.791832473 15.554934472 5.482442101 CORE 64 O O 0.0000 64 O -0.722137333 8.410766269 5.379009662 CORE 65 O O 0.0000 65 O -10.396897944 15.620405793 9.196654086 CORE 66 O O 0.0000 66 O -10.237507369 15.438954043 5.488526125 CORE 67 O O 0.0000 67 O -0.735293492 8.423510918 9.263360098 CORE 68 O O 0.0000 68 O -12.569224759 9.122488917 7.287745152 CORE 69 O O 0.0000 69 O -2.505923583 16.033894225 3.506710764 CORE 70 O O 0.0000 70 O -9.116238418 7.814793559 3.253021716 CORE 71 O O 0.0000 71 O 1.079253071 15.128509532 7.311683466 CORE 72 O O 0.0000 72 O -2.519279693 7.812832434 3.527362837 CORE 73 O O 0.0000 73 O -12.169538513 15.167040279 7.278949155 CORE 74 O O 0.0000 74 O 1.029563807 8.862962316 7.304182218 CORE 75 O O 0.0000 75 O -8.544511185 15.954153031 3.444853059 CORE 76 O O 0.0000 76 O -13.155540524 8.538073225 4.833815710 CORE 77 O O 0.0000 77 O -3.295090876 15.524655732 8.641215343 CORE 78 O O 0.0000 78 O 1.798495830 15.650450582 4.828891787 CORE 79 O O 0.0000 79 O -7.834345316 8.369919938 8.515365348 CORE 80 O O 0.0000 80 O -3.335126684 8.367299338 5.996768705 CORE 81 O O 0.0000 81 O -13.012085600 15.544855974 9.736884253 CORE 82 O O 0.0000 82 O -7.592715996 15.607232450 5.872632008 CORE 83 O O 0.0000 83 O 1.880369313 8.468153083 9.776090099 CORE 84 O O 0.0000 84 O -7.721988641 8.642626657 5.898185410 CORE 85 O O 0.0000 85 O 1.918814557 15.692617448 9.754494275 CORE 86 O O 0.0000 86 O -3.413766888 15.613304660 5.968214635 CORE 87 O O 0.0000 87 O -12.902027495 8.324524748 9.785950802 CORE 88 O O 0.0000 88 O 1.920541179 8.398756051 4.850896879 CORE 89 O O 0.0000 89 O -7.809931088 15.776364786 8.519582561 CORE 90 O O 0.0000 90 O -12.790688280 15.796514288 4.769763475 CORE 91 O O 0.0000 91 O -3.334199481 8.305990994 8.670476351 CORE 92 O O 0.0000 92 O -9.467738592 5.982001044 5.616666956 CORE 93 O O 0.0000 93 O 0.751276485 13.357004315 9.289182568 CORE 94 O O 0.0000 94 O -2.130689668 17.872214937 5.384816175 CORE 95 O O 0.0000 95 O -11.753778825 10.663928236 9.321837916 CORE 96 O O 0.0000 96 O 0.679042795 10.680650057 5.388348129 CORE 97 O O 0.0000 97 O -9.053017148 17.940905647 9.399236481 CORE 98 O O 0.0000 98 O -11.822751716 13.379262549 5.365201574 CORE 99 O O 0.0000 99 O -1.978472888 6.076393813 9.198407702 CORE 100 O O 0.0000 100 O -11.895239627 10.823822598 5.381086204 CORE 101 O O 0.0000 101 O -2.128519844 17.848862048 9.202808477 CORE 102 O O 0.0000 102 O 0.671579755 13.326157202 5.393795505 CORE 103 O O 0.0000 103 O -9.134630445 6.092545819 8.813203108 CORE 104 O O 0.0000 104 O -2.055692267 6.103523797 5.497569052 CORE 105 O O 0.0000 105 O -11.731015588 13.310287004 9.144745784 CORE 106 O O 0.0000 106 O -9.059582045 17.788505942 5.289842048 CORE 107 O O 0.0000 107 O 0.617112258 10.718309000 9.151598441 CORE 108 O O 0.0000 108 O2 12.265950877 6.560179765 4.376783013 CORE 109 O2 O2 0.0000 109 O2 13.064436002 7.958759776 3.211630772 CORE 110 O2 O2 0.0000 110 H 11.878571143 5.714010684 3.990466245 CORE 111 H H 0.0000 111 H 12.604745215 8.692976339 3.697883322 CORE 112 H H 0.0000 112 C 13.162050766 6.059461105 5.434212117 CORE 113 C C 0.0000 113 C 12.536238812 4.780259510 5.574278402 CORE 114 C C 0.0000 114 H 12.738026501 3.890295131 4.906289438 CORE 115 H H 0.0000 115 H 11.849877695 4.605290934 6.425599090 CORE 116 H H 0.0000 116 H 14.187430421 6.141748375 4.943873122 CORE 117 H H 0.0000 117 H 13.069390899 6.734715467 6.280311135 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.295446823 4.744186909 3.435765478 CORE 1 Si Si 0.0000 1 Si -2.504285870 12.018570820 7.313534074 CORE 2 Si Si 0.0000 2 Si 1.120320002 4.749615357 3.499930908 CORE 3 Si Si 0.0000 3 Si -8.575298634 12.038312672 7.334660989 CORE 4 Si Si 0.0000 4 Si -13.580154827 7.682931689 11.115951968 CORE 5 Si Si 0.0000 5 Si -3.941522031 14.845736999 7.311855693 CORE 6 Si Si 0.0000 6 Si -7.132153046 9.231301184 7.303936048 CORE 7 Si Si 0.0000 7 Si 2.497851451 16.336625119 3.530662847 CORE 8 Si Si 0.0000 8 Si -13.567111826 16.333218484 3.444942140 CORE 9 Si Si 0.0000 9 Si -3.892882365 9.100517104 7.355325309 CORE 10 Si Si 0.0000 10 Si -7.160260689 14.924204507 7.285758375 CORE 11 Si Si 0.0000 11 Si 2.446545067 7.685975650 3.477942780 CORE 12 Si Si 0.0000 12 Si -10.137700457 4.511520016 5.743671879 CORE 13 Si Si 0.0000 13 Si -0.212126445 12.064662819 9.539933937 CORE 14 Si Si 0.0000 14 Si -10.859301252 11.990779055 9.559990441 CORE 15 Si Si 0.0000 15 Si -1.186652924 4.741070442 5.742324032 CORE 16 Si Si 0.0000 16 Si -10.014519678 4.712347485 8.807088199 CORE 17 Si Si 0.0000 17 Si -0.219744982 12.002726713 5.065194616 CORE 18 Si Si 0.0000 18 Si -10.888268935 12.068692027 5.075069240 CORE 19 Si Si 0.0000 19 Si -1.157979298 4.703586927 8.871169341 CORE 20 Si Si 0.0000 20 Ti -9.044729670 7.680651277 5.055397814 CORE 21 Ti Ti 0.0000 21 Si 0.767478866 14.944310476 8.894332252 CORE 22 Si Si 0.0000 22 Si -2.208422299 16.263240105 5.088558205 CORE 23 Si Si 0.0000 23 Si -11.917236160 9.126090728 8.787279234 CORE 24 Si Si 0.0000 24 Si 0.732802669 9.085003527 5.720969889 CORE 25 Si Si 0.0000 25 Si -8.957143055 16.310207224 9.527481303 CORE 26 Si Si 0.0000 26 Si -11.775053109 14.954182267 5.719069150 CORE 27 Si Si 0.0000 27 Si -2.143886818 7.657403903 9.562659889 CORE 28 Si Si 0.0000 28 Si -12.035206089 9.244509411 5.761371514 CORE 29 Si Si 0.0000 29 Si -2.153403446 16.246710290 9.542647583 CORE 30 Si Si 0.0000 30 Si 0.692391208 14.918551189 5.750688091 CORE 31 Si Si 0.0000 31 Si -9.099096902 7.682367928 9.229408861 CORE 32 Si Si 0.0000 32 Si -2.157495802 7.686813435 5.102367434 CORE 33 Si Si 0.0000 33 Si -11.827452008 14.903454054 8.838916339 CORE 34 Si Si 0.0000 34 Si -8.863639699 16.188506737 5.025526403 CORE 35 Si Si 0.0000 35 Si 0.700139260 9.114072870 8.873960962 CORE 36 Si Si 0.0000 36 O -15.193583989 7.696328028 3.405515531 CORE 37 O O 0.0000 37 O -5.553304051 14.971835712 7.399487106 CORE 38 O O 0.0000 38 O -15.152818620 16.083284893 3.607114922 CORE 39 O O 0.0000 39 O -5.514866697 9.091751067 7.352804354 CORE 40 O O 0.0000 40 O -10.517613686 4.273868362 7.311277697 CORE 41 O O 0.0000 41 O -0.654421496 12.004343614 3.496988208 CORE 42 O O 0.0000 42 O -10.415720856 12.071012656 3.516494558 CORE 43 O O 0.0000 43 O -0.731430339 4.665254527 7.301697244 CORE 44 O O 0.0000 44 O -13.061662861 6.144134447 3.653927681 CORE 45 O O 0.0000 45 O -3.531103478 13.270886328 7.240142687 CORE 46 O O 0.0000 46 O -7.525201458 10.805738296 7.381020891 CORE 47 O O 0.0000 47 O 2.181873657 17.938783509 3.554961668 CORE 48 O O 0.0000 48 O -3.342408633 10.634204464 7.403024614 CORE 49 O O 0.0000 49 O -13.342460443 17.937173815 3.222142349 CORE 50 O O 0.0000 50 O 1.923314128 6.148401643 3.465448002 CORE 51 O O 0.0000 51 O -7.693515543 13.399780635 7.353197419 CORE 52 O O 0.0000 52 O -11.423168044 4.365514258 4.765244789 CORE 53 O O 0.0000 53 O -1.562537882 12.188955365 8.633594052 CORE 54 O O 0.0000 54 O 0.154518044 4.723686841 4.818890883 CORE 55 O O 0.0000 55 O -9.504433352 11.942153521 8.665241140 CORE 56 O O 0.0000 56 O -1.570027865 11.995124811 5.978657442 CORE 57 O O 0.0000 57 O -11.340700673 4.900699284 9.728532898 CORE 58 O O 0.0000 58 O -9.540390274 12.026911333 6.007849377 CORE 59 O O 0.0000 59 O 0.203837428 4.604849699 9.761538482 CORE 60 O O 0.0000 60 O -10.562144638 8.576938538 5.539524984 CORE 61 O O 0.0000 61 O -0.695881016 15.593222619 9.220065448 CORE 62 O O 0.0000 62 O -10.442608779 8.418247664 8.668366185 CORE 63 O O 0.0000 63 O -0.790066785 15.556094282 5.479662348 CORE 64 O O 0.0000 64 O -0.720401281 8.411287939 5.373828234 CORE 65 O O 0.0000 65 O -10.396062152 15.618824785 9.197538577 CORE 66 O O 0.0000 66 O -10.232805923 15.439076856 5.486729300 CORE 67 O O 0.0000 67 O -0.731579292 8.423737662 9.264638263 CORE 68 O O 0.0000 68 O -12.561911633 9.118173287 7.292022994 CORE 69 O O 0.0000 69 O -2.508784094 16.029326914 3.507235738 CORE 70 O O 0.0000 70 O -9.106238174 7.819163388 3.247633144 CORE 71 O O 0.0000 71 O 1.077309370 15.129938897 7.312025182 CORE 72 O O 0.0000 72 O -2.519657656 7.812260745 3.526038268 CORE 73 O O 0.0000 73 O -12.171690055 15.166715370 7.277050317 CORE 74 O O 0.0000 74 O 1.029202586 8.862306013 7.302764613 CORE 75 O O 0.0000 75 O -8.541990147 15.954411487 3.447560087 CORE 76 O O 0.0000 76 O -13.159841298 8.536559534 4.832748798 CORE 77 O O 0.0000 77 O -3.291633206 15.524794258 8.641666983 CORE 78 O O 0.0000 78 O 1.801968703 15.649396865 4.829621547 CORE 79 O O 0.0000 79 O -7.820559859 8.365947380 8.512288914 CORE 80 O O 0.0000 80 O -3.334167535 8.367868576 5.997772553 CORE 81 O O 0.0000 81 O -13.012296328 15.546305088 9.737383438 CORE 82 O O 0.0000 82 O -7.595422551 15.597572555 5.864079670 CORE 83 O O 0.0000 83 O 1.882672117 8.468685996 9.773212365 CORE 84 O O 0.0000 84 O -7.724830870 8.645087542 5.898925592 CORE 85 O O 0.0000 85 O 1.921488204 15.691149594 9.754302573 CORE 86 O O 0.0000 86 O -3.412683997 15.613602324 5.968304172 CORE 87 O O 0.0000 87 O -12.903978702 8.323483571 9.786627845 CORE 88 O O 0.0000 88 O 1.920403773 8.400062603 4.850537438 CORE 89 O O 0.0000 89 O -7.811956771 15.770965601 8.515733385 CORE 90 O O 0.0000 90 O -12.792127773 15.791637781 4.772440759 CORE 91 O O 0.0000 91 O -3.328674560 8.305628319 8.665076672 CORE 92 O O 0.0000 92 O -9.473803901 5.987688812 5.622185460 CORE 93 O O 0.0000 93 O 0.749928789 13.357531174 9.287904023 CORE 94 O O 0.0000 94 O -2.130260130 17.871585301 5.382658159 CORE 95 O O 0.0000 95 O -11.756748838 10.661173579 9.320846087 CORE 96 O O 0.0000 96 O 0.679601080 10.681993799 5.387256874 CORE 97 O O 0.0000 97 O -9.051202194 17.939295232 9.394664772 CORE 98 O O 0.0000 98 O -11.820206431 13.374745257 5.361983950 CORE 99 O O 0.0000 99 O -1.975906626 6.074745920 9.199281695 CORE 100 O O 0.0000 100 O -11.891746162 10.824801359 5.381210049 CORE 101 O O 0.0000 101 O -2.129473219 17.848179798 9.205202240 CORE 102 O O 0.0000 102 O 0.671484302 13.327046879 5.392805122 CORE 103 O O 0.0000 103 O -9.131426033 6.090069078 8.819737632 CORE 104 O O 0.0000 104 O -2.053606541 6.102164920 5.494585349 CORE 105 O O 0.0000 105 O -11.732441418 13.305415975 9.141685401 CORE 106 O O 0.0000 106 O -9.053169950 17.789316771 5.291677594 CORE 107 O O 0.0000 107 O 0.619003037 10.719197236 9.152128741 CORE 108 O O 0.0000 108 O2 12.229719527 6.572061115 4.365711165 CORE 109 O2 O2 0.0000 109 O2 13.066578114 7.955314797 3.222752980 CORE 110 O2 O2 0.0000 110 H 11.841364478 5.712992427 4.009444806 CORE 111 H H 0.0000 111 H 12.577308437 8.670354853 3.703048927 CORE 112 H H 0.0000 112 C 13.162775132 6.060609095 5.423182185 CORE 113 C C 0.0000 113 C 12.527948640 4.777457285 5.583581572 CORE 114 C C 0.0000 114 H 12.714635122 3.926991025 4.895418725 CORE 115 H H 0.0000 115 H 11.813864963 4.620334157 6.399797540 CORE 116 H H 0.0000 116 H 14.183474509 6.153958381 4.951859863 CORE 117 H H 0.0000 117 H 13.059487841 6.725478069 6.286041727 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.298686068 4.739106578 3.445402224 CORE 1 Si Si 0.0000 1 Si -2.508064155 12.017990050 7.314751457 CORE 2 Si Si 0.0000 2 Si 1.119172256 4.749960157 3.499938363 CORE 3 Si Si 0.0000 3 Si -8.574909316 12.038423954 7.338402446 CORE 4 Si Si 0.0000 4 Si -13.578719760 7.685395456 11.119961428 CORE 5 Si Si 0.0000 5 Si -3.946439594 14.845563590 7.310347411 CORE 6 Si Si 0.0000 6 Si -7.138726025 9.228550851 7.305000298 CORE 7 Si Si 0.0000 7 Si 2.497310102 16.336933739 3.530759763 CORE 8 Si Si 0.0000 8 Si -13.569261828 16.334458151 3.440013272 CORE 9 Si Si 0.0000 9 Si -3.895969193 9.099096243 7.356117144 CORE 10 Si Si 0.0000 10 Si -7.161547958 14.928570299 7.291126331 CORE 11 Si Si 0.0000 11 Si 2.443233655 7.685418232 3.478947313 CORE 12 Si Si 0.0000 12 Si -10.135771959 4.515592902 5.741653912 CORE 13 Si Si 0.0000 13 Si -0.214475629 12.063772420 9.539985514 CORE 14 Si Si 0.0000 14 Si -10.859303561 11.994544329 9.562872283 CORE 15 Si Si 0.0000 15 Si -1.187657683 4.742972756 5.743018875 CORE 16 Si Si 0.0000 16 Si -10.019711284 4.714382559 8.807777109 CORE 17 Si Si 0.0000 17 Si -0.221867657 12.000659495 5.067074436 CORE 18 Si Si 0.0000 18 Si -10.892202715 12.063274391 5.077997258 CORE 19 Si Si 0.0000 19 Si -1.158590890 4.706310015 8.870697542 CORE 20 Si Si 0.0000 20 Ti -9.045291612 7.674324935 5.054621802 CORE 21 Ti Ti 0.0000 21 Si 0.766782405 14.943294381 8.893518204 CORE 22 Si Si 0.0000 22 Si -2.210084644 16.264646984 5.089395456 CORE 23 Si Si 0.0000 23 Si -11.916220624 9.128324148 8.777386048 CORE 24 Si Si 0.0000 24 Si 0.731896058 9.083338336 5.723050691 CORE 25 Si Si 0.0000 25 Si -8.960704646 16.312712938 9.525735219 CORE 26 Si Si 0.0000 26 Si -11.780064393 14.958055508 5.720202625 CORE 27 Si Si 0.0000 27 Si -2.147626999 7.658043197 9.564637309 CORE 28 Si Si 0.0000 28 Si -12.032204899 9.245447234 5.761586722 CORE 29 Si Si 0.0000 29 Si -2.155253041 16.247132065 9.539610326 CORE 30 Si Si 0.0000 30 Si 0.690071661 14.917661944 5.750858949 CORE 31 Si Si 0.0000 31 Si -9.101774976 7.678000694 9.231360796 CORE 32 Si Si 0.0000 32 Si -2.157873958 7.686464454 5.103036185 CORE 33 Si Si 0.0000 33 Si -11.827449313 14.904688677 8.840871013 CORE 34 Si Si 0.0000 34 Si -8.864076743 16.184867303 5.027589404 CORE 35 Si Si 0.0000 35 Si 0.696550150 9.112569701 8.875074886 CORE 36 Si Si 0.0000 36 O -15.192870400 7.699174652 3.402920558 CORE 37 O O 0.0000 37 O -5.551743894 14.972881645 7.396201929 CORE 38 O O 0.0000 38 O -15.156093852 16.077162520 3.608482015 CORE 39 O O 0.0000 39 O -5.513953542 9.089678516 7.349962373 CORE 40 O O 0.0000 40 O -10.512213470 4.288720879 7.313013132 CORE 41 O O 0.0000 41 O -0.654333356 12.004531583 3.498043177 CORE 42 O O 0.0000 42 O -10.417208846 12.071396665 3.516691280 CORE 43 O O 0.0000 43 O -0.729554764 4.667728384 7.302003511 CORE 44 O O 0.0000 44 O -13.066596589 6.145351772 3.654319909 CORE 45 O O 0.0000 45 O -3.533204407 13.272513464 7.240489652 CORE 46 O O 0.0000 46 O -7.528793455 10.809631429 7.388428418 CORE 47 O O 0.0000 47 O 2.182473510 17.937459515 3.556002715 CORE 48 O O 0.0000 48 O -3.346234260 10.635651560 7.405302519 CORE 49 O O 0.0000 49 O -13.352510530 17.936460429 3.218443111 CORE 50 O O 0.0000 50 O 1.921982019 6.148970160 3.467505754 CORE 51 O O 0.0000 51 O -7.702349181 13.404121490 7.344004781 CORE 52 O O 0.0000 52 O -11.443013997 4.371847807 4.783491231 CORE 53 O O 0.0000 53 O -1.562842331 12.188923364 8.636963821 CORE 54 O O 0.0000 54 O 0.152904003 4.723072773 4.817408160 CORE 55 O O 0.0000 55 O -9.502413058 11.946047951 8.673662329 CORE 56 O O 0.0000 56 O -1.568571437 11.992065859 5.979831616 CORE 57 O O 0.0000 57 O -11.340647174 4.889940410 9.739606647 CORE 58 O O 0.0000 58 O -9.542623413 12.019767676 6.012181459 CORE 59 O O 0.0000 59 O 0.203068030 4.605133957 9.761969203 CORE 60 O O 0.0000 60 O -10.560095862 8.564545465 5.541710689 CORE 61 O O 0.0000 61 O -0.695162425 15.592695904 9.216057738 CORE 62 O O 0.0000 62 O -10.454119144 8.416592996 8.669059583 CORE 63 O O 0.0000 63 O -0.790761898 15.554262745 5.483947189 CORE 64 O O 0.0000 64 O -0.717801534 8.412382594 5.380260060 CORE 65 O O 0.0000 65 O -10.399295431 15.619832808 9.195316129 CORE 66 O O 0.0000 66 O -10.236060563 15.440691596 5.487892900 CORE 67 O O 0.0000 67 O -0.732238033 8.425288400 9.261918607 CORE 68 O O 0.0000 68 O -12.568934359 9.123086840 7.296885071 CORE 69 O O 0.0000 69 O -2.505074705 16.034833489 3.506144559 CORE 70 O O 0.0000 70 O -9.119038117 7.815230758 3.246609745 CORE 71 O O 0.0000 71 O 1.080072119 15.127917374 7.311567076 CORE 72 O O 0.0000 72 O -2.519228695 7.812764973 3.527533314 CORE 73 O O 0.0000 73 O -12.170603122 15.167313438 7.277631813 CORE 74 O O 0.0000 74 O 1.030092840 8.862990281 7.304625490 CORE 75 O O 0.0000 75 O -8.544244455 15.951949737 3.451327333 CORE 76 O O 0.0000 76 O -13.159252222 8.532814151 4.826496198 CORE 77 O O 0.0000 77 O -3.295019479 15.525717666 8.642353915 CORE 78 O O 0.0000 78 O 1.797546303 15.650315949 4.829047278 CORE 79 O O 0.0000 79 O -7.830080529 8.376001229 8.510452455 CORE 80 O O 0.0000 80 O -3.335291610 8.367888180 5.998243972 CORE 81 O O 0.0000 81 O -13.013068228 15.545252811 9.737746379 CORE 82 O O 0.0000 82 O -7.596121899 15.612908687 5.869443899 CORE 83 O O 0.0000 83 O 1.878760275 8.468768160 9.775991966 CORE 84 O O 0.0000 84 O -7.724106889 8.640782868 5.896274934 CORE 85 O O 0.0000 85 O 1.918064404 15.692825885 9.754375907 CORE 86 O O 0.0000 86 O -3.413199943 15.613791878 5.967177163 CORE 87 O O 0.0000 87 O -12.903264728 8.323992988 9.785263414 CORE 88 O O 0.0000 88 O 1.920448998 8.398838071 4.852223426 CORE 89 O O 0.0000 89 O -7.810485139 15.777175327 8.522188033 CORE 90 O O 0.0000 90 O -12.790852244 15.797299459 4.770671625 CORE 91 O O 0.0000 91 O -3.336288670 8.306526790 8.670182560 CORE 92 O O 0.0000 92 O -9.467443958 5.985733164 5.614095565 CORE 93 O O 0.0000 93 O 0.750970497 13.357095848 9.289123232 CORE 94 O O 0.0000 94 O -2.131157119 17.871769234 5.385500216 CORE 95 O O 0.0000 95 O -11.755272780 10.661899362 9.320844946 CORE 96 O O 0.0000 96 O 0.678611717 10.681463769 5.388090245 CORE 97 O O 0.0000 97 O -9.054304417 17.942410257 9.400281028 CORE 98 O O 0.0000 98 O -11.822703990 13.377721036 5.365108994 CORE 99 O O 0.0000 99 O -1.978147655 6.073255292 9.197675811 CORE 100 O O 0.0000 100 O -11.893322484 10.824199976 5.380651299 CORE 101 O O 0.0000 101 O -2.128892996 17.848164519 9.202320626 CORE 102 O O 0.0000 102 O 0.671257023 13.326107903 5.394136309 CORE 103 O O 0.0000 103 O -9.136492933 6.086265893 8.809814473 CORE 104 O O 0.0000 104 O -2.054831843 6.100310319 5.498657340 CORE 105 O O 0.0000 105 O -11.729983887 13.309063913 9.145782420 CORE 106 O O 0.0000 106 O -9.059653058 17.782378235 5.287242966 CORE 107 O O 0.0000 107 O 0.616080558 10.718887031 9.151681512 CORE 108 O O 0.0000 108 O2 12.265047922 6.566084331 4.373326446 CORE 109 O2 O2 0.0000 109 O2 13.064780480 7.959312149 3.213012547 CORE 110 O2 O2 0.0000 110 H 11.880400723 5.710321808 3.978896048 CORE 111 H H 0.0000 111 H 12.612057763 8.694099679 3.697879214 CORE 112 H H 0.0000 112 C 13.191301344 6.057995126 5.417432346 CORE 113 C C 0.0000 113 C 12.544704302 4.761595016 5.581844769 CORE 114 C C 0.0000 114 H 12.744312160 3.893965412 4.908760643 CORE 115 H H 0.0000 115 H 11.852000370 4.604524358 6.430714411 CORE 116 H H 0.0000 116 H 14.177444033 6.137091549 4.950383150 CORE 117 H H 0.0000 117 H 13.071162746 6.743416493 6.291084856 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.298225930 4.739828324 3.444033153 CORE 1 Si Si 0.0000 1 Si -2.507527424 12.018072502 7.314578545 CORE 2 Si Si 0.0000 2 Si 1.119335258 4.749911147 3.499937298 CORE 3 Si Si 0.0000 3 Si -8.574964548 12.038408098 7.337870854 CORE 4 Si Si 0.0000 4 Si -13.578923560 7.685045322 11.119391800 CORE 5 Si Si 0.0000 5 Si -3.945741016 14.845588239 7.310561706 CORE 6 Si Si 0.0000 6 Si -7.137792087 9.228941635 7.304849066 CORE 7 Si Si 0.0000 7 Si 2.497387080 16.336889918 3.530745994 CORE 8 Si Si 0.0000 8 Si -13.568956417 16.334282147 3.440713516 CORE 9 Si Si 0.0000 9 Si -3.895530609 9.099298193 7.356004634 CORE 10 Si Si 0.0000 10 Si -7.161365134 14.927950033 7.290363708 CORE 11 Si Si 0.0000 11 Si 2.443703992 7.685497513 3.478804601 CORE 12 Si Si 0.0000 12 Si -10.136045809 4.515014294 5.741940552 CORE 13 Si Si 0.0000 13 Si -0.214141736 12.063898982 9.539978211 CORE 14 Si Si 0.0000 14 Si -10.859303369 11.994009398 9.562462862 CORE 15 Si Si 0.0000 15 Si -1.187515081 4.742702479 5.742920209 CORE 16 Si Si 0.0000 16 Si -10.018973832 4.714093543 8.807679280 CORE 17 Si Si 0.0000 17 Si -0.221566095 12.000953123 5.066807422 CORE 18 Si Si 0.0000 18 Si -10.891643853 12.064044138 5.077581296 CORE 19 Si Si 0.0000 19 Si -1.158504097 4.705923268 8.870764561 CORE 20 Si Si 0.0000 20 Ti -9.045211747 7.675223694 5.054732106 CORE 21 Ti Ti 0.0000 21 Si 0.766881322 14.943438672 8.893633833 CORE 22 Si Si 0.0000 22 Si -2.209848513 16.264447196 5.089276479 CORE 23 Si Si 0.0000 23 Si -11.916364959 9.128006879 8.778791558 CORE 24 Si Si 0.0000 24 Si 0.732024996 9.083574882 5.722755075 CORE 25 Si Si 0.0000 25 Si -8.960198706 16.312357038 9.525983290 CORE 26 Si Si 0.0000 26 Si -11.779352344 14.957505297 5.720041580 CORE 27 Si Si 0.0000 27 Si -2.147095656 7.657952384 9.564356375 CORE 28 Si Si 0.0000 28 Si -12.032631359 9.245313898 5.761556141 CORE 29 Si Si 0.0000 29 Si -2.154990160 16.247072100 9.540041807 CORE 30 Si Si 0.0000 30 Si 0.690401320 14.917788217 5.750834682 CORE 31 Si Si 0.0000 31 Si -9.101394511 7.678621105 9.231083513 CORE 32 Si Si 0.0000 32 Si -2.157820265 7.686514040 5.102941171 CORE 33 Si Si 0.0000 33 Si -11.827449698 14.904513394 8.840593350 CORE 34 Si Si 0.0000 34 Si -8.864014583 16.185384360 5.027296298 CORE 35 Si Si 0.0000 35 Si 0.697060131 9.112783327 8.874916656 CORE 36 Si Si 0.0000 36 O -15.192971627 7.698770174 3.403289203 CORE 37 O O 0.0000 37 O -5.551965592 14.972733029 7.396668632 CORE 38 O O 0.0000 38 O -15.155628518 16.078032306 3.608287802 CORE 39 O O 0.0000 39 O -5.514083251 9.089973009 7.350366088 CORE 40 O O 0.0000 40 O -10.512980751 4.286610705 7.312766582 CORE 41 O O 0.0000 41 O -0.654345865 12.004504915 3.497893315 CORE 42 O O 0.0000 42 O -10.416997540 12.071342033 3.516663362 CORE 43 O O 0.0000 43 O -0.729821302 4.667376953 7.301959997 CORE 44 O O 0.0000 44 O -13.065895702 6.145178795 3.654264224 CORE 45 O O 0.0000 45 O -3.532905924 13.272282395 7.240440357 CORE 46 O O 0.0000 46 O -7.528283089 10.809078336 7.387376036 CORE 47 O O 0.0000 47 O 2.182388257 17.937647627 3.555854831 CORE 48 O O 0.0000 48 O -3.345690793 10.635446006 7.404978908 CORE 49 O O 0.0000 49 O -13.351082584 17.936561765 3.218968694 CORE 50 O O 0.0000 50 O 1.922171386 6.148889438 3.467213409 CORE 51 O O 0.0000 51 O -7.701094243 13.403504828 7.345310788 CORE 52 O O 0.0000 52 O -11.440194477 4.370947895 4.780898996 CORE 53 O O 0.0000 53 O -1.562799031 12.188927832 8.636485099 CORE 54 O O 0.0000 54 O 0.153133398 4.723159983 4.817618804 CORE 55 O O 0.0000 55 O -9.502699994 11.945494569 8.672465942 CORE 56 O O 0.0000 56 O -1.568778508 11.992500463 5.979664790 CORE 57 O O 0.0000 57 O -11.340654871 4.891468949 9.738033399 CORE 58 O O 0.0000 58 O -9.542306070 12.020782473 6.011566035 CORE 59 O O 0.0000 59 O 0.203177339 4.605093596 9.761908041 CORE 60 O O 0.0000 60 O -10.560387032 8.566306225 5.541400163 CORE 61 O O 0.0000 61 O -0.695264421 15.592770717 9.216627138 CORE 62 O O 0.0000 62 O -10.452483933 8.416828100 8.668961069 CORE 63 O O 0.0000 63 O -0.790663174 15.554522931 5.483338459 CORE 64 O O 0.0000 64 O -0.718170837 8.412227059 5.379346281 CORE 65 O O 0.0000 65 O -10.398836063 15.619689525 9.195631828 CORE 66 O O 0.0000 66 O -10.235598308 15.440462257 5.487727519 CORE 67 O O 0.0000 67 O -0.732144505 8.425068143 9.262305053 CORE 68 O O 0.0000 68 O -12.567936721 9.122388734 7.296194259 CORE 69 O O 0.0000 69 O -2.505601621 16.034051201 3.506299594 CORE 70 O O 0.0000 70 O -9.117219698 7.815789474 3.246755119 CORE 71 O O 0.0000 71 O 1.079679530 15.128204516 7.311632117 CORE 72 O O 0.0000 72 O -2.519289700 7.812693332 3.527320921 CORE 73 O O 0.0000 73 O -12.170757656 15.167228535 7.277549199 CORE 74 O O 0.0000 74 O 1.029966403 8.862893125 7.304361063 CORE 75 O O 0.0000 75 O -8.543924226 15.952299439 3.450792166 CORE 76 O O 0.0000 76 O -13.159335936 8.533346199 4.827384493 CORE 77 O O 0.0000 77 O -3.294538365 15.525586492 8.642256314 CORE 78 O O 0.0000 78 O 1.798174638 15.650185495 4.829128828 CORE 79 O O 0.0000 79 O -7.828728021 8.374572872 8.510713383 CORE 80 O O 0.0000 80 O -3.335131880 8.367885298 5.998176953 CORE 81 O O 0.0000 81 O -13.012958534 15.545402292 9.737694802 CORE 82 O O 0.0000 82 O -7.596022597 15.610729899 5.868681808 CORE 83 O O 0.0000 83 O 1.879316058 8.468756484 9.775597076 CORE 84 O O 0.0000 84 O -7.724209655 8.641394485 5.896651491 CORE 85 O O 0.0000 85 O 1.918550714 15.692587753 9.754365485 CORE 86 O O 0.0000 86 O -3.413126622 15.613764922 5.967337295 CORE 87 O O 0.0000 87 O -12.903366147 8.323920626 9.785457246 CORE 88 O O 0.0000 88 O 1.920442454 8.399011913 4.851983874 CORE 89 O O 0.0000 89 O -7.810694328 15.776293145 8.521271059 CORE 90 O O 0.0000 90 O -12.791033528 15.796495116 4.770922967 CORE 91 O O 0.0000 91 O -3.335206934 8.306399076 8.669457212 CORE 92 O O 0.0000 92 O -9.468347490 5.986010937 5.615244863 CORE 93 O O 0.0000 93 O 0.750822506 13.357157688 9.288950015 CORE 94 O O 0.0000 94 O -2.131029720 17.871743143 5.385096501 CORE 95 O O 0.0000 95 O -11.755482353 10.661796152 9.320845098 CORE 96 O O 0.0000 96 O 0.678752202 10.681539158 5.387971800 CORE 97 O O 0.0000 97 O -9.053863524 17.941967725 9.399483183 CORE 98 O O 0.0000 98 O -11.822349120 13.377298252 5.364665037 CORE 99 O O 0.0000 99 O -1.977829158 6.073467044 9.197904028 CORE 100 O O 0.0000 100 O -11.893098477 10.824285455 5.380730643 CORE 101 O O 0.0000 101 O -2.128975363 17.848166681 9.202729970 CORE 102 O O 0.0000 102 O 0.671289354 13.326241239 5.393947193 CORE 103 O O 0.0000 103 O -9.135773187 6.086806301 8.811224243 CORE 104 O O 0.0000 104 O -2.054657872 6.100573676 5.498078887 CORE 105 O O 0.0000 105 O -11.730333176 13.308545703 9.145200392 CORE 106 O O 0.0000 106 O -9.058732013 17.783363915 5.287872920 CORE 107 O O 0.0000 107 O 0.616495663 10.718931140 9.151745032 CORE 108 O O 0.0000 108 O2 12.260028941 6.566933504 4.372244548 CORE 109 O2 O2 0.0000 109 O2 13.065035855 7.958744208 3.214396300 CORE 110 O2 O2 0.0000 110 H 11.874854825 5.710701204 3.983236118 CORE 111 H H 0.0000 111 H 12.607120956 8.690726342 3.698613691 CORE 112 H H 0.0000 112 C 13.187248632 6.058366450 5.418249285 CORE 113 C C 0.0000 113 C 12.542323942 4.763848616 5.582091471 CORE 114 C C 0.0000 114 H 12.740096061 3.898657266 4.906865152 CORE 115 H H 0.0000 115 H 11.846582641 4.606770463 6.426322080 CORE 116 H H 0.0000 116 H 14.178300801 6.139487855 4.950592957 CORE 117 H H 0.0000 117 H 13.069504057 6.740868111 6.290368332 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.306250527 4.739593796 3.450483997 CORE 1 Si Si 0.0000 1 Si -2.510135832 12.014366616 7.316138861 CORE 2 Si Si 0.0000 2 Si 1.119476897 4.748406681 3.499768798 CORE 3 Si Si 0.0000 3 Si -8.579071722 12.039846833 7.338251139 CORE 4 Si Si 0.0000 4 Si -13.581003512 7.684362208 11.117565307 CORE 5 Si Si 0.0000 5 Si -3.945488528 14.847325792 7.309707796 CORE 6 Si Si 0.0000 6 Si -7.141345403 9.226872110 7.301793932 CORE 7 Si Si 0.0000 7 Si 2.496335942 16.336760762 3.530641243 CORE 8 Si Si 0.0000 8 Si -13.573688077 16.334177208 3.438559380 CORE 9 Si Si 0.0000 9 Si -3.894834919 9.100218286 7.357508504 CORE 10 Si Si 0.0000 10 Si -7.164080734 14.934180949 7.292447629 CORE 11 Si Si 0.0000 11 Si 2.445282239 7.685342698 3.479196981 CORE 12 Si Si 0.0000 12 Si -10.134556280 4.518639889 5.740296404 CORE 13 Si Si 0.0000 13 Si -0.213566131 12.063356555 9.541764538 CORE 14 Si Si 0.0000 14 Si -10.859667091 11.997231958 9.566048600 CORE 15 Si Si 0.0000 15 Si -1.185831374 4.741982463 5.743588504 CORE 16 Si Si 0.0000 16 Si -10.023271720 4.715435411 8.811021130 CORE 17 Si Si 0.0000 17 Si -0.221172544 11.999673959 5.067023543 CORE 18 Si Si 0.0000 18 Si -10.894307108 12.063293707 5.079546164 CORE 19 Si Si 0.0000 19 Si -1.156997633 4.705651406 8.871029673 CORE 20 Si Si 0.0000 20 Ti -9.046999182 7.672764251 5.061967939 CORE 21 Ti Ti 0.0000 21 Si 0.766916925 14.942354107 8.893167739 CORE 22 Si Si 0.0000 22 Si -2.208565286 16.264867241 5.088759492 CORE 23 Si Si 0.0000 23 Si -11.918305773 9.126756401 8.780423458 CORE 24 Si Si 0.0000 24 Si 0.732009023 9.083972873 5.726062921 CORE 25 Si Si 0.0000 25 Si -8.963976991 16.313593679 9.530649861 CORE 26 Si Si 0.0000 26 Si -11.779128723 14.963530803 5.718845878 CORE 27 Si Si 0.0000 27 Si -2.150342984 7.660354313 9.561575404 CORE 28 Si Si 0.0000 28 Si -12.031156263 9.242659135 5.757343036 CORE 29 Si Si 0.0000 29 Si -2.154163029 16.247445585 9.538759611 CORE 30 Si Si 0.0000 30 Si 0.689649628 14.916528225 5.751134406 CORE 31 Si Si 0.0000 31 Si -9.108565804 7.678892823 9.234163904 CORE 32 Si Si 0.0000 32 Si -2.157481369 7.688483526 5.107671110 CORE 33 Si Si 0.0000 33 Si -11.828149623 14.907573499 8.842434981 CORE 34 Si Si 0.0000 34 Si -8.868391181 16.180151809 5.027423567 CORE 35 Si Si 0.0000 35 Si 0.695273273 9.113821765 8.874740777 CORE 36 Si Si 0.0000 36 O -15.188880041 7.701580039 3.401325476 CORE 37 O O 0.0000 37 O -5.552133019 14.973187670 7.395654970 CORE 38 O O 0.0000 38 O -15.157651122 16.072425404 3.608781815 CORE 39 O O 0.0000 39 O -5.519573339 9.088234879 7.348649748 CORE 40 O O 0.0000 40 O -10.511970988 4.295845508 7.314679568 CORE 41 O O 0.0000 41 O -0.654773672 12.004693316 3.498982972 CORE 42 O O 0.0000 42 O -10.418064074 12.072931547 3.523986754 CORE 43 O O 0.0000 43 O -0.728680099 4.669865226 7.301792030 CORE 44 O O 0.0000 44 O -13.070161259 6.146019607 3.653321462 CORE 45 O O 0.0000 45 O -3.535764703 13.274132671 7.240617453 CORE 46 O O 0.0000 46 O -7.527602024 10.808466286 7.392876358 CORE 47 O O 0.0000 47 O 2.182287030 17.938244541 3.556784053 CORE 48 O O 0.0000 48 O -3.349861859 10.634448794 7.406681099 CORE 49 O O 0.0000 49 O -13.357482362 17.937208266 3.220164776 CORE 50 O O 0.0000 50 O 1.920038703 6.146999521 3.468791145 CORE 51 O O 0.0000 51 O -7.709606882 13.406265251 7.338309258 CORE 52 O O 0.0000 52 O -11.453652968 4.376977293 4.798660022 CORE 53 O O 0.0000 53 O -1.565336811 12.189630551 8.638238715 CORE 54 O O 0.0000 54 O 0.150091218 4.723425358 4.817317102 CORE 55 O O 0.0000 55 O -9.497357319 11.950510179 8.678036403 CORE 56 O O 0.0000 56 O -1.569965513 11.990152446 5.981781270 CORE 57 O O 0.0000 57 O -11.337603069 4.880234821 9.748334788 CORE 58 O O 0.0000 58 O -9.547697627 12.014885979 6.013983076 CORE 59 O O 0.0000 59 O 0.201539242 4.606244036 9.761689333 CORE 60 O O 0.0000 60 O -10.561633695 8.556217925 5.543016012 CORE 61 O O 0.0000 61 O -0.698133785 15.594086206 9.213798927 CORE 62 O O 0.0000 62 O -10.460274132 8.413262470 8.673433048 CORE 63 O O 0.0000 63 O -0.794615044 15.554644592 5.487091784 CORE 64 O O 0.0000 64 O -0.719184640 8.410714953 5.382600040 CORE 65 O O 0.0000 65 O -10.399760380 15.621978009 9.193497928 CORE 66 O O 0.0000 66 O -10.235811731 15.442864330 5.488345301 CORE 67 O O 0.0000 67 O -0.736381003 8.424460994 9.260352585 CORE 68 O O 0.0000 68 O -12.572531167 9.127094282 7.293735455 CORE 69 O O 0.0000 69 O -2.502726869 16.038534330 3.505830228 CORE 70 O O 0.0000 70 O -9.126938009 7.812235375 3.239732136 CORE 71 O O 0.0000 71 O 1.082363184 15.126106306 7.311176749 CORE 72 O O 0.0000 72 O -2.518926940 7.812770595 3.529233984 CORE 73 O O 0.0000 73 O -12.172363422 15.168472239 7.279198367 CORE 74 O O 0.0000 74 O 1.031231733 8.863044624 7.306134153 CORE 75 O O 0.0000 75 O -8.546047286 15.948285799 3.453955018 CORE 76 O O 0.0000 76 O -13.155394458 8.533641990 4.827920345 CORE 77 O O 0.0000 77 O -3.298556822 15.526432205 8.642064841 CORE 78 O O 0.0000 78 O 1.794588221 15.651071281 4.828320789 CORE 79 O O 0.0000 79 O -7.833236059 8.383598230 8.508849387 CORE 80 O O 0.0000 80 O -3.335352615 8.368310821 6.000210970 CORE 81 O O 0.0000 81 O -13.014754628 15.545019437 9.737900196 CORE 82 O O 0.0000 82 O -7.596163467 15.625262408 5.874605320 CORE 83 O O 0.0000 83 O 1.873765926 8.469664324 9.776927502 CORE 84 O O 0.0000 84 O -7.725901252 8.636989196 5.894510744 CORE 85 O O 0.0000 85 O 1.915935763 15.694265773 9.754643225 CORE 86 O O 0.0000 86 O -3.414506841 15.613570467 5.966570335 CORE 87 O O 0.0000 87 O -12.902824413 8.325002020 9.783120461 CORE 88 O O 0.0000 88 O 1.919250254 8.398727942 4.855747165 CORE 89 O O 0.0000 89 O -7.807654072 15.779163408 8.526060259 CORE 90 O O 0.0000 90 O -12.791924743 15.802154055 4.769356794 CORE 91 O O 0.0000 91 O -3.341691581 8.306963269 8.672499034 CORE 92 O O 0.0000 92 O -9.462079152 5.987537025 5.606657913 CORE 93 O O 0.0000 93 O 0.749853927 13.355467415 9.289907384 CORE 94 O O 0.0000 94 O -2.132159375 17.872549215 5.387859290 CORE 95 O O 0.0000 95 O -11.755065901 10.661594202 9.318773577 CORE 96 O O 0.0000 96 O 0.677860409 10.680347347 5.388380764 CORE 97 O O 0.0000 97 O -9.058016115 17.945456381 9.403805071 CORE 98 O O 0.0000 98 O -11.821572217 13.372035863 5.365505254 CORE 99 O O 0.0000 99 O -1.980825921 6.073959740 9.197530513 CORE 100 O O 0.0000 100 O -11.893908673 10.820128388 5.380822538 CORE 101 O O 0.0000 101 O -2.129119120 17.848473427 9.199944435 CORE 102 O O 0.0000 102 O 0.669588135 13.324081335 5.394748766 CORE 103 O O 0.0000 103 O -9.138179334 6.084943773 8.802976270 CORE 104 O O 0.0000 104 O -2.056273453 6.100614758 5.500369953 CORE 105 O O 0.0000 105 O -11.728145262 13.309750343 9.149330806 CORE 106 O O 0.0000 106 O -9.066460436 17.780389434 5.283096120 CORE 107 O O 0.0000 107 O 0.613299911 10.718214439 9.151379049 CORE 108 O O 0.0000 108 O2 12.266195668 6.562137287 4.359129781 CORE 109 O2 O2 0.0000 109 O2 13.065516584 7.960917807 3.208205623 CORE 110 O2 O2 0.0000 110 H 11.910356614 5.714658194 3.954814870 CORE 111 H H 0.0000 111 H 12.639056535 8.708276721 3.696645171 CORE 112 H H 0.0000 112 C 13.206461055 6.048541795 5.427007322 CORE 113 C C 0.0000 113 C 12.567902273 4.740107826 5.596288059 CORE 114 C C 0.0000 114 H 12.767212418 3.885159879 4.921937103 CORE 115 H H 0.0000 115 H 11.880758479 4.596090725 6.444692748 CORE 116 H H 0.0000 116 H 14.192958806 6.124953328 4.947110449 CORE 117 H H 0.0000 117 H 13.085204925 6.748512248 6.290506631 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.319089921 4.739218581 3.460805469 CORE 1 Si Si 0.0000 1 Si -2.514309592 12.008437113 7.318635550 CORE 2 Si Si 0.0000 2 Si 1.119703214 4.745999419 3.499499198 CORE 3 Si Si 0.0000 3 Si -8.585643162 12.042148867 7.338859488 CORE 4 Si Si 0.0000 4 Si -13.584331282 7.683268994 11.114642994 CORE 5 Si Si 0.0000 5 Si -3.945084392 14.850105963 7.308341616 CORE 6 Si Si 0.0000 6 Si -7.147030438 9.223561044 7.296905610 CORE 7 Si Si 0.0000 7 Si 2.494654353 16.336553911 3.530473580 CORE 8 Si Si 0.0000 8 Si -13.581258888 16.334009276 3.435112702 CORE 9 Si Si 0.0000 9 Si -3.893721813 9.101690463 7.359914591 CORE 10 Si Si 0.0000 10 Si -7.168425579 14.944150472 7.295781948 CORE 11 Si Si 0.0000 11 Si 2.447807318 7.685094909 3.479824805 CORE 12 Si Si 0.0000 12 Si -10.132173226 4.524440670 5.737665753 CORE 13 Si Si 0.0000 13 Si -0.212645086 12.062488643 9.544622645 CORE 14 Si Si 0.0000 14 Si -10.860249046 12.002387822 9.571785811 CORE 15 Si Si 0.0000 15 Si -1.183137713 4.740830437 5.744657774 CORE 16 Si Si 0.0000 16 Si -10.030148571 4.717582487 8.816368091 CORE 17 Si Si 0.0000 17 Si -0.220542862 11.997627210 5.067369444 CORE 18 Si Si 0.0000 18 Si -10.898568431 12.062092959 5.082689922 CORE 19 Si Si 0.0000 19 Si -1.154587252 4.705216513 8.871453699 CORE 20 Si Si 0.0000 20 Ti -9.049858731 7.668828883 5.073545287 CORE 21 Ti Ti 0.0000 21 Si 0.766973889 14.940618716 8.892422004 CORE 22 Si Si 0.0000 22 Si -2.206511891 16.265539401 5.087932360 CORE 23 Si Si 0.0000 23 Si -11.921411267 9.124755779 8.783034483 CORE 24 Si Si 0.0000 24 Si 0.731983620 9.084609860 5.731355414 CORE 25 Si Si 0.0000 25 Si -8.970022285 16.315572534 9.538116497 CORE 26 Si Si 0.0000 26 Si -11.778770966 14.973171670 5.716932739 CORE 27 Si Si 0.0000 27 Si -2.155538630 7.664197571 9.557125867 CORE 28 Si Si 0.0000 28 Si -12.028796303 9.238411399 5.750601977 CORE 29 Si Si 0.0000 29 Si -2.152839388 16.248043076 9.536708021 CORE 30 Si Si 0.0000 30 Si 0.688446842 14.914512179 5.751613965 CORE 31 Si Si 0.0000 31 Si -9.120039796 7.679327427 9.239092467 CORE 32 Si Si 0.0000 32 Si -2.156939442 7.691634445 5.115239074 CORE 33 Si Si 0.0000 33 Si -11.829269464 14.912469898 8.845381636 CORE 34 Si Si 0.0000 34 Si -8.875393507 16.171779727 5.027627136 CORE 35 Si Si 0.0000 35 Si 0.692414494 9.115483497 8.874459310 CORE 36 Si Si 0.0000 36 O -15.182333041 7.706075853 3.398183468 CORE 37 O O 0.0000 37 O -5.552400711 14.973914894 7.394033035 CORE 38 O O 0.0000 38 O -15.160887095 16.063454246 3.609572281 CORE 39 O O 0.0000 39 O -5.528357519 9.085453843 7.345903467 CORE 40 O O 0.0000 40 O -10.510355600 4.310621339 7.317740408 CORE 41 O O 0.0000 41 O -0.655458393 12.004994728 3.500726470 CORE 42 O O 0.0000 42 O -10.419770682 12.075474739 3.535704226 CORE 43 O O 0.0000 43 O -0.726854175 4.673846577 7.301523343 CORE 44 O O 0.0000 44 O -13.076986535 6.147364790 3.651813027 CORE 45 O O 0.0000 45 O -3.540338558 13.277093315 7.240900898 CORE 46 O O 0.0000 46 O -7.526512012 10.807486804 7.401676767 CORE 47 O O 0.0000 47 O 2.182124991 17.939199518 3.558270807 CORE 48 O O 0.0000 48 O -3.356535488 10.632853226 7.409404558 CORE 49 O O 0.0000 49 O -13.367722008 17.938242812 3.222078600 CORE 50 O O 0.0000 50 O 1.916626258 6.143975741 3.471315600 CORE 51 O O 0.0000 51 O -7.723227221 13.410681927 7.327106946 CORE 52 O O 0.0000 52 O -11.475186669 4.386624070 4.827077770 CORE 53 O O 0.0000 53 O -1.569397029 12.190754757 8.641044561 CORE 54 O O 0.0000 54 O 0.145223691 4.723850016 4.816834272 CORE 55 O O 0.0000 55 O -9.488808885 11.958535009 8.686949247 CORE 56 O O 0.0000 56 O -1.571864951 11.986395532 5.985167623 CORE 57 O O 0.0000 57 O -11.332720339 4.862260359 9.764816965 CORE 58 O O 0.0000 58 O -9.556323809 12.005451531 6.017850357 CORE 59 O O 0.0000 59 O 0.198918518 4.608084511 9.761339477 CORE 60 O O 0.0000 60 O -10.563628394 8.540076586 5.545601400 CORE 61 O O 0.0000 61 O -0.702724767 15.596190758 9.209273926 CORE 62 O O 0.0000 62 O -10.472738449 8.407557259 8.680588168 CORE 63 O O 0.0000 63 O -0.800938037 15.554839047 5.493097149 CORE 64 O O 0.0000 64 O -0.720806764 8.408295438 5.387806039 CORE 65 O O 0.0000 65 O -10.401239516 15.625639642 9.190083580 CORE 66 O O 0.0000 66 O -10.236153129 15.446707588 5.489333783 CORE 67 O O 0.0000 67 O -0.743159514 8.423489440 9.257228757 CORE 68 O O 0.0000 68 O -12.579882012 9.134623101 7.289801382 CORE 69 O O 0.0000 69 O -2.498127034 16.045707105 3.505079244 CORE 70 O O 0.0000 70 O -9.142487037 7.806548760 3.228495440 CORE 71 O O 0.0000 71 O 1.086656838 15.122748969 7.310448054 CORE 72 O O 0.0000 72 O -2.518346524 7.812894417 3.532294824 CORE 73 O O 0.0000 73 O -12.174932763 15.170462194 7.281837007 CORE 74 O O 0.0000 74 O 1.033256068 8.863287224 7.308971037 CORE 75 O O 0.0000 75 O -8.549444143 15.941864031 3.459015719 CORE 76 O O 0.0000 76 O -13.149088207 8.534114938 4.828777678 CORE 77 O O 0.0000 77 O -3.304986237 15.527785317 8.641758422 CORE 78 O O 0.0000 78 O 1.788849878 15.652488682 4.827027942 CORE 79 O O 0.0000 79 O -7.840448728 8.398038774 8.505867053 CORE 80 O O 0.0000 80 O -3.335705753 8.368991485 6.003465414 CORE 81 O O 0.0000 81 O -13.017628611 15.544406954 9.738228828 CORE 82 O O 0.0000 82 O -7.596389013 15.648514394 5.884082923 CORE 83 O O 0.0000 83 O 1.864885524 8.471116898 9.779056153 CORE 84 O O 0.0000 84 O -7.728607807 8.629940820 5.891085519 CORE 85 O O 0.0000 85 O 1.911751803 15.696950519 9.755087562 CORE 86 O O 0.0000 86 O -3.416715347 15.613259253 5.965343367 CORE 87 O O 0.0000 87 O -12.901957445 8.326732077 9.779381666 CORE 88 O O 0.0000 88 O 1.917342925 8.398273590 4.861768429 CORE 89 O O 0.0000 89 O -7.802789817 15.783755945 8.533722932 CORE 90 O O 0.0000 90 O -12.793350958 15.811208675 4.766850976 CORE 91 O O 0.0000 91 O -3.352067286 8.307865920 8.677365979 CORE 92 O O 0.0000 92 O -9.452049657 5.989978882 5.592918823 CORE 93 O O 0.0000 93 O 0.748304355 13.352763066 9.291439173 CORE 94 O O 0.0000 94 O -2.133966632 17.873839046 5.392279920 CORE 95 O O 0.0000 95 O -11.754399269 10.661271023 9.315459113 CORE 96 O O 0.0000 96 O 0.676433425 10.678440421 5.389035061 CORE 97 O O 0.0000 97 O -9.064660300 17.951038345 9.410720031 CORE 98 O O 0.0000 98 O -11.820329018 13.363615780 5.366849602 CORE 99 O O 0.0000 99 O -1.985620703 6.074748226 9.196932966 CORE 100 O O 0.0000 100 O -11.895204794 10.813477138 5.380969585 CORE 101 O O 0.0000 101 O -2.129348900 17.848964393 9.195487519 CORE 102 O O 0.0000 102 O 0.666866184 13.320625545 5.396031266 CORE 103 O O 0.0000 103 O -9.142029016 6.081963957 8.789779422 CORE 104 O O 0.0000 104 O -2.058858767 6.100680345 5.504035643 CORE 105 O O 0.0000 105 O -11.724644676 13.311677882 9.155939576 CORE 106 O O 0.0000 106 O -9.078825644 17.775630263 5.275453149 CORE 107 O O 0.0000 107 O 0.608186631 10.717067891 9.150793522 CORE 108 O O 0.0000 108 O2 12.276062547 6.554463455 4.338146262 CORE 109 O2 O2 0.0000 109 O2 13.066285597 7.964395363 3.198300494 CORE 110 O2 O2 0.0000 110 H 11.967159438 5.720989292 3.909340981 CORE 111 H H 0.0000 111 H 12.690153539 8.736357357 3.693495555 CORE 112 H H 0.0000 112 C 13.237200585 6.032822231 5.441020272 CORE 113 C C 0.0000 113 C 12.608827756 4.702122677 5.619002524 CORE 114 C C 0.0000 114 H 12.810598318 3.863564003 4.946052285 CORE 115 H H 0.0000 115 H 11.935440168 4.579003203 6.474085817 CORE 116 H H 0.0000 116 H 14.216411382 6.101698314 4.941538315 CORE 117 H H 0.0000 117 H 13.110326198 6.760742868 6.290727849 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.308290258 4.739534119 3.452123733 CORE 1 Si Si 0.0000 1 Si -2.510799000 12.013424613 7.316535501 CORE 2 Si Si 0.0000 2 Si 1.119512885 4.748024258 3.499725969 CORE 3 Si Si 0.0000 3 Si -8.580115740 12.040212535 7.338347751 CORE 4 Si Si 0.0000 4 Si -13.581532160 7.684188510 11.117101038 CORE 5 Si Si 0.0000 5 Si -3.945424251 14.847767459 7.309490762 CORE 6 Si Si 0.0000 6 Si -7.142248550 9.226346117 7.301017311 CORE 7 Si Si 0.0000 7 Si 2.496068828 16.336727897 3.530614618 CORE 8 Si Si 0.0000 8 Si -13.574890862 16.334150541 3.438011813 CORE 9 Si Si 0.0000 9 Si -3.894658061 9.100452093 7.357890691 CORE 10 Si Si 0.0000 10 Si -7.164771037 14.935764841 7.292977319 CORE 11 Si Si 0.0000 11 Si 2.445683488 7.685303346 3.479296712 CORE 12 Si Si 0.0000 12 Si -10.134177740 4.519561424 5.739878464 CORE 13 Si Si 0.0000 13 Si -0.213419872 12.063218606 9.542218536 CORE 14 Si Si 0.0000 14 Si -10.859759465 11.998051003 9.566960021 CORE 15 Si Si 0.0000 15 Si -1.185403567 4.741799396 5.743758373 CORE 16 Si Si 0.0000 16 Si -10.024364233 4.715776464 8.811870552 CORE 17 Si Si 0.0000 17 Si -0.221072472 11.999348762 5.067078544 CORE 18 Si Si 0.0000 18 Si -10.894984132 12.063103000 5.080045577 CORE 19 Si Si 0.0000 19 Si -1.156614666 4.705582359 8.871096996 CORE 20 Si Si 0.0000 20 Ti -9.047453353 7.672139084 5.063807136 CORE 21 Ti Ti 0.0000 21 Si 0.766925970 14.942078497 8.893049295 CORE 22 Si Si 0.0000 22 Si -2.208239091 16.264974055 5.088628116 CORE 23 Si Si 0.0000 23 Si -11.918799203 9.126438556 8.780838280 CORE 24 Si Si 0.0000 24 Si 0.732004982 9.084074064 5.726903671 CORE 25 Si Si 0.0000 25 Si -8.964937294 16.313908064 9.531836055 CORE 26 Si Si 0.0000 26 Si -11.779071951 14.965062369 5.718541970 CORE 27 Si Si 0.0000 27 Si -2.151168383 7.660964921 9.560868542 CORE 28 Si Si 0.0000 28 Si -12.030781379 9.241984381 5.756272092 CORE 29 Si Si 0.0000 29 Si -2.153952686 16.247540579 9.538433642 CORE 30 Si Si 0.0000 30 Si 0.689458529 14.916207929 5.751210555 CORE 31 Si Si 0.0000 31 Si -9.110388649 7.678961869 9.234946838 CORE 32 Si Si 0.0000 32 Si -2.157395345 7.688984006 5.108873431 CORE 33 Si Si 0.0000 33 Si -11.828327443 14.908351319 8.842903129 CORE 34 Si Si 0.0000 34 Si -8.869503516 16.178821760 5.027455897 CORE 35 Si Si 0.0000 35 Si 0.694819102 9.114085843 8.874696047 CORE 36 Si Si 0.0000 36 O -15.187839872 7.702294290 3.400826291 CORE 37 O O 0.0000 37 O -5.552175550 14.973303132 7.395397314 CORE 38 O O 0.0000 38 O -15.158165144 16.071000219 3.608907410 CORE 39 O O 0.0000 39 O -5.520968762 9.087793067 7.348213474 CORE 40 O O 0.0000 40 O -10.511714458 4.298192949 7.315165822 CORE 41 O O 0.0000 41 O -0.654882596 12.004741173 3.499259951 CORE 42 O O 0.0000 42 O -10.418335230 12.073335592 3.525848240 CORE 43 O O 0.0000 43 O -0.728390084 4.670497744 7.301749354 CORE 44 O O 0.0000 44 O -13.071245498 6.146233377 3.653081835 CORE 45 O O 0.0000 45 O -3.536491186 13.274603024 7.240662488 CORE 46 O O 0.0000 46 O -7.527428823 10.808310607 7.394274412 CORE 47 O O 0.0000 47 O 2.182261243 17.938396185 3.557020257 CORE 48 O O 0.0000 48 O -3.350922042 10.634195238 7.407113721 CORE 49 O O 0.0000 49 O -13.359109105 17.937372738 3.220468837 CORE 50 O O 0.0000 50 O 1.919496584 6.146519222 3.469192198 CORE 51 O O 0.0000 51 O -7.711770741 13.406966960 7.336529626 CORE 52 O O 0.0000 52 O -11.457073881 4.378509724 4.803174601 CORE 53 O O 0.0000 53 O -1.565981696 12.189809150 8.638684422 CORE 54 O O 0.0000 54 O 0.149317971 4.723492819 4.817240345 CORE 55 O O 0.0000 55 O -9.495999230 11.951785018 8.679452334 CORE 56 O O 0.0000 56 O -1.570267268 11.989555532 5.982319252 CORE 57 O O 0.0000 57 O -11.336827513 4.877379405 9.750953192 CORE 58 O O 0.0000 58 O -9.549068032 12.013387135 6.014597435 CORE 59 O O 0.0000 59 O 0.201122983 4.606536367 9.761633801 CORE 60 O O 0.0000 60 O -10.561950653 8.553653542 5.543426801 CORE 61 O O 0.0000 61 O -0.698863154 15.594420484 9.213080121 CORE 62 O O 0.0000 62 O -10.462254205 8.412356071 8.674569718 CORE 63 O O 0.0000 63 O -0.795619418 15.554675439 5.488045805 CORE 64 O O 0.0000 64 O -0.719442325 8.410330511 5.383427097 CORE 65 O O 0.0000 65 O -10.399995356 15.622559788 9.192955533 CORE 66 O O 0.0000 66 O -10.235866000 15.443474938 5.488502390 CORE 67 O O 0.0000 67 O -0.737457928 8.424306612 9.259856366 CORE 68 O O 0.0000 68 O -12.573698927 9.128290417 7.293110522 CORE 69 O O 0.0000 69 O -2.501996153 16.039673815 3.505710947 CORE 70 O O 0.0000 70 O -9.129408048 7.811331859 3.237947026 CORE 71 O O 0.0000 71 O 1.083045212 15.125572961 7.311060967 CORE 72 O O 0.0000 72 O -2.518834759 7.812790343 3.529720237 CORE 73 O O 0.0000 73 O -12.172771599 15.168788354 7.279617525 CORE 74 O O 0.0000 74 O 1.031553309 8.863083256 7.306584881 CORE 75 O O 0.0000 75 O -8.546586903 15.947265667 3.454759025 CORE 76 O O 0.0000 76 O -13.154392586 8.533717091 4.828056514 CORE 77 O O 0.0000 77 O -3.299578323 15.526647129 8.642016154 CORE 78 O O 0.0000 78 O 1.793676607 15.651296439 4.828115394 CORE 79 O O 0.0000 79 O -7.834381880 8.385892336 8.508375609 CORE 80 O O 0.0000 80 O -3.335408617 8.368418931 6.000728033 CORE 81 O O 0.0000 81 O -13.015211302 15.544922137 9.737952382 CORE 82 O O 0.0000 82 O -7.596199262 15.628956330 5.876110940 CORE 83 O O 0.0000 83 O 1.872355108 8.469895104 9.777265643 CORE 84 O O 0.0000 84 O -7.726331176 8.635869459 5.893966600 CORE 85 O O 0.0000 85 O 1.915271248 15.694692305 9.754713820 CORE 86 O O 0.0000 86 O -3.414857862 15.613521025 5.966375438 CORE 87 O O 0.0000 87 O -12.902686622 8.325276909 9.782526490 CORE 88 O O 0.0000 88 O 1.918947344 8.398655869 4.856703772 CORE 89 O O 0.0000 89 O -7.806881403 15.779893083 8.527277565 CORE 90 O O 0.0000 90 O -12.792151252 15.803592502 4.768958708 CORE 91 O O 0.0000 91 O -3.343339878 8.307106695 8.673272231 CORE 92 O O 0.0000 92 O -9.460485895 5.987925070 5.604475250 CORE 93 O O 0.0000 93 O 0.749607789 13.355037856 9.290150739 CORE 94 O O 0.0000 94 O -2.132446504 17.872754049 5.388561588 CORE 95 O O 0.0000 95 O -11.754959863 10.661542885 9.318247006 CORE 96 O O 0.0000 96 O 0.677633709 10.680044349 5.388484755 CORE 97 O O 0.0000 97 O -9.059071680 17.946343175 9.404903629 CORE 98 O O 0.0000 98 O -11.821374768 13.370698175 5.365718789 CORE 99 O O 0.0000 99 O -1.981587621 6.074085004 9.197435575 CORE 100 O O 0.0000 100 O -11.894114590 10.819071787 5.380845892 CORE 101 O O 0.0000 101 O -2.129155492 17.848551410 9.199236356 CORE 102 O O 0.0000 102 O 0.669155710 13.323532421 5.394952487 CORE 103 O O 0.0000 103 O -9.138790734 6.084470393 8.800879721 CORE 104 O O 0.0000 104 O -2.056684324 6.100625137 5.500952285 CORE 105 O O 0.0000 105 O -11.727589094 13.310056512 9.150380678 CORE 106 O O 0.0000 106 O -9.068424729 17.779633380 5.281881932 CORE 107 O O 0.0000 107 O 0.612487598 10.718032237 9.151286089 CORE 108 O O 0.0000 108 O2 12.267763137 6.560918232 4.355796299 CORE 109 O2 O2 0.0000 109 O2 13.065638787 7.961470180 3.206632070 CORE 110 O2 O2 0.0000 110 H 11.919380581 5.715663911 3.947590753 CORE 111 H H 0.0000 111 H 12.647174084 8.712737651 3.696144845 CORE 112 H H 0.0000 112 C 13.211344362 6.046044441 5.429233498 CORE 113 C C 0.0000 113 C 12.574403855 4.734073383 5.599896542 CORE 114 C C 0.0000 114 H 12.774104857 3.881729027 4.925768174 CORE 115 H H 0.0000 115 H 11.889445474 4.593376141 6.449362286 CORE 116 H H 0.0000 116 H 14.196684553 6.121258974 4.946225197 CORE 117 H H 0.0000 117 H 13.089195862 6.750455211 6.290541776 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.314725832 4.740549205 3.460669452 CORE 1 Si Si 0.0000 1 Si -2.514994506 12.013333512 7.318706449 CORE 2 Si Si 0.0000 2 Si 1.116639479 4.745896786 3.500274830 CORE 3 Si Si 0.0000 3 Si -8.583706390 12.038444279 7.337398598 CORE 4 Si Si 0.0000 4 Si -13.578172252 7.686595339 11.113108162 CORE 5 Si Si 0.0000 5 Si -3.944857306 14.850197929 7.308616008 CORE 6 Si Si 0.0000 6 Si -7.145215869 9.227851448 7.296597366 CORE 7 Si Si 0.0000 7 Si 2.493454839 16.336457332 3.530885663 CORE 8 Si Si 0.0000 8 Si -13.580473517 16.334009132 3.437513616 CORE 9 Si Si 0.0000 9 Si -3.901328418 9.100087400 7.359583297 CORE 10 Si Si 0.0000 10 Si -7.166678558 14.940057550 7.293735074 CORE 11 Si Si 0.0000 11 Si 2.447947611 7.685690526 3.480729988 CORE 12 Si Si 0.0000 12 Si -10.133338292 4.522393920 5.741215813 CORE 13 Si Si 0.0000 13 Si -0.215553517 12.062575853 9.543977705 CORE 14 Si Si 0.0000 14 Si -10.856902032 11.996671224 9.572821914 CORE 15 Si Si 0.0000 15 Si -1.186620786 4.741838316 5.745241780 CORE 16 Si Si 0.0000 16 Si -10.026708606 4.717685841 8.816496957 CORE 17 Si Si 0.0000 17 Si -0.222823150 11.997247382 5.068206770 CORE 18 Si Si 0.0000 18 Si -10.897895834 12.060001812 5.084330114 CORE 19 Si Si 0.0000 19 Si -1.158166355 4.706494668 8.870289643 CORE 20 Si Si 0.0000 20 Ti -9.044660583 7.673656380 5.059763444 CORE 21 Ti Ti 0.0000 21 Si 0.764504619 14.941042798 8.892651742 CORE 22 Si Si 0.0000 22 Si -2.209767879 16.266722274 5.088973864 CORE 23 Si Si 0.0000 23 Si -11.924136682 9.127023650 8.781245494 CORE 24 Si Si 0.0000 24 Si 0.730516030 9.084165598 5.730561601 CORE 25 Si Si 0.0000 25 Si -8.965405707 16.317714132 9.538641851 CORE 26 Si Si 0.0000 26 Si -11.779015180 14.964363254 5.716658879 CORE 27 Si Si 0.0000 27 Si -2.156301100 7.661257252 9.560585934 CORE 28 Si Si 0.0000 28 Si -12.029409627 9.237694698 5.756081227 CORE 29 Si Si 0.0000 29 Si -2.156507786 16.248876249 9.536414838 CORE 30 Si Si 0.0000 30 Si 0.686496406 14.914600397 5.751463342 CORE 31 Si Si 0.0000 31 Si -9.115652228 7.680418623 9.231509441 CORE 32 Si Si 0.0000 32 Si -2.158260388 7.688754812 5.112393670 CORE 33 Si Si 0.0000 33 Si -11.828990610 14.909729800 8.843855857 CORE 34 Si Si 0.0000 34 Si -8.871562684 16.178738732 5.027865470 CORE 35 Si Si 0.0000 35 Si 0.690054918 9.114793751 8.874408570 CORE 36 Si Si 0.0000 36 O -15.190101878 7.706089979 3.398264408 CORE 37 O O 0.0000 37 O -5.556060064 14.973643753 7.395118814 CORE 38 O O 0.0000 38 O -15.161765609 16.063769352 3.609024333 CORE 39 O O 0.0000 39 O -5.523036013 9.084820892 7.345769199 CORE 40 O O 0.0000 40 O -10.513052725 4.306669537 7.314246337 CORE 41 O O 0.0000 41 O -0.655486106 12.004788453 3.500448351 CORE 42 O O 0.0000 42 O -10.419216246 12.075666167 3.531437338 CORE 43 O O 0.0000 43 O -0.726297430 4.673390927 7.302562489 CORE 44 O O 0.0000 44 O -13.077095267 6.146580917 3.650352593 CORE 45 O O 0.0000 45 O -3.537367390 13.272193601 7.240850462 CORE 46 O O 0.0000 46 O -7.526989277 10.808593280 7.398323354 CORE 47 O O 0.0000 47 O 2.183039493 17.938252470 3.558152895 CORE 48 O O 0.0000 48 O -3.355694308 10.633315507 7.409147739 CORE 49 O O 0.0000 49 O -13.366906231 17.938128935 3.224548283 CORE 50 O O 0.0000 50 O 1.919032598 6.147128389 3.470847833 CORE 51 O O 0.0000 51 O -7.721075101 13.415687590 7.327572736 CORE 52 O O 0.0000 52 O -11.473202170 4.386560068 4.821377682 CORE 53 O O 0.0000 53 O -1.568918224 12.190545022 8.641269582 CORE 54 O O 0.0000 54 O 0.148432529 4.723853476 4.814327922 CORE 55 O O 0.0000 55 O -9.491645726 11.959250124 8.688319915 CORE 56 O O 0.0000 56 O -1.571838394 11.986291313 5.984554025 CORE 57 O O 0.0000 57 O -11.336035215 4.863841368 9.768538872 CORE 58 O O 0.0000 58 O -9.556825899 12.006195476 6.018051796 CORE 59 O O 0.0000 59 O 0.201634311 4.608003500 9.763223785 CORE 60 O O 0.0000 60 O -10.567578340 8.543148223 5.545544650 CORE 61 O O 0.0000 61 O -0.698611242 15.594449890 9.208899423 CORE 62 O O 0.0000 62 O -10.469231898 8.405926808 8.679514105 CORE 63 O O 0.0000 63 O -0.796579914 15.553274038 5.493764302 CORE 64 O O 0.0000 64 O -0.718824767 8.409358814 5.387197005 CORE 65 O O 0.0000 65 O -10.400734154 15.626121959 9.190947760 CORE 66 O O 0.0000 66 O -10.239402188 15.443517894 5.490591332 CORE 67 O O 0.0000 67 O -0.740905206 8.424909292 9.255940247 CORE 68 O O 0.0000 68 O -12.575652057 9.133509995 7.288195347 CORE 69 O O 0.0000 69 O -2.498668383 16.044495546 3.505183463 CORE 70 O O 0.0000 70 O -9.139943676 7.806712655 3.240361025 CORE 71 O O 0.0000 71 O 1.086486524 15.122603957 7.311014411 CORE 72 O O 0.0000 72 O -2.517321559 7.812892255 3.531734476 CORE 73 O O 0.0000 73 O -12.175789724 15.170701767 7.279479454 CORE 74 O O 0.0000 74 O 1.033614402 8.863112950 7.308953464 CORE 75 O O 0.0000 75 O -8.549696247 15.940485117 3.456012466 CORE 76 O O 0.0000 76 O -13.152661153 8.531400209 4.825477059 CORE 77 O O 0.0000 77 O -3.302337993 15.529790840 8.644236625 CORE 78 O O 0.0000 78 O 1.789594450 15.652522990 4.826696040 CORE 79 O O 0.0000 79 O -7.844370000 8.391224205 8.510994774 CORE 80 O O 0.0000 80 O -3.335819296 8.370260126 6.005264521 CORE 81 O O 0.0000 81 O -13.019171448 15.545464708 9.738701236 CORE 82 O O 0.0000 82 O -7.597174191 15.647255699 5.882674219 CORE 83 O O 0.0000 83 O 1.866992418 8.469425904 9.781609440 CORE 84 O O 0.0000 84 O -7.728552191 8.630873022 5.891759062 CORE 85 O O 0.0000 85 O 1.912241192 15.696632818 9.754890535 CORE 86 O O 0.0000 86 O -3.415062624 15.614495461 5.963210532 CORE 87 O O 0.0000 87 O -12.906786675 8.323560401 9.784199621 CORE 88 O O 0.0000 88 O 1.919172313 8.396733663 4.859065813 CORE 89 O O 0.0000 89 O -7.805465195 15.783502822 8.536300942 CORE 90 O O 0.0000 90 O -12.793399646 15.809763021 4.768111112 CORE 91 O O 0.0000 91 O -3.351504960 8.308095402 8.675551353 CORE 92 O O 0.0000 92 O -9.452587927 5.985284289 5.594862543 CORE 93 O O 0.0000 93 O 0.748454463 13.354633090 9.290927816 CORE 94 O O 0.0000 94 O -2.133629660 17.873164725 5.391594205 CORE 95 O O 0.0000 95 O -11.753084673 10.664417040 9.316128015 CORE 96 O O 0.0000 96 O 0.676882593 10.678516098 5.388790565 CORE 97 O O 0.0000 97 O -9.063659968 17.945893291 9.411284487 CORE 98 O O 0.0000 98 O -11.821955569 13.373874030 5.368873578 CORE 99 O O 0.0000 99 O -1.984743151 6.074916302 9.196983783 CORE 100 O O 0.0000 100 O -11.893487602 10.814001258 5.379865246 CORE 101 O O 0.0000 101 O -2.129298864 17.848923887 9.195864837 CORE 102 O O 0.0000 102 O 0.667198153 13.322477695 5.396016508 CORE 103 O O 0.0000 103 O -9.140232152 6.088031698 8.792521520 CORE 104 O O 0.0000 104 O -2.057994109 6.101418957 5.503283593 CORE 105 O O 0.0000 105 O -11.726766774 13.315191908 9.155262838 CORE 106 O O 0.0000 106 O -9.079674137 17.778779163 5.274931370 CORE 107 O O 0.0000 107 O 0.608743761 10.717452764 9.150879559 CORE 108 O O 0.0000 108 O2 12.273490703 6.560330976 4.347237191 CORE 109 O2 O2 0.0000 109 O2 13.068217943 7.962690820 3.197462711 CORE 110 O2 O2 0.0000 110 H 11.961108178 5.715888348 3.904829825 CORE 111 H H 0.0000 111 H 12.687317853 8.732277265 3.696423573 CORE 112 H H 0.0000 112 C 13.221113094 6.023739791 5.441716712 CORE 113 C C 0.0000 113 C 12.619312385 4.721896819 5.627206299 CORE 114 C C 0.0000 114 H 12.810302914 3.866713335 4.942887987 CORE 115 H H 0.0000 115 H 11.929456264 4.578937328 6.470450937 CORE 116 H H 0.0000 116 H 14.225799649 6.103871481 4.941215921 CORE 117 H H 0.0000 117 H 13.112554333 6.751220634 6.284411120 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.325022634 4.742173170 3.474342664 CORE 1 Si Si 0.0000 1 Si -2.521707779 12.013187635 7.322179980 CORE 2 Si Si 0.0000 2 Si 1.112041954 4.742492745 3.501153083 CORE 3 Si Si 0.0000 3 Si -8.589451276 12.035614954 7.335879817 CORE 4 Si Si 0.0000 4 Si -13.572796669 7.690446093 11.106719469 CORE 5 Si Si 0.0000 5 Si -3.943950117 14.854086738 7.307216356 CORE 6 Si Si 0.0000 6 Si -7.149963694 9.230259863 7.289525469 CORE 7 Si Si 0.0000 7 Si 2.489272611 16.336024457 3.531319426 CORE 8 Si Si 0.0000 8 Si -13.589405688 16.333783109 3.436716532 CORE 9 Si Si 0.0000 9 Si -3.912000682 9.099503891 7.362291314 CORE 10 Si Si 0.0000 10 Si -7.169730745 14.946925886 7.294947437 CORE 11 Si Si 0.0000 11 Si 2.451570207 7.686309928 3.483023183 CORE 12 Si Si 0.0000 12 Si -10.131995022 4.526926203 5.743355494 CORE 13 Si Si 0.0000 13 Si -0.218967502 12.061547217 9.546792300 CORE 14 Si Si 0.0000 14 Si -10.852329909 11.994463463 9.582200928 CORE 15 Si Si 0.0000 15 Si -1.188568143 4.741900443 5.747615156 CORE 16 Si Si 0.0000 16 Si -10.030459563 4.720740757 8.823899236 CORE 17 Si Si 0.0000 17 Si -0.225624195 11.993885143 5.070012039 CORE 18 Si Si 0.0000 18 Si -10.902554557 12.055040114 5.091185434 CORE 19 Si Si 0.0000 19 Si -1.160649289 4.707954305 8.868997785 CORE 20 Si Si 0.0000 20 Ti -9.040192188 7.676084254 5.053293582 CORE 21 Ti Ti 0.0000 21 Si 0.760630689 14.939385535 8.892015778 CORE 22 Si Si 0.0000 22 Si -2.212214055 16.269519599 5.089526984 CORE 23 Si Si 0.0000 23 Si -11.932676456 9.127959887 8.781896976 CORE 24 Si Si 0.0000 24 Si 0.728133554 9.084312052 5.736414213 CORE 25 Si Si 0.0000 25 Si -8.966155283 16.323803640 9.549531202 CORE 26 Si Si 0.0000 26 Si -11.778924153 14.963244526 5.713646041 CORE 27 Si Si 0.0000 27 Si -2.164513331 7.661724866 9.560133685 CORE 28 Si Si 0.0000 28 Si -12.027214785 9.230831263 5.755775798 CORE 29 Si Si 0.0000 29 Si -2.160596101 16.251013378 9.533184814 CORE 30 Si Si 0.0000 30 Si 0.681756856 14.912028375 5.751867742 CORE 31 Si Si 0.0000 31 Si -9.124073841 7.682749631 9.226009500 CORE 32 Si Si 0.0000 32 Si -2.159644457 7.688387957 5.118026054 CORE 33 Si Si 0.0000 33 Si -11.830051755 14.911935111 8.845380191 CORE 34 Si Si 0.0000 34 Si -8.874857353 16.178605972 5.028520832 CORE 35 Si Si 0.0000 35 Si 0.682432147 9.115926606 8.873948486 CORE 36 Si Si 0.0000 36 O -15.193721010 7.712163054 3.394165259 CORE 37 O O 0.0000 37 O -5.562275288 14.974188774 7.394673259 CORE 38 O O 0.0000 38 O -15.167526468 16.052199937 3.609211471 CORE 39 O O 0.0000 39 O -5.526343768 9.080065325 7.341858405 CORE 40 O O 0.0000 40 O -10.515194068 4.320231935 7.312775026 CORE 41 O O 0.0000 41 O -0.656451990 12.004864131 3.502349698 CORE 42 O O 0.0000 42 O -10.420626102 12.079395261 3.540379850 CORE 43 O O 0.0000 43 O -0.722949261 4.678020077 7.303863475 CORE 44 O O 0.0000 44 O -13.086455052 6.147137038 3.645985747 CORE 45 O O 0.0000 45 O -3.538769357 13.268338666 7.241151328 CORE 46 O O 0.0000 46 O -7.526285889 10.809045614 7.404801660 CORE 47 O O 0.0000 47 O 2.184284616 17.938022699 3.559965163 CORE 48 O O 0.0000 48 O -3.363329780 10.631908052 7.412402106 CORE 49 O O 0.0000 49 O -13.379381518 17.939339053 3.231075427 CORE 50 O O 0.0000 50 O 1.918290335 6.148103113 3.473496742 CORE 51 O O 0.0000 51 O -7.735961924 13.429640627 7.313241804 CORE 52 O O 0.0000 52 O -11.499007587 4.399440504 4.850502673 CORE 53 O O 0.0000 53 O -1.573616591 12.191722562 8.645405778 CORE 54 O O 0.0000 54 O 0.147015937 4.724430354 4.809668045 CORE 55 O O 0.0000 55 O -9.484680157 11.971194179 8.702507983 CORE 56 O O 0.0000 56 O -1.574351926 11.981068565 5.988129645 CORE 57 O O 0.0000 57 O -11.334767575 4.842180625 9.796675913 CORE 58 O O 0.0000 58 O -9.569238641 11.994688765 6.023578820 CORE 59 O O 0.0000 59 O 0.202452589 4.610350940 9.765767791 CORE 60 O O 0.0000 60 O -10.576583062 8.526339770 5.548933209 CORE 61 O O 0.0000 61 O -0.698208069 15.594496882 9.202210321 CORE 62 O O 0.0000 62 O -10.480396245 8.395639872 8.687425078 CORE 63 O O 0.0000 63 O -0.798116592 15.551031681 5.502913806 CORE 64 O O 0.0000 64 O -0.717836366 8.407803896 5.393228768 CORE 65 O O 0.0000 65 O -10.401915963 15.631821403 9.187735385 CORE 66 O O 0.0000 66 O -10.245060089 15.443586508 5.493933715 CORE 67 O O 0.0000 67 O -0.746421083 8.425873638 9.249674487 CORE 68 O O 0.0000 68 O -12.578776989 9.141861464 7.280331082 CORE 69 O O 0.0000 69 O -2.493343990 16.052210171 3.504339594 CORE 70 O O 0.0000 70 O -9.156800371 7.799321785 3.244223361 CORE 71 O O 0.0000 71 O 1.091992585 15.117853579 7.310939861 CORE 72 O O 0.0000 72 O -2.514900593 7.813055142 3.534957197 CORE 73 O O 0.0000 73 O -12.180618761 15.173763314 7.279258540 CORE 74 O O 0.0000 74 O 1.036912342 8.863160663 7.312743304 CORE 75 O O 0.0000 75 O -8.554671158 15.929636295 3.458018033 CORE 76 O O 0.0000 76 O -13.149890898 8.527693315 4.821349916 CORE 77 O O 0.0000 77 O -3.306753658 15.534820719 8.647789271 CORE 78 O O 0.0000 78 O 1.783063039 15.654485268 4.824424981 CORE 79 O O 0.0000 79 O -7.860350876 8.399755281 8.515185514 CORE 80 O O 0.0000 80 O -3.336476112 8.373206067 6.012522947 CORE 81 O O 0.0000 81 O -13.025507527 15.546332908 9.739899297 CORE 82 O O 0.0000 82 O -7.598733963 15.676534633 5.893175449 CORE 83 O O 0.0000 83 O 1.858412231 8.468675329 9.788559545 CORE 84 O O 0.0000 84 O -7.732105891 8.622878606 5.888226955 CORE 85 O O 0.0000 85 O 1.907393295 15.699737897 9.755173219 CORE 86 O O 0.0000 86 O -3.415390167 15.616054560 5.958146712 CORE 87 O O 0.0000 87 O -12.913346954 8.320813961 9.786876525 CORE 88 O O 0.0000 88 O 1.919532379 8.393658278 4.862845078 CORE 89 O O 0.0000 89 O -7.803199533 15.789278520 8.550738223 CORE 90 O O 0.0000 90 O -12.795396655 15.819635965 4.766754973 CORE 91 O O 0.0000 91 O -3.364568745 8.309677564 8.679198101 CORE 92 O O 0.0000 92 O -9.439951178 5.981059041 5.579482271 CORE 93 O O 0.0000 93 O 0.746609294 13.353985436 9.292171139 CORE 94 O O 0.0000 94 O -2.135522940 17.873821749 5.396446316 CORE 95 O O 0.0000 95 O -11.750084446 10.669015775 9.312737631 CORE 96 O O 0.0000 96 O 0.675680963 10.676070782 5.389279861 CORE 97 O O 0.0000 97 O -9.071001190 17.945173419 9.421493828 CORE 98 O O 0.0000 98 O -11.822885081 13.378955227 5.373921271 CORE 99 O O 0.0000 99 O -1.989791769 6.076246350 9.196260869 CORE 100 O O 0.0000 100 O -11.892484575 10.805888354 5.378296181 CORE 101 O O 0.0000 101 O -2.129528066 17.849519793 9.190470255 CORE 102 O O 0.0000 102 O 0.664065908 13.320790161 5.397718928 CORE 103 O O 0.0000 103 O -9.142538035 6.093729701 8.779148412 CORE 104 O O 0.0000 104 O -2.060089649 6.102688895 5.507013640 CORE 105 O O 0.0000 105 O -11.725451023 13.323408455 9.163074233 CORE 106 O O 0.0000 106 O -9.097673190 17.777412501 5.263810608 CORE 107 O O 0.0000 107 O 0.602753891 10.716525608 9.150229142 CORE 108 O O 0.0000 108 O2 12.282654578 6.559391423 4.333542755 CORE 109 O2 O2 0.0000 109 O2 13.072344555 7.964643729 3.182791736 CORE 110 O2 O2 0.0000 110 H 12.027872564 5.716247419 3.836412493 CORE 111 H H 0.0000 111 H 12.751547730 8.763540676 3.696869660 CORE 112 H H 0.0000 112 C 13.236742756 5.988052352 5.461689841 CORE 113 C C 0.0000 113 C 12.691165995 4.702414287 5.670901925 CORE 114 C C 0.0000 114 H 12.868219613 3.842688142 4.970279674 CORE 115 H H 0.0000 115 H 11.993473296 4.555835255 6.504192748 CORE 116 H H 0.0000 116 H 14.272383803 6.076051607 4.933201109 CORE 117 H H 0.0000 117 H 13.149928040 6.752445310 6.274602070 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.316299075 4.740797283 3.462758622 CORE 1 Si Si 0.0000 1 Si -2.516020242 12.013311169 7.319237204 CORE 2 Si Si 0.0000 2 Si 1.115936860 4.745376558 3.500409021 CORE 3 Si Si 0.0000 3 Si -8.584584134 12.038011981 7.337166502 CORE 4 Si Si 0.0000 4 Si -13.577350895 7.687183605 11.112132004 CORE 5 Si Si 0.0000 5 Si -3.944718745 14.850792105 7.308402169 CORE 6 Si Si 0.0000 6 Si -7.145941389 9.228219456 7.295516837 CORE 7 Si Si 0.0000 7 Si 2.492815920 16.336391168 3.530951922 CORE 8 Si Si 0.0000 8 Si -13.581838149 16.333974681 3.437391825 CORE 9 Si Si 0.0000 9 Si -3.902959010 9.099998317 7.359997053 CORE 10 Si Si 0.0000 10 Si -7.167144853 14.941106944 7.293920310 CORE 11 Si Si 0.0000 11 Si 2.448501084 7.685785087 3.481080376 CORE 12 Si Si 0.0000 12 Si -10.133132953 4.523086405 5.741542695 CORE 13 Si Si 0.0000 13 Si -0.216075237 12.062418732 9.544407741 CORE 14 Si Si 0.0000 14 Si -10.856203455 11.996333775 9.574254962 CORE 15 Si Si 0.0000 15 Si -1.186918307 4.741847829 5.745604416 CORE 16 Si Si 0.0000 16 Si -10.027281709 4.718152590 8.817627998 CORE 17 Si Si 0.0000 17 Si -0.223251149 11.996733640 5.068482608 CORE 18 Si Si 0.0000 18 Si -10.898607690 12.059243741 5.085377552 CORE 19 Si Si 0.0000 19 Si -1.158545858 4.706717664 8.870092235 CORE 20 Si Si 0.0000 20 Ti -9.043977978 7.674027415 5.058774962 CORE 21 Ti Ti 0.0000 21 Si 0.763912849 14.940789531 8.892554597 CORE 22 Si Si 0.0000 22 Si -2.210141608 16.267149672 5.089058380 CORE 23 Si Si 0.0000 23 Si -11.925441463 9.127166788 8.781344996 CORE 24 Si Si 0.0000 24 Si 0.730152116 9.084188085 5.731455829 CORE 25 Si Si 0.0000 25 Si -8.965520212 16.318644460 9.540305702 CORE 26 Si Si 0.0000 26 Si -11.779001324 14.964192295 5.716198567 CORE 27 Si Si 0.0000 27 Si -2.157555845 7.661328749 9.560516784 CORE 28 Si Si 0.0000 28 Si -12.029074387 9.236646026 5.756034519 CORE 29 Si Si 0.0000 29 Si -2.157132465 16.249202742 9.535921358 CORE 30 Si Si 0.0000 30 Si 0.685772233 14.914207451 5.751525113 CORE 31 Si Si 0.0000 31 Si -9.116938920 7.680774811 9.230669072 CORE 32 Si Si 0.0000 32 Si -2.158471886 7.688698738 5.113254275 CORE 33 Si Si 0.0000 33 Si -11.829152842 14.910066673 8.844088714 CORE 34 Si Si 0.0000 34 Si -8.872066122 16.178718551 5.027965581 CORE 35 Si Si 0.0000 35 Si 0.688890237 9.114966872 8.874338279 CORE 36 Si Si 0.0000 36 O -15.190654774 7.707017856 3.397638106 CORE 37 O O 0.0000 37 O -5.557009591 14.973727070 7.395050729 CORE 38 O O 0.0000 38 O -15.162645855 16.062001672 3.609052936 CORE 39 O O 0.0000 39 O -5.523541375 9.084094245 7.345171652 CORE 40 O O 0.0000 40 O -10.513379883 4.308741656 7.314021544 CORE 41 O O 0.0000 41 O -0.655633711 12.004799985 3.500738870 CORE 42 O O 0.0000 42 O -10.419431785 12.076235982 3.532803670 CORE 43 O O 0.0000 43 O -0.725785910 4.674098258 7.302761266 CORE 44 O O 0.0000 44 O -13.078525330 6.146665820 3.649685364 CORE 45 O O 0.0000 45 O -3.537581582 13.271604614 7.240896486 CORE 46 O O 0.0000 46 O -7.526881700 10.808662471 7.399313205 CORE 47 O O 0.0000 47 O 2.183229821 17.938217442 3.558429798 CORE 48 O O 0.0000 48 O -3.356860914 10.633100583 7.409644947 CORE 49 O O 0.0000 49 O -13.368812405 17.938313876 3.225545589 CORE 50 O O 0.0000 50 O 1.918919247 6.147277293 3.471252536 CORE 51 O O 0.0000 51 O -7.723349616 13.417819531 7.325383151 CORE 52 O O 0.0000 52 O -11.477144996 4.388528113 4.825827752 CORE 53 O O 0.0000 53 O -1.569636046 12.190724918 8.641901514 CORE 54 O O 0.0000 54 O 0.148216028 4.723941550 4.813615962 CORE 55 O O 0.0000 55 O -9.490581501 11.961075030 8.690487668 CORE 56 O O 0.0000 56 O -1.572222323 11.985493313 5.985100299 CORE 57 O O 0.0000 57 O -11.335841422 4.860531888 9.772837938 CORE 58 O O 0.0000 58 O -9.558722451 12.004437310 6.018896273 CORE 59 O O 0.0000 59 O 0.201759400 4.608362138 9.763612514 CORE 60 O O 0.0000 60 O -10.568954326 8.540580093 5.546062398 CORE 61 O O 0.0000 61 O -0.698549660 15.594457097 9.207877394 CORE 62 O O 0.0000 62 O -10.470937735 8.404355025 8.680722816 CORE 63 O O 0.0000 63 O -0.796814697 15.552931400 5.495162280 CORE 64 O O 0.0000 64 O -0.718673697 8.409121259 5.388118544 CORE 65 O O 0.0000 65 O -10.400914668 15.626992754 9.190456943 CORE 66 O O 0.0000 66 O -10.240266654 15.443528273 5.491102004 CORE 67 O O 0.0000 67 O -0.741747926 8.425056611 9.254982879 CORE 68 O O 0.0000 68 O -12.576129515 9.134785988 7.286993787 CORE 69 O O 0.0000 69 O -2.497854915 16.045674239 3.505054521 CORE 70 O O 0.0000 70 O -9.142519175 7.805583405 3.240951116 CORE 71 O O 0.0000 71 O 1.087327896 15.121878174 7.311003000 CORE 72 O O 0.0000 72 O -2.516951678 7.812917048 3.532226891 CORE 73 O O 0.0000 73 O -12.176527560 15.171169525 7.279445678 CORE 74 O O 0.0000 74 O 1.034118225 8.863120302 7.309532525 CORE 75 O O 0.0000 75 O -8.550456407 15.938827422 3.456318961 CORE 76 O O 0.0000 76 O -13.152237965 8.530833854 4.824846497 CORE 77 O O 0.0000 77 O -3.303012708 15.530559289 8.644779400 CORE 78 O O 0.0000 78 O 1.788596427 15.652822816 4.826348998 CORE 79 O O 0.0000 79 O -7.846811750 8.392527730 8.511635073 CORE 80 O O 0.0000 80 O -3.335919560 8.370710154 6.006373577 CORE 81 O O 0.0000 81 O -13.020139449 15.545597324 9.738884266 CORE 82 O O 0.0000 82 O -7.597412439 15.651729170 5.884278733 CORE 83 O O 0.0000 83 O 1.865681479 8.469311307 9.782671331 CORE 84 O O 0.0000 84 O -7.729095272 8.629651517 5.891219406 CORE 85 O O 0.0000 85 O 1.911500469 15.697107351 9.754933668 CORE 86 O O 0.0000 86 O -3.415112660 15.614733593 5.962436802 CORE 87 O O 0.0000 87 O -12.907789125 8.323140788 9.784608585 CORE 88 O O 0.0000 88 O 1.919227353 8.396263742 4.859643201 CORE 89 O O 0.0000 89 O -7.805119178 15.784385292 8.538506807 CORE 90 O O 0.0000 90 O -12.793704673 15.811271523 4.767903891 CORE 91 O O 0.0000 91 O -3.353501006 8.308337138 8.676108582 CORE 92 O O 0.0000 92 O -9.450657120 5.984638653 5.592512597 CORE 93 O O 0.0000 93 O 0.748172530 13.354534061 9.291117768 CORE 94 O O 0.0000 94 O -2.133918906 17.873265195 5.392335528 CORE 95 O O 0.0000 95 O -11.752626268 10.665119759 9.315610040 CORE 96 O O 0.0000 96 O 0.676699000 10.678142468 5.388865268 CORE 97 O O 0.0000 97 O -9.064781541 17.945783307 9.412844347 CORE 98 O O 0.0000 98 O -11.822097594 13.374650408 5.369644874 CORE 99 O O 0.0000 99 O -1.985514473 6.075119550 9.196873326 CORE 100 O O 0.0000 100 O -11.893334415 10.812761590 5.379625466 CORE 101 O O 0.0000 101 O -2.129333889 17.849014988 9.195040595 CORE 102 O O 0.0000 102 O 0.666719541 13.322219815 5.396276599 CORE 103 O O 0.0000 103 O -9.140584327 6.088902349 8.790478221 CORE 104 O O 0.0000 104 O -2.058314146 6.101612979 5.503853526 CORE 105 O O 0.0000 105 O -11.726565668 13.316447288 9.156456334 CORE 106 O O 0.0000 106 O -9.082424185 17.778570293 5.273232222 CORE 107 O O 0.0000 107 O 0.607828682 10.717311068 9.150780209 CORE 108 O O 0.0000 108 O2 12.274890745 6.560187405 4.345144826 CORE 109 O2 O2 0.0000 109 O2 13.068848395 7.962989205 3.195221092 CORE 110 O2 O2 0.0000 110 H 11.971309143 5.715943268 3.894376292 CORE 111 H H 0.0000 111 H 12.697131617 8.737054022 3.696491734 CORE 112 H H 0.0000 112 C 13.223501151 6.018287127 5.444768424 CORE 113 C C 0.0000 113 C 12.630291023 4.718920031 5.633882621 CORE 114 C C 0.0000 114 H 12.819151948 3.863042477 4.947073174 CORE 115 H H 0.0000 115 H 11.939237504 4.575407590 6.475606348 CORE 116 H H 0.0000 116 H 14.232917250 6.099620862 4.939991387 CORE 117 H H 0.0000 117 H 13.118264771 6.751407737 6.282912346 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.321731044 4.737486361 3.479233420 CORE 1 Si Si 0.0000 1 Si -2.517076191 12.013891795 7.322121100 CORE 2 Si Si 0.0000 2 Si 1.117908081 4.747916291 3.501112461 CORE 3 Si Si 0.0000 3 Si -8.585545977 12.039191827 7.339233078 CORE 4 Si Si 0.0000 4 Si -13.579653506 7.688035084 11.113818676 CORE 5 Si Si 0.0000 5 Si -3.947997441 14.850397429 7.307981794 CORE 6 Si Si 0.0000 6 Si -7.149445438 9.228522454 7.295002437 CORE 7 Si Si 0.0000 7 Si 2.489272996 16.335803479 3.531019017 CORE 8 Si Si 0.0000 8 Si -13.586361006 16.334707671 3.440270548 CORE 9 Si Si 0.0000 9 Si -3.912943088 9.098986114 7.362015552 CORE 10 Si Si 0.0000 10 Si -7.172939776 14.947750986 7.297050604 CORE 11 Si Si 0.0000 11 Si 2.445400593 7.685773267 3.484448624 CORE 12 Si Si 0.0000 12 Si -10.140566164 4.526145213 5.742921351 CORE 13 Si Si 0.0000 13 Si -0.220890803 12.062864868 9.544412001 CORE 14 Si Si 0.0000 14 Si -10.853386436 11.998823489 9.580590936 CORE 15 Si Si 0.0000 15 Si -1.188340095 4.744850708 5.746346576 CORE 16 Si Si 0.0000 16 Si -10.030521338 4.719296255 8.822860470 CORE 17 Si Si 0.0000 17 Si -0.227244972 11.994304324 5.072135289 CORE 18 Si Si 0.0000 18 Si -10.908711662 12.057503161 5.090441676 CORE 19 Si Si 0.0000 19 Si -1.160338297 4.711067312 8.870575902 CORE 20 Si Si 0.0000 20 Ti -9.045162481 7.670283042 5.038812712 CORE 21 Ti Ti 0.0000 21 Si 0.763373039 14.940391396 8.891536980 CORE 22 Si Si 0.0000 22 Si -2.209046785 16.269649764 5.089916094 CORE 23 Si Si 0.0000 23 Si -11.935335477 9.131189366 8.776065360 CORE 24 Si Si 0.0000 24 Si 0.732310585 9.080791828 5.732114614 CORE 25 Si Si 0.0000 25 Si -8.965304865 16.320089393 9.543490996 CORE 26 Si Si 0.0000 26 Si -11.787653871 14.961662364 5.717086177 CORE 27 Si Si 0.0000 27 Si -2.162494577 7.660569380 9.564287301 CORE 28 Si Si 0.0000 28 Si -12.030837573 9.229817186 5.757750099 CORE 29 Si Si 0.0000 29 Si -2.156697345 16.251857794 9.534448601 CORE 30 Si Si 0.0000 30 Si 0.685323450 14.913027893 5.752986764 CORE 31 Si Si 0.0000 31 Si -9.119350263 7.680413001 9.226732337 CORE 32 Si Si 0.0000 32 Si -2.159849412 7.687907657 5.114056836 CORE 33 Si Si 0.0000 33 Si -11.831794350 14.913455434 8.842125215 CORE 34 Si Si 0.0000 34 Si -8.875185088 16.187388441 5.029256982 CORE 35 Si Si 0.0000 35 Si 0.685803602 9.112159169 8.877514825 CORE 36 Si Si 0.0000 36 O -15.191600259 7.712384897 3.394167085 CORE 37 O O 0.0000 37 O -5.557321738 14.973500470 7.395553642 CORE 38 O O 0.0000 38 O -15.169961290 16.052975882 3.608804637 CORE 39 O O 0.0000 39 O -5.528611547 9.079390859 7.341225789 CORE 40 O O 0.0000 40 O -10.516790596 4.315628299 7.317990838 CORE 41 O O 0.0000 41 O -0.657290860 12.004313920 3.502487161 CORE 42 O O 0.0000 42 O -10.419379055 12.078145503 3.535111700 CORE 43 O O 0.0000 43 O -0.722887679 4.677048235 7.303662188 CORE 44 O O 0.0000 44 O -13.087388220 6.148633288 3.643198082 CORE 45 O O 0.0000 45 O -3.539903054 13.272423660 7.241150187 CORE 46 O O 0.0000 46 O -7.527900892 10.813174861 7.398866965 CORE 47 O O 0.0000 47 O 2.184165492 17.937999058 3.559771407 CORE 48 O O 0.0000 48 O -3.362375827 10.633825356 7.412014138 CORE 49 O O 0.0000 49 O -13.377476692 17.940774329 3.233370373 CORE 50 O O 0.0000 50 O 1.919268921 6.147837017 3.472875536 CORE 51 O O 0.0000 51 O -7.737132763 13.425869010 7.313142226 CORE 52 O O 0.0000 52 O -11.492303744 4.398490429 4.845324821 CORE 53 O O 0.0000 53 O -1.574434293 12.191402123 8.644814469 CORE 54 O O 0.0000 54 O 0.143795360 4.723661039 4.813301480 CORE 55 O O 0.0000 55 O -9.485000579 11.970172174 8.698661470 CORE 56 O O 0.0000 56 O -1.575441553 11.981126079 5.988080426 CORE 57 O O 0.0000 57 O -11.330244911 4.848023064 9.792054072 CORE 58 O O 0.0000 58 O -9.564528535 11.995140091 6.027612546 CORE 59 O O 0.0000 59 O 0.199330737 4.609540688 9.762486798 CORE 60 O O 0.0000 60 O -10.576202405 8.528699608 5.548372785 CORE 61 O O 0.0000 61 O -0.701246208 15.595400110 9.203655616 CORE 62 O O 0.0000 62 O -10.482756013 8.398446422 8.683140389 CORE 63 O O 0.0000 63 O -0.800033735 15.552477191 5.501524881 CORE 64 O O 0.0000 64 O -0.719415767 8.407856221 5.391807283 CORE 65 O O 0.0000 65 O -10.399562161 15.633307563 9.190171824 CORE 66 O O 0.0000 66 O -10.241212909 15.441367215 5.493689219 CORE 67 O O 0.0000 67 O -0.748937116 8.425483720 9.248650403 CORE 68 O O 0.0000 68 O -12.573742035 9.139002011 7.290197490 CORE 69 O O 0.0000 69 O -2.494816584 16.050111817 3.504822272 CORE 70 O O 0.0000 70 O -9.152532890 7.800647221 3.247733255 CORE 71 O O 0.0000 71 O 1.090746307 15.117578257 7.310904563 CORE 72 O O 0.0000 72 O -2.514265522 7.813102566 3.534391677 CORE 73 O O 0.0000 73 O -12.180285446 15.172907943 7.276067541 CORE 74 O O 0.0000 74 O 1.036861922 8.863197997 7.311743335 CORE 75 O O 0.0000 75 O -8.553342899 15.928694292 3.459727831 CORE 76 O O 0.0000 76 O -13.153581043 8.526230074 4.818892024 CORE 77 O O 0.0000 77 O -3.307424908 15.534195264 8.646139418 CORE 78 O O 0.0000 78 O 1.781595449 15.652830168 4.826588626 CORE 79 O O 0.0000 79 O -7.855974470 8.396923505 8.514305435 CORE 80 O O 0.0000 80 O -3.335721341 8.373107326 6.011630696 CORE 81 O O 0.0000 81 O -13.025362038 15.546691547 9.738558297 CORE 82 O O 0.0000 82 O -7.598333869 15.671849409 5.890578193 CORE 83 O O 0.0000 83 O 1.858252116 8.468994327 9.788580921 CORE 84 O O 0.0000 84 O -7.725965337 8.629828962 5.893581599 CORE 85 O O 0.0000 85 O 1.906362941 15.697916739 9.753406519 CORE 86 O O 0.0000 86 O -3.416984579 15.615012662 5.959594213 CORE 87 O O 0.0000 87 O -12.912635098 8.324151406 9.781127446 CORE 88 O O 0.0000 88 O 1.918986218 8.394109748 4.862163624 CORE 89 O O 0.0000 89 O -7.802647022 15.785688097 8.548388582 CORE 90 O O 0.0000 90 O -12.792259021 15.813963188 4.771281800 CORE 91 O O 0.0000 91 O -3.362446647 8.308250505 8.678909483 CORE 92 O O 0.0000 92 O -9.438957197 5.978148272 5.580903375 CORE 93 O O 0.0000 93 O 0.745722890 13.354579035 9.292044175 CORE 94 O O 0.0000 94 O -2.135597609 17.873218780 5.395140005 CORE 95 O O 0.0000 95 O -11.749925871 10.667317719 9.313604549 CORE 96 O O 0.0000 96 O 0.675572616 10.677846822 5.388922550 CORE 97 O O 0.0000 97 O -9.068972044 17.945347117 9.421341228 CORE 98 O O 0.0000 98 O -11.822523861 13.379559348 5.373689479 CORE 99 O O 0.0000 99 O -1.988821074 6.075165821 9.195959167 CORE 100 O O 0.0000 100 O -11.890524132 10.808723157 5.376589198 CORE 101 O O 0.0000 101 O -2.130464507 17.849385447 9.191389968 CORE 102 O O 0.0000 102 O 0.663587296 13.321335759 5.396950370 CORE 103 O O 0.0000 103 O -9.142106187 6.097170644 8.784825526 CORE 104 O O 0.0000 104 O -2.059136466 6.101416074 5.506459302 CORE 105 O O 0.0000 105 O -11.723683795 13.317180854 9.164949640 CORE 106 O O 0.0000 106 O -9.094421629 17.780926815 5.263538802 CORE 107 O O 0.0000 107 O 0.603107029 10.718788002 9.150520194 CORE 108 O O 0.0000 108 O2 12.284907924 6.555129993 4.352700846 CORE 109 O2 O2 0.0000 109 O2 13.071080187 7.965993093 3.183287042 CORE 110 O2 O2 0.0000 110 H 12.021671196 5.719548395 3.834903374 CORE 111 H H 0.0000 111 H 12.748086980 8.751780986 3.698135121 CORE 112 H H 0.0000 112 C 13.258583024 6.005697869 5.438864006 CORE 113 C C 0.0000 113 C 12.687432550 4.701275667 5.671511796 CORE 114 C C 0.0000 114 H 12.866191044 3.852945672 4.972488277 CORE 115 H H 0.0000 115 H 11.983232495 4.554564595 6.501923439 CORE 116 H H 0.0000 116 H 14.252543046 6.077480829 4.945069585 CORE 117 H H 0.0000 117 H 13.149031243 6.740403236 6.269399190 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.330422081 4.732188944 3.505593111 CORE 1 Si Si 0.0000 1 Si -2.518765478 12.014820681 7.326735334 CORE 2 Si Si 0.0000 2 Si 1.121061687 4.751979807 3.502237948 CORE 3 Si Si 0.0000 3 Si -8.587084773 12.041079726 7.342539555 CORE 4 Si Si 0.0000 4 Si -13.583337300 7.689397277 11.116517337 CORE 5 Si Si 0.0000 5 Si -3.953243316 14.849765919 7.307309164 CORE 6 Si Si 0.0000 6 Si -7.155052149 9.229007222 7.294179336 CORE 7 Si Si 0.0000 7 Si 2.483604318 16.334863062 3.531126279 CORE 8 Si Si 0.0000 8 Si -13.593597538 16.335880742 3.444876565 CORE 9 Si Si 0.0000 9 Si -3.928917806 9.097366618 7.365245196 CORE 10 Si Si 0.0000 10 Si -7.182211805 14.958381425 7.302058967 CORE 11 Si Si 0.0000 11 Si 2.440439922 7.685754239 3.489837957 CORE 12 Si Si 0.0000 12 Si -10.152458918 4.531039161 5.745127291 CORE 13 Si Si 0.0000 13 Si -0.228595748 12.063578542 9.544418696 CORE 14 Si Si 0.0000 14 Si -10.848879167 12.002806715 9.590728618 CORE 15 Si Si 0.0000 15 Si -1.190615379 4.749655430 5.747534063 CORE 16 Si Si 0.0000 16 Si -10.035704476 4.721126063 8.831232593 CORE 17 Si Si 0.0000 17 Si -0.233635129 11.990417245 5.077979533 CORE 18 Si Si 0.0000 18 Si -10.924878248 12.054718377 5.098544275 CORE 19 Si Si 0.0000 19 Si -1.163206121 4.718026749 8.871349784 CORE 20 Si Si 0.0000 20 Ti -9.047057877 7.664292131 5.006873050 CORE 21 Ti Ti 0.0000 21 Si 0.762509151 14.939754408 8.889908807 CORE 22 Si Si 0.0000 22 Si -2.207295145 16.273649855 5.091288436 CORE 23 Si Si 0.0000 23 Si -11.951165668 9.137625548 8.767618001 CORE 24 Si Si 0.0000 24 Si 0.735764214 9.075358047 5.733168746 CORE 25 Si Si 0.0000 25 Si -8.964960195 16.322401230 9.548587451 CORE 26 Si Si 0.0000 26 Si -11.801498215 14.957614417 5.718506444 CORE 27 Si Si 0.0000 27 Si -2.170396778 7.659354362 9.570320052 CORE 28 Si Si 0.0000 28 Si -12.033658826 9.218891245 5.760494935 CORE 29 Si Si 0.0000 29 Si -2.156001077 16.256105674 9.532092113 CORE 30 Si Si 0.0000 30 Si 0.684605436 14.911140571 5.755325374 CORE 31 Si Si 0.0000 31 Si -9.123208220 7.679834105 9.220433562 CORE 32 Si Si 0.0000 32 Si -2.162053299 7.686642043 5.115340934 CORE 33 Si Si 0.0000 33 Si -11.836020649 14.918877539 8.838983586 CORE 34 Si Si 0.0000 34 Si -8.880175395 16.201260323 5.031323102 CORE 35 Si Si 0.0000 35 Si 0.680865255 9.107666671 8.882597359 CORE 36 Si Si 0.0000 36 O -15.193112882 7.720972190 3.388613436 CORE 37 O O 0.0000 37 O -5.557821134 14.973137940 7.396358257 CORE 38 O O 0.0000 38 O -15.181666217 16.038534906 3.608407312 CORE 39 O O 0.0000 39 O -5.536723514 9.071865355 7.334912484 CORE 40 O O 0.0000 40 O -10.522247776 4.326647071 7.324341647 CORE 41 O O 0.0000 41 O -0.659942184 12.003536245 3.505284487 CORE 42 O O 0.0000 42 O -10.419294571 12.081200851 3.538804547 CORE 43 O O 0.0000 43 O -0.718250702 4.681768342 7.305103604 CORE 44 O O 0.0000 44 O -13.101568575 6.151781179 3.632818491 CORE 45 O O 0.0000 45 O -3.543617254 13.273733960 7.241556184 CORE 46 O O 0.0000 46 O -7.529531676 10.820394628 7.398153104 CORE 47 O O 0.0000 47 O 2.185662719 17.937649789 3.561918087 CORE 48 O O 0.0000 48 O -3.371199651 10.634985310 7.415804738 CORE 49 O O 0.0000 49 O -13.391339703 17.944710994 3.245890026 CORE 50 O O 0.0000 50 O 1.919828745 6.148732461 3.475472336 CORE 51 O O 0.0000 51 O -7.759186068 13.438748149 7.293556761 CORE 52 O O 0.0000 52 O -11.516557857 4.414430249 4.876520040 CORE 53 O O 0.0000 53 O -1.582111525 12.192485535 8.649475259 CORE 54 O O 0.0000 54 O 0.136722021 4.723212308 4.812798339 CORE 55 O O 0.0000 55 O -9.476070910 11.984727602 8.711739569 CORE 56 O O 0.0000 56 O -1.580592167 11.974138534 5.992848554 CORE 57 O O 0.0000 57 O -11.321290032 4.828008917 9.822799857 CORE 58 O O 0.0000 58 O -9.573818462 11.980264366 6.041558477 CORE 59 O O 0.0000 59 O 0.195444682 4.611426280 9.760685713 CORE 60 O O 0.0000 60 O -10.587799562 8.509690745 5.552069437 CORE 61 O O 0.0000 61 O -0.705560838 15.596909045 9.196900788 CORE 62 O O 0.0000 62 O -10.501665141 8.388992659 8.687008431 CORE 63 O O 0.0000 63 O -0.805184350 15.551750688 5.511705011 CORE 64 O O 0.0000 64 O -0.720603157 8.405832247 5.397709342 CORE 65 O O 0.0000 65 O -10.397398110 15.643411288 9.189715619 CORE 66 O O 0.0000 66 O -10.242727071 15.437909262 5.497828762 CORE 67 O O 0.0000 67 O -0.760439591 8.426167123 9.238518579 CORE 68 O O 0.0000 68 O -12.569921989 9.145747390 7.295323461 CORE 69 O O 0.0000 69 O -2.489955408 16.057212086 3.504450584 CORE 70 O O 0.0000 70 O -9.168554757 7.792749384 3.258584645 CORE 71 O O 0.0000 71 O 1.096215612 15.110698534 7.310746942 CORE 72 O O 0.0000 72 O -2.509967635 7.813399221 3.537855395 CORE 73 O O 0.0000 73 O -12.186298216 15.175689411 7.270662537 CORE 74 O O 0.0000 74 O 1.041251798 8.863322540 7.315280539 CORE 75 O O 0.0000 75 O -8.557961209 15.912481023 3.465182129 CORE 76 O O 0.0000 76 O -13.155730083 8.518863997 4.809364821 CORE 77 O O 0.0000 77 O -3.314484390 15.540012909 8.648315539 CORE 78 O O 0.0000 78 O 1.770393767 15.652842132 4.826971953 CORE 79 O O 0.0000 79 O -7.870634784 8.403956890 8.518577952 CORE 80 O O 0.0000 80 O -3.335404190 8.376942800 6.020042148 CORE 81 O O 0.0000 81 O -13.033718219 15.548442217 9.738036746 CORE 82 O O 0.0000 82 O -7.599808002 15.704041851 5.900657452 CORE 83 O O 0.0000 83 O 1.846364943 8.468487072 9.798036236 CORE 84 O O 0.0000 84 O -7.720957517 8.630112788 5.897361168 CORE 85 O O 0.0000 85 O 1.898142819 15.699211903 9.750963005 CORE 86 O O 0.0000 86 O -3.419979610 15.615459231 5.955046010 CORE 87 O O 0.0000 87 O -12.920388924 8.325768451 9.775557594 CORE 88 O O 0.0000 88 O 1.918600557 8.390663327 4.866196210 CORE 89 O O 0.0000 89 O -7.798691880 15.787772612 8.564199421 CORE 90 O O 0.0000 90 O -12.789946018 15.818269736 4.776686423 CORE 91 O O 0.0000 91 O -3.376759790 8.308111835 8.683390895 CORE 92 O O 0.0000 92 O -9.420237243 5.967763748 5.562328605 CORE 93 O O 0.0000 93 O 0.741803158 13.354650964 9.293526441 CORE 94 O O 0.0000 94 O -2.138283572 17.873144544 5.399627122 CORE 95 O O 0.0000 95 O -11.745605082 10.670834627 9.310395901 CORE 96 O O 0.0000 96 O 0.673770170 10.677373586 5.389014141 CORE 97 O O 0.0000 97 O -9.075676657 17.944649299 9.434936237 CORE 98 O O 0.0000 98 O -11.823205503 13.387413652 5.380160786 CORE 99 O O 0.0000 99 O -1.994111789 6.075239769 9.194496527 CORE 100 O O 0.0000 100 O -11.886027833 10.802261605 5.371731077 CORE 101 O O 0.0000 101 O -2.132273688 17.849978181 9.185548918 CORE 102 O O 0.0000 102 O 0.658575820 13.319921096 5.398028389 CORE 103 O O 0.0000 103 O -9.144541201 6.110399917 8.775781230 CORE 104 O O 0.0000 104 O -2.060452217 6.101100967 5.510628589 CORE 105 O O 0.0000 105 O -11.719072798 13.318354358 9.178539020 CORE 106 O O 0.0000 106 O -9.113617501 17.784697135 5.248029284 CORE 107 O O 0.0000 107 O 0.595552384 10.721151010 9.150104308 CORE 108 O O 0.0000 108 O2 12.300935372 6.547037990 4.364790540 CORE 109 O2 O2 0.0000 109 O2 13.074651015 7.970799256 3.164192395 CORE 110 O2 O2 0.0000 110 H 12.102250483 5.725316742 3.739746674 CORE 111 H H 0.0000 111 H 12.829615986 8.775344187 3.700764556 CORE 112 H H 0.0000 112 C 13.314714212 5.985555142 5.429416908 CORE 113 C C 0.0000 113 C 12.778859034 4.673044541 5.731718506 CORE 114 C C 0.0000 114 H 12.941453828 3.836790784 5.013152504 CORE 115 H H 0.0000 115 H 12.053624673 4.521215660 6.544030755 CORE 116 H H 0.0000 116 H 14.283944396 6.042056603 4.953194778 CORE 117 H H 0.0000 117 H 13.198257676 6.722795918 6.247778110 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.322453678 4.737045847 3.481425363 CORE 1 Si Si 0.0000 1 Si -2.517216676 12.013968914 7.322504808 CORE 2 Si Si 0.0000 2 Si 1.118170192 4.748254173 3.501206029 CORE 3 Si Si 0.0000 3 Si -8.585673954 12.039348804 7.339508003 CORE 4 Si Si 0.0000 4 Si -13.579959687 7.688148384 11.114043089 CORE 5 Si Si 0.0000 5 Si -3.948433715 14.850344959 7.307925881 CORE 6 Si Si 0.0000 6 Si -7.149911734 9.228562815 7.294933972 CORE 7 Si Si 0.0000 7 Si 2.488801697 16.335725351 3.531027918 CORE 8 Si Si 0.0000 8 Si -13.586962783 16.334805258 3.440653571 CORE 9 Si Si 0.0000 9 Si -3.914271540 9.098851480 7.362284087 CORE 10 Si Si 0.0000 10 Si -7.173710905 14.948634898 7.297467023 CORE 11 Si Si 0.0000 11 Si 2.444988182 7.685771681 3.484896841 CORE 12 Si Si 0.0000 12 Si -10.141555142 4.526552141 5.743104837 CORE 13 Si Si 0.0000 13 Si -0.221531455 12.062924113 9.544412534 CORE 14 Si Si 0.0000 14 Si -10.853011552 11.999154596 9.581433968 CORE 15 Si Si 0.0000 15 Si -1.188529461 4.745250285 5.746445318 CORE 16 Si Si 0.0000 16 Si -10.030952224 4.719448475 8.823556683 CORE 17 Si Si 0.0000 17 Si -0.227776315 11.993981001 5.072621238 CORE 18 Si Si 0.0000 18 Si -10.910056087 12.057271660 5.091115447 CORE 19 Si Si 0.0000 19 Si -1.160576737 4.711646064 8.870640259 CORE 20 Si Si 0.0000 20 Ti -9.045320094 7.669784869 5.036156728 CORE 21 Ti Ti 0.0000 21 Si 0.763301064 14.940338350 8.891401572 CORE 22 Si Si 0.0000 22 Si -2.208901104 16.269982456 5.090030202 CORE 23 Si Si 0.0000 23 Si -11.936651805 9.131724585 8.775362909 CORE 24 Si Si 0.0000 24 Si 0.732597714 9.080339926 5.732202325 CORE 25 Si Si 0.0000 25 Si -8.965276191 16.320281686 9.543914794 CORE 26 Si Si 0.0000 26 Si -11.788805080 14.961325780 5.717204317 CORE 27 Si Si 0.0000 27 Si -2.163151779 7.660468333 9.564788921 CORE 28 Si Si 0.0000 28 Si -12.031072165 9.228908625 5.757978315 CORE 29 Si Si 0.0000 29 Si -2.156639419 16.252210955 9.534252639 CORE 30 Si Si 0.0000 30 Si 0.685263792 14.912870916 5.753181204 CORE 31 Si Si 0.0000 31 Si -9.119671070 7.680364856 9.226208580 CORE 32 Si Si 0.0000 32 Si -2.160032620 7.687802430 5.114163565 CORE 33 Si Si 0.0000 33 Si -11.832145756 14.913906327 8.841863983 CORE 34 Si Si 0.0000 34 Si -8.875600001 16.188541909 5.029428753 CORE 35 Si Si 0.0000 35 Si 0.685392923 9.111785539 8.877937482 CORE 36 Si Si 0.0000 36 O -15.191726119 7.713099003 3.393705251 CORE 37 O O 0.0000 37 O -5.557363306 14.973470343 7.395620509 CORE 38 O O 0.0000 38 O -15.170934680 16.051775134 3.608771545 CORE 39 O O 0.0000 39 O -5.529286069 9.078764971 7.340700815 CORE 40 O O 0.0000 40 O -10.517244383 4.316544644 7.318518931 CORE 41 O O 0.0000 41 O -0.657511211 12.004249342 3.502719790 CORE 42 O O 0.0000 42 O -10.419371934 12.078399635 3.535418803 CORE 43 O O 0.0000 43 O -0.722502210 4.677440749 7.303782002 CORE 44 O O 0.0000 44 O -13.088567335 6.148895059 3.642334967 CORE 45 O O 0.0000 45 O -3.540211929 13.272532635 7.241183963 CORE 46 O O 0.0000 46 O -7.528036566 10.813775235 7.398807629 CORE 47 O O 0.0000 47 O 2.184290004 17.937970085 3.559949948 CORE 48 O O 0.0000 48 O -3.363109623 10.633921935 7.412329305 CORE 49 O O 0.0000 49 O -13.378629441 17.941101687 3.234411496 CORE 50 O O 0.0000 50 O 1.919315493 6.147911397 3.473091505 CORE 51 O O 0.0000 51 O -7.738966770 13.426940025 7.311513521 CORE 52 O O 0.0000 52 O -11.494320767 4.399815864 4.847918882 CORE 53 O O 0.0000 53 O -1.575072827 12.191492215 8.645202057 CORE 54 O O 0.0000 54 O 0.143207054 4.723623705 4.813259640 CORE 55 O O 0.0000 55 O -9.484257931 11.971382579 8.699748998 CORE 56 O O 0.0000 56 O -1.575869937 11.980545021 5.988476914 CORE 57 O O 0.0000 57 O -11.329500147 4.846358738 9.794610782 CORE 58 O O 0.0000 58 O -9.565301011 11.993903017 6.028772191 CORE 59 O O 0.0000 59 O 0.199007620 4.609697520 9.762337088 CORE 60 O O 0.0000 60 O -10.577166750 8.527118887 5.548680193 CORE 61 O O 0.0000 61 O -0.701604926 15.595525662 9.203093899 CORE 62 O O 0.0000 62 O -10.484328293 8.397660242 8.683462022 CORE 63 O O 0.0000 63 O -0.800462119 15.552416794 5.502371412 CORE 64 O O 0.0000 64 O -0.719514492 8.407687857 5.392298101 CORE 65 O O 0.0000 65 O -10.399382224 15.634147798 9.190133864 CORE 66 O O 0.0000 66 O -10.241338961 15.441079640 5.494033446 CORE 67 O O 0.0000 67 O -0.749893571 8.425540514 9.247807904 CORE 68 O O 0.0000 68 O -12.573424307 9.139562889 7.290623723 CORE 69 O O 0.0000 69 O -2.494412448 16.050702245 3.504791387 CORE 70 O O 0.0000 70 O -9.153865191 7.799990485 3.248635623 CORE 71 O O 0.0000 71 O 1.091201056 15.117006136 7.310891403 CORE 72 O O 0.0000 72 O -2.513908151 7.813127215 3.534679686 CORE 73 O O 0.0000 73 O -12.180785612 15.173139300 7.275618107 CORE 74 O O 0.0000 74 O 1.037226991 8.863208376 7.312037430 CORE 75 O O 0.0000 75 O -8.553726828 15.927346081 3.460181373 CORE 76 O O 0.0000 76 O -13.153759825 8.525617592 4.818099808 CORE 77 O O 0.0000 77 O -3.308011867 15.534679022 8.646320394 CORE 78 O O 0.0000 78 O 1.780664012 15.652831177 4.826620500 CORE 79 O O 0.0000 79 O -7.857193613 8.397508311 8.514660692 CORE 80 O O 0.0000 80 O -3.335694976 8.373426324 6.012330180 CORE 81 O O 0.0000 81 O -13.026056959 15.546837136 9.738514936 CORE 82 O O 0.0000 82 O -7.598456456 15.674526515 5.891416356 CORE 83 O O 0.0000 83 O 1.857263523 8.468952092 9.789367203 CORE 84 O O 0.0000 84 O -7.725548884 8.629852458 5.893895929 CORE 85 O O 0.0000 85 O 1.905679374 15.698024561 9.753203331 CORE 86 O O 0.0000 86 O -3.417233603 15.615049852 5.959215982 CORE 87 O O 0.0000 87 O -12.913279983 8.324285895 9.780664319 CORE 88 O O 0.0000 88 O 1.918954272 8.393823183 4.862498950 CORE 89 O O 0.0000 89 O -7.802318132 15.785861506 8.549703337 CORE 90 O O 0.0000 90 O -12.792066768 15.814321250 4.771731234 CORE 91 O O 0.0000 91 O -3.363636924 8.308238973 8.679282085 CORE 92 O O 0.0000 92 O -9.437400504 5.977284829 5.579358806 CORE 93 O O 0.0000 93 O 0.745396887 13.354584945 9.292167488 CORE 94 O O 0.0000 94 O -2.135821038 17.873212582 5.395513139 CORE 95 O O 0.0000 95 O -11.749566575 10.667610194 9.313337764 CORE 96 O O 0.0000 96 O 0.675422701 10.677807470 5.388930158 CORE 97 O O 0.0000 97 O -9.069529559 17.945289170 9.422471736 CORE 98 O O 0.0000 98 O -11.822580440 13.380212480 5.374227613 CORE 99 O O 0.0000 99 O -1.989261197 6.075171876 9.195837527 CORE 100 O O 0.0000 100 O -11.890150210 10.808185919 5.376185178 CORE 101 O O 0.0000 101 O -2.130614999 17.849434746 9.190904247 CORE 102 O O 0.0000 102 O 0.663170651 13.321218135 5.397039983 CORE 103 O O 0.0000 103 O -9.142308640 6.098270633 8.784073477 CORE 104 O O 0.0000 104 O -2.059245967 6.101389839 5.506806039 CORE 105 O O 0.0000 105 O -11.723300444 13.317278442 9.166079692 CORE 106 O O 0.0000 106 O -9.096017965 17.781240336 5.262249075 CORE 107 O O 0.0000 107 O 0.602478694 10.718984475 9.150485658 CORE 108 O O 0.0000 108 O2 12.286240802 6.554456969 4.353706216 CORE 109 O2 O2 0.0000 109 O2 13.071377130 7.966392670 3.181699188 CORE 110 O2 O2 0.0000 110 H 12.028371960 5.720028118 3.826990499 CORE 111 H H 0.0000 111 H 12.754866647 8.753740526 3.698353752 CORE 112 H H 0.0000 112 C 13.263250792 6.004022876 5.438078409 CORE 113 C C 0.0000 113 C 12.695035307 4.698928082 5.676518334 CORE 114 C C 0.0000 114 H 12.872449760 3.851602362 4.975869761 CORE 115 H H 0.0000 115 H 11.989086113 4.551791343 6.505424889 CORE 116 H H 0.0000 116 H 14.255154340 6.074535032 4.945745258 CORE 117 H H 0.0000 117 H 13.153124754 6.738938986 6.267601301 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.328160460 4.736946097 3.496496021 CORE 1 Si Si 0.0000 1 Si -2.520568501 12.013120462 7.325142307 CORE 2 Si Si 0.0000 2 Si 1.119058521 4.750913692 3.501046886 CORE 3 Si Si 0.0000 3 Si -8.586950830 12.045746498 7.346042451 CORE 4 Si Si 0.0000 4 Si -13.589958199 7.687102738 11.109700205 CORE 5 Si Si 0.0000 5 Si -3.951581163 14.850570838 7.307912340 CORE 6 Si Si 0.0000 6 Si -7.157903423 9.230357162 7.298783604 CORE 7 Si Si 0.0000 7 Si 2.480294061 16.332761681 3.530574832 CORE 8 Si Si 0.0000 8 Si -13.591604571 16.333236070 3.447068205 CORE 9 Si Si 0.0000 9 Si -3.918418166 9.101162451 7.365742404 CORE 10 Si Si 0.0000 10 Si -7.178316706 14.955767744 7.299347603 CORE 11 Si Si 0.0000 11 Si 2.442544508 7.686591159 3.487559367 CORE 12 Si Si 0.0000 12 Si -10.149776996 4.532268883 5.747544865 CORE 13 Si Si 0.0000 13 Si -0.227004608 12.065347087 9.545540076 CORE 14 Si Si 0.0000 14 Si -10.849235192 12.003306762 9.582609892 CORE 15 Si Si 0.0000 15 Si -1.190130801 4.745361855 5.749231005 CORE 16 Si Si 0.0000 16 Si -10.031804566 4.721546396 8.831029252 CORE 17 Si Si 0.0000 17 Si -0.232761618 11.993307689 5.075777320 CORE 18 Si Si 0.0000 18 Si -10.912522278 12.061078738 5.093456797 CORE 19 Si Si 0.0000 19 Si -1.162483873 4.713497349 8.870254573 CORE 20 Si Si 0.0000 20 Ti -9.045359545 7.664532425 5.022351074 CORE 21 Ti Ti 0.0000 21 Si 0.760312192 14.939624676 8.889141239 CORE 22 Si Si 0.0000 22 Si -2.207803201 16.269702522 5.091568381 CORE 23 Si Si 0.0000 23 Si -11.941069202 9.138030602 8.779214976 CORE 24 Si Si 0.0000 24 Si 0.733722944 9.078741475 5.733217585 CORE 25 Si Si 0.0000 25 Si -8.964277398 16.316488015 9.548273349 CORE 26 Si Si 0.0000 26 Si -11.790788425 14.964964637 5.720065543 CORE 27 Si Si 0.0000 27 Si -2.169565221 7.661149141 9.564722586 CORE 28 Si Si 0.0000 28 Si -12.035484942 9.222348765 5.757071839 CORE 29 Si Si 0.0000 29 Si -2.156156573 16.253848181 9.533296260 CORE 30 Si Si 0.0000 30 Si 0.682318220 14.911090696 5.756532411 CORE 31 Si Si 0.0000 31 Si -9.128812429 7.685834529 9.226329383 CORE 32 Si Si 0.0000 32 Si -2.162360635 7.689667842 5.118240653 CORE 33 Si Si 0.0000 33 Si -11.831800894 14.916237191 8.840055063 CORE 34 Si Si 0.0000 34 Si -8.882415655 16.194694264 5.031182825 CORE 35 Si Si 0.0000 35 Si 0.681729528 9.111200445 8.880926129 CORE 36 Si Si 0.0000 36 O -15.197375167 7.719519185 3.390075239 CORE 37 O O 0.0000 37 O -5.562656330 14.972543187 7.396892132 CORE 38 O O 0.0000 38 O -15.174093097 16.042648297 3.608514269 CORE 39 O O 0.0000 39 O -5.539299591 9.072431278 7.336624716 CORE 40 O O 0.0000 40 O -10.522054754 4.321050260 7.327777675 CORE 41 O O 0.0000 41 O -0.660437346 12.003000016 3.504917515 CORE 42 O O 0.0000 42 O -10.419797432 12.079294069 3.544319932 CORE 43 O O 0.0000 43 O -0.720111651 4.680825041 7.303634878 CORE 44 O O 0.0000 44 O -13.097036866 6.143815160 3.633034079 CORE 45 O O 0.0000 45 O -3.542382331 13.275177884 7.241615368 CORE 46 O O 0.0000 46 O -7.527126106 10.817175384 7.394242766 CORE 47 O O 0.0000 47 O 2.184283076 17.939858416 3.561308141 CORE 48 O O 0.0000 48 O -3.369356984 10.635621145 7.414826983 CORE 49 O O 0.0000 49 O -13.387870486 17.942706336 3.245868117 CORE 50 O O 0.0000 50 O 1.921062129 6.148216702 3.474659809 CORE 51 O O 0.0000 51 O -7.753821646 13.436361644 7.297488703 CORE 52 O O 0.0000 52 O -11.512834419 4.411738152 4.871813150 CORE 53 O O 0.0000 53 O -1.581548814 12.192687197 8.648969379 CORE 54 O O 0.0000 54 O 0.139637957 4.723560712 4.811872160 CORE 55 O O 0.0000 55 O -9.478495532 11.980381558 8.705537634 CORE 56 O O 0.0000 56 O -1.580229985 11.975549593 5.991434372 CORE 57 O O 0.0000 57 O -11.320263527 4.837155070 9.815556874 CORE 58 O O 0.0000 58 O -9.576036205 11.983886502 6.036767528 CORE 59 O O 0.0000 59 O 0.197898171 4.611477308 9.763214504 CORE 60 O O 0.0000 60 O -10.582392226 8.512011518 5.550330275 CORE 61 O O 0.0000 61 O -0.703778022 15.596079765 9.198838650 CORE 62 O O 0.0000 62 O -10.496474498 8.392253561 8.684749163 CORE 63 O O 0.0000 63 O -0.802539185 15.552217438 5.508931191 CORE 64 O O 0.0000 64 O -0.721039623 8.405763922 5.394448889 CORE 65 O O 0.0000 65 O -10.404602311 15.639339412 9.188983044 CORE 66 O O 0.0000 66 O -10.242962240 15.436984557 5.497405192 CORE 67 O O 0.0000 67 O -0.759642288 8.425289409 9.239747144 CORE 68 O O 0.0000 68 O -12.573960653 9.142249508 7.289040737 CORE 69 O O 0.0000 69 O -2.491547511 16.054278975 3.505177910 CORE 70 O O 0.0000 70 O -9.161848797 7.795751398 3.233683790 CORE 71 O O 0.0000 71 O 1.094862334 15.112059718 7.311118402 CORE 72 O O 0.0000 72 O -2.511699260 7.813282174 3.537731702 CORE 73 O O 0.0000 73 O -12.186858233 15.174310786 7.277934352 CORE 74 O O 0.0000 74 O 1.040356157 8.863131545 7.313973923 CORE 75 O O 0.0000 75 O -8.556275385 15.917709538 3.464492231 CORE 76 O O 0.0000 76 O -13.154108344 8.526138108 4.820493800 CORE 77 O O 0.0000 77 O -3.313776960 15.537833400 8.645337465 CORE 78 O O 0.0000 78 O 1.774619103 15.654360292 4.825338227 CORE 79 O O 0.0000 79 O -7.858925816 8.403461887 8.516769260 CORE 80 O O 0.0000 80 O -3.332747286 8.373394035 6.013314782 CORE 81 O O 0.0000 81 O -13.031683107 15.549852699 9.738049602 CORE 82 O O 0.0000 82 O -7.599045340 15.693986704 5.898822591 CORE 83 O O 0.0000 83 O 1.849320908 8.467877040 9.797466912 CORE 84 O O 0.0000 84 O -7.724434817 8.630263134 5.893245207 CORE 85 O O 0.0000 85 O 1.901745016 15.699625318 9.753202798 CORE 86 O O 0.0000 86 O -3.421029978 15.613617171 5.958778643 CORE 87 O O 0.0000 87 O -12.920871192 8.328311212 9.774236677 CORE 88 O O 0.0000 88 O 1.919672479 8.391026867 4.865077568 CORE 89 O O 0.0000 89 O -7.796665620 15.783834073 8.557362587 CORE 90 O O 0.0000 90 O -12.794278353 15.816233942 4.773058541 CORE 91 O O 0.0000 91 O -3.369957992 8.304475861 8.685246828 CORE 92 O O 0.0000 92 O -9.425854730 5.967519851 5.564971733 CORE 93 O O 0.0000 93 O 0.741063012 13.354737597 9.293028244 CORE 94 O O 0.0000 94 O -2.136394333 17.877597978 5.398181675 CORE 95 O O 0.0000 95 O -11.746310395 10.668962585 9.311837317 CORE 96 O O 0.0000 96 O 0.674968337 10.674360329 5.389627283 CORE 97 O O 0.0000 97 O -9.071887018 17.949979726 9.430330980 CORE 98 O O 0.0000 98 O -11.824894598 13.376140316 5.376619474 CORE 99 O O 0.0000 99 O -1.994250927 6.077538055 9.196109637 CORE 100 O O 0.0000 100 O -11.891843731 10.797678726 5.373957557 CORE 101 O O 0.0000 101 O -2.131516222 17.854037949 9.187267845 CORE 102 O O 0.0000 102 O 0.658416090 13.319882465 5.397331796 CORE 103 O O 0.0000 103 O -9.147283359 6.097528274 8.783224435 CORE 104 O O 0.0000 104 O -2.061915958 6.103135176 5.508153734 CORE 105 O O 0.0000 105 O -11.721997779 13.322254843 9.174523018 CORE 106 O O 0.0000 106 O -9.108410500 17.794628459 5.253867443 CORE 107 O O 0.0000 107 O 0.598028197 10.717670571 9.149619576 CORE 108 O O 0.0000 108 O2 12.300963084 6.519395706 4.368315876 CORE 109 O2 O2 0.0000 109 O2 13.072242366 7.969420486 3.165527157 CORE 110 O2 O2 0.0000 110 H 12.090628115 5.748358273 3.768860178 CORE 111 H H 0.0000 111 H 12.812047819 8.761348050 3.703050752 CORE 112 H H 0.0000 112 C 13.298067282 5.997674048 5.426311413 CORE 113 C C 0.0000 113 C 12.759159146 4.679878137 5.710377600 CORE 114 C C 0.0000 114 H 12.927204577 3.846050957 5.009938378 CORE 115 H H 0.0000 115 H 12.033896689 4.527597354 6.536295812 CORE 116 H H 0.0000 116 H 14.279275088 6.051588494 4.949054017 CORE 117 H H 0.0000 117 H 13.190635675 6.720384908 6.250009155 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.337291042 4.736786526 3.520609073 CORE 1 Si Si 0.0000 1 Si -2.525931575 12.011762593 7.329362258 CORE 2 Si Si 0.0000 2 Si 1.120479732 4.755168780 3.500792197 CORE 3 Si Si 0.0000 3 Si -8.588994025 12.055982838 7.356497429 CORE 4 Si Si 0.0000 4 Si -13.605955625 7.685429908 11.102751621 CORE 5 Si Si 0.0000 5 Si -3.956617080 14.850932216 7.307890812 CORE 6 Si Si 0.0000 6 Si -7.170689894 9.233228146 7.304943015 CORE 7 Si Si 0.0000 7 Si 2.466681806 16.328019807 3.529849864 CORE 8 Si Si 0.0000 8 Si -13.599031624 16.330725454 3.457331634 CORE 9 Si Si 0.0000 9 Si -3.925052921 9.104860121 7.371275589 CORE 10 Si Si 0.0000 10 Si -7.185686026 14.967180039 7.302356562 CORE 11 Si Si 0.0000 11 Si 2.438634590 7.687902612 3.491819560 CORE 12 Si Si 0.0000 12 Si -10.162932193 4.541415469 5.754649017 CORE 13 Si Si 0.0000 13 Si -0.235761653 12.069223931 9.547344203 CORE 14 Si Si 0.0000 14 Si -10.843192784 12.009949940 9.584491309 CORE 15 Si Si 0.0000 15 Si -1.192692830 4.745540454 5.753688225 CORE 16 Si Si 0.0000 16 Si -10.033168428 4.724903157 8.842985287 CORE 17 Si Si 0.0000 17 Si -0.240738104 11.992230331 5.080826991 CORE 18 Si Si 0.0000 18 Si -10.916467990 12.067170263 5.097202971 CORE 19 Si Si 0.0000 19 Si -1.165535098 4.716459434 8.869637400 CORE 20 Si Si 0.0000 20 Ti -9.045422667 7.656128487 5.000262074 CORE 21 Ti Ti 0.0000 21 Si 0.755529726 14.938482596 8.885524692 CORE 22 Si Si 0.0000 22 Si -2.206046558 16.269254656 5.094029468 CORE 23 Si Si 0.0000 23 Si -11.948136767 9.148120344 8.785378343 CORE 24 Si Si 0.0000 24 Si 0.735523465 9.076183868 5.734842106 CORE 25 Si Si 0.0000 25 Si -8.962679330 16.310418400 9.555247037 CORE 26 Si Si 0.0000 26 Si -11.793961468 14.970786895 5.724643414 CORE 27 Si Si 0.0000 27 Si -2.179826998 7.662238607 9.564616541 CORE 28 Si Si 0.0000 28 Si -12.042545194 9.211852959 5.755621371 CORE 29 Si Si 0.0000 29 Si -2.155383904 16.256467772 9.531766068 CORE 30 Si Si 0.0000 30 Si 0.677605419 14.908242199 5.761894282 CORE 31 Si Si 0.0000 31 Si -9.143438873 7.694586007 9.226522758 CORE 32 Si Si 0.0000 32 Si -2.166085612 7.692652414 5.124763994 CORE 33 Si Si 0.0000 33 Si -11.831249152 14.919966429 8.837160821 CORE 34 Si Si 0.0000 34 Si -8.893320777 16.204537803 5.033989356 CORE 35 Si Si 0.0000 35 Si 0.675867828 9.110264351 8.885708026 CORE 36 Si Si 0.0000 36 O -15.206413953 7.729791273 3.384267205 CORE 37 O O 0.0000 37 O -5.571125284 14.971059910 7.398926758 CORE 38 O O 0.0000 38 O -15.179146334 16.028045588 3.608102643 CORE 39 O O 0.0000 39 O -5.555321073 9.062297283 7.330102973 CORE 40 O O 0.0000 40 O -10.529751423 4.328259216 7.342591665 CORE 41 O O 0.0000 41 O -0.665118971 12.001000980 3.508433875 CORE 42 O O 0.0000 42 O -10.420478112 12.080725309 3.558561783 CORE 43 O O 0.0000 43 O -0.716286987 4.686239651 7.303399511 CORE 44 O O 0.0000 44 O -13.110588116 6.135687120 3.618152765 CORE 45 O O 0.0000 45 O -3.545855012 13.279410341 7.242305647 CORE 46 O O 0.0000 46 O -7.525669100 10.822615507 7.386938925 CORE 47 O O 0.0000 47 O 2.184272107 17.942879746 3.563481218 CORE 48 O O 0.0000 48 O -3.379352609 10.638340053 7.418823130 CORE 49 O O 0.0000 49 O -13.402655890 17.945273890 3.264198696 CORE 50 O O 0.0000 50 O 1.923856632 6.148705073 3.477169202 CORE 51 O O 0.0000 51 O -7.777589641 13.451436436 7.275048859 CORE 52 O O 0.0000 52 O -11.542456417 4.430813467 4.910043904 CORE 53 O O 0.0000 53 O -1.591910663 12.194599024 8.654997110 CORE 54 O O 0.0000 54 O 0.133927134 4.723459665 4.809652146 CORE 55 O O 0.0000 55 O -9.469275656 11.994780154 8.714799420 CORE 56 O O 0.0000 56 O -1.587206138 11.967556763 5.996166365 CORE 57 O O 0.0000 57 O -11.305484666 4.822429403 9.849070544 CORE 58 O O 0.0000 58 O -9.593212360 11.967860049 6.049559976 CORE 59 O O 0.0000 59 O 0.196123438 4.614324940 9.764618340 CORE 60 O O 0.0000 60 O -10.590752833 8.487839727 5.552970511 CORE 61 O O 0.0000 61 O -0.707254937 15.596966416 9.192030267 CORE 62 O O 0.0000 62 O -10.515908233 8.383602987 8.686808589 CORE 63 O O 0.0000 63 O -0.805862720 15.551898440 5.519426868 CORE 64 O O 0.0000 64 O -0.723479641 8.402685509 5.397890090 CORE 65 O O 0.0000 65 O -10.412954451 15.647645906 9.187141641 CORE 66 O O 0.0000 66 O -10.245559678 15.430432624 5.502800002 CORE 67 O O 0.0000 67 O -0.775240197 8.424887670 9.226849945 CORE 68 O O 0.0000 68 O -12.574818960 9.146548273 7.286507914 CORE 69 O O 0.0000 69 O -2.486963649 16.060001771 3.505796376 CORE 70 O O 0.0000 70 O -9.174622375 7.788968830 3.209760766 CORE 71 O O 0.0000 71 O 1.100720186 15.104145160 7.311481571 CORE 72 O O 0.0000 72 O -2.508164997 7.813530251 3.542614926 CORE 73 O O 0.0000 73 O -12.196574427 15.176185134 7.281640436 CORE 74 O O 0.0000 74 O 1.045362629 8.863008731 7.317072342 CORE 75 O O 0.0000 75 O -8.560353115 15.902291387 3.471389618 CORE 76 O O 0.0000 76 O -13.154665858 8.526971136 4.824324109 CORE 77 O O 0.0000 77 O -3.323000878 15.542880145 8.643764673 CORE 78 O O 0.0000 78 O 1.764947556 15.656806762 4.823286637 CORE 79 O O 0.0000 79 O -7.861697418 8.412987581 8.520142985 CORE 80 O O 0.0000 80 O -3.328030829 8.373342430 6.014890237 CORE 81 O O 0.0000 81 O -13.040684750 15.554677746 9.737305084 CORE 82 O O 0.0000 82 O -7.599987361 15.725122977 5.910672581 CORE 83 O O 0.0000 83 O 1.836612569 8.466156929 9.810426567 CORE 84 O O 0.0000 84 O -7.722652001 8.630920158 5.892204160 CORE 85 O O 0.0000 85 O 1.895449928 15.702186529 9.753201885 CORE 86 O O 0.0000 86 O -3.427103946 15.611324795 5.958079008 CORE 87 O O 0.0000 87 O -12.933017012 8.334751862 9.763952556 CORE 88 O O 0.0000 88 O 1.920821572 8.386552675 4.869203342 CORE 89 O O 0.0000 89 O -7.787621446 15.780590324 8.569617433 CORE 90 O O 0.0000 90 O -12.797817043 15.819294191 4.775182248 CORE 91 O O 0.0000 91 O -3.380071586 8.298454679 8.694790310 CORE 92 O O 0.0000 92 O -9.407381298 5.951896001 5.541952446 CORE 93 O O 0.0000 93 O 0.734128812 13.354981783 9.294405379 CORE 94 O O 0.0000 94 O -2.137311722 17.884614498 5.402451453 CORE 95 O O 0.0000 95 O -11.741100893 10.671126237 9.309436555 CORE 96 O O 0.0000 96 O 0.674241470 10.668845105 5.390742577 CORE 97 O O 0.0000 97 O -9.075658759 17.957484905 9.442905862 CORE 98 O O 0.0000 98 O -11.828597059 13.369624997 5.380446513 CORE 99 O O 0.0000 99 O -2.002234533 6.081324087 9.196544998 CORE 100 O O 0.0000 100 O -11.894552981 10.780867246 5.370393272 CORE 101 O O 0.0000 101 O -2.132958217 17.861403305 9.181449617 CORE 102 O O 0.0000 102 O 0.650808907 13.317745479 5.397798651 CORE 103 O O 0.0000 103 O -9.155242909 6.096340211 8.781866091 CORE 104 O O 0.0000 104 O -2.066188250 6.105927599 5.510310151 CORE 105 O O 0.0000 105 O -11.719913786 13.330217257 9.188032370 CORE 106 O O 0.0000 106 O -9.128238556 17.816049485 5.240456832 CORE 107 O O 0.0000 107 O 0.590907517 10.715568181 9.148233921 CORE 108 O O 0.0000 108 O2 12.324518812 6.463297714 4.391691409 CORE 109 O2 O2 0.0000 109 O2 13.073626820 7.974265136 3.139651970 CORE 110 O2 O2 0.0000 110 H 12.190238155 5.793686435 3.675851757 CORE 111 H H 0.0000 111 H 12.903537424 8.773520145 3.710565846 CORE 112 H H 0.0000 112 C 13.353773936 5.987515691 5.407484160 CORE 113 C C 0.0000 113 C 12.861757289 4.649398456 5.764552320 CORE 114 C C 0.0000 114 H 13.014812362 3.837168594 5.064448196 CORE 115 H H 0.0000 115 H 12.105593840 4.488886855 6.585689168 CORE 116 H H 0.0000 116 H 14.317868515 6.014873861 4.954347956 CORE 117 H H 0.0000 117 H 13.250653110 6.690698326 6.221861844 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.328403519 4.736941916 3.497138070 CORE 1 Si Si 0.0000 1 Si -2.520711296 12.013084281 7.325254665 CORE 2 Si Si 0.0000 2 Si 1.119096433 4.751026992 3.501040116 CORE 3 Si Si 0.0000 3 Si -8.587005292 12.046019081 7.346320799 CORE 4 Si Si 0.0000 4 Si -13.590384081 7.687058197 11.109515198 CORE 5 Si Si 0.0000 5 Si -3.951715298 14.850580496 7.307911808 CORE 6 Si Si 0.0000 6 Si -7.158243859 9.230433560 7.298947615 CORE 7 Si Si 0.0000 7 Si 2.479931494 16.332635407 3.530555509 CORE 8 Si Si 0.0000 8 Si -13.591802405 16.333169185 3.447341532 CORE 9 Si Si 0.0000 9 Si -3.918594831 9.101260904 7.365889680 CORE 10 Si Si 0.0000 10 Si -7.178513001 14.956071607 7.299427783 CORE 11 Si Si 0.0000 11 Si 2.442440395 7.686626187 3.487672866 CORE 12 Si Si 0.0000 12 Si -10.150127247 4.532512348 5.747734056 CORE 13 Si Si 0.0000 13 Si -0.227237852 12.065450296 9.545588153 CORE 14 Si Si 0.0000 14 Si -10.849074307 12.003483631 9.582659947 CORE 15 Si Si 0.0000 15 Si -1.190198927 4.745366612 5.749349753 CORE 16 Si Si 0.0000 16 Si -10.031840938 4.721635768 8.831347614 CORE 17 Si Si 0.0000 17 Si -0.232974078 11.993279003 5.075911740 CORE 18 Si Si 0.0000 18 Si -10.912627353 12.061240903 5.093556603 CORE 19 Si Si 0.0000 19 Si -1.162565085 4.713576198 8.870238142 CORE 20 Si Si 0.0000 20 Ti -9.045361277 7.664308564 5.021762960 CORE 21 Ti Ti 0.0000 21 Si 0.760184793 14.939594261 8.889044932 CORE 22 Si Si 0.0000 22 Si -2.207756437 16.269690558 5.091633879 CORE 23 Si Si 0.0000 23 Si -11.941257221 9.138299293 8.779379139 CORE 24 Si Si 0.0000 24 Si 0.733770863 9.078673437 5.733260870 CORE 25 Si Si 0.0000 25 Si -8.964234868 16.316326425 9.548459041 CORE 26 Si Si 0.0000 26 Si -11.790872908 14.965119740 5.720187411 CORE 27 Si Si 0.0000 27 Si -2.169838494 7.661178259 9.564719771 CORE 28 Si Si 0.0000 28 Si -12.035672962 9.222069263 5.757033195 CORE 29 Si Si 0.0000 29 Si -2.156135981 16.253917948 9.533255485 CORE 30 Si Si 0.0000 30 Si 0.682192745 14.911014874 5.756675199 CORE 31 Si Si 0.0000 31 Si -9.129201939 7.686067472 9.226334556 CORE 32 Si Si 0.0000 32 Si -2.162459744 7.689747267 5.118414402 CORE 33 Si Si 0.0000 33 Si -11.831786268 14.916336364 8.839978002 CORE 34 Si Si 0.0000 34 Si -8.882706055 16.194956324 5.031257604 CORE 35 Si Si 0.0000 35 Si 0.681573455 9.111175507 8.881053474 CORE 36 Si Si 0.0000 36 O -15.197615917 7.719792632 3.389920584 CORE 37 O O 0.0000 37 O -5.562881876 14.972503691 7.396946295 CORE 38 O O 0.0000 38 O -15.174227617 16.042259531 3.608503315 CORE 39 O O 0.0000 39 O -5.539726051 9.072161434 7.336451043 CORE 40 O O 0.0000 40 O -10.522259708 4.321242264 7.328172109 CORE 41 O O 0.0000 41 O -0.660561859 12.002946682 3.505011159 CORE 42 O O 0.0000 42 O -10.419815521 12.079332268 3.544699152 CORE 43 O O 0.0000 43 O -0.720009847 4.680969189 7.303628640 CORE 44 O O 0.0000 44 O -13.097397701 6.143598651 3.632637895 CORE 45 O O 0.0000 45 O -3.542474704 13.275290608 7.241633778 CORE 46 O O 0.0000 46 O -7.527087232 10.817320108 7.394048250 CORE 47 O O 0.0000 47 O 2.184282691 17.939938850 3.561365955 CORE 48 O O 0.0000 48 O -3.369623137 10.635693651 7.414933332 CORE 49 O O 0.0000 49 O -13.388264038 17.942774662 3.246356196 CORE 50 O O 0.0000 50 O 1.921136413 6.148229675 3.474726676 CORE 51 O O 0.0000 51 O -7.754454600 13.436763095 7.296891157 CORE 52 O O 0.0000 52 O -11.513623254 4.412245983 4.872831072 CORE 53 O O 0.0000 53 O -1.581824781 12.192738081 8.649129891 CORE 54 O O 0.0000 54 O 0.139485733 4.723557974 4.811813052 CORE 55 O O 0.0000 55 O -9.478250164 11.980764990 8.705784260 CORE 56 O O 0.0000 56 O -1.580415695 11.975336687 5.991560347 CORE 57 O O 0.0000 57 O -11.319869976 4.836762989 9.816449200 CORE 58 O O 0.0000 58 O -9.576493456 11.983459826 6.037108179 CORE 59 O O 0.0000 59 O 0.197851022 4.611553130 9.763251856 CORE 60 O O 0.0000 60 O -10.582614885 8.511367900 5.550400641 CORE 61 O O 0.0000 61 O -0.703870588 15.596103405 9.198657370 CORE 62 O O 0.0000 62 O -10.496991984 8.392023214 8.684804012 CORE 63 O O 0.0000 63 O -0.802627710 15.552208933 5.509210680 CORE 64 O O 0.0000 64 O -0.721104478 8.405681902 5.394540480 CORE 65 O O 0.0000 65 O -10.404824778 15.639560534 9.188933978 CORE 66 O O 0.0000 66 O -10.243031328 15.436810138 5.497548893 CORE 67 O O 0.0000 67 O -0.760057586 8.425278742 9.239403755 CORE 68 O O 0.0000 68 O -12.573983554 9.142363962 7.288973261 CORE 69 O O 0.0000 69 O -2.491425500 16.054431339 3.505194341 CORE 70 O O 0.0000 70 O -9.162188849 7.795570781 3.233046762 CORE 71 O O 0.0000 71 O 1.095018215 15.111848974 7.311128063 CORE 72 O O 0.0000 72 O -2.511605154 7.813288804 3.537861709 CORE 73 O O 0.0000 73 O -12.187116880 15.174360661 7.278033094 CORE 74 O O 0.0000 74 O 1.040489329 8.863128230 7.314056461 CORE 75 O O 0.0000 75 O -8.556383924 15.917299006 3.464675945 CORE 76 O O 0.0000 76 O -13.154123162 8.526160307 4.820595736 CORE 77 O O 0.0000 77 O -3.314022521 15.537967746 8.645295550 CORE 78 O O 0.0000 78 O 1.774361611 15.654425447 4.825283608 CORE 79 O O 0.0000 79 O -7.858999523 8.403715587 8.516859101 CORE 80 O O 0.0000 80 O -3.332621619 8.373392593 6.013356774 CORE 81 O O 0.0000 81 O -13.031922701 15.549981135 9.738029747 CORE 82 O O 0.0000 82 O -7.599070358 15.694815696 5.899138138 CORE 83 O O 0.0000 83 O 1.848982396 8.467831202 9.797812051 CORE 84 O O 0.0000 84 O -7.724387283 8.630280576 5.893217517 CORE 85 O O 0.0000 85 O 1.901577396 15.699693500 9.753202722 CORE 86 O O 0.0000 86 O -3.421191632 15.613556053 5.958760006 CORE 87 O O 0.0000 87 O -12.921194501 8.328482747 9.773962893 CORE 88 O O 0.0000 88 O 1.919703078 8.390907657 4.865187417 CORE 89 O O 0.0000 89 O -7.796424871 15.783747728 8.557688937 CORE 90 O O 0.0000 90 O -12.794372651 15.816315385 4.773115063 CORE 91 O O 0.0000 91 O -3.370227223 8.304315425 8.685500909 CORE 92 O O 0.0000 92 O -9.425362839 5.967103842 5.564358820 CORE 93 O O 0.0000 93 O 0.740878264 13.354744083 9.293064911 CORE 94 O O 0.0000 94 O -2.136418774 17.877784793 5.398295402 CORE 95 O O 0.0000 95 O -11.746171835 10.669020100 9.311773340 CORE 96 O O 0.0000 96 O 0.674949092 10.674213442 5.389656951 CORE 97 O O 0.0000 97 O -9.071987282 17.950179659 9.430665850 CORE 98 O O 0.0000 98 O -11.824993130 13.375966907 5.376721335 CORE 99 O O 0.0000 99 O -1.994463387 6.077638958 9.196121200 CORE 100 O O 0.0000 100 O -11.891915706 10.797231148 5.373862619 CORE 101 O O 0.0000 101 O -2.131554711 17.854234134 9.187112886 CORE 102 O O 0.0000 102 O 0.658213637 13.319825527 5.397344272 CORE 103 O O 0.0000 103 O -9.147495434 6.097496562 8.783188301 CORE 104 O O 0.0000 104 O -2.062029886 6.103209556 5.508211168 CORE 105 O O 0.0000 105 O -11.721942355 13.322466884 9.174882763 CORE 106 O O 0.0000 106 O -9.108938378 17.795198850 5.253510360 CORE 107 O O 0.0000 107 O 0.597838638 10.717614498 9.149582681 CORE 108 O O 0.0000 108 O2 12.301590264 6.517902050 4.368938299 CORE 109 O2 O2 0.0000 109 O2 13.072279316 7.969549498 3.164838172 CORE 110 O2 O2 0.0000 110 H 12.093280400 5.749565075 3.766383725 CORE 111 H H 0.0000 111 H 12.814483795 8.761672093 3.703250822 CORE 112 H H 0.0000 112 C 13.299550653 5.997403483 5.425810098 CORE 113 C C 0.0000 113 C 12.761890912 4.679066587 5.711820081 CORE 114 C C 0.0000 114 H 12.929537211 3.845814411 5.011389835 CORE 115 H H 0.0000 115 H 12.035805749 4.526566700 6.537610948 CORE 116 H H 0.0000 116 H 14.280302748 6.050610887 4.949194903 CORE 117 H H 0.0000 117 H 13.192233743 6.719594548 6.249259692 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.330908968 4.735243428 3.502066634 CORE 1 Si Si 0.0000 1 Si -2.528779193 12.013193545 7.327291726 CORE 2 Si Si 0.0000 2 Si 1.115805420 4.751453813 3.501673721 CORE 3 Si Si 0.0000 3 Si -8.589044639 12.050045983 7.345826710 CORE 4 Si Si 0.0000 4 Si -13.596809647 7.687295463 11.102987977 CORE 5 Si Si 0.0000 5 Si -3.957699586 14.852978388 7.308607640 CORE 6 Si Si 0.0000 6 Si -7.169049488 9.232869219 7.299800004 CORE 7 Si Si 0.0000 7 Si 2.477334633 16.333033687 3.530342812 CORE 8 Si Si 0.0000 8 Si -13.597281909 16.331588032 3.448707484 CORE 9 Si Si 0.0000 9 Si -3.922157192 9.099853881 7.369331337 CORE 10 Si Si 0.0000 10 Si -7.179459833 14.960334767 7.295749770 CORE 11 Si Si 0.0000 11 Si 2.438365166 7.686792821 3.489804713 CORE 12 Si Si 0.0000 12 Si -10.159249169 4.541754215 5.761368776 CORE 13 Si Si 0.0000 13 Si -0.230535407 12.063939775 9.548712057 CORE 14 Si Si 0.0000 14 Si -10.846714539 12.007633058 9.586043790 CORE 15 Si Si 0.0000 15 Si -1.190278792 4.748703769 5.751134711 CORE 16 Si Si 0.0000 16 Si -10.032565111 4.723890233 8.841888859 CORE 17 Si Si 0.0000 17 Si -0.235535144 11.989044097 5.077159628 CORE 18 Si Si 0.0000 18 Si -10.912066374 12.054962131 5.098285706 CORE 19 Si Si 0.0000 19 Si -1.162221569 4.717979613 8.869368180 CORE 20 Si Si 0.0000 20 Ti -9.043736459 7.661762777 5.020386130 CORE 21 Ti Ti 0.0000 21 Si 0.757144729 14.939067978 8.888450276 CORE 22 Si Si 0.0000 22 Si -2.210964698 16.271016570 5.095957061 CORE 23 Si Si 0.0000 23 Si -11.941150991 9.142000566 8.782778348 CORE 24 Si Si 0.0000 24 Si 0.730555866 9.076736529 5.736893544 CORE 25 Si Si 0.0000 25 Si -8.966233416 16.317216391 9.552814401 CORE 26 Si Si 0.0000 26 Si -11.788627453 14.966539448 5.723305229 CORE 27 Si Si 0.0000 27 Si -2.175135367 7.661681622 9.565791020 CORE 28 Si Si 0.0000 28 Si -12.035422205 9.219247577 5.756782917 CORE 29 Si Si 0.0000 29 Si -2.160359778 16.256963927 9.530523125 CORE 30 Si Si 0.0000 30 Si 0.679125932 14.909105498 5.758272410 CORE 31 Si Si 0.0000 31 Si -9.139662128 7.690650494 9.214261066 CORE 32 Si Si 0.0000 32 Si -2.161831987 7.691057278 5.121290310 CORE 33 Si Si 0.0000 33 Si -11.836228875 14.919660548 8.845953090 CORE 34 Si Si 0.0000 34 Si -8.889553077 16.203014453 5.035708282 CORE 35 Si Si 0.0000 35 Si 0.674974495 9.110540250 8.880417739 CORE 36 Si Si 0.0000 36 O -15.206862351 7.726403809 3.385997999 CORE 37 O O 0.0000 37 O -5.570170561 14.970441518 7.398683175 CORE 38 O O 0.0000 38 O -15.179893215 16.034993781 3.609089907 CORE 39 O O 0.0000 39 O -5.540978487 9.065401785 7.333706435 CORE 40 O O 0.0000 40 O -10.527223650 4.323049873 7.336178096 CORE 41 O O 0.0000 41 O -0.664846083 12.001328627 3.506868005 CORE 42 O O 0.0000 42 O -10.420155188 12.079056370 3.546864318 CORE 43 O O 0.0000 43 O -0.718383874 4.684104539 7.305035139 CORE 44 O O 0.0000 44 O -13.110057736 6.142199412 3.623153826 CORE 45 O O 0.0000 45 O -3.542292074 13.275820494 7.242307168 CORE 46 O O 0.0000 46 O -7.527357233 10.824751916 7.387661230 CORE 47 O O 0.0000 47 O 2.183691883 17.940331075 3.562354361 CORE 48 O O 0.0000 48 O -3.376324670 10.638311079 7.417662193 CORE 49 O O 0.0000 49 O -13.395937999 17.942048880 3.260642550 CORE 50 O O 0.0000 50 O 1.924755353 6.148516817 3.476003167 CORE 51 O O 0.0000 51 O -7.766060802 13.450628058 7.284451835 CORE 52 O O 0.0000 52 O -11.535996980 4.425056796 4.894805127 CORE 53 O O 0.0000 53 O -1.589646156 12.194751388 8.653588557 CORE 54 O O 0.0000 54 O 0.138184993 4.723952505 4.808596797 CORE 55 O O 0.0000 55 O -9.474932594 11.988351612 8.712085926 CORE 56 O O 0.0000 56 O -1.585344227 11.970599138 5.993965749 CORE 57 O O 0.0000 57 O -11.312386728 4.831498437 9.840239250 CORE 58 O O 0.0000 58 O -9.586811235 11.975127385 6.048767913 CORE 59 O O 0.0000 59 O 0.197440921 4.614006663 9.765250804 CORE 60 O O 0.0000 60 O -10.580424662 8.491524711 5.549997078 CORE 61 O O 0.0000 61 O -0.705046816 15.595991114 9.194727178 CORE 62 O O 0.0000 62 O -10.506645634 8.389003470 8.683808303 CORE 63 O O 0.0000 63 O -0.803000669 15.551997613 5.515322699 CORE 64 O O 0.0000 64 O -0.719051083 8.405384526 5.395727967 CORE 65 O O 0.0000 65 O -10.409725213 15.644937520 9.187781713 CORE 66 O O 0.0000 66 O -10.243222041 15.433312834 5.501384908 CORE 67 O O 0.0000 67 O -0.766072089 8.427335726 9.228429964 CORE 68 O O 0.0000 68 O -12.577610384 9.142922100 7.288587727 CORE 69 O O 0.0000 69 O -2.488420462 16.056498268 3.505915353 CORE 70 O O 0.0000 70 O -9.166318346 7.793346010 3.213647293 CORE 71 O O 0.0000 71 O 1.098875980 15.107056217 7.311625575 CORE 72 O O 0.0000 72 O -2.510297871 7.813712742 3.539938555 CORE 73 O O 0.0000 73 O -12.194670370 15.174890114 7.282181994 CORE 74 O O 0.0000 74 O 1.043272670 8.863056733 7.316879119 CORE 75 O O 0.0000 75 O -8.559233274 15.910361768 3.469962581 CORE 76 O O 0.0000 76 O -13.162595965 8.521816857 4.818539962 CORE 77 O O 0.0000 77 O -3.317216733 15.542425648 8.645250363 CORE 78 O O 0.0000 78 O 1.766314497 15.654948270 4.826508902 CORE 79 O O 0.0000 79 O -7.860653785 8.407306443 8.524114333 CORE 80 O O 0.0000 80 O -3.333791881 8.376478645 6.017911747 CORE 81 O O 0.0000 81 O -13.033908740 15.553974595 9.737162220 CORE 82 O O 0.0000 82 O -7.603139813 15.713365593 5.905016083 CORE 83 O O 0.0000 83 O 1.839625113 8.467741686 9.804422875 CORE 84 O O 0.0000 84 O -7.731579552 8.626081706 5.885628862 CORE 85 O O 0.0000 85 O 1.896192575 15.699330825 9.751007736 CORE 86 O O 0.0000 86 O -3.423449596 15.612401720 5.958204527 CORE 87 O O 0.0000 87 O -12.935906390 8.332489036 9.772928768 CORE 88 O O 0.0000 88 O 1.921140647 8.388454412 4.869064815 CORE 89 O O 0.0000 89 O -7.791265981 15.780606901 8.566275051 CORE 90 O O 0.0000 90 O -12.797077859 15.814843064 4.776626554 CORE 91 O O 0.0000 91 O -3.379159202 8.302265505 8.686626625 CORE 92 O O 0.0000 92 O -9.415807337 5.961341981 5.548095959 CORE 93 O O 0.0000 93 O 0.735124333 13.355841334 9.293491524 CORE 94 O O 0.0000 94 O -2.138608228 17.877266007 5.398682458 CORE 95 O O 0.0000 95 O -11.739866931 10.677047236 9.313548028 CORE 96 O O 0.0000 96 O 0.672653216 10.673706188 5.389615264 CORE 97 O O 0.0000 97 O -9.067224638 17.946563433 9.437889587 CORE 98 O O 0.0000 98 O -11.832979431 13.375514716 5.380153179 CORE 99 O O 0.0000 99 O -1.999098439 6.077684221 9.196495704 CORE 100 O O 0.0000 100 O -11.892347939 10.792173881 5.369813069 CORE 101 O O 0.0000 101 O -2.133992035 17.855838494 9.185916727 CORE 102 O O 0.0000 102 O 0.652281501 13.319629486 5.398047711 CORE 103 O O 0.0000 103 O -9.153042486 6.095804992 8.788068711 CORE 104 O O 0.0000 104 O -2.065578005 6.103774758 5.509196455 CORE 105 O O 0.0000 105 O -11.721726623 13.329781212 9.181272750 CORE 106 O O 0.0000 106 O -9.116196465 17.805228915 5.245967805 CORE 107 O O 0.0000 107 O 0.591975975 10.718539780 9.149672294 CORE 108 O O 0.0000 108 O2 12.327279251 6.475550244 4.398445324 CORE 109 O2 O2 0.0000 109 O2 13.071823797 7.970113547 3.142682685 CORE 110 O2 O2 0.0000 110 H 12.161232753 5.783917421 3.707252751 CORE 111 H H 0.0000 111 H 12.872067563 8.761918009 3.712303410 CORE 112 H H 0.0000 112 C 13.308435674 5.978100415 5.414605124 CORE 113 C C 0.0000 113 C 12.816409791 4.671119596 5.749853579 CORE 114 C C 0.0000 114 H 12.989466698 3.833260758 5.043543107 CORE 115 H H 0.0000 115 H 12.086606579 4.504564327 6.562491416 CORE 116 H H 0.0000 116 H 14.324391459 6.031712873 4.938863085 CORE 117 H H 0.0000 117 H 13.232640778 6.707550023 6.237827338 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.330387440 4.735596877 3.501040953 CORE 1 Si Si 0.0000 1 Si -2.527100105 12.013170769 7.326867775 CORE 2 Si Si 0.0000 2 Si 1.116490334 4.751365018 3.501541888 CORE 3 Si Si 0.0000 3 Si -8.588620296 12.049207910 7.345929559 CORE 4 Si Si 0.0000 4 Si -13.595472343 7.687246165 11.104346398 CORE 5 Si Si 0.0000 5 Si -3.956454078 14.852479350 7.308462799 CORE 6 Si Si 0.0000 6 Si -7.166800568 9.232362253 7.299622604 CORE 7 Si Si 0.0000 7 Si 2.477875020 16.332950802 3.530387086 CORE 8 Si Si 0.0000 8 Si -13.596141476 16.331917121 3.448423202 CORE 9 Si Si 0.0000 9 Si -3.921415699 9.100146645 7.368615041 CORE 10 Si Si 0.0000 10 Si -7.179262769 14.959447395 7.296515208 CORE 11 Si Si 0.0000 11 Si 2.439213274 7.686758226 3.489361060 CORE 12 Si Si 0.0000 12 Si -10.157350693 4.539830712 5.758531132 CORE 13 Si Si 0.0000 13 Si -0.229849146 12.064254161 9.548061944 CORE 14 Si Si 0.0000 14 Si -10.847205660 12.006769471 9.585339590 CORE 15 Si Si 0.0000 15 Si -1.190262242 4.748009266 5.750763250 CORE 16 Si Si 0.0000 16 Si -10.032414426 4.723421034 8.839695013 CORE 17 Si Si 0.0000 17 Si -0.235002070 11.989925414 5.076899917 CORE 18 Si Si 0.0000 18 Si -10.912182996 12.056268827 5.097301484 CORE 19 Si Si 0.0000 19 Si -1.162292967 4.717063124 8.869549232 CORE 20 Si Si 0.0000 20 Ti -9.044074586 7.662292519 5.020672694 CORE 21 Ti Ti 0.0000 21 Si 0.757777490 14.939177530 8.888574045 CORE 22 Si Si 0.0000 22 Si -2.210297104 16.270740672 5.095057355 CORE 23 Si Si 0.0000 23 Si -11.941173122 9.141230242 8.782070953 CORE 24 Si Si 0.0000 24 Si 0.731225000 9.077139565 5.736137539 CORE 25 Si Si 0.0000 25 Si -8.965817348 16.317031162 9.551908001 CORE 26 Si Si 0.0000 26 Si -11.789094903 14.966243946 5.722656333 CORE 27 Si Si 0.0000 27 Si -2.174033038 7.661576827 9.565568052 CORE 28 Si Si 0.0000 28 Si -12.035474358 9.219834834 5.756834950 CORE 29 Si Si 0.0000 29 Si -2.159480686 16.256329967 9.531091840 CORE 30 Si Si 0.0000 30 Si 0.679764081 14.909502912 5.757939975 CORE 31 Si Si 0.0000 31 Si -9.137485183 7.689696671 9.216773730 CORE 32 Si Si 0.0000 32 Si -2.161962657 7.690784696 5.120691775 CORE 33 Si Si 0.0000 33 Si -11.835304174 14.918968784 8.844709539 CORE 34 Si Si 0.0000 34 Si -8.888128018 16.201337298 5.034781952 CORE 35 Si Si 0.0000 35 Si 0.676347787 9.110672433 8.880550029 CORE 36 Si Si 0.0000 36 O -15.204937895 7.725027922 3.386814330 CORE 37 O O 0.0000 37 O -5.568653705 14.970870645 7.398321756 CORE 38 O O 0.0000 38 O -15.178714101 16.036505887 3.608967812 CORE 39 O O 0.0000 39 O -5.540717915 9.066808664 7.334277661 CORE 40 O O 0.0000 40 O -10.526190602 4.322673648 7.334511887 CORE 41 O O 0.0000 41 O -0.663954482 12.001665356 3.506481558 CORE 42 O O 0.0000 42 O -10.420084560 12.079113741 3.546413742 CORE 43 O O 0.0000 43 O -0.718722193 4.683451984 7.304742413 CORE 44 O O 0.0000 44 O -13.107422963 6.142490734 3.625127670 CORE 45 O O 0.0000 45 O -3.542329985 13.275710221 7.242167044 CORE 46 O O 0.0000 46 O -7.527301039 10.823205214 7.388990516 CORE 47 O O 0.0000 47 O 2.183814856 17.940249344 3.562148662 CORE 48 O O 0.0000 48 O -3.374930017 10.637766346 7.417094314 CORE 49 O O 0.0000 49 O -13.394340893 17.942199946 3.257669269 CORE 50 O O 0.0000 50 O 1.924002313 6.148456995 3.475737523 CORE 51 O O 0.0000 51 O -7.763645417 13.447742515 7.287040723 CORE 52 O O 0.0000 52 O -11.531340566 4.422390646 4.890231896 CORE 53 O O 0.0000 53 O -1.588018451 12.194332351 8.652660629 CORE 54 O O 0.0000 54 O 0.138455571 4.723870341 4.809266156 CORE 55 O O 0.0000 55 O -9.475623089 11.986772622 8.710774442 CORE 56 O O 0.0000 56 O -1.584318491 11.971585106 5.993465119 CORE 57 O O 0.0000 57 O -11.313944191 4.832594102 9.835288093 CORE 58 O O 0.0000 58 O -9.584663926 11.976861478 6.046341286 CORE 59 O O 0.0000 59 O 0.197526367 4.613495948 9.764834765 CORE 60 O O 0.0000 60 O -10.580880373 8.495654391 5.550081062 CORE 61 O O 0.0000 61 O -0.704802025 15.596014610 9.195545106 CORE 62 O O 0.0000 62 O -10.504636501 8.389631952 8.684015523 CORE 63 O O 0.0000 63 O -0.802923114 15.552041578 5.514050620 CORE 64 O O 0.0000 64 O -0.719478505 8.405446365 5.395480808 CORE 65 O O 0.0000 65 O -10.408705444 15.643818504 9.188021568 CORE 66 O O 0.0000 66 O -10.243182397 15.434040634 5.500586530 CORE 67 O O 0.0000 67 O -0.764820422 8.426907608 9.230713803 CORE 68 O O 0.0000 68 O -12.576855612 9.142805917 7.288667983 CORE 69 O O 0.0000 69 O -2.489045910 16.056068132 3.505765263 CORE 70 O O 0.0000 70 O -9.165458884 7.793809012 3.217684748 CORE 71 O O 0.0000 71 O 1.098073097 15.108053717 7.311522041 CORE 72 O O 0.0000 72 O -2.510569797 7.813624524 3.539506313 CORE 73 O O 0.0000 73 O -12.193098282 15.174779985 7.281318575 CORE 74 O O 0.0000 74 O 1.042693408 8.863071580 7.316291690 CORE 75 O O 0.0000 75 O -8.558640349 15.911805549 3.468862273 CORE 76 O O 0.0000 76 O -13.160832586 8.522720806 4.818967792 CORE 77 O O 0.0000 77 O -3.316551834 15.541497916 8.645259796 CORE 78 O O 0.0000 78 O 1.767989159 15.654839438 4.826253908 CORE 79 O O 0.0000 79 O -7.860309500 8.406559183 8.522604376 CORE 80 O O 0.0000 80 O -3.333548437 8.375836469 6.016963736 CORE 81 O O 0.0000 81 O -13.033495367 15.553143441 9.737342816 CORE 82 O O 0.0000 82 O -7.602292860 15.709505037 5.903792766 CORE 83 O O 0.0000 83 O 1.841572662 8.467760425 9.803047034 CORE 84 O O 0.0000 84 O -7.730082710 8.626955527 5.887208196 CORE 85 O O 0.0000 85 O 1.897313186 15.699406358 9.751464549 CORE 86 O O 0.0000 86 O -3.422979644 15.612641870 5.958320156 CORE 87 O O 0.0000 87 O -12.932844581 8.331655288 9.773143976 CORE 88 O O 0.0000 88 O 1.920841394 8.388964982 4.868257841 CORE 89 O O 0.0000 89 O -7.792339635 15.781260465 8.564488115 CORE 90 O O 0.0000 90 O -12.796514764 15.815149521 4.775895805 CORE 91 O O 0.0000 91 O -3.377300369 8.302692181 8.686392322 CORE 92 O O 0.0000 92 O -9.417796070 5.962541144 5.551480562 CORE 93 O O 0.0000 93 O 0.736321922 13.355613004 9.293402748 CORE 94 O O 0.0000 94 O -2.138152516 17.877373973 5.398601897 CORE 95 O O 0.0000 95 O -11.741179026 10.675376568 9.313178697 CORE 96 O O 0.0000 96 O 0.673131059 10.673811704 5.389623936 CORE 97 O O 0.0000 97 O -9.068215733 17.947316026 9.436386173 CORE 98 O O 0.0000 98 O -11.831317470 13.375608844 5.379438937 CORE 99 O O 0.0000 99 O -1.998133902 6.077674851 9.196417806 CORE 100 O O 0.0000 100 O -11.892258067 10.793226445 5.370655873 CORE 101 O O 0.0000 101 O -2.133484748 17.855504649 9.186165635 CORE 102 O O 0.0000 102 O 0.653516040 13.319670280 5.397901273 CORE 103 O O 0.0000 103 O -9.151888005 6.096157000 8.787052996 CORE 104 O O 0.0000 104 O -2.064839592 6.103657134 5.508991364 CORE 105 O O 0.0000 105 O -11.721771463 13.328258871 9.179942856 CORE 106 O O 0.0000 106 O -9.114685959 17.803141372 5.247537554 CORE 107 O O 0.0000 107 O 0.593196080 10.718347199 9.149653656 CORE 108 O O 0.0000 108 O2 12.321932920 6.484364426 4.392304322 CORE 109 O2 O2 0.0000 109 O2 13.071918480 7.969996067 3.147293647 CORE 110 O2 O2 0.0000 110 H 12.147090502 5.776768142 3.719559022 CORE 111 H H 0.0000 111 H 12.860083397 8.761866836 3.710419407 CORE 112 H H 0.0000 112 C 13.306586464 5.982117659 5.416937040 CORE 113 C C 0.0000 113 C 12.805063390 4.672773544 5.741938118 CORE 114 C C 0.0000 114 H 12.976994298 3.835873429 5.036851343 CORE 115 H H 0.0000 115 H 12.076034002 4.509143458 6.557313336 CORE 116 H H 0.0000 116 H 14.315215653 6.035645935 4.941013341 CORE 117 H H 0.0000 117 H 13.224231290 6.710056602 6.240206647 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.337244278 4.735073622 3.502387582 CORE 1 Si Si 0.0000 1 Si -2.530597996 12.013604076 7.328762125 CORE 2 Si Si 0.0000 2 Si 1.116952781 4.750732211 3.502080175 CORE 3 Si Si 0.0000 3 Si -8.590434866 12.056032425 7.341868903 CORE 4 Si Si 0.0000 4 Si -13.602852055 7.686032156 11.103277128 CORE 5 Si Si 0.0000 5 Si -3.961694565 14.853500202 7.310389326 CORE 6 Si Si 0.0000 6 Si -7.166060615 9.231717770 7.290948170 CORE 7 Si Si 0.0000 7 Si 2.478026667 16.334232272 3.531041078 CORE 8 Si Si 0.0000 8 Si -13.600334096 16.329100481 3.447276566 CORE 9 Si Si 0.0000 9 Si -3.923542030 9.099238948 7.369839651 CORE 10 Si Si 0.0000 10 Si -7.182999677 14.966168412 7.291333856 CORE 11 Si Si 0.0000 11 Si 2.432359131 7.687212146 3.490609100 CORE 12 Si Si 0.0000 12 Si -10.165443801 4.544292651 5.766426282 CORE 13 Si Si 0.0000 13 Si -0.233204436 12.062425219 9.549761625 CORE 14 Si Si 0.0000 14 Si -10.847652519 12.017814334 9.590480090 CORE 15 Si Si 0.0000 15 Si -1.189211296 4.749696079 5.748043214 CORE 16 Si Si 0.0000 16 Si -10.031194898 4.715927963 8.852988625 CORE 17 Si Si 0.0000 17 Si -0.237129364 11.987054286 5.077179939 CORE 18 Si Si 0.0000 18 Si -10.916292479 12.050849749 5.099315723 CORE 19 Si Si 0.0000 19 Si -1.160751285 4.718879669 8.872116972 CORE 20 Si Si 0.0000 20 Ti -9.041100146 7.665689352 5.013812430 CORE 21 Ti Ti 0.0000 21 Si 0.755441586 14.937930800 8.888394819 CORE 22 Si Si 0.0000 22 Si -2.212022379 16.270163938 5.097026179 CORE 23 Si Si 0.0000 23 Si -11.947884086 9.143738263 8.783513434 CORE 24 Si Si 0.0000 24 Si 0.732106593 9.077891294 5.740148140 CORE 25 Si Si 0.0000 25 Si -8.967722175 16.315332097 9.554950583 CORE 26 Si Si 0.0000 26 Si -11.790480127 14.961309924 5.728416822 CORE 27 Si Si 0.0000 27 Si -2.175931129 7.663195890 9.565538536 CORE 28 Si Si 0.0000 28 Si -12.033052815 9.213537466 5.753019931 CORE 29 Si Si 0.0000 29 Si -2.161603939 16.257919480 9.531226184 CORE 30 Si Si 0.0000 30 Si 0.678352108 14.907563841 5.758781789 CORE 31 Si Si 0.0000 31 Si -9.140270448 7.684985501 9.199711883 CORE 32 Si Si 0.0000 32 Si -2.160918640 7.692939699 5.122451400 CORE 33 Si Si 0.0000 33 Si -11.842518959 14.923719595 8.851775730 CORE 34 Si Si 0.0000 34 Si -8.890463345 16.210721438 5.037458779 CORE 35 Si Si 0.0000 35 Si 0.673278857 9.112843293 8.878123022 CORE 36 Si Si 0.0000 36 O -15.207890588 7.729986305 3.382560374 CORE 37 O O 0.0000 37 O -5.567637592 14.967984525 7.399463143 CORE 38 O O 0.0000 38 O -15.183004099 16.034085652 3.610169828 CORE 39 O O 0.0000 39 O -5.544699038 9.063130022 7.333418426 CORE 40 O O 0.0000 40 O -10.529464487 4.322253891 7.346253627 CORE 41 O O 0.0000 41 O -0.669169566 11.999098378 3.507915291 CORE 42 O O 0.0000 42 O -10.419438905 12.077290276 3.544965708 CORE 43 O O 0.0000 43 O -0.718267829 4.685882742 7.305217027 CORE 44 O O 0.0000 44 O -13.120097431 6.143534361 3.618556176 CORE 45 O O 0.0000 45 O -3.544782897 13.281509992 7.242900988 CORE 46 O O 0.0000 46 O -7.528007699 10.828782278 7.382278516 CORE 47 O O 0.0000 47 O 2.181541881 17.939588572 3.562136490 CORE 48 O O 0.0000 48 O -3.383633562 10.635633397 7.419763610 CORE 49 O O 0.0000 49 O -13.396707589 17.939694520 3.269198691 CORE 50 O O 0.0000 50 O 1.925222996 6.142358118 3.476290948 CORE 51 O O 0.0000 51 O -7.771742181 13.452586733 7.281203173 CORE 52 O O 0.0000 52 O -11.547041049 4.433528484 4.903662058 CORE 53 O O 0.0000 53 O -1.594512913 12.195856998 8.657090692 CORE 54 O O 0.0000 54 O 0.135504226 4.725259634 4.809850542 CORE 55 O O 0.0000 55 O -9.472828586 11.989719427 8.711714313 CORE 56 O O 0.0000 56 O -1.587530409 11.968154831 5.993858868 CORE 57 O O 0.0000 57 O -11.304718348 4.833543601 9.846750267 CORE 58 O O 0.0000 58 O -9.590374942 11.971826409 6.057331052 CORE 59 O O 0.0000 59 O 0.194958372 4.616510647 9.764165482 CORE 60 O O 0.0000 60 O -10.579762456 8.482867939 5.550726763 CORE 61 O O 0.0000 61 O -0.710934112 15.598254517 9.194169569 CORE 62 O O 0.0000 62 O -10.510039989 8.392031430 8.675678926 CORE 63 O O 0.0000 63 O -0.807786214 15.554904201 5.516781307 CORE 64 O O 0.0000 64 O -0.718426982 8.404718853 5.394494228 CORE 65 O O 0.0000 65 O -10.408508764 15.650056339 9.188478001 CORE 66 O O 0.0000 66 O -10.239108324 15.434099014 5.504400789 CORE 67 O O 0.0000 67 O -0.771439012 8.428327316 9.219484637 CORE 68 O O 0.0000 68 O -12.579786559 9.141216404 7.292849975 CORE 69 O O 0.0000 69 O -2.486834903 16.055928598 3.506951228 CORE 70 O O 0.0000 70 O -9.162298158 7.794740492 3.221713073 CORE 71 O O 0.0000 71 O 1.100996153 15.104735011 7.311678521 CORE 72 O O 0.0000 72 O -2.510333089 7.814668728 3.540106294 CORE 73 O O 0.0000 73 O -12.198185004 15.174355327 7.284603143 CORE 74 O O 0.0000 74 O 1.043676613 8.863008155 7.317534937 CORE 75 O O 0.0000 75 O -8.563291375 15.911725114 3.474240803 CORE 76 O O 0.0000 76 O -13.168845251 8.517461731 4.817019964 CORE 77 O O 0.0000 77 O -3.319625767 15.544403063 8.643220909 CORE 78 O O 0.0000 78 O 1.763175325 15.657217294 4.825900781 CORE 79 O O 0.0000 79 O -7.862068261 8.409487393 8.528007934 CORE 80 O O 0.0000 80 O -3.335331831 8.379451542 6.020131457 CORE 81 O O 0.0000 81 O -13.034609242 15.560201619 9.740584631 CORE 82 O O 0.0000 82 O -7.608609117 15.721772559 5.905978472 CORE 83 O O 0.0000 83 O 1.829309066 8.470941038 9.802086622 CORE 84 O O 0.0000 84 O -7.740488822 8.623211875 5.884329930 CORE 85 O O 0.0000 85 O 1.895081010 15.699317419 9.751567018 CORE 86 O O 0.0000 86 O -3.425670419 15.611367030 5.960119035 CORE 87 O O 0.0000 87 O -12.943581699 8.342276934 9.769271370 CORE 88 O O 0.0000 88 O 1.918478932 8.390109657 4.876453325 CORE 89 O O 0.0000 89 O -7.791612576 15.777921723 8.571493145 CORE 90 O O 0.0000 90 O -12.799237292 15.810134633 4.778567536 CORE 91 O O 0.0000 91 O -3.384369859 8.301036792 8.685151966 CORE 92 O O 0.0000 92 O -9.414277779 5.964133396 5.541450751 CORE 93 O O 0.0000 93 O 0.729910596 13.354503934 9.294227522 CORE 94 O O 0.0000 94 O -2.139387055 17.877041858 5.398334275 CORE 95 O O 0.0000 95 O -11.736548399 10.678475305 9.315257141 CORE 96 O O 0.0000 96 O 0.670512451 10.672642956 5.389903197 CORE 97 O O 0.0000 97 O -9.060024285 17.944227812 9.436607239 CORE 98 O O 0.0000 98 O -11.837905461 13.372544991 5.381928779 CORE 99 O O 0.0000 99 O -2.000953807 6.076075103 9.197053161 CORE 100 O O 0.0000 100 O -11.890235079 10.793980336 5.365973783 CORE 101 O O 0.0000 101 O -2.135076658 17.857254598 9.187246241 CORE 102 O O 0.0000 102 O 0.646958263 13.317879825 5.398252270 CORE 103 O O 0.0000 103 O -9.155023714 6.097792929 8.794428725 CORE 104 O O 0.0000 104 O -2.067987232 6.102761546 5.509636152 CORE 105 O O 0.0000 105 O -11.721003798 13.329691408 9.183415246 CORE 106 O O 0.0000 106 O -9.117774519 17.808041664 5.246593955 CORE 107 O O 0.0000 107 O 0.588451334 10.718336388 9.150152614 CORE 108 O O 0.0000 108 O2 12.340586865 6.461678795 4.419445047 CORE 109 O2 O2 0.0000 109 O2 13.069521570 7.970754138 3.127766225 CORE 110 O2 O2 0.0000 110 H 12.207881569 5.804629962 3.674112747 CORE 111 H H 0.0000 111 H 12.904742133 8.747095186 3.718801039 CORE 112 H H 0.0000 112 C 13.337157219 5.976811737 5.403471201 CORE 113 C C 0.0000 113 C 12.826037845 4.645601180 5.763226230 CORE 114 C C 0.0000 114 H 13.025743658 3.822610426 5.064916192 CORE 115 H H 0.0000 115 H 12.117963859 4.496302230 6.574985129 CORE 116 H H 0.0000 116 H 14.341845314 6.024004158 4.929561208 CORE 117 H H 0.0000 117 H 13.256357968 6.710553622 6.238020790 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.334555427 4.735278744 3.501859489 CORE 1 Si Si 0.0000 1 Si -2.529226244 12.013434127 7.328019280 CORE 2 Si Si 0.0000 2 Si 1.116771497 4.750980289 3.501869074 CORE 3 Si Si 0.0000 3 Si -8.589723202 12.053356184 7.343461322 CORE 4 Si Si 0.0000 4 Si -13.599958058 7.686508130 11.103696437 CORE 5 Si Si 0.0000 5 Si -3.959639438 14.853099905 7.309633854 CORE 6 Si Si 0.0000 6 Si -7.166350823 9.231970460 7.294349890 CORE 7 Si Si 0.0000 7 Si 2.477967201 16.333729775 3.530784639 CORE 8 Si Si 0.0000 8 Si -13.598689841 16.330205082 3.447726229 CORE 9 Si Si 0.0000 9 Si -3.922708163 9.099594848 7.369359407 CORE 10 Si Si 0.0000 10 Si -7.181534204 14.963532677 7.293365744 CORE 11 Si Si 0.0000 11 Si 2.435047019 7.687034124 3.490119652 CORE 12 Si Si 0.0000 12 Si -10.162270180 4.542542845 5.763330144 CORE 13 Si Si 0.0000 13 Si -0.231888685 12.063142496 9.549095080 CORE 14 Si Si 0.0000 14 Si -10.847477201 12.013483137 9.588464178 CORE 15 Si Si 0.0000 15 Si -1.189623322 4.749034587 5.749109822 CORE 16 Si Si 0.0000 16 Si -10.031673125 4.718866408 8.847775475 CORE 17 Si Si 0.0000 17 Si -0.236295112 11.988180221 5.077070167 CORE 18 Si Si 0.0000 18 Si -10.914680940 12.052974770 5.098525866 CORE 19 Si Si 0.0000 19 Si -1.161355949 4.718167293 8.871110005 CORE 20 Si Si 0.0000 20 Ti -9.042266559 7.664357286 5.016502646 CORE 21 Ti Ti 0.0000 21 Si 0.756357627 14.938419748 8.888465110 CORE 22 Si Si 0.0000 22 Si -2.211345740 16.270390105 5.096254123 CORE 23 Si Si 0.0000 23 Si -11.945252392 9.142754745 8.782947761 CORE 24 Si Si 0.0000 24 Si 0.731760961 9.077596512 5.738575348 CORE 25 Si Si 0.0000 25 Si -8.966975293 16.315998346 9.553757391 CORE 26 Si Si 0.0000 26 Si -11.789936853 14.963244814 5.726157859 CORE 27 Si Si 0.0000 27 Si -2.175186750 7.662560921 9.565550175 CORE 28 Si Si 0.0000 28 Si -12.034002534 9.216006999 5.754516043 CORE 29 Si Si 0.0000 29 Si -2.160771226 16.257296187 9.531173466 CORE 30 Si Si 0.0000 30 Si 0.678905774 14.908324219 5.758451712 CORE 31 Si Si 0.0000 31 Si -9.139178319 7.686833039 9.206402734 CORE 32 Si Si 0.0000 32 Si -2.161327972 7.692094563 5.121761349 CORE 33 Si Si 0.0000 33 Si -11.839689624 14.921856634 8.849004725 CORE 34 Si Si 0.0000 34 Si -8.889547496 16.207041499 5.036409059 CORE 35 Si Si 0.0000 35 Si 0.674482412 9.111991958 8.879074761 CORE 36 Si Si 0.0000 36 O -15.206732642 7.728041756 3.384228560 CORE 37 O O 0.0000 37 O -5.568036147 14.969116371 7.399015534 CORE 38 O O 0.0000 38 O -15.181321739 16.035034863 3.609698409 CORE 39 O O 0.0000 39 O -5.543137919 9.064572650 7.333755350 CORE 40 O O 0.0000 40 O -10.528180682 4.322418507 7.341649055 CORE 41 O O 0.0000 41 O -0.667124446 12.000104960 3.507353041 CORE 42 O O 0.0000 42 O -10.419691971 12.078005391 3.545533587 CORE 43 O O 0.0000 43 O -0.718446034 4.684929495 7.305030955 CORE 44 O O 0.0000 44 O -13.115127138 6.143125127 3.621133197 CORE 45 O O 0.0000 45 O -3.543821054 13.279235634 7.242613207 CORE 46 O O 0.0000 46 O -7.527730578 10.826595273 7.384910613 CORE 47 O O 0.0000 47 O 2.182433289 17.939847749 3.562141283 CORE 48 O O 0.0000 48 O -3.380220539 10.636469740 7.418716857 CORE 49 O O 0.0000 49 O -13.395779424 17.940677029 3.264677418 CORE 50 O O 0.0000 50 O 1.924744191 6.144749812 3.476073915 CORE 51 O O 0.0000 51 O -7.768567021 13.450687014 7.283492413 CORE 52 O O 0.0000 52 O -11.540884137 4.429160817 4.898395429 CORE 53 O O 0.0000 53 O -1.591966088 12.195259075 8.655353432 CORE 54 O O 0.0000 54 O 0.136661593 4.724714901 4.809621413 CORE 55 O O 0.0000 55 O -9.473924372 11.988563797 8.711345744 CORE 56 O O 0.0000 56 O -1.586270852 11.969500014 5.993704442 CORE 57 O O 0.0000 57 O -11.308336133 4.833171268 9.842255391 CORE 58 O O 0.0000 58 O -9.588135260 11.973800940 6.053021412 CORE 59 O O 0.0000 59 O 0.195965440 4.615328494 9.764427931 CORE 60 O O 0.0000 60 O -10.580200847 8.487882250 5.550473518 CORE 61 O O 0.0000 61 O -0.708529504 15.597376082 9.194708997 CORE 62 O O 0.0000 62 O -10.507920971 8.391090436 8.678948128 CORE 63 O O 0.0000 63 O -0.805879078 15.553781581 5.515710439 CORE 64 O O 0.0000 64 O -0.718839393 8.405004265 5.394881131 CORE 65 O O 0.0000 65 O -10.408585935 15.647610158 9.188299003 CORE 66 O O 0.0000 66 O -10.240706007 15.434076094 5.502905058 CORE 67 O O 0.0000 67 O -0.768843498 8.427770618 9.223888151 CORE 68 O O 0.0000 68 O -12.578637081 9.141839842 7.291210011 CORE 69 O O 0.0000 69 O -2.487702062 16.055983374 3.506486199 CORE 70 O O 0.0000 70 O -9.163537700 7.794375223 3.220133359 CORE 71 O O 0.0000 71 O 1.099849947 15.106036374 7.311617131 CORE 72 O O 0.0000 72 O -2.510426040 7.814259349 3.539871003 CORE 73 O O 0.0000 73 O -12.196190305 15.174521817 7.283315089 CORE 74 O O 0.0000 74 O 1.043290952 8.863033092 7.317047391 CORE 75 O O 0.0000 75 O -8.561467568 15.911756683 3.472131626 CORE 76 O O 0.0000 76 O -13.165702999 8.519524048 4.817783805 CORE 77 O O 0.0000 77 O -3.318420288 15.543263866 8.644020428 CORE 78 O O 0.0000 78 O 1.765063216 15.656284805 4.826039233 CORE 79 O O 0.0000 79 O -7.861378535 8.408339115 8.525888944 CORE 80 O O 0.0000 80 O -3.334632483 8.378033852 6.018889275 CORE 81 O O 0.0000 81 O -13.034172391 15.557433700 9.739313313 CORE 82 O O 0.0000 82 O -7.606132342 15.716961783 5.905121290 CORE 83 O O 0.0000 83 O 1.834118282 8.469693730 9.802463256 CORE 84 O O 0.0000 84 O -7.736408013 8.624680016 5.885458688 CORE 85 O O 0.0000 85 O 1.895956445 15.699352303 9.751526852 CORE 86 O O 0.0000 86 O -3.424615240 15.611866933 5.959413618 CORE 87 O O 0.0000 87 O -12.939371181 8.338111650 9.770789999 CORE 88 O O 0.0000 88 O 1.919405365 8.389660782 4.873239428 CORE 89 O O 0.0000 89 O -7.791897588 15.779231013 8.568746103 CORE 90 O O 0.0000 90 O -12.798169603 15.812101236 4.777519794 CORE 91 O O 0.0000 91 O -3.381597487 8.301685888 8.685638371 CORE 92 O O 0.0000 92 O -9.415657422 5.963508949 5.545383986 CORE 93 O O 0.0000 93 O 0.732424898 13.354938827 9.293904063 CORE 94 O O 0.0000 94 O -2.138902862 17.877172023 5.398439255 CORE 95 O O 0.0000 95 O -11.738364316 10.677260142 9.314442104 CORE 96 O O 0.0000 96 O 0.671539341 10.673101345 5.389793653 CORE 97 O O 0.0000 97 O -9.063236587 17.945438939 9.436520592 CORE 98 O O 0.0000 98 O -11.835321878 13.373746604 5.380952393 CORE 99 O O 0.0000 99 O -1.999848015 6.076702433 9.196804024 CORE 100 O O 0.0000 100 O -11.891028339 10.793684690 5.367809861 CORE 101 O O 0.0000 101 O -2.134452365 17.856568313 9.186822443 CORE 102 O O 0.0000 102 O 0.649529914 13.318581967 5.398114579 CORE 103 O O 0.0000 103 O -9.153793986 6.097151328 8.791536309 CORE 104 O O 0.0000 104 O -2.066752886 6.103112833 5.509383288 CORE 105 O O 0.0000 105 O -11.721304783 13.329129665 9.182053554 CORE 106 O O 0.0000 106 O -9.116563266 17.806120035 5.246963970 CORE 107 O O 0.0000 107 O 0.590312090 10.718340712 9.149956956 CORE 108 O O 0.0000 108 O2 12.333271815 6.470574996 4.408801713 CORE 109 O2 O2 0.0000 109 O2 13.070461667 7.970456906 3.135423954 CORE 110 O2 O2 0.0000 110 H 12.184042176 5.793703877 3.691934631 CORE 111 H H 0.0000 111 H 12.887229005 8.752887894 3.715514189 CORE 112 H H 0.0000 112 C 13.325168820 5.978892505 5.408751903 CORE 113 C C 0.0000 113 C 12.817812527 4.656256845 5.754878070 CORE 114 C C 0.0000 114 H 13.006626496 3.827811553 5.053910527 CORE 115 H H 0.0000 115 H 12.101520921 4.501337876 6.568055107 CORE 116 H H 0.0000 116 H 14.331402445 6.028569450 4.934052205 CORE 117 H H 0.0000 117 H 13.243759323 6.710358735 6.238877971 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.339556896 4.738020283 3.504093425 CORE 1 Si Si 0.0000 1 Si -2.532076364 12.013714782 7.329030507 CORE 2 Si Si 0.0000 2 Si 1.115597002 4.748613821 3.501934725 CORE 3 Si Si 0.0000 3 Si -8.590183724 12.055954153 7.343817264 CORE 4 Si Si 0.0000 4 Si -13.603441708 7.687785709 11.101962296 CORE 5 Si Si 0.0000 5 Si -3.960300489 14.854356149 7.310844770 CORE 6 Si Si 0.0000 6 Si -7.165166320 9.232238863 7.287944461 CORE 7 Si Si 0.0000 7 Si 2.476069110 16.333705414 3.531225781 CORE 8 Si Si 0.0000 8 Si -13.600751511 16.328365905 3.452251610 CORE 9 Si Si 0.0000 9 Si -3.925787678 9.099154766 7.369620259 CORE 10 Si Si 0.0000 10 Si -7.184087188 14.967293050 7.291997738 CORE 11 Si Si 0.0000 11 Si 2.430086156 7.688207052 3.490398989 CORE 12 Si Si 0.0000 12 Si -10.165164370 4.545710485 5.765126513 CORE 13 Si Si 0.0000 13 Si -0.236260472 12.062492391 9.549810006 CORE 14 Si Si 0.0000 14 Si -10.845552167 12.017047614 9.588425685 CORE 15 Si Si 0.0000 15 Si -1.191154420 4.747958671 5.748478042 CORE 16 Si Si 0.0000 16 Si -10.026976298 4.712550301 8.854755021 CORE 17 Si Si 0.0000 17 Si -0.239464114 11.986986392 5.076970892 CORE 18 Si Si 0.0000 18 Si -10.915327942 12.053456511 5.097610565 CORE 19 Si Si 0.0000 19 Si -1.162562968 4.717384717 8.871727407 CORE 20 Si Si 0.0000 20 Ti -9.041271423 7.665528484 5.007530542 CORE 21 Ti Ti 0.0000 21 Si 0.752999066 14.938397837 8.889128231 CORE 22 Si Si 0.0000 22 Si -2.213931055 16.269709297 5.096522125 CORE 23 Si Si 0.0000 23 Si -11.949552397 9.146778476 8.783454630 CORE 24 Si Si 0.0000 24 Si 0.731568900 9.079651622 5.741414513 CORE 25 Si Si 0.0000 25 Si -8.965330268 16.312657730 9.556590851 CORE 26 Si Si 0.0000 26 Si -11.790092349 14.958998520 5.729301617 CORE 27 Si Si 0.0000 27 Si -2.177267472 7.662882946 9.563713261 CORE 28 Si Si 0.0000 28 Si -12.032827268 9.210144668 5.752989654 CORE 29 Si Si 0.0000 29 Si -2.163449492 16.258227091 9.532592212 CORE 30 Si Si 0.0000 30 Si 0.676228663 14.908286020 5.758212541 CORE 31 Si Si 0.0000 31 Si -9.140008722 7.685687355 9.204070362 CORE 32 Si Si 0.0000 32 Si -2.162501890 7.693137614 5.122986872 CORE 33 Si Si 0.0000 33 Si -11.840772516 14.924206380 8.851359692 CORE 34 Si Si 0.0000 34 Si -8.890856127 16.212966390 5.036357178 CORE 35 Si Si 0.0000 35 Si 0.670598282 9.114796202 8.876140125 CORE 36 Si Si 0.0000 36 O -15.211962352 7.730873388 3.380973737 CORE 37 O O 0.0000 37 O -5.570062792 14.967408512 7.399096475 CORE 38 O O 0.0000 38 O -15.181730301 16.035331663 3.610536496 CORE 39 O O 0.0000 39 O -5.545455541 9.063090670 7.333362817 CORE 40 O O 0.0000 40 O -10.529184478 4.321598164 7.350133916 CORE 41 O O 0.0000 41 O -0.671019353 11.997520829 3.507840816 CORE 42 O O 0.0000 42 O -10.418741098 12.077257122 3.548776848 CORE 43 O O 0.0000 43 O -0.718886157 4.686387258 7.304391949 CORE 44 O O 0.0000 44 O -13.122607499 6.141131280 3.617594548 CORE 45 O O 0.0000 45 O -3.544665120 13.281471072 7.243226120 CORE 46 O O 0.0000 46 O -7.527621269 10.826638229 7.379448023 CORE 47 O O 0.0000 47 O 2.180600245 17.938980270 3.561704553 CORE 48 O O 0.0000 48 O -3.385337668 10.636939373 7.420468647 CORE 49 O O 0.0000 49 O -13.396056545 17.937954661 3.270256779 CORE 50 O O 0.0000 50 O 1.926223713 6.142398480 3.476219669 CORE 51 O O 0.0000 51 O -7.770769369 13.454297907 7.281897712 CORE 52 O O 0.0000 52 O -11.548988021 4.436311826 4.903660993 CORE 53 O O 0.0000 53 O -1.595622747 12.195627516 8.658336602 CORE 54 O O 0.0000 54 O 0.136721829 4.726122933 4.809277186 CORE 55 O O 0.0000 55 O -9.473796973 11.989688436 8.710640250 CORE 56 O O 0.0000 56 O -1.587967260 11.967441157 5.993830950 CORE 57 O O 0.0000 57 O -11.304590564 4.835849671 9.848188640 CORE 58 O O 0.0000 58 O -9.594623756 11.971805940 6.054727482 CORE 59 O O 0.0000 59 O 0.196292983 4.617590888 9.765418239 CORE 60 O O 0.0000 60 O -10.584177928 8.484946400 5.552209866 CORE 61 O O 0.0000 61 O -0.710721845 15.598106910 9.193859727 CORE 62 O O 0.0000 62 O -10.508735593 8.393602205 8.671457073 CORE 63 O O 0.0000 63 O -0.806846887 15.555037970 5.517192553 CORE 64 O O 0.0000 64 O -0.717584070 8.404780836 5.393765533 CORE 65 O O 0.0000 65 O -10.411178370 15.650500025 9.188531404 CORE 66 O O 0.0000 66 O -10.240437546 15.434257288 5.506657622 CORE 67 O O 0.0000 67 O -0.773205470 8.429158181 9.215414928 CORE 68 O O 0.0000 68 O -12.580264979 9.140596714 7.288750369 CORE 69 O O 0.0000 69 O -2.486784674 16.054837114 3.507192833 CORE 70 O O 0.0000 70 O -9.158391704 7.795888915 3.221917555 CORE 71 O O 0.0000 71 O 1.101368728 15.104087357 7.311689400 CORE 72 O O 0.0000 72 O -2.510355220 7.815482151 3.540009454 CORE 73 O O 0.0000 73 O -12.198643025 15.173810306 7.287225274 CORE 74 O O 0.0000 74 O 1.043529970 8.863140626 7.317178920 CORE 75 O O 0.0000 75 O -8.565637479 15.914794157 3.474161384 CORE 76 O O 0.0000 76 O -13.168189396 8.517610203 4.819436016 CORE 77 O O 0.0000 77 O -3.319925982 15.545394076 8.643149249 CORE 78 O O 0.0000 78 O 1.763154156 15.658727382 4.824979547 CORE 79 O O 0.0000 79 O -7.860038537 8.412564940 8.523837658 CORE 80 O O 0.0000 80 O -3.334015503 8.379206779 6.017695550 CORE 81 O O 0.0000 81 O -13.035309552 15.562947339 9.741893301 CORE 82 O O 0.0000 82 O -7.608898170 15.722529477 5.906017116 CORE 83 O O 0.0000 83 O 1.827399813 8.470306789 9.803078832 CORE 84 O O 0.0000 84 O -7.741191248 8.624528662 5.888054347 CORE 85 O O 0.0000 85 O 1.895859645 15.699432449 9.753019464 CORE 86 O O 0.0000 86 O -3.426246409 15.611629955 5.960836319 CORE 87 O O 0.0000 87 O -12.947360368 8.345676218 9.770638311 CORE 88 O O 0.0000 88 O 1.918744892 8.389539842 4.876564162 CORE 89 O O 0.0000 89 O -7.792872325 15.776343741 8.571494743 CORE 90 O O 0.0000 90 O -12.800667932 15.807132186 4.777483888 CORE 91 O O 0.0000 91 O -3.384170678 8.299228895 8.686057453 CORE 92 O O 0.0000 92 O -9.417696383 5.964060601 5.542743825 CORE 93 O O 0.0000 93 O 0.728159726 13.353763881 9.294688215 CORE 94 O O 0.0000 94 O -2.138752369 17.878262354 5.398223590 CORE 95 O O 0.0000 95 O -11.735916216 10.677741450 9.315776182 CORE 96 O O 0.0000 96 O 0.670105814 10.671888921 5.390332624 CORE 97 O O 0.0000 97 O -9.055943091 17.944411888 9.434013862 CORE 98 O O 0.0000 98 O -11.838351742 13.369390469 5.382089139 CORE 99 O O 0.0000 99 O -2.001258256 6.076923843 9.198025743 CORE 100 O O 0.0000 100 O -11.891477123 10.789567263 5.365854502 CORE 101 O O 0.0000 101 O -2.134724290 17.858353722 9.188565636 CORE 102 O O 0.0000 102 O 0.645327864 13.317539349 5.398390188 CORE 103 O O 0.0000 103 O -9.155908963 6.093123994 8.796274540 CORE 104 O O 0.0000 104 O -2.068955041 6.103530428 5.509204823 CORE 105 O O 0.0000 105 O -11.723231741 13.333232677 9.182467691 CORE 106 O O 0.0000 106 O -9.119395873 17.810668750 5.250327957 CORE 107 O O 0.0000 107 O 0.587836855 10.718090761 9.150245041 CORE 108 O O 0.0000 108 O2 12.339074050 6.456715223 4.418334697 CORE 109 O2 O2 0.0000 109 O2 13.069069708 7.966469356 3.123327034 CORE 110 O2 O2 0.0000 110 H 12.226959087 5.816330840 3.671960057 CORE 111 H H 0.0000 111 H 12.913110823 8.738869559 3.722630436 CORE 112 H H 0.0000 112 C 13.347770595 5.972111667 5.411151295 CORE 113 C C 0.0000 113 C 12.833852868 4.649105260 5.752607772 CORE 114 C C 0.0000 114 H 13.035866489 3.812459710 5.069336670 CORE 115 H H 0.0000 115 H 12.120589587 4.494449359 6.585240875 CORE 116 H H 0.0000 116 H 14.345057231 6.022630433 4.924473273 CORE 117 H H 0.0000 117 H 13.264882538 6.711970591 6.236485501 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.347559362 4.742406833 3.507667752 CORE 1 Si Si 0.0000 1 Si -2.536636362 12.014163945 7.330648562 CORE 2 Si Si 0.0000 2 Si 1.113717770 4.744827356 3.502039704 CORE 3 Si Si 0.0000 3 Si -8.590920598 12.060110788 7.344386816 CORE 4 Si Si 0.0000 4 Si -13.609015318 7.689829719 11.099187564 CORE 5 Si Si 0.0000 5 Si -3.961358170 14.856366285 7.312782329 CORE 6 Si Si 0.0000 6 Si -7.163270923 9.232668422 7.277695714 CORE 7 Si Si 0.0000 7 Si 2.473032318 16.333666638 3.531931579 CORE 8 Si Si 0.0000 8 Si -13.604050029 16.325423280 3.459492235 CORE 9 Si Si 0.0000 9 Si -3.930714671 9.098450462 7.370037515 CORE 10 Si Si 0.0000 10 Si -7.188171653 14.973309619 7.289808837 CORE 11 Si Si 0.0000 11 Si 2.422148737 7.690083851 3.490845989 CORE 12 Si Si 0.0000 12 Si -10.169795381 4.550778419 5.768000595 CORE 13 Si Si 0.0000 13 Si -0.243255485 12.061452368 9.550953828 CORE 14 Si Si 0.0000 14 Si -10.842471883 12.022750806 9.588363991 CORE 15 Si Si 0.0000 15 Si -1.193604252 4.746237406 5.747467195 CORE 16 Si Si 0.0000 16 Si -10.019461104 4.702444414 8.865922187 CORE 17 Si Si 0.0000 17 Si -0.244534286 11.985076295 5.076812054 CORE 18 Si Si 0.0000 18 Si -10.916363299 12.054227267 5.096146176 CORE 19 Si Si 0.0000 19 Si -1.164494159 4.716132652 8.872715280 CORE 20 Si Si 0.0000 20 Ti -9.039679128 7.667402544 4.993175191 CORE 21 Ti Ti 0.0000 21 Si 0.747625600 14.938362809 8.890189133 CORE 22 Si Si 0.0000 22 Si -2.218067480 16.268620119 5.096950944 CORE 23 Si Si 0.0000 23 Si -11.956432712 9.153216532 8.784265559 CORE 24 Si Si 0.0000 24 Si 0.731261949 9.082939768 5.745957087 CORE 25 Si Si 0.0000 25 Si -8.962698190 16.307312888 9.561124372 CORE 26 Si Si 0.0000 26 Si -11.790340989 14.952204276 5.734331661 CORE 27 Si Si 0.0000 27 Si -2.180596396 7.663397985 9.560774212 CORE 28 Si Si 0.0000 28 Si -12.030946882 9.200765141 5.750547433 CORE 29 Si Si 0.0000 29 Si -2.167734871 16.259716710 9.534862205 CORE 30 Si Si 0.0000 30 Si 0.671945016 14.908224901 5.757830051 CORE 31 Si Si 0.0000 31 Si -9.141337367 7.683854521 9.200338565 CORE 32 Si Si 0.0000 32 Si -2.164379966 7.694806408 5.124947784 CORE 33 Si Si 0.0000 33 Si -11.842505103 14.927966033 8.855127546 CORE 34 Si Si 0.0000 34 Si -8.892949742 16.222446244 5.036274107 CORE 35 Si Si 0.0000 35 Si 0.664383636 9.119282934 8.871444722 CORE 36 Si Si 0.0000 36 O -15.220329887 7.735403797 3.375766064 CORE 37 O O 0.0000 37 O -5.573305500 14.964676054 7.399225950 CORE 38 O O 0.0000 38 O -15.182384039 16.035806772 3.611877344 CORE 39 O O 0.0000 39 O -5.549163776 9.060719733 7.332734689 CORE 40 O O 0.0000 40 O -10.530790630 4.320285702 7.363709680 CORE 41 O O 0.0000 41 O -0.677251127 11.993385961 3.508621240 CORE 42 O O 0.0000 42 O -10.417219238 12.076059834 3.553966111 CORE 43 O O 0.0000 43 O -0.719590316 4.688719707 7.303369615 CORE 44 O O 0.0000 44 O -13.134576269 6.137941298 3.611932724 CORE 45 O O 0.0000 45 O -3.546015704 13.285047946 7.244206843 CORE 46 O O 0.0000 46 O -7.527446528 10.826706843 7.370707939 CORE 47 O O 0.0000 47 O 2.177667374 17.937592419 3.561005906 CORE 48 O O 0.0000 48 O -3.393525266 10.637690669 7.423271450 CORE 49 O O 0.0000 49 O -13.396500133 17.933599103 3.279183848 CORE 50 O O 0.0000 50 O 1.928590794 6.138636376 3.476452906 CORE 51 O O 0.0000 51 O -7.774293048 13.460075335 7.279346252 CORE 52 O O 0.0000 52 O -11.561954429 4.447753671 4.912085909 CORE 53 O O 0.0000 53 O -1.601473286 12.196216935 8.663109598 CORE 54 O O 0.0000 54 O 0.136818437 4.728375668 4.808726424 CORE 55 O O 0.0000 55 O -9.473592980 11.991487683 8.709511492 CORE 56 O O 0.0000 56 O -1.590681513 11.964146812 5.994033378 CORE 57 O O 0.0000 57 O -11.298597615 4.840135173 9.857681990 CORE 58 O O 0.0000 58 O -9.605005235 11.968613796 6.057457332 CORE 59 O O 0.0000 59 O 0.196817204 4.621210862 9.767002670 CORE 60 O O 0.0000 60 O -10.590541143 8.480248924 5.554988097 CORE 61 O O 0.0000 61 O -0.714229551 15.599276090 9.192501002 CORE 62 O O 0.0000 62 O -10.510039219 8.397620890 8.659471370 CORE 63 O O 0.0000 63 O -0.808395305 15.557048250 5.519563874 CORE 64 O O 0.0000 64 O -0.715575515 8.404423351 5.391980652 CORE 65 O O 0.0000 65 O -10.415326150 15.655123985 9.188903321 CORE 66 O O 0.0000 66 O -10.240008392 15.434547024 5.512661846 CORE 67 O O 0.0000 67 O -0.780184510 8.431378484 9.201857651 CORE 68 O O 0.0000 68 O -12.582869345 9.138607768 7.284814928 CORE 69 O O 0.0000 69 O -2.485317084 16.053003126 3.508323570 CORE 70 O O 0.0000 70 O -9.150158304 7.798311024 3.224772240 CORE 71 O O 0.0000 71 O 1.103799123 15.100968728 7.311805029 CORE 72 O O 0.0000 72 O -2.510241870 7.817438664 3.540231053 CORE 73 O O 0.0000 73 O -12.202567568 15.172671974 7.293481678 CORE 74 O O 0.0000 74 O 1.043911974 8.863312882 7.317389335 CORE 75 O O 0.0000 75 O -8.572309376 15.919654087 3.477408905 CORE 76 O O 0.0000 76 O -13.172167632 8.514547936 4.822079600 CORE 77 O O 0.0000 77 O -3.322334824 15.548802441 8.641755455 CORE 78 O O 0.0000 78 O 1.760099851 15.662635651 4.823284051 CORE 79 O O 0.0000 79 O -7.857894500 8.419326463 8.520555676 CORE 80 O O 0.0000 80 O -3.333028642 8.381083579 6.015785682 CORE 81 O O 0.0000 81 O -13.037129125 15.571769016 9.746021205 CORE 82 O O 0.0000 82 O -7.613323650 15.731437931 5.907450468 CORE 83 O O 0.0000 83 O 1.816650379 8.471287856 9.804063890 CORE 84 O O 0.0000 84 O -7.748844618 8.624286494 5.892207431 CORE 85 O O 0.0000 85 O 1.895704918 15.699560596 9.755407674 CORE 86 O O 0.0000 86 O -3.428856356 15.611250847 5.963112703 CORE 87 O O 0.0000 87 O -12.960143183 8.357779411 9.770395565 CORE 88 O O 0.0000 88 O 1.917688173 8.389346541 4.881883812 CORE 89 O O 0.0000 89 O -7.794431711 15.771723961 8.575892551 CORE 90 O O 0.0000 90 O -12.804665220 15.799181880 4.777426301 CORE 91 O O 0.0000 91 O -3.388287474 8.295297851 8.686727953 CORE 92 O O 0.0000 92 O -9.420958721 5.964943072 5.538519614 CORE 93 O O 0.0000 93 O 0.721335412 13.351883911 9.295942874 CORE 94 O O 0.0000 94 O -2.138511620 17.880006826 5.397878527 CORE 95 O O 0.0000 95 O -11.731999178 10.678511342 9.317910691 CORE 96 O O 0.0000 96 O 0.667811862 10.669948985 5.391194978 CORE 97 O O 0.0000 97 O -9.044273189 17.942768752 9.430003109 CORE 98 O O 0.0000 98 O -11.843199255 13.362420654 5.383907949 CORE 99 O O 0.0000 99 O -2.003514681 6.077278302 9.199980418 CORE 100 O O 0.0000 100 O -11.892195137 10.782979438 5.362725881 CORE 101 O O 0.0000 101 O -2.135159410 17.861210436 9.191354746 CORE 102 O O 0.0000 102 O 0.638604392 13.315870986 5.398831179 CORE 103 O O 0.0000 103 O -9.159292542 6.086680172 8.803855740 CORE 104 O O 0.0000 104 O -2.072478913 6.104198839 5.508919324 CORE 105 O O 0.0000 105 O -11.726315104 13.339797438 9.183130432 CORE 106 O O 0.0000 106 O -9.123928159 17.817946753 5.255710367 CORE 107 O O 0.0000 107 O 0.583876324 10.717690752 9.150706039 CORE 108 O O 0.0000 108 O2 12.348357627 6.434539441 4.433587396 CORE 109 O2 O2 0.0000 109 O2 13.066842727 7.960089392 3.103971992 CORE 110 O2 O2 0.0000 110 H 12.295625990 5.852534039 3.640000769 CORE 111 H H 0.0000 111 H 12.954521654 8.716440366 3.734016462 CORE 112 H H 0.0000 112 C 13.383933627 5.961262124 5.414990429 CORE 113 C C 0.0000 113 C 12.859517030 4.637662550 5.748975250 CORE 114 C C 0.0000 114 H 13.082650594 3.787896703 5.094018438 CORE 115 H H 0.0000 115 H 12.151099529 4.483427704 6.612738150 CORE 116 H H 0.0000 116 H 14.366905004 6.013128091 4.909146937 CORE 117 H H 0.0000 117 H 13.298679644 6.714549533 6.232657626 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.341962467 4.739338944 3.505167944 CORE 1 Si Si 0.0000 1 Si -2.533447154 12.013849848 7.329516913 CORE 2 Si Si 0.0000 2 Si 1.115031981 4.747475488 3.501966295 CORE 3 Si Si 0.0000 3 Si -8.590405229 12.057203767 7.343988502 CORE 4 Si Si 0.0000 4 Si -13.605117140 7.688400209 11.101128165 CORE 5 Si Si 0.0000 5 Si -3.960618409 14.854960559 7.311427255 CORE 6 Si Si 0.0000 6 Si -7.164596489 9.232368019 7.284863538 CORE 7 Si Si 0.0000 7 Si 2.475156341 16.333693738 3.531437947 CORE 8 Si Si 0.0000 8 Si -13.601743183 16.327481273 3.454428263 CORE 9 Si Si 0.0000 9 Si -3.927268739 9.098943014 7.369745702 CORE 10 Si Si 0.0000 10 Si -7.185314991 14.969101812 7.291339714 CORE 11 Si Si 0.0000 11 Si 2.427700023 7.688771245 3.490533408 CORE 12 Si Si 0.0000 12 Si -10.166556521 4.547233979 5.765990464 CORE 13 Si Si 0.0000 13 Si -0.238363325 12.062179736 9.550153853 CORE 14 Si Si 0.0000 14 Si -10.844626119 12.018762103 9.588407124 CORE 15 Si Si 0.0000 15 Si -1.191890909 4.747441326 5.748174210 CORE 16 Si Si 0.0000 16 Si -10.024716986 4.709512250 8.858112010 CORE 17 Si Si 0.0000 17 Si -0.240988283 11.986412253 5.076923119 CORE 18 Si Si 0.0000 18 Si -10.915639319 12.053688300 5.097170336 CORE 19 Si Si 0.0000 19 Si -1.163143384 4.717008348 8.872024392 CORE 20 Si Si 0.0000 20 Ti -9.040792811 7.666091812 5.003215120 CORE 21 Ti Ti 0.0000 21 Si 0.751383870 14.938387314 8.889447125 CORE 22 Si Si 0.0000 22 Si -2.215174446 16.269381938 5.096650991 CORE 23 Si Si 0.0000 23 Si -11.951620802 9.148713943 8.783698365 CORE 24 Si Si 0.0000 24 Si 0.731476719 9.080640041 5.742780085 CORE 25 Si Si 0.0000 25 Si -8.964538932 16.311051063 9.557953684 CORE 26 Si Si 0.0000 26 Si -11.790167018 14.956955951 5.730813780 CORE 27 Si Si 0.0000 27 Si -2.178268189 7.663037761 9.562829682 CORE 28 Si Si 0.0000 28 Si -12.032261863 9.207325145 5.752255482 CORE 29 Si Si 0.0000 29 Si -2.164737723 16.258674957 9.533274579 CORE 30 Si Si 0.0000 30 Si 0.674940817 14.908267713 5.758097596 CORE 31 Si Si 0.0000 31 Si -9.140408239 7.685136424 9.202948525 CORE 32 Si Si 0.0000 32 Si -2.163066525 7.693639247 5.123576355 CORE 33 Si Si 0.0000 33 Si -11.841293273 14.925336640 8.852492406 CORE 34 Si Si 0.0000 34 Si -8.891485424 16.215816184 5.036332150 CORE 35 Si Si 0.0000 35 Si 0.668730020 9.116144989 8.874728606 CORE 36 Si Si 0.0000 36 O -15.214477809 7.732235292 3.379408247 CORE 37 O O 0.0000 37 O -5.571037529 14.966587016 7.399135348 CORE 38 O O 0.0000 38 O -15.181926788 16.035474513 3.610939526 CORE 39 O O 0.0000 39 O -5.546570186 9.062378005 7.333174006 CORE 40 O O 0.0000 40 O -10.529667325 4.321203632 7.354215036 CORE 41 O O 0.0000 41 O -0.672892619 11.996277846 3.508075422 CORE 42 O O 0.0000 42 O -10.418283654 12.076897186 3.550336784 CORE 43 O O 0.0000 43 O -0.719097847 4.687088535 7.304084617 CORE 44 O O 0.0000 44 O -13.126205462 6.140172267 3.615892509 CORE 45 O O 0.0000 45 O -3.545071181 13.282546412 7.243520976 CORE 46 O O 0.0000 46 O -7.527568731 10.826658842 7.376820642 CORE 47 O O 0.0000 47 O 2.179718651 17.938563107 3.561494517 CORE 48 O O 0.0000 48 O -3.387799047 10.637165252 7.421311222 CORE 49 O O 0.0000 49 O -13.396189910 17.936645370 3.272940453 CORE 50 O O 0.0000 50 O 1.926935377 6.141267499 3.476289807 CORE 51 O O 0.0000 51 O -7.771828590 13.456034739 7.281130676 CORE 52 O O 0.0000 52 O -11.552886007 4.439751471 4.906193663 CORE 53 O O 0.0000 53 O -1.597381507 12.195804673 8.659771475 CORE 54 O O 0.0000 54 O 0.136750888 4.726800137 4.809111653 CORE 55 O O 0.0000 55 O -9.473735583 11.990229277 8.710300893 CORE 56 O O 0.0000 56 O -1.588783230 11.966450720 5.993891807 CORE 57 O O 0.0000 57 O -11.302789081 4.837137916 9.851042487 CORE 58 O O 0.0000 58 O -9.597744647 11.970846351 6.055548149 CORE 59 O O 0.0000 59 O 0.196450596 4.618679057 9.765894527 CORE 60 O O 0.0000 60 O -10.586090838 8.483534188 5.553045062 CORE 61 O O 0.0000 61 O -0.711776254 15.598458341 9.193451295 CORE 62 O O 0.0000 62 O -10.509127605 8.394810304 8.667853991 CORE 63 O O 0.0000 63 O -0.807312413 15.555642236 5.517905425 CORE 64 O O 0.0000 64 O -0.716980176 8.404673302 5.393228996 CORE 65 O O 0.0000 65 O -10.412425225 15.651890182 9.188643230 CORE 66 O O 0.0000 66 O -10.240308607 15.434344353 5.508462587 CORE 67 O O 0.0000 67 O -0.775303512 8.429825584 9.211339362 CORE 68 O O 0.0000 68 O -12.581047847 9.139998791 7.287567295 CORE 69 O O 0.0000 69 O -2.486343589 16.054285750 3.507532800 CORE 70 O O 0.0000 70 O -9.155916661 7.796617003 3.222775725 CORE 71 O O 0.0000 71 O 1.102099444 15.103149822 7.311724165 CORE 72 O O 0.0000 72 O -2.510321157 7.816070273 3.540076094 CORE 73 O O 0.0000 73 O -12.199822716 15.173468100 7.289106083 CORE 74 O O 0.0000 74 O 1.043644860 8.863192375 7.317242136 CORE 75 O O 0.0000 75 O -8.567643147 15.916255091 3.475137618 CORE 76 O O 0.0000 76 O -13.169385446 8.516689678 4.820230742 CORE 77 O O 0.0000 77 O -3.320650155 15.546418676 8.642730244 CORE 78 O O 0.0000 78 O 1.762235998 15.659902328 4.824469864 CORE 79 O O 0.0000 79 O -7.859394036 8.414597563 8.522851078 CORE 80 O O 0.0000 80 O -3.333718944 8.379770972 6.017121433 CORE 81 O O 0.0000 81 O -13.035856674 15.565599218 9.743134190 CORE 82 O O 0.0000 82 O -7.610228547 15.725207591 5.906447989 CORE 83 O O 0.0000 83 O 1.824168266 8.470601715 9.803374981 CORE 84 O O 0.0000 84 O -7.743491936 8.624455867 5.889302843 CORE 85 O O 0.0000 85 O 1.895813073 15.699470936 9.753737433 CORE 86 O O 0.0000 86 O -3.427031009 15.611516079 5.961520665 CORE 87 O O 0.0000 87 O -12.951203122 8.349314643 9.770565358 CORE 88 O O 0.0000 88 O 1.918427164 8.389481751 4.878163351 CORE 89 O O 0.0000 89 O -7.793341122 15.774954881 8.572816801 CORE 90 O O 0.0000 90 O -12.801869563 15.804742222 4.777466543 CORE 91 O O 0.0000 91 O -3.385408295 8.298047175 8.686259044 CORE 92 O O 0.0000 92 O -9.418677086 5.964325833 5.541473953 CORE 93 O O 0.0000 93 O 0.726108256 13.353198679 9.295065381 CORE 94 O O 0.0000 94 O -2.138680010 17.878786762 5.398119904 CORE 95 O O 0.0000 95 O -11.734738641 10.677972807 9.316417850 CORE 96 O O 0.0000 96 O 0.669416089 10.671305701 5.390591878 CORE 97 O O 0.0000 97 O -9.052434808 17.943918039 9.432808194 CORE 98 O O 0.0000 98 O -11.839808940 13.367295143 5.382635946 CORE 99 O O 0.0000 99 O -2.001936627 6.077030368 9.198613325 CORE 100 O O 0.0000 100 O -11.891692854 10.787586822 5.364913945 CORE 101 O O 0.0000 101 O -2.134855153 17.859212553 9.189404104 CORE 102 O O 0.0000 102 O 0.643306608 13.317037716 5.398522782 CORE 103 O O 0.0000 103 O -9.156926038 6.091186941 8.798553586 CORE 104 O O 0.0000 104 O -2.070014454 6.103731369 5.509119013 CORE 105 O O 0.0000 105 O -11.724158751 13.335206199 9.182666924 CORE 106 O O 0.0000 106 O -9.120758388 17.812856620 5.251946012 CORE 107 O O 0.0000 107 O 0.586646194 10.717970542 9.150383645 CORE 108 O O 0.0000 108 O2 12.341864704 6.450048837 4.422919871 CORE 109 O2 O2 0.0000 109 O2 13.068400189 7.964551475 3.117508578 CORE 110 O2 O2 0.0000 110 H 12.247601380 5.827214114 3.662352522 CORE 111 H H 0.0000 111 H 12.925559552 8.732126919 3.726053303 CORE 112 H H 0.0000 112 C 13.358641847 5.968850043 5.412305386 CORE 113 C C 0.0000 113 C 12.841567820 4.645665326 5.751515756 CORE 114 C C 0.0000 114 H 13.049930607 3.805075615 5.076756445 CORE 115 H H 0.0000 115 H 12.129761545 4.491136131 6.593507029 CORE 116 H H 0.0000 116 H 14.351625015 6.019773864 4.919865886 CORE 117 H H 0.0000 117 H 13.275042512 6.712745816 6.235334833 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.346302692 4.741004567 3.507597765 CORE 1 Si Si 0.0000 1 Si -2.537625918 12.013143525 7.330596453 CORE 2 Si Si 0.0000 2 Si 1.114892651 4.747078795 3.502566580 CORE 3 Si Si 0.0000 3 Si -8.590384252 12.055529062 7.341928544 CORE 4 Si Si 0.0000 4 Si -13.612957951 7.692112726 11.100370182 CORE 5 Si Si 0.0000 5 Si -3.963146567 14.856183506 7.312823636 CORE 6 Si Si 0.0000 6 Si -7.168227937 9.234999862 7.281915057 CORE 7 Si Si 0.0000 7 Si 2.474966589 16.333570924 3.531538742 CORE 8 Si Si 0.0000 8 Si -13.603211351 16.327153914 3.464104643 CORE 9 Si Si 0.0000 9 Si -3.930929055 9.097087548 7.369988981 CORE 10 Si Si 0.0000 10 Si -7.187784260 14.971900146 7.291667813 CORE 11 Si Si 0.0000 11 Si 2.420089569 7.689521099 3.490892621 CORE 12 Si Si 0.0000 12 Si -10.175258142 4.553413290 5.773140716 CORE 13 Si Si 0.0000 13 Si -0.244337799 12.060727018 9.551737371 CORE 14 Si Si 0.0000 14 Si -10.843646379 12.019795640 9.588260000 CORE 15 Si Si 0.0000 15 Si -1.192973993 4.749280214 5.748246402 CORE 16 Si Si 0.0000 16 Si -10.021471968 4.703612441 8.864686014 CORE 17 Si Si 0.0000 17 Si -0.245173398 11.983549486 5.076458166 CORE 18 Si Si 0.0000 18 Si -10.920572855 12.049137278 5.097545828 CORE 19 Si Si 0.0000 19 Si -1.163246727 4.718963563 8.871074783 CORE 20 Si Si 0.0000 20 Ti -9.042394728 7.665968854 5.000426162 CORE 21 Ti Ti 0.0000 21 Si 0.749745003 14.938795107 8.891262740 CORE 22 Si Si 0.0000 22 Si -2.217763994 16.270112477 5.098412138 CORE 23 Si Si 0.0000 23 Si -11.955058265 9.152719367 8.778501267 CORE 24 Si Si 0.0000 24 Si 0.730425388 9.080638887 5.743425253 CORE 25 Si Si 0.0000 25 Si -8.965535223 16.308576484 9.558461466 CORE 26 Si Si 0.0000 26 Si -11.791960611 14.952735892 5.734302830 CORE 27 Si Si 0.0000 27 Si -2.180272895 7.662502541 9.561961623 CORE 28 Si Si 0.0000 28 Si -12.035249966 9.203831012 5.752419189 CORE 29 Si Si 0.0000 29 Si -2.167487386 16.260701525 9.534328407 CORE 30 Si Si 0.0000 30 Si 0.673714169 14.909146868 5.757227026 CORE 31 Si Si 0.0000 31 Si -9.140103405 7.688645404 9.203279363 CORE 32 Si Si 0.0000 32 Si -2.161473268 7.694033778 5.122148709 CORE 33 Si Si 0.0000 33 Si -11.843868773 14.931451806 8.856002680 CORE 34 Si Si 0.0000 34 Si -8.898436559 16.223197829 5.039250887 CORE 35 Si Si 0.0000 35 Si 0.662660285 9.117145949 8.872269725 CORE 36 Si Si 0.0000 36 O -15.222411571 7.736577301 3.374352187 CORE 37 O O 0.0000 37 O -5.575653144 14.965197579 7.398487898 CORE 38 O O 0.0000 38 O -15.185917340 16.037084783 3.612821019 CORE 39 O O 0.0000 39 O -5.545310245 9.060365275 7.331492963 CORE 40 O O 0.0000 40 O -10.528505530 4.319901837 7.358162345 CORE 41 O O 0.0000 41 O -0.679910917 11.991329842 3.508651441 CORE 42 O O 0.0000 42 O -10.415593265 12.077631185 3.550148277 CORE 43 O O 0.0000 43 O -0.721363894 4.688411520 7.304232501 CORE 44 O O 0.0000 44 O -13.139376055 6.141156361 3.611093496 CORE 45 O O 0.0000 45 O -3.544677629 13.282969196 7.244652550 CORE 46 O O 0.0000 46 O -7.528779791 10.827742110 7.367431130 CORE 47 O O 0.0000 47 O 2.177281713 17.936293939 3.560545974 CORE 48 O O 0.0000 48 O -3.394557930 10.640903426 7.423740435 CORE 49 O O 0.0000 49 O -13.395122607 17.934470906 3.279751042 CORE 50 O O 0.0000 50 O 1.928973568 6.140043543 3.476469033 CORE 51 O O 0.0000 51 O -7.773232673 13.461149089 7.280510917 CORE 52 O O 0.0000 52 O -11.560072311 4.450033218 4.914342895 CORE 53 O O 0.0000 53 O -1.605416881 12.195458863 8.661494434 CORE 54 O O 0.0000 54 O 0.135695901 4.728361974 4.810190661 CORE 55 O O 0.0000 55 O -9.474560212 11.992344928 8.709526706 CORE 56 O O 0.0000 56 O -1.593976759 11.963535915 5.996932792 CORE 57 O O 0.0000 57 O -11.300166624 4.841505583 9.861955801 CORE 58 O O 0.0000 58 O -9.603675051 11.969868455 6.058261415 CORE 59 O O 0.0000 59 O 0.195003982 4.621317819 9.765149856 CORE 60 O O 0.0000 60 O -10.586304837 8.478829217 5.553243078 CORE 61 O O 0.0000 61 O -0.715677511 15.599870986 9.192672697 CORE 62 O O 0.0000 62 O -10.507186791 8.397906014 8.660214976 CORE 63 O O 0.0000 63 O -0.809694312 15.557890647 5.519357795 CORE 64 O O 0.0000 64 O -0.716562761 8.404140389 5.391782179 CORE 65 O O 0.0000 65 O -10.413547953 15.657029038 9.190513540 CORE 66 O O 0.0000 66 O -10.241901095 15.435149848 5.514332543 CORE 67 O O 0.0000 67 O -0.783798639 8.432278540 9.197986946 CORE 68 O O 0.0000 68 O -12.583096816 9.138380448 7.283682365 CORE 69 O O 0.0000 69 O -2.486729635 16.051431775 3.508626489 CORE 70 O O 0.0000 70 O -9.146498758 7.800474388 3.210994048 CORE 71 O O 0.0000 71 O 1.102684478 15.100090437 7.312196497 CORE 72 O O 0.0000 72 O -2.509852552 7.818356451 3.538831401 CORE 73 O O 0.0000 73 O -12.202331052 15.171811990 7.290973655 CORE 74 O O 0.0000 74 O 1.044277428 8.863895959 7.317743147 CORE 75 O O 0.0000 75 O -8.572936749 15.921805054 3.477989944 CORE 76 O O 0.0000 76 O -13.172437633 8.512001572 4.821656334 CORE 77 O O 0.0000 77 O -3.321993810 15.550891714 8.643970296 CORE 78 O O 0.0000 78 O 1.756374104 15.661134356 4.826308528 CORE 79 O O 0.0000 79 O -7.859385569 8.419944567 8.517125810 CORE 80 O O 0.0000 80 O -3.334832242 8.382980270 6.016483036 CORE 81 O O 0.0000 81 O -13.035191775 15.571822639 9.744027049 CORE 82 O O 0.0000 82 O -7.611520049 15.731988862 5.906945957 CORE 83 O O 0.0000 83 O 1.813632447 8.470429170 9.805423528 CORE 84 O O 0.0000 84 O -7.748863285 8.623836466 5.890046068 CORE 85 O O 0.0000 85 O 1.892778013 15.696787056 9.753436492 CORE 86 O O 0.0000 86 O -3.428650824 15.613085700 5.962126884 CORE 87 O O 0.0000 87 O -12.962260277 8.360088364 9.771940819 CORE 88 O O 0.0000 88 O 1.918111938 8.388389258 4.880097258 CORE 89 O O 0.0000 89 O -7.794685162 15.769490108 8.574822215 CORE 90 O O 0.0000 90 O -12.801946348 15.792425114 4.781448541 CORE 91 O O 0.0000 91 O -3.390924364 8.295130784 8.684565830 CORE 92 O O 0.0000 92 O -9.424366548 5.968235831 5.540117205 CORE 93 O O 0.0000 93 O 0.719492361 13.353093884 9.296483062 CORE 94 O O 0.0000 94 O -2.140503817 17.876229299 5.396478114 CORE 95 O O 0.0000 95 O -11.730415735 10.682123099 9.319107610 CORE 96 O O 0.0000 96 O 0.666322910 10.674042051 5.390966001 CORE 97 O O 0.0000 97 O -9.036188165 17.935923192 9.430097971 CORE 98 O O 0.0000 98 O -11.844370671 13.363478407 5.384913167 CORE 99 O O 0.0000 99 O -2.003213504 6.076388624 9.200546927 CORE 100 O O 0.0000 100 O -11.891599326 10.779378203 5.361819786 CORE 101 O O 0.0000 101 O -2.136779994 17.858519492 9.193683772 CORE 102 O O 0.0000 102 O 0.637083109 13.317514123 5.398975031 CORE 103 O O 0.0000 103 O -9.156873693 6.086792175 8.806670563 CORE 104 O O 0.0000 104 O -2.073149585 6.103756451 5.508641128 CORE 105 O O 0.0000 105 O -11.726295282 13.337822763 9.184043298 CORE 106 O O 0.0000 106 O -9.124386565 17.818374871 5.258629941 CORE 107 O O 0.0000 107 O 0.582186267 10.721464819 9.150995493 CORE 108 O O 0.0000 108 O2 12.349981483 6.437610934 4.437927769 CORE 109 O2 O2 0.0000 109 O2 13.066651244 7.952058075 3.102493681 CORE 110 O2 O2 0.0000 110 H 12.316683581 5.859240497 3.633255221 CORE 111 H H 0.0000 111 H 12.962809132 8.707493857 3.738114622 CORE 112 H H 0.0000 112 C 13.385618295 5.956558017 5.422972606 CORE 113 C C 0.0000 113 C 12.859935407 4.645784680 5.754414790 CORE 114 C C 0.0000 114 H 13.092604459 3.773745463 5.094749111 CORE 115 H H 0.0000 115 H 12.163289034 4.484493530 6.610103390 CORE 116 H H 0.0000 116 H 14.373339808 6.012002733 4.902659807 CORE 117 H H 0.0000 117 H 13.309011856 6.712897603 6.229443348 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.352951881 4.743556120 3.511320281 CORE 1 Si Si 0.0000 1 Si -2.544028006 12.012061699 7.332250414 CORE 2 Si Si 0.0000 2 Si 1.114679036 4.746470925 3.503486217 CORE 3 Si Si 0.0000 3 Si -8.590352114 12.052963527 7.338772766 CORE 4 Si Si 0.0000 4 Si -13.624970214 7.697800350 11.099208864 CORE 5 Si Si 0.0000 5 Si -3.967019920 14.858057134 7.314963013 CORE 6 Si Si 0.0000 6 Si -7.173791540 9.239031809 7.277398043 CORE 7 Si Si 0.0000 7 Si 2.474676189 16.333382956 3.531693093 CORE 8 Si Si 0.0000 8 Si -13.605460655 16.326652281 3.478929131 CORE 9 Si Si 0.0000 9 Si -3.936536343 9.094244961 7.370361810 CORE 10 Si Si 0.0000 10 Si -7.191567548 14.976187234 7.292170422 CORE 11 Si Si 0.0000 11 Si 2.408430252 7.690669954 3.491443003 CORE 12 Si Si 0.0000 12 Si -10.188589042 4.562880171 5.784095032 CORE 13 Si Si 0.0000 13 Si -0.253490897 12.058501382 9.554163389 CORE 14 Si Si 0.0000 14 Si -10.842145110 12.021379244 9.588034522 CORE 15 Si Si 0.0000 15 Si -1.194633066 4.752097575 5.748357011 CORE 16 Si Si 0.0000 16 Si -10.016500328 4.694573966 8.874757513 CORE 17 Si Si 0.0000 17 Si -0.251585301 11.979163801 5.075745750 CORE 18 Si Si 0.0000 18 Si -10.928131156 12.042164868 5.098121010 CORE 19 Si Si 0.0000 19 Si -1.163404917 4.721958946 8.869619979 CORE 20 Si Si 0.0000 20 Ti -9.044848794 7.665780309 4.996153493 CORE 21 Ti Ti 0.0000 21 Si 0.747234358 14.939419842 8.894044319 CORE 22 Si Si 0.0000 22 Si -2.221730875 16.271231926 5.101110266 CORE 23 Si Si 0.0000 23 Si -11.960324732 9.158855723 8.770539249 CORE 24 Si Si 0.0000 24 Si 0.728814619 9.080637013 5.744413658 CORE 25 Si Si 0.0000 25 Si -8.967061701 16.304785551 9.559239380 CORE 26 Si Si 0.0000 26 Si -11.794708349 14.946270736 5.739648269 CORE 27 Si Si 0.0000 27 Si -2.183344134 7.661682631 9.560631729 CORE 28 Si Si 0.0000 28 Si -12.039827862 9.198478098 5.752669999 CORE 29 Si Si 0.0000 29 Si -2.171699828 16.263806461 9.535942887 CORE 30 Si Si 0.0000 30 Si 0.671834745 14.910493782 5.755893253 CORE 31 Si Si 0.0000 31 Si -9.139636340 7.694021093 9.203786232 CORE 32 Si Si 0.0000 32 Si -2.159032673 7.694638044 5.119961558 CORE 33 Si Si 0.0000 33 Si -11.847814485 14.940820523 8.861380602 CORE 34 Si Si 0.0000 34 Si -8.909086114 16.234506626 5.043722409 CORE 35 Si Si 0.0000 35 Si 0.653361121 9.118679533 8.868502631 CORE 36 Si Si 0.0000 36 O -15.234566244 7.743229560 3.366606138 CORE 37 O O 0.0000 37 O -5.582724173 14.963068955 7.397495917 CORE 38 O O 0.0000 38 O -15.192030760 16.039551578 3.615703546 CORE 39 O O 0.0000 39 O -5.543379631 9.057281962 7.328917540 CORE 40 O O 0.0000 40 O -10.526725793 4.317907414 7.364209702 CORE 41 O O 0.0000 41 O -0.690663046 11.983749274 3.509533954 CORE 42 O O 0.0000 42 O -10.411471657 12.078755679 3.549859355 CORE 43 O O 0.0000 43 O -0.724835421 4.690438376 7.304459044 CORE 44 O O 0.0000 44 O -13.159553785 6.142663999 3.603741273 CORE 45 O O 0.0000 45 O -3.544074890 13.283616850 7.246386234 CORE 46 O O 0.0000 46 O -7.530635159 10.829401679 7.353046187 CORE 47 O O 0.0000 47 O 2.173548268 17.932817536 3.559092767 CORE 48 O O 0.0000 48 O -3.404912850 10.646630403 7.427462190 CORE 49 O O 0.0000 49 O -13.393487204 17.931139516 3.290185101 CORE 50 O O 0.0000 50 O 1.932095998 6.138168330 3.476743730 CORE 51 O O 0.0000 51 O -7.775384022 13.468984365 7.279561308 CORE 52 O O 0.0000 52 O -11.571081932 4.465785070 4.926827783 CORE 53 O O 0.0000 53 O -1.617727434 12.194929122 8.664133986 CORE 54 O O 0.0000 54 O 0.134079551 4.730754821 4.811843709 CORE 55 O O 0.0000 55 O -9.475823810 11.995586227 8.708340513 CORE 56 O O 0.0000 56 O -1.601933423 11.959070372 6.001591604 CORE 57 O O 0.0000 57 O -11.296148937 4.848196906 9.878675170 CORE 58 O O 0.0000 58 O -9.612760601 11.968370331 6.062418303 CORE 59 O O 0.0000 59 O 0.192787586 4.625360433 9.764009078 CORE 60 O O 0.0000 60 O -10.586632957 8.471620837 5.553546454 CORE 61 O O 0.0000 61 O -0.721654295 15.602034927 9.191479885 CORE 62 O O 0.0000 62 O -10.504213506 8.402648752 8.648511805 CORE 63 O O 0.0000 63 O -0.813343658 15.561335050 5.521582906 CORE 64 O O 0.0000 64 O -0.715923264 8.403323938 5.389565588 CORE 65 O O 0.0000 65 O -10.415268224 15.664901937 9.193378799 CORE 66 O O 0.0000 66 O -10.244340728 15.436383894 5.523325491 CORE 67 O O 0.0000 67 O -0.796813350 8.436036319 9.177530683 CORE 68 O O 0.0000 68 O -12.586235796 9.135900968 7.277730555 CORE 69 O O 0.0000 69 O -2.487321405 16.047059208 3.510302131 CORE 70 O O 0.0000 70 O -9.132070533 7.806383855 3.192944252 CORE 71 O O 0.0000 71 O 1.103580890 15.095403629 7.312920095 CORE 72 O O 0.0000 72 O -2.509134730 7.821859089 3.536924500 CORE 73 O O 0.0000 73 O -12.206173999 15.169274708 7.293834805 CORE 74 O O 0.0000 74 O 1.045246584 8.864973605 7.318510563 CORE 75 O O 0.0000 75 O -8.581046599 15.930307589 3.482359758 CORE 76 O O 0.0000 76 O -13.177113677 8.504819283 4.823840366 CORE 77 O O 0.0000 77 O -3.324052594 15.557744482 8.645869971 CORE 78 O O 0.0000 78 O 1.747393630 15.663021966 4.829125328 CORE 79 O O 0.0000 79 O -7.859372482 8.428136320 8.508354537 CORE 80 O O 0.0000 80 O -3.336537887 8.387896850 6.015504976 CORE 81 O O 0.0000 81 O -13.034173353 15.581357125 9.745394827 CORE 82 O O 0.0000 82 O -7.613498775 15.742377998 5.907708885 CORE 83 O O 0.0000 83 O 1.797491456 8.470164948 9.808561886 CORE 84 O O 0.0000 84 O -7.757092067 8.622887543 5.891184641 CORE 85 O O 0.0000 85 O 1.888128142 15.692675395 9.752975418 CORE 86 O O 0.0000 86 O -3.431132410 15.615490511 5.963055725 CORE 87 O O 0.0000 87 O -12.979200110 8.376593963 9.774048094 CORE 88 O O 0.0000 88 O 1.917629092 8.386715706 4.883060116 CORE 89 O O 0.0000 89 O -7.796744138 15.761117738 8.577894466 CORE 90 O O 0.0000 90 O -12.802064125 15.773555065 4.787549073 CORE 91 O O 0.0000 91 O -3.399375036 8.290662791 8.681971845 CORE 92 O O 0.0000 92 O -9.433082602 5.974225733 5.538038685 CORE 93 O O 0.0000 93 O 0.709357020 13.352933304 9.298654999 CORE 94 O O 0.0000 94 O -2.143297935 17.872311372 5.393962864 CORE 95 O O 0.0000 95 O -11.723792912 10.688481441 9.323228363 CORE 96 O O 0.0000 96 O 0.661583745 10.678234146 5.391539205 CORE 97 O O 0.0000 97 O -9.011297634 17.923674842 9.425945876 CORE 98 O O 0.0000 98 O -11.851359141 13.357630924 5.388401912 CORE 99 O O 0.0000 99 O -2.005169906 6.075405394 9.203509177 CORE 100 O O 0.0000 100 O -11.891455954 10.766802207 5.357079425 CORE 101 O O 0.0000 101 O -2.139728646 17.857457702 9.200240356 CORE 102 O O 0.0000 102 O 0.627548584 13.318244085 5.399667973 CORE 103 O O 0.0000 103 O -9.156793251 6.080059193 8.819106080 CORE 104 O O 0.0000 104 O -2.077952643 6.103794938 5.507909009 CORE 105 O O 0.0000 105 O -11.729568590 13.341831358 9.186151866 CORE 106 O O 0.0000 106 O -9.129945164 17.826828972 5.268869864 CORE 107 O O 0.0000 107 O 0.575353486 10.726818022 9.151932855 CORE 108 O O 0.0000 108 O2 12.362416356 6.418555800 4.460920202 CORE 109 O2 O2 0.0000 109 O2 13.063971823 7.932918037 3.079490446 CORE 110 O2 O2 0.0000 110 H 12.422518852 5.908305536 3.588677310 CORE 111 H H 0.0000 111 H 13.019876568 8.669755200 3.756592932 CORE 112 H H 0.0000 112 C 13.426946952 5.937726455 5.439314962 CORE 113 C C 0.0000 113 C 12.888074804 4.645967603 5.758856112 CORE 114 C C 0.0000 114 H 13.157982081 3.725746826 5.122314242 CORE 115 H H 0.0000 115 H 12.214654115 4.474316867 6.635529524 CORE 116 H H 0.0000 116 H 14.406607303 6.000097310 4.876299583 CORE 117 H H 0.0000 117 H 13.361053576 6.713130113 6.220417537 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.346501681 4.741080821 3.507709135 CORE 1 Si Si 0.0000 1 Si -2.537817401 12.013111236 7.330645976 CORE 2 Si Si 0.0000 2 Si 1.114886300 4.747060632 3.502594042 CORE 3 Si Si 0.0000 3 Si -8.590383290 12.055452376 7.341834138 CORE 4 Si Si 0.0000 4 Si -13.613317439 7.692282820 11.100335417 CORE 5 Si Si 0.0000 5 Si -3.963262419 14.856239579 7.312887688 CORE 6 Si Si 0.0000 6 Si -7.168394403 9.235120514 7.281779952 CORE 7 Si Si 0.0000 7 Si 2.474957929 16.333565302 3.531543307 CORE 8 Si Si 0.0000 8 Si -13.603278514 16.327138923 3.464548144 CORE 9 Si Si 0.0000 9 Si -3.931096675 9.097002501 7.370000163 CORE 10 Si Si 0.0000 10 Si -7.187897611 14.972028293 7.291682799 CORE 11 Si Si 0.0000 11 Si 2.419740665 7.689555551 3.490909129 CORE 12 Si Si 0.0000 12 Si -10.175656889 4.553696540 5.773468435 CORE 13 Si Si 0.0000 13 Si -0.244611649 12.060660422 9.551809944 CORE 14 Si Si 0.0000 14 Si -10.843601346 12.019843065 9.588253230 CORE 15 Si Si 0.0000 15 Si -1.193023644 4.749364540 5.748249674 CORE 16 Si Si 0.0000 16 Si -10.021323208 4.703342164 8.864987336 CORE 17 Si Si 0.0000 17 Si -0.245365266 11.983418311 5.076436866 CORE 18 Si Si 0.0000 18 Si -10.920798978 12.048928552 5.097563020 CORE 19 Si Si 0.0000 19 Si -1.163251346 4.719053079 8.871031270 CORE 20 Si Si 0.0000 20 Ti -9.042468050 7.665963232 5.000298361 CORE 21 Ti Ti 0.0000 21 Si 0.749669949 14.938813847 8.891345963 CORE 22 Si Si 0.0000 22 Si -2.217882540 16.270146064 5.098492850 CORE 23 Si Si 0.0000 23 Si -11.955215878 9.152902867 8.778263085 CORE 24 Si Si 0.0000 24 Si 0.730377084 9.080638887 5.743454845 CORE 25 Si Si 0.0000 25 Si -8.965580832 16.308463040 9.558484744 CORE 26 Si Si 0.0000 26 Si -11.792042785 14.952542590 5.734462810 CORE 27 Si Si 0.0000 27 Si -2.180364691 7.662478036 9.561921837 CORE 28 Si Si 0.0000 28 Si -12.035386988 9.203670864 5.752426644 CORE 29 Si Si 0.0000 29 Si -2.167613438 16.260794501 9.534376713 CORE 30 Si Si 0.0000 30 Si 0.673657975 14.909187085 5.757187089 CORE 31 Si Si 0.0000 31 Si -9.140089357 7.688806128 9.203294502 CORE 32 Si Si 0.0000 32 Si -2.161400331 7.694051797 5.122083287 CORE 33 Si Si 0.0000 33 Si -11.843986935 14.931732173 8.856163573 CORE 34 Si Si 0.0000 34 Si -8.898755249 16.223536143 5.039384622 CORE 35 Si Si 0.0000 35 Si 0.662382009 9.117191788 8.872156986 CORE 36 Si Si 0.0000 36 O -15.222775293 7.736776368 3.374120395 CORE 37 O O 0.0000 37 O -5.575864642 14.965133866 7.398458230 CORE 38 O O 0.0000 38 O -15.186100164 16.037158587 3.612907285 CORE 39 O O 0.0000 39 O -5.545252319 9.060273165 7.331415902 CORE 40 O O 0.0000 40 O -10.528452223 4.319842160 7.358343244 CORE 41 O O 0.0000 41 O -0.680232687 11.991102954 3.508677838 CORE 42 O O 0.0000 42 O -10.415469907 12.077664771 3.550139605 CORE 43 O O 0.0000 43 O -0.721467815 4.688472206 7.304239272 CORE 44 O O 0.0000 44 O -13.139979757 6.141201480 3.610873495 CORE 45 O O 0.0000 45 O -3.544659732 13.282988512 7.244704431 CORE 46 O O 0.0000 46 O -7.528835408 10.827791697 7.367000790 CORE 47 O O 0.0000 47 O 2.177169902 17.936189864 3.560502536 CORE 48 O O 0.0000 48 O -3.394867767 10.641074818 7.423851805 CORE 49 O O 0.0000 49 O -13.395073533 17.934371156 3.280063242 CORE 50 O O 0.0000 50 O 1.929066904 6.139987470 3.476477249 CORE 51 O O 0.0000 51 O -7.773297142 13.461383472 7.280482466 CORE 52 O O 0.0000 52 O -11.560401585 4.450504436 4.914716409 CORE 53 O O 0.0000 53 O -1.605785222 12.195443007 8.661573397 CORE 54 O O 0.0000 54 O 0.135647598 4.728433616 4.810240108 CORE 55 O O 0.0000 55 O -9.474598124 11.992441939 8.709491180 CORE 56 O O 0.0000 56 O -1.594214815 11.963402290 5.997072157 CORE 57 O O 0.0000 57 O -11.300046346 4.841705804 9.862455975 CORE 58 O O 0.0000 58 O -9.603946784 11.969823625 6.058385793 CORE 59 O O 0.0000 59 O 0.194937588 4.621438759 9.765115776 CORE 60 O O 0.0000 60 O -10.586314652 8.478613572 5.553252131 CORE 61 O O 0.0000 61 O -0.715856293 15.599935708 9.192637019 CORE 62 O O 0.0000 62 O -10.507097881 8.398047855 8.659864816 CORE 63 O O 0.0000 63 O -0.809803622 15.557993713 5.519424358 CORE 64 O O 0.0000 64 O -0.716543709 8.404116028 5.391715844 CORE 65 O O 0.0000 65 O -10.413599528 15.657264574 9.190599198 CORE 66 O O 0.0000 66 O -10.241974031 15.435186750 5.514601611 CORE 67 O O 0.0000 67 O -0.784187956 8.432390975 9.197374946 CORE 68 O O 0.0000 68 O -12.583190729 9.138306212 7.283504280 CORE 69 O O 0.0000 69 O -2.486747340 16.051300889 3.508676621 CORE 70 O O 0.0000 70 O -9.146067102 7.800651113 3.210454012 CORE 71 O O 0.0000 71 O 1.102711421 15.099950326 7.312218101 CORE 72 O O 0.0000 72 O -2.509830998 7.818461246 3.538774347 CORE 73 O O 0.0000 73 O -12.202446135 15.171736025 7.291059236 CORE 74 O O 0.0000 74 O 1.044306295 8.863928104 7.317766045 CORE 75 O O 0.0000 75 O -8.573179230 15.922059331 3.478120636 CORE 76 O O 0.0000 76 O -13.172577541 8.511786648 4.821721680 CORE 77 O O 0.0000 77 O -3.322055393 15.551096692 8.644027122 CORE 78 O O 0.0000 78 O 1.756105450 15.661190862 4.826392816 CORE 79 O O 0.0000 79 O -7.859384991 8.420189618 8.516863361 CORE 80 O O 0.0000 80 O -3.334883240 8.383127301 6.016453748 CORE 81 O O 0.0000 81 O -13.035161368 15.572107906 9.744067900 CORE 82 O O 0.0000 82 O -7.611579323 15.732299644 5.906968779 CORE 83 O O 0.0000 83 O 1.813149601 8.470421242 9.805517401 CORE 84 O O 0.0000 84 O -7.749109423 8.623808069 5.890080073 CORE 85 O O 0.0000 85 O 1.892638875 15.696664098 9.753422647 CORE 86 O O 0.0000 86 O -3.428725108 15.613157629 5.962154726 CORE 87 O O 0.0000 87 O -12.962766986 8.360582069 9.772003883 CORE 88 O O 0.0000 88 O 1.918097505 8.388339238 4.880185882 CORE 89 O O 0.0000 89 O -7.794746745 15.769239580 8.574914110 CORE 90 O O 0.0000 90 O -12.801950005 15.791860633 4.781631038 CORE 91 O O 0.0000 91 O -3.391177045 8.294997160 8.684488236 CORE 92 O O 0.0000 92 O -9.424627312 5.968415006 5.540055054 CORE 93 O O 0.0000 93 O 0.719189259 13.353089127 9.296548028 CORE 94 O O 0.0000 94 O -2.140587531 17.876112107 5.396402879 CORE 95 O O 0.0000 95 O -11.730217516 10.682313374 9.319230923 CORE 96 O O 0.0000 96 O 0.666181078 10.674167459 5.390983193 CORE 97 O O 0.0000 97 O -9.035443400 17.935556769 9.429973745 CORE 98 O O 0.0000 98 O -11.844579667 13.363303412 5.385017538 CORE 99 O O 0.0000 99 O -2.003272007 6.076359218 9.200635551 CORE 100 O O 0.0000 100 O -11.891595092 10.779001979 5.361677987 CORE 101 O O 0.0000 101 O -2.136868134 17.858487780 9.193879962 CORE 102 O O 0.0000 102 O 0.636797905 13.317536033 5.398995799 CORE 103 O O 0.0000 103 O -9.156871191 6.086590657 8.807042632 CORE 104 O O 0.0000 104 O -2.073293342 6.103757604 5.508619219 CORE 105 O O 0.0000 105 O -11.726393237 13.337942694 9.184106362 CORE 106 O O 0.0000 106 O -9.124552838 17.818627849 5.258936284 CORE 107 O O 0.0000 107 O 0.581981890 10.721624967 9.151023564 CORE 108 O O 0.0000 108 O2 12.350353480 6.437040831 4.438615614 CORE 109 O2 O2 0.0000 109 O2 13.066571186 7.951485521 3.101805532 CORE 110 O2 O2 0.0000 110 H 12.319849889 5.860708350 3.631921524 CORE 111 H H 0.0000 111 H 12.964516510 8.706364750 3.738667438 CORE 112 H H 0.0000 112 C 13.386854759 5.955994689 5.423461522 CORE 113 C C 0.0000 113 C 12.860777164 4.645790158 5.754547612 CORE 114 C C 0.0000 114 H 13.094560476 3.772309467 5.095573733 CORE 115 H H 0.0000 115 H 12.164825712 4.484189091 6.610864112 CORE 116 H H 0.0000 116 H 14.374334944 6.011646544 4.901871167 CORE 117 H H 0.0000 117 H 13.310568741 6.712904522 6.229173292 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.347847646 4.745102390 3.513071995 CORE 1 Si Si 0.0000 1 Si -2.542427243 12.011429324 7.331907557 CORE 2 Si Si 0.0000 2 Si 1.114677304 4.750377320 3.502660834 CORE 3 Si Si 0.0000 3 Si -8.590518195 12.056748549 7.337524041 CORE 4 Si Si 0.0000 4 Si -13.625450558 7.696496248 11.099834634 CORE 5 Si Si 0.0000 5 Si -3.968010630 14.855762451 7.314221538 CORE 6 Si Si 0.0000 6 Si -7.170657178 9.238310640 7.285139680 CORE 7 Si Si 0.0000 7 Si 2.470140438 16.329889399 3.531535319 CORE 8 Si Si 0.0000 8 Si -13.601583453 16.325628258 3.472587907 CORE 9 Si Si 0.0000 9 Si -3.929185498 9.099993704 7.369743420 CORE 10 Si Si 0.0000 10 Si -7.190247179 14.972219576 7.290778453 CORE 11 Si Si 0.0000 11 Si 2.415029981 7.689340915 3.489801214 CORE 12 Si Si 0.0000 12 Si -10.182447718 4.559314397 5.781563731 CORE 13 Si Si 0.0000 13 Si -0.253545167 12.063313743 9.552213126 CORE 14 Si Si 0.0000 14 Si -10.843753186 12.023044723 9.589058073 CORE 15 Si Si 0.0000 15 Si -1.196091227 4.749995618 5.748152986 CORE 16 Si Si 0.0000 16 Si -10.018839697 4.700741745 8.869747096 CORE 17 Si Si 0.0000 17 Si -0.253372735 11.985351040 5.077966525 CORE 18 Si Si 0.0000 18 Si -10.926671071 12.040905884 5.097184257 CORE 19 Si Si 0.0000 19 Si -1.165377677 4.719484224 8.870827625 CORE 20 Si Si 0.0000 20 Ti -9.046395672 7.664887460 5.003358136 CORE 21 Ti Ti 0.0000 21 Si 0.746097966 14.937496339 8.890257903 CORE 22 Si Si 0.0000 22 Si -2.218043810 16.269066111 5.098862029 CORE 23 Si Si 0.0000 23 Si -11.951761095 9.152703367 8.774405161 CORE 24 Si Si 0.0000 24 Si 0.729136965 9.080589157 5.739677861 CORE 25 Si Si 0.0000 25 Si -8.965506164 16.304632899 9.556358755 CORE 26 Si Si 0.0000 26 Si -11.789737672 14.947507809 5.740150117 CORE 27 Si Si 0.0000 27 Si -2.185568421 7.661968619 9.560170427 CORE 28 Si Si 0.0000 28 Si -12.040018384 9.201752694 5.750318152 CORE 29 Si Si 0.0000 29 Si -2.167738912 16.260750824 9.536783256 CORE 30 Si Si 0.0000 30 Si 0.669901436 14.908837384 5.760249069 CORE 31 Si Si 0.0000 31 Si -9.135779153 7.693426629 9.196456983 CORE 32 Si Si 0.0000 32 Si -2.161497516 7.694963817 5.119431259 CORE 33 Si Si 0.0000 33 Si -11.844214598 14.934910623 8.857821718 CORE 34 Si Si 0.0000 34 Si -8.905823199 16.226751927 5.046625019 CORE 35 Si Si 0.0000 35 Si 0.655803063 9.118502664 8.873496313 CORE 36 Si Si 0.0000 36 O -15.230443289 7.742247051 3.369793334 CORE 37 O O 0.0000 37 O -5.576094807 14.965700942 7.397415280 CORE 38 O O 0.0000 38 O -15.188005568 16.039414926 3.616066410 CORE 39 O O 0.0000 39 O -5.549676836 9.059106868 7.327247984 CORE 40 O O 0.0000 40 O -10.525982953 4.318696188 7.359128081 CORE 41 O O 0.0000 41 O -0.689308999 11.984562554 3.510409012 CORE 42 O O 0.0000 42 O -10.413106290 12.080258415 3.547934501 CORE 43 O O 0.0000 43 O -0.725255914 4.688959424 7.304401990 CORE 44 O O 0.0000 44 O -13.153920517 6.143389205 3.606296157 CORE 45 O O 0.0000 45 O -3.545071950 13.285038000 7.246049843 CORE 46 O O 0.0000 46 O -7.530628616 10.830778287 7.355834993 CORE 47 O O 0.0000 47 O 2.174804553 17.934980900 3.559218895 CORE 48 O O 0.0000 48 O -3.403655603 10.641587262 7.426102400 CORE 49 O O 0.0000 49 O -13.393465650 17.934172665 3.286526486 CORE 50 O O 0.0000 50 O 1.929587085 6.139723536 3.476871303 CORE 51 O O 0.0000 51 O -7.777181657 13.456956850 7.281277115 CORE 52 O O 0.0000 52 O -11.565713084 4.460489094 4.921836992 CORE 53 O O 0.0000 53 O -1.613013094 12.193688157 8.663543970 CORE 54 O O 0.0000 54 O 0.134514285 4.729538217 4.812091552 CORE 55 O O 0.0000 55 O -9.473984030 11.994754929 8.707072161 CORE 56 O O 0.0000 56 O -1.598189009 11.960166181 5.999254287 CORE 57 O O 0.0000 57 O -11.296412203 4.843892808 9.872396326 CORE 58 O O 0.0000 58 O -9.606231113 11.970112352 6.060676022 CORE 59 O O 0.0000 59 O 0.193669372 4.623464318 9.763917335 CORE 60 O O 0.0000 60 O -10.583781875 8.475357426 5.550428256 CORE 61 O O 0.0000 61 O -0.717250754 15.600969101 9.191802964 CORE 62 O O 0.0000 62 O -10.507572259 8.402405431 8.657128652 CORE 63 O O 0.0000 63 O -0.811288532 15.560037146 5.520718346 CORE 64 O O 0.0000 64 O -0.716766176 8.403334893 5.390792100 CORE 65 O O 0.0000 65 O -10.415813423 15.662126955 9.192869039 CORE 66 O O 0.0000 66 O -10.248947875 15.435840459 5.520758512 CORE 67 O O 0.0000 67 O -0.794251130 8.435577786 9.185066317 CORE 68 O O 0.0000 68 O -12.587031174 9.137474337 7.283366894 CORE 69 O O 0.0000 69 O -2.489350744 16.047553922 3.510281591 CORE 70 O O 0.0000 70 O -9.135368859 7.807824753 3.201018324 CORE 71 O O 0.0000 71 O 1.101090259 15.096784417 7.313456024 CORE 72 O O 0.0000 72 O -2.508274691 7.821080404 3.536566580 CORE 73 O O 0.0000 73 O -12.204025344 15.169999048 7.289753609 CORE 74 O O 0.0000 74 O 1.045479059 8.865418155 7.316773759 CORE 75 O O 0.0000 75 O -8.578081782 15.927674449 3.482176576 CORE 76 O O 0.0000 76 O -13.174867067 8.505372665 4.823305199 CORE 77 O O 0.0000 77 O -3.325911618 15.554687548 8.644971786 CORE 78 O O 0.0000 78 O 1.752195725 15.663561222 4.826114544 CORE 79 O O 0.0000 79 O -7.865114675 8.421882052 8.511731153 CORE 80 O O 0.0000 80 O -3.334380765 8.385573626 6.013783995 CORE 81 O O 0.0000 81 O -13.036536200 15.579895614 9.747988735 CORE 82 O O 0.0000 82 O -7.611672274 15.738084279 5.906163859 CORE 83 O O 0.0000 83 O 1.800062529 8.468930037 9.808782114 CORE 84 O O 0.0000 84 O -7.752259758 8.621756563 5.884870574 CORE 85 O O 0.0000 85 O 1.890453270 15.693950379 9.755116470 CORE 86 O O 0.0000 86 O -3.431475348 15.615834302 5.963358873 CORE 87 O O 0.0000 87 O -12.967832540 8.372131160 9.770452923 CORE 88 O O 0.0000 88 O 1.916932054 8.387312765 4.880266518 CORE 89 O O 0.0000 89 O -7.797318395 15.763482188 8.577183267 CORE 90 O O 0.0000 90 O -12.803448194 15.779241825 4.784307638 CORE 91 O O 0.0000 91 O -3.396412528 8.290686864 8.683359097 CORE 92 O O 0.0000 92 O -9.433779640 5.975201178 5.542479398 CORE 93 O O 0.0000 93 O 0.711830909 13.354697668 9.299218465 CORE 94 O O 0.0000 94 O -2.141855170 17.877989194 5.395694115 CORE 95 O O 0.0000 95 O -11.729731014 10.681275657 9.318658708 CORE 96 O O 0.0000 96 O 0.664646901 10.674592118 5.392221420 CORE 97 O O 0.0000 97 O -9.020636635 17.933321187 9.424885354 CORE 98 O O 0.0000 98 O -11.848840798 13.361037559 5.387826579 CORE 99 O O 0.0000 99 O -2.003888410 6.075314726 9.202664624 CORE 100 O O 0.0000 100 O -11.891102623 10.771332472 5.356984106 CORE 101 O O 0.0000 101 O -2.137616748 17.861879856 9.197447519 CORE 102 O O 0.0000 102 O 0.629640853 13.318741970 5.398457284 CORE 103 O O 0.0000 103 O -9.153111574 6.088373328 8.815736464 CORE 104 O O 0.0000 104 O -2.076111708 6.103785569 5.507617501 CORE 105 O O 0.0000 105 O -11.726595690 13.337695193 9.186894559 CORE 106 O O 0.0000 106 O -9.131117543 17.826642301 5.267873014 CORE 107 O O 0.0000 107 O 0.578406828 10.722596809 9.150177413 CORE 108 O O 0.0000 108 O2 12.360956271 6.426640595 4.448693427 CORE 109 O2 O2 0.0000 109 O2 13.064743915 7.933681874 3.096311296 CORE 110 O2 O2 0.0000 110 H 12.397567894 5.898004042 3.609179292 CORE 111 H H 0.0000 111 H 13.002794519 8.672825251 3.748128382 CORE 112 H H 0.0000 112 C 13.415566296 5.951264924 5.424147312 CORE 113 C C 0.0000 113 C 12.877711800 4.626686301 5.758099574 CORE 114 C C 0.0000 114 H 13.132527685 3.751242035 5.122218315 CORE 115 H H 0.0000 115 H 12.205814895 4.482586604 6.616019294 CORE 116 H H 0.0000 116 H 14.390523469 6.003101342 4.886921616 CORE 117 H H 0.0000 117 H 13.349158128 6.712211750 6.226161671 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.347714666 4.744705408 3.512542609 CORE 1 Si Si 0.0000 1 Si -2.541972302 12.011595382 7.331783027 CORE 2 Si Si 0.0000 2 Si 1.114697896 4.750049961 3.502654291 CORE 3 Si Si 0.0000 3 Si -8.590504916 12.056620691 7.337949513 CORE 4 Si Si 0.0000 4 Si -13.624252776 7.696080383 11.099884081 CORE 5 Si Si 0.0000 5 Si -3.967542025 14.855809588 7.314089857 CORE 6 Si Si 0.0000 6 Si -7.170433749 9.237995678 7.284808081 CORE 7 Si Si 0.0000 7 Si 2.470615971 16.330252218 3.531536080 CORE 8 Si Si 0.0000 8 Si -13.601750689 16.325777306 3.471794322 CORE 9 Si Si 0.0000 9 Si -3.929374094 9.099698346 7.369768752 CORE 10 Si Si 0.0000 10 Si -7.190015282 14.972200693 7.290867762 CORE 11 Si Si 0.0000 11 Si 2.415495122 7.689362105 3.489910605 CORE 12 Si Si 0.0000 12 Si -10.181777430 4.558759861 5.780764593 CORE 13 Si Si 0.0000 13 Si -0.252663381 12.063051827 9.552173341 CORE 14 Si Si 0.0000 14 Si -10.843738175 12.022728752 9.588978654 CORE 15 Si Si 0.0000 15 Si -1.195788317 4.749933346 5.748162495 CORE 16 Si Si 0.0000 16 Si -10.019084873 4.700998471 8.869277274 CORE 17 Si Si 0.0000 17 Si -0.252582169 11.985160333 5.077815522 CORE 18 Si Si 0.0000 18 Si -10.926091425 12.041697830 5.097221608 CORE 19 Si Si 0.0000 19 Si -1.165167719 4.719441556 8.870847784 CORE 20 Si Si 0.0000 20 Ti -9.046008087 7.664993697 5.003056053 CORE 21 Ti Ti 0.0000 21 Si 0.746450527 14.937626504 8.890365316 CORE 22 Si Si 0.0000 22 Si -2.218028029 16.269172636 5.098825590 CORE 23 Si Si 0.0000 23 Si -11.952102108 9.152722971 8.774785978 CORE 24 Si Si 0.0000 24 Si 0.729259360 9.080594058 5.740050691 CORE 25 Si Si 0.0000 25 Si -8.965513476 16.305010998 9.556568638 CORE 26 Si Si 0.0000 26 Si -11.789965335 14.948004685 5.739588705 CORE 27 Si Si 0.0000 27 Si -2.185054783 7.662018927 9.560343263 CORE 28 Si Si 0.0000 28 Si -12.039561325 9.201941960 5.750526285 CORE 29 Si Si 0.0000 29 Si -2.167726403 16.260755148 9.536545683 CORE 30 Si Si 0.0000 30 Si 0.670272279 14.908871979 5.759946835 CORE 31 Si Si 0.0000 31 Si -9.136204650 7.692970547 9.197131895 CORE 32 Si Si 0.0000 32 Si -2.161487894 7.694873869 5.119693023 CORE 33 Si Si 0.0000 33 Si -11.844192082 14.934596958 8.857658011 CORE 34 Si Si 0.0000 34 Si -8.905125584 16.226434515 5.045910321 CORE 35 Si Si 0.0000 35 Si 0.656452567 9.118373220 8.873364099 CORE 36 Si Si 0.0000 36 O -15.229686400 7.741707075 3.370220479 CORE 37 O O 0.0000 37 O -5.576072098 14.965645013 7.397518282 CORE 38 O O 0.0000 38 O -15.187817356 16.039192219 3.615754590 CORE 39 O O 0.0000 39 O -5.549240177 9.059222042 7.327659459 CORE 40 O O 0.0000 40 O -10.526226589 4.318809344 7.359050639 CORE 41 O O 0.0000 41 O -0.688413165 11.985208190 3.510238154 CORE 42 O O 0.0000 42 O -10.413339727 12.080002410 3.548152220 CORE 43 O O 0.0000 43 O -0.724881993 4.688911279 7.304385863 CORE 44 O O 0.0000 44 O -13.152544338 6.143173128 3.606748026 CORE 45 O O 0.0000 45 O -3.545031344 13.284835617 7.245917021 CORE 46 O O 0.0000 46 O -7.530451759 10.830483505 7.356937202 CORE 47 O O 0.0000 47 O 2.175037989 17.935100254 3.559345555 CORE 48 O O 0.0000 48 O -3.402788251 10.641536666 7.425880269 CORE 49 O O 0.0000 49 O -13.393624418 17.934192269 3.285888469 CORE 50 O O 0.0000 50 O 1.929535702 6.139749483 3.476832354 CORE 51 O O 0.0000 51 O -7.776798113 13.457393760 7.281198685 CORE 52 O O 0.0000 52 O -11.565188862 4.459503415 4.921134085 CORE 53 O O 0.0000 53 O -1.612299506 12.193861422 8.663349453 CORE 54 O O 0.0000 54 O 0.134626096 4.729429098 4.811908751 CORE 55 O O 0.0000 55 O -9.474044650 11.994526599 8.707310952 CORE 56 O O 0.0000 56 O -1.597796805 11.960485612 5.999038850 CORE 57 O O 0.0000 57 O -11.296770922 4.843677019 9.871415071 CORE 58 O O 0.0000 58 O -9.606005760 11.970083955 6.060449935 CORE 59 O O 0.0000 59 O 0.193794654 4.623264386 9.764035627 CORE 60 O O 0.0000 60 O -10.584031862 8.475678875 5.550706984 CORE 61 O O 0.0000 61 O -0.717113156 15.600867189 9.191885274 CORE 62 O O 0.0000 62 O -10.507525302 8.401975295 8.657398708 CORE 63 O O 0.0000 63 O -0.811141888 15.559835484 5.520590620 CORE 64 O O 0.0000 64 O -0.716744237 8.403412012 5.390883311 CORE 65 O O 0.0000 65 O -10.415594804 15.661646944 9.192645006 CORE 66 O O 0.0000 66 O -10.248259497 15.435776025 5.520150771 CORE 67 O O 0.0000 67 O -0.793257918 8.435263257 9.186281341 CORE 68 O O 0.0000 68 O -12.586652056 9.137556501 7.283380435 CORE 69 O O 0.0000 69 O -2.489093829 16.047923804 3.510123133 CORE 70 O O 0.0000 70 O -9.136424808 7.807116701 3.201949752 CORE 71 O O 0.0000 71 O 1.101250374 15.097096928 7.313333852 CORE 72 O O 0.0000 72 O -2.508428262 7.820821948 3.536784451 CORE 73 O O 0.0000 73 O -12.203869463 15.170170440 7.289882475 CORE 74 O O 0.0000 74 O 1.045363206 8.865271125 7.316871664 CORE 75 O O 0.0000 75 O -8.577597974 15.927120202 3.481776208 CORE 76 O O 0.0000 76 O -13.174640943 8.506005760 4.823148946 CORE 77 O O 0.0000 77 O -3.325530961 15.554333089 8.644878522 CORE 78 O O 0.0000 78 O 1.752581771 15.663327270 4.826142006 CORE 79 O O 0.0000 79 O -7.864549077 8.421714986 8.512237793 CORE 80 O O 0.0000 80 O -3.334430416 8.385332179 6.014047585 CORE 81 O O 0.0000 81 O -13.036400526 15.579126876 9.747601680 CORE 82 O O 0.0000 82 O -7.611663036 15.737513312 5.906243355 CORE 83 O O 0.0000 83 O 1.801354417 8.469077212 9.808459873 CORE 84 O O 0.0000 84 O -7.751948766 8.621959090 5.885384822 CORE 85 O O 0.0000 85 O 1.890669002 15.694218205 9.754949263 CORE 86 O O 0.0000 86 O -3.431203807 15.615570080 5.963239972 CORE 87 O O 0.0000 87 O -12.967332566 8.370991242 9.770605981 CORE 88 O O 0.0000 88 O 1.917047136 8.387414100 4.880258531 CORE 89 O O 0.0000 89 O -7.797064560 15.764050561 8.576959311 CORE 90 O O 0.0000 90 O -12.803300203 15.780487402 4.784043439 CORE 91 O O 0.0000 91 O -3.395895619 8.291112387 8.683470542 CORE 92 O O 0.0000 92 O -9.432876300 5.974531325 5.542240075 CORE 93 O O 0.0000 93 O 0.712557198 13.354538818 9.298954875 CORE 94 O O 0.0000 94 O -2.141729888 17.877803821 5.395764101 CORE 95 O O 0.0000 95 O -11.729778933 10.681378145 9.318715154 CORE 96 O O 0.0000 96 O 0.664798356 10.674550171 5.392099172 CORE 97 O O 0.0000 97 O -9.022098067 17.933541876 9.425387582 CORE 98 O O 0.0000 98 O -11.848420304 13.361261276 5.387549296 CORE 99 O O 0.0000 99 O -2.003827598 6.075417935 9.202464326 CORE 100 O O 0.0000 100 O -11.891151120 10.772089534 5.357447462 CORE 101 O O 0.0000 101 O -2.137542849 17.861545002 9.197095381 CORE 102 O O 0.0000 102 O 0.630347320 13.318622905 5.398510458 CORE 103 O O 0.0000 103 O -9.153482609 6.088197468 8.814878294 CORE 104 O O 0.0000 104 O -2.075833432 6.103782686 5.507716395 CORE 105 O O 0.0000 105 O -11.726575675 13.337719554 9.186619330 CORE 106 O O 0.0000 106 O -9.130469578 17.825851220 5.266990881 CORE 107 O O 0.0000 107 O 0.578759773 10.722500807 9.150260941 CORE 108 O O 0.0000 108 O2 12.359909559 6.427667213 4.447698707 CORE 109 O2 O2 0.0000 109 O2 13.064924429 7.935439320 3.096853615 CORE 110 O2 O2 0.0000 110 H 12.389896434 5.894322517 3.611424182 CORE 111 H H 0.0000 111 H 12.999016042 8.676136029 3.747194520 CORE 112 H H 0.0000 112 C 13.412732150 5.951731673 5.424079608 CORE 113 C C 0.0000 113 C 12.876040218 4.628572182 5.757748958 CORE 114 C C 0.0000 114 H 13.128779807 3.753321649 5.119588196 CORE 115 H H 0.0000 115 H 12.201768919 4.482744734 6.615510448 CORE 116 H H 0.0000 116 H 14.388925593 6.003944892 4.888397264 CORE 117 H H 0.0000 117 H 13.345348859 6.712280076 6.226458961 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.349995916 4.751679548 3.519121710 CORE 1 Si Si 0.0000 1 Si -2.547304970 12.010672118 7.332754316 CORE 2 Si Si 0.0000 2 Si 1.112901031 4.751063029 3.502350611 CORE 3 Si Si 0.0000 3 Si -8.594903260 12.057014646 7.335689409 CORE 4 Si Si 0.0000 4 Si -13.630468192 7.700108150 11.093781343 CORE 5 Si Si 0.0000 5 Si -3.968642429 14.857141221 7.314760814 CORE 6 Si Si 0.0000 6 Si -7.172521014 9.239061360 7.282533676 CORE 7 Si Si 0.0000 7 Si 2.467194288 16.328361437 3.531731433 CORE 8 Si Si 0.0000 8 Si -13.601313260 16.325608365 3.477279734 CORE 9 Si Si 0.0000 9 Si -3.930405603 9.100204880 7.367976415 CORE 10 Si Si 0.0000 10 Si -7.192213973 14.967410530 7.288189870 CORE 11 Si Si 0.0000 11 Si 2.411870794 7.689472089 3.488340552 CORE 12 Si Si 0.0000 12 Si -10.183625485 4.564938019 5.783466372 CORE 13 Si Si 0.0000 13 Si -0.259076631 12.064167528 9.553395288 CORE 14 Si Si 0.0000 14 Si -10.843371374 12.021861993 9.587231961 CORE 15 Si Si 0.0000 15 Si -1.198375171 4.750051547 5.747898296 CORE 16 Si Si 0.0000 16 Si -10.014572986 4.703795940 8.872687057 CORE 17 Si Si 0.0000 17 Si -0.258062058 11.986105507 5.079664836 CORE 18 Si Si 0.0000 18 Si -10.926738042 12.038912181 5.095058192 CORE 19 Si Si 0.0000 19 Si -1.166868553 4.719175316 8.871728395 CORE 20 Si Si 0.0000 20 Ti -9.048659025 7.665855554 4.998523217 CORE 21 Ti Ti 0.0000 21 Si 0.743712218 14.937118385 8.889825204 CORE 22 Si Si 0.0000 22 Si -2.218800698 16.269670377 5.099386927 CORE 23 Si Si 0.0000 23 Si -11.947588682 9.150869524 8.775819342 CORE 24 Si Si 0.0000 24 Si 0.728833863 9.081161710 5.738169122 CORE 25 Si Si 0.0000 25 Si -8.964299914 16.304565438 9.558395131 CORE 26 Si Si 0.0000 26 Si -11.790159513 14.942098678 5.742687124 CORE 27 Si Si 0.0000 27 Si -2.190264286 7.660399863 9.557172043 CORE 28 Si Si 0.0000 28 Si -12.040822614 9.195207105 5.749551649 CORE 29 Si Si 0.0000 29 Si -2.168190582 16.261341396 9.537971275 CORE 30 Si Si 0.0000 30 Si 0.667316699 14.909362080 5.762480266 CORE 31 Si Si 0.0000 31 Si -9.136537581 7.694152556 9.192538734 CORE 32 Si Si 0.0000 32 Si -2.162871193 7.694982268 5.117629718 CORE 33 Si Si 0.0000 33 Si -11.846429262 14.933666487 8.858590960 CORE 34 Si Si 0.0000 34 Si -8.910830056 16.230482607 5.051900168 CORE 35 Si Si 0.0000 35 Si 0.650288535 9.119609572 8.871771909 CORE 36 Si Si 0.0000 36 O -15.236563059 7.748073922 3.367365262 CORE 37 O O 0.0000 37 O -5.578205358 14.967518785 7.396469247 CORE 38 O O 0.0000 38 O -15.187858347 16.041574399 3.619262430 CORE 39 O O 0.0000 39 O -5.551657101 9.059263556 7.322744436 CORE 40 O O 0.0000 40 O -10.524619476 4.318365082 7.366088685 CORE 41 O O 0.0000 41 O -0.697908431 11.979512205 3.511910297 CORE 42 O O 0.0000 42 O -10.412828014 12.083130553 3.550229598 CORE 43 O O 0.0000 43 O -0.729306894 4.688570947 7.304053808 CORE 44 O O 0.0000 44 O -13.163665962 6.143831882 3.602755073 CORE 45 O O 0.0000 45 O -3.545654291 13.286187287 7.247153498 CORE 46 O O 0.0000 46 O -7.530925945 10.832715340 7.346260093 CORE 47 O O 0.0000 47 O 2.171920948 17.935543075 3.557806386 CORE 48 O O 0.0000 48 O -3.410136017 10.643347446 7.427740690 CORE 49 O O 0.0000 49 O -13.391122047 17.935563400 3.292487273 CORE 50 O O 0.0000 50 O 1.929373085 6.141111387 3.477311000 CORE 51 O O 0.0000 51 O -7.777030587 13.455763742 7.281637317 CORE 52 O O 0.0000 52 O -11.569257548 4.467880541 4.927107957 CORE 53 O O 0.0000 53 O -1.618706020 12.191420429 8.664648005 CORE 54 O O 0.0000 54 O 0.134253137 4.730318631 4.813031956 CORE 55 O O 0.0000 55 O -9.473367049 11.996826471 8.704764208 CORE 56 O O 0.0000 56 O -1.602147230 11.957597330 6.001567109 CORE 57 O O 0.0000 57 O -11.290520673 4.842827126 9.877006451 CORE 58 O O 0.0000 58 O -9.609762875 11.970703501 6.057358971 CORE 59 O O 0.0000 59 O 0.193732879 4.624849143 9.763742673 CORE 60 O O 0.0000 60 O -10.588116905 8.478543516 5.547674367 CORE 61 O O 0.0000 61 O -0.716769448 15.601510663 9.191114510 CORE 62 O O 0.0000 62 O -10.506126608 8.404113145 8.658217625 CORE 63 O O 0.0000 63 O -0.811007176 15.560764514 5.522153980 CORE 64 O O 0.0000 64 O -0.718242811 8.402225679 5.389980714 CORE 65 O O 0.0000 65 O -10.419430053 15.664769321 9.193726905 CORE 66 O O 0.0000 66 O -10.251917119 15.438157628 5.524630129 CORE 67 O O 0.0000 67 O -0.802994318 8.438812598 9.178612582 CORE 68 O O 0.0000 68 O -12.590540420 9.137777623 7.282715336 CORE 69 O O 0.0000 69 O -2.492454507 16.044095537 3.511072666 CORE 70 O O 0.0000 70 O -9.126731515 7.816044759 3.204640120 CORE 71 O O 0.0000 71 O 1.098522457 15.094431210 7.314210507 CORE 72 O O 0.0000 72 O -2.506693750 7.823398006 3.534743435 CORE 73 O O 0.0000 73 O -12.204804748 15.168842410 7.293459921 CORE 74 O O 0.0000 74 O 1.045662844 8.867606169 7.315672462 CORE 75 O O 0.0000 75 O -8.582672572 15.931729171 3.486662172 CORE 76 O O 0.0000 76 O -13.177066912 8.499846197 4.824943641 CORE 77 O O 0.0000 77 O -3.330110012 15.556128301 8.645589264 CORE 78 O O 0.0000 78 O 1.747622063 15.663306225 4.827885961 CORE 79 O O 0.0000 79 O -7.868434939 8.423916549 8.506190056 CORE 80 O O 0.0000 80 O -3.333008627 8.387897859 6.011634272 CORE 81 O O 0.0000 81 O -13.035399809 15.583802153 9.749023317 CORE 82 O O 0.0000 82 O -7.610873817 15.740048720 5.907022790 CORE 83 O O 0.0000 83 O 1.788493854 8.465968529 9.813155199 CORE 84 O O 0.0000 84 O -7.749838022 8.621591514 5.883283709 CORE 85 O O 0.0000 85 O 1.887461511 15.690159446 9.755295924 CORE 86 O O 0.0000 86 O -3.433983107 15.617995937 5.965555076 CORE 87 O O 0.0000 87 O -12.969061497 8.377317007 9.771463466 CORE 88 O O 0.0000 88 O 1.915957125 8.386214794 4.878130412 CORE 89 O O 0.0000 89 O -7.798042761 15.756954329 8.576818501 CORE 90 O O 0.0000 90 O -12.805071858 15.770701667 4.785032149 CORE 91 O O 0.0000 91 O -3.401830257 8.287634687 8.681683075 CORE 92 O O 0.0000 92 O -9.443541251 5.978680032 5.548774903 CORE 93 O O 0.0000 93 O 0.704898440 13.355702087 9.302693442 CORE 94 O O 0.0000 94 O -2.143317949 17.879735973 5.395085005 CORE 95 O O 0.0000 95 O -11.730760790 10.679815587 9.315875380 CORE 96 O O 0.0000 96 O 0.662553863 10.676480016 5.392481054 CORE 97 O O 0.0000 97 O -9.014047490 17.938000500 9.417666409 CORE 98 O O 0.0000 98 O -11.849631172 13.355360314 5.389537518 CORE 99 O O 0.0000 99 O -2.004895478 6.075989768 9.204482521 CORE 100 O O 0.0000 100 O -11.891984987 10.767367985 5.351153403 CORE 101 O O 0.0000 101 O -2.138370750 17.863243347 9.200178586 CORE 102 O O 0.0000 102 O 0.623172371 13.320192093 5.397422474 CORE 103 O O 0.0000 103 O -9.149630810 6.090540296 8.820088172 CORE 104 O O 0.0000 104 O -2.078461662 6.105383443 5.505997316 CORE 105 O O 0.0000 105 O -11.726918421 13.340670395 9.188699143 CORE 106 O O 0.0000 106 O -9.137044867 17.828608760 5.274780291 CORE 107 O O 0.0000 107 O 0.574403766 10.725016323 9.149541754 CORE 108 O O 0.0000 108 O2 12.374203072 6.414347848 4.454197629 CORE 109 O2 O2 0.0000 109 O2 13.065179612 7.911885921 3.095258305 CORE 110 O2 O2 0.0000 110 H 12.462341429 5.932693260 3.597919394 CORE 111 H H 0.0000 111 H 13.032192125 8.644495384 3.756653333 CORE 112 H H 0.0000 112 C 13.428061790 5.941855269 5.417089184 CORE 113 C C 0.0000 113 C 12.905217089 4.619249016 5.752522267 CORE 114 C C 0.0000 114 H 13.157896251 3.739024100 5.145301578 CORE 115 H H 0.0000 115 H 12.233409479 4.482444042 6.621161241 CORE 116 H H 0.0000 116 H 14.401336988 5.995566324 4.876746050 CORE 117 H H 0.0000 117 H 13.382494326 6.710272535 6.227163617 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.353328689 4.761868031 3.528733201 CORE 1 Si Si 0.0000 1 Si -2.555095360 12.009323475 7.334173214 CORE 2 Si Si 0.0000 2 Si 1.110276265 4.752543135 3.501907035 CORE 3 Si Si 0.0000 3 Si -8.601328827 12.057590226 7.332387724 CORE 4 Si Si 0.0000 4 Si -13.639548353 7.705992247 11.084865761 CORE 5 Si Si 0.0000 5 Si -3.970250119 14.859086491 7.315740927 CORE 6 Si Si 0.0000 6 Si -7.175570122 9.240618007 7.279210995 CORE 7 Si Si 0.0000 7 Si 2.462195321 16.325599284 3.532016932 CORE 8 Si Si 0.0000 8 Si -13.600673955 16.325361441 3.485293481 CORE 9 Si Si 0.0000 9 Si -3.931912452 9.100944645 7.365357935 CORE 10 Si Si 0.0000 10 Si -7.195426275 14.960412462 7.284277858 CORE 11 Si Si 0.0000 11 Si 2.406575846 7.689632958 3.486046824 CORE 12 Si Si 0.0000 12 Si -10.186325497 4.573963810 5.787413452 CORE 13 Si Si 0.0000 13 Si -0.268446038 12.065797259 9.555180473 CORE 14 Si Si 0.0000 14 Si -10.842835413 12.020595802 9.584680272 CORE 15 Si Si 0.0000 15 Si -1.202154418 4.750224091 5.747512230 CORE 16 Si Si 0.0000 16 Si -10.007981916 4.707882808 8.877668491 CORE 17 Si Si 0.0000 17 Si -0.266067603 11.987486584 5.082366539 CORE 18 Si Si 0.0000 18 Si -10.927682565 12.034842612 5.091897622 CORE 19 Si Si 0.0000 19 Si -1.169353411 4.718786262 8.873014928 CORE 20 Si Si 0.0000 20 Ti -9.052531800 7.667114826 4.991901210 CORE 21 Ti Ti 0.0000 21 Si 0.739711466 14.936376026 8.889036183 CORE 22 Si Si 0.0000 22 Si -2.219929584 16.270397457 5.100207061 CORE 23 Si Si 0.0000 23 Si -11.940994918 9.148161570 8.777328994 CORE 24 Si Si 0.0000 24 Si 0.728212071 9.081990990 5.735420406 CORE 25 Si Si 0.0000 25 Si -8.962527106 16.303914613 9.561063439 CORE 26 Si Si 0.0000 26 Si -11.790443370 14.933470590 5.747213647 CORE 27 Si Si 0.0000 27 Si -2.197875125 7.658034692 9.552539172 CORE 28 Si Si 0.0000 28 Si -12.042665473 9.185367891 5.748127806 CORE 29 Si Si 0.0000 29 Si -2.168868375 16.262198064 9.540053903 CORE 30 Si Si 0.0000 30 Si 0.662998990 14.910078205 5.766181405 CORE 31 Si Si 0.0000 31 Si -9.137024083 7.695879153 9.185828484 CORE 32 Si Si 0.0000 32 Si -2.164891872 7.695140686 5.114615358 CORE 33 Si Si 0.0000 33 Si -11.849697566 14.932307321 8.859953869 CORE 34 Si Si 0.0000 34 Si -8.919163721 16.236396542 5.060650749 CORE 35 Si Si 0.0000 35 Si 0.641283812 9.121415883 8.869445850 CORE 36 Si Si 0.0000 36 O -15.246609105 7.757375177 3.363193997 CORE 37 O O 0.0000 37 O -5.581322015 14.970256145 7.394936697 CORE 38 O O 0.0000 38 O -15.187918197 16.045054550 3.624387032 CORE 39 O O 0.0000 39 O -5.555188286 9.059324098 7.315564136 CORE 40 O O 0.0000 40 O -10.522271447 4.317715986 7.376370523 CORE 41 O O 0.0000 41 O -0.711780295 11.971191152 3.514353126 CORE 42 O O 0.0000 42 O -10.412080747 12.087700602 3.553264421 CORE 43 O O 0.0000 43 O -0.735771335 4.688073782 7.303568619 CORE 44 O O 0.0000 44 O -13.179913375 6.144793921 3.596921859 CORE 45 O O 0.0000 45 O -3.546564366 13.288162106 7.248959908 CORE 46 O O 0.0000 46 O -7.531618941 10.835975810 7.330661951 CORE 47 O O 0.0000 47 O 2.167367107 17.936190153 3.555557693 CORE 48 O O 0.0000 48 O -3.420870633 10.645992839 7.430458597 CORE 49 O O 0.0000 49 O -13.387466158 17.937566616 3.302127443 CORE 50 O O 0.0000 50 O 1.929135415 6.143100910 3.478010179 CORE 51 O O 0.0000 51 O -7.777370253 13.453382426 7.282278225 CORE 52 O O 0.0000 52 O -11.575201808 4.480118656 4.935835108 CORE 53 O O 0.0000 53 O -1.628065228 12.187854367 8.666545093 CORE 54 O O 0.0000 54 O 0.133708323 4.731618120 4.814672833 CORE 55 O O 0.0000 55 O -9.472377109 12.000186259 8.701043746 CORE 56 O O 0.0000 56 O -1.608502554 11.953377991 6.005260641 CORE 57 O O 0.0000 57 O -11.281389514 4.841585440 9.885174853 CORE 58 O O 0.0000 58 O -9.615252001 11.971608747 6.052843251 CORE 59 O O 0.0000 59 O 0.193642429 4.627164294 9.763314691 CORE 60 O O 0.0000 60 O -10.594084644 8.482728692 5.543244076 CORE 61 O O 0.0000 61 O -0.716267357 15.602450936 9.189988414 CORE 62 O O 0.0000 62 O -10.504082835 8.407236387 8.659413936 CORE 63 O O 0.0000 63 O -0.810810497 15.562121662 5.524437894 CORE 64 O O 0.0000 64 O -0.720432265 8.400492739 5.388662155 CORE 65 O O 0.0000 65 O -10.425033107 15.669330866 9.195307380 CORE 66 O O 0.0000 66 O -10.257260371 15.441636914 5.531173933 CORE 67 O O 0.0000 67 O -0.817218166 8.443998013 9.167409205 CORE 68 O O 0.0000 68 O -12.596221029 9.138100802 7.281743590 CORE 69 O O 0.0000 69 O -2.497364179 16.038502762 3.512459842 CORE 70 O O 0.0000 70 O -9.112570597 7.829087793 3.208570617 CORE 71 O O 0.0000 71 O 1.094537101 15.090536924 7.315491259 CORE 72 O O 0.0000 72 O -2.504160011 7.827161407 3.531761634 CORE 73 O O 0.0000 73 O -12.206170920 15.166902330 7.298686232 CORE 74 O O 0.0000 74 O 1.046100658 8.871017562 7.313920520 CORE 75 O O 0.0000 75 O -8.590086347 15.938462585 3.493800099 CORE 76 O O 0.0000 76 O -13.180611183 8.490847795 4.827565545 CORE 77 O O 0.0000 77 O -3.336799613 15.558751207 8.646627497 CORE 78 O O 0.0000 78 O 1.740376293 15.663275521 4.830433694 CORE 79 O O 0.0000 79 O -7.874111699 8.427132910 8.497354882 CORE 80 O O 0.0000 80 O -3.330931562 8.391645980 6.008108707 CORE 81 O O 0.0000 81 O -13.033937607 15.590632146 9.751100163 CORE 82 O O 0.0000 82 O -7.609721068 15.743752876 5.908161515 CORE 83 O O 0.0000 83 O 1.769705774 8.461426876 9.820014627 CORE 84 O O 0.0000 84 O -7.746754659 8.621054421 5.880214273 CORE 85 O O 0.0000 85 O 1.882775460 15.684229942 9.755802336 CORE 86 O O 0.0000 86 O -3.438043517 15.621539945 5.968937245 CORE 87 O O 0.0000 87 O -12.971587346 8.386558297 9.772716147 CORE 88 O O 0.0000 88 O 1.914364830 8.384462970 4.875021342 CORE 89 O O 0.0000 89 O -7.799471669 15.746587535 8.576612802 CORE 90 O O 0.0000 90 O -12.807660059 15.756405415 4.786476531 CORE 91 O O 0.0000 91 O -3.410500316 8.282554067 8.679071745 CORE 92 O O 0.0000 92 O -9.459122033 5.984740998 5.558321580 CORE 93 O O 0.0000 93 O 0.693709460 13.357401297 9.308155119 CORE 94 O O 0.0000 94 O -2.145637688 17.882558523 5.394092871 CORE 95 O O 0.0000 95 O -11.732195087 10.677532725 9.311726632 CORE 96 O O 0.0000 96 O 0.659274782 10.679299107 5.393038815 CORE 97 O O 0.0000 97 O -9.002286176 17.944514233 9.406386504 CORE 98 O O 0.0000 98 O -11.851400324 13.346739578 5.392442029 CORE 99 O O 0.0000 99 O -2.006455635 6.076825246 9.207430850 CORE 100 O O 0.0000 100 O -11.893202975 10.760470099 5.341958331 CORE 101 O O 0.0000 101 O -2.139579886 17.865724556 9.204682895 CORE 102 O O 0.0000 102 O 0.612690628 13.322484470 5.395833098 CORE 103 O O 0.0000 103 O -9.144003508 6.093963076 8.827699345 CORE 104 O O 0.0000 104 O -2.082301144 6.107721802 5.503485869 CORE 105 O O 0.0000 105 O -11.727418972 13.344981123 9.191737618 CORE 106 O O 0.0000 106 O -9.146650982 17.832637248 5.286159927 CORE 107 O O 0.0000 107 O 0.568040360 10.728691217 9.148491045 CORE 108 O O 0.0000 108 O2 12.395084383 6.394889389 4.463691892 CORE 109 O2 O2 0.0000 109 O2 13.065552379 7.877476637 3.092927606 CORE 110 O2 O2 0.0000 110 H 12.568176893 5.988749161 3.578190077 CORE 111 H H 0.0000 111 H 13.080659167 8.598271490 3.770471767 CORE 112 H H 0.0000 112 C 13.450456686 5.927426690 5.406876724 CORE 113 C C 0.0000 113 C 12.947841867 4.605628959 5.744886523 CORE 114 C C 0.0000 114 H 13.200432311 3.718136564 5.182866320 CORE 115 H H 0.0000 115 H 12.279633182 4.482004825 6.629416592 CORE 116 H H 0.0000 116 H 14.419469021 5.983326191 4.859724750 CORE 117 H H 0.0000 117 H 13.436760139 6.707339712 6.228193178 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.350938130 4.754559469 3.521838628 CORE 1 Si Si 0.0000 1 Si -2.549506932 12.010290992 7.333155369 CORE 2 Si Si 0.0000 2 Si 1.112159153 4.751481345 3.502225244 CORE 3 Si Si 0.0000 3 Si -8.596719562 12.057177388 7.334756155 CORE 4 Si Si 0.0000 4 Si -13.633034839 7.701771323 11.091261148 CORE 5 Si Si 0.0000 5 Si -3.969096793 14.857691000 7.315037868 CORE 6 Si Si 0.0000 6 Si -7.173382978 9.239501297 7.281594412 CORE 7 Si Si 0.0000 7 Si 2.465781160 16.327580734 3.531812146 CORE 8 Si Si 0.0000 8 Si -13.601132553 16.325538454 3.479545012 CORE 9 Si Si 0.0000 9 Si -3.930831485 9.100414038 7.367236233 CORE 10 Si Si 0.0000 10 Si -7.193122124 14.965432396 7.287084085 CORE 11 Si Si 0.0000 11 Si 2.410373952 7.689517640 3.487692113 CORE 12 Si Si 0.0000 12 Si -10.184388724 4.567489429 5.784582122 CORE 13 Si Si 0.0000 13 Si -0.261725067 12.064628223 9.553899951 CORE 14 Si Si 0.0000 14 Si -10.843219919 12.021504075 9.586510721 CORE 15 Si Si 0.0000 15 Si -1.199443437 4.750100269 5.747789133 CORE 16 Si Si 0.0000 16 Si -10.012709920 4.704951282 8.874095229 CORE 17 Si Si 0.0000 17 Si -0.260325026 11.986495859 5.080428525 CORE 18 Si Si 0.0000 18 Si -10.927005157 12.037761741 5.094164800 CORE 19 Si Si 0.0000 19 Si -1.167570980 4.719065331 8.872092097 CORE 20 Si Si 0.0000 20 Ti -9.049753656 7.666211598 4.996651385 CORE 21 Ti Ti 0.0000 21 Si 0.742581215 14.936908506 8.889602160 CORE 22 Si Si 0.0000 22 Si -2.219119773 16.269875932 5.099618795 CORE 23 Si Si 0.0000 23 Si -11.945724653 9.150104101 8.776246031 CORE 24 Si Si 0.0000 24 Si 0.728658160 9.081396094 5.737392121 CORE 25 Si Si 0.0000 25 Si -8.963798786 16.304381506 9.559149387 CORE 26 Si Si 0.0000 26 Si -11.790239762 14.939659848 5.743966658 CORE 27 Si Si 0.0000 27 Si -2.192415635 7.659731307 9.555862460 CORE 28 Si Si 0.0000 28 Si -12.041343564 9.192425780 5.749149151 CORE 29 Si Si 0.0000 29 Si -2.168382065 16.261583563 9.538559998 CORE 30 Si Si 0.0000 30 Si 0.666096209 14.909564463 5.763526487 CORE 31 Si Si 0.0000 31 Si -9.136675179 7.694640639 9.190641874 CORE 32 Si Si 0.0000 32 Si -2.163442371 7.695027098 5.116777633 CORE 33 Si Si 0.0000 33 Si -11.847353001 14.933282334 8.858976189 CORE 34 Si Si 0.0000 34 Si -8.913185783 16.232154284 5.054373654 CORE 35 Si Si 0.0000 35 Si 0.647743249 9.120120286 8.871114417 CORE 36 Si Si 0.0000 36 O -15.239402787 7.750703170 3.366186143 CORE 37 O O 0.0000 37 O -5.579086374 14.968292568 7.396036016 CORE 38 O O 0.0000 38 O -15.187875282 16.042558061 3.620710996 CORE 39 O O 0.0000 39 O -5.552655317 9.059280566 7.320714754 CORE 40 O O 0.0000 40 O -10.523955731 4.318181582 7.368995098 CORE 41 O O 0.0000 41 O -0.701829703 11.977160152 3.512600804 CORE 42 O O 0.0000 42 O -10.412616901 12.084422402 3.551087464 CORE 43 O O 0.0000 43 O -0.731134165 4.688430403 7.303916650 CORE 44 O O 0.0000 44 O -13.168258677 6.144103744 3.601106209 CORE 45 O O 0.0000 45 O -3.545911591 13.286745570 7.247664171 CORE 46 O O 0.0000 46 O -7.531121854 10.833637018 7.341850950 CORE 47 O O 0.0000 47 O 2.170633679 17.935725998 3.557170727 CORE 48 O O 0.0000 48 O -3.413170499 10.644095283 7.428508943 CORE 49 O O 0.0000 49 O -13.390088615 17.936129611 3.295212254 CORE 50 O O 0.0000 50 O 1.929305922 6.141673851 3.477508636 CORE 51 O O 0.0000 51 O -7.777126617 13.455090573 7.281818521 CORE 52 O O 0.0000 52 O -11.570937983 4.471339935 4.929574901 CORE 53 O O 0.0000 53 O -1.621351570 12.190412407 8.665184238 CORE 54 O O 0.0000 54 O 0.134099180 4.730686063 4.813495845 CORE 55 O O 0.0000 55 O -9.473087233 11.997776114 8.703712586 CORE 56 O O 0.0000 56 O -1.603943710 11.956404654 6.002611123 CORE 57 O O 0.0000 57 O -11.287939593 4.842476127 9.879315394 CORE 58 O O 0.0000 58 O -9.611314564 11.970959363 6.056082480 CORE 59 O O 0.0000 59 O 0.193707283 4.625503572 9.763621643 CORE 60 O O 0.0000 60 O -10.589803883 8.479726534 5.546422067 CORE 61 O O 0.0000 61 O -0.716627423 15.601776470 9.190796225 CORE 62 O O 0.0000 62 O -10.505548886 8.404996048 8.658555766 CORE 63 O O 0.0000 63 O -0.810951560 15.561148091 5.522799604 CORE 64 O O 0.0000 64 O -0.718861716 8.401735866 5.389608037 CORE 65 O O 0.0000 65 O -10.421013880 15.666058720 9.194173677 CORE 66 O O 0.0000 66 O -10.253427432 15.439141146 5.526479824 CORE 67 O O 0.0000 67 O -0.807014892 8.440278433 9.175445697 CORE 68 O O 0.0000 68 O -12.592146186 9.137869013 7.282440639 CORE 69 O O 0.0000 69 O -2.493842232 16.042514528 3.511464742 CORE 70 O O 0.0000 70 O -9.122728646 7.819731617 3.205751154 CORE 71 O O 0.0000 71 O 1.097395881 15.093330356 7.314572535 CORE 72 O O 0.0000 72 O -2.505977660 7.824461814 3.533900555 CORE 73 O O 0.0000 73 O -12.205190794 15.168294073 7.294937243 CORE 74 O O 0.0000 74 O 1.045786587 8.868570515 7.315177233 CORE 75 O O 0.0000 75 O -8.584768305 15.933632494 3.488679910 CORE 76 O O 0.0000 76 O -13.178068784 8.497302572 4.825684812 CORE 77 O O 0.0000 77 O -3.332000982 15.556869795 8.645882751 CORE 78 O O 0.0000 78 O 1.745573864 15.663297576 4.828606136 CORE 79 O O 0.0000 79 O -7.870039550 8.424825831 8.503692606 CORE 80 O O 0.0000 80 O -3.332421476 8.388957343 6.010637650 CORE 81 O O 0.0000 81 O -13.034986435 15.585732720 9.749610366 CORE 82 O O 0.0000 82 O -7.610548007 15.741095807 5.907344652 CORE 83 O O 0.0000 83 O 1.783182932 8.464684752 9.815094127 CORE 84 O O 0.0000 84 O -7.748966436 8.621439583 5.882416030 CORE 85 O O 0.0000 85 O 1.886136907 15.688483300 9.755439092 CORE 86 O O 0.0000 86 O -3.435130853 15.618997762 5.966511151 CORE 87 O O 0.0000 87 O -12.969775471 8.379929246 9.771817582 CORE 88 O O 0.0000 88 O 1.915507187 8.385719648 4.877251550 CORE 89 O O 0.0000 89 O -7.798446704 15.754023956 8.576760382 CORE 90 O O 0.0000 90 O -12.805803536 15.766660494 4.785440428 CORE 91 O O 0.0000 91 O -3.404281052 8.286198546 8.680944946 CORE 92 O O 0.0000 92 O -9.447945561 5.980393368 5.551473487 CORE 93 O O 0.0000 93 O 0.701735597 13.356182386 9.304237327 CORE 94 O O 0.0000 94 O -2.143973611 17.880533829 5.394804527 CORE 95 O O 0.0000 95 O -11.731166273 10.679170239 9.314702651 CORE 96 O O 0.0000 96 O 0.661626853 10.677276863 5.392638676 CORE 97 O O 0.0000 97 O -9.010722799 17.939841839 9.414477920 CORE 98 O O 0.0000 98 O -11.850131338 13.352923502 5.390358565 CORE 99 O O 0.0000 99 O -2.005336564 6.076225881 9.205315891 CORE 100 O O 0.0000 100 O -11.892329272 10.765418103 5.348554169 CORE 101 O O 0.0000 101 O -2.138712533 17.863944768 9.201451806 CORE 102 O O 0.0000 102 O 0.620209478 13.320840036 5.396973192 CORE 103 O O 0.0000 103 O -9.148040055 6.091507813 8.822239645 CORE 104 O O 0.0000 104 O -2.079547055 6.106044503 5.505287410 CORE 105 O O 0.0000 105 O -11.727059869 13.341888873 9.189558074 CORE 106 O O 0.0000 106 O -9.139760275 17.829747525 5.277997003 CORE 107 O O 0.0000 107 O 0.572605170 10.726055194 9.149244768 CORE 108 O O 0.0000 108 O2 12.380105571 6.408847471 4.456881379 CORE 109 O2 O2 0.0000 109 O2 13.065284880 7.902159286 3.094599444 CORE 110 O2 O2 0.0000 110 H 12.492258254 5.948538664 3.592342467 CORE 111 H H 0.0000 111 H 13.045892328 8.631429142 3.760559411 CORE 112 H H 0.0000 112 C 13.434392096 5.937776619 5.414202397 CORE 113 C C 0.0000 113 C 12.917265916 4.615398983 5.750363795 CORE 114 C C 0.0000 114 H 13.169920060 3.733119678 5.155920036 CORE 115 H H 0.0000 115 H 12.246475574 4.482319931 6.623494830 CORE 116 H H 0.0000 116 H 14.406462392 5.992106354 4.871934638 CORE 117 H H 0.0000 117 H 13.397833781 6.709443543 6.227454669 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.352068555 4.762159209 3.525066902 CORE 1 Si Si 0.0000 1 Si -2.556806779 12.010369697 7.334918189 CORE 2 Si Si 0.0000 2 Si 1.109860198 4.752469475 3.502894451 CORE 3 Si Si 0.0000 3 Si -8.602572410 12.055977505 7.328529800 CORE 4 Si Si 0.0000 4 Si -13.637675088 7.705835703 11.084708291 CORE 5 Si Si 0.0000 5 Si -3.971353025 14.860137325 7.316000486 CORE 6 Si Si 0.0000 6 Si -7.173781533 9.241626607 7.269036419 CORE 7 Si Si 0.0000 7 Si 2.465119147 16.328210370 3.533334198 CORE 8 Si Si 0.0000 8 Si -13.600395679 16.328512936 3.481581540 CORE 9 Si Si 0.0000 9 Si -3.937725657 9.097817799 7.362888709 CORE 10 Si Si 0.0000 10 Si -7.194195778 14.959884738 7.283708306 CORE 11 Si Si 0.0000 11 Si 2.403287143 7.690288540 3.486461721 CORE 12 Si Si 0.0000 12 Si -10.188669484 4.570671915 5.792731125 CORE 13 Si Si 0.0000 13 Si -0.270180935 12.062217214 9.558586833 CORE 14 Si Si 0.0000 14 Si -10.844097856 12.019545256 9.585901306 CORE 15 Si Si 0.0000 15 Si -1.201385598 4.753568167 5.746090974 CORE 16 Si Si 0.0000 16 Si -10.007044321 4.710732602 8.878124848 CORE 17 Si Si 0.0000 17 Si -0.266311816 11.984258547 5.081150830 CORE 18 Si Si 0.0000 18 Si -10.928685207 12.034686356 5.091191672 CORE 19 Si Si 0.0000 19 Si -1.168065758 4.720614483 8.873841376 CORE 20 Si Si 0.0000 20 Ti -9.048646708 7.674169977 4.993108095 CORE 21 Ti Ti 0.0000 21 Si 0.740050748 14.934723520 8.890646860 CORE 22 Si Si 0.0000 22 Si -2.222067462 16.271421192 5.102011493 CORE 23 Si Si 0.0000 23 Si -11.948411579 9.149099249 8.774418549 CORE 24 Si Si 0.0000 24 Si 0.727411498 9.082847082 5.736001598 CORE 25 Si Si 0.0000 25 Si -8.963856712 16.310626116 9.561552202 CORE 26 Si Si 0.0000 26 Si -11.795470049 14.930693014 5.747395155 CORE 27 Si Si 0.0000 27 Si -2.198917410 7.659802660 9.551945580 CORE 28 Si Si 0.0000 28 Si -12.046172602 9.187194094 5.749295209 CORE 29 Si Si 0.0000 29 Si -2.171682700 16.261074002 9.537905777 CORE 30 Si Si 0.0000 30 Si 0.663481258 14.908970288 5.764704160 CORE 31 Si Si 0.0000 31 Si -9.136728294 7.693006440 9.196282549 CORE 32 Si Si 0.0000 32 Si -2.164735991 7.695928164 5.113284475 CORE 33 Si Si 0.0000 33 Si -11.851329119 14.934640635 8.863465208 CORE 34 Si Si 0.0000 34 Si -8.915859430 16.237912973 5.061399908 CORE 35 Si Si 0.0000 35 Si 0.638233741 9.122474934 8.866220010 CORE 36 Si Si 0.0000 36 O -15.242203448 7.761487703 3.362459216 CORE 37 O O 0.0000 37 O -5.582069666 14.971177679 7.394289627 CORE 38 O O 0.0000 38 O -15.191588328 16.046253568 3.625666946 CORE 39 O O 0.0000 39 O -5.552423227 9.060392951 7.313414716 CORE 40 O O 0.0000 40 O -10.522670964 4.320397128 7.378030418 CORE 41 O O 0.0000 41 O -0.715173496 11.971185962 3.515329360 CORE 42 O O 0.0000 42 O -10.413142470 12.088091097 3.547271988 CORE 43 O O 0.0000 43 O -0.738225016 4.687181942 7.304597648 CORE 44 O O 0.0000 44 O -13.182721734 6.146956277 3.594742316 CORE 45 O O 0.0000 45 O -3.548000780 13.289468803 7.249079493 CORE 46 O O 0.0000 46 O -7.531848144 10.836167959 7.326760590 CORE 47 O O 0.0000 47 O 2.165977073 17.934534475 3.554504778 CORE 48 O O 0.0000 48 O -3.423515220 10.646666296 7.430840175 CORE 49 O O 0.0000 49 O -13.385319043 17.938469988 3.307067569 CORE 50 O O 0.0000 50 O 1.926978100 6.140224881 3.478210097 CORE 51 O O 0.0000 51 O -7.776251182 13.451288829 7.280650889 CORE 52 O O 0.0000 52 O -11.575803392 4.483094868 4.939053646 CORE 53 O O 0.0000 53 O -1.629774914 12.186553725 8.666898753 CORE 54 O O 0.0000 54 O 0.132931613 4.731706771 4.814923263 CORE 55 O O 0.0000 55 O -9.475367906 12.000377975 8.703669834 CORE 56 O O 0.0000 56 O -1.610604252 11.952745761 6.006394268 CORE 57 O O 0.0000 57 O -11.281157232 4.840369845 9.889997372 CORE 58 O O 0.0000 58 O -9.614228961 11.972072036 6.050820035 CORE 59 O O 0.0000 59 O 0.192637286 4.627464986 9.762168588 CORE 60 O O 0.0000 60 O -10.593137811 8.484192077 5.540724337 CORE 61 O O 0.0000 61 O -0.719895149 15.605069806 9.190630691 CORE 62 O O 0.0000 62 O -10.500945972 8.404390485 8.662302853 CORE 63 O O 0.0000 63 O -0.814454455 15.564089130 5.524754507 CORE 64 O O 0.0000 64 O -0.719725027 8.400783484 5.388979376 CORE 65 O O 0.0000 65 O -10.423095949 15.670580480 9.195776669 CORE 66 O O 0.0000 66 O -10.255608418 15.442860149 5.531713969 CORE 67 O O 0.0000 67 O -0.818495812 8.447175887 9.168064567 CORE 68 O O 0.0000 68 O -12.593750797 9.137897266 7.285970616 CORE 69 O O 0.0000 69 O -2.498115102 16.037723501 3.512027448 CORE 70 O O 0.0000 70 O -9.110826462 7.833768548 3.207659729 CORE 71 O O 0.0000 71 O 1.093544274 15.090025777 7.315578285 CORE 72 O O 0.0000 72 O -2.504314352 7.827838612 3.530316110 CORE 73 O O 0.0000 73 O -12.206769233 15.165797295 7.298469578 CORE 74 O O 0.0000 74 O 1.045226378 8.872569741 7.314431954 CORE 75 O O 0.0000 75 O -8.592647220 15.940116244 3.495778356 CORE 76 O O 0.0000 76 O -13.184063850 8.486390613 4.824822839 CORE 77 O O 0.0000 77 O -3.335247540 15.559991019 8.650183567 CORE 78 O O 0.0000 78 O 1.739427536 15.662610569 4.830784767 CORE 79 O O 0.0000 79 O -7.874751966 8.429152127 8.495426072 CORE 80 O O 0.0000 80 O -3.331437309 8.394122577 6.009515586 CORE 81 O O 0.0000 81 O -13.032865300 15.589837461 9.750711967 CORE 82 O O 0.0000 82 O -7.612255769 15.742675951 5.907647951 CORE 83 O O 0.0000 83 O 1.761399821 8.461119842 9.818965439 CORE 84 O O 0.0000 84 O -7.745524546 8.619002915 5.878330346 CORE 85 O O 0.0000 85 O 1.882736009 15.683331183 9.756944180 CORE 86 O O 0.0000 86 O -3.435946630 15.624261593 5.968422845 CORE 87 O O 0.0000 87 O -12.968371388 8.383975320 9.774020404 CORE 88 O O 0.0000 88 O 1.912256011 8.385825596 4.875809982 CORE 89 O O 0.0000 89 O -7.800996801 15.743498600 8.577507715 CORE 90 O O 0.0000 90 O -12.807443365 15.754686313 4.786188370 CORE 91 O O 0.0000 91 O -3.415420766 8.282464984 8.676621993 CORE 92 O O 0.0000 92 O -9.458549892 5.991268857 5.561403720 CORE 93 O O 0.0000 93 O 0.690164997 13.357688294 9.310544166 CORE 94 O O 0.0000 94 O -2.148038832 17.879782532 5.392704630 CORE 95 O O 0.0000 95 O -11.730712871 10.680969487 9.310487644 CORE 96 O O 0.0000 96 O 0.657575488 10.680617047 5.392433433 CORE 97 O O 0.0000 97 O -9.001851057 17.943446101 9.403949152 CORE 98 O O 0.0000 98 O -11.850049933 13.344826597 5.393635602 CORE 99 O O 0.0000 99 O -2.006925010 6.074573375 9.207051402 CORE 100 O O 0.0000 100 O -11.894318197 10.759073311 5.337769721 CORE 101 O O 0.0000 101 O -2.140969343 17.862060761 9.205898452 CORE 102 O O 0.0000 102 O 0.609840894 13.323920034 5.395413104 CORE 103 O O 0.0000 103 O -9.142041140 6.097138788 8.825978440 CORE 104 O O 0.0000 104 O -2.082497246 6.106194128 5.502891517 CORE 105 O O 0.0000 105 O -11.725535699 13.340584483 9.193206191 CORE 106 O O 0.0000 106 O -9.147695385 17.828536975 5.286881700 CORE 107 O O 0.0000 107 O 0.565688290 10.729611166 9.148053554 CORE 108 O O 0.0000 108 O2 12.398206236 6.384598994 4.470103483 CORE 109 O2 O2 0.0000 109 O2 13.067904449 7.863629837 3.094545585 CORE 110 O2 O2 0.0000 110 H 12.594811557 6.005794448 3.572078286 CORE 111 H H 0.0000 111 H 13.091636842 8.585182905 3.773452807 CORE 112 H H 0.0000 112 C 13.457533680 5.934854895 5.407210300 CORE 113 C C 0.0000 113 C 12.955771011 4.618533900 5.759378500 CORE 114 C C 0.0000 114 H 13.211299137 3.703625244 5.180212770 CORE 115 H H 0.0000 115 H 12.290174198 4.483176744 6.625792438 CORE 116 H H 0.0000 116 H 14.422794866 5.979440409 4.856431358 CORE 117 H H 0.0000 117 H 13.450719566 6.694845158 6.222857856 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.353235161 4.770002269 3.528398559 CORE 1 Si Si 0.0000 1 Si -2.564340255 12.010450996 7.336737379 CORE 2 Si Si 0.0000 2 Si 1.107487728 4.753489030 3.503585034 CORE 3 Si Si 0.0000 3 Si -8.608612701 12.054739279 7.322104212 CORE 4 Si Si 0.0000 4 Si -13.642463712 7.710030105 11.077945703 CORE 5 Si Si 0.0000 5 Si -3.973681232 14.862661779 7.316993912 CORE 6 Si Si 0.0000 6 Si -7.174192789 9.243819810 7.256076459 CORE 7 Si Si 0.0000 7 Si 2.464435966 16.328860043 3.534904860 CORE 8 Si Si 0.0000 8 Si -13.599635134 16.331582411 3.483683185 CORE 9 Si Si 0.0000 9 Si -3.944840371 9.095138531 7.358402048 CORE 10 Si Si 0.0000 10 Si -7.195303880 14.954159492 7.280224505 CORE 11 Si Si 0.0000 11 Si 2.395973247 7.691084090 3.485191925 CORE 12 Si Si 0.0000 12 Si -10.193087073 4.573956170 5.801140980 CORE 13 Si Si 0.0000 13 Si -0.278907381 12.059728941 9.563423730 CORE 14 Si Si 0.0000 14 Si -10.845004082 12.017523877 9.585272342 CORE 15 Si Si 0.0000 15 Si -1.203389919 4.757147203 5.744338423 CORE 16 Si Si 0.0000 16 Si -10.001197438 4.716699007 8.882283485 CORE 17 Si Si 0.0000 17 Si -0.272490282 11.981949449 5.081896185 CORE 18 Si Si 0.0000 18 Si -10.930418949 12.031512518 5.088123453 CORE 19 Si Si 0.0000 19 Si -1.168576123 4.722213078 8.875646645 CORE 20 Si Si 0.0000 20 Ti -9.047504351 7.682383208 4.989451458 CORE 21 Ti Ti 0.0000 21 Si 0.737439261 14.932468766 8.891724954 CORE 22 Si Si 0.0000 22 Si -2.225109450 16.273015895 5.104480871 CORE 23 Si Si 0.0000 23 Si -11.951184528 9.148062253 8.772532644 CORE 24 Si Si 0.0000 24 Si 0.726124999 9.084344629 5.734566572 CORE 25 Si Si 0.0000 25 Si -8.963916370 16.317070514 9.564031927 CORE 26 Si Si 0.0000 26 Si -11.800867571 14.921439327 5.750933424 CORE 27 Si Si 0.0000 27 Si -2.205627026 7.659876320 9.547903410 CORE 28 Si Si 0.0000 28 Si -12.051156366 9.181794765 5.749445985 CORE 29 Si Si 0.0000 29 Si -2.175088987 16.260548008 9.537230636 CORE 30 Si Si 0.0000 30 Si 0.660782594 14.908357084 5.765919489 CORE 31 Si Si 0.0000 31 Si -9.136782949 7.691319915 9.202103668 CORE 32 Si Si 0.0000 32 Si -2.166070794 7.696858058 5.109679567 CORE 33 Si Si 0.0000 33 Si -11.855432445 14.936042324 8.868097927 CORE 34 Si Si 0.0000 34 Si -8.918618523 16.243855883 5.068651031 CORE 35 Si Si 0.0000 35 Si 0.628420170 9.124904971 8.861168970 CORE 36 Si Si 0.0000 36 O -15.245093788 7.772617469 3.358613007 CORE 37 O O 0.0000 37 O -5.585148603 14.974155188 7.392487249 CORE 38 O O 0.0000 38 O -15.195420112 16.050067276 3.630781582 CORE 39 O O 0.0000 39 O -5.552183440 9.061540797 7.305881061 CORE 40 O O 0.0000 40 O -10.521345207 4.322683594 7.387355040 CORE 41 O O 0.0000 41 O -0.728944519 11.965020489 3.518145324 CORE 42 O O 0.0000 42 O -10.413684782 12.091877129 3.543334341 CORE 43 O O 0.0000 43 O -0.745542761 4.685893409 7.305300402 CORE 44 O O 0.0000 44 O -13.197647816 6.149900055 3.588174777 CORE 45 O O 0.0000 45 O -3.550156748 13.292279101 7.250540231 CORE 46 O O 0.0000 46 O -7.532597912 10.838780054 7.311187247 CORE 47 O O 0.0000 47 O 2.161171706 17.933304754 3.551753400 CORE 48 O O 0.0000 48 O -3.434191141 10.649319473 7.433246033 CORE 49 O O 0.0000 49 O -13.380396669 17.940885178 3.319302257 CORE 50 O O 0.0000 50 O 1.924575609 6.138729496 3.478934076 CORE 51 O O 0.0000 51 O -7.775347842 13.447365281 7.279445906 CORE 52 O O 0.0000 52 O -11.580824491 4.495226026 4.948835766 CORE 53 O O 0.0000 53 O -1.638467875 12.182571508 8.668668039 CORE 54 O O 0.0000 54 O 0.131726518 4.732760200 4.816396324 CORE 55 O O 0.0000 55 O -9.477721708 12.003063153 8.703625788 CORE 56 O O 0.0000 56 O -1.617478025 11.948969819 6.010298520 CORE 57 O O 0.0000 57 O -11.274157793 4.838196247 9.901021142 CORE 58 O O 0.0000 58 O -9.617236501 11.973220171 6.045389243 CORE 59 O O 0.0000 59 O 0.191533033 4.629489248 9.760668977 CORE 60 O O 0.0000 60 O -10.596578354 8.488800469 5.534844263 CORE 61 O O 0.0000 61 O -0.723267374 15.608468370 9.190459986 CORE 62 O O 0.0000 62 O -10.496195644 8.403765462 8.666169753 CORE 63 O O 0.0000 63 O -0.818069353 15.567124298 5.526772017 CORE 64 O O 0.0000 64 O -0.720616243 8.399800831 5.388330633 CORE 65 O O 0.0000 65 O -10.425244797 15.675246820 9.197431011 CORE 66 O O 0.0000 66 O -10.257859262 15.446698218 5.537115550 CORE 67 O O 0.0000 67 O -0.830343919 8.454294174 9.160447156 CORE 68 O O 0.0000 68 O -12.595406599 9.137926384 7.289613636 CORE 69 O O 0.0000 69 O -2.502524608 16.032779244 3.512608107 CORE 70 O O 0.0000 70 O -9.098543429 7.848254786 3.209629389 CORE 71 O O 0.0000 71 O 1.089569310 15.086615249 7.316616214 CORE 72 O O 0.0000 72 O -2.502597930 7.831323519 3.526616873 CORE 73 O O 0.0000 73 O -12.208398093 15.163220661 7.302115032 CORE 74 O O 0.0000 74 O 1.044648079 8.876696970 7.313662788 CORE 75 O O 0.0000 75 O -8.600778240 15.946807423 3.503104030 CORE 76 O O 0.0000 76 O -13.190250591 8.475129385 4.823933327 CORE 77 O O 0.0000 77 O -3.338598018 15.563212137 8.654622074 CORE 78 O O 0.0000 78 O 1.733084337 15.661901653 4.833033156 CORE 79 O O 0.0000 79 O -7.879615066 8.433616805 8.486894958 CORE 80 O O 0.0000 80 O -3.330421581 8.399453004 6.008357691 CORE 81 O O 0.0000 81 O -13.030676231 15.594073665 9.751848866 CORE 82 O O 0.0000 82 O -7.614018186 15.744306691 5.907960988 CORE 83 O O 0.0000 83 O 1.738919672 8.457440912 9.822960598 CORE 84 O O 0.0000 84 O -7.741972385 8.616488263 5.874113894 CORE 85 O O 0.0000 85 O 1.879226186 15.678014162 9.758497497 CORE 86 O O 0.0000 86 O -3.436788387 15.629693932 5.970395777 CORE 87 O O 0.0000 87 O -12.966922272 8.388150838 9.776293669 CORE 88 O O 0.0000 88 O 1.908900721 8.385934860 4.874322315 CORE 89 O O 0.0000 89 O -7.803628495 15.732636228 8.578279011 CORE 90 O O 0.0000 90 O -12.809135732 15.742328988 4.786960198 CORE 91 O O 0.0000 91 O -3.426916889 8.278612068 8.672160741 CORE 92 O O 0.0000 92 O -9.469493696 6.002492319 5.571651782 CORE 93 O O 0.0000 93 O 0.678224132 13.359242348 9.317052977 CORE 94 O O 0.0000 94 O -2.152234147 17.879007307 5.390537486 CORE 95 O O 0.0000 95 O -11.730245228 10.682826106 9.306137762 CORE 96 O O 0.0000 96 O 0.653394414 10.684064044 5.392221572 CORE 97 O O 0.0000 97 O -8.992695264 17.947165825 9.393083535 CORE 98 O O 0.0000 98 O -11.849966027 13.336470516 5.397017466 CORE 99 O O 0.0000 99 O -2.008564261 6.072867823 9.208842369 CORE 100 O O 0.0000 100 O -11.896370822 10.752525271 5.326640059 CORE 101 O O 0.0000 101 O -2.143298320 17.860116357 9.210487354 CORE 102 O O 0.0000 102 O 0.599140340 13.327098772 5.393803037 CORE 103 O O 0.0000 103 O -9.135850165 6.102949946 8.829836897 CORE 104 O O 0.0000 104 O -2.085541928 6.106348510 5.500418867 CORE 105 O O 0.0000 105 O -11.723962841 13.339238291 9.196971079 CORE 106 O O 0.0000 106 O -9.155884523 17.827287793 5.296050678 CORE 107 O O 0.0000 107 O 0.558550097 10.733281015 9.146824304 CORE 108 O O 0.0000 108 O2 12.416886354 6.359574283 4.483748700 CORE 109 O2 O2 0.0000 109 O2 13.070607925 7.823867206 3.094489976 CORE 110 O2 O2 0.0000 110 H 12.700646828 6.064882778 3.551165590 CORE 111 H H 0.0000 111 H 13.138845290 8.537456563 3.786758895 CORE 112 H H 0.0000 112 C 13.481415988 5.931839619 5.399994474 CORE 113 C C 0.0000 113 C 12.995508335 4.621769001 5.768681670 CORE 114 C C 0.0000 114 H 13.254002818 3.673186789 5.205282887 CORE 115 H H 0.0000 115 H 12.335271325 4.484060944 6.628163608 CORE 116 H H 0.0000 116 H 14.439649830 5.966369122 4.840431935 CORE 117 H H 0.0000 117 H 13.505297911 6.679779736 6.218113996 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.352217508 4.763160889 3.525492374 CORE 1 Si Si 0.0000 1 Si -2.557768815 12.010380075 7.335150513 CORE 2 Si Si 0.0000 2 Si 1.109557289 4.752599641 3.502982619 CORE 3 Si Si 0.0000 3 Si -8.603343925 12.055819375 7.327709210 CORE 4 Si Si 0.0000 4 Si -13.638286680 7.706371355 11.083844644 CORE 5 Si Si 0.0000 5 Si -3.971650354 14.860459639 7.316127374 CORE 6 Si Si 0.0000 6 Si -7.173834070 9.241906685 7.267381316 CORE 7 Si Si 0.0000 7 Si 2.465031970 16.328293255 3.533534800 CORE 8 Si Si 0.0000 8 Si -13.600298494 16.328904872 3.481849922 CORE 9 Si Si 0.0000 9 Si -3.938634192 9.097475593 7.362315733 CORE 10 Si Si 0.0000 10 Si -7.194337418 14.959153479 7.283263360 CORE 11 Si Si 0.0000 11 Si 2.402353012 7.690390020 3.486299612 CORE 12 Si Si 0.0000 12 Si -10.189233542 4.571091240 5.793805188 CORE 13 Si Si 0.0000 13 Si -0.271295388 12.061899369 9.559204539 CORE 14 Si Si 0.0000 14 Si -10.844213708 12.019287088 9.585820974 CORE 15 Si Si 0.0000 15 Si -1.201641551 4.754025258 5.745867093 CORE 16 Si Si 0.0000 16 Si -10.006297632 4.711494565 8.878655984 CORE 17 Si Si 0.0000 17 Si -0.267100843 11.983963621 5.081245996 CORE 18 Si Si 0.0000 18 Si -10.928906519 12.034281013 5.090799824 CORE 19 Si Si 0.0000 19 Si -1.168130804 4.720818596 8.874071875 CORE 20 Si Si 0.0000 20 Ti -9.048500835 7.675218938 4.992641088 CORE 21 Ti Ti 0.0000 21 Si 0.739717240 14.934435657 8.890784550 CORE 22 Si Si 0.0000 22 Si -2.222456010 16.271624872 5.102326888 CORE 23 Si Si 0.0000 23 Si -11.948765679 9.148966778 8.774177705 CORE 24 Si Si 0.0000 24 Si 0.727247149 9.083038365 5.735818340 CORE 25 Si Si 0.0000 25 Si -8.963864218 16.311449054 9.561868891 CORE 26 Si Si 0.0000 26 Si -11.796159389 14.929511293 5.747847024 CORE 27 Si Si 0.0000 27 Si -2.199774178 7.659812030 9.551429355 CORE 28 Si Si 0.0000 28 Si -12.046809212 9.186504493 5.749314456 CORE 29 Si Si 0.0000 29 Si -2.172117820 16.261006830 9.537819587 CORE 30 Si Si 0.0000 30 Si 0.663136588 14.908892015 5.764859347 CORE 31 Si Si 0.0000 31 Si -9.136735222 7.692791083 9.197025927 CORE 32 Si Si 0.0000 32 Si -2.164906498 7.696046941 5.112824163 CORE 33 Si Si 0.0000 33 Si -11.851853149 14.934819522 8.864056898 CORE 34 Si Si 0.0000 34 Si -8.916211798 16.238671909 5.062326011 CORE 35 Si Si 0.0000 35 Si 0.636980536 9.122785284 8.865574918 CORE 36 Si Si 0.0000 36 O -15.242572558 7.762909141 3.361968018 CORE 37 O O 0.0000 37 O -5.582462832 14.971557940 7.394059432 CORE 38 O O 0.0000 38 O -15.192077717 16.046740642 3.626320178 CORE 39 O O 0.0000 39 O -5.552392628 9.060539549 7.312452632 CORE 40 O O 0.0000 40 O -10.522501612 4.320689170 7.379221251 CORE 41 O O 0.0000 41 O -0.716932257 11.970398485 3.515689030 CORE 42 O O 0.0000 42 O -10.413211750 12.088574568 3.546769075 CORE 43 O O 0.0000 43 O -0.739159532 4.687017326 7.304687413 CORE 44 O O 0.0000 44 O -13.184627908 6.147332213 3.593903620 CORE 45 O O 0.0000 45 O -3.548276170 13.289827586 7.249266098 CORE 46 O O 0.0000 46 O -7.531943982 10.836501660 7.324771683 CORE 47 O O 0.0000 47 O 2.165363364 17.934377355 3.554153401 CORE 48 O O 0.0000 48 O -3.424878698 10.647005042 7.431147430 CORE 49 O O 0.0000 49 O -13.384690323 17.938778463 3.308630016 CORE 50 O O 0.0000 50 O 1.926671149 6.140033886 3.478302601 CORE 51 O O 0.0000 51 O -7.776135907 13.450787773 7.280496995 CORE 52 O O 0.0000 52 O -11.576444621 4.484644164 4.940302903 CORE 53 O O 0.0000 53 O -1.630885133 12.186045173 8.667124687 CORE 54 O O 0.0000 54 O 0.132777656 4.731841260 4.815111389 CORE 55 O O 0.0000 55 O -9.475668506 12.000720902 8.703664204 CORE 56 O O 0.0000 56 O -1.611482189 11.952263588 6.006892922 CORE 57 O O 0.0000 57 O -11.280263322 4.840092362 9.891405239 CORE 58 O O 0.0000 58 O -9.614612890 11.972218634 6.050126485 CORE 59 O O 0.0000 59 O 0.192496223 4.627723586 9.761977038 CORE 60 O O 0.0000 60 O -10.593577164 8.484780631 5.539973429 CORE 61 O O 0.0000 61 O -0.720325843 15.605503834 9.190608935 CORE 62 O O 0.0000 62 O -10.500339191 8.404310627 8.662796637 CORE 63 O O 0.0000 63 O -0.814916132 15.564476743 5.525012163 CORE 64 O O 0.0000 64 O -0.719838955 8.400658076 5.388896534 CORE 65 O O 0.0000 65 O -10.423370377 15.671176385 9.195987922 CORE 66 O O 0.0000 66 O -10.255895932 15.443350250 5.532403792 CORE 67 O O 0.0000 67 O -0.820008820 8.448085024 9.167091756 CORE 68 O O 0.0000 68 O -12.593962103 9.137901014 7.286435874 CORE 69 O O 0.0000 69 O -2.498678198 16.037092135 3.512101618 CORE 70 O O 0.0000 70 O -9.109257838 7.835618536 3.207911299 CORE 71 O O 0.0000 71 O 1.093036603 15.089590164 7.315710803 CORE 72 O O 0.0000 72 O -2.504095157 7.828283739 3.529843702 CORE 73 O O 0.0000 73 O -12.206977267 15.165468207 7.298935140 CORE 74 O O 0.0000 74 O 1.045152478 8.873096888 7.314333668 CORE 75 O O 0.0000 75 O -8.593685657 15.940970750 3.496713968 CORE 76 O O 0.0000 76 O -13.184853839 8.484952454 4.824709263 CORE 77 O O 0.0000 77 O -3.335675539 15.560402416 8.650750457 CORE 78 O O 0.0000 78 O 1.738617340 15.662520045 4.831071939 CORE 79 O O 0.0000 79 O -7.875372988 8.429722230 8.494336566 CORE 80 O O 0.0000 80 O -3.331307601 8.394803241 6.009367777 CORE 81 O O 0.0000 81 O -13.032585676 15.590378591 9.750857189 CORE 82 O O 0.0000 82 O -7.612480738 15.742884244 5.907687965 CORE 83 O O 0.0000 83 O 1.758528918 8.460650066 9.819475655 CORE 84 O O 0.0000 84 O -7.745070759 8.618681754 5.877791907 CORE 85 O O 0.0000 85 O 1.882287803 15.682652105 9.757142576 CORE 86 O O 0.0000 86 O -3.436054207 15.624955374 5.968674796 CORE 87 O O 0.0000 87 O -12.968186255 8.384508521 9.774310695 CORE 88 O O 0.0000 88 O 1.911827434 8.385839578 4.875620030 CORE 89 O O 0.0000 89 O -7.801332811 15.742111326 8.577606229 CORE 90 O O 0.0000 90 O -12.807659481 15.753108187 4.786286883 CORE 91 O O 0.0000 91 O -3.416888933 8.281973009 8.676052289 CORE 92 O O 0.0000 92 O -9.459947624 5.992702115 5.562712466 CORE 93 O O 0.0000 93 O 0.688640058 13.357886785 9.311375407 CORE 94 O O 0.0000 94 O -2.148574601 17.879683647 5.392427804 CORE 95 O O 0.0000 95 O -11.730653213 10.681206610 9.309932089 CORE 96 O O 0.0000 96 O 0.657041451 10.681057273 5.392406351 CORE 97 O O 0.0000 97 O -9.000681757 17.943921211 9.402561519 CORE 98 O O 0.0000 98 O -11.850039157 13.343759474 5.394067463 CORE 99 O O 0.0000 99 O -2.007134391 6.074355569 9.207280075 CORE 100 O O 0.0000 100 O -11.894580308 10.758236968 5.336348389 CORE 101 O O 0.0000 101 O -2.141266671 17.861812395 9.206484512 CORE 102 O O 0.0000 102 O 0.608474337 13.324326097 5.395207481 CORE 103 O O 0.0000 103 O -9.141250381 6.097880858 8.826471236 CORE 104 O O 0.0000 104 O -2.082886179 6.106213732 5.502575742 CORE 105 O O 0.0000 105 O -11.725334786 13.340412515 9.193687043 CORE 106 O O 0.0000 106 O -9.148741134 17.828377404 5.288052679 CORE 107 O O 0.0000 107 O 0.564776675 10.730079789 9.147896541 CORE 108 O O 0.0000 108 O2 12.400591984 6.381403102 4.471846068 CORE 109 O2 O2 0.0000 109 O2 13.068249889 7.858551812 3.094538510 CORE 110 O2 O2 0.0000 110 H 12.608327782 6.013340565 3.569407545 CORE 111 H H 0.0000 111 H 13.097665778 8.579087776 3.775152107 CORE 112 H H 0.0000 112 C 13.460583751 5.934469877 5.406288762 CORE 113 C C 0.0000 113 C 12.960845802 4.618947027 5.760566595 CORE 114 C C 0.0000 114 H 13.216752854 3.699737877 5.183414420 CORE 115 H H 0.0000 115 H 12.295933518 4.483289611 6.626095282 CORE 116 H H 0.0000 116 H 14.424947370 5.977771182 4.854388059 CORE 117 H H 0.0000 117 H 13.457689754 6.692921223 6.222252018 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.350751265 4.769892861 3.527222940 CORE 1 Si Si 0.0000 1 Si -2.565396781 12.010272542 7.337931255 CORE 2 Si Si 0.0000 2 Si 1.106014750 4.750615451 3.503557725 CORE 3 Si Si 0.0000 3 Si -8.606787162 12.054302512 7.323087978 CORE 4 Si Si 0.0000 4 Si -13.641481662 7.707164454 11.081967031 CORE 5 Si Si 0.0000 5 Si -3.974276274 14.865039490 7.318179497 CORE 6 Si Si 0.0000 6 Si -7.172560465 9.244673018 7.256201218 CORE 7 Si Si 0.0000 7 Si 2.461741919 16.328659389 3.536043660 CORE 8 Si Si 0.0000 8 Si -13.600879295 16.331955032 3.482161133 CORE 9 Si Si 0.0000 9 Si -3.944654661 9.098629061 7.358380215 CORE 10 Si Si 0.0000 10 Si -7.196212608 14.958132627 7.282805025 CORE 11 Si Si 0.0000 11 Si 2.397638287 7.691486694 3.484106831 CORE 12 Si Si 0.0000 12 Si -10.192802061 4.572935606 5.805698387 CORE 13 Si Si 0.0000 13 Si -0.282866757 12.059418159 9.564817220 CORE 14 Si Si 0.0000 14 Si -10.845465567 12.019314764 9.585959958 CORE 15 Si Si 0.0000 15 Si -1.204935450 4.753892787 5.744547469 CORE 16 Si Si 0.0000 16 Si -10.001713963 4.717820907 8.884090808 CORE 17 Si Si 0.0000 17 Si -0.276058032 11.983045979 5.081848260 CORE 18 Si Si 0.0000 18 Si -10.931669846 12.028411475 5.083944580 CORE 19 Si Si 0.0000 19 Si -1.171024994 4.718030353 8.875807309 CORE 20 Si Si 0.0000 20 Ti -9.048837614 7.684705134 4.996834719 CORE 21 Ti Ti 0.0000 21 Si 0.733592273 14.932898469 8.893952576 CORE 22 Si Si 0.0000 22 Si -2.225861143 16.272301500 5.100383472 CORE 23 Si Si 0.0000 23 Si -11.950238080 9.151348237 8.773412875 CORE 24 Si Si 0.0000 24 Si 0.723539684 9.086595491 5.735452509 CORE 25 Si Si 0.0000 25 Si -8.963535136 16.317116353 9.562319694 CORE 26 Si Si 0.0000 26 Si -11.797709346 14.923481175 5.751278335 CORE 27 Si Si 0.0000 27 Si -2.207265124 7.662443153 9.545295123 CORE 28 Si Si 0.0000 28 Si -12.056976691 9.186531449 5.747201627 CORE 29 Si Si 0.0000 29 Si -2.176526556 16.259416019 9.540510488 CORE 30 Si Si 0.0000 30 Si 0.656687159 14.909223266 5.764332167 CORE 31 Si Si 0.0000 31 Si -9.128409833 7.697227941 9.208132540 CORE 32 Si Si 0.0000 32 Si -2.166275556 7.698515033 5.110062971 CORE 33 Si Si 0.0000 33 Si -11.848368536 14.935189837 8.869634585 CORE 34 Si Si 0.0000 34 Si -8.916076701 16.238658359 5.067457839 CORE 35 Si Si 0.0000 35 Si 0.624906883 9.128069584 8.860675794 CORE 36 Si Si 0.0000 36 O -15.247345209 7.775862227 3.357675189 CORE 37 O O 0.0000 37 O -5.582512483 14.974457609 7.391903699 CORE 38 O O 0.0000 38 O -15.192344254 16.051415919 3.630411491 CORE 39 O O 0.0000 39 O -5.556426866 9.062356816 7.303649560 CORE 40 O O 0.0000 40 O -10.523667063 4.326365407 7.386287595 CORE 41 O O 0.0000 41 O -0.730088608 11.966315221 3.519557299 CORE 42 O O 0.0000 42 O -10.414882178 12.090332878 3.541106872 CORE 43 O O 0.0000 43 O -0.746853508 4.685905661 7.304580227 CORE 44 O O 0.0000 44 O -13.195501470 6.146970115 3.585913456 CORE 45 O O 0.0000 45 O -3.552472254 13.295003775 7.250320991 CORE 46 O O 0.0000 46 O -7.532580207 10.837306291 7.308261207 CORE 47 O O 0.0000 47 O 2.160252008 17.932813500 3.551066392 CORE 48 O O 0.0000 48 O -3.437053577 10.645964586 7.432927595 CORE 49 O O 0.0000 49 O -13.379625539 17.940015969 3.323608398 CORE 50 O O 0.0000 50 O 1.924388936 6.138330063 3.479232127 CORE 51 O O 0.0000 51 O -7.775418662 13.443024570 7.276352051 CORE 52 O O 0.0000 52 O -11.582685248 4.497637900 4.949193229 CORE 53 O O 0.0000 53 O -1.637303194 12.181558440 8.670747700 CORE 54 O O 0.0000 54 O 0.131653966 4.733031918 4.815874621 CORE 55 O O 0.0000 55 O -9.477543311 12.001886478 8.701710443 CORE 56 O O 0.0000 56 O -1.615801439 11.948752733 6.008434904 CORE 57 O O 0.0000 57 O -11.273597391 4.838687501 9.904031698 CORE 58 O O 0.0000 58 O -9.615554526 11.972911263 6.043972475 CORE 59 O O 0.0000 59 O 0.192520086 4.629962484 9.761447196 CORE 60 O O 0.0000 60 O -10.592678636 8.488819064 5.532901228 CORE 61 O O 0.0000 61 O -0.723643797 15.609352714 9.190072626 CORE 62 O O 0.0000 62 O -10.502635259 8.403288334 8.668635632 CORE 63 O O 0.0000 63 O -0.819217483 15.568033292 5.527738970 CORE 64 O O 0.0000 64 O -0.718906941 8.400526902 5.388989190 CORE 65 O O 0.0000 65 O -10.423104994 15.676621265 9.198020342 CORE 66 O O 0.0000 66 O -10.261486092 15.444175783 5.537763761 CORE 67 O O 0.0000 67 O -0.830418973 8.456831457 9.161131197 CORE 68 O O 0.0000 68 O -12.593439998 9.136974002 7.287389742 CORE 69 O O 0.0000 69 O -2.501717299 16.033509063 3.513115508 CORE 70 O O 0.0000 70 O -9.099223532 7.850272273 3.207783879 CORE 71 O O 0.0000 71 O 1.089849126 15.086046588 7.316883455 CORE 72 O O 0.0000 72 O -2.503905598 7.831482658 3.526600898 CORE 73 O O 0.0000 73 O -12.210071600 15.161343141 7.300305884 CORE 74 O O 0.0000 74 O 1.044050342 8.877526538 7.312580661 CORE 75 O O 0.0000 75 O -8.602420956 15.949369355 3.499164405 CORE 76 O O 0.0000 76 O -13.189757738 8.475691127 4.826793564 CORE 77 O O 0.0000 77 O -3.340431062 15.560836588 8.653290887 CORE 78 O O 0.0000 78 O 1.736975394 15.664033737 4.829199270 CORE 79 O O 0.0000 79 O -7.880772627 8.436328073 8.483524353 CORE 80 O O 0.0000 80 O -3.329094476 8.399092059 6.006644394 CORE 81 O O 0.0000 81 O -13.035079772 15.595129833 9.754764560 CORE 82 O O 0.0000 82 O -7.615601821 15.742208193 5.908246259 CORE 83 O O 0.0000 83 O 1.734202253 8.457216330 9.821635268 CORE 84 O O 0.0000 84 O -7.741896946 8.613210351 5.867091291 CORE 85 O O 0.0000 85 O 1.882776037 15.680386972 9.762922235 CORE 86 O O 0.0000 86 O -3.437550856 15.630235205 5.973010833 CORE 87 O O 0.0000 87 O -12.962935376 8.385153292 9.775806350 CORE 88 O O 0.0000 88 O 1.906950478 8.388110332 4.877116065 CORE 89 O O 0.0000 89 O -7.807970837 15.732996164 8.582297219 CORE 90 O O 0.0000 90 O -12.811910027 15.743963187 4.782267838 CORE 91 O O 0.0000 91 O -3.428840575 8.277054123 8.672800660 CORE 92 O O 0.0000 92 O -9.463954150 6.006520518 5.571726333 CORE 93 O O 0.0000 93 O 0.675252771 13.356565386 9.319121151 CORE 94 O O 0.0000 94 O -2.151753802 17.883097490 5.390663994 CORE 95 O O 0.0000 95 O -11.730624731 10.681664422 9.304674970 CORE 96 O O 0.0000 96 O 0.654418417 10.680264607 5.392415328 CORE 97 O O 0.0000 97 O -8.993128459 17.946467575 9.393343018 CORE 98 O O 0.0000 98 O -11.850597441 13.338298594 5.398578847 CORE 99 O O 0.0000 99 O -2.010044168 6.073947055 9.208651428 CORE 100 O O 0.0000 100 O -11.897927130 10.751270900 5.323293644 CORE 101 O O 0.0000 101 O -2.142178286 17.862173196 9.209384307 CORE 102 O O 0.0000 102 O 0.596698013 13.323889619 5.392660889 CORE 103 O O 0.0000 103 O -9.135942731 6.100173811 8.827269765 CORE 104 O O 0.0000 104 O -2.086294968 6.107248422 5.499416236 CORE 105 O O 0.0000 105 O -11.724452038 13.338947257 9.196692274 CORE 106 O O 0.0000 106 O -9.156909296 17.830433522 5.296835819 CORE 107 O O 0.0000 107 O 0.558601480 10.730072582 9.145795504 CORE 108 O O 0.0000 108 O2 12.416312481 6.339332815 4.478754106 CORE 109 O2 O2 0.0000 109 O2 13.074504757 7.819875765 3.096897508 CORE 110 O2 O2 0.0000 110 H 12.714163053 6.085876406 3.555640307 CORE 111 H H 0.0000 111 H 13.145753702 8.524038457 3.783936693 CORE 112 H H 0.0000 112 C 13.496846277 5.942312361 5.401993195 CORE 113 C C 0.0000 113 C 13.004097953 4.608521277 5.769575517 CORE 114 C C 0.0000 114 H 13.257624837 3.678640029 5.207449270 CORE 115 H H 0.0000 115 H 12.335805169 4.485976951 6.631764484 CORE 116 H H 0.0000 116 H 14.443800881 5.963927121 4.837406697 CORE 117 H H 0.0000 117 H 13.512951088 6.673185136 6.216715181 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.349285022 4.776624978 3.528953430 CORE 1 Si Si 0.0000 1 Si -2.573024556 12.010165008 7.340712074 CORE 2 Si Si 0.0000 2 Si 1.102472211 4.748631407 3.504132754 CORE 3 Si Si 0.0000 3 Si -8.610230398 12.052785793 7.318466669 CORE 4 Si Si 0.0000 4 Si -13.644676836 7.707957553 11.080089417 CORE 5 Si Si 0.0000 5 Si -3.976902194 14.869619198 7.320231696 CORE 6 Si Si 0.0000 6 Si -7.171287053 9.247439207 7.245021195 CORE 7 Si Si 0.0000 7 Si 2.458452062 16.329025524 3.538552520 CORE 8 Si Si 0.0000 8 Si -13.601459903 16.335005191 3.482472345 CORE 9 Si Si 0.0000 9 Si -3.950674937 9.099782528 7.354444774 CORE 10 Si Si 0.0000 10 Si -7.198087991 14.957111630 7.282346614 CORE 11 Si Si 0.0000 11 Si 2.392923369 7.692583367 3.481914051 CORE 12 Si Si 0.0000 12 Si -10.196370388 4.574779972 5.817591510 CORE 13 Si Si 0.0000 13 Si -0.294437934 12.056936806 9.570429977 CORE 14 Si Si 0.0000 14 Si -10.846717233 12.019342297 9.586099018 CORE 15 Si Si 0.0000 15 Si -1.208229349 4.753760171 5.743227769 CORE 16 Si Si 0.0000 16 Si -9.997130101 4.724147104 8.889525632 CORE 17 Si Si 0.0000 17 Si -0.285015220 11.982128336 5.082450523 CORE 18 Si Si 0.0000 18 Si -10.934433172 12.022542081 5.077089261 CORE 19 Si Si 0.0000 19 Si -1.173919183 4.715242110 8.877542744 CORE 20 Si Si 0.0000 20 Ti -9.049174587 7.694191476 5.001028273 CORE 21 Ti Ti 0.0000 21 Si 0.727467307 14.931361281 8.897120677 CORE 22 Si Si 0.0000 22 Si -2.229266275 16.272978272 5.098439980 CORE 23 Si Si 0.0000 23 Si -11.951710482 9.153729697 8.772648046 CORE 24 Si Si 0.0000 24 Si 0.719832220 9.090152616 5.735086678 CORE 25 Si Si 0.0000 25 Si -8.963205861 16.322783653 9.562770498 CORE 26 Si Si 0.0000 26 Si -11.799259496 14.917451056 5.754709646 CORE 27 Si Si 0.0000 27 Si -2.214756069 7.665074275 9.539160816 CORE 28 Si Si 0.0000 28 Si -12.067144362 9.186558548 5.745088723 CORE 29 Si Si 0.0000 29 Si -2.180935292 16.257825352 9.543201389 CORE 30 Si Si 0.0000 30 Si 0.650237729 14.909554661 5.763805063 CORE 31 Si Si 0.0000 31 Si -9.120084636 7.701664798 9.219239152 CORE 32 Si Si 0.0000 32 Si -2.167644806 7.700983125 5.107301780 CORE 33 Si Si 0.0000 33 Si -11.844883924 14.935560295 8.875212273 CORE 34 Si Si 0.0000 34 Si -8.915941797 16.238644665 5.072589744 CORE 35 Si Si 0.0000 35 Si 0.612833423 9.133353884 8.855776594 CORE 36 Si Si 0.0000 36 O -15.252117668 7.788815457 3.353382360 CORE 37 O O 0.0000 37 O -5.582562134 14.977357134 7.389747966 CORE 38 O O 0.0000 38 O -15.192610599 16.056091340 3.634502881 CORE 39 O O 0.0000 39 O -5.560461103 9.064174082 7.294846489 CORE 40 O O 0.0000 40 O -10.524832321 4.332041500 7.393353939 CORE 41 O O 0.0000 41 O -0.743244960 11.962231813 3.523425493 CORE 42 O O 0.0000 42 O -10.416552606 12.092091188 3.535444668 CORE 43 O O 0.0000 43 O -0.754547676 4.684793852 7.304473118 CORE 44 O O 0.0000 44 O -13.206374839 6.146608017 3.577923368 CORE 45 O O 0.0000 45 O -3.556668338 13.300179820 7.251375884 CORE 46 O O 0.0000 46 O -7.533216432 10.838110922 7.291750656 CORE 47 O O 0.0000 47 O 2.155140653 17.931249788 3.547979384 CORE 48 O O 0.0000 48 O -3.449228456 10.644923986 7.434707684 CORE 49 O O 0.0000 49 O -13.374560756 17.941253619 3.338586780 CORE 50 O O 0.0000 50 O 1.922106724 6.136626097 3.480161653 CORE 51 O O 0.0000 51 O -7.774701610 13.435261511 7.272207183 CORE 52 O O 0.0000 52 O -11.588925874 4.510631636 4.958083632 CORE 53 O O 0.0000 53 O -1.643721448 12.177071852 8.674370637 CORE 54 O O 0.0000 54 O 0.130530276 4.734222576 4.816637853 CORE 55 O O 0.0000 55 O -9.479418117 12.003052054 8.699756681 CORE 56 O O 0.0000 56 O -1.620120495 11.945242023 6.009976963 CORE 57 O O 0.0000 57 O -11.266931652 4.837282640 9.916658233 CORE 58 O O 0.0000 58 O -9.616495970 11.973603891 6.037818465 CORE 59 O O 0.0000 59 O 0.192544142 4.632201525 9.760917277 CORE 60 O O 0.0000 60 O -10.591779915 8.492857642 5.525829026 CORE 61 O O 0.0000 61 O -0.726961560 15.613201594 9.189536241 CORE 62 O O 0.0000 62 O -10.504931136 8.402266040 8.674474552 CORE 63 O O 0.0000 63 O -0.823519028 15.571589841 5.530465777 CORE 64 O O 0.0000 64 O -0.717974927 8.400395728 5.389081845 CORE 65 O O 0.0000 65 O -10.422839612 15.682066290 9.200052762 CORE 66 O O 0.0000 66 O -10.267076444 15.445001315 5.543123730 CORE 67 O O 0.0000 67 O -0.840829125 8.465577889 9.155170638 CORE 68 O O 0.0000 68 O -12.592917893 9.136047134 7.288343611 CORE 69 O O 0.0000 69 O -2.504756208 16.029925991 3.514129398 CORE 70 O O 0.0000 70 O -9.089189418 7.864925866 3.207656534 CORE 71 O O 0.0000 71 O 1.086661649 15.082502868 7.318056184 CORE 72 O O 0.0000 72 O -2.503715847 7.834681722 3.523358093 CORE 73 O O 0.0000 73 O -12.213165933 15.157217930 7.301676629 CORE 74 O O 0.0000 74 O 1.042948206 8.881956188 7.310827578 CORE 75 O O 0.0000 75 O -8.611156062 15.957767815 3.501614841 CORE 76 O O 0.0000 76 O -13.194661445 8.466429800 4.828877942 CORE 77 O O 0.0000 77 O -3.345186778 15.561270904 8.655831317 CORE 78 O O 0.0000 78 O 1.735333448 15.665547429 4.827326526 CORE 79 O O 0.0000 79 O -7.886172266 8.442933917 8.472712139 CORE 80 O O 0.0000 80 O -3.326881159 8.403380877 6.003921086 CORE 81 O O 0.0000 81 O -13.037573867 15.599881076 9.758671931 CORE 82 O O 0.0000 82 O -7.618722711 15.741531997 5.908804553 CORE 83 O O 0.0000 83 O 1.709875588 8.453782595 9.823794957 CORE 84 O O 0.0000 84 O -7.738722941 8.607738948 5.856390751 CORE 85 O O 0.0000 85 O 1.883264272 15.678121696 9.768701818 CORE 86 O O 0.0000 86 O -3.439047313 15.635515037 5.977346871 CORE 87 O O 0.0000 87 O -12.957684498 8.385797920 9.777302081 CORE 88 O O 0.0000 88 O 1.902073521 8.390381231 4.878612101 CORE 89 O O 0.0000 89 O -7.814608864 15.723881003 8.586988133 CORE 90 O O 0.0000 90 O -12.816160766 15.734818043 4.778248717 CORE 91 O O 0.0000 91 O -3.440792025 8.272135092 8.669549031 CORE 92 O O 0.0000 92 O -9.467960675 6.020338777 5.580740201 CORE 93 O O 0.0000 93 O 0.661865485 13.355244131 9.326866895 CORE 94 O O 0.0000 94 O -2.154933004 17.886511478 5.388900185 CORE 95 O O 0.0000 95 O -11.730596057 10.682122378 9.299417774 CORE 96 O O 0.0000 96 O 0.651795576 10.679471796 5.392424304 CORE 97 O O 0.0000 97 O -8.985575162 17.949013939 9.384124592 CORE 98 O O 0.0000 98 O -11.851155726 13.332837713 5.403090231 CORE 99 O O 0.0000 99 O -2.012953946 6.073538541 9.210022857 CORE 100 O O 0.0000 100 O -11.901273951 10.744304832 5.310238899 CORE 101 O O 0.0000 101 O -2.143089709 17.862533853 9.212284102 CORE 102 O O 0.0000 102 O 0.584921689 13.323453140 5.390114297 CORE 103 O O 0.0000 103 O -9.130635081 6.102466908 8.828068371 CORE 104 O O 0.0000 104 O -2.089703757 6.108282968 5.496256731 CORE 105 O O 0.0000 105 O -11.723569098 13.337481999 9.199697429 CORE 106 O O 0.0000 106 O -9.165077265 17.832489641 5.305619036 CORE 107 O O 0.0000 107 O 0.552426093 10.730065375 9.143694467 CORE 108 O O 0.0000 108 O2 12.432032978 6.297262673 4.485662067 CORE 109 O2 O2 0.0000 109 O2 13.080759624 7.781199861 3.099256506 CORE 110 O2 O2 0.0000 110 H 12.819998516 6.158412104 3.541873147 CORE 111 H H 0.0000 111 H 13.193841626 8.468989138 3.792721279 CORE 112 H H 0.0000 112 C 13.533108996 5.950154701 5.397697627 CORE 113 C C 0.0000 113 C 13.047349911 4.598095383 5.778584440 CORE 114 C C 0.0000 114 H 13.298496821 3.657542038 5.231484120 CORE 115 H H 0.0000 115 H 12.375677013 4.488664147 6.637433762 CORE 116 H H 0.0000 116 H 14.462654393 5.950083059 4.820425335 CORE 117 H H 0.0000 117 H 13.568212422 6.653448905 6.211178268 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.350187015 4.772483911 3.527888952 CORE 1 Si Si 0.0000 1 Si -2.568332539 12.010231171 7.339001515 CORE 2 Si Si 0.0000 2 Si 1.104651273 4.749851903 3.503779018 CORE 3 Si Si 0.0000 3 Si -8.608112342 12.053718859 7.321309334 CORE 4 Si Si 0.0000 4 Si -13.642711389 7.707469614 11.081244345 CORE 5 Si Si 0.0000 5 Si -3.975286806 14.866802125 7.318969354 CORE 6 Si Si 0.0000 6 Si -7.172070306 9.245737691 7.251898348 CORE 7 Si Si 0.0000 7 Si 2.460475820 16.328800221 3.537009244 CORE 8 Si Si 0.0000 8 Si -13.601102724 16.333128968 3.482280947 CORE 9 Si Si 0.0000 9 Si -3.946971706 9.099073035 7.356865619 CORE 10 Si Si 0.0000 10 Si -7.196934279 14.957739681 7.282628614 CORE 11 Si Si 0.0000 11 Si 2.395823525 7.691908757 3.483262887 CORE 12 Si Si 0.0000 12 Si -10.194175353 4.573645532 5.810275726 CORE 13 Si Si 0.0000 13 Si -0.287320141 12.058463039 9.566977441 CORE 14 Si Si 0.0000 14 Si -10.845947258 12.019325431 9.586013513 CORE 15 Si Si 0.0000 15 Si -1.206203089 4.753841759 5.744039535 CORE 16 Si Si 0.0000 16 Si -9.999949814 4.720255701 8.886182488 CORE 17 Si Si 0.0000 17 Si -0.279505502 11.982692818 5.082080052 CORE 18 Si Si 0.0000 18 Si -10.932733300 12.026152541 5.081306169 CORE 19 Si Si 0.0000 19 Si -1.172138869 4.716957175 8.876475223 CORE 20 Si Si 0.0000 20 Ti -9.048967323 7.688356244 4.998448742 CORE 21 Ti Ti 0.0000 21 Si 0.731234815 14.932306744 8.895171936 CORE 22 Si Si 0.0000 22 Si -2.227171697 16.272561974 5.099635454 CORE 23 Si Si 0.0000 23 Si -11.950804833 9.152264871 8.773118552 CORE 24 Si Si 0.0000 24 Si 0.722112893 9.087964459 5.735311699 CORE 25 Si Si 0.0000 25 Si -8.963408314 16.319297592 9.562493215 CORE 26 Si Si 0.0000 26 Si -11.798305928 14.921160402 5.752598948 CORE 27 Si Si 0.0000 27 Si -2.210148344 7.663455788 9.542934223 CORE 28 Si Si 0.0000 28 Si -12.060890072 9.186541971 5.746388416 CORE 29 Si Si 0.0000 29 Si -2.178223349 16.258803825 9.541546135 CORE 30 Si Si 0.0000 30 Si 0.654204803 14.909350837 5.764129283 CORE 31 Si Si 0.0000 31 Si -9.125205613 7.698935655 9.212407187 CORE 32 Si Si 0.0000 32 Si -2.166802664 7.699464964 5.109000243 CORE 33 Si Si 0.0000 33 Si -11.847027383 14.935332398 8.871781266 CORE 34 Si Si 0.0000 34 Si -8.916024741 16.238653026 5.069432977 CORE 35 Si Si 0.0000 35 Si 0.620260091 9.130103359 8.858790193 CORE 36 Si Si 0.0000 36 O -15.249181910 7.780847709 3.356022978 CORE 37 O O 0.0000 37 O -5.582531535 14.975573454 7.391074056 CORE 38 O O 0.0000 38 O -15.192446828 16.053215311 3.631986185 CORE 39 O O 0.0000 39 O -5.557979517 9.063056219 7.300261534 CORE 40 O O 0.0000 40 O -10.524115461 4.328549961 7.389007251 CORE 41 O O 0.0000 41 O -0.735152045 11.964743582 3.521046032 CORE 42 O O 0.0000 42 O -10.415525139 12.091009506 3.538927632 CORE 43 O O 0.0000 43 O -0.749814861 4.685477687 7.304538996 CORE 44 O O 0.0000 44 O -13.199686392 6.146830724 3.582838314 CORE 45 O O 0.0000 45 O -3.554087257 13.296995892 7.250726988 CORE 46 O O 0.0000 46 O -7.532824998 10.837615919 7.301906747 CORE 47 O O 0.0000 47 O 2.158284829 17.932211684 3.549878221 CORE 48 O O 0.0000 48 O -3.441739435 10.645564145 7.433612701 CORE 49 O O 0.0000 49 O -13.377676258 17.940492376 3.329373223 CORE 50 O O 0.0000 50 O 1.923510615 6.137674193 3.479589894 CORE 51 O O 0.0000 51 O -7.775142695 13.440036827 7.274756818 CORE 52 O O 0.0000 52 O -11.585087161 4.502638806 4.952614879 CORE 53 O O 0.0000 53 O -1.639773426 12.179831698 8.672142103 CORE 54 O O 0.0000 54 O 0.131221541 4.733490163 4.816168412 CORE 55 O O 0.0000 55 O -9.478264790 12.002335064 8.700958469 CORE 56 O O 0.0000 56 O -1.617463784 11.947401640 6.009028420 CORE 57 O O 0.0000 57 O -11.271031899 4.838146804 9.908891341 CORE 58 O O 0.0000 58 O -9.615916709 11.973177791 6.041603968 CORE 59 O O 0.0000 59 O 0.192529324 4.630824197 9.761243246 CORE 60 O O 0.0000 60 O -10.592332619 8.490373406 5.530179289 CORE 61 O O 0.0000 61 O -0.724920674 15.610833973 9.189866166 CORE 62 O O 0.0000 62 O -10.503518777 8.402894956 8.670882880 CORE 63 O O 0.0000 63 O -0.820873093 15.569402115 5.528788462 CORE 64 O O 0.0000 64 O -0.718548223 8.400476450 5.389024867 CORE 65 O O 0.0000 65 O -10.423002806 15.678717024 9.198802516 CORE 66 O O 0.0000 66 O -10.263637634 15.444493484 5.539826686 CORE 67 O O 0.0000 67 O -0.834425690 8.460197731 9.158837089 CORE 68 O O 0.0000 68 O -12.593239084 9.136617237 7.287756867 CORE 69 O O 0.0000 69 O -2.502886791 16.032130005 3.513505682 CORE 70 O O 0.0000 70 O -9.095361726 7.855912040 3.207734888 CORE 71 O O 0.0000 71 O 1.088622285 15.084682665 7.317334791 CORE 72 O O 0.0000 72 O -2.503832661 7.832713965 3.525352782 CORE 73 O O 0.0000 73 O -12.211262646 15.159755357 7.300833445 CORE 74 O O 0.0000 74 O 1.043626192 8.879231369 7.311905901 CORE 75 O O 0.0000 75 O -8.605782788 15.952601716 3.500107471 CORE 76 O O 0.0000 76 O -13.191645052 8.472126794 4.827595745 CORE 77 O O 0.0000 77 O -3.342261412 15.561003799 8.654268642 CORE 78 O O 0.0000 78 O 1.736343403 15.664616381 4.828478487 CORE 79 O O 0.0000 79 O -7.882850847 8.438870545 8.479362977 CORE 80 O O 0.0000 80 O -3.328242712 8.400742691 6.005596271 CORE 81 O O 0.0000 81 O -13.036039690 15.596958343 9.756268354 CORE 82 O O 0.0000 82 O -7.616802874 15.741948007 5.908461087 CORE 83 O O 0.0000 83 O 1.724839582 8.455894787 9.822466509 CORE 84 O O 0.0000 84 O -7.740675302 8.611104646 5.862972972 CORE 85 O O 0.0000 85 O 1.882964057 15.679515169 9.765146661 CORE 86 O O 0.0000 86 O -3.438126846 15.632267251 5.974679705 CORE 87 O O 0.0000 87 O -12.960914505 8.385401370 9.776382064 CORE 88 O O 0.0000 88 O 1.905073555 8.388984298 4.877691856 CORE 89 O O 0.0000 89 O -7.810525745 15.729487904 8.584102640 CORE 90 O O 0.0000 90 O -12.813546008 15.740443396 4.780720987 CORE 91 O O 0.0000 91 O -3.433440410 8.275160890 8.671549197 CORE 92 O O 0.0000 92 O -9.465496024 6.011838837 5.575195528 CORE 93 O O 0.0000 93 O 0.670100425 13.356056978 9.322102343 CORE 94 O O 0.0000 94 O -2.152977372 17.884411394 5.389985126 CORE 95 O O 0.0000 95 O -11.730613762 10.681840714 9.302651602 CORE 96 O O 0.0000 96 O 0.653409040 10.679959447 5.392418827 CORE 97 O O 0.0000 97 O -8.990221376 17.947447633 9.389795088 CORE 98 O O 0.0000 98 O -11.850812403 13.336196924 5.400315195 CORE 99 O O 0.0000 99 O -2.011164009 6.073789790 9.209179293 CORE 100 O O 0.0000 100 O -11.899215361 10.748589758 5.318269229 CORE 101 O O 0.0000 101 O -2.142528922 17.862312010 9.210500362 CORE 102 O O 0.0000 102 O 0.592165534 13.323721687 5.391680775 CORE 103 O O 0.0000 103 O -9.133899921 6.101056426 8.827577097 CORE 104 O O 0.0000 104 O -2.087606869 6.107646557 5.498200223 CORE 105 O O 0.0000 105 O -11.724112179 13.338383352 9.197848875 CORE 106 O O 0.0000 106 O -9.160052895 17.831224892 5.300216238 CORE 107 O O 0.0000 107 O 0.556224777 10.730069843 9.144986857 CORE 108 O O 0.0000 108 O2 12.422362778 6.323141169 4.481412828 CORE 109 O2 O2 0.0000 109 O2 13.076912059 7.804990526 3.097805430 CORE 110 O2 O2 0.0000 110 H 12.754896283 6.113793435 3.550341729 CORE 111 H H 0.0000 111 H 13.164261389 8.502851527 3.787317645 CORE 112 H H 0.0000 112 C 13.510802818 5.945330664 5.400339918 CORE 113 C C 0.0000 113 C 13.020744498 4.604508646 5.773042811 CORE 114 C C 0.0000 114 H 13.273355341 3.670519917 5.216699646 CORE 115 H H 0.0000 115 H 12.351150782 4.487011209 6.633946462 CORE 116 H H 0.0000 116 H 14.451057043 5.958598856 4.830871032 CORE 117 H H 0.0000 117 H 13.534219792 6.665589144 6.214584171 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.348926111 4.776809342 3.532744562 CORE 1 Si Si 0.0000 1 Si -2.576368875 12.009662366 7.341388659 CORE 2 Si Si 0.0000 2 Si 1.101910655 4.748065772 3.504103999 CORE 3 Si Si 0.0000 3 Si -8.611344851 12.050746684 7.317964669 CORE 4 Si Si 0.0000 4 Si -13.646595904 7.706496907 11.079612217 CORE 5 Si Si 0.0000 5 Si -3.977513209 14.871920944 7.320768917 CORE 6 Si Si 0.0000 6 Si -7.174031712 9.247201652 7.242433296 CORE 7 Si Si 0.0000 7 Si 2.460041085 16.329617970 3.539150447 CORE 8 Si Si 0.0000 8 Si -13.603102619 16.335933356 3.484740513 CORE 9 Si Si 0.0000 9 Si -3.951549217 9.099666490 7.353459944 CORE 10 Si Si 0.0000 10 Si -7.200223752 14.955950379 7.285711514 CORE 11 Si Si 0.0000 11 Si 2.389791702 7.694035364 3.481204754 CORE 12 Si Si 0.0000 12 Si -10.196947724 4.581778906 5.819237104 CORE 13 Si Si 0.0000 13 Si -0.297703351 12.054582302 9.572557867 CORE 14 Si Si 0.0000 14 Si -10.847094619 12.018910575 9.583046850 CORE 15 Si Si 0.0000 15 Si -1.209382098 4.754028430 5.743290909 CORE 16 Si Si 0.0000 16 Si -9.996590291 4.726458652 8.892676161 CORE 17 Si Si 0.0000 17 Si -0.287367483 11.980028685 5.083343762 CORE 18 Si Si 0.0000 18 Si -10.935721403 12.020619443 5.074290566 CORE 19 Si Si 0.0000 19 Si -1.175109267 4.715072736 8.877751410 CORE 20 Si Si 0.0000 20 Ti -9.053550030 7.695135641 5.001950496 CORE 21 Ti Ti 0.0000 21 Si 0.726933270 14.931842157 8.900172236 CORE 22 Si Si 0.0000 22 Si -2.230877045 16.275012769 5.097919723 CORE 23 Si Si 0.0000 23 Si -11.948018797 9.153955431 8.773875774 CORE 24 Si Si 0.0000 24 Si 0.718661765 9.090492084 5.735503097 CORE 25 Si Si 0.0000 25 Si -8.964155773 16.324253956 9.562724855 CORE 26 Si Si 0.0000 26 Si -11.800844093 14.918983487 5.753622499 CORE 27 Si Si 0.0000 27 Si -2.216735949 7.665738218 9.537027372 CORE 28 Si Si 0.0000 28 Si -12.068280753 9.185620581 5.743336781 CORE 29 Si Si 0.0000 29 Si -2.182569348 16.258636470 9.544478945 CORE 30 Si Si 0.0000 30 Si 0.648856162 14.910450537 5.762487189 CORE 31 Si Si 0.0000 31 Si -9.117054195 7.706803509 9.218900251 CORE 32 Si Si 0.0000 32 Si -2.165989774 7.701872226 5.105902660 CORE 33 Si Si 0.0000 33 Si -11.843514481 14.936559669 8.876351910 CORE 34 Si Si 0.0000 34 Si -8.920772374 16.238033192 5.072549958 CORE 35 Si Si 0.0000 35 Si 0.609218909 9.134108495 8.853873801 CORE 36 Si Si 0.0000 36 O -15.254517272 7.794671013 3.351309166 CORE 37 O O 0.0000 37 O -5.584430396 14.978910034 7.388887057 CORE 38 O O 0.0000 38 O -15.193092675 16.058842826 3.635179847 CORE 39 O O 0.0000 39 O -5.562532203 9.064766816 7.290728322 CORE 40 O O 0.0000 40 O -10.527670894 4.335723169 7.397830558 CORE 41 O O 0.0000 41 O -0.748658455 11.961490752 3.524668665 CORE 42 O O 0.0000 42 O -10.417097997 12.091326630 3.535501722 CORE 43 O O 0.0000 43 O -0.757644703 4.684343391 7.304148213 CORE 44 O O 0.0000 44 O -13.208072787 6.144879112 3.574447326 CORE 45 O O 0.0000 45 O -3.557792220 13.301018758 7.251794281 CORE 46 O O 0.0000 46 O -7.533274551 10.837463700 7.285303920 CORE 47 O O 0.0000 47 O 2.152962938 17.931232347 3.546787333 CORE 48 O O 0.0000 48 O -3.452828728 10.646648566 7.434893832 CORE 49 O O 0.0000 49 O -13.372230817 17.942190865 3.345022105 CORE 50 O O 0.0000 50 O 1.922083053 6.136855579 3.480744289 CORE 51 O O 0.0000 51 O -7.771909609 13.435915364 7.269023638 CORE 52 O O 0.0000 52 O -11.589969314 4.516555230 4.962097884 CORE 53 O O 0.0000 53 O -1.647974881 12.174961246 8.674794359 CORE 54 O O 0.0000 54 O 0.129044789 4.734258180 4.817461639 CORE 55 O O 0.0000 55 O -9.479116939 12.002468401 8.696953041 CORE 56 O O 0.0000 56 O -1.623546412 11.944014896 6.012305076 CORE 57 O O 0.0000 57 O -11.261817410 4.837644739 9.919959081 CORE 58 O O 0.0000 58 O -9.617257477 11.973138295 6.034339913 CORE 59 O O 0.0000 59 O 0.191495314 4.632750871 9.760009203 CORE 60 O O 0.0000 60 O -10.594792843 8.497453206 5.523889034 CORE 61 O O 0.0000 61 O -0.728799608 15.614800910 9.189405549 CORE 62 O O 0.0000 62 O -10.506906397 8.400424125 8.678539088 CORE 63 O O 0.0000 63 O -0.825555487 15.573291357 5.531519453 CORE 64 O O 0.0000 64 O -0.719616103 8.399856472 5.389014674 CORE 65 O O 0.0000 65 O -10.422236487 15.684360540 9.200814549 CORE 66 O O 0.0000 66 O -10.267016786 15.444644983 5.544121188 CORE 67 O O 0.0000 67 O -0.847288562 8.468845279 9.152657290 CORE 68 O O 0.0000 68 O -12.592685996 9.135635737 7.284884914 CORE 69 O O 0.0000 69 O -2.505603738 16.029007483 3.514441978 CORE 70 O O 0.0000 70 O -9.085824314 7.870470352 3.211956513 CORE 71 O O 0.0000 71 O 1.085001806 15.080401343 7.318604892 CORE 72 O O 0.0000 72 O -2.504684425 7.836036131 3.522017930 CORE 73 O O 0.0000 73 O -12.214691834 15.154455057 7.304668395 CORE 74 O O 0.0000 74 O 1.041839720 8.883894250 7.310709286 CORE 75 O O 0.0000 75 O -8.614226724 15.961973172 3.500804521 CORE 76 O O 0.0000 76 O -13.196073996 8.464655922 4.832360830 CORE 77 O O 0.0000 77 O -3.347341976 15.560591970 8.657053036 CORE 78 O O 0.0000 78 O 1.733244066 15.664419187 4.828939028 CORE 79 O O 0.0000 79 O -7.887800933 8.447230663 8.465756404 CORE 80 O O 0.0000 80 O -3.326671393 8.405360741 6.003280939 CORE 81 O O 0.0000 81 O -13.037417216 15.599495338 9.757112984 CORE 82 O O 0.0000 82 O -7.618581071 15.739419517 5.910427705 CORE 83 O O 0.0000 83 O 1.701810000 8.451636673 9.825213475 CORE 84 O O 0.0000 84 O -7.733871195 8.606918317 5.852056311 CORE 85 O O 0.0000 85 O 1.881633873 15.676166769 9.769108804 CORE 86 O O 0.0000 86 O -3.440005115 15.638055923 5.979543227 CORE 87 O O 0.0000 87 O -12.955206953 8.383910886 9.779394294 CORE 88 O O 0.0000 88 O 1.901033930 8.391036236 4.878428691 CORE 89 O O 0.0000 89 O -7.816801204 15.720161423 8.588401706 CORE 90 O O 0.0000 90 O -12.817079886 15.730814637 4.777221971 CORE 91 O O 0.0000 91 O -3.446388728 8.270545723 8.668191067 CORE 92 O O 0.0000 92 O -9.466980742 6.021743926 5.585249150 CORE 93 O O 0.0000 93 O 0.655921995 13.354655865 9.329652810 CORE 94 O O 0.0000 94 O -2.156876705 17.886780457 5.387360941 CORE 95 O O 0.0000 95 O -11.730856436 10.683619493 9.297910100 CORE 96 O O 0.0000 96 O 0.649858803 10.681678693 5.391479792 CORE 97 O O 0.0000 97 O -8.983492323 17.949834570 9.381478498 CORE 98 O O 0.0000 98 O -11.851209611 13.330462164 5.404584517 CORE 99 O O 0.0000 99 O -2.014527381 6.074559249 9.210153549 CORE 100 O O 0.0000 100 O -11.903646421 10.743798875 5.303013336 CORE 101 O O 0.0000 101 O -2.144223791 17.860956592 9.213314804 CORE 102 O O 0.0000 102 O 0.580127869 13.323369102 5.388903456 CORE 103 O O 0.0000 103 O -9.128680026 6.104192497 8.828056884 CORE 104 O O 0.0000 104 O -2.091033748 6.109306991 5.494706228 CORE 105 O O 0.0000 105 O -11.724577128 13.339609614 9.199936676 CORE 106 O O 0.0000 106 O -9.166693615 17.832498002 5.308718597 CORE 107 O O 0.0000 107 O 0.549128152 10.732988540 9.143606375 CORE 108 O O 0.0000 108 O2 12.440491155 6.266255989 4.487092148 CORE 109 O2 O2 0.0000 109 O2 13.086424645 7.763133722 3.095260207 CORE 110 O2 O2 0.0000 110 H 12.860731747 6.199887206 3.542195388 CORE 111 H H 0.0000 111 H 13.214264532 8.445048848 3.796505489 CORE 112 H H 0.0000 112 C 13.546456446 5.937738708 5.392454125 CORE 113 C C 0.0000 113 C 13.069306993 4.595503469 5.778868189 CORE 114 C C 0.0000 114 H 13.314558139 3.655057513 5.239907287 CORE 115 H H 0.0000 115 H 12.388155186 4.490477233 6.642953027 CORE 116 H H 0.0000 116 H 14.476779516 5.945638130 4.810458359 CORE 117 H H 0.0000 117 H 13.590540924 6.653610206 6.217083218 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.347665207 4.781134629 3.537600173 CORE 1 Si Si 0.0000 1 Si -2.584405404 12.009093704 7.343775880 CORE 2 Si Si 0.0000 2 Si 1.099169844 4.746279786 3.504428903 CORE 3 Si Si 0.0000 3 Si -8.614577167 12.047774508 7.314620004 CORE 4 Si Si 0.0000 4 Si -13.650480611 7.705524201 11.077980088 CORE 5 Si Si 0.0000 5 Si -3.979739420 14.877039762 7.322568405 CORE 6 Si Si 0.0000 6 Si -7.175992925 9.248665757 7.232968321 CORE 7 Si Si 0.0000 7 Si 2.459606543 16.330435574 3.541291727 CORE 8 Si Si 0.0000 8 Si -13.605102321 16.338737600 3.487200154 CORE 9 Si Si 0.0000 9 Si -3.956126728 9.100260089 7.350054269 CORE 10 Si Si 0.0000 10 Si -7.203513032 14.954161077 7.288794415 CORE 11 Si Si 0.0000 11 Si 2.383759879 7.696161826 3.479146622 CORE 12 Si Si 0.0000 12 Si -10.199719904 4.589912279 5.828198557 CORE 13 Si Si 0.0000 13 Si -0.308086562 12.050701566 9.578138370 CORE 14 Si Si 0.0000 14 Si -10.848241787 12.018495719 9.580080188 CORE 15 Si Si 0.0000 15 Si -1.212560915 4.754215245 5.742542207 CORE 16 Si Si 0.0000 16 Si -9.993230960 4.732661603 8.899169757 CORE 17 Si Si 0.0000 17 Si -0.295229463 11.977364553 5.084607397 CORE 18 Si Si 0.0000 18 Si -10.938709314 12.015086488 5.067275038 CORE 19 Si Si 0.0000 19 Si -1.178079472 4.713188153 8.879027520 CORE 20 Si Si 0.0000 20 Ti -9.058132545 7.701915182 5.005452250 CORE 21 Ti Ti 0.0000 21 Si 0.722631534 14.931377426 8.905172536 CORE 22 Si Si 0.0000 22 Si -2.234582585 16.277463563 5.096203915 CORE 23 Si Si 0.0000 23 Si -11.945232955 9.155645848 8.774632997 CORE 24 Si Si 0.0000 24 Si 0.715210831 9.093019564 5.735694418 CORE 25 Si Si 0.0000 25 Si -8.964903231 16.329210465 9.562956495 CORE 26 Si Si 0.0000 26 Si -11.803382450 14.916806429 5.754646050 CORE 27 Si Si 0.0000 27 Si -2.223323747 7.668020793 9.531120596 CORE 28 Si Si 0.0000 28 Si -12.075671435 9.184699191 5.740285222 CORE 29 Si Si 0.0000 29 Si -2.186915540 16.258468970 9.547411831 CORE 30 Si Si 0.0000 30 Si 0.643507521 14.911550094 5.760845171 CORE 31 Si Si 0.0000 31 Si -9.108902584 7.714671507 9.225393315 CORE 32 Si Si 0.0000 32 Si -2.165177076 7.704279488 5.102805077 CORE 33 Si Si 0.0000 33 Si -11.840001771 14.937786796 8.880922478 CORE 34 Si Si 0.0000 34 Si -8.925519815 16.237413358 5.075666939 CORE 35 Si Si 0.0000 35 Si 0.598177920 9.138113631 8.848957409 CORE 36 Si Si 0.0000 36 O -15.259852442 7.808494317 3.346595354 CORE 37 O O 0.0000 37 O -5.586329257 14.982246470 7.386700059 CORE 38 O O 0.0000 38 O -15.193738715 16.064470341 3.638373509 CORE 39 O O 0.0000 39 O -5.567085081 9.066477413 7.281195186 CORE 40 O O 0.0000 40 O -10.531226326 4.342896520 7.406653865 CORE 41 O O 0.0000 41 O -0.762164673 11.958237921 3.528291297 CORE 42 O O 0.0000 42 O -10.418670855 12.091643754 3.532075736 CORE 43 O O 0.0000 43 O -0.765474353 4.683209095 7.303757431 CORE 44 O O 0.0000 44 O -13.216458989 6.142927501 3.566056337 CORE 45 O O 0.0000 45 O -3.561497376 13.305041624 7.252861573 CORE 46 O O 0.0000 46 O -7.533723911 10.837311336 7.268701092 CORE 47 O O 0.0000 47 O 2.147641240 17.930253009 3.543696368 CORE 48 O O 0.0000 48 O -3.463918022 10.647733131 7.436174964 CORE 49 O O 0.0000 49 O -13.366785183 17.943889354 3.360670987 CORE 50 O O 0.0000 50 O 1.920655492 6.136036822 3.481898761 CORE 51 O O 0.0000 51 O -7.768676523 13.431793901 7.263290535 CORE 52 O O 0.0000 52 O -11.594851659 4.530471509 4.971580889 CORE 53 O O 0.0000 53 O -1.656176335 12.170090793 8.677446616 CORE 54 O O 0.0000 54 O 0.126867844 4.735026342 4.818754942 CORE 55 O O 0.0000 55 O -9.479969088 12.002601593 8.692947613 CORE 56 O O 0.0000 56 O -1.629629041 11.940628153 6.015581809 CORE 57 O O 0.0000 57 O -11.252602730 4.837142817 9.931026821 CORE 58 O O 0.0000 58 O -9.618598053 11.973098654 6.027075933 CORE 59 O O 0.0000 59 O 0.190461496 4.634677690 9.758775161 CORE 60 O O 0.0000 60 O -10.597252876 8.504532862 5.517598702 CORE 61 O O 0.0000 61 O -0.732678542 15.618767991 9.188944932 CORE 62 O O 0.0000 62 O -10.510294017 8.397953150 8.686195295 CORE 63 O O 0.0000 63 O -0.830238074 15.577180454 5.534250444 CORE 64 O O 0.0000 64 O -0.720684176 8.399236494 5.389004480 CORE 65 O O 0.0000 65 O -10.421470169 15.690004199 9.202826506 CORE 66 O O 0.0000 66 O -10.270395746 15.444796337 5.548415766 CORE 67 O O 0.0000 67 O -0.860151627 8.477492826 9.146477491 CORE 68 O O 0.0000 68 O -12.592132907 9.134654237 7.282013038 CORE 69 O O 0.0000 69 O -2.508320493 16.025884818 3.515378199 CORE 70 O O 0.0000 70 O -9.076286709 7.885028520 3.216178214 CORE 71 O O 0.0000 71 O 1.081381327 15.076120020 7.319874993 CORE 72 O O 0.0000 72 O -2.505536190 7.839358440 3.518683002 CORE 73 O O 0.0000 73 O -12.218121022 15.149154612 7.308503269 CORE 74 O O 0.0000 74 O 1.040053247 8.888556986 7.309512671 CORE 75 O O 0.0000 75 O -8.622670852 15.971344771 3.501501494 CORE 76 O O 0.0000 76 O -13.200502939 8.457185195 4.837125838 CORE 77 O O 0.0000 77 O -3.352422541 15.560179997 8.659837506 CORE 78 O O 0.0000 78 O 1.730144537 15.664222138 4.829399568 CORE 79 O O 0.0000 79 O -7.892751019 8.455590780 8.452149755 CORE 80 O O 0.0000 80 O -3.325100268 8.409978792 6.000965606 CORE 81 O O 0.0000 81 O -13.038794934 15.602032332 9.757957537 CORE 82 O O 0.0000 82 O -7.620359076 15.736891171 5.912394322 CORE 83 O O 0.0000 83 O 1.678780612 8.447378558 9.827960441 CORE 84 O O 0.0000 84 O -7.727066895 8.602731988 5.841139727 CORE 85 O O 0.0000 85 O 1.880303689 15.672818512 9.773071023 CORE 86 O O 0.0000 86 O -3.441883577 15.643844595 5.984406749 CORE 87 O O 0.0000 87 O -12.949499594 8.382420546 9.782406600 CORE 88 O O 0.0000 88 O 1.896994304 8.393088175 4.879165602 CORE 89 O O 0.0000 89 O -7.823076663 15.710834941 8.592700849 CORE 90 O O 0.0000 90 O -12.820613765 15.721185879 4.773723032 CORE 91 O O 0.0000 91 O -3.459337046 8.265930555 8.664832937 CORE 92 O O 0.0000 92 O -9.468465267 6.031649160 5.595302848 CORE 93 O O 0.0000 93 O 0.641743757 13.353254752 9.337203354 CORE 94 O O 0.0000 94 O -2.160775845 17.889149519 5.384736831 CORE 95 O O 0.0000 95 O -11.731099109 10.685398272 9.293168522 CORE 96 O O 0.0000 96 O 0.646308567 10.683398083 5.390540758 CORE 97 O O 0.0000 97 O -8.976763077 17.952221651 9.373161908 CORE 98 O O 0.0000 98 O -11.851607011 13.324727403 5.408853839 CORE 99 O O 0.0000 99 O -2.017890753 6.075328708 9.211127881 CORE 100 O O 0.0000 100 O -11.908077673 10.739007847 5.287757367 CORE 101 O O 0.0000 101 O -2.145918659 17.859601174 9.216129246 CORE 102 O O 0.0000 102 O 0.568090396 13.323016518 5.386126137 CORE 103 O O 0.0000 103 O -9.123459939 6.107328424 8.828536671 CORE 104 O O 0.0000 104 O -2.094460627 6.110967425 5.491212309 CORE 105 O O 0.0000 105 O -11.725041884 13.340835876 9.202024401 CORE 106 O O 0.0000 106 O -9.173334528 17.833771111 5.317220955 CORE 107 O O 0.0000 107 O 0.542031528 10.735907381 9.142225894 CORE 108 O O 0.0000 108 O2 12.458619339 6.209370952 4.492771544 CORE 109 O2 O2 0.0000 109 O2 13.095937424 7.721277062 3.092714984 CORE 110 O2 O2 0.0000 110 H 12.966567210 6.285981120 3.534048972 CORE 111 H H 0.0000 111 H 13.264267482 8.387246169 3.805693334 CORE 112 H H 0.0000 112 C 13.582110074 5.930146608 5.384568255 CORE 113 C C 0.0000 113 C 13.117869488 4.586498148 5.784693492 CORE 114 C C 0.0000 114 H 13.355761129 3.639595109 5.263115004 CORE 115 H H 0.0000 115 H 12.425159590 4.493943258 6.651959515 CORE 116 H H 0.0000 116 H 14.502501988 5.932677548 4.790045685 CORE 117 H H 0.0000 117 H 13.646861864 6.641631124 6.219582265 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.346404304 4.785460061 3.542455783 CORE 1 Si Si 0.0000 1 Si -2.592441740 12.008525042 7.346163025 CORE 2 Si Si 0.0000 2 Si 1.096429034 4.744493655 3.504753883 CORE 3 Si Si 0.0000 3 Si -8.617809484 12.044802477 7.311275339 CORE 4 Si Si 0.0000 4 Si -13.654365126 7.704551494 11.076347960 CORE 5 Si Si 0.0000 5 Si -3.981965823 14.882158581 7.324367968 CORE 6 Si Si 0.0000 6 Si -7.177954138 9.250129718 7.223503269 CORE 7 Si Si 0.0000 7 Si 2.459172001 16.331253178 3.543432930 CORE 8 Si Si 0.0000 8 Si -13.607102216 16.341541988 3.489659795 CORE 9 Si Si 0.0000 9 Si -3.960704240 9.100853544 7.346648594 CORE 10 Si Si 0.0000 10 Si -7.206802505 14.952371775 7.291877316 CORE 11 Si Si 0.0000 11 Si 2.377728056 7.698288433 3.477088413 CORE 12 Si Si 0.0000 12 Si -10.202492275 4.598045652 5.837159935 CORE 13 Si Si 0.0000 13 Si -0.318469772 12.046820685 9.583718796 CORE 14 Si Si 0.0000 14 Si -10.849388956 12.018080718 9.577113525 CORE 15 Si Si 0.0000 15 Si -1.215739731 4.754402060 5.741793581 CORE 16 Si Si 0.0000 16 Si -9.989871629 4.738864410 8.905663354 CORE 17 Si Si 0.0000 17 Si -0.303091444 11.974700420 5.085871108 CORE 18 Si Si 0.0000 18 Si -10.941697224 12.009553390 5.060259510 CORE 19 Si Si 0.0000 19 Si -1.181049678 4.711303714 8.880303707 CORE 20 Si Si 0.0000 20 Ti -9.062715252 7.708694579 5.008954081 CORE 21 Ti Ti 0.0000 21 Si 0.718329797 14.930912695 8.910172836 CORE 22 Si Si 0.0000 22 Si -2.238287933 16.279914501 5.094488183 CORE 23 Si Si 0.0000 23 Si -11.942447112 9.157336409 8.775390219 CORE 24 Si Si 0.0000 24 Si 0.711759896 9.095547189 5.735885816 CORE 25 Si Si 0.0000 25 Si -8.965650690 16.334166830 9.563188134 CORE 26 Si Si 0.0000 26 Si -11.805920616 14.914629515 5.755669601 CORE 27 Si Si 0.0000 27 Si -2.229911546 7.670303223 9.525213820 CORE 28 Si Si 0.0000 28 Si -12.083062116 9.183777945 5.737233587 CORE 29 Si Si 0.0000 29 Si -2.191261731 16.258301471 9.550344642 CORE 30 Si Si 0.0000 30 Si 0.638158688 14.912649794 5.759203077 CORE 31 Si Si 0.0000 31 Si -9.100750972 7.722539505 9.231886379 CORE 32 Si Si 0.0000 32 Si -2.164364378 7.706686750 5.099707419 CORE 33 Si Si 0.0000 33 Si -11.836488869 14.939014067 8.885493122 CORE 34 Si Si 0.0000 34 Si -8.930267255 16.236793380 5.078783920 CORE 35 Si Si 0.0000 35 Si 0.587136738 9.142118623 8.844041016 CORE 36 Si Si 0.0000 36 O -15.265187612 7.822317766 3.341881542 CORE 37 O O 0.0000 37 O -5.588228118 14.985582906 7.384513060 CORE 38 O O 0.0000 38 O -15.194384562 16.070097856 3.641567171 CORE 39 O O 0.0000 39 O -5.571637959 9.068188011 7.271662050 CORE 40 O O 0.0000 40 O -10.534781567 4.350069872 7.415477172 CORE 41 O O 0.0000 41 O -0.775670891 11.954985091 3.531913854 CORE 42 O O 0.0000 42 O -10.420243713 12.091960879 3.528649749 CORE 43 O O 0.0000 43 O -0.773304195 4.682074655 7.303366648 CORE 44 O O 0.0000 44 O -13.224845384 6.140975889 3.557665349 CORE 45 O O 0.0000 45 O -3.565202531 13.309064634 7.253928866 CORE 46 O O 0.0000 46 O -7.534173464 10.837159116 7.252098341 CORE 47 O O 0.0000 47 O 2.142319349 17.929273672 3.540605404 CORE 48 O O 0.0000 48 O -3.475007315 10.648817696 7.437456171 CORE 49 O O 0.0000 49 O -13.361339742 17.945587843 3.376319869 CORE 50 O O 0.0000 50 O 1.919227930 6.135218209 3.483053156 CORE 51 O O 0.0000 51 O -7.765443437 13.427672438 7.257557356 CORE 52 O O 0.0000 52 O -11.599733812 4.544387932 4.981063893 CORE 53 O O 0.0000 53 O -1.664377790 12.165220340 8.680098948 CORE 54 O O 0.0000 54 O 0.124691092 4.735794359 4.820048169 CORE 55 O O 0.0000 55 O -9.480821045 12.002734929 8.688942109 CORE 56 O O 0.0000 56 O -1.635711669 11.937241409 6.018858465 CORE 57 O O 0.0000 57 O -11.243388049 4.836640896 9.942094637 CORE 58 O O 0.0000 58 O -9.619938822 11.973059014 6.019811878 CORE 59 O O 0.0000 59 O 0.189427485 4.636604364 9.757541042 CORE 60 O O 0.0000 60 O -10.599713100 8.511612662 5.511308370 CORE 61 O O 0.0000 61 O -0.736557475 15.622734927 9.188484239 CORE 62 O O 0.0000 62 O -10.513681637 8.395482319 8.693851579 CORE 63 O O 0.0000 63 O -0.834920660 15.581069695 5.536981434 CORE 64 O O 0.0000 64 O -0.721752057 8.398616516 5.388994362 CORE 65 O O 0.0000 65 O -10.420703850 15.695647714 9.204838462 CORE 66 O O 0.0000 66 O -10.273774706 15.444947692 5.552710268 CORE 67 O O 0.0000 67 O -0.873014499 8.486140373 9.140297616 CORE 68 O O 0.0000 68 O -12.591579626 9.133672738 7.279141161 CORE 69 O O 0.0000 69 O -2.511037247 16.022762297 3.516314495 CORE 70 O O 0.0000 70 O -9.066749297 7.899586832 3.220399839 CORE 71 O O 0.0000 71 O 1.077760655 15.071838842 7.321145094 CORE 72 O O 0.0000 72 O -2.506387954 7.842680750 3.515348074 CORE 73 O O 0.0000 73 O -12.221550403 15.143854168 7.312338143 CORE 74 O O 0.0000 74 O 1.038266582 8.893219722 7.308316055 CORE 75 O O 0.0000 75 O -8.631114789 15.980716227 3.502198543 CORE 76 O O 0.0000 76 O -13.204931882 8.449714323 4.841890923 CORE 77 O O 0.0000 77 O -3.357503297 15.559768167 8.662621899 CORE 78 O O 0.0000 78 O 1.727045008 15.664024944 4.829860033 CORE 79 O O 0.0000 79 O -7.897700912 8.463951042 8.438543183 CORE 80 O O 0.0000 80 O -3.323529142 8.414596842 5.998650274 CORE 81 O O 0.0000 81 O -13.040172652 15.604569327 9.758802090 CORE 82 O O 0.0000 82 O -7.622137274 15.734362826 5.914360940 CORE 83 O O 0.0000 83 O 1.655751223 8.443120299 9.830707407 CORE 84 O O 0.0000 84 O -7.720262788 8.598545803 5.830223142 CORE 85 O O 0.0000 85 O 1.878973505 15.669470256 9.777033242 CORE 86 O O 0.0000 86 O -3.443762038 15.649633266 5.989270347 CORE 87 O O 0.0000 87 O -12.943792234 8.380930062 9.785418906 CORE 88 O O 0.0000 88 O 1.892954678 8.395140113 4.879902513 CORE 89 O O 0.0000 89 O -7.829352314 15.701508460 8.596999915 CORE 90 O O 0.0000 90 O -12.824147644 15.711556976 4.770224092 CORE 91 O O 0.0000 91 O -3.472285557 8.261315243 8.661474883 CORE 92 O O 0.0000 92 O -9.469949793 6.041554249 5.605356470 CORE 93 O O 0.0000 93 O 0.627565519 13.351853640 9.344753821 CORE 94 O O 0.0000 94 O -2.164674986 17.891518582 5.382112646 CORE 95 O O 0.0000 95 O -11.731341783 10.687177051 9.288426943 CORE 96 O O 0.0000 96 O 0.642758330 10.685117329 5.389601723 CORE 97 O O 0.0000 97 O -8.970034024 17.954608732 9.364845242 CORE 98 O O 0.0000 98 O -11.852004411 13.318992787 5.413123086 CORE 99 O O 0.0000 99 O -2.021254125 6.076098023 9.212102214 CORE 100 O O 0.0000 100 O -11.912508926 10.734216964 5.272501473 CORE 101 O O 0.0000 101 O -2.147613335 17.858245756 9.218943612 CORE 102 O O 0.0000 102 O 0.556052730 13.322664077 5.383348819 CORE 103 O O 0.0000 103 O -9.118240045 6.110464495 8.829016382 CORE 104 O O 0.0000 104 O -2.097887699 6.112627859 5.487718314 CORE 105 O O 0.0000 105 O -11.725506833 13.342062138 9.204112201 CORE 106 O O 0.0000 106 O -9.179975249 17.835044221 5.325723313 CORE 107 O O 0.0000 107 O 0.534934904 10.738826078 9.140845412 CORE 108 O O 0.0000 108 O2 12.476747523 6.152485771 4.498450940 CORE 109 O2 O2 0.0000 109 O2 13.105450011 7.679420258 3.090169762 CORE 110 O2 O2 0.0000 110 H 13.072402481 6.372074891 3.525902631 CORE 111 H H 0.0000 111 H 13.314270433 8.329443490 3.814881178 CORE 112 H H 0.0000 112 C 13.617763510 5.922554652 5.376682386 CORE 113 C C 0.0000 113 C 13.166431983 4.577492971 5.790518871 CORE 114 C C 0.0000 114 H 13.396963926 3.624132704 5.286322645 CORE 115 H H 0.0000 115 H 12.462163802 4.497409138 6.660966080 CORE 116 H H 0.0000 116 H 14.528224269 5.919716822 4.769633012 CORE 117 H H 0.0000 117 H 13.703182996 6.629652186 6.222081388 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.345143400 4.789785492 3.547311318 CORE 1 Si Si 0.0000 1 Si -2.600478269 12.007956237 7.348550246 CORE 2 Si Si 0.0000 2 Si 1.093688224 4.742707669 3.505078864 CORE 3 Si Si 0.0000 3 Si -8.621041993 12.041830302 7.307930674 CORE 4 Si Si 0.0000 4 Si -13.658249833 7.703578643 11.074715831 CORE 5 Si Si 0.0000 5 Si -3.984192034 14.887277544 7.326167531 CORE 6 Si Si 0.0000 6 Si -7.179915544 9.251593680 7.214038294 CORE 7 Si Si 0.0000 7 Si 2.458737266 16.332070926 3.545574210 CORE 8 Si Si 0.0000 8 Si -13.609102111 16.344346231 3.492119437 CORE 9 Si Si 0.0000 9 Si -3.965281751 9.101446998 7.343242843 CORE 10 Si Si 0.0000 10 Si -7.210091786 14.950582474 7.294960217 CORE 11 Si Si 0.0000 11 Si 2.371696234 7.700414896 3.475030280 CORE 12 Si Si 0.0000 12 Si -10.205264454 4.606179026 5.846121313 CORE 13 Si Si 0.0000 13 Si -0.328852983 12.042939948 9.589299222 CORE 14 Si Si 0.0000 14 Si -10.850536316 12.017665862 9.574146863 CORE 15 Si Si 0.0000 15 Si -1.218918740 4.754588875 5.741044954 CORE 16 Si Si 0.0000 16 Si -9.986512106 4.745067362 8.912156950 CORE 17 Si Si 0.0000 17 Si -0.310953424 11.972036288 5.087134819 CORE 18 Si Si 0.0000 18 Si -10.944685135 12.004020436 5.053243983 CORE 19 Si Si 0.0000 19 Si -1.184020076 4.709419131 8.881579818 CORE 20 Si Si 0.0000 20 Ti -9.067297767 7.715474120 5.012455835 CORE 21 Ti Ti 0.0000 21 Si 0.714028060 14.930448107 8.915173136 CORE 22 Si Si 0.0000 22 Si -2.241993281 16.282365296 5.092772451 CORE 23 Si Si 0.0000 23 Si -11.939661077 9.159026970 8.776147517 CORE 24 Si Si 0.0000 24 Si 0.708308961 9.098074670 5.736077214 CORE 25 Si Si 0.0000 25 Si -8.966398149 16.339123338 9.563419774 CORE 26 Si Si 0.0000 26 Si -11.808458781 14.912452601 5.756693228 CORE 27 Si Si 0.0000 27 Si -2.236499344 7.672585653 9.519306968 CORE 28 Si Si 0.0000 28 Si -12.090452989 9.182856555 5.734182028 CORE 29 Si Si 0.0000 29 Si -2.195607731 16.258134116 9.553277452 CORE 30 Si Si 0.0000 30 Si 0.632810047 14.913749495 5.757560983 CORE 31 Si Si 0.0000 31 Si -9.092599361 7.730407503 9.238379519 CORE 32 Si Si 0.0000 32 Si -2.163551488 7.709094156 5.096609836 CORE 33 Si Si 0.0000 33 Si -11.832976159 14.940241194 8.890063690 CORE 34 Si Si 0.0000 34 Si -8.935014889 16.236173546 5.081900902 CORE 35 Si Si 0.0000 35 Si 0.576095556 9.146123758 8.839124700 CORE 36 Si Si 0.0000 36 O -15.270522781 7.836141070 3.337167730 CORE 37 O O 0.0000 37 O -5.590126979 14.988919342 7.382326061 CORE 38 O O 0.0000 38 O -15.195030602 16.075725371 3.644760833 CORE 39 O O 0.0000 39 O -5.576190645 9.069898608 7.262128913 CORE 40 O O 0.0000 40 O -10.538336999 4.357243080 7.424300478 CORE 41 O O 0.0000 41 O -0.789177109 11.951732260 3.535536487 CORE 42 O O 0.0000 42 O -10.421816571 12.092278003 3.525223763 CORE 43 O O 0.0000 43 O -0.781133844 4.680940359 7.302975865 CORE 44 O O 0.0000 44 O -13.233231779 6.139024421 3.549274436 CORE 45 O O 0.0000 45 O -3.568907686 13.313087500 7.254996159 CORE 46 O O 0.0000 46 O -7.534623017 10.837006752 7.235495514 CORE 47 O O 0.0000 47 O 2.136997458 17.928294334 3.537514439 CORE 48 O O 0.0000 48 O -3.486096608 10.649902117 7.438737303 CORE 49 O O 0.0000 49 O -13.355894301 17.947286332 3.391968828 CORE 50 O O 0.0000 50 O 1.917800369 6.134399452 3.484207551 CORE 51 O O 0.0000 51 O -7.762210350 13.423550976 7.251824253 CORE 52 O O 0.0000 52 O -11.604616157 4.558304212 4.990546898 CORE 53 O O 0.0000 53 O -1.672579244 12.160349888 8.682751204 CORE 54 O O 0.0000 54 O 0.122514339 4.736562520 4.821341472 CORE 55 O O 0.0000 55 O -9.481673194 12.002868122 8.684936681 CORE 56 O O 0.0000 56 O -1.641794297 11.933854666 6.022135198 CORE 57 O O 0.0000 57 O -11.234173368 4.836138975 9.953162377 CORE 58 O O 0.0000 58 O -9.621279398 11.973019373 6.012547822 CORE 59 O O 0.0000 59 O 0.188393475 4.638531038 9.756306999 CORE 60 O O 0.0000 60 O -10.602173133 8.518692318 5.505018115 CORE 61 O O 0.0000 61 O -0.740436409 15.626701864 9.188023622 CORE 62 O O 0.0000 62 O -10.517069258 8.393011488 8.701507786 CORE 63 O O 0.0000 63 O -0.839603054 15.584958936 5.539712425 CORE 64 O O 0.0000 64 O -0.722820130 8.397996538 5.388984169 CORE 65 O O 0.0000 65 O -10.419937532 15.701291374 9.206850495 CORE 66 O O 0.0000 66 O -10.277153666 15.445099047 5.557004847 CORE 67 O O 0.0000 67 O -0.885877564 8.494787920 9.134117817 CORE 68 O O 0.0000 68 O -12.591026537 9.132691238 7.276269284 CORE 69 O O 0.0000 69 O -2.513754002 16.019639631 3.517250715 CORE 70 O O 0.0000 70 O -9.057211885 7.914144999 3.224621541 CORE 71 O O 0.0000 71 O 1.074140176 15.067557520 7.322415119 CORE 72 O O 0.0000 72 O -2.507239718 7.846002915 3.512013146 CORE 73 O O 0.0000 73 O -12.224979591 15.138553867 7.316173093 CORE 74 O O 0.0000 74 O 1.036480109 8.897882603 7.307119440 CORE 75 O O 0.0000 75 O -8.639558725 15.990087827 3.502895516 CORE 76 O O 0.0000 76 O -13.209361018 8.442243451 4.846656008 CORE 77 O O 0.0000 77 O -3.362583861 15.559356338 8.665406293 CORE 78 O O 0.0000 78 O 1.723945672 15.663827894 4.830320574 CORE 79 O O 0.0000 79 O -7.902650998 8.472311159 8.424936534 CORE 80 O O 0.0000 80 O -3.321958016 8.419214749 5.996334941 CORE 81 O O 0.0000 81 O -13.041550178 15.607106321 9.759646719 CORE 82 O O 0.0000 82 O -7.623915279 15.731834480 5.916327558 CORE 83 O O 0.0000 83 O 1.632721834 8.438862185 9.833454373 CORE 84 O O 0.0000 84 O -7.713458681 8.594359474 5.819306558 CORE 85 O O 0.0000 85 O 1.877643320 15.666122000 9.780995385 CORE 86 O O 0.0000 86 O -3.445640500 15.655421938 5.994133869 CORE 87 O O 0.0000 87 O -12.938084682 8.379439721 9.788431211 CORE 88 O O 0.0000 88 O 1.888915052 8.397192052 4.880639348 CORE 89 O O 0.0000 89 O -7.835627773 15.692181834 8.601299058 CORE 90 O O 0.0000 90 O -12.827681523 15.701928217 4.766725077 CORE 91 O O 0.0000 91 O -3.485233875 8.256700076 8.658116753 CORE 92 O O 0.0000 92 O -9.471434510 6.051459482 5.615410092 CORE 93 O O 0.0000 93 O 0.613387281 13.350452527 9.352304364 CORE 94 O O 0.0000 94 O -2.168574319 17.893887500 5.379488460 CORE 95 O O 0.0000 95 O -11.731584650 10.688955975 9.283685441 CORE 96 O O 0.0000 96 O 0.639208094 10.686836719 5.388662688 CORE 97 O O 0.0000 97 O -8.963304971 17.956995813 9.356528652 CORE 98 O O 0.0000 98 O -11.852401811 13.313258026 5.417392408 CORE 99 O O 0.0000 99 O -2.024617497 6.076867482 9.213076546 CORE 100 O O 0.0000 100 O -11.916940179 10.729425937 5.257245580 CORE 101 O O 0.0000 101 O -2.149308204 17.856890482 9.221758054 CORE 102 O O 0.0000 102 O 0.544015258 13.322311493 5.380571500 CORE 103 O O 0.0000 103 O -9.113019957 6.113600566 8.829496170 CORE 104 O O 0.0000 104 O -2.101314578 6.114288293 5.484224396 CORE 105 O O 0.0000 105 O -11.725971781 13.343288400 9.206199926 CORE 106 O O 0.0000 106 O -9.186615970 17.836317331 5.334225671 CORE 107 O O 0.0000 107 O 0.527838472 10.741744918 9.139464930 CORE 108 O O 0.0000 108 O2 12.494875707 6.095600591 4.504130336 CORE 109 O2 O2 0.0000 109 O2 13.114962790 7.637563454 3.087624539 CORE 110 O2 O2 0.0000 110 H 13.178237944 6.458168805 3.517756291 CORE 111 H H 0.0000 111 H 13.364273383 8.271640811 3.824069023 CORE 112 H H 0.0000 112 C 13.653417139 5.914962696 5.368796593 CORE 113 C C 0.0000 113 C 13.214994671 4.568487794 5.796344173 CORE 114 C C 0.0000 114 H 13.438166724 3.608670300 5.309530287 CORE 115 H H 0.0000 115 H 12.499168206 4.500875163 6.669972568 CORE 116 H H 0.0000 116 H 14.553946741 5.906756096 4.749220414 CORE 117 H H 0.0000 117 H 13.759504128 6.617673248 6.224580435 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.343882496 4.794110923 3.552166928 CORE 1 Si Si 0.0000 1 Si -2.608514605 12.007387575 7.350937390 CORE 2 Si Si 0.0000 2 Si 1.090947413 4.740921682 3.505403768 CORE 3 Si Si 0.0000 3 Si -8.624274309 12.038858126 7.304586009 CORE 4 Si Si 0.0000 4 Si -13.662134348 7.702605936 11.073083703 CORE 5 Si Si 0.0000 5 Si -3.986418437 14.892396362 7.327967094 CORE 6 Si Si 0.0000 6 Si -7.181876757 9.253057785 7.204573242 CORE 7 Si Si 0.0000 7 Si 2.458302724 16.332888530 3.547715489 CORE 8 Si Si 0.0000 8 Si -13.611101813 16.347150475 3.494579078 CORE 9 Si Si 0.0000 9 Si -3.969859262 9.102040598 7.339837168 CORE 10 Si Si 0.0000 10 Si -7.213381258 14.948793172 7.298043117 CORE 11 Si Si 0.0000 11 Si 2.365664411 7.702541358 3.472972148 CORE 12 Si Si 0.0000 12 Si -10.208036633 4.614312399 5.855082691 CORE 13 Si Si 0.0000 13 Si -0.339236193 12.039059212 9.594879724 CORE 14 Si Si 0.0000 14 Si -10.851683485 12.017251006 9.571180200 CORE 15 Si Si 0.0000 15 Si -1.222097557 4.754775546 5.740296252 CORE 16 Si Si 0.0000 16 Si -9.983152776 4.751270313 8.918650623 CORE 17 Si Si 0.0000 17 Si -0.318815405 11.969372155 5.088398530 CORE 18 Si Si 0.0000 18 Si -10.947673238 11.998487338 5.046228455 CORE 19 Si Si 0.0000 19 Si -1.186990282 4.707534692 8.882856004 CORE 20 Si Si 0.0000 20 Ti -9.071880474 7.722253661 5.015957589 CORE 21 Ti Ti 0.0000 21 Si 0.709726323 14.929983376 8.920173436 CORE 22 Si Si 0.0000 22 Si -2.245698821 16.284816090 5.091056644 CORE 23 Si Si 0.0000 23 Si -11.936875234 9.160717531 8.776904740 CORE 24 Si Si 0.0000 24 Si 0.704857834 9.100602150 5.736268535 CORE 25 Si Si 0.0000 25 Si -8.967145608 16.344079703 9.563651490 CORE 26 Si Si 0.0000 26 Si -11.810996946 14.910275686 5.757716779 CORE 27 Si Si 0.0000 27 Si -2.243087142 7.674868227 9.513400192 CORE 28 Si Si 0.0000 28 Si -12.097843671 9.181935164 5.731130392 CORE 29 Si Si 0.0000 29 Si -2.199953922 16.257966617 9.556210338 CORE 30 Si Si 0.0000 30 Si 0.627461406 14.914849195 5.755918889 CORE 31 Si Si 0.0000 31 Si -9.084447750 7.738275501 9.244872583 CORE 32 Si Si 0.0000 32 Si -2.162738790 7.711501417 5.093512253 CORE 33 Si Si 0.0000 33 Si -11.829463257 14.941468465 8.894634334 CORE 34 Si Si 0.0000 34 Si -8.939762329 16.235553712 5.085017807 CORE 35 Si Si 0.0000 35 Si 0.565054374 9.150128894 8.834208308 CORE 36 Si Si 0.0000 36 O -15.275857951 7.849964374 3.332453918 CORE 37 O O 0.0000 37 O -5.592025647 14.992255778 7.380139138 CORE 38 O O 0.0000 38 O -15.195676642 16.081352741 3.647954494 CORE 39 O O 0.0000 39 O -5.580743523 9.071609205 7.252595777 CORE 40 O O 0.0000 40 O -10.541892432 4.364416431 7.433123785 CORE 41 O O 0.0000 41 O -0.802683326 11.948479430 3.539159120 CORE 42 O O 0.0000 42 O -10.423389429 12.092595127 3.521797853 CORE 43 O O 0.0000 43 O -0.788963686 4.679805919 7.302585006 CORE 44 O O 0.0000 44 O -13.241618174 6.137072810 3.540883448 CORE 45 O O 0.0000 45 O -3.572612649 13.317110510 7.256063527 CORE 46 O O 0.0000 46 O -7.535072378 10.836854533 7.218892687 CORE 47 O O 0.0000 47 O 2.131675567 17.927315141 3.534423475 CORE 48 O O 0.0000 48 O -3.497185902 10.650986682 7.440018434 CORE 49 O O 0.0000 49 O -13.350448668 17.948984965 3.407617710 CORE 50 O O 0.0000 50 O 1.916372807 6.133580694 3.485361946 CORE 51 O O 0.0000 51 O -7.758977264 13.419429513 7.246091074 CORE 52 O O 0.0000 52 O -11.609498309 4.572220635 5.000029902 CORE 53 O O 0.0000 53 O -1.680780699 12.155479435 8.685403536 CORE 54 O O 0.0000 54 O 0.120337587 4.737330682 4.822634699 CORE 55 O O 0.0000 55 O -9.482525343 12.003001458 8.680931253 CORE 56 O O 0.0000 56 O -1.647876926 11.930467923 6.025411855 CORE 57 O O 0.0000 57 O -11.224958688 4.835636909 9.964230117 CORE 58 O O 0.0000 58 O -9.622620167 11.972979733 6.005283767 CORE 59 O O 0.0000 59 O 0.187359465 4.640457712 9.755072956 CORE 60 O O 0.0000 60 O -10.604633165 8.525772118 5.498727783 CORE 61 O O 0.0000 61 O -0.744315343 15.630668801 9.187563005 CORE 62 O O 0.0000 62 O -10.520456878 8.390540514 8.709163994 CORE 63 O O 0.0000 63 O -0.844285641 15.588848178 5.542443416 CORE 64 O O 0.0000 64 O -0.723888011 8.397376560 5.388973975 CORE 65 O O 0.0000 65 O -10.419171214 15.706934889 9.208862452 CORE 66 O O 0.0000 66 O -10.280532819 15.445250546 5.561299349 CORE 67 O O 0.0000 67 O -0.898740436 8.503435612 9.127937943 CORE 68 O O 0.0000 68 O -12.590473449 9.131709882 7.273397408 CORE 69 O O 0.0000 69 O -2.516470757 16.016517110 3.518187011 CORE 70 O O 0.0000 70 O -9.047674473 7.928703311 3.228843166 CORE 71 O O 0.0000 71 O 1.070519697 15.063276198 7.323685220 CORE 72 O O 0.0000 72 O -2.508091482 7.849325225 3.508678294 CORE 73 O O 0.0000 73 O -12.228408780 15.133253423 7.320007968 CORE 74 O O 0.0000 74 O 1.034693637 8.902545339 7.305922825 CORE 75 O O 0.0000 75 O -8.648002661 15.999459426 3.503592566 CORE 76 O O 0.0000 76 O -13.213789961 8.434772723 4.851421016 CORE 77 O O 0.0000 77 O -3.367664425 15.558944509 8.668190762 CORE 78 O O 0.0000 78 O 1.720846143 15.663630701 4.830781115 CORE 79 O O 0.0000 79 O -7.907601084 8.480671276 8.411329885 CORE 80 O O 0.0000 80 O -3.320386890 8.423832799 5.994019609 CORE 81 O O 0.0000 81 O -13.042927896 15.609643315 9.760491273 CORE 82 O O 0.0000 82 O -7.625693476 15.729305990 5.918294099 CORE 83 O O 0.0000 83 O 1.609692253 8.434604070 9.836201339 CORE 84 O O 0.0000 84 O -7.706654382 8.590173289 5.808389973 CORE 85 O O 0.0000 85 O 1.876313136 15.662773744 9.784957604 CORE 86 O O 0.0000 86 O -3.447518961 15.661210610 5.998997391 CORE 87 O O 0.0000 87 O -12.932377323 8.377949237 9.791443441 CORE 88 O O 0.0000 88 O 1.884875427 8.399243990 4.881376259 CORE 89 O O 0.0000 89 O -7.841903232 15.682855352 8.605598125 CORE 90 O O 0.0000 90 O -12.831215401 15.692299458 4.763226137 CORE 91 O O 0.0000 91 O -3.498182193 8.252084908 8.654758623 CORE 92 O O 0.0000 92 O -9.472919036 6.061364716 5.625463790 CORE 93 O O 0.0000 93 O 0.599209043 13.349051414 9.359854831 CORE 94 O O 0.0000 94 O -2.172473459 17.896256563 5.376864275 CORE 95 O O 0.0000 95 O -11.731827324 10.690734754 9.278943863 CORE 96 O O 0.0000 96 O 0.635657857 10.688555966 5.387723653 CORE 97 O O 0.0000 97 O -8.956575725 17.959382894 9.348212062 CORE 98 O O 0.0000 98 O -11.852799211 13.307523410 5.421661730 CORE 99 O O 0.0000 99 O -2.027980676 6.077636940 9.214050878 CORE 100 O O 0.0000 100 O -11.921371239 10.724635053 5.241989610 CORE 101 O O 0.0000 101 O -2.151003072 17.855535064 9.224572496 CORE 102 O O 0.0000 102 O 0.531977592 13.321959052 5.377794181 CORE 103 O O 0.0000 103 O -9.107799870 6.116736637 8.829975881 CORE 104 O O 0.0000 104 O -2.104741457 6.115948727 5.480730401 CORE 105 O O 0.0000 105 O -11.726436537 13.344514662 9.208287727 CORE 106 O O 0.0000 106 O -9.193256690 17.837590441 5.342728029 CORE 107 O O 0.0000 107 O 0.520741848 10.744663615 9.138084449 CORE 108 O O 0.0000 108 O2 12.513004083 6.038715554 4.509809732 CORE 109 O2 O2 0.0000 109 O2 13.124475376 7.595706794 3.085079316 CORE 110 O2 O2 0.0000 110 H 13.284073407 6.544262575 3.509609950 CORE 111 H H 0.0000 111 H 13.414276526 8.213838132 3.833256868 CORE 112 H H 0.0000 112 C 13.689070767 5.907370596 5.360910723 CORE 113 C C 0.0000 113 C 13.263557166 4.559482617 5.802169552 CORE 114 C C 0.0000 114 H 13.479369522 3.593207896 5.332738004 CORE 115 H H 0.0000 115 H 12.536172610 4.504341187 6.678979133 CORE 116 H H 0.0000 116 H 14.579669214 5.893795514 4.728807741 CORE 117 H H 0.0000 117 H 13.815825261 6.605694166 6.227079482 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.342621593 4.798436211 3.557022539 CORE 1 Si Si 0.0000 1 Si -2.616551134 12.006818914 7.353324611 CORE 2 Si Si 0.0000 2 Si 1.088206795 4.739135552 3.505728748 CORE 3 Si Si 0.0000 3 Si -8.627506626 12.035886095 7.301241344 CORE 4 Si Si 0.0000 4 Si -13.666018862 7.701633230 11.071451498 CORE 5 Si Si 0.0000 5 Si -3.988644648 14.897515181 7.329766658 CORE 6 Si Si 0.0000 6 Si -7.183837971 9.254521746 7.195108267 CORE 7 Si Si 0.0000 7 Si 2.457867989 16.333706134 3.549856693 CORE 8 Si Si 0.0000 8 Si -13.613101708 16.349954863 3.497038720 CORE 9 Si Si 0.0000 9 Si -3.974436774 9.102634052 7.336431493 CORE 10 Si Si 0.0000 10 Si -7.216670539 14.947003870 7.301126018 CORE 11 Si Si 0.0000 11 Si 2.359632588 7.704667965 3.470913939 CORE 12 Si Si 0.0000 12 Si -10.210809004 4.622445773 5.864044144 CORE 13 Si Si 0.0000 13 Si -0.349619404 12.035178331 9.600460150 CORE 14 Si Si 0.0000 14 Si -10.852830845 12.016836150 9.568213538 CORE 15 Si Si 0.0000 15 Si -1.225276373 4.754962361 5.739547626 CORE 16 Si Si 0.0000 16 Si -9.979793445 4.757473265 8.925144219 CORE 17 Si Si 0.0000 17 Si -0.326677385 11.966708023 5.089662165 CORE 18 Si Si 0.0000 18 Si -10.950661149 11.992954383 5.039212927 CORE 19 Si Si 0.0000 19 Si -1.189960487 4.705650108 8.884132191 CORE 20 Si Si 0.0000 20 Ti -9.076463182 7.729033058 5.019459419 CORE 21 Ti Ti 0.0000 21 Si 0.705424779 14.929518789 8.925173735 CORE 22 Si Si 0.0000 22 Si -2.249404169 16.287266884 5.089340912 CORE 23 Si Si 0.0000 23 Si -11.934089199 9.162408091 8.777661962 CORE 24 Si Si 0.0000 24 Si 0.701406900 9.103129775 5.736459933 CORE 25 Si Si 0.0000 25 Si -8.967893066 16.349036211 9.563883130 CORE 26 Si Si 0.0000 26 Si -11.813535111 14.908098772 5.758740330 CORE 27 Si Si 0.0000 27 Si -2.249674940 7.677150657 9.507493340 CORE 28 Si Si 0.0000 28 Si -12.105234352 9.181013918 5.728078833 CORE 29 Si Si 0.0000 29 Si -2.204299922 16.257799117 9.559143149 CORE 30 Si Si 0.0000 30 Si 0.622112573 14.915948752 5.754276796 CORE 31 Si Si 0.0000 31 Si -9.076296139 7.746143355 9.251365647 CORE 32 Si Si 0.0000 32 Si -2.161926092 7.713908679 5.090414671 CORE 33 Si Si 0.0000 33 Si -11.825950355 14.942695592 8.899204903 CORE 34 Si Si 0.0000 34 Si -8.944509963 16.234933734 5.088134788 CORE 35 Si Si 0.0000 35 Si 0.554013192 9.154134030 8.829291916 CORE 36 Si Si 0.0000 36 O -15.281193121 7.863787678 3.327740106 CORE 37 O O 0.0000 37 O -5.593924508 14.995592214 7.377952139 CORE 38 O O 0.0000 38 O -15.196322490 16.086980256 3.651148156 CORE 39 O O 0.0000 39 O -5.585296209 9.073319803 7.243062641 CORE 40 O O 0.0000 40 O -10.545447672 4.371589639 7.441947092 CORE 41 O O 0.0000 41 O -0.816189737 11.945226599 3.542781676 CORE 42 O O 0.0000 42 O -10.424962287 12.092912252 3.518371867 CORE 43 O O 0.0000 43 O -0.796793336 4.678671623 7.302194224 CORE 44 O O 0.0000 44 O -13.250004376 6.135121198 3.532492459 CORE 45 O O 0.0000 45 O -3.576317805 13.321133376 7.257130820 CORE 46 O O 0.0000 46 O -7.535521931 10.836702169 7.202289936 CORE 47 O O 0.0000 47 O 2.126353869 17.926335803 3.531332511 CORE 48 O O 0.0000 48 O -3.508275195 10.652071247 7.441299641 CORE 49 O O 0.0000 49 O -13.345003227 17.950683454 3.423266592 CORE 50 O O 0.0000 50 O 1.914945246 6.132762081 3.486516417 CORE 51 O O 0.0000 51 O -7.755744178 13.415308194 7.240357971 CORE 52 O O 0.0000 52 O -11.614380655 4.586136914 5.009512907 CORE 53 O O 0.0000 53 O -1.688982153 12.150608982 8.688055792 CORE 54 O O 0.0000 54 O 0.118160835 4.738098699 4.823928002 CORE 55 O O 0.0000 55 O -9.483377300 12.003134650 8.676925749 CORE 56 O O 0.0000 56 O -1.653959554 11.927081179 6.028688587 CORE 57 O O 0.0000 57 O -11.215744007 4.835134988 9.975297857 CORE 58 O O 0.0000 58 O -9.623960743 11.972940092 5.998019712 CORE 59 O O 0.0000 59 O 0.186325647 4.642384387 9.753838914 CORE 60 O O 0.0000 60 O -10.607093389 8.532851774 5.492437451 CORE 61 O O 0.0000 61 O -0.748194276 15.634635882 9.187102388 CORE 62 O O 0.0000 62 O -10.523844498 8.388069683 8.716820201 CORE 63 O O 0.0000 63 O -0.848968228 15.592737419 5.545174483 CORE 64 O O 0.0000 64 O -0.724956084 8.396756582 5.388963858 CORE 65 O O 0.0000 65 O -10.418404895 15.712578548 9.210874409 CORE 66 O O 0.0000 66 O -10.283911779 15.445401901 5.565593927 CORE 67 O O 0.0000 67 O -0.911603500 8.512083159 9.121758144 CORE 68 O O 0.0000 68 O -12.589920360 9.130728383 7.270525531 CORE 69 O O 0.0000 69 O -2.519187704 16.013394445 3.519123232 CORE 70 O O 0.0000 70 O -9.038137061 7.943261479 3.233064867 CORE 71 O O 0.0000 71 O 1.066899217 15.058994876 7.324955321 CORE 72 O O 0.0000 72 O -2.508943247 7.852647390 3.505343367 CORE 73 O O 0.0000 73 O -12.231837968 15.127952979 7.323842918 CORE 74 O O 0.0000 74 O 1.032907164 8.907208219 7.304726134 CORE 75 O O 0.0000 75 O -8.656446597 16.008830882 3.504289539 CORE 76 O O 0.0000 76 O -13.218218904 8.427301851 4.856186101 CORE 77 O O 0.0000 77 O -3.372744989 15.558532536 8.670975156 CORE 78 O O 0.0000 78 O 1.717746806 15.663433507 4.831241656 CORE 79 O O 0.0000 79 O -7.912551170 8.489031394 8.397723313 CORE 80 O O 0.0000 80 O -3.318815764 8.428450850 5.991704276 CORE 81 O O 0.0000 81 O -13.044305614 15.612180310 9.761335826 CORE 82 O O 0.0000 82 O -7.627471481 15.726777645 5.920260717 CORE 83 O O 0.0000 83 O 1.586662864 8.430345956 9.838948305 CORE 84 O O 0.0000 84 O -7.699850275 8.585986960 5.797473312 CORE 85 O O 0.0000 85 O 1.874982952 15.659425488 9.788919823 CORE 86 O O 0.0000 86 O -3.449397231 15.666999282 6.003860989 CORE 87 O O 0.0000 87 O -12.926669963 8.376458897 9.794455747 CORE 88 O O 0.0000 88 O 1.880835993 8.401295928 4.882113170 CORE 89 O O 0.0000 89 O -7.848178884 15.673528871 8.609897267 CORE 90 O O 0.0000 90 O -12.834749280 15.682670555 4.759727198 CORE 91 O O 0.0000 91 O -3.511130703 8.247469741 8.651400570 CORE 92 O O 0.0000 92 O -9.474403754 6.071269805 5.635517412 CORE 93 O O 0.0000 93 O 0.585030805 13.347650301 9.367405374 CORE 94 O O 0.0000 94 O -2.176372792 17.898625626 5.374240089 CORE 95 O O 0.0000 95 O -11.732069998 10.692513533 9.274202284 CORE 96 O O 0.0000 96 O 0.632107620 10.690275212 5.386784618 CORE 97 O O 0.0000 97 O -8.949846672 17.961769975 9.339895472 CORE 98 O O 0.0000 98 O -11.853196612 13.301788649 5.425931052 CORE 99 O O 0.0000 99 O -2.031344048 6.078406255 9.215025211 CORE 100 O O 0.0000 100 O -11.925802491 10.719844026 5.226733717 CORE 101 O O 0.0000 101 O -2.152697748 17.854179646 9.227386938 CORE 102 O O 0.0000 102 O 0.519940119 13.321606468 5.375016862 CORE 103 O O 0.0000 103 O -9.102579976 6.119872708 8.830455668 CORE 104 O O 0.0000 104 O -2.108168336 6.117609161 5.477236482 CORE 105 O O 0.0000 105 O -11.726901486 13.345740924 9.210375527 CORE 106 O O 0.0000 106 O -9.199897411 17.838863695 5.351230388 CORE 107 O O 0.0000 107 O 0.513645223 10.747582312 9.136703967 CORE 108 O O 0.0000 108 O2 12.531132267 5.981830373 4.515489052 CORE 109 O2 O2 0.0000 109 O2 13.133988155 7.553849990 3.082534094 CORE 110 O2 O2 0.0000 110 H 13.389908678 6.630356490 3.501463534 CORE 111 H H 0.0000 111 H 13.464279476 8.156035453 3.842444712 CORE 112 H H 0.0000 112 C 13.724724203 5.899778640 5.353024930 CORE 113 C C 0.0000 113 C 13.312119661 4.550477440 5.807994854 CORE 114 C C 0.0000 114 H 13.520572319 3.577745491 5.355945645 CORE 115 H H 0.0000 115 H 12.573177014 4.507807212 6.687985621 CORE 116 H H 0.0000 116 H 14.605391494 5.880834788 4.708395067 CORE 117 H H 0.0000 117 H 13.872146393 6.593715227 6.229578604 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.343271674 4.796206250 3.554519156 CORE 1 Si Si 0.0000 1 Si -2.612407780 12.007112110 7.352093840 CORE 2 Si Si 0.0000 2 Si 1.089619731 4.740056365 3.505561237 CORE 3 Si Si 0.0000 3 Si -8.625840239 12.037418382 7.302965748 CORE 4 Si Si 0.0000 4 Si -13.664016081 7.702134719 11.072293009 CORE 5 Si Si 0.0000 5 Si -3.987496902 14.894876130 7.328838881 CORE 6 Si Si 0.0000 6 Si -7.182826861 9.253766990 7.199988068 CORE 7 Si Si 0.0000 7 Si 2.458092188 16.333284647 3.548752733 CORE 8 Si Si 0.0000 8 Si -13.612070777 16.348509064 3.495770597 CORE 9 Si Si 0.0000 9 Si -3.972076813 9.102328172 7.338187390 CORE 10 Si Si 0.0000 10 Si -7.214974708 14.947926413 7.299536566 CORE 11 Si Si 0.0000 11 Si 2.362742317 7.703571580 3.471975070 CORE 12 Si Si 0.0000 12 Si -10.209379711 4.618252525 5.859423901 CORE 13 Si Si 0.0000 13 Si -0.344266144 12.037179241 9.597583101 CORE 14 Si Si 0.0000 14 Si -10.852239268 12.017050064 9.569743045 CORE 15 Si Si 0.0000 15 Si -1.223637507 4.754866070 5.739933616 CORE 16 Si Si 0.0000 16 Si -9.981525456 4.754275210 8.921796359 CORE 17 Si Si 0.0000 17 Si -0.322624096 11.968081604 5.089010683 CORE 18 Si Si 0.0000 18 Si -10.949120621 11.995807061 5.042829855 CORE 19 Si Si 0.0000 19 Si -1.188429197 4.706621806 8.883474243 CORE 20 Si Si 0.0000 20 Ti -9.074100527 7.725537915 5.017653998 CORE 21 Ti Ti 0.0000 21 Si 0.707642522 14.929758362 8.922595726 CORE 22 Si Si 0.0000 22 Si -2.247493761 16.286003288 5.090225479 CORE 23 Si Si 0.0000 23 Si -11.935525613 9.161536432 8.777271560 CORE 24 Si Si 0.0000 24 Si 0.703186059 9.101826683 5.736361267 CORE 25 Si Si 0.0000 25 Si -8.967507790 16.346480910 9.563763696 CORE 26 Si Si 0.0000 26 Si -11.812226481 14.909221104 5.758212617 CORE 27 Si Si 0.0000 27 Si -2.246278467 7.675973982 9.510538738 CORE 28 Si Si 0.0000 28 Si -12.101423929 9.181488884 5.729652082 CORE 29 Si Si 0.0000 29 Si -2.202059277 16.257885462 9.557631062 CORE 30 Si Si 0.0000 30 Si 0.624870126 14.915381820 5.755123403 CORE 31 Si Si 0.0000 31 Si -9.080498766 7.742086903 9.248018015 CORE 32 Si Si 0.0000 32 Si -2.162345047 7.712667570 5.092011654 CORE 33 Si Si 0.0000 33 Si -11.827761460 14.942062929 8.896848491 CORE 34 Si Si 0.0000 34 Si -8.942062247 16.235253309 5.086527839 CORE 35 Si Si 0.0000 35 Si 0.559705733 9.152069118 8.831826641 CORE 36 Si Si 0.0000 36 O -15.278442495 7.856660886 3.330170383 CORE 37 O O 0.0000 37 O -5.592945537 14.993872103 7.379079681 CORE 38 O O 0.0000 38 O -15.195989559 16.084079001 3.649501650 CORE 39 O O 0.0000 39 O -5.582948950 9.072437909 7.247977588 CORE 40 O O 0.0000 40 O -10.543614628 4.367891393 7.437398128 CORE 41 O O 0.0000 41 O -0.809226285 11.946903610 3.540914029 CORE 42 O O 0.0000 42 O -10.424151321 12.092748789 3.520138186 CORE 43 O O 0.0000 43 O -0.792756597 4.679256429 7.302395739 CORE 44 O O 0.0000 44 O -13.245680700 6.136127347 3.536818531 CORE 45 O O 0.0000 45 O -3.574407589 13.319059239 7.256580514 CORE 46 O O 0.0000 46 O -7.535290226 10.836780729 7.210849729 CORE 47 O O 0.0000 47 O 2.129097566 17.926840607 3.532926146 CORE 48 O O 0.0000 48 O -3.502558021 10.651512099 7.440639107 CORE 49 O O 0.0000 49 O -13.347810816 17.949807758 3.415198606 CORE 50 O O 0.0000 50 O 1.915681158 6.133184145 3.485921229 CORE 51 O O 0.0000 51 O -7.757410949 13.417433071 7.243313755 CORE 52 O O 0.0000 52 O -11.611863466 4.578962121 5.004623824 CORE 53 O O 0.0000 53 O -1.684753931 12.153120030 8.686688395 CORE 54 O O 0.0000 54 O 0.119282985 4.737702726 4.823261229 CORE 55 O O 0.0000 55 O -9.482937947 12.003066036 8.678990804 CORE 56 O O 0.0000 56 O -1.650823653 11.928827237 6.026999253 CORE 57 O O 0.0000 57 O -11.220494719 4.835393733 9.969591759 CORE 58 O O 0.0000 58 O -9.623269478 11.972960561 6.001764821 CORE 59 O O 0.0000 59 O 0.186858721 4.641391067 9.754475181 CORE 60 O O 0.0000 60 O -10.605824980 8.529201673 5.495680560 CORE 61 O O 0.0000 61 O -0.746194382 15.632590574 9.187339809 CORE 62 O O 0.0000 62 O -10.522098054 8.389343513 8.712872969 CORE 63 O O 0.0000 63 O -0.846553997 15.590732184 5.543766463 CORE 64 O O 0.0000 64 O -0.724405497 8.397076301 5.388969107 CORE 65 O O 0.0000 65 O -10.418799986 15.709668789 9.209837165 CORE 66 O O 0.0000 66 O -10.282169569 15.445323773 5.563379771 CORE 67 O O 0.0000 67 O -0.904971825 8.507624680 9.124944274 CORE 68 O O 0.0000 68 O -12.590205564 9.131234340 7.272006124 CORE 69 O O 0.0000 69 O -2.517786892 16.015004427 3.518640554 CORE 70 O O 0.0000 70 O -9.043054239 7.935755723 3.230888290 CORE 71 O O 0.0000 71 O 1.068765747 15.061202205 7.324300492 CORE 72 O O 0.0000 72 O -2.508504086 7.850934630 3.507062750 CORE 73 O O 0.0000 73 O -12.230069970 15.130685725 7.321865726 CORE 74 O O 0.0000 74 O 1.033828209 8.904804273 7.305343079 CORE 75 O O 0.0000 75 O -8.652093284 16.003999205 3.503930174 CORE 76 O O 0.0000 76 O -13.215935537 8.431153614 4.853729350 CORE 77 O O 0.0000 77 O -3.370125612 15.558744865 8.669539598 CORE 78 O O 0.0000 78 O 1.719344682 15.663535131 4.831004235 CORE 79 O O 0.0000 79 O -7.909999149 8.484721242 8.404738384 CORE 80 O O 0.0000 80 O -3.319625767 8.426069967 5.992898001 CORE 81 O O 0.0000 81 O -13.043595297 15.610872316 9.760900389 CORE 82 O O 0.0000 82 O -7.626554863 15.728081170 5.919246827 CORE 83 O O 0.0000 83 O 1.598535988 8.432541321 9.837532070 CORE 84 O O 0.0000 84 O -7.703358174 8.588145279 5.803101588 CORE 85 O O 0.0000 85 O 1.875668829 15.661151654 9.786877057 CORE 86 O O 0.0000 86 O -3.448428844 15.664014854 6.001353498 CORE 87 O O 0.0000 87 O -12.929612457 8.377227203 9.792902734 CORE 88 O O 0.0000 88 O 1.882918640 8.400238031 4.881733266 CORE 89 O O 0.0000 89 O -7.844943295 15.678337196 8.607680752 CORE 90 O O 0.0000 90 O -12.832927205 15.687634848 4.761531097 CORE 91 O O 0.0000 91 O -3.504454957 8.249849182 8.653131896 CORE 92 O O 0.0000 92 O -9.473638205 6.066163095 5.630334083 CORE 93 O O 0.0000 93 O 0.592340660 13.348372624 9.363512609 CORE 94 O O 0.0000 94 O -2.174362505 17.897404265 5.375593033 CORE 95 O O 0.0000 95 O -11.731944908 10.691596467 9.276646863 CORE 96 O O 0.0000 96 O 0.633937971 10.689388849 5.387268817 CORE 97 O O 0.0000 97 O -8.953316081 17.960539389 9.344183203 CORE 98 O O 0.0000 98 O -11.852991657 13.304745257 5.423729980 CORE 99 O O 0.0000 99 O -2.029610113 6.078009561 9.214522830 CORE 100 O O 0.0000 100 O -11.923517970 10.722314136 5.234599123 CORE 101 O O 0.0000 101 O -2.151824045 17.854878473 9.225935938 CORE 102 O O 0.0000 102 O 0.526146298 13.321788238 5.376448768 CORE 103 O O 0.0000 103 O -9.105271135 6.118255807 8.830208357 CORE 104 O O 0.0000 104 O -2.106401685 6.116753070 5.479037795 CORE 105 O O 0.0000 105 O -11.726661891 13.345108694 9.209299106 CORE 106 O O 0.0000 106 O -9.196473804 17.838207248 5.346846881 CORE 107 O O 0.0000 107 O 0.517303999 10.746077557 9.137415698 CORE 108 O O 0.0000 108 O2 12.521785954 6.011158317 4.512561034 CORE 109 O2 O2 0.0000 109 O2 13.129083679 7.575429866 3.083846338 CORE 110 O2 O2 0.0000 110 H 13.335343804 6.585969466 3.505663554 CORE 111 H H 0.0000 111 H 13.438499655 8.185836488 3.837707774 CORE 112 H H 0.0000 112 C 13.706342568 5.903692819 5.357090607 CORE 113 C C 0.0000 113 C 13.287082487 4.555120139 5.804991525 CORE 114 C C 0.0000 114 H 13.499329595 3.585717419 5.343980558 CORE 115 H H 0.0000 115 H 12.554098726 4.506020360 6.683342176 CORE 116 H H 0.0000 116 H 14.592130067 5.887516885 4.718919119 CORE 117 H H 0.0000 117 H 13.843109237 6.599891223 6.228290170 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.341457297 4.800213692 3.560217190 CORE 1 Si Si 0.0000 1 Si -2.620709691 12.007023603 7.354315755 CORE 2 Si Si 0.0000 2 Si 1.086739205 4.739571598 3.505854267 CORE 3 Si Si 0.0000 3 Si -8.628350692 12.035254153 7.298044030 CORE 4 Si Si 0.0000 4 Si -13.668414040 7.701655717 11.070684919 CORE 5 Si Si 0.0000 5 Si -3.990333743 14.899042567 7.330376528 CORE 6 Si Si 0.0000 6 Si -7.184668758 9.255257186 7.188965135 CORE 7 Si Si 0.0000 7 Si 2.457575087 16.333744333 3.550696834 CORE 8 Si Si 0.0000 8 Si -13.613091893 16.350681366 3.498047665 CORE 9 Si Si 0.0000 9 Si -3.977074626 9.102591529 7.334662282 CORE 10 Si Si 0.0000 10 Si -7.218019390 14.945566144 7.302514487 CORE 11 Si Si 0.0000 11 Si 2.356074654 7.705861073 3.470186689 CORE 12 Si Si 0.0000 12 Si -10.211418480 4.627073193 5.867881833 CORE 13 Si Si 0.0000 13 Si -0.355009420 12.033986232 9.602789176 CORE 14 Si Si 0.0000 14 Si -10.853106235 12.017356378 9.566356692 CORE 15 Si Si 0.0000 15 Si -1.227296860 4.755883174 5.739081151 CORE 16 Si Si 0.0000 16 Si -9.977426364 4.760037647 8.927828806 CORE 17 Si Si 0.0000 17 Si -0.330880590 11.965693658 5.090632465 CORE 18 Si Si 0.0000 18 Si -10.952113728 11.991268291 5.037089068 CORE 19 Si Si 0.0000 19 Si -1.191725406 4.705817175 8.884587559 CORE 20 Si Si 0.0000 20 Ti -9.078479050 7.730868487 5.021058608 CORE 21 Ti Ti 0.0000 21 Si 0.703412183 14.928690662 8.926849301 CORE 22 Si Si 0.0000 22 Si -2.251467378 16.288597797 5.089753299 CORE 23 Si Si 0.0000 23 Si -11.933497237 9.162265385 8.777326636 CORE 24 Si Si 0.0000 24 Si 0.700055931 9.104111275 5.735958541 CORE 25 Si Si 0.0000 25 Si -8.968093210 16.351625243 9.563869208 CORE 26 Si Si 0.0000 26 Si -11.815316965 14.906348390 5.759742809 CORE 27 Si Si 0.0000 27 Si -2.253416083 7.677668435 9.505244039 CORE 28 Si Si 0.0000 28 Si -12.107150533 9.180739750 5.726447314 CORE 29 Si Si 0.0000 29 Si -2.206470708 16.257585635 9.559707072 CORE 30 Si Si 0.0000 30 Si 0.619597501 14.915759919 5.754475724 CORE 31 Si Si 0.0000 31 Si -9.073892686 7.748840353 9.252498057 CORE 32 Si Si 0.0000 32 Si -2.162137013 7.714607794 5.088661283 CORE 33 Si Si 0.0000 33 Si -11.825409582 14.944084741 8.900693559 CORE 34 Si Si 0.0000 34 Si -8.946816038 16.235877468 5.089815907 CORE 35 Si Si 0.0000 35 Si 0.548984588 9.155674101 8.827712505 CORE 36 Si Si 0.0000 36 O -15.283808841 7.870397414 3.325328161 CORE 37 O O 0.0000 37 O -5.595666718 14.997485446 7.377101653 CORE 38 O O 0.0000 38 O -15.197310890 16.089918701 3.652598092 CORE 39 O O 0.0000 39 O -5.586489757 9.073965439 7.238663235 CORE 40 O O 0.0000 40 O -10.547757019 4.375478159 7.446088156 CORE 41 O O 0.0000 41 O -0.823034257 11.943323709 3.544423314 CORE 42 O O 0.0000 42 O -10.425392980 12.092788717 3.516093733 CORE 43 O O 0.0000 43 O -0.800619540 4.678125737 7.302240552 CORE 44 O O 0.0000 44 O -13.254279363 6.134056669 3.527899678 CORE 45 O O 0.0000 45 O -3.577691866 13.322527858 7.257749439 CORE 46 O O 0.0000 46 O -7.536242447 10.837010356 7.194387483 CORE 47 O O 0.0000 47 O 2.124028933 17.925608580 3.529847658 CORE 48 O O 0.0000 48 O -3.513400984 10.653280932 7.441878246 CORE 49 O O 0.0000 49 O -13.342664628 17.951124545 3.430447424 CORE 50 O O 0.0000 50 O 1.914560739 6.132621393 3.487142035 CORE 51 O O 0.0000 51 O -7.754331435 13.413197300 7.237608875 CORE 52 O O 0.0000 52 O -11.616392866 4.593522739 5.014505675 CORE 53 O O 0.0000 53 O -1.693658967 12.148061465 8.689250202 CORE 54 O O 0.0000 54 O 0.117150880 4.738242270 4.824424220 CORE 55 O O 0.0000 55 O -9.483960025 12.002831508 8.675296664 CORE 56 O O 0.0000 56 O -1.657412028 11.925223984 6.030736450 CORE 57 O O 0.0000 57 O -11.211577944 4.835179962 9.981188429 CORE 58 O O 0.0000 58 O -9.624702620 11.972421017 5.994990366 CORE 59 O O 0.0000 59 O 0.185453099 4.643176477 9.753063358 CORE 60 O O 0.0000 60 O -10.609699103 8.537156015 5.490002990 CORE 61 O O 0.0000 61 O -0.749883564 15.636464680 9.187013460 CORE 62 O O 0.0000 62 O -10.523514453 8.386064016 8.720843582 CORE 63 O O 0.0000 63 O -0.851116113 15.594741068 5.546312066 CORE 64 O O 0.0000 64 O -0.725409486 8.396681193 5.389036735 CORE 65 O O 0.0000 65 O -10.419019181 15.714967215 9.211550766 CORE 66 O O 0.0000 66 O -10.285432099 15.445004919 5.567478463 CORE 67 O O 0.0000 67 O -0.918277129 8.516523188 9.117870399 CORE 68 O O 0.0000 68 O -12.589346872 9.130484341 7.270360607 CORE 69 O O 0.0000 69 O -2.520713028 16.011828139 3.519608192 CORE 70 O O 0.0000 70 O -9.033129242 7.950584167 3.234660100 CORE 71 O O 0.0000 71 O 1.064549841 15.056452115 7.325890324 CORE 72 O O 0.0000 72 O -2.509561959 7.854416079 3.503566549 CORE 73 O O 0.0000 73 O -12.233220305 15.125246323 7.325464168 CORE 74 O O 0.0000 74 O 1.031832356 8.909483730 7.304545919 CORE 75 O O 0.0000 75 O -8.660309365 16.013361723 3.505312253 CORE 76 O O 0.0000 76 O -13.221315739 8.423002078 4.857932490 CORE 77 O O 0.0000 77 O -3.374702931 15.558868832 8.673311104 CORE 78 O O 0.0000 78 O 1.716090427 15.663158762 4.831798885 CORE 79 O O 0.0000 79 O -7.915663786 8.492376190 8.392733283 CORE 80 O O 0.0000 80 O -3.317988825 8.430819048 5.990470233 CORE 81 O O 0.0000 81 O -13.044647205 15.613427906 9.761532472 CORE 82 O O 0.0000 82 O -7.629045301 15.725690773 5.920870055 CORE 83 O O 0.0000 83 O 1.575918048 8.428041327 9.840477204 CORE 84 O O 0.0000 84 O -7.695765617 8.584468511 5.792320031 CORE 85 O O 0.0000 85 O 1.873959719 15.657585447 9.790599420 CORE 86 O O 0.0000 86 O -3.450110626 15.670418314 6.005412557 CORE 87 O O 0.0000 87 O -12.924134877 8.375982490 9.796143180 CORE 88 O O 0.0000 88 O 1.879292387 8.401992881 4.881883356 CORE 89 O O 0.0000 89 O -7.850912573 15.668881558 8.611995338 CORE 90 O O 0.0000 90 O -12.836244390 15.677882988 4.758854042 CORE 91 O O 0.0000 91 O -3.517458507 8.245079632 8.649993767 CORE 92 O O 0.0000 92 O -9.475361171 6.074637954 5.640779324 CORE 93 O O 0.0000 93 O 0.578305024 13.347988615 9.371000621 CORE 94 O O 0.0000 94 O -2.178619402 17.899466870 5.372626142 CORE 95 O O 0.0000 95 O -11.732363092 10.693731578 9.271992616 CORE 96 O O 0.0000 96 O 0.630323457 10.691230332 5.386270598 CORE 97 O O 0.0000 97 O -8.946697299 17.963164602 9.335830936 CORE 98 O O 0.0000 98 O -11.853331131 13.299498724 5.427868230 CORE 99 O O 0.0000 99 O -2.032704639 6.078626945 9.215235018 CORE 100 O O 0.0000 100 O -11.928554656 10.717683112 5.219119349 CORE 101 O O 0.0000 101 O -2.153903420 17.853529253 9.228858783 CORE 102 O O 0.0000 102 O 0.514255853 13.322414702 5.373810586 CORE 103 O O 0.0000 103 O -9.099819536 6.123706453 8.831439281 CORE 104 O O 0.0000 104 O -2.109372660 6.118210833 5.475626186 CORE 105 O O 0.0000 105 O -11.727007138 13.346420868 9.211383256 CORE 106 O O 0.0000 106 O -9.203384333 17.839335346 5.355757138 CORE 107 O O 0.0000 107 O 0.510276463 10.748892468 9.136043432 CORE 108 O O 0.0000 108 O2 12.542017184 5.948320569 4.523298317 CORE 109 O2 O2 0.0000 109 O2 13.142116480 7.532552786 3.083397589 CORE 110 O2 O2 0.0000 110 H 13.441179075 6.678427057 3.494702239 CORE 111 H H 0.0000 111 H 13.488597096 8.125048805 3.844512658 CORE 112 H H 0.0000 112 C 13.742325663 5.894840006 5.350222355 CORE 113 C C 0.0000 113 C 13.332618005 4.548459808 5.812023408 CORE 114 C C 0.0000 114 H 13.541867773 3.569531539 5.366338549 CORE 115 H H 0.0000 115 H 12.593256982 4.509828014 6.690719503 CORE 116 H H 0.0000 116 H 14.620226549 5.874421670 4.697564064 CORE 117 H H 0.0000 117 H 13.899955361 6.588074595 6.229925113 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.342483224 4.797947839 3.556995457 CORE 1 Si Si 0.0000 1 Si -2.616015750 12.007073622 7.353059424 CORE 2 Si Si 0.0000 2 Si 1.088367872 4.739845766 3.505688582 CORE 3 Si Si 0.0000 3 Si -8.626931213 12.036477820 7.300826826 CORE 4 Si Si 0.0000 4 Si -13.665927451 7.701926570 11.071594134 CORE 5 Si Si 0.0000 5 Si -3.988729709 14.896686766 7.329507099 CORE 6 Si Si 0.0000 6 Si -7.183627243 9.254414644 7.195197651 CORE 7 Si Si 0.0000 7 Si 2.457867412 16.333484436 3.549597591 CORE 8 Si Si 0.0000 8 Si -13.612514556 16.349453086 3.496760144 CORE 9 Si Si 0.0000 9 Si -3.974248754 9.102442625 7.336655449 CORE 10 Si Si 0.0000 10 Si -7.216297964 14.946900660 7.300830706 CORE 11 Si Si 0.0000 11 Si 2.359844663 7.704566485 3.471197917 CORE 12 Si Si 0.0000 12 Si -10.210265730 4.622085837 5.863099556 CORE 13 Si Si 0.0000 13 Si -0.348935067 12.035791534 9.599845563 CORE 14 Si Si 0.0000 14 Si -10.852616076 12.017183257 9.568271429 CORE 15 Si Si 0.0000 15 Si -1.225227877 4.755308026 5.739563145 CORE 16 Si Si 0.0000 16 Si -9.979743987 4.756779483 8.924417958 CORE 17 Si Si 0.0000 17 Si -0.326212244 11.967043886 5.089715491 CORE 18 Si Si 0.0000 18 Si -10.950421361 11.993834547 5.040334992 CORE 19 Si Si 0.0000 19 Si -1.189861570 4.706272104 8.883958062 CORE 20 Si Si 0.0000 20 Ti -9.076003429 7.727854508 5.019133602 CORE 21 Ti Ti 0.0000 21 Si 0.705804089 14.929294352 8.924444279 CORE 22 Si Si 0.0000 22 Si -2.249220576 16.287130809 5.090020313 CORE 23 Si Si 0.0000 23 Si -11.934644212 9.161853268 8.777295523 CORE 24 Si Si 0.0000 24 Si 0.701825854 9.102819426 5.736186225 CORE 25 Si Si 0.0000 25 Si -8.967762203 16.348716493 9.563809568 CORE 26 Si Si 0.0000 26 Si -11.813569559 14.907972643 5.758877564 CORE 27 Si Si 0.0000 27 Si -2.249380306 7.676710287 9.508237707 CORE 28 Si Si 0.0000 28 Si -12.103912635 9.181163255 5.728259353 CORE 29 Si Si 0.0000 29 Si -2.203976420 16.257755152 9.558533278 CORE 30 Si Si 0.0000 30 Si 0.622578676 14.915546148 5.754841936 CORE 31 Si Si 0.0000 31 Si -9.077627863 7.745021888 9.249964930 CORE 32 Si Si 0.0000 32 Si -2.162254597 7.713510688 5.090555632 CORE 33 Si Si 0.0000 33 Si -11.826739382 14.942941508 8.898519492 CORE 34 Si Si 0.0000 34 Si -8.944128151 16.235524595 5.087956779 CORE 35 Si Si 0.0000 35 Si 0.555046432 9.153635857 8.830038716 CORE 36 Si Si 0.0000 36 O -15.280774744 7.862630607 3.328065999 CORE 37 O O 0.0000 37 O -5.594128115 14.995442445 7.378220066 CORE 38 O O 0.0000 38 O -15.196563816 16.086616861 3.650847291 CORE 39 O O 0.0000 39 O -5.584487745 9.073101708 7.243929712 CORE 40 O O 0.0000 40 O -10.545414956 4.371188477 7.441174655 CORE 41 O O 0.0000 41 O -0.815226931 11.945347827 3.542439047 CORE 42 O O 0.0000 42 O -10.424690939 12.092766086 3.518380539 CORE 43 O O 0.0000 43 O -0.796173661 4.678765031 7.302328263 CORE 44 O O 0.0000 44 O -13.249417609 6.135227434 3.532942578 CORE 45 O O 0.0000 45 O -3.575834959 13.320566588 7.257088524 CORE 46 O O 0.0000 46 O -7.535703984 10.836880479 7.203695521 CORE 47 O O 0.0000 47 O 2.126894833 17.926305244 3.531588265 CORE 48 O O 0.0000 48 O -3.507270244 10.652280837 7.441177622 CORE 49 O O 0.0000 49 O -13.345574213 17.950380024 3.421825481 CORE 50 O O 0.0000 50 O 1.915194270 6.132939527 3.486451756 CORE 51 O O 0.0000 51 O -7.756072683 13.415592309 7.240834487 CORE 52 O O 0.0000 52 O -11.613831800 4.585289904 5.008918327 CORE 53 O O 0.0000 53 O -1.688623820 12.150921638 8.687801711 CORE 54 O O 0.0000 54 O 0.118356359 4.737937254 4.823766652 CORE 55 O O 0.0000 55 O -9.483382304 12.002964124 8.677385377 CORE 56 O O 0.0000 56 O -1.653686859 11.927261363 6.028623317 CORE 57 O O 0.0000 57 O -11.216619634 4.835300902 9.974631464 CORE 58 O O 0.0000 58 O -9.623892424 11.972726177 5.998820751 CORE 59 O O 0.0000 59 O 0.186247899 4.642167012 9.753861583 CORE 60 O O 0.0000 60 O -10.607508495 8.532658616 5.493213159 CORE 61 O O 0.0000 61 O -0.747797646 15.634274216 9.187198011 CORE 62 O O 0.0000 62 O -10.522713495 8.387918328 8.716336839 CORE 63 O O 0.0000 63 O -0.848536572 15.592474350 5.544872781 CORE 64 O O 0.0000 64 O -0.724841771 8.396904622 5.388998470 CORE 65 O O 0.0000 65 O -10.418895247 15.711971400 9.210581835 CORE 66 O O 0.0000 66 O -10.283587508 15.445185247 5.565161001 CORE 67 O O 0.0000 67 O -0.910754045 8.511491866 9.121870046 CORE 68 O O 0.0000 68 O -12.589832412 9.130908423 7.271291046 CORE 69 O O 0.0000 69 O -2.519058573 16.013624072 3.519061081 CORE 70 O O 0.0000 70 O -9.038740956 7.942199977 3.232527493 CORE 71 O O 0.0000 71 O 1.066933665 15.059137870 7.324991455 CORE 72 O O 0.0000 72 O -2.508963838 7.852447602 3.505543360 CORE 73 O O 0.0000 73 O -12.231439028 15.128321852 7.323429542 CORE 74 O O 0.0000 74 O 1.032960857 8.906837905 7.304996646 CORE 75 O O 0.0000 75 O -8.655663920 16.008068054 3.504530840 CORE 76 O O 0.0000 76 O -13.218273559 8.427611047 4.855555995 CORE 77 O O 0.0000 77 O -3.372114922 15.558798776 8.671178649 CORE 78 O O 0.0000 78 O 1.717930399 15.663371524 4.831349602 CORE 79 O O 0.0000 79 O -7.912460913 8.488047876 8.399521202 CORE 80 O O 0.0000 80 O -3.318914296 8.428133870 5.991842956 CORE 81 O O 0.0000 81 O -13.044052356 15.611982972 9.761175085 CORE 82 O O 0.0000 82 O -7.627637177 15.727042300 5.919952245 CORE 83 O O 0.0000 83 O 1.588706636 8.430585673 9.838811984 CORE 84 O O 0.0000 84 O -7.700058501 8.586547405 5.798416075 CORE 85 O O 0.0000 85 O 1.874925988 15.659601925 9.788494732 CORE 86 O O 0.0000 86 O -3.449159753 15.666797763 6.003117536 CORE 87 O O 0.0000 87 O -12.927231905 8.376686218 9.794310982 CORE 88 O O 0.0000 88 O 1.881342702 8.401000570 4.881798460 CORE 89 O O 0.0000 89 O -7.847537462 15.674227986 8.609555855 CORE 90 O O 0.0000 90 O -12.834368815 15.683396914 4.760367726 CORE 91 O O 0.0000 91 O -3.510106123 8.247776342 8.651768074 CORE 92 O O 0.0000 92 O -9.474387011 6.069846061 5.634873385 CORE 93 O O 0.0000 93 O 0.586240903 13.348205845 9.366766749 CORE 94 O O 0.0000 94 O -2.176212485 17.898300573 5.374303685 CORE 95 O O 0.0000 95 O -11.732126577 10.692524344 9.274624180 CORE 96 O O 0.0000 96 O 0.632367230 10.690189156 5.386834978 CORE 97 O O 0.0000 97 O -8.950439597 17.961680172 9.340553420 CORE 98 O O 0.0000 98 O -11.853139263 13.302465133 5.425528402 CORE 99 O O 0.0000 99 O -2.030954923 6.078277964 9.214832368 CORE 100 O O 0.0000 100 O -11.925706846 10.720301550 5.227871833 CORE 101 O O 0.0000 101 O -2.152727770 17.854292081 9.227206115 CORE 102 O O 0.0000 102 O 0.520978941 13.322060532 5.375302285 CORE 103 O O 0.0000 103 O -9.102901937 6.120624581 8.830743297 CORE 104 O O 0.0000 104 O -2.107692803 6.117386598 5.477555148 CORE 105 O O 0.0000 105 O -11.726811999 13.345678941 9.210204822 CORE 106 O O 0.0000 106 O -9.199476917 17.838697493 5.350719107 CORE 107 O O 0.0000 107 O 0.514249887 10.747300792 9.136819368 CORE 108 O O 0.0000 108 O2 12.530578216 5.983850023 4.517227225 CORE 109 O2 O2 0.0000 109 O2 13.134747545 7.556796219 3.083651366 CORE 110 O2 O2 0.0000 110 H 13.381338113 6.626149980 3.500899915 CORE 111 H H 0.0000 111 H 13.460271219 8.159419169 3.840665080 CORE 112 H H 0.0000 112 C 13.721980121 5.899845525 5.354105764 CORE 113 C C 0.0000 113 C 13.306871476 4.552225659 5.808047496 CORE 114 C C 0.0000 114 H 13.517815921 3.578683314 5.353696952 CORE 115 H H 0.0000 115 H 12.571116307 4.507675028 6.686548238 CORE 116 H H 0.0000 116 H 14.604340356 5.881825945 4.709638543 CORE 117 H H 0.0000 117 H 13.867813672 6.594755828 6.229000684 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.339180858 4.796236521 3.562154443 CORE 1 Si Si 0.0000 1 Si -2.617697725 12.010022013 7.352121910 CORE 2 Si Si 0.0000 2 Si 1.087459721 4.747757585 3.505456106 CORE 3 Si Si 0.0000 3 Si -8.622604459 12.041569683 7.291088980 CORE 4 Si Si 0.0000 4 Si -13.669205184 7.705006423 11.071651872 CORE 5 Si Si 0.0000 5 Si -3.992518386 14.890958636 7.327952032 CORE 6 Si Si 0.0000 6 Si -7.182743147 9.254678578 7.185527281 CORE 7 Si Si 0.0000 7 Si 2.456991400 16.331204024 3.548422884 CORE 8 Si Si 0.0000 8 Si -13.606475036 16.345536312 3.495633743 CORE 9 Si Si 0.0000 9 Si -3.976784225 9.100589898 7.335869471 CORE 10 Si Si 0.0000 10 Si -7.214865784 14.943509881 7.299849907 CORE 11 Si Si 0.0000 11 Si 2.356039629 7.705530687 3.472747355 CORE 12 Si Si 0.0000 12 Si -10.205826203 4.625767217 5.860317673 CORE 13 Si Si 0.0000 13 Si -0.351354878 12.040181255 9.597532209 CORE 14 Si Si 0.0000 14 Si -10.850918513 12.021681521 9.565787064 CORE 15 Si Si 0.0000 15 Si -1.228237534 4.760213507 5.738886635 CORE 16 Si Si 0.0000 16 Si -9.975093154 4.754250273 8.921549657 CORE 17 Si Si 0.0000 17 Si -0.328851058 11.968958452 5.091929344 CORE 18 Si Si 0.0000 18 Si -10.950493336 11.999929244 5.047984885 CORE 19 Si Si 0.0000 19 Si -1.191938635 4.712686232 8.882989587 CORE 20 Si Si 0.0000 20 Ti -9.075193041 7.719279612 5.018954300 CORE 21 Ti Ti 0.0000 21 Si 0.706012123 14.925614412 8.919810419 CORE 22 Si Si 0.0000 22 Si -2.250820376 16.287952161 5.097511824 CORE 23 Si Si 0.0000 23 Si -11.939379529 9.155998865 8.773072452 CORE 24 Si Si 0.0000 24 Si 0.703824401 9.101417881 5.732541759 CORE 25 Si Si 0.0000 25 Si -8.966715684 16.349807400 9.563080416 CORE 26 Si Si 0.0000 26 Si -11.816841711 14.903459244 5.762188910 CORE 27 Si Si 0.0000 27 Si -2.252814882 7.673108764 9.511817283 CORE 28 Si Si 0.0000 28 Si -12.094215686 9.182328543 5.727309363 CORE 29 Si Si 0.0000 29 Si -2.204305887 16.256902809 9.553434009 CORE 30 Si Si 0.0000 30 Si 0.622875042 14.911199816 5.761060683 CORE 31 Si Si 0.0000 31 Si -9.087203379 7.738178346 9.237842602 CORE 32 Si Si 0.0000 32 Si -2.166040195 7.710643740 5.089064009 CORE 33 Si Si 0.0000 33 Si -11.833936655 14.947700102 8.894074063 CORE 34 Si Si 0.0000 34 Si -8.943962262 16.243298464 5.089244909 CORE 35 Si Si 0.0000 35 Si 0.556855614 9.151261460 8.835005240 CORE 36 Si Si 0.0000 36 O -15.281227953 7.862174381 3.327212241 CORE 37 O O 0.0000 37 O -5.599061266 14.997137330 7.379522878 CORE 38 O O 0.0000 38 O -15.200490284 16.087933503 3.650293485 CORE 39 O O 0.0000 39 O -5.578285030 9.071983268 7.245041887 CORE 40 O O 0.0000 40 O -10.548923817 4.373804752 7.440261409 CORE 41 O O 0.0000 41 O -0.817266085 11.943260429 3.541841881 CORE 42 O O 0.0000 42 O -10.422655634 12.091124824 3.514626530 CORE 43 O O 0.0000 43 O -0.796550277 4.678793572 7.303751801 CORE 44 O O 0.0000 44 O -13.250986426 6.134437939 3.529439531 CORE 45 O O 0.0000 45 O -3.573374157 13.317327596 7.257748830 CORE 46 O O 0.0000 46 O -7.538708445 10.839150369 7.204251000 CORE 47 O O 0.0000 47 O 2.128329323 17.924753497 3.531646156 CORE 48 O O 0.0000 48 O -3.506065535 10.656325181 7.441056439 CORE 49 O O 0.0000 49 O -13.347315268 17.947910634 3.419752362 CORE 50 O O 0.0000 50 O 1.917085626 6.134563780 3.486862318 CORE 51 O O 0.0000 51 O -7.757111119 13.414746019 7.240959398 CORE 52 O O 0.0000 52 O -11.611686031 4.589455620 5.011424296 CORE 53 O O 0.0000 53 O -1.693056227 12.149725070 8.687360189 CORE 54 O O 0.0000 54 O 0.118608656 4.736575926 4.822972383 CORE 55 O O 0.0000 55 O -9.484276406 12.000701874 8.679128723 CORE 56 O O 0.0000 56 O -1.656815062 11.925835457 6.031393333 CORE 57 O O 0.0000 57 O -11.218327397 4.837181160 9.978013785 CORE 58 O O 0.0000 58 O -9.624513446 11.969532447 6.001797151 CORE 59 O O 0.0000 59 O 0.183962223 4.641373481 9.752797181 CORE 60 O O 0.0000 60 O -10.615774034 8.537794444 5.496883033 CORE 61 O O 0.0000 61 O -0.746562338 15.633688689 9.187997834 CORE 62 O O 0.0000 62 O -10.510643114 8.383032452 8.718262758 CORE 63 O O 0.0000 63 O -0.847752549 15.593219159 5.543808227 CORE 64 O O 0.0000 64 O -0.724460537 8.398275464 5.389433375 CORE 65 O O 0.0000 65 O -10.424980184 15.709965156 9.208718676 CORE 66 O O 0.0000 66 O -10.283122944 15.442221288 5.564100098 CORE 67 O O 0.0000 67 O -0.913514678 8.512915322 9.116035995 CORE 68 O O 0.0000 68 O -12.587889289 9.132349320 7.278845773 CORE 69 O O 0.0000 69 O -2.520420703 16.013198404 3.519325584 CORE 70 O O 0.0000 70 O -9.036041713 7.944027622 3.229577034 CORE 71 O O 0.0000 71 O 1.063177127 15.056196830 7.327063890 CORE 72 O O 0.0000 72 O -2.510318271 7.853470616 3.504571006 CORE 73 O O 0.0000 73 O -12.229742813 15.127489256 7.321816659 CORE 74 O O 0.0000 74 O 1.031637793 8.906994593 7.307396571 CORE 75 O O 0.0000 75 O -8.654359909 16.008150795 3.508734588 CORE 76 O O 0.0000 76 O -13.224187412 8.423192497 4.852238792 CORE 77 O O 0.0000 77 O -3.369279621 15.561981407 8.677047693 CORE 78 O O 0.0000 78 O 1.716989533 15.662297914 4.833358288 CORE 79 O O 0.0000 79 O -7.916911410 8.483790338 8.409311995 CORE 80 O O 0.0000 80 O -3.318473595 8.428983763 5.990989958 CORE 81 O O 0.0000 81 O -13.042164272 15.612315376 9.760058726 CORE 82 O O 0.0000 82 O -7.632218344 15.727918427 5.917894112 CORE 83 O O 0.0000 83 O 1.590903210 8.428999043 9.840058731 CORE 84 O O 0.0000 84 O -7.695413634 8.589389559 5.798978628 CORE 85 O O 0.0000 85 O 1.872619528 15.658184956 9.787139278 CORE 86 O O 0.0000 86 O -3.448127090 15.670519938 5.998370785 CORE 87 O O 0.0000 87 O -12.928692759 8.378335841 9.795658676 CORE 88 O O 0.0000 88 O 1.883810817 8.399230440 4.878265135 CORE 89 O O 0.0000 89 O -7.845725972 15.673413121 8.609759805 CORE 90 O O 0.0000 90 O -12.833101561 15.682558841 4.765341172 CORE 91 O O 0.0000 91 O -3.510476773 8.246813582 8.652932359 CORE 92 O O 0.0000 92 O -9.475845171 6.061538558 5.637190543 CORE 93 O O 0.0000 93 O 0.587155790 13.354380544 9.366505593 CORE 94 O O 0.0000 94 O -2.178400784 17.896695780 5.372182641 CORE 95 O O 0.0000 95 O -11.733242376 10.694533903 9.274917971 CORE 96 O O 0.0000 96 O 0.631958283 10.690820521 5.386493490 CORE 97 O O 0.0000 97 O -8.950991916 17.963259451 9.340284733 CORE 98 O O 0.0000 98 O -11.852839240 13.305370136 5.424805108 CORE 99 O O 0.0000 99 O -2.029388608 6.077461801 9.213270226 CORE 100 O O 0.0000 100 O -11.929607141 10.721291987 5.226404705 CORE 101 O O 0.0000 101 O -2.155089462 17.854597097 9.227920508 CORE 102 O O 0.0000 102 O 0.521683869 13.327993640 5.376104162 CORE 103 O O 0.0000 103 O -9.101462251 6.134637583 8.835430179 CORE 104 O O 0.0000 104 O -2.104887908 6.116264987 5.478001084 CORE 105 O O 0.0000 105 O -11.726033171 13.346276144 9.210205506 CORE 106 O O 0.0000 106 O -9.201511260 17.838072038 5.353435948 CORE 107 O O 0.0000 107 O 0.514636896 10.746561028 9.136840669 CORE 108 O O 0.0000 108 O2 12.543673948 5.946597287 4.550869610 CORE 109 O2 O2 0.0000 109 O2 13.156795462 7.557191471 3.097359342 CORE 110 O2 O2 0.0000 110 H 13.385117937 6.656654023 3.484004971 CORE 111 H H 0.0000 111 H 13.460354548 8.142182022 3.824891059 CORE 112 H H 0.0000 112 C 13.724808687 5.892504241 5.359475166 CORE 113 C C 0.0000 113 C 13.288185970 4.566042621 5.814750519 CORE 114 C C 0.0000 114 H 13.526619922 3.574336981 5.349152020 CORE 115 H H 0.0000 115 H 12.585165221 4.509790103 6.676701836 CORE 116 H H 0.0000 116 H 14.618923885 5.880713560 4.703788897 CORE 117 H H 0.0000 117 H 13.871614473 6.595299552 6.222943818 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.333896879 4.793498441 3.570408806 CORE 1 Si Si 0.0000 1 Si -2.620389077 12.014739526 7.350621843 CORE 2 Si Si 0.0000 2 Si 1.086006565 4.760416610 3.505084265 CORE 3 Si Si 0.0000 3 Si -8.615681805 12.049716462 7.275508411 CORE 4 Si Si 0.0000 4 Si -13.674449712 7.709934391 11.071744300 CORE 5 Si Si 0.0000 5 Si -3.998580422 14.881793744 7.325463864 CORE 6 Si Si 0.0000 6 Si -7.181328480 9.255101074 7.170054582 CORE 7 Si Si 0.0000 7 Si 2.455590011 16.327555509 3.546543293 CORE 8 Si Si 0.0000 8 Si -13.596812149 16.339269360 3.493831441 CORE 9 Si Si 0.0000 9 Si -3.980840979 9.097625506 7.334612075 CORE 10 Si Si 0.0000 10 Si -7.212574334 14.938084605 7.298280615 CORE 11 Si Si 0.0000 11 Si 2.349951612 7.707073497 3.475226547 CORE 12 Si Si 0.0000 12 Si -10.198723035 4.631657513 5.855866614 CORE 13 Si Si 0.0000 13 Si -0.355226691 12.047204694 9.593830917 CORE 14 Si Si 0.0000 14 Si -10.848202144 12.028878945 9.561812217 CORE 15 Si Si 0.0000 15 Si -1.233053100 4.768062189 5.737804280 CORE 16 Si Si 0.0000 16 Si -9.967651859 4.750203334 8.916960375 CORE 17 Si Si 0.0000 17 Si -0.333073315 11.972021873 5.095471492 CORE 18 Si Si 0.0000 18 Si -10.950608611 12.009680528 5.060224593 CORE 19 Si Si 0.0000 19 Si -1.195261594 4.722948662 8.881439997 CORE 20 Si Si 0.0000 20 Ti -9.073896535 7.705560093 5.018667432 CORE 21 Ti Ti 0.0000 21 Si 0.706344862 14.919726711 8.912396349 CORE 22 Si Si 0.0000 22 Si -2.253380095 16.289266209 5.109498287 CORE 23 Si Si 0.0000 23 Si -11.946956113 9.146632022 8.766315570 CORE 24 Si Si 0.0000 24 Si 0.707022463 9.099175235 5.726710599 CORE 25 Si Si 0.0000 25 Si -8.965041215 16.351553025 9.561913926 CORE 26 Si Si 0.0000 26 Si -11.822076809 14.896237891 5.767487108 CORE 27 Si Si 0.0000 27 Si -2.258310167 7.667346038 9.517544604 CORE 28 Si Si 0.0000 28 Si -12.078700336 9.184193089 5.725789365 CORE 29 Si Si 0.0000 29 Si -2.204832996 16.255539030 9.545275116 CORE 30 Si Si 0.0000 30 Si 0.623348843 14.904245856 5.771010619 CORE 31 Si Si 0.0000 31 Si -9.102524359 7.727228476 9.218446785 CORE 32 Si Si 0.0000 32 Si -2.172096843 7.706056681 5.086677397 CORE 33 Si Si 0.0000 33 Si -11.845452408 14.955313824 8.886961467 CORE 34 Si Si 0.0000 34 Si -8.943696687 16.255736656 5.091306008 CORE 35 Si Si 0.0000 35 Si 0.559750380 9.147462455 8.842951815 CORE 36 Si Si 0.0000 36 O -15.281953088 7.861444562 3.325846289 CORE 37 O O 0.0000 37 O -5.606954038 14.999849031 7.381607331 CORE 38 O O 0.0000 38 O -15.206772864 16.090040073 3.649407397 CORE 39 O O 0.0000 39 O -5.568360803 9.070193678 7.246821291 CORE 40 O O 0.0000 40 O -10.554538418 4.377990649 7.438800062 CORE 41 O O 0.0000 41 O -0.820528423 11.939920677 3.540886262 CORE 42 O O 0.0000 42 O -10.419399262 12.088498890 3.508620175 CORE 43 O O 0.0000 43 O -0.797152824 4.678839267 7.306029402 CORE 44 O O 0.0000 44 O -13.253496686 6.133174487 3.523834761 CORE 45 O O 0.0000 45 O -3.569436719 13.312145208 7.258805320 CORE 46 O O 0.0000 46 O -7.543515544 10.842782162 7.205139828 CORE 47 O O 0.0000 47 O 2.130624429 17.922270702 3.531738812 CORE 48 O O 0.0000 48 O -3.504138192 10.662796247 7.440862607 CORE 49 O O 0.0000 49 O -13.350100919 17.943959554 3.416435311 CORE 50 O O 0.0000 50 O 1.920112025 6.137162469 3.487519125 CORE 51 O O 0.0000 51 O -7.758772502 13.413391899 7.241159239 CORE 52 O O 0.0000 52 O -11.608252801 4.596120708 5.015433832 CORE 53 O O 0.0000 53 O -1.700148233 12.147810360 8.686653782 CORE 54 O O 0.0000 54 O 0.119012214 4.734397859 4.821701521 CORE 55 O O 0.0000 55 O -9.485706854 11.997082477 8.681917986 CORE 56 O O 0.0000 56 O -1.661820188 11.923554036 6.035825298 CORE 57 O O 0.0000 57 O -11.221059932 4.840189517 9.983425407 CORE 58 O O 0.0000 58 O -9.625507043 11.964422710 6.006559345 CORE 59 O O 0.0000 59 O 0.180305179 4.640103975 9.751094078 CORE 60 O O 0.0000 60 O -10.628998703 8.546012000 5.502754816 CORE 61 O O 0.0000 61 O -0.744585729 15.632751731 9.189277520 CORE 62 O O 0.0000 62 O -10.491330235 8.375215049 8.721344289 CORE 63 O O 0.0000 63 O -0.846497803 15.594410826 5.542105123 CORE 64 O O 0.0000 64 O -0.723850676 8.400468811 5.390129207 CORE 65 O O 0.0000 65 O -10.434716008 15.706755281 9.205737636 CORE 66 O O 0.0000 66 O -10.282379527 15.437478838 5.562402624 CORE 67 O O 0.0000 67 O -0.917931882 8.515192995 9.106701483 CORE 68 O O 0.0000 68 O -12.584780330 9.134654814 7.290933336 CORE 69 O O 0.0000 69 O -2.522599957 16.012517452 3.519748849 CORE 70 O O 0.0000 70 O -9.031722849 7.946951941 3.224856223 CORE 71 O O 0.0000 71 O 1.057166473 15.051490850 7.330379875 CORE 72 O O 0.0000 72 O -2.512485401 7.855107410 3.503015330 CORE 73 O O 0.0000 73 O -12.227028560 15.126157190 7.319235987 CORE 74 O O 0.0000 74 O 1.029520891 8.907245554 7.311236466 CORE 75 O O 0.0000 75 O -8.652273798 16.008283122 3.515460737 CORE 76 O O 0.0000 76 O -13.233649193 8.416122643 4.846931237 CORE 77 O O 0.0000 77 O -3.364743486 15.567073702 8.686438270 CORE 78 O O 0.0000 78 O 1.715484223 15.660579965 4.836572185 CORE 79 O O 0.0000 79 O -7.924032475 8.476978075 8.424977233 CORE 80 O O 0.0000 80 O -3.317768282 8.430343505 5.989625224 CORE 81 O O 0.0000 81 O -13.039143261 15.612847280 9.758272552 CORE 82 O O 0.0000 82 O -7.639548598 15.729320261 5.914601024 CORE 83 O O 0.0000 83 O 1.594417845 8.426460607 9.842053571 CORE 84 O O 0.0000 84 O -7.687981577 8.593936978 5.799878790 CORE 85 O O 0.0000 85 O 1.868929383 15.655917949 9.784970536 CORE 86 O O 0.0000 86 O -3.446474752 15.676475532 5.990775967 CORE 87 O O 0.0000 87 O -12.931030011 8.380975180 9.797815094 CORE 88 O O 0.0000 88 O 1.887759609 8.396398232 4.872611832 CORE 89 O O 0.0000 89 O -7.842827548 15.672109163 8.610086078 CORE 90 O O 0.0000 90 O -12.831073954 15.681217982 4.773298701 CORE 91 O O 0.0000 91 O -3.511070083 8.245273078 8.654795214 CORE 92 O O 0.0000 92 O -9.478178189 6.048246581 5.640897920 CORE 93 O O 0.0000 93 O 0.588619724 13.364260263 9.366087652 CORE 94 O O 0.0000 94 O -2.181902139 17.894128083 5.368789062 CORE 95 O O 0.0000 95 O -11.735027694 10.697749399 9.275388021 CORE 96 O O 0.0000 96 O 0.631303968 10.691830995 5.385947064 CORE 97 O O 0.0000 97 O -8.951875818 17.965786066 9.339854773 CORE 98 O O 0.0000 98 O -11.852359088 13.310018169 5.423647822 CORE 99 O O 0.0000 99 O -2.026882389 6.076156114 9.210770798 CORE 100 O O 0.0000 100 O -11.935847960 10.722876455 5.224057346 CORE 101 O O 0.0000 101 O -2.158868132 17.855085036 9.229063493 CORE 102 O O 0.0000 102 O 0.522811793 13.337486611 5.377387195 CORE 103 O O 0.0000 103 O -9.099158677 6.157058560 8.842929222 CORE 104 O O 0.0000 104 O -2.100399884 6.114470496 5.478714564 CORE 105 O O 0.0000 105 O -11.724787278 13.347231553 9.210206571 CORE 106 O O 0.0000 106 O -9.204766093 17.837071366 5.357782864 CORE 107 O O 0.0000 107 O 0.515255801 10.745377433 9.136874749 CORE 108 O O 0.0000 108 O2 12.564627233 5.886992621 4.604697288 CORE 109 O2 O2 0.0000 109 O2 13.192072089 7.557823845 3.119292090 CORE 110 O2 O2 0.0000 110 H 13.391165925 6.705460462 3.456972953 CORE 111 H H 0.0000 111 H 13.460487913 8.114602586 3.799652519 CORE 112 H H 0.0000 112 C 13.729334430 5.880758246 5.368066148 CORE 113 C C 0.0000 113 C 13.258288775 4.588149789 5.825475326 CORE 114 C C 0.0000 114 H 13.540705979 3.567382734 5.341880205 CORE 115 H H 0.0000 115 H 12.607643253 4.513174252 6.660947518 CORE 116 H H 0.0000 116 H 14.642257530 5.878933916 4.694429586 CORE 117 H H 0.0000 117 H 13.877696139 6.596169337 6.213252908 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.336828403 4.795017611 3.565829186 CORE 1 Si Si 0.0000 1 Si -2.618895891 12.012122097 7.351454149 CORE 2 Si Si 0.0000 2 Si 1.086812719 4.753393172 3.505290572 CORE 3 Si Si 0.0000 3 Si -8.619522635 12.045196432 7.284152796 CORE 4 Si Si 0.0000 4 Si -13.671539934 7.707200347 11.071693028 CORE 5 Si Si 0.0000 5 Si -3.995217051 14.886878544 7.326844345 CORE 6 Si Si 0.0000 6 Si -7.182113273 9.254866691 7.178639022 CORE 7 Si Si 0.0000 7 Si 2.456367491 16.329579771 3.547586090 CORE 8 Si Si 0.0000 8 Si -13.602173299 16.342746339 3.494831334 CORE 9 Si Si 0.0000 9 Si -3.978590135 9.099270228 7.335309732 CORE 10 Si Si 0.0000 10 Si -7.213845630 14.941094691 7.299151261 CORE 11 Si Si 0.0000 11 Si 2.353329225 7.706217550 3.473851086 CORE 12 Si Si 0.0000 12 Si -10.202663936 4.628389547 5.858336145 CORE 13 Si Si 0.0000 13 Si -0.353078421 12.043307957 9.595884486 CORE 14 Si Si 0.0000 14 Si -10.849709185 12.024885629 9.564017549 CORE 15 Si Si 0.0000 15 Si -1.230381378 4.763707640 5.738404794 CORE 16 Si Si 0.0000 16 Si -9.971780395 4.752448574 8.919506587 CORE 17 Si Si 0.0000 17 Si -0.330730675 11.970322231 5.093506244 CORE 18 Si Si 0.0000 18 Si -10.950544719 12.004270388 5.053433783 CORE 19 Si Si 0.0000 19 Si -1.193417965 4.717254840 8.882299765 CORE 20 Si Si 0.0000 20 Ti -9.074615896 7.713171942 5.018826575 CORE 21 Ti Ti 0.0000 21 Si 0.706160306 14.922993380 8.916509800 CORE 22 Si Si 0.0000 22 Si -2.251960039 16.288537111 5.102847982 CORE 23 Si Si 0.0000 23 Si -11.942752523 9.151828969 8.770064406 CORE 24 Si Si 0.0000 24 Si 0.705248114 9.100419516 5.729945797 CORE 25 Si Si 0.0000 25 Si -8.965970150 16.350584499 9.562561148 CORE 26 Si Si 0.0000 26 Si -11.819172228 14.900244468 5.764547603 CORE 27 Si Si 0.0000 27 Si -2.255261444 7.670543228 9.514366994 CORE 28 Si Si 0.0000 28 Si -12.087308428 9.183158543 5.726632701 CORE 29 Si Si 0.0000 29 Si -2.204540671 16.256295660 9.549801791 CORE 30 Si Si 0.0000 30 Si 0.623085963 14.908104106 5.765490214 CORE 31 Si Si 0.0000 31 Si -9.094024036 7.733303569 9.229207878 CORE 32 Si Si 0.0000 32 Si -2.168736550 7.708601748 5.088001509 CORE 33 Si Si 0.0000 33 Si -11.839063214 14.951089584 8.890907711 CORE 34 Si Si 0.0000 34 Si -8.943844101 16.248835743 5.090162491 CORE 35 Si Si 0.0000 35 Si 0.558144422 9.149570179 8.838542900 CORE 36 Si Si 0.0000 36 O -15.281550685 7.861849472 3.326604120 CORE 37 O O 0.0000 37 O -5.602574938 14.998344565 7.380450806 CORE 38 O O 0.0000 38 O -15.203287096 16.088871326 3.649899051 CORE 39 O O 0.0000 39 O -5.573867057 9.071186565 7.245834026 CORE 40 O O 0.0000 40 O -10.551423301 4.375668290 7.439610839 CORE 41 O O 0.0000 41 O -0.818718472 11.941773692 3.541416409 CORE 42 O O 0.0000 42 O -10.421205941 12.089955788 3.511952593 CORE 43 O O 0.0000 43 O -0.796818546 4.678813897 7.304765767 CORE 44 O O 0.0000 44 O -13.252103958 6.133875476 3.526944364 CORE 45 O O 0.0000 45 O -3.571621169 13.315020517 7.258219184 CORE 46 O O 0.0000 46 O -7.540848440 10.840767270 7.204646728 CORE 47 O O 0.0000 47 O 2.129351017 17.923648175 3.531687387 CORE 48 O O 0.0000 48 O -3.505207420 10.659205967 7.440970173 CORE 49 O O 0.0000 49 O -13.348555388 17.946151604 3.418275649 CORE 50 O O 0.0000 50 O 1.918432937 6.135720707 3.487154739 CORE 51 O O 0.0000 51 O -7.757850688 13.414143195 7.241048326 CORE 52 O O 0.0000 52 O -11.610157628 4.592422750 5.013209254 CORE 53 O O 0.0000 53 O -1.696213490 12.148872583 8.687045706 CORE 54 O O 0.0000 54 O 0.118788400 4.735606247 4.822406634 CORE 55 O O 0.0000 55 O -9.484913208 11.999090594 8.680370449 CORE 56 O O 0.0000 56 O -1.659043197 11.924819795 6.033366341 CORE 57 O O 0.0000 57 O -11.219543845 4.838520434 9.980422915 CORE 58 O O 0.0000 58 O -9.624955686 11.967257657 6.003917206 CORE 59 O O 0.0000 59 O 0.182334133 4.640808279 9.752039046 CORE 60 O O 0.0000 60 O -10.621661522 8.541452761 5.499497101 CORE 61 O O 0.0000 61 O -0.745682476 15.633271526 9.188567538 CORE 62 O O 0.0000 62 O -10.502045221 8.379552301 8.719634643 CORE 63 O O 0.0000 63 O -0.847193879 15.593749766 5.543050016 CORE 64 O O 0.0000 64 O -0.724188996 8.399251918 5.389743141 CORE 65 O O 0.0000 65 O -10.429314444 15.708536223 9.207391597 CORE 66 O O 0.0000 66 O -10.282791938 15.440109961 5.563344397 CORE 67 O O 0.0000 67 O -0.915481087 8.513929255 9.111880401 CORE 68 O O 0.0000 68 O -12.586505220 9.133375650 7.284226966 CORE 69 O O 0.0000 69 O -2.521390821 16.012895262 3.519514014 CORE 70 O O 0.0000 70 O -9.034118989 7.945329562 3.227475388 CORE 71 O O 0.0000 71 O 1.060501171 15.054101792 7.328540070 CORE 72 O O 0.0000 72 O -2.511283193 7.854199281 3.503878445 CORE 73 O O 0.0000 73 O -12.228534447 15.126896234 7.320667741 CORE 74 O O 0.0000 74 O 1.030695387 8.907106307 7.309106065 CORE 75 O O 0.0000 75 O -8.653431166 16.008209751 3.511728941 CORE 76 O O 0.0000 76 O -13.228399662 8.420045182 4.849875991 CORE 77 O O 0.0000 77 O -3.367260290 15.564248413 8.681228239 CORE 78 O O 0.0000 78 O 1.716319437 15.661533068 4.834789053 CORE 79 O O 0.0000 79 O -7.920081567 8.480757621 8.416285911 CORE 80 O O 0.0000 80 O -3.318159524 8.429589038 5.990382370 CORE 81 O O 0.0000 81 O -13.040819462 15.612552210 9.759263544 CORE 82 O O 0.0000 82 O -7.635481645 15.728542586 5.916428049 CORE 83 O O 0.0000 83 O 1.592467793 8.427868927 9.840946797 CORE 84 O O 0.0000 84 O -7.692104916 8.591413965 5.799379377 CORE 85 O O 0.0000 85 O 1.870976812 15.657175780 9.786173770 CORE 86 O O 0.0000 86 O -3.447391370 15.673171241 5.994989681 CORE 87 O O 0.0000 87 O -12.929733313 8.379510786 9.796618707 CORE 88 O O 0.0000 88 O 1.885568808 8.397969583 4.875748364 CORE 89 O O 0.0000 89 O -7.844435624 15.672832639 8.609905027 CORE 90 O O 0.0000 90 O -12.832198798 15.681961927 4.768883701 CORE 91 O O 0.0000 91 O -3.510741001 8.246127728 8.653761698 CORE 92 O O 0.0000 92 O -9.476883800 6.055621162 5.638841005 CORE 93 O O 0.0000 93 O 0.587807603 13.358778914 9.366319520 CORE 94 O O 0.0000 94 O -2.179959401 17.895552691 5.370671848 CORE 95 O O 0.0000 95 O -11.734037177 10.695965431 9.275127246 CORE 96 O O 0.0000 96 O 0.631666920 10.691270405 5.386250211 CORE 97 O O 0.0000 97 O -8.951385467 17.964384233 9.340093335 CORE 98 O O 0.0000 98 O -11.852625433 13.307439372 5.424289871 CORE 99 O O 0.0000 99 O -2.028272809 6.076880599 9.212157518 CORE 100 O O 0.0000 100 O -11.932385478 10.721997300 5.225359702 CORE 101 O O 0.0000 101 O -2.156771629 17.854814327 9.228429355 CORE 102 O O 0.0000 102 O 0.522185960 13.332219753 5.376675311 CORE 103 O O 0.0000 103 O -9.100436709 6.144619071 8.838768606 CORE 104 O O 0.0000 104 O -2.102889938 6.115466122 5.478318685 CORE 105 O O 0.0000 105 O -11.725478543 13.346701523 9.210205963 CORE 106 O O 0.0000 106 O -9.202960183 17.837626622 5.355371148 CORE 107 O O 0.0000 107 O 0.514912478 10.746034025 9.136855807 CORE 108 O O 0.0000 108 O2 12.553001979 5.920062199 4.574832800 CORE 109 O2 O2 0.0000 109 O2 13.172499986 7.557472991 3.107123434 CORE 110 O2 O2 0.0000 110 H 13.387810443 6.678381938 3.471970734 CORE 111 H H 0.0000 111 H 13.460413821 8.129904122 3.813655275 CORE 112 H H 0.0000 112 C 13.726823400 5.887275150 5.363299694 CORE 113 C C 0.0000 113 C 13.274876239 4.575884430 5.819525037 CORE 114 C C 0.0000 114 H 13.532890763 3.571240983 5.345914769 CORE 115 H H 0.0000 115 H 12.595172008 4.511296732 6.669688286 CORE 116 H H 0.0000 116 H 14.629311521 5.879921326 4.699622272 CORE 117 H H 0.0000 117 H 13.874321990 6.595686732 6.218629537 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.339478764 4.792722928 3.573795616 CORE 1 Si Si 0.0000 1 Si -2.617376533 12.010737705 7.351008822 CORE 2 Si Si 0.0000 2 Si 1.088893634 4.759312441 3.502204477 CORE 3 Si Si 0.0000 3 Si -8.618575802 12.052084804 7.279951862 CORE 4 Si Si 0.0000 4 Si -13.678532253 7.707195878 11.069980339 CORE 5 Si Si 0.0000 5 Si -3.995517458 14.882070507 7.326390194 CORE 6 Si Si 0.0000 6 Si -7.181779765 9.252021221 7.183719502 CORE 7 Si Si 0.0000 7 Si 2.448184704 16.324630613 3.545294112 CORE 8 Si Si 0.0000 8 Si -13.599778891 16.333740730 3.496897378 CORE 9 Si Si 0.0000 9 Si -3.970584205 9.100618007 7.337806877 CORE 10 Si Si 0.0000 10 Si -7.218647533 14.939214144 7.292442608 CORE 11 Si Si 0.0000 11 Si 2.356440300 7.705863091 3.474666503 CORE 12 Si Si 0.0000 12 Si -10.200886509 4.623605006 5.854743028 CORE 13 Si Si 0.0000 13 Si -0.352903488 12.052757540 9.588522525 CORE 14 Si Si 0.0000 14 Si -10.847995457 12.029325225 9.558996025 CORE 15 Si Si 0.0000 15 Si -1.231434248 4.762684626 5.738271211 CORE 16 Si Si 0.0000 16 Si -9.968967225 4.758121495 8.914507809 CORE 17 Si Si 0.0000 17 Si -0.333035211 11.977402752 5.096967756 CORE 18 Si Si 0.0000 18 Si -10.949914844 12.013115417 5.056860149 CORE 19 Si Si 0.0000 19 Si -1.196628535 4.720259016 8.881174277 CORE 20 Si Si 0.0000 20 Ti -9.073909813 7.699951029 5.008235883 CORE 21 Ti Ti 0.0000 21 Si 0.706484192 14.924788448 8.911483712 CORE 22 Si Si 0.0000 22 Si -2.246122394 16.289482862 5.104324391 CORE 23 Si Si 0.0000 23 Si -11.939291774 9.144359250 8.773740746 CORE 24 Si Si 0.0000 24 Si 0.711062473 9.097556748 5.728444588 CORE 25 Si Si 0.0000 25 Si -8.969727650 16.343327542 9.563980959 CORE 26 Si Si 0.0000 26 Si -11.818551976 14.897602823 5.768691787 CORE 27 Si Si 0.0000 27 Si -2.257051380 7.666339313 9.517500634 CORE 28 Si Si 0.0000 28 Si -12.089001180 9.185284429 5.725929110 CORE 29 Si Si 0.0000 29 Si -2.195728394 16.259046857 9.550959001 CORE 30 Si Si 0.0000 30 Si 0.624845878 14.909899029 5.773932931 CORE 31 Si Si 0.0000 31 Si -9.108822141 7.728253653 9.215351712 CORE 32 Si Si 0.0000 32 Si -2.172254456 7.705904750 5.087816502 CORE 33 Si Si 0.0000 33 Si -11.851991902 14.951216001 8.881333572 CORE 34 Si Si 0.0000 34 Si -8.948896183 16.257894110 5.093272170 CORE 35 Si Si 0.0000 35 Si 0.562052415 9.144683582 8.847606291 CORE 36 Si Si 0.0000 36 O -15.288592654 7.856791484 3.324941487 CORE 37 O O 0.0000 37 O -5.605579014 15.000594994 7.384279062 CORE 38 O O 0.0000 38 O -15.197780073 16.089743418 3.646354012 CORE 39 O O 0.0000 39 O -5.573464075 9.068606038 7.249690049 CORE 40 O O 0.0000 40 O -10.556819861 4.382244583 7.433772909 CORE 41 O O 0.0000 41 O -0.819353542 11.938738380 3.540150720 CORE 42 O O 0.0000 42 O -10.418164146 12.086575387 3.519655280 CORE 43 O O 0.0000 43 O -0.796841832 4.680728607 7.302624868 CORE 44 O O 0.0000 44 O -13.251714448 6.130840164 3.519790385 CORE 45 O O 0.0000 45 O -3.571438154 13.315663414 7.258435001 CORE 46 O O 0.0000 46 O -7.543950086 10.840440488 7.208919626 CORE 47 O O 0.0000 47 O 2.128419772 17.928487636 3.531991448 CORE 48 O O 0.0000 48 O -3.503371873 10.660892348 7.439408868 CORE 49 O O 0.0000 49 O -13.349970633 17.941026442 3.409455918 CORE 50 O O 0.0000 50 O 1.924056390 6.141577560 3.487897964 CORE 51 O O 0.0000 51 O -7.757101882 13.419181003 7.241350713 CORE 52 O O 0.0000 52 O -11.601420982 4.598831688 5.019788659 CORE 53 O O 0.0000 53 O -1.703383243 12.148752219 8.687427056 CORE 54 O O 0.0000 54 O 0.116299116 4.733986606 4.822592631 CORE 55 O O 0.0000 55 O -9.475406203 11.994818786 8.670789616 CORE 56 O O 0.0000 56 O -1.661835198 11.923182713 6.035390165 CORE 57 O O 0.0000 57 O -11.214828928 4.843008175 9.978087271 CORE 58 O O 0.0000 58 O -9.628174147 11.959967402 6.009742053 CORE 59 O O 0.0000 59 O 0.177805888 4.640590040 9.751414417 CORE 60 O O 0.0000 60 O -10.617045329 8.539314767 5.506529136 CORE 61 O O 0.0000 61 O -0.740813987 15.629598650 9.188890921 CORE 62 O O 0.0000 62 O -10.500893627 8.380304174 8.717185576 CORE 63 O O 0.0000 63 O -0.842339823 15.593126905 5.542130455 CORE 64 O O 0.0000 64 O -0.728597347 8.399295739 5.388208765 CORE 65 O O 0.0000 65 O -10.434318223 15.708515610 9.204180134 CORE 66 O O 0.0000 66 O -10.281342245 15.433419503 5.559364301 CORE 67 O O 0.0000 67 O -0.922973764 8.511657059 9.099649061 CORE 68 O O 0.0000 68 O -12.582623592 9.136091531 7.283579516 CORE 69 O O 0.0000 69 O -2.522455815 16.014036045 3.521930371 CORE 70 O O 0.0000 70 O -9.029721607 7.941882132 3.226947828 CORE 71 O O 0.0000 71 O 1.053791554 15.047133562 7.331752370 CORE 72 O O 0.0000 72 O -2.515660561 7.854925640 3.506077615 CORE 73 O O 0.0000 73 O -12.226758751 15.127130329 7.315511265 CORE 74 O O 0.0000 74 O 1.027711518 8.906194719 7.310395108 CORE 75 O O 0.0000 75 O -8.648032105 16.008819206 3.513063855 CORE 76 O O 0.0000 76 O -13.230171509 8.421526152 4.856574449 CORE 77 O O 0.0000 77 O -3.373891003 15.560424615 8.675630621 CORE 78 O O 0.0000 78 O 1.713705833 15.657075453 4.841704851 CORE 79 O O 0.0000 79 O -7.912350065 8.481192657 8.423939913 CORE 80 O O 0.0000 80 O -3.317770207 8.429791709 5.988316858 CORE 81 O O 0.0000 81 O -13.039532386 15.613636919 9.756626350 CORE 82 O O 0.0000 82 O -7.642253036 15.728711238 5.917866041 CORE 83 O O 0.0000 83 O 1.603555162 8.425419430 9.842224505 CORE 84 O O 0.0000 84 O -7.689638341 8.591567482 5.791636599 CORE 85 O O 0.0000 85 O 1.864965004 15.653499012 9.780407195 CORE 86 O O 0.0000 86 O -3.458019756 15.670839657 5.997659053 CORE 87 O O 0.0000 87 O -12.933944407 8.383990599 9.797639672 CORE 88 O O 0.0000 88 O 1.890147089 8.396286085 4.873363729 CORE 89 O O 0.0000 89 O -7.838516382 15.673562457 8.609134644 CORE 90 O O 0.0000 90 O -12.830531834 15.683642686 4.779488390 CORE 91 O O 0.0000 91 O -3.508966075 8.245072713 8.656339555 CORE 92 O O 0.0000 92 O -9.472796256 6.044139533 5.639665323 CORE 93 O O 0.0000 93 O 0.590416396 13.362442276 9.365653356 CORE 94 O O 0.0000 94 O -2.182131727 17.900815081 5.369159990 CORE 95 O O 0.0000 95 O -11.737006420 10.692461640 9.274105368 CORE 96 O O 0.0000 96 O 0.630975463 10.693241333 5.385264848 CORE 97 O O 0.0000 97 O -8.950854509 17.965905853 9.342321413 CORE 98 O O 0.0000 98 O -11.853556677 13.313233089 5.421953011 CORE 99 O O 0.0000 99 O -2.027792657 6.081281852 9.209939330 CORE 100 O O 0.0000 100 O -11.938941138 10.732053167 5.226445784 CORE 101 O O 0.0000 101 O -2.160353619 17.861851171 9.227276634 CORE 102 O O 0.0000 102 O 0.522971138 13.333195631 5.377617161 CORE 103 O O 0.0000 103 O -9.105554030 6.145290942 8.844918281 CORE 104 O O 0.0000 104 O -2.099285046 6.118950021 5.478491901 CORE 105 O O 0.0000 105 O -11.726922847 13.357960445 9.206747874 CORE 106 O O 0.0000 106 O -9.206157282 17.842041281 5.360933697 CORE 107 O O 0.0000 107 O 0.515568332 10.748035367 9.139408637 CORE 108 O O 0.0000 108 O2 12.561949353 5.829961563 4.661576450 CORE 109 O2 O2 0.0000 109 O2 13.198159336 7.569186121 3.083706137 CORE 110 O2 O2 0.0000 110 H 13.383828551 6.697018469 3.445107825 CORE 111 H H 0.0000 111 H 13.467001042 8.137440149 3.815080868 CORE 112 H H 0.0000 112 C 13.763004137 5.885582139 5.374297143 CORE 113 C C 0.0000 113 C 13.240542018 4.575738120 5.786327066 CORE 114 C C 0.0000 114 H 13.536611121 3.592476492 5.341314685 CORE 115 H H 0.0000 115 H 12.598081016 4.517332328 6.669505713 CORE 116 H H 0.0000 116 H 14.648295511 5.877613382 4.701494865 CORE 117 H H 0.0000 117 H 13.870459607 6.604445705 6.204988580 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.342591764 4.790027660 3.583153329 CORE 1 Si Si 0.0000 1 Si -2.615591600 12.009111434 7.350485750 CORE 2 Si Si 0.0000 2 Si 1.091338078 4.766265247 3.498579486 CORE 3 Si Si 0.0000 3 Si -8.617463659 12.060176231 7.275017289 CORE 4 Si Si 0.0000 4 Si -13.686745447 7.707190689 11.067968458 CORE 5 Si Si 0.0000 5 Si -3.995870211 14.876422956 7.325856776 CORE 6 Si Si 0.0000 6 Si -7.181387946 9.248678875 7.189687212 CORE 7 Si Si 0.0000 7 Si 2.438573008 16.318817148 3.542601842 CORE 8 Si Si 0.0000 8 Si -13.596966106 16.323162472 3.499324156 CORE 9 Si Si 0.0000 9 Si -3.961180158 9.102201322 7.340740220 CORE 10 Si Si 0.0000 10 Si -7.224287921 14.937005229 7.284562292 CORE 11 Si Si 0.0000 11 Si 2.360094650 7.705446794 3.475624252 CORE 12 Si Si 0.0000 12 Si -10.198798859 4.617984987 5.850522468 CORE 13 Si Si 0.0000 13 Si -0.352697764 12.063857323 9.579874869 CORE 14 Si Si 0.0000 14 Si -10.845982283 12.034540046 9.553097541 CORE 15 Si Si 0.0000 15 Si -1.232671096 4.761483013 5.738114350 CORE 16 Si Si 0.0000 16 Si -9.965662741 4.764785142 8.908636178 CORE 17 Si Si 0.0000 17 Si -0.335742151 11.985719625 5.101033813 CORE 18 Si Si 0.0000 18 Si -10.949175084 12.023505130 5.060884824 CORE 19 Si Si 0.0000 19 Si -1.200399699 4.723787889 8.879852219 CORE 20 Si Si 0.0000 20 Ti -9.073080565 7.684421452 4.995795725 CORE 21 Ti Ti 0.0000 21 Si 0.706864850 14.926896892 8.905579903 CORE 22 Si Si 0.0000 22 Si -2.239265364 16.290593806 5.106058684 CORE 23 Si Si 0.0000 23 Si -11.935226745 9.135585141 8.778059135 CORE 24 Si Si 0.0000 24 Si 0.717892176 9.094194222 5.726681236 CORE 25 Si Si 0.0000 25 Si -8.974141006 16.334803240 9.565648765 CORE 26 Si Si 0.0000 26 Si -11.817823377 14.894500050 5.773559721 CORE 27 Si Si 0.0000 27 Si -2.259153848 7.661401255 9.521181539 CORE 28 Si Si 0.0000 28 Si -12.090989528 9.187781639 5.725102662 CORE 29 Si Si 0.0000 29 Si -2.185377130 16.262278498 9.552318334 CORE 30 Si Si 0.0000 30 Si 0.626913128 14.912007329 5.783849928 CORE 31 Si Si 0.0000 31 Si -9.126204406 7.722321843 9.199075843 CORE 32 Si Si 0.0000 32 Si -2.176387033 7.702736822 5.087599087 CORE 33 Si Si 0.0000 33 Si -11.867178363 14.951364473 8.870087443 CORE 34 Si Si 0.0000 34 Si -8.954830436 16.268534352 5.096925003 CORE 35 Si Si 0.0000 35 Si 0.566643012 9.138943488 8.858252515 CORE 36 Si Si 0.0000 36 O -15.296864544 7.850850016 3.322988486 CORE 37 O O 0.0000 37 O -5.609107504 15.003238369 7.388775764 CORE 38 O O 0.0000 38 O -15.191311398 16.090768018 3.642189821 CORE 39 O O 0.0000 39 O -5.572990852 9.065574618 7.254219386 CORE 40 O O 0.0000 40 O -10.563158826 4.389969443 7.426915383 CORE 41 O O 0.0000 41 O -0.820099847 11.935173038 3.538664042 CORE 42 O O 0.0000 42 O -10.414591008 12.082604703 3.528703076 CORE 43 O O 0.0000 43 O -0.796869352 4.682977451 7.300110150 CORE 44 O O 0.0000 44 O -13.251256812 6.127274822 3.511386996 CORE 45 O O 0.0000 45 O -3.571222999 13.316418458 7.258688473 CORE 46 O O 0.0000 46 O -7.547593274 10.840056912 7.213938791 CORE 47 O O 0.0000 47 O 2.127325911 17.934172233 3.532348607 CORE 48 O O 0.0000 48 O -3.501215713 10.662873222 7.437574844 CORE 49 O O 0.0000 49 O -13.351632978 17.935006270 3.399095877 CORE 50 O O 0.0000 50 O 1.930661701 6.148457284 3.488770968 CORE 51 O O 0.0000 51 O -7.756222405 13.425098542 7.241705818 CORE 52 O O 0.0000 52 O -11.591158435 4.606359787 5.027517135 CORE 53 O O 0.0000 53 O -1.711804856 12.148610667 8.687874893 CORE 54 O O 0.0000 54 O 0.113375097 4.732084005 4.822811110 CORE 55 O O 0.0000 55 O -9.464238777 11.989801015 8.659535727 CORE 56 O O 0.0000 56 O -1.665114664 11.921259642 6.037767344 CORE 57 O O 0.0000 57 O -11.209290728 4.848279646 9.975343652 CORE 58 O O 0.0000 58 O -9.631954741 11.951404037 6.016584136 CORE 59 O O 0.0000 59 O 0.172486883 4.640333602 9.750680701 CORE 60 O O 0.0000 60 O -10.611623174 8.536803431 5.514789281 CORE 61 O O 0.0000 61 O -0.735095273 15.625284174 9.189270825 CORE 62 O O 0.0000 62 O -10.499540734 8.381187365 8.714308755 CORE 63 O O 0.0000 63 O -0.836637852 15.592395213 5.541050231 CORE 64 O O 0.0000 64 O -0.733775674 8.399347344 5.386406311 CORE 65 O O 0.0000 65 O -10.440196089 15.708491249 9.200407867 CORE 66 O O 0.0000 66 O -10.279639486 15.425560730 5.554689058 CORE 67 O O 0.0000 67 O -0.931774687 8.508987882 9.085281690 CORE 68 O O 0.0000 68 O -12.578064171 9.139281513 7.282818946 CORE 69 O O 0.0000 69 O -2.523706712 16.015376039 3.524768699 CORE 70 O O 0.0000 70 O -9.024556559 7.937832743 3.226328220 CORE 71 O O 0.0000 71 O 1.045910137 15.038948584 7.335525625 CORE 72 O O 0.0000 72 O -2.520802515 7.855778848 3.508660798 CORE 73 O O 0.0000 73 O -12.224673026 15.127405218 7.309454247 CORE 74 O O 0.0000 74 O 1.024206506 8.905123848 7.311909248 CORE 75 O O 0.0000 75 O -8.641690252 16.009535330 3.514631931 CORE 76 O O 0.0000 76 O -13.232252616 8.423265723 4.864442670 CORE 77 O O 0.0000 77 O -3.381679854 15.555932837 8.669055551 CORE 78 O O 0.0000 78 O 1.710635749 15.651839298 4.849828369 CORE 79 O O 0.0000 79 O -7.903268556 8.481703804 8.432930578 CORE 80 O O 0.0000 80 O -3.317312763 8.430029841 5.985890613 CORE 81 O O 0.0000 81 O -13.038020533 15.614911182 9.753528615 CORE 82 O O 0.0000 82 O -7.650207005 15.728909297 5.919555072 CORE 83 O O 0.0000 83 O 1.616578726 8.422542248 9.843725333 CORE 84 O O 0.0000 84 O -7.686741072 8.591747667 5.782541639 CORE 85 O O 0.0000 85 O 1.857903597 15.649180355 9.773633577 CORE 86 O O 0.0000 86 O -3.470504280 15.668100856 6.000794596 CORE 87 O O 0.0000 87 O -12.938891029 8.389252701 9.798838949 CORE 88 O O 0.0000 88 O 1.895524982 8.394308383 4.870562676 CORE 89 O O 0.0000 89 O -7.831563514 15.674419702 8.608229689 CORE 90 O O 0.0000 90 O -12.828573893 15.685617073 4.791944979 CORE 91 O O 0.0000 91 O -3.506881312 8.243833622 8.659367608 CORE 92 O O 0.0000 92 O -9.467994738 6.030652813 5.640633646 CORE 93 O O 0.0000 93 O 0.593480707 13.366745364 9.364870802 CORE 94 O O 0.0000 94 O -2.184683363 17.906996554 5.367384009 CORE 95 O O 0.0000 95 O -11.740493919 10.688346087 9.272905026 CORE 96 O O 0.0000 96 O 0.630163342 10.695556485 5.384107410 CORE 97 O O 0.0000 97 O -8.950230793 17.967693137 9.344938676 CORE 98 O O 0.0000 98 O -11.854650538 13.320038576 5.419208022 CORE 99 O O 0.0000 99 O -2.027228791 6.086451699 9.207333782 CORE 100 O O 0.0000 100 O -11.946641464 10.743865039 5.227721590 CORE 101 O O 0.0000 101 O -2.164561250 17.870116872 9.225922625 CORE 102 O O 0.0000 102 O 0.523893337 13.334341891 5.378723402 CORE 103 O O 0.0000 103 O -9.111564876 6.146080293 8.852141866 CORE 104 O O 0.0000 104 O -2.095050666 6.123042366 5.478695394 CORE 105 O O 0.0000 105 O -11.728619255 13.371185681 9.202685924 CORE 106 O O 0.0000 106 O -9.209912473 17.847226840 5.367467612 CORE 107 O O 0.0000 107 O 0.516338692 10.750386267 9.142407326 CORE 108 O O 0.0000 108 O2 12.572459192 5.724126084 4.763468579 CORE 109 O2 O2 0.0000 109 O2 13.228299398 7.582944703 3.056199430 CORE 110 O2 O2 0.0000 110 H 13.379151546 6.718909559 3.413553773 CORE 111 H H 0.0000 111 H 13.474738703 8.146292385 3.816755521 CORE 112 H H 0.0000 112 C 13.805503055 5.883593481 5.387215111 CORE 113 C C 0.0000 113 C 13.200212153 4.575566152 5.747331635 CORE 114 C C 0.0000 114 H 13.540981368 3.617420480 5.335911354 CORE 115 H H 0.0000 115 H 12.601497888 4.524422075 6.669291266 CORE 116 H H 0.0000 116 H 14.670594761 5.874902401 4.703694415 CORE 117 H H 0.0000 117 H 13.865922509 6.614734226 6.188965346 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.345704956 4.787332247 3.592510967 CORE 1 Si Si 0.0000 1 Si -2.613806860 12.007485163 7.349962678 CORE 2 Si Si 0.0000 2 Si 1.093782522 4.773218198 3.494954495 CORE 3 Si Si 0.0000 3 Si -8.616351324 12.068267513 7.270082715 CORE 4 Si Si 0.0000 4 Si -13.694958641 7.707185500 11.065956653 CORE 5 Si Si 0.0000 5 Si -3.996222964 14.870775404 7.325323358 CORE 6 Si Si 0.0000 6 Si -7.180996126 9.245336529 7.195654845 CORE 7 Si Si 0.0000 7 Si 2.428961119 16.313003683 3.539909572 CORE 8 Si Si 0.0000 8 Si -13.594153513 16.312584214 3.501751010 CORE 9 Si Si 0.0000 9 Si -3.951776111 9.103784637 7.343673487 CORE 10 Si Si 0.0000 10 Si -7.229928309 14.934796458 7.276682052 CORE 11 Si Si 0.0000 11 Si 2.363749000 7.705030352 3.476582077 CORE 12 Si Si 0.0000 12 Si -10.196711016 4.612364968 5.846301832 CORE 13 Si Si 0.0000 13 Si -0.352492039 12.074957106 9.571227289 CORE 14 Si Si 0.0000 14 Si -10.843969110 12.039754723 9.547199057 CORE 15 Si Si 0.0000 15 Si -1.233907944 4.760281400 5.737957413 CORE 16 Si Si 0.0000 16 Si -9.962358258 4.771448788 8.902764472 CORE 17 Si Si 0.0000 17 Si -0.338448898 11.994036642 5.105099794 CORE 18 Si Si 0.0000 18 Si -10.948435515 12.033894987 5.064909498 CORE 19 Si Si 0.0000 19 Si -1.204170863 4.727316617 8.878530160 CORE 20 Si Si 0.0000 20 Ti -9.072251125 7.668891731 4.983355567 CORE 21 Ti Ti 0.0000 21 Si 0.707245507 14.929005480 8.899676094 CORE 22 Si Si 0.0000 22 Si -2.232408335 16.291704606 5.107792901 CORE 23 Si Si 0.0000 23 Si -11.931161717 9.126811033 8.782377524 CORE 24 Si Si 0.0000 24 Si 0.724721685 9.090831551 5.724917807 CORE 25 Si Si 0.0000 25 Si -8.978554553 16.326278939 9.567316495 CORE 26 Si Si 0.0000 26 Si -11.817094970 14.891397277 5.778427732 CORE 27 Si Si 0.0000 27 Si -2.261256509 7.656463053 9.524862443 CORE 28 Si Si 0.0000 28 Si -12.092977876 9.190278705 5.724276214 CORE 29 Si Si 0.0000 29 Si -2.175025865 16.265509995 9.553677592 CORE 30 Si Si 0.0000 30 Si 0.628980379 14.914115773 5.793767000 CORE 31 Si Si 0.0000 31 Si -9.143586671 7.716390033 9.182799974 CORE 32 Si Si 0.0000 32 Si -2.180519418 7.699568751 5.087381749 CORE 33 Si Si 0.0000 33 Si -11.882365015 14.951513089 8.858841313 CORE 34 Si Si 0.0000 34 Si -8.960764881 16.279174593 5.100577760 CORE 35 Si Si 0.0000 35 Si 0.571233417 9.133203394 8.868898663 CORE 36 Si Si 0.0000 36 O -15.305136241 7.844908548 3.321035485 CORE 37 O O 0.0000 37 O -5.612636187 15.005881744 7.393272466 CORE 38 O O 0.0000 38 O -15.184842532 16.091792473 3.638025707 CORE 39 O O 0.0000 39 O -5.572517436 9.062543342 7.258748723 CORE 40 O O 0.0000 40 O -10.569497985 4.397694302 7.420057933 CORE 41 O O 0.0000 41 O -0.820845958 11.931607696 3.537177288 CORE 42 O O 0.0000 42 O -10.411017870 12.078634018 3.537750948 CORE 43 O O 0.0000 43 O -0.796896872 4.685226438 7.297595357 CORE 44 O O 0.0000 44 O -13.250799176 6.123709480 3.502983608 CORE 45 O O 0.0000 45 O -3.571007845 13.317173647 7.258941946 CORE 46 O O 0.0000 46 O -7.551236462 10.839673191 7.218957957 CORE 47 O O 0.0000 47 O 2.126232051 17.939856830 3.532705765 CORE 48 O O 0.0000 48 O -3.499059552 10.664854239 7.435740896 CORE 49 O O 0.0000 49 O -13.353295516 17.928986097 3.388735913 CORE 50 O O 0.0000 50 O 1.937267204 6.155337007 3.489643896 CORE 51 O O 0.0000 51 O -7.755342929 13.431016082 7.242060999 CORE 52 O O 0.0000 52 O -11.580895888 4.613887741 5.035245535 CORE 53 O O 0.0000 53 O -1.720226660 12.148469114 8.688322806 CORE 54 O O 0.0000 54 O 0.110451079 4.730181547 4.823029589 CORE 55 O O 0.0000 55 O -9.453071543 11.984783099 8.648281763 CORE 56 O O 0.0000 56 O -1.668394322 11.919336571 6.040144523 CORE 57 O O 0.0000 57 O -11.203752528 4.853551117 9.972600033 CORE 58 O O 0.0000 58 O -9.635735335 11.942840527 6.023426295 CORE 59 O O 0.0000 59 O 0.167167879 4.640077163 9.749946985 CORE 60 O O 0.0000 60 O -10.606201019 8.534292095 5.523049425 CORE 61 O O 0.0000 61 O -0.729376560 15.620969842 9.189650654 CORE 62 O O 0.0000 62 O -10.498188034 8.382070556 8.711432010 CORE 63 O O 0.0000 63 O -0.830936074 15.591663665 5.539970082 CORE 64 O O 0.0000 64 O -0.738953808 8.399398948 5.384603933 CORE 65 O O 0.0000 65 O -10.446073763 15.708467032 9.196635600 CORE 66 O O 0.0000 66 O -10.277936920 15.417701814 5.550013814 CORE 67 O O 0.0000 67 O -0.940575610 8.506318848 9.070914320 CORE 68 O O 0.0000 68 O -12.573504749 9.142471640 7.282058377 CORE 69 O O 0.0000 69 O -2.524957608 16.016716034 3.527607028 CORE 70 O O 0.0000 70 O -9.019391319 7.933783354 3.225708536 CORE 71 O O 0.0000 71 O 1.038028719 15.030763605 7.339298805 CORE 72 O O 0.0000 72 O -2.525944469 7.856632057 3.511243981 CORE 73 O O 0.0000 73 O -12.222587108 15.127680108 7.303397229 CORE 74 O O 0.0000 74 O 1.020701494 8.904052977 7.313423389 CORE 75 O O 0.0000 75 O -8.635348207 16.010251311 3.516199930 CORE 76 O O 0.0000 76 O -13.234333915 8.425005439 4.872310891 CORE 77 O O 0.0000 77 O -3.389468705 15.551441204 8.662480405 CORE 78 O O 0.0000 78 O 1.707565471 15.646603144 4.857951964 CORE 79 O O 0.0000 79 O -7.894186856 8.482214807 8.441921244 CORE 80 O O 0.0000 80 O -3.316855320 8.430267828 5.983464443 CORE 81 O O 0.0000 81 O -13.036508680 15.616185446 9.750430880 CORE 82 O O 0.0000 82 O -7.658160782 15.729107355 5.921244178 CORE 83 O O 0.0000 83 O 1.629602291 8.419664921 9.845226237 CORE 84 O O 0.0000 84 O -7.683843804 8.591927995 5.773446678 CORE 85 O O 0.0000 85 O 1.850841998 15.644861555 9.766859959 CORE 86 O O 0.0000 86 O -3.482988804 15.665362055 6.003930063 CORE 87 O O 0.0000 87 O -12.943837459 8.394514802 9.800038303 CORE 88 O O 0.0000 88 O 1.900902874 8.392330824 4.867761623 CORE 89 O O 0.0000 89 O -7.824610647 15.675276947 8.607324735 CORE 90 O O 0.0000 90 O -12.826615759 15.687591316 4.804401569 CORE 91 O O 0.0000 91 O -3.504796548 8.242594387 8.662395661 CORE 92 O O 0.0000 92 O -9.463193220 6.017166093 5.641601968 CORE 93 O O 0.0000 93 O 0.596545019 13.371048597 9.364088323 CORE 94 O O 0.0000 94 O -2.187235000 17.913178172 5.365608104 CORE 95 O O 0.0000 95 O -11.743981611 10.684230534 9.271704683 CORE 96 O O 0.0000 96 O 0.629351029 10.697871636 5.382949972 CORE 97 O O 0.0000 97 O -8.949607077 17.969480420 9.347555863 CORE 98 O O 0.0000 98 O -11.855744399 13.326844064 5.416463034 CORE 99 O O 0.0000 99 O -2.026664733 6.091621546 9.204728234 CORE 100 O O 0.0000 100 O -11.954341983 10.755676766 5.228997397 CORE 101 O O 0.0000 101 O -2.168768689 17.878382573 9.224568617 CORE 102 O O 0.0000 102 O 0.524815729 13.335488296 5.379829644 CORE 103 O O 0.0000 103 O -9.117575722 6.146869500 8.859365451 CORE 104 O O 0.0000 104 O -2.090816285 6.127134710 5.478898811 CORE 105 O O 0.0000 105 O -11.730315856 13.384410918 9.198623899 CORE 106 O O 0.0000 106 O -9.213667857 17.852412399 5.374001603 CORE 107 O O 0.0000 107 O 0.517109052 10.752737023 9.145405939 CORE 108 O O 0.0000 108 O2 12.582969032 5.618290749 4.865360709 CORE 109 O2 O2 0.0000 109 O2 13.258439652 7.596703429 3.028692722 CORE 110 O2 O2 0.0000 110 H 13.374474348 6.740800794 3.381999646 CORE 111 H H 0.0000 111 H 13.482476171 8.155144478 3.818430097 CORE 112 H H 0.0000 112 C 13.848002167 5.881604823 5.400133078 CORE 113 C C 0.0000 113 C 13.159882097 4.575394184 5.708336203 CORE 114 C C 0.0000 114 H 13.545351423 3.642364325 5.330508024 CORE 115 H H 0.0000 115 H 12.604914760 4.531511821 6.669076818 CORE 116 H H 0.0000 116 H 14.692894011 5.872191421 4.705893966 CORE 117 H H 0.0000 117 H 13.861385604 6.625022892 6.172942113 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.342950097 4.789717310 3.584230435 CORE 1 Si Si 0.0000 1 Si -2.615386261 12.008924331 7.350425501 CORE 2 Si Si 0.0000 2 Si 1.091619433 4.767065698 3.498162230 CORE 3 Si Si 0.0000 3 Si -8.617335490 12.061107567 7.274449258 CORE 4 Si Si 0.0000 4 Si -13.687690740 7.707190112 11.067736894 CORE 5 Si Si 0.0000 5 Si -3.995910817 14.875772851 7.325795386 CORE 6 Si Si 0.0000 6 Si -7.181342721 9.248294145 7.190374067 CORE 7 Si Si 0.0000 7 Si 2.437466638 16.318148016 3.542291924 CORE 8 Si Si 0.0000 8 Si -13.596642412 16.321944859 3.499603569 CORE 9 Si Si 0.0000 9 Si -3.960097844 9.102383524 7.341077829 CORE 10 Si Si 0.0000 10 Si -7.224937232 14.936750953 7.283655208 CORE 11 Si Si 0.0000 11 Si 2.360515336 7.705398793 3.475734557 CORE 12 Si Si 0.0000 12 Si -10.198558494 4.617338054 5.850036595 CORE 13 Si Si 0.0000 13 Si -0.352674093 12.065134902 9.578879465 CORE 14 Si Si 0.0000 14 Si -10.845750579 12.035140276 9.552418597 CORE 15 Si Si 0.0000 15 Si -1.232813506 4.761344632 5.738096245 CORE 16 Si Si 0.0000 16 Si -9.965282469 4.765552150 8.907960277 CORE 17 Si Si 0.0000 17 Si -0.336053720 11.986677052 5.101501809 CORE 18 Si Si 0.0000 18 Si -10.949090023 12.024701121 5.061348103 CORE 19 Si Si 0.0000 19 Si -1.200833856 4.724194096 8.879699998 CORE 20 Si Si 0.0000 20 Ti -9.072985112 7.682633880 4.994363743 CORE 21 Ti Ti 0.0000 21 Si 0.706908727 14.927139636 8.904900350 CORE 22 Si Si 0.0000 22 Si -2.238476145 16.290721665 5.106258298 CORE 23 Si Si 0.0000 23 Si -11.934758718 9.134575245 8.778556191 CORE 24 Si Si 0.0000 24 Si 0.718678316 9.093807042 5.726478199 CORE 25 Si Si 0.0000 25 Si -8.974649062 16.333822029 9.565840695 CORE 26 Si Si 0.0000 26 Si -11.817739663 14.894142852 5.774120069 CORE 27 Si Si 0.0000 27 Si -2.259395945 7.660832738 9.521605261 CORE 28 Si Si 0.0000 28 Si -12.091218538 9.188069069 5.725007496 CORE 29 Si Si 0.0000 29 Si -2.184185699 16.262650398 9.552474739 CORE 30 Si Si 0.0000 30 Si 0.627151184 14.912250074 5.784991467 CORE 31 Si Si 0.0000 31 Si -9.128205263 7.721639016 9.197202338 CORE 32 Si Si 0.0000 32 Si -2.176862566 7.702372129 5.087574136 CORE 33 Si Si 0.0000 33 Si -11.868926538 14.951381627 8.868792923 CORE 34 Si Si 0.0000 34 Si -8.955513618 16.269759172 5.097345454 CORE 35 Si Si 0.0000 35 Si 0.567171276 9.138282716 8.859477961 CORE 36 Si Si 0.0000 36 O -15.297816765 7.850166181 3.322763692 CORE 37 O O 0.0000 37 O -5.609513757 15.003542664 7.389293359 CORE 38 O O 0.0000 38 O -15.190566826 16.090885930 3.641710491 CORE 39 O O 0.0000 39 O -5.572936390 9.065225781 7.254740708 CORE 40 O O 0.0000 40 O -10.563888580 4.390858688 7.426126058 CORE 41 O O 0.0000 41 O -0.820185677 11.934762651 3.538492880 CORE 42 O O 0.0000 42 O -10.414179752 12.082147756 3.529744580 CORE 43 O O 0.0000 43 O -0.796872624 4.683236339 7.299820696 CORE 44 O O 0.0000 44 O -13.251204082 6.126864434 3.510419662 CORE 45 O O 0.0000 45 O -3.571198174 13.316505379 7.258717609 CORE 46 O O 0.0000 46 O -7.548012613 10.840012658 7.214516559 CORE 47 O O 0.0000 47 O 2.127200052 17.934826518 3.532389762 CORE 48 O O 0.0000 48 O -3.500967458 10.663101263 7.437363743 CORE 49 O O 0.0000 49 O -13.351824461 17.934313353 3.397903370 CORE 50 O O 0.0000 50 O 1.931422054 6.149249230 3.488871384 CORE 51 O O 0.0000 51 O -7.756121179 13.425779639 7.241746745 CORE 52 O O 0.0000 52 O -11.589977204 4.607226257 5.028406723 CORE 53 O O 0.0000 53 O -1.712774397 12.148594378 8.687926470 CORE 54 O O 0.0000 54 O 0.113038510 4.731865045 4.822836290 CORE 55 O O 0.0000 55 O -9.462953432 11.989223416 8.658240294 CORE 56 O O 0.0000 56 O -1.665492242 11.921038231 6.038040976 CORE 57 O O 0.0000 57 O -11.208653156 4.848886363 9.975027877 CORE 58 O O 0.0000 58 O -9.632389860 11.950418212 6.017371711 CORE 59 O O 0.0000 59 O 0.171874521 4.640304051 9.750596261 CORE 60 O O 0.0000 60 O -10.610999073 8.536514415 5.515740107 CORE 61 O O 0.0000 61 O -0.734437109 15.624787586 9.189314567 CORE 62 O O 0.0000 62 O -10.499385046 8.381288989 8.713977613 CORE 63 O O 0.0000 63 O -0.835981613 15.592311031 5.540925929 CORE 64 O O 0.0000 64 O -0.734371678 8.399353254 5.386198862 CORE 65 O O 0.0000 65 O -10.440872535 15.708488510 9.199973647 CORE 66 O O 0.0000 66 O -10.279443577 15.424656061 5.554150923 CORE 67 O O 0.0000 67 O -0.932787721 8.508680704 9.083627881 CORE 68 O O 0.0000 68 O -12.577539372 9.139648801 7.282731387 CORE 69 O O 0.0000 69 O -2.523850661 16.015530277 3.525095429 CORE 70 O O 0.0000 70 O -9.023961902 7.937366571 3.226256864 CORE 71 O O 0.0000 71 O 1.045002948 15.038006436 7.335959921 CORE 72 O O 0.0000 72 O -2.521394285 7.855877013 3.508958164 CORE 73 O O 0.0000 73 O -12.224432853 15.127436787 7.308757046 CORE 74 O O 0.0000 74 O 1.023802947 8.905000602 7.312083530 CORE 75 O O 0.0000 75 O -8.640960113 16.009617783 3.514812450 CORE 76 O O 0.0000 76 O -13.232492210 8.423466088 4.865348385 CORE 77 O O 0.0000 77 O -3.382576458 15.555415925 8.668298709 CORE 78 O O 0.0000 78 O 1.710282226 15.651236618 4.850763448 CORE 79 O O 0.0000 79 O -7.902223192 8.481762616 8.433965464 CORE 80 O O 0.0000 80 O -3.317260033 8.430057229 5.985611352 CORE 81 O O 0.0000 81 O -13.037846370 15.615057780 9.753172065 CORE 82 O O 0.0000 82 O -7.651122469 15.728932072 5.919749512 CORE 83 O O 0.0000 83 O 1.618077878 8.422210997 9.843898093 CORE 84 O O 0.0000 84 O -7.686407564 8.591768424 5.781494733 CORE 85 O O 0.0000 85 O 1.857090707 15.648683191 9.772853913 CORE 86 O O 0.0000 86 O -3.471941272 15.667785606 6.001155482 CORE 87 O O 0.0000 87 O -12.939460284 8.389858408 9.798977020 CORE 88 O O 0.0000 88 O 1.896144079 8.394080774 4.870240282 CORE 89 O O 0.0000 89 O -7.830763133 15.674518299 8.608125546 CORE 90 O O 0.0000 90 O -12.828348539 15.685844249 4.793378863 CORE 91 O O 0.0000 91 O -3.506641332 8.243690916 8.659716171 CORE 92 O O 0.0000 92 O -9.467442034 6.029100345 5.640745092 CORE 93 O O 0.0000 93 O 0.593833460 13.367240799 9.364780732 CORE 94 O O 0.0000 94 O -2.184977035 17.907708210 5.367179603 CORE 95 O O 0.0000 95 O -11.740895361 10.687872419 9.272766802 CORE 96 O O 0.0000 96 O 0.630069814 10.695822869 5.383974208 CORE 97 O O 0.0000 97 O -8.950159011 17.967898835 9.345239922 CORE 98 O O 0.0000 98 O -11.854776590 13.320822018 5.418892019 CORE 99 O O 0.0000 99 O -2.027163745 6.087046739 9.207033829 CORE 100 O O 0.0000 100 O -11.947527869 10.745224637 5.227868486 CORE 101 O O 0.0000 101 O -2.165045443 17.871068245 9.225766753 CORE 102 O O 0.0000 102 O 0.523999567 13.334473930 5.378850747 CORE 103 O O 0.0000 103 O -9.112256718 6.146171106 8.852973334 CORE 104 O O 0.0000 104 O -2.094563201 6.123513439 5.478718824 CORE 105 O O 0.0000 105 O -11.728814588 13.372708022 9.202218309 CORE 106 O O 0.0000 106 O -9.210344706 17.847823754 5.368219738 CORE 107 O O 0.0000 107 O 0.516427410 10.750656832 9.142752465 CORE 108 O O 0.0000 108 O2 12.573668905 5.711943754 4.775197082 CORE 109 O2 O2 0.0000 109 O2 13.231768807 7.584528450 3.053033230 CORE 110 O2 O2 0.0000 110 H 13.378613083 6.721429400 3.409921632 CORE 111 H H 0.0000 111 H 13.475629341 8.147311363 3.816948288 CORE 112 H H 0.0000 112 C 13.810395023 5.883364575 5.388702093 CORE 113 C C 0.0000 113 C 13.195569788 4.575546404 5.742842996 CORE 114 C C 0.0000 114 H 13.541484229 3.620291608 5.335289388 CORE 115 H H 0.0000 115 H 12.601891247 4.525238093 6.669266542 CORE 116 H H 0.0000 116 H 14.673161601 5.874590322 4.703947584 CORE 117 H H 0.0000 117 H 13.865400404 6.615918541 6.187120977 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.339984318 4.784203960 3.583216393 CORE 1 Si Si 0.0000 1 Si -2.618738856 12.009003900 7.349997443 CORE 2 Si Si 0.0000 2 Si 1.089889347 4.771311272 3.497216272 CORE 3 Si Si 0.0000 3 Si -8.610167084 12.060629142 7.271953406 CORE 4 Si Si 0.0000 4 Si -13.690372277 7.705025595 11.071978983 CORE 5 Si Si 0.0000 5 Si -4.003526852 14.874717115 7.326227172 CORE 6 Si Si 0.0000 6 Si -7.181590206 9.246147646 7.194398437 CORE 7 Si Si 0.0000 7 Si 2.436231137 16.317383747 3.542764104 CORE 8 Si Si 0.0000 8 Si -13.593379497 16.317080316 3.504427990 CORE 9 Si Si 0.0000 9 Si -3.956497379 9.102572501 7.344049208 CORE 10 Si Si 0.0000 10 Si -7.223370918 14.944771027 7.281992422 CORE 11 Si Si 0.0000 11 Si 2.362338758 7.705667627 3.478003105 CORE 12 Si Si 0.0000 12 Si -10.198443604 4.614920701 5.855965052 CORE 13 Si Si 0.0000 13 Si -0.354497900 12.066081374 9.578213301 CORE 14 Si Si 0.0000 14 Si -10.841039125 12.035252999 9.551202279 CORE 15 Si Si 0.0000 15 Si -1.232996329 4.762550857 5.737675794 CORE 16 Si Si 0.0000 16 Si -9.969190077 4.760780871 8.903861813 CORE 17 Si Si 0.0000 17 Si -0.338000692 11.986116463 5.098748757 CORE 18 Si Si 0.0000 18 Si -10.949558820 12.024958424 5.062547989 CORE 19 Si Si 0.0000 19 Si -1.203253860 4.727145226 8.875821535 CORE 20 Si Si 0.0000 20 Ti -9.071855649 7.678170788 4.991515753 CORE 21 Ti Ti 0.0000 21 Si 0.704184467 14.925382623 8.905867303 CORE 22 Si Si 0.0000 22 Si -2.243272467 16.289722868 5.110801860 CORE 23 Si Si 0.0000 23 Si -11.934706372 9.136744231 8.779029740 CORE 24 Si Si 0.0000 24 Si 0.715214487 9.094351631 5.727778500 CORE 25 Si Si 0.0000 25 Si -8.975826637 16.329563338 9.563382347 CORE 26 Si Si 0.0000 26 Si -11.810067241 14.897558570 5.770846303 CORE 27 Si Si 0.0000 27 Si -2.261499568 7.664436711 9.524287337 CORE 28 Si Si 0.0000 28 Si -12.089050638 9.195254962 5.724068385 CORE 29 Si Si 0.0000 29 Si -2.189077859 16.262714256 9.550365257 CORE 30 Si Si 0.0000 30 Si 0.625252708 14.910017663 5.786567226 CORE 31 Si Si 0.0000 31 Si -9.120690455 7.726765763 9.198811721 CORE 32 Si Si 0.0000 32 Si -2.176539450 7.705207365 5.088521691 CORE 33 Si Si 0.0000 33 Si -11.869159013 14.956751118 8.863987520 CORE 34 Si Si 0.0000 34 Si -8.957881084 16.269795930 5.096290333 CORE 35 Si Si 0.0000 35 Si 0.564268426 9.137661152 8.862260986 CORE 36 Si Si 0.0000 36 O -15.294562125 7.844587532 3.320218774 CORE 37 O O 0.0000 37 O -5.611005210 15.003635207 7.392076155 CORE 38 O O 0.0000 38 O -15.197613607 16.090331684 3.637176285 CORE 39 O O 0.0000 39 O -5.569783361 9.062566694 7.259639300 CORE 40 O O 0.0000 40 O -10.567970352 4.398958908 7.424843329 CORE 41 O O 0.0000 41 O -0.817780877 11.935170732 3.535555277 CORE 42 O O 0.0000 42 O -10.412798954 12.080580873 3.526539203 CORE 43 O O 0.0000 43 O -0.796615131 4.685295629 7.300050662 CORE 44 O O 0.0000 44 O -13.252181706 6.129103620 3.504413536 CORE 45 O O 0.0000 45 O -3.569736550 13.312455702 7.257990435 CORE 46 O O 0.0000 46 O -7.550531534 10.837972828 7.219241250 CORE 47 O O 0.0000 47 O 2.127262019 17.932937899 3.532570205 CORE 48 O O 0.0000 48 O -3.499796426 10.661388215 7.435598565 CORE 49 O O 0.0000 49 O -13.349348071 17.929924930 3.389239739 CORE 50 O O 0.0000 50 O 1.934206549 6.146844851 3.489409214 CORE 51 O O 0.0000 51 O -7.757843760 13.425541796 7.240250557 CORE 52 O O 0.0000 52 O -11.592497279 4.612576720 5.025477260 CORE 53 O O 0.0000 53 O -1.714634961 12.150635361 8.692410544 CORE 54 O O 0.0000 54 O 0.114354261 4.731041386 4.818572293 CORE 55 O O 0.0000 55 O -9.463754968 11.986497156 8.658923042 CORE 56 O O 0.0000 56 O -1.664295615 11.920706116 6.036200334 CORE 57 O O 0.0000 57 O -11.208543269 4.853902548 9.978256379 CORE 58 O O 0.0000 58 O -9.638834671 11.944972467 6.019991332 CORE 59 O O 0.0000 59 O 0.170218334 4.641099024 9.752447934 CORE 60 O O 0.0000 60 O -10.603147870 8.531205610 5.521353929 CORE 61 O O 0.0000 61 O -0.733163697 15.623898341 9.189966277 CORE 62 O O 0.0000 62 O -10.510986822 8.386213208 8.706920626 CORE 63 O O 0.0000 63 O -0.831928324 15.592821457 5.540996448 CORE 64 O O 0.0000 64 O -0.732774379 8.401137078 5.384616409 CORE 65 O O 0.0000 65 O -10.448269952 15.707400485 9.195659062 CORE 66 O O 0.0000 66 O -10.278971315 15.419281237 5.550057632 CORE 67 O O 0.0000 67 O -0.933512086 8.507605941 9.072086516 CORE 68 O O 0.0000 68 O -12.572654140 9.141389669 7.283031035 CORE 69 O O 0.0000 69 O -2.521493395 16.018127958 3.524455054 CORE 70 O O 0.0000 70 O -9.021581350 7.929316803 3.212855534 CORE 71 O O 0.0000 71 O 1.041956342 15.032650351 7.337277719 CORE 72 O O 0.0000 72 O -2.526266623 7.855042255 3.509192923 CORE 73 O O 0.0000 73 O -12.227246023 15.129666603 7.305176100 CORE 74 O O 0.0000 74 O 1.021405268 8.903487342 7.314855904 CORE 75 O O 0.0000 75 O -8.636849668 16.011755056 3.518202530 CORE 76 O O 0.0000 76 O -13.237492332 8.421967964 4.865647881 CORE 77 O O 0.0000 77 O -3.376968593 15.558037678 8.672211481 CORE 78 O O 0.0000 78 O 1.713926953 15.650514295 4.851941426 CORE 79 O O 0.0000 79 O -7.898283638 8.478891632 8.442695202 CORE 80 O O 0.0000 80 O -3.319042272 8.431259418 5.986087183 CORE 81 O O 0.0000 81 O -13.041486093 15.616647150 9.752053272 CORE 82 O O 0.0000 82 O -7.660235539 15.731612493 5.919390528 CORE 83 O O 0.0000 83 O 1.628205136 8.422336405 9.840810856 CORE 84 O O 0.0000 84 O -7.687779509 8.588271696 5.773999190 CORE 85 O O 0.0000 85 O 1.856526456 15.649909741 9.772571533 CORE 86 O O 0.0000 86 O -3.473182546 15.669871851 5.995515340 CORE 87 O O 0.0000 87 O -12.945422633 8.392545316 9.802181180 CORE 88 O O 0.0000 88 O 1.900489886 8.394220885 4.872117896 CORE 89 O O 0.0000 89 O -7.828894679 15.676771179 8.609525731 CORE 90 O O 0.0000 90 O -12.830804530 15.691130135 4.799396096 CORE 91 O O 0.0000 91 O -3.504886613 8.243675204 8.661182157 CORE 92 O O 0.0000 92 O -9.457248575 6.024077961 5.638252815 CORE 93 O O 0.0000 93 O 0.597654853 13.370039277 9.362926930 CORE 94 O O 0.0000 94 O -2.187812529 17.908915445 5.365437018 CORE 95 O O 0.0000 95 O -11.738964746 10.688412971 9.273112018 CORE 96 O O 0.0000 96 O 0.629140302 10.696191310 5.383698903 CORE 97 O O 0.0000 97 O -8.951382580 17.966330223 9.347214527 CORE 98 O O 0.0000 98 O -11.857278575 13.324108434 5.416104506 CORE 99 O O 0.0000 99 O -2.026403200 6.087084794 9.204507396 CORE 100 O O 0.0000 100 O -11.953974027 10.754007539 5.231586665 CORE 101 O O 0.0000 101 O -2.169287907 17.873481705 9.224986557 CORE 102 O O 0.0000 102 O 0.526061044 13.337555370 5.381700791 CORE 103 O O 0.0000 103 O -9.117363070 6.139511640 8.855342906 CORE 104 O O 0.0000 104 O -2.090917704 6.122971301 5.479592437 CORE 105 O O 0.0000 105 O -11.727420127 13.372456917 9.200283793 CORE 106 O O 0.0000 106 O -9.208628861 17.847233470 5.370916648 CORE 107 O O 0.0000 107 O 0.516705878 10.750931289 9.146137068 CORE 108 O O 0.0000 108 O2 12.571929005 5.606108275 4.854866325 CORE 109 O2 O2 0.0000 109 O2 13.255805071 7.618323955 3.027297863 CORE 110 O2 O2 0.0000 110 H 13.374096962 6.714408701 3.390441907 CORE 111 H H 0.0000 111 H 13.479759224 8.157001817 3.814821766 CORE 112 H H 0.0000 112 C 13.856178796 5.870850850 5.408552441 CORE 113 C C 0.0000 113 C 13.155624815 4.601252932 5.705124360 CORE 114 C C 0.0000 114 H 13.543883448 3.635807635 5.321917803 CORE 115 H H 0.0000 115 H 12.603540313 4.530966799 6.671064128 CORE 116 H H 0.0000 116 H 14.695213173 5.872081725 4.703731767 CORE 117 H H 0.0000 117 H 13.863138014 6.634188649 6.183171157 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.337018731 4.778690610 3.582202275 CORE 1 Si Si 0.0000 1 Si -2.622091451 12.009083614 7.349569385 CORE 2 Si Si 0.0000 2 Si 1.088159069 4.775556845 3.496270239 CORE 3 Si Si 0.0000 3 Si -8.602998677 12.060150717 7.269457554 CORE 4 Si Si 0.0000 4 Si -13.693053621 7.702860933 11.076221147 CORE 5 Si Si 0.0000 5 Si -4.011142887 14.873661524 7.326658881 CORE 6 Si Si 0.0000 6 Si -7.181837691 9.244001003 7.198422807 CORE 7 Si Si 0.0000 7 Si 2.434995636 16.316619477 3.543236360 CORE 8 Si Si 0.0000 8 Si -13.590116774 16.312215774 3.509252411 CORE 9 Si Si 0.0000 9 Si -3.952897106 9.102761335 7.347020510 CORE 10 Si Si 0.0000 10 Si -7.221804410 14.952790956 7.280329637 CORE 11 Si Si 0.0000 11 Si 2.364162180 7.705936462 3.480271729 CORE 12 Si Si 0.0000 12 Si -10.198328522 4.612503349 5.861893508 CORE 13 Si Si 0.0000 13 Si -0.356321707 12.067027845 9.577547213 CORE 14 Si Si 0.0000 14 Si -10.836327672 12.035365723 9.549985961 CORE 15 Si Si 0.0000 15 Si -1.233179152 4.763756938 5.737255343 CORE 16 Si Si 0.0000 16 Si -9.973097493 4.756009448 8.899763272 CORE 17 Si Si 0.0000 17 Si -0.339947857 11.985556018 5.095995629 CORE 18 Si Si 0.0000 18 Si -10.950027618 12.025215727 5.063747952 CORE 19 Si Si 0.0000 19 Si -1.205673864 4.730096500 8.871943071 CORE 20 Si Si 0.0000 20 Ti -9.070726186 7.673707552 4.988667839 CORE 21 Ti Ti 0.0000 21 Si 0.701460207 14.923625466 8.906834333 CORE 22 Si Si 0.0000 22 Si -2.248068981 16.288724070 5.115345423 CORE 23 Si Si 0.0000 23 Si -11.934654027 9.138913361 8.779503213 CORE 24 Si Si 0.0000 24 Si 0.711750659 9.094896075 5.729078726 CORE 25 Si Si 0.0000 25 Si -8.977004211 16.325304647 9.560923998 CORE 26 Si Si 0.0000 26 Si -11.802395012 14.900974287 5.767572537 CORE 27 Si Si 0.0000 27 Si -2.263603191 7.668040541 9.526969490 CORE 28 Si Si 0.0000 28 Si -12.086882931 9.202440854 5.723129274 CORE 29 Si Si 0.0000 29 Si -2.193970211 16.262778257 9.548255776 CORE 30 Si Si 0.0000 30 Si 0.623354232 14.907785252 5.788142908 CORE 31 Si Si 0.0000 31 Si -9.113175838 7.731892366 9.200421104 CORE 32 Si Si 0.0000 32 Si -2.176216334 7.708042600 5.089469246 CORE 33 Si Si 0.0000 33 Si -11.869391295 14.962120609 8.859182117 CORE 34 Si Si 0.0000 34 Si -8.960248549 16.269832831 5.095235212 CORE 35 Si Si 0.0000 35 Si 0.561365384 9.137039589 8.865044010 CORE 36 Si Si 0.0000 36 O -15.291307484 7.839008883 3.317673932 CORE 37 O O 0.0000 37 O -5.612496856 15.003727750 7.394858875 CORE 38 O O 0.0000 38 O -15.204660581 16.089777437 3.632642003 CORE 39 O O 0.0000 39 O -5.566630332 9.059907751 7.264537891 CORE 40 O O 0.0000 40 O -10.572052123 4.407059271 7.423560524 CORE 41 O O 0.0000 41 O -0.815376077 11.935578669 3.532617598 CORE 42 O O 0.0000 42 O -10.411418350 12.079013991 3.523333826 CORE 43 O O 0.0000 43 O -0.796357639 4.687355063 7.300280704 CORE 44 O O 0.0000 44 O -13.253159522 6.131342806 3.498407334 CORE 45 O O 0.0000 45 O -3.568274925 13.308406025 7.257263185 CORE 46 O O 0.0000 46 O -7.553050262 10.835933142 7.223966016 CORE 47 O O 0.0000 47 O 2.127323987 17.931049279 3.532750648 CORE 48 O O 0.0000 48 O -3.498625395 10.659675311 7.433833462 CORE 49 O O 0.0000 49 O -13.346871489 17.925536650 3.380576031 CORE 50 O O 0.0000 50 O 1.936990852 6.144440616 3.489946968 CORE 51 O O 0.0000 51 O -7.759566533 13.425304096 7.238754370 CORE 52 O O 0.0000 52 O -11.595017162 4.617927328 5.022547797 CORE 53 O O 0.0000 53 O -1.716495525 12.152676344 8.696894694 CORE 54 O O 0.0000 54 O 0.115669819 4.730217728 4.814308295 CORE 55 O O 0.0000 55 O -9.464556504 11.983770896 8.659605790 CORE 56 O O 0.0000 56 O -1.663098989 11.920373856 6.034359691 CORE 57 O O 0.0000 57 O -11.208433191 4.858918734 9.981484882 CORE 58 O O 0.0000 58 O -9.645279290 11.939526578 6.022610877 CORE 59 O O 0.0000 59 O 0.168562148 4.641893997 9.754299683 CORE 60 O O 0.0000 60 O -10.595296474 8.525896950 5.526967750 CORE 61 O O 0.0000 61 O -0.731890284 15.623009096 9.190618064 CORE 62 O O 0.0000 62 O -10.522588405 8.391137572 8.699863563 CORE 63 O O 0.0000 63 O -0.827875227 15.593331883 5.541067043 CORE 64 O O 0.0000 64 O -0.731177273 8.402920902 5.383033956 CORE 65 O O 0.0000 65 O -10.455667369 15.706312605 9.191344477 CORE 66 O O 0.0000 66 O -10.278499054 15.413906412 5.545964341 CORE 67 O O 0.0000 67 O -0.934236451 8.506531177 9.060545075 CORE 68 O O 0.0000 68 O -12.567769100 9.143130682 7.283330760 CORE 69 O O 0.0000 69 O -2.519135936 16.020725494 3.523814678 CORE 70 O O 0.0000 70 O -9.019200798 7.921267035 3.199454128 CORE 71 O O 0.0000 71 O 1.038909735 15.027294266 7.338595594 CORE 72 O O 0.0000 72 O -2.531138769 7.854207497 3.509427757 CORE 73 O O 0.0000 73 O -12.230059193 15.131896419 7.301595231 CORE 74 O O 0.0000 74 O 1.019007588 8.901974083 7.317628278 CORE 75 O O 0.0000 75 O -8.632739029 16.013892474 3.521592610 CORE 76 O O 0.0000 76 O -13.242492454 8.420469840 4.865947454 CORE 77 O O 0.0000 77 O -3.371360536 15.560659431 8.676124253 CORE 78 O O 0.0000 78 O 1.717571488 15.649791973 4.853119328 CORE 79 O O 0.0000 79 O -7.894344084 8.476020648 8.451425016 CORE 80 O O 0.0000 80 O -3.320824511 8.432461607 5.986563014 CORE 81 O O 0.0000 81 O -13.045125817 15.618236375 9.750934402 CORE 82 O O 0.0000 82 O -7.669348800 15.734292770 5.919031543 CORE 83 O O 0.0000 83 O 1.638332586 8.422461813 9.837723543 CORE 84 O O 0.0000 84 O -7.689151454 8.584774968 5.766503647 CORE 85 O O 0.0000 85 O 1.855962206 15.651136436 9.772289229 CORE 86 O O 0.0000 86 O -3.474423627 15.671958241 5.989875197 CORE 87 O O 0.0000 87 O -12.951384983 8.395232223 9.805385340 CORE 88 O O 0.0000 88 O 1.904835693 8.394360996 4.873995509 CORE 89 O O 0.0000 89 O -7.827026032 15.679023914 8.610925915 CORE 90 O O 0.0000 90 O -12.833260713 15.696415876 4.805413405 CORE 91 O O 0.0000 91 O -3.503131701 8.243659492 8.662648144 CORE 92 O O 0.0000 92 O -9.447055308 6.019055577 5.635760539 CORE 93 O O 0.0000 93 O 0.601476053 13.372837610 9.361073203 CORE 94 O O 0.0000 94 O -2.190648022 17.910122823 5.363694432 CORE 95 O O 0.0000 95 O -11.737033940 10.688953668 9.273457233 CORE 96 O O 0.0000 96 O 0.628210789 10.696559606 5.383423597 CORE 97 O O 0.0000 97 O -8.952605957 17.964761611 9.349189133 CORE 98 O O 0.0000 98 O -11.859780561 13.327394851 5.413316993 CORE 99 O O 0.0000 99 O -2.025642462 6.087122705 9.201980887 CORE 100 O O 0.0000 100 O -11.960420185 10.762790584 5.235304845 CORE 101 O O 0.0000 101 O -2.173530370 17.875895165 9.224206285 CORE 102 O O 0.0000 102 O 0.528122522 13.340636665 5.384550911 CORE 103 O O 0.0000 103 O -9.122469422 6.132852029 8.857712402 CORE 104 O O 0.0000 104 O -2.087272014 6.122429162 5.480466050 CORE 105 O O 0.0000 105 O -11.726025666 13.372205812 9.198349354 CORE 106 O O 0.0000 106 O -9.206913016 17.846643043 5.373613635 CORE 107 O O 0.0000 107 O 0.516984540 10.751205745 9.149521671 CORE 108 O O 0.0000 108 O2 12.570189104 5.500272940 4.934535491 CORE 109 O2 O2 0.0000 109 O2 13.279841143 7.652119459 3.001562572 CORE 110 O2 O2 0.0000 110 H 13.369580841 6.707387857 3.370962183 CORE 111 H H 0.0000 111 H 13.483889299 8.166692415 3.812695321 CORE 112 H H 0.0000 112 C 13.901962376 5.858337269 5.428402789 CORE 113 C C 0.0000 113 C 13.115679842 4.626959605 5.667405725 CORE 114 C C 0.0000 114 H 13.546282668 3.651323518 5.308546293 CORE 115 H H 0.0000 115 H 12.605189379 4.536695650 6.672861713 CORE 116 H H 0.0000 116 H 14.717264554 5.869572983 4.703515874 CORE 117 H H 0.0000 117 H 13.860875431 6.652458612 6.179221414 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.339915615 4.784075957 3.583192811 CORE 1 Si Si 0.0000 1 Si -2.618816796 12.009005774 7.349987553 CORE 2 Si Si 0.0000 2 Si 1.089849126 4.771409869 3.497194287 CORE 3 Si Si 0.0000 3 Si -8.610000618 12.060618043 7.271895439 CORE 4 Si Si 0.0000 4 Si -13.690434437 7.704975287 11.072077572 CORE 5 Si Si 0.0000 5 Si -4.003703710 14.874692610 7.326237137 CORE 6 Si Si 0.0000 6 Si -7.181595979 9.246097771 7.194491930 CORE 7 Si Si 0.0000 7 Si 2.436202270 16.317366016 3.542775134 CORE 8 Si Si 0.0000 8 Si -13.593303673 16.316967305 3.504540044 CORE 9 Si Si 0.0000 9 Si -3.956413857 9.102576826 7.344118205 CORE 10 Si Si 0.0000 10 Si -7.223334353 14.944957265 7.281953777 CORE 11 Si Si 0.0000 11 Si 2.362381096 7.705673826 3.478055823 CORE 12 Si Si 0.0000 12 Si -10.198440910 4.614864484 5.856102742 CORE 13 Si Si 0.0000 13 Si -0.354540238 12.066103428 9.578197858 CORE 14 Si Si 0.0000 14 Si -10.840929624 12.035255594 9.551174057 CORE 15 Si Si 0.0000 15 Si -1.233000563 4.762578822 5.737666057 CORE 16 Si Si 0.0000 16 Si -9.969280719 4.760670022 8.903766570 CORE 17 Si Si 0.0000 17 Si -0.338045917 11.986103489 5.098684781 CORE 18 Si Si 0.0000 18 Si -10.949569789 12.024964478 5.062575908 CORE 19 Si Si 0.0000 19 Si -1.203310054 4.727213840 8.875731465 CORE 20 Si Si 0.0000 20 Ti -9.071829284 7.678067002 4.991449646 CORE 21 Ti Ti 0.0000 21 Si 0.704121153 14.925341830 8.905889821 CORE 22 Si Si 0.0000 22 Si -2.243383893 16.289699660 5.110907372 CORE 23 Si Si 0.0000 23 Si -11.934705218 9.136794682 8.779040694 CORE 24 Si Si 0.0000 24 Si 0.715134045 9.094364171 5.727808625 CORE 25 Si Si 0.0000 25 Si -8.975853964 16.329464453 9.563325292 CORE 26 Si Si 0.0000 26 Si -11.809889036 14.897637995 5.770770307 CORE 27 Si Si 0.0000 27 Si -2.261548449 7.664520461 9.524349640 CORE 28 Si Si 0.0000 28 Si -12.089000410 9.195421884 5.724046628 CORE 29 Si Si 0.0000 29 Si -2.189191594 16.262715841 9.550316267 CORE 30 Si Si 0.0000 30 Si 0.625208638 14.909965770 5.786603816 CORE 31 Si Si 0.0000 31 Si -9.120515906 7.726884829 9.198849148 CORE 32 Si Si 0.0000 32 Si -2.176531944 7.705273240 5.088543676 CORE 33 Si Si 0.0000 33 Si -11.869164401 14.956875805 8.863875922 CORE 34 Si Si 0.0000 34 Si -8.957936123 16.269796795 5.096265838 CORE 35 Si Si 0.0000 35 Si 0.564200878 9.137646738 8.862325647 CORE 36 Si Si 0.0000 36 O -15.294486494 7.844457943 3.320159666 CORE 37 O O 0.0000 37 O -5.611039851 15.003637369 7.392140740 CORE 38 O O 0.0000 38 O -15.197777378 16.090318710 3.637070925 CORE 39 O O 0.0000 39 O -5.569710039 9.062504999 7.259753103 CORE 40 O O 0.0000 40 O -10.568065227 4.399147020 7.424813509 CORE 41 O O 0.0000 41 O -0.817725068 11.935180101 3.535487040 CORE 42 O O 0.0000 42 O -10.412767009 12.080544404 3.526464728 CORE 43 O O 0.0000 43 O -0.796609166 4.685343486 7.300055987 CORE 44 O O 0.0000 44 O -13.252204414 6.129155657 3.504274020 CORE 45 O O 0.0000 45 O -3.569702679 13.312361718 7.257973547 CORE 46 O O 0.0000 46 O -7.550590037 10.837925548 7.219351022 CORE 47 O O 0.0000 47 O 2.127263559 17.932894078 3.532574389 CORE 48 O O 0.0000 48 O -3.499769292 10.661348430 7.435557562 CORE 49 O O 0.0000 49 O -13.349290530 17.929823017 3.389038528 CORE 50 O O 0.0000 50 O 1.934271211 6.146789066 3.489421690 CORE 51 O O 0.0000 51 O -7.757883788 13.425536318 7.240215792 CORE 52 O O 0.0000 52 O -11.592555783 4.612700975 5.025409176 CORE 53 O O 0.0000 53 O -1.714678069 12.150682786 8.692514687 CORE 54 O O 0.0000 54 O 0.114384667 4.731022215 4.818473247 CORE 55 O O 0.0000 55 O -9.463773636 11.986433731 8.658938941 CORE 56 O O 0.0000 56 O -1.664267903 11.920698332 6.036157581 CORE 57 O O 0.0000 57 O -11.208540768 4.854019019 9.978331387 CORE 58 O O 0.0000 58 O -9.638984202 11.944845906 6.020052190 CORE 59 O O 0.0000 59 O 0.170179845 4.641117475 9.752490991 CORE 60 O O 0.0000 60 O -10.602965431 8.531082364 5.521484316 CORE 61 O O 0.0000 61 O -0.733134060 15.623877728 9.189981416 CORE 62 O O 0.0000 62 O -10.511256245 8.386327661 8.706756690 CORE 63 O O 0.0000 63 O -0.831834218 15.592833277 5.540998121 CORE 64 O O 0.0000 64 O -0.732737430 8.401178592 5.384579666 CORE 65 O O 0.0000 65 O -10.448441806 15.707375259 9.195558875 CORE 66 O O 0.0000 66 O -10.278960346 15.419156405 5.549962542 CORE 67 O O 0.0000 67 O -0.933529021 8.507581003 9.071818438 CORE 68 O O 0.0000 68 O -12.572540789 9.141430175 7.283038034 CORE 69 O O 0.0000 69 O -2.521438548 16.018188211 3.524440144 CORE 70 O O 0.0000 70 O -9.021526118 7.929129843 3.212544247 CORE 71 O O 0.0000 71 O 1.041885522 15.032525952 7.337308377 CORE 72 O O 0.0000 72 O -2.526379781 7.855022939 3.509198400 CORE 73 O O 0.0000 73 O -12.227311262 15.129718352 7.305092954 CORE 74 O O 0.0000 74 O 1.021349651 8.903452170 7.314920337 CORE 75 O O 0.0000 75 O -8.636754215 16.011804787 3.518281265 CORE 76 O O 0.0000 76 O -13.237608569 8.421933225 4.865654880 CORE 77 O O 0.0000 77 O -3.376838308 15.558098508 8.672302387 CORE 78 O O 0.0000 78 O 1.714011629 15.650497430 4.851968736 CORE 79 O O 0.0000 79 O -7.898192226 8.478824892 8.442898010 CORE 80 O O 0.0000 80 O -3.319083648 8.431287239 5.986098214 CORE 81 O O 0.0000 81 O -13.041570577 15.616684051 9.752027255 CORE 82 O O 0.0000 82 O -7.660447229 15.731674765 5.919382160 CORE 83 O O 0.0000 83 O 1.628440497 8.422339288 9.840739120 CORE 84 O O 0.0000 84 O -7.687811262 8.588190541 5.773825137 CORE 85 O O 0.0000 85 O 1.856513370 15.649938282 9.772564991 CORE 86 O O 0.0000 86 O -3.473211413 15.669920285 5.995384343 CORE 87 O O 0.0000 87 O -12.945561194 8.392607732 9.802255579 CORE 88 O O 0.0000 88 O 1.900590920 8.394224201 4.872161485 CORE 89 O O 0.0000 89 O -7.828851186 15.676823504 8.609558213 CORE 90 O O 0.0000 90 O -12.830861686 15.691252804 4.799535917 CORE 91 O O 0.0000 91 O -3.504845814 8.243674916 8.661216162 CORE 92 O O 0.0000 92 O -9.457011867 6.023961346 5.638194924 CORE 93 O O 0.0000 93 O 0.597743570 13.370104143 9.362883873 CORE 94 O O 0.0000 94 O -2.187878345 17.908943553 5.365396547 CORE 95 O O 0.0000 95 O -11.738919907 10.688425512 9.273120005 CORE 96 O O 0.0000 96 O 0.629118748 10.696199814 5.383692513 CORE 97 O O 0.0000 97 O -8.951410870 17.966293754 9.347260399 CORE 98 O O 0.0000 98 O -11.857336694 13.324184688 5.416039769 CORE 99 O O 0.0000 99 O -2.026385495 6.087085659 9.204448669 CORE 100 O O 0.0000 100 O -11.954123750 10.754211651 5.231673007 CORE 101 O O 0.0000 101 O -2.169386439 17.873537778 9.224968376 CORE 102 O O 0.0000 102 O 0.526108963 13.337626867 5.381767050 CORE 103 O O 0.0000 103 O -9.117481616 6.139356825 8.855397907 CORE 104 O O 0.0000 104 O -2.090833028 6.122958760 5.479612672 CORE 105 O O 0.0000 105 O -11.727387796 13.372451007 9.200238911 CORE 106 O O 0.0000 106 O -9.208589025 17.847219632 5.370979332 CORE 107 O O 0.0000 107 O 0.516712421 10.750937631 9.146215651 CORE 108 O O 0.0000 108 O2 12.571888591 5.603650129 4.856716704 CORE 109 O2 O2 0.0000 109 O2 13.256363356 7.619108982 3.026700164 CORE 110 O2 O2 0.0000 110 H 13.373992079 6.714245526 3.389989506 CORE 111 H H 0.0000 111 H 13.479855254 8.157226975 3.814772395 CORE 112 H H 0.0000 112 C 13.857242058 5.870560249 5.409013515 CORE 113 C C 0.0000 113 C 13.154697035 4.601849991 5.704248313 CORE 114 C C 0.0000 114 H 13.543939257 3.636168004 5.321607276 CORE 115 H H 0.0000 115 H 12.603578610 4.531099992 6.671105891 CORE 116 H H 0.0000 116 H 14.695725271 5.872023345 4.703726746 CORE 117 H H 0.0000 117 H 13.863085284 6.634613019 6.183079414 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.338450334 4.785447232 3.554912069 CORE 1 Si Si 0.0000 1 Si -2.619216891 12.009301997 7.351204556 CORE 2 Si Si 0.0000 2 Si 1.086858136 4.756368086 3.500198225 CORE 3 Si Si 0.0000 3 Si -8.610093377 12.042022306 7.280543628 CORE 4 Si Si 0.0000 4 Si -13.674911966 7.699486442 11.080931156 CORE 5 Si Si 0.0000 5 Si -4.005549263 14.888444994 7.329418019 CORE 6 Si Si 0.0000 6 Si -7.180870459 9.242467130 7.185257453 CORE 7 Si Si 0.0000 7 Si 2.448635604 16.329439659 3.548509683 CORE 8 Si Si 0.0000 8 Si -13.607511163 16.329682692 3.506635757 CORE 9 Si Si 0.0000 9 Si -3.968161507 9.097112198 7.345724925 CORE 10 Si Si 0.0000 10 Si -7.216444223 14.963301609 7.293506554 CORE 11 Si Si 0.0000 11 Si 2.363423574 7.704148458 3.480453237 CORE 12 Si Si 0.0000 12 Si -10.207747195 4.625530816 5.868824443 CORE 13 Si Si 0.0000 13 Si -0.350686515 12.049513791 9.592789946 CORE 14 Si Si 0.0000 14 Si -10.841473860 12.024282372 9.558877885 CORE 15 Si Si 0.0000 15 Si -1.224995788 4.761568925 5.734442118 CORE 16 Si Si 0.0000 16 Si -9.987598269 4.738072320 8.916395615 CORE 17 Si Si 0.0000 17 Si -0.329220554 11.973176638 5.083521315 CORE 18 Si Si 0.0000 18 Si -10.954762549 12.009532056 5.049647138 CORE 19 Si Si 0.0000 19 Si -1.197348859 4.721200443 8.874604532 CORE 20 Si Si 0.0000 20 Ti -9.079212075 7.699394909 5.003260155 CORE 21 Ti Ti 0.0000 21 Si 0.702363354 14.923342073 8.921973075 CORE 22 Si Si 0.0000 22 Si -2.257246520 16.288048163 5.109707714 CORE 23 Si Si 0.0000 23 Si -11.957775020 9.162710945 8.778206106 CORE 24 Si Si 0.0000 24 Si 0.702140695 9.103172731 5.736778675 CORE 25 Si Si 0.0000 25 Si -8.974877687 16.339626413 9.559416400 CORE 26 Si Si 0.0000 26 Si -11.804271742 14.908725525 5.754815158 CORE 27 Si Si 0.0000 27 Si -2.256139958 7.677141576 9.519792080 CORE 28 Si Si 0.0000 28 Si -12.083390236 9.200559875 5.722382701 CORE 29 Si Si 0.0000 29 Si -2.208560860 16.262430285 9.548603578 CORE 30 Si Si 0.0000 30 Si 0.624913619 14.906752868 5.767629896 CORE 31 Si Si 0.0000 31 Si -9.093827164 7.740728458 9.222629157 CORE 32 Si Si 0.0000 32 Si -2.165047175 7.715761550 5.092637499 CORE 33 Si Si 0.0000 33 Si -11.849562854 14.958789939 8.877792717 CORE 34 Si Si 0.0000 34 Si -8.954209799 16.249055712 5.083569621 CORE 35 Si Si 0.0000 35 Si 0.556240172 9.148797405 8.847414589 CORE 36 Si Si 0.0000 36 O -15.276790542 7.841697232 3.318062052 CORE 37 O O 0.0000 37 O -5.609557057 14.998400206 7.390062829 CORE 38 O O 0.0000 38 O -15.212421142 16.086369071 3.633818992 CORE 39 O O 0.0000 39 O -5.569368063 9.062055547 7.262956046 CORE 40 O O 0.0000 40 O -10.570119777 4.401577778 7.437345106 CORE 41 O O 0.0000 41 O -0.811014104 11.944138431 3.533945514 CORE 42 O O 0.0000 42 O -10.416523547 12.084876178 3.507293553 CORE 43 O O 0.0000 43 O -0.795336330 4.686548414 7.301369677 CORE 44 O O 0.0000 44 O -13.248763679 6.130034380 3.508153092 CORE 45 O O 0.0000 45 O -3.574345814 13.312000196 7.254890038 CORE 46 O O 0.0000 46 O -7.544393866 10.825963475 7.221160931 CORE 47 O O 0.0000 47 O 2.124780048 17.922561015 3.531997001 CORE 48 O O 0.0000 48 O -3.501045591 10.653774493 7.435368142 CORE 49 O O 0.0000 49 O -13.336410723 17.930121835 3.388278567 CORE 50 O O 0.0000 50 O 1.929474312 6.131674633 3.489177422 CORE 51 O O 0.0000 51 O -7.758085086 13.424837635 7.234298290 CORE 52 O O 0.0000 52 O -11.611285744 4.609859686 5.010776161 CORE 53 O O 0.0000 53 O -1.708355461 12.156161541 8.696372611 CORE 54 O O 0.0000 54 O 0.116751363 4.734109132 4.813175276 CORE 55 O O 0.0000 55 O -9.479726607 11.990150572 8.675744501 CORE 56 O O 0.0000 56 O -1.659514689 11.923819412 6.030838995 CORE 57 O O 0.0000 57 O -11.214929385 4.853995956 9.987932531 CORE 58 O O 0.0000 58 O -9.640765093 11.948061691 6.018150309 CORE 59 O O 0.0000 59 O 0.172010003 4.644997635 9.754552014 CORE 60 O O 0.0000 60 O -10.599106127 8.526579632 5.517470140 CORE 61 O O 0.0000 61 O -0.752084372 15.634592349 9.192399217 CORE 62 O O 0.0000 62 O -10.512456914 8.382624226 8.698494796 CORE 63 O O 0.0000 63 O -0.845320421 15.600649094 5.541594603 CORE 64 O O 0.0000 64 O -0.723188856 8.403947808 5.382096595 CORE 65 O O 0.0000 65 O -10.439470569 15.712549286 9.195474283 CORE 66 O O 0.0000 66 O -10.273057269 15.425630930 5.546786376 CORE 67 O O 0.0000 67 O -0.922673549 8.508423689 9.075685490 CORE 68 O O 0.0000 68 O -12.570103081 9.140837152 7.278963076 CORE 69 O O 0.0000 69 O -2.512447104 16.022925472 3.520526839 CORE 70 O O 0.0000 70 O -9.023917832 7.916321049 3.198858407 CORE 71 O O 0.0000 71 O 1.050907180 15.035903614 7.332489509 CORE 72 O O 0.0000 72 O -2.528707603 7.851535725 3.507584301 CORE 73 O O 0.0000 73 O -12.237968130 15.136693501 7.305277276 CORE 74 O O 0.0000 74 O 1.020910297 8.902302018 7.315852830 CORE 75 O O 0.0000 75 O -8.641050370 16.016023405 3.514364917 CORE 76 O O 0.0000 76 O -13.236848794 8.421813006 4.859954184 CORE 77 O O 0.0000 77 O -3.359789358 15.563591389 8.679511214 CORE 78 O O 0.0000 78 O 1.726231348 15.656367257 4.843070346 CORE 79 O O 0.0000 79 O -7.898084072 8.475969764 8.437984052 CORE 80 O O 0.0000 80 O -3.324061446 8.433609453 5.991968627 CORE 81 O O 0.0000 81 O -13.050685571 15.615426798 9.753579812 CORE 82 O O 0.0000 82 O -7.662161919 15.735543537 5.921312947 CORE 83 O O 0.0000 83 O 1.622618247 8.431580290 9.826808632 CORE 84 O O 0.0000 84 O -7.691409995 8.582164891 5.784655380 CORE 85 O O 0.0000 85 O 1.867459291 15.660830349 9.784008223 CORE 86 O O 0.0000 86 O -3.461424311 15.671695460 5.987725169 CORE 87 O O 0.0000 87 O -12.947689065 8.393101581 9.805332242 CORE 88 O O 0.0000 88 O 1.895587911 8.402307411 4.887515968 CORE 89 O O 0.0000 89 O -7.837102676 15.679294479 8.613623510 CORE 90 O O 0.0000 90 O -12.837796849 15.699691914 4.793101809 CORE 91 O O 0.0000 91 O -3.507173059 8.248388969 8.657491972 CORE 92 O O 0.0000 92 O -9.437551382 6.036370276 5.629229210 CORE 93 O O 0.0000 93 O 0.596330057 13.355226545 9.362548623 CORE 94 O O 0.0000 94 O -2.189415023 17.899622838 5.365886984 CORE 95 O O 0.0000 95 O -11.724789395 10.702324494 9.277758050 CORE 96 O O 0.0000 96 O 0.627220464 10.691780111 5.385169834 CORE 97 O O 0.0000 97 O -8.958435904 17.953664855 9.345634584 CORE 98 O O 0.0000 98 O -11.859069474 13.317359453 5.412263090 CORE 99 O O 0.0000 99 O -2.029396691 6.086592242 9.205513451 CORE 100 O O 0.0000 100 O -11.956528742 10.748499234 5.239250480 CORE 101 O O 0.0000 101 O -2.171871297 17.862347182 9.224838140 CORE 102 O O 0.0000 102 O 0.524421600 13.329451835 5.383140077 CORE 103 O O 0.0000 103 O -9.117035720 6.132660601 8.847059712 CORE 104 O O 0.0000 104 O -2.093131598 6.122392981 5.479303059 CORE 105 O O 0.0000 105 O -11.718616125 13.348599079 9.202318952 CORE 106 O O 0.0000 106 O -9.197459703 17.834576751 5.365372280 CORE 107 O O 0.0000 107 O 0.514346303 10.745539455 9.149871755 CORE 108 O O 0.0000 108 O2 12.545885533 5.595276895 4.815057454 CORE 109 O2 O2 0.0000 109 O2 13.274895868 7.616219403 3.034898842 CORE 110 O2 O2 0.0000 110 H 13.361247368 6.715636548 3.375815054 CORE 111 H H 0.0000 111 H 13.476141054 8.166449671 3.806900599 CORE 112 H H 0.0000 112 C 13.867123562 5.855713354 5.436591730 CORE 113 C C 0.0000 113 C 13.151358103 4.597790367 5.744715893 CORE 114 C C 0.0000 114 H 13.534830037 3.637944909 5.301217272 CORE 115 H H 0.0000 115 H 12.614535308 4.526814922 6.670756416 CORE 116 H H 0.0000 116 H 14.711240429 5.867726311 4.692026086 CORE 117 H H 0.0000 117 H 13.867953965 6.657793796 6.201764945 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.339046531 4.784889381 3.566417528 CORE 1 Si Si 0.0000 1 Si -2.619054082 12.009181490 7.350709478 CORE 2 Si Si 0.0000 2 Si 1.088074970 4.762487432 3.498976126 CORE 3 Si Si 0.0000 3 Si -8.610055658 12.049587594 7.277025290 CORE 4 Si Si 0.0000 4 Si -13.681227069 7.701719430 11.077329291 CORE 5 Si Si 0.0000 5 Si -4.004798340 14.882850200 7.328123955 CORE 6 Si Si 0.0000 6 Si -7.181165671 9.243944209 7.189014277 CORE 7 Si Si 0.0000 7 Si 2.443577363 16.324527836 3.546176701 CORE 8 Si Si 0.0000 8 Si -13.601731252 16.324509818 3.505783140 CORE 9 Si Si 0.0000 9 Si -3.963382120 9.099335383 7.345071237 CORE 10 Si Si 0.0000 10 Si -7.219247385 14.955838521 7.288806511 CORE 11 Si Si 0.0000 11 Si 2.362999424 7.704769012 3.479477916 CORE 12 Si Si 0.0000 12 Si -10.203961020 4.621191402 5.863648949 CORE 13 Si Si 0.0000 13 Si -0.352254369 12.056262917 9.586853426 CORE 14 Si Si 0.0000 14 Si -10.841252355 12.028746618 9.555743712 CORE 15 Si Si 0.0000 15 Si -1.228252352 4.761979745 5.735753679 CORE 16 Si Si 0.0000 16 Si -9.980146198 4.747265754 8.911257777 CORE 17 Si Si 0.0000 17 Si -0.332811012 11.978435712 5.089690235 CORE 18 Si Si 0.0000 18 Si -10.952649881 12.015810397 5.054906920 CORE 19 Si Si 0.0000 19 Si -1.199774058 4.723646913 8.875063019 CORE 20 Si Si 0.0000 20 Ti -9.076208576 7.690718100 4.998455284 CORE 21 Ti Ti 0.0000 21 Si 0.703078482 14.924155641 8.915429955 CORE 22 Si Si 0.0000 22 Si -2.251606709 16.288720034 5.110195793 CORE 23 Si Si 0.0000 23 Si -11.948389640 9.152167427 8.778545693 CORE 24 Si Si 0.0000 24 Si 0.707426791 9.099589227 5.733129417 CORE 25 Si Si 0.0000 25 Si -8.975274895 16.335492265 9.561006613 CORE 26 Si Si 0.0000 26 Si -11.806557033 14.904214720 5.761306168 CORE 27 Si Si 0.0000 27 Si -2.258340381 7.672006901 9.521646263 CORE 28 Si Si 0.0000 28 Si -12.085672641 9.198469593 5.723059592 CORE 29 Si Si 0.0000 29 Si -2.200680789 16.262546468 9.549300323 CORE 30 Si Si 0.0000 30 Si 0.625033512 14.908059997 5.775349015 CORE 31 Si Si 0.0000 31 Si -9.104684946 7.735096474 9.212954754 CORE 32 Si Si 0.0000 32 Si -2.169719562 7.711494642 5.090972051 CORE 33 Si Si 0.0000 33 Si -11.857537415 14.958011254 8.872130969 CORE 34 Si Si 0.0000 34 Si -8.955725693 16.257493813 5.088734769 CORE 35 Si Si 0.0000 35 Si 0.559478840 9.144260941 8.853480812 CORE 36 Si Si 0.0000 36 O -15.283989740 7.842820429 3.318915430 CORE 37 O O 0.0000 37 O -5.610160374 15.000530848 7.390908143 CORE 38 O O 0.0000 38 O -15.206463604 16.087975882 3.635141963 CORE 39 O O 0.0000 39 O -5.569507201 9.062238471 7.261653006 CORE 40 O O 0.0000 40 O -10.569283793 4.400588927 7.432246901 CORE 41 O O 0.0000 41 O -0.813744330 11.940493952 3.534572653 CORE 42 O O 0.0000 42 O -10.414995144 12.083113976 3.515092928 CORE 43 O O 0.0000 43 O -0.795854009 4.686058169 7.300835270 CORE 44 O O 0.0000 44 O -13.250163528 6.129676894 3.506574975 CORE 45 O O 0.0000 45 O -3.572456961 13.312147226 7.256144468 CORE 46 O O 0.0000 46 O -7.546914711 10.830830036 7.220424552 CORE 47 O O 0.0000 47 O 2.125790388 17.926764786 3.532231912 CORE 48 O O 0.0000 48 O -3.500526373 10.656855788 7.435445203 CORE 49 O O 0.0000 49 O -13.341650632 17.930000319 3.388587724 CORE 50 O O 0.0000 50 O 1.931425710 6.137823673 3.489276848 CORE 51 O O 0.0000 51 O -7.758003297 13.425121894 7.236705670 CORE 52 O O 0.0000 52 O -11.603665860 4.611015604 5.016729265 CORE 53 O O 0.0000 53 O -1.710927689 12.153932589 8.694803090 CORE 54 O O 0.0000 54 O 0.115788558 4.732853319 4.815330629 CORE 55 O O 0.0000 55 O -9.473236571 11.988638466 8.668907514 CORE 56 O O 0.0000 56 O -1.661448383 11.922549617 6.033002792 CORE 57 O O 0.0000 57 O -11.212330214 4.854005325 9.984026530 CORE 58 O O 0.0000 58 O -9.640040728 11.946753409 6.018924040 CORE 59 O O 0.0000 59 O 0.171265431 4.643419077 9.753713547 CORE 60 O O 0.0000 60 O -10.600676291 8.528411457 5.519103181 CORE 61 O O 0.0000 61 O -0.744374808 15.630233331 9.191415604 CORE 62 O O 0.0000 62 O -10.511968487 8.384130855 8.701855969 CORE 63 O O 0.0000 63 O -0.839833797 15.597469346 5.541351933 CORE 64 O O 0.0000 64 O -0.727073563 8.402821152 5.383106757 CORE 65 O O 0.0000 65 O -10.443120300 15.710444302 9.195508667 CORE 66 O O 0.0000 66 O -10.275458798 15.422996924 5.548078538 CORE 67 O O 0.0000 67 O -0.927089791 8.508080762 9.074112242 CORE 68 O O 0.0000 68 O -12.571094753 9.141078455 7.280620841 CORE 69 O O 0.0000 69 O -2.516105110 16.020998221 3.522118954 CORE 70 O O 0.0000 70 O -9.022944827 7.921532122 3.204426205 CORE 71 O O 0.0000 71 O 1.047236857 15.034529457 7.334449965 CORE 72 O O 0.0000 72 O -2.527760578 7.852954424 3.508240956 CORE 73 O O 0.0000 73 O -12.233632523 15.133855815 7.305202269 CORE 74 O O 0.0000 74 O 1.021089079 8.902769921 7.315473458 CORE 75 O O 0.0000 75 O -8.639302579 16.014307186 3.515958173 CORE 76 O O 0.0000 76 O -13.237157862 8.421861872 4.862273396 CORE 77 O O 0.0000 77 O -3.366725483 15.561356816 8.676578404 CORE 78 O O 0.0000 78 O 1.721260093 15.653979167 4.846690468 CORE 79 O O 0.0000 79 O -7.898127949 8.477131304 8.439983153 CORE 80 O O 0.0000 80 O -3.322036341 8.432664711 5.989580417 CORE 81 O O 0.0000 81 O -13.046977336 15.615938233 9.752948185 CORE 82 O O 0.0000 82 O -7.661464304 15.733969592 5.920527426 CORE 83 O O 0.0000 83 O 1.624986868 8.427820782 9.832476009 CORE 84 O O 0.0000 84 O -7.689945869 8.584616262 5.780249280 CORE 85 O O 0.0000 85 O 1.863006100 15.656399113 9.779352835 CORE 86 O O 0.0000 86 O -3.466219671 15.670973281 5.990841161 CORE 87 O O 0.0000 87 O -12.946823445 8.392900639 9.804080550 CORE 88 O O 0.0000 88 O 1.897623216 8.399018976 4.881269378 CORE 89 O O 0.0000 89 O -7.833745655 15.678289195 8.611969625 CORE 90 O O 0.0000 90 O -12.834975404 15.696258611 4.795719376 CORE 91 O O 0.0000 91 O -3.506226227 8.246471087 8.659007102 CORE 92 O O 0.0000 92 O -9.445468594 6.031321945 5.632876719 CORE 93 O O 0.0000 93 O 0.596905085 13.361279150 9.362685020 CORE 94 O O 0.0000 94 O -2.188789960 17.903414779 5.365687447 CORE 95 O O 0.0000 95 O -11.730538131 10.696670023 9.275871155 CORE 96 O O 0.0000 96 O 0.627992748 10.693578206 5.384568788 CORE 97 O O 0.0000 97 O -8.955577895 17.958802701 9.346295956 CORE 98 O O 0.0000 98 O -11.858364546 13.320136164 5.413799519 CORE 99 O O 0.0000 99 O -2.028171582 6.086793040 9.205080296 CORE 100 O O 0.0000 100 O -11.955550349 10.750823178 5.236167731 CORE 101 O O 0.0000 101 O -2.170860380 17.866899790 9.224891163 CORE 102 O O 0.0000 102 O 0.525108054 13.332777604 5.382581479 CORE 103 O O 0.0000 103 O -9.117217196 6.135384843 8.850451922 CORE 104 O O 0.0000 104 O -2.092196505 6.122623185 5.479429034 CORE 105 O O 0.0000 105 O -11.722184644 13.358302795 9.201472725 CORE 106 O O 0.0000 106 O -9.201987563 17.839720219 5.367653380 CORE 107 O O 0.0000 107 O 0.515308916 10.747735685 9.148384316 CORE 108 O O 0.0000 108 O2 12.556464268 5.598683386 4.832005649 CORE 109 O2 O2 0.0000 109 O2 13.267356234 7.617394925 3.031563381 CORE 110 O2 O2 0.0000 110 H 13.366432238 6.715070626 3.381581629 CORE 111 H H 0.0000 111 H 13.477652137 8.162697658 3.810103085 CORE 112 H H 0.0000 112 C 13.863103374 5.861753563 5.425372074 CORE 113 C C 0.0000 113 C 13.152716577 4.599442008 5.728252506 CORE 114 C C 0.0000 114 H 13.538535962 3.637222010 5.309512486 CORE 115 H H 0.0000 115 H 12.610077883 4.528558096 6.670898595 CORE 116 H H 0.0000 116 H 14.704928405 5.869474530 4.696786226 CORE 117 H H 0.0000 117 H 13.865973315 6.648363096 6.194163130 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.344388051 4.788380343 3.554552552 CORE 1 Si Si 0.0000 1 Si -2.616128523 12.007522209 7.350961201 CORE 2 Si Si 0.0000 2 Si 1.087809780 4.748862907 3.497680313 CORE 3 Si Si 0.0000 3 Si -8.613802381 12.043225072 7.290522318 CORE 4 Si Si 0.0000 4 Si -13.669648771 7.696599890 11.079580494 CORE 5 Si Si 0.0000 5 Si -3.995751472 14.890613836 7.329699334 CORE 6 Si Si 0.0000 6 Si -7.177574251 9.234531960 7.190215913 CORE 7 Si Si 0.0000 7 Si 2.444682963 16.330275138 3.548500554 CORE 8 Si Si 0.0000 8 Si -13.615989932 16.331280854 3.501785623 CORE 9 Si Si 0.0000 9 Si -3.969110072 9.098006200 7.346016434 CORE 10 Si Si 0.0000 10 Si -7.223880514 14.958769470 7.293088917 CORE 11 Si Si 0.0000 11 Si 2.363412027 7.705583157 3.478941075 CORE 12 Si Si 0.0000 12 Si -10.206509192 4.623457399 5.857751911 CORE 13 Si Si 0.0000 13 Si -0.350873764 12.047723048 9.587828823 CORE 14 Si Si 0.0000 14 Si -10.840798761 12.027339451 9.556849877 CORE 15 Si Si 0.0000 15 Si -1.228225795 4.756814655 5.732967003 CORE 16 Si Si 0.0000 16 Si -9.981513717 4.749760513 8.924580677 CORE 17 Si Si 0.0000 17 Si -0.329723029 11.973474447 5.087265663 CORE 18 Si Si 0.0000 18 Si -10.951502906 12.012342642 5.042359500 CORE 19 Si Si 0.0000 19 Si -1.202199835 4.717570667 8.878361128 CORE 20 Si Si 0.0000 20 Ti -9.078083574 7.705615158 4.998746336 CORE 21 Ti Ti 0.0000 21 Si 0.698345282 14.928531668 8.923911774 CORE 22 Si Si 0.0000 22 Si -2.254032678 16.290623212 5.099194236 CORE 23 Si Si 0.0000 23 Si -11.947267682 9.161930675 8.782339336 CORE 24 Si Si 0.0000 24 Si 0.706307527 9.103645679 5.740901178 CORE 25 Si Si 0.0000 25 Si -8.973237858 16.337522870 9.564181561 CORE 26 Si Si 0.0000 26 Si -11.807675912 14.907683484 5.756536976 CORE 27 Si Si 0.0000 27 Si -2.255117879 7.675770157 9.517424943 CORE 28 Si Si 0.0000 28 Si -12.086142208 9.192763085 5.722083357 CORE 29 Si Si 0.0000 29 Si -2.204311083 16.268360654 9.557703863 CORE 30 Si Si 0.0000 30 Si 0.622251711 14.911989023 5.764725765 CORE 31 Si Si 0.0000 31 Si -9.103347449 7.731068563 9.209884025 CORE 32 Si Si 0.0000 32 Si -2.168221373 7.716390033 5.093396015 CORE 33 Si Si 0.0000 33 Si -11.851782329 14.947050430 8.877736423 CORE 34 Si Si 0.0000 34 Si -8.949521631 16.251056911 5.080654383 CORE 35 Si Si 0.0000 35 Si 0.559360293 9.148539669 8.845499548 CORE 36 Si Si 0.0000 36 O -15.280199139 7.837768494 3.318667586 CORE 37 O O 0.0000 37 O -5.605440068 14.998523452 7.390827126 CORE 38 O O 0.0000 38 O -15.202374904 16.084743665 3.632685060 CORE 39 O O 0.0000 39 O -5.577857224 9.060860710 7.264092640 CORE 40 O O 0.0000 40 O -10.577280870 4.400635630 7.437043404 CORE 41 O O 0.0000 41 O -0.809559985 11.946189936 3.536205770 CORE 42 O O 0.0000 42 O -10.417479424 12.084772824 3.518823051 CORE 43 O O 0.0000 43 O -0.793088373 4.687214520 7.297873248 CORE 44 O O 0.0000 44 O -13.244796798 6.127112800 3.508602831 CORE 45 O O 0.0000 45 O -3.579735061 13.319616513 7.253963403 CORE 46 O O 0.0000 46 O -7.542842369 10.822919803 7.223094838 CORE 47 O O 0.0000 47 O 2.121533683 17.926071725 3.532025528 CORE 48 O O 0.0000 48 O -3.499060514 10.653425944 7.435611725 CORE 49 O O 0.0000 49 O -13.332696523 17.928722164 3.384108519 CORE 50 O O 0.0000 50 O 1.930851645 6.133793168 3.489366613 CORE 51 O O 0.0000 51 O -7.758765766 13.426619297 7.232071125 CORE 52 O O 0.0000 52 O -11.609840670 4.609287565 5.010605379 CORE 53 O O 0.0000 53 O -1.704956294 12.157915814 8.697606577 CORE 54 O O 0.0000 54 O 0.115853604 4.734742948 4.813774497 CORE 55 O O 0.0000 55 O -9.472880932 11.990434687 8.670594719 CORE 56 O O 0.0000 56 O -1.655276075 11.924823398 6.027329330 CORE 57 O O 0.0000 57 O -11.212193578 4.852448822 9.983716155 CORE 58 O O 0.0000 58 O -9.643023058 11.946933593 6.016504488 CORE 59 O O 0.0000 59 O 0.173034584 4.646034199 9.754982887 CORE 60 O O 0.0000 60 O -10.606136165 8.530592263 5.516642931 CORE 61 O O 0.0000 61 O -0.748297812 15.632783587 9.191164414 CORE 62 O O 0.0000 62 O -10.519774658 8.387321990 8.697437165 CORE 63 O O 0.0000 63 O -0.842722020 15.599731595 5.542934538 CORE 64 O O 0.0000 64 O -0.723089169 8.404664509 5.379810322 CORE 65 O O 0.0000 65 O -10.433790729 15.716430023 9.195916642 CORE 66 O O 0.0000 66 O -10.275984174 15.424219439 5.544577697 CORE 67 O O 0.0000 67 O -0.921901842 8.508614252 9.077552302 CORE 68 O O 0.0000 68 O -12.571574520 9.143207800 7.272234493 CORE 69 O O 0.0000 69 O -2.510464722 16.025489133 3.522858071 CORE 70 O O 0.0000 70 O -9.022503550 7.911025938 3.222609812 CORE 71 O O 0.0000 71 O 1.052113236 15.036239766 7.333756567 CORE 72 O O 0.0000 72 O -2.528004792 7.851198420 3.510414033 CORE 73 O O 0.0000 73 O -12.237952927 15.139636559 7.305988856 CORE 74 O O 0.0000 74 O 1.020090287 8.902767903 7.312114111 CORE 75 O O 0.0000 75 O -8.642060517 16.015917313 3.502665398 CORE 76 O O 0.0000 76 O -13.227273663 8.428542528 4.867663033 CORE 77 O O 0.0000 77 O -3.369127397 15.555613407 8.666259518 CORE 78 O O 0.0000 78 O 1.727399108 15.655381000 4.845461599 CORE 79 O O 0.0000 79 O -7.887866364 8.479873565 8.429053788 CORE 80 O O 0.0000 80 O -3.321433409 8.431386268 5.990050923 CORE 81 O O 0.0000 81 O -13.051380107 15.613109052 9.755036746 CORE 82 O O 0.0000 82 O -7.658242187 15.735093653 5.927032357 CORE 83 O O 0.0000 83 O 1.625878468 8.431651499 9.829668413 CORE 84 O O 0.0000 84 O -7.692764043 8.578339795 5.787568640 CORE 85 O O 0.0000 85 O 1.866543058 15.661556996 9.783881031 CORE 86 O O 0.0000 86 O -3.469323626 15.664550794 5.996665779 CORE 87 O O 0.0000 87 O -12.947789522 8.397954303 9.805025595 CORE 88 O O 0.0000 88 O 1.895480527 8.403125159 4.887018608 CORE 89 O O 0.0000 89 O -7.838749049 15.681628514 8.616026630 CORE 90 O O 0.0000 90 O -12.841297242 15.705173119 4.790090796 CORE 91 O O 0.0000 91 O -3.505692767 8.249374216 8.659994138 CORE 92 O O 0.0000 92 O -9.430685115 6.034756401 5.625715133 CORE 93 O O 0.0000 93 O 0.597319805 13.350662694 9.362651853 CORE 94 O O 0.0000 94 O -2.186415374 17.905043645 5.368929947 CORE 95 O O 0.0000 95 O -11.727969559 10.696746133 9.277427896 CORE 96 O O 0.0000 96 O 0.627298789 10.691309469 5.384935532 CORE 97 O O 0.0000 97 O -8.964846460 17.953503410 9.344005347 CORE 98 O O 0.0000 98 O -11.858095507 13.317619350 5.407824811 CORE 99 O O 0.0000 99 O -2.029331452 6.088181612 9.205561300 CORE 100 O O 0.0000 100 O -11.958696835 10.746754041 5.241194048 CORE 101 O O 0.0000 101 O -2.170671398 17.867850442 9.221727625 CORE 102 O O 0.0000 102 O 0.524160644 13.323341138 5.380985789 CORE 103 O O 0.0000 103 O -9.123336004 6.125084934 8.845279167 CORE 104 O O 0.0000 104 O -2.091543537 6.125460871 5.478824032 CORE 105 O O 0.0000 105 O -11.718593801 13.356433347 9.199135180 CORE 106 O O 0.0000 106 O -9.203683779 17.840299836 5.368464005 CORE 107 O O 0.0000 107 O 0.513789365 10.745016056 9.152891060 CORE 108 O O 0.0000 108 O2 12.563821079 5.579814635 4.823283975 CORE 109 O2 O2 0.0000 109 O2 13.283657917 7.625012971 3.022674577 CORE 110 O2 O2 0.0000 110 H 13.352581927 6.702576793 3.374216930 CORE 111 H H 0.0000 111 H 13.476074660 8.176477862 3.810487098 CORE 112 H H 0.0000 112 C 13.862345715 5.849480276 5.435981479 CORE 113 C C 0.0000 113 C 13.163704259 4.601945993 5.715194110 CORE 114 C C 0.0000 114 H 13.523553879 3.648021390 5.295961218 CORE 115 H H 0.0000 115 H 12.604820654 4.522142672 6.697533135 CORE 116 H H 0.0000 116 H 14.707699237 5.862340531 4.701156572 CORE 117 H H 0.0000 117 H 13.869539140 6.665218109 6.204694713 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.341584118 4.786547797 3.560780808 CORE 1 Si Si 0.0000 1 Si -2.617664239 12.008393148 7.350829064 CORE 2 Si Si 0.0000 2 Si 1.087948918 4.756014781 3.498360550 CORE 3 Si Si 0.0000 3 Si -8.611835587 12.046564967 7.283437413 CORE 4 Si Si 0.0000 4 Si -13.675726396 7.699287231 11.078398789 CORE 5 Si Si 0.0000 5 Si -4.000500452 14.886538500 7.328872429 CORE 6 Si Si 0.0000 6 Si -7.179459448 9.239472756 7.189585199 CORE 7 Si Si 0.0000 7 Si 2.444102547 16.327258132 3.547280661 CORE 8 Si Si 0.0000 8 Si -13.608505145 16.327726467 3.503883998 CORE 9 Si Si 0.0000 9 Si -3.966103494 9.098703873 7.345520291 CORE 10 Si Si 0.0000 10 Si -7.221448386 14.957230985 7.290840985 CORE 11 Si Si 0.0000 11 Si 2.363195526 7.705155904 3.479222846 CORE 12 Si Si 0.0000 12 Si -10.205171695 4.622267895 5.860847440 CORE 13 Si Si 0.0000 13 Si -0.351598514 12.052205888 9.587316857 CORE 14 Si Si 0.0000 14 Si -10.841036816 12.028078062 9.556269218 CORE 15 Si Si 0.0000 15 Si -1.228239651 4.759525924 5.734429795 CORE 16 Si Si 0.0000 16 Si -9.980795894 4.748450934 8.917587134 CORE 17 Si Si 0.0000 17 Si -0.331343999 11.976078614 5.088538427 CORE 18 Si Si 0.0000 18 Si -10.952105068 12.014162936 5.048945981 CORE 19 Si Si 0.0000 19 Si -1.200926423 4.720760217 8.876629878 CORE 20 Si Si 0.0000 20 Ti -9.077099407 7.697795305 4.998593584 CORE 21 Ti Ti 0.0000 21 Si 0.700829948 14.926234535 8.919459422 CORE 22 Si Si 0.0000 22 Si -2.252759266 16.289624127 5.104969255 CORE 23 Si Si 0.0000 23 Si -11.947856566 9.156805658 8.780347918 CORE 24 Si Si 0.0000 24 Si 0.706895064 9.101516333 5.736821580 CORE 25 Si Si 0.0000 25 Si -8.974307086 16.336456899 9.562514972 CORE 26 Si Si 0.0000 26 Si -11.807088568 14.905862758 5.759040435 CORE 27 Si Si 0.0000 27 Si -2.256809476 7.673794761 9.519640773 CORE 28 Si Si 0.0000 28 Si -12.085895685 9.195758613 5.722595780 CORE 29 Si Si 0.0000 29 Si -2.202405487 16.265308621 9.553292666 CORE 30 Si Si 0.0000 30 Si 0.623711988 14.909926561 5.770302159 CORE 31 Si Si 0.0000 31 Si -9.104049490 7.733182918 9.211495918 CORE 32 Si Si 0.0000 32 Si -2.169007706 7.713820317 5.092123632 CORE 33 Si Si 0.0000 33 Si -11.854803340 14.952804073 8.874793952 CORE 34 Si Si 0.0000 34 Si -8.952778388 16.254435726 5.084896015 CORE 35 Si Si 0.0000 35 Si 0.559422453 9.146293708 8.849689147 CORE 36 Si Si 0.0000 36 O -15.282189027 7.840420374 3.318797670 CORE 37 O O 0.0000 37 O -5.607917805 14.999577169 7.390869650 CORE 38 O O 0.0000 38 O -15.204521250 16.086440280 3.633974788 CORE 39 O O 0.0000 39 O -5.573474083 9.061583897 7.262812042 CORE 40 O O 0.0000 40 O -10.573083054 4.400611125 7.434525643 CORE 41 O O 0.0000 41 O -0.811756560 11.943200031 3.535348513 CORE 42 O O 0.0000 42 O -10.416175413 12.083902030 3.516865029 CORE 43 O O 0.0000 43 O -0.794540183 4.686607515 7.299428087 CORE 44 O O 0.0000 44 O -13.247614009 6.128458704 3.507538353 CORE 45 O O 0.0000 45 O -3.575914631 13.315695703 7.255108289 CORE 46 O O 0.0000 46 O -7.544980055 10.827072113 7.221693132 CORE 47 O O 0.0000 47 O 2.123768169 17.926435553 3.532133855 CORE 48 O O 0.0000 48 O -3.499830104 10.655226346 7.435524318 CORE 49 O O 0.0000 49 O -13.337396814 17.929393026 3.386459757 CORE 50 O O 0.0000 50 O 1.931153015 6.135908963 3.489319449 CORE 51 O O 0.0000 51 O -7.758365480 13.425833262 7.234503913 CORE 52 O O 0.0000 52 O -11.606599309 4.610194684 5.013819961 CORE 53 O O 0.0000 53 O -1.708090848 12.155824956 8.696134961 CORE 54 O O 0.0000 54 O 0.115819349 4.733751069 4.814591360 CORE 55 O O 0.0000 55 O -9.473067604 11.989491818 8.669709087 CORE 56 O O 0.0000 56 O -1.658516089 11.923629858 6.030307479 CORE 57 O O 0.0000 57 O -11.212265360 4.853265849 9.983879102 CORE 58 O O 0.0000 58 O -9.641457513 11.946839032 6.017774589 CORE 59 O O 0.0000 59 O 0.172106033 4.644661483 9.754316571 CORE 60 O O 0.0000 60 O -10.603270073 8.529447589 5.517934408 CORE 61 O O 0.0000 61 O -0.746238644 15.631444890 9.191296247 CORE 62 O O 0.0000 62 O -10.515677106 8.385646853 8.699756681 CORE 63 O O 0.0000 63 O -0.841205934 15.598544109 5.542103830 CORE 64 O O 0.0000 64 O -0.725180668 8.403696992 5.381540735 CORE 65 O O 0.0000 65 O -10.438688085 15.713288042 9.195702499 CORE 66 O O 0.0000 66 O -10.275708400 15.423577694 5.546415372 CORE 67 O O 0.0000 67 O -0.924625140 8.508334173 9.075746500 CORE 68 O O 0.0000 68 O -12.571322609 9.142090081 7.276636713 CORE 69 O O 0.0000 69 O -2.513425497 16.023131747 3.522470103 CORE 70 O O 0.0000 70 O -9.022735254 7.916540874 3.213064809 CORE 71 O O 0.0000 71 O 1.049553517 15.035342016 7.334120572 CORE 72 O O 0.0000 72 O -2.527876623 7.852120099 3.509273331 CORE 73 O O 0.0000 73 O -12.235685148 15.136602112 7.305575936 CORE 74 O O 0.0000 74 O 1.020614509 8.902769056 7.313877540 CORE 75 O O 0.0000 75 O -8.640612749 16.015072032 3.509643118 CORE 76 O O 0.0000 76 O -13.232462189 8.425035709 4.864833833 CORE 77 O O 0.0000 77 O -3.367866493 15.558628250 8.671676161 CORE 78 O O 0.0000 78 O 1.724176607 15.654645128 4.846106691 CORE 79 O O 0.0000 79 O -7.893252917 8.478434108 8.434790923 CORE 80 O O 0.0000 80 O -3.321749982 8.432057418 5.989803917 CORE 81 O O 0.0000 81 O -13.049069028 15.614594202 9.753940394 CORE 82 O O 0.0000 82 O -7.659933591 15.734503658 5.923617782 CORE 83 O O 0.0000 83 O 1.625410440 8.429640643 9.831142160 CORE 84 O O 0.0000 84 O -7.691284713 8.581634429 5.783726539 CORE 85 O O 0.0000 85 O 1.864686342 15.658849475 9.781504004 CORE 86 O O 0.0000 86 O -3.467694382 15.667922113 5.993608286 CORE 87 O O 0.0000 87 O -12.947282428 8.395301558 9.804529528 CORE 88 O O 0.0000 88 O 1.896605371 8.400969723 4.884000673 CORE 89 O O 0.0000 89 O -7.836122743 15.679875681 8.613896990 CORE 90 O O 0.0000 90 O -12.837978710 15.700493662 4.793045363 CORE 91 O O 0.0000 91 O -3.505972776 8.247850290 8.659476011 CORE 92 O O 0.0000 92 O -9.438445291 6.032953550 5.629474391 CORE 93 O O 0.0000 93 O 0.597102149 13.356235577 9.362669273 CORE 94 O O 0.0000 94 O -2.187661844 17.904188563 5.367227909 CORE 95 O O 0.0000 95 O -11.729317833 10.696706204 9.276610729 CORE 96 O O 0.0000 96 O 0.627663089 10.692500415 5.384742993 CORE 97 O O 0.0000 97 O -8.959981243 17.956285166 9.345207743 CORE 98 O O 0.0000 98 O -11.858236762 13.318940461 5.410961114 CORE 99 O O 0.0000 99 O -2.028722554 6.087452658 9.205308817 CORE 100 O O 0.0000 100 O -11.957045074 10.748890017 5.238555561 CORE 101 O O 0.0000 101 O -2.170770700 17.867351404 9.223388205 CORE 102 O O 0.0000 102 O 0.524657923 13.328294619 5.381823419 CORE 103 O O 0.0000 103 O -9.120124087 6.130491615 8.847994487 CORE 104 O O 0.0000 104 O -2.091886282 6.123971251 5.479141634 CORE 105 O O 0.0000 105 O -11.720478806 13.357414702 9.200362224 CORE 106 O O 0.0000 106 O -9.202793333 17.839995541 5.368038458 CORE 107 O O 0.0000 107 O 0.514587052 10.746443547 9.150525367 CORE 108 O O 0.0000 108 O2 12.559959273 5.589719291 4.827862226 CORE 109 O2 O2 0.0000 109 O2 13.275100823 7.621014034 3.027340539 CORE 110 O2 O2 0.0000 110 H 13.359852330 6.709135068 3.378082842 CORE 111 H H 0.0000 111 H 13.476902754 8.169244257 3.810285507 CORE 112 H H 0.0000 112 C 13.862743500 5.855922800 5.430412388 CORE 113 C C 0.0000 113 C 13.157936472 4.600631513 5.722048821 CORE 114 C C 0.0000 114 H 13.531418361 3.642352504 5.303074650 CORE 115 H H 0.0000 115 H 12.607580324 4.525510387 6.683551983 CORE 116 H H 0.0000 116 H 14.706244733 5.866085337 4.698862463 CORE 117 H H 0.0000 117 H 13.867667221 6.656370485 6.199166396 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.342547886 4.785239515 3.560431865 CORE 1 Si Si 0.0000 1 Si -2.616662945 12.011709259 7.349360566 CORE 2 Si Si 0.0000 2 Si 1.087858276 4.756073881 3.497690050 CORE 3 Si Si 0.0000 3 Si -8.611245934 12.045858789 7.284580093 CORE 4 Si Si 0.0000 4 Si -13.672459632 7.699825910 11.080654253 CORE 5 Si Si 0.0000 5 Si -3.999955639 14.885667561 7.327538732 CORE 6 Si Si 0.0000 6 Si -7.177895635 9.236903905 7.188418860 CORE 7 Si Si 0.0000 7 Si 2.445007619 16.327479399 3.547605717 CORE 8 Si Si 0.0000 8 Si -13.609653852 16.328912945 3.498806409 CORE 9 Si Si 0.0000 9 Si -3.968729799 9.098166203 7.345099612 CORE 10 Si Si 0.0000 10 Si -7.221576170 14.954342991 7.294454413 CORE 11 Si Si 0.0000 11 Si 2.362245807 7.705747341 3.479869079 CORE 12 Si Si 0.0000 12 Si -10.205964186 4.623834057 5.856610980 CORE 13 Si Si 0.0000 13 Si -0.351132796 12.050390640 9.586623916 CORE 14 Si Si 0.0000 14 Si -10.839955464 12.030027656 9.556751668 CORE 15 Si Si 0.0000 15 Si -1.229373156 4.761089202 5.733665345 CORE 16 Si Si 0.0000 16 Si -9.980810520 4.748942477 8.918682649 CORE 17 Si Si 0.0000 17 Si -0.330222811 11.974319150 5.089515650 CORE 18 Si Si 0.0000 18 Si -10.953436214 12.013279312 5.049747249 CORE 19 Si Si 0.0000 19 Si -1.201795507 4.722568690 8.876356702 CORE 20 Si Si 0.0000 20 Ti -9.079420109 7.703096614 5.003360798 CORE 21 Ti Ti 0.0000 21 Si 0.699900628 14.925613980 8.919798400 CORE 22 Si Si 0.0000 22 Si -2.254566330 16.290782063 5.105755993 CORE 23 Si Si 0.0000 23 Si -11.946945143 9.156803640 8.777606658 CORE 24 Si Si 0.0000 24 Si 0.709192094 9.101631507 5.736556849 CORE 25 Si Si 0.0000 25 Si -8.974253971 16.337257206 9.561233840 CORE 26 Si Si 0.0000 26 Si -11.812500138 14.906431852 5.758158682 CORE 27 Si Si 0.0000 27 Si -2.255502385 7.673613568 9.520656032 CORE 28 Si Si 0.0000 28 Si -12.085158041 9.194341932 5.723801143 CORE 29 Si Si 0.0000 29 Si -2.204043199 16.266872620 9.552635175 CORE 30 Si Si 0.0000 30 Si 0.622896211 14.908893601 5.770082995 CORE 31 Si Si 0.0000 31 Si -9.108034846 7.728158227 9.205971481 CORE 32 Si Si 0.0000 32 Si -2.169000393 7.714278273 5.091852206 CORE 33 Si Si 0.0000 33 Si -11.854995401 14.951990217 8.874858537 CORE 34 Si Si 0.0000 34 Si -8.949412899 16.256402617 5.082122652 CORE 35 Si Si 0.0000 35 Si 0.563102013 9.145115736 8.849246331 CORE 36 Si Si 0.0000 36 O -15.279812516 7.835535795 3.319834914 CORE 37 O O 0.0000 37 O -5.607582758 14.999430427 7.391560918 CORE 38 O O 0.0000 38 O -15.206185327 16.084963634 3.632700959 CORE 39 O O 0.0000 39 O -5.574123587 9.059343126 7.264754392 CORE 40 O O 0.0000 40 O -10.578718246 4.402248352 7.434511417 CORE 41 O O 0.0000 41 O -0.809829987 11.945588698 3.535696162 CORE 42 O O 0.0000 42 O -10.415883473 12.084167693 3.516488092 CORE 43 O O 0.0000 43 O -0.792843967 4.686787122 7.299711684 CORE 44 O O 0.0000 44 O -13.245143970 6.129084737 3.507757517 CORE 45 O O 0.0000 45 O -3.576411141 13.314620652 7.254385755 CORE 46 O O 0.0000 46 O -7.545040676 10.824588309 7.224561965 CORE 47 O O 0.0000 47 O 2.122981837 17.925415134 3.532396684 CORE 48 O O 0.0000 48 O -3.497460907 10.654667342 7.435668323 CORE 49 O O 0.0000 49 O -13.333886221 17.928628900 3.380994656 CORE 50 O O 0.0000 50 O 1.930900334 6.134628502 3.489414615 CORE 51 O O 0.0000 51 O -7.761347424 13.424180323 7.232159293 CORE 52 O O 0.0000 52 O -11.607572121 4.610192378 5.010373359 CORE 53 O O 0.0000 53 O -1.706774135 12.157808136 8.694977067 CORE 54 O O 0.0000 54 O 0.115295127 4.733472865 4.813972589 CORE 55 O O 0.0000 55 O -9.471572686 11.989814564 8.672057054 CORE 56 O O 0.0000 56 O -1.657400482 11.924773667 6.030137458 CORE 57 O O 0.0000 57 O -11.212478782 4.853015609 9.982863538 CORE 58 O O 0.0000 58 O -9.641530257 11.945927012 6.019227491 CORE 59 O O 0.0000 59 O 0.171311618 4.644908984 9.753179292 CORE 60 O O 0.0000 60 O -10.607620883 8.531940041 5.516419888 CORE 61 O O 0.0000 61 O -0.747607510 15.632578610 9.191980364 CORE 62 O O 0.0000 62 O -10.515386321 8.386590586 8.699613209 CORE 63 O O 0.0000 63 O -0.842113507 15.599785218 5.541836969 CORE 64 O O 0.0000 64 O -0.724447065 8.405024157 5.379512347 CORE 65 O O 0.0000 65 O -10.438963860 15.713421378 9.194816410 CORE 66 O O 0.0000 66 O -10.275881216 15.423610272 5.542488375 CORE 67 O O 0.0000 67 O -0.922677398 8.508772814 9.077365012 CORE 68 O O 0.0000 68 O -12.571272958 9.144432333 7.278434603 CORE 69 O O 0.0000 69 O -2.511937700 16.025868241 3.522378132 CORE 70 O O 0.0000 70 O -9.021755706 7.909115120 3.216629703 CORE 71 O O 0.0000 71 O 1.049927631 15.035974390 7.334485643 CORE 72 O O 0.0000 72 O -2.527051609 7.851487436 3.509032639 CORE 73 O O 0.0000 73 O -12.235770787 15.139353741 7.306995975 CORE 74 O O 0.0000 74 O 1.020446696 8.903079549 7.313710105 CORE 75 O O 0.0000 75 O -8.640490546 16.014393098 3.506979146 CORE 76 O O 0.0000 76 O -13.228493768 8.425540370 4.863713062 CORE 77 O O 0.0000 77 O -3.365525200 15.559071647 8.671731389 CORE 78 O O 0.0000 78 O 1.726597572 15.654666894 4.847557083 CORE 79 O O 0.0000 79 O -7.892747747 8.473891015 8.435844827 CORE 80 O O 0.0000 80 O -3.321933767 8.431683644 5.991115553 CORE 81 O O 0.0000 81 O -13.048668741 15.610345313 9.754129509 CORE 82 O O 0.0000 82 O -7.658705596 15.736433647 5.925537007 CORE 83 O O 0.0000 83 O 1.627583921 8.431469873 9.831468661 CORE 84 O O 0.0000 84 O -7.691500252 8.577511524 5.787474919 CORE 85 O O 0.0000 85 O 1.863608839 15.660234155 9.781960817 CORE 86 O O 0.0000 86 O -3.466328018 15.667389489 5.991728011 CORE 87 O O 0.0000 87 O -12.946904657 8.400415620 9.804893153 CORE 88 O O 0.0000 88 O 1.897071090 8.401780552 4.883106825 CORE 89 O O 0.0000 89 O -7.836461448 15.681222883 8.614862041 CORE 90 O O 0.0000 90 O -12.840950262 15.705751150 4.791037590 CORE 91 O O 0.0000 91 O -3.505390820 8.249984825 8.660859840 CORE 92 O O 0.0000 92 O -9.429960749 6.031994681 5.624338607 CORE 93 O O 0.0000 93 O 0.599165936 13.355927101 9.361541351 CORE 94 O O 0.0000 94 O -2.187255399 17.903641812 5.368489261 CORE 95 O O 0.0000 95 O -11.729625746 10.696592904 9.278221025 CORE 96 O O 0.0000 96 O 0.627987745 10.691931610 5.384998672 CORE 97 O O 0.0000 97 O -8.966299809 17.956642220 9.344247408 CORE 98 O O 0.0000 98 O -11.857688100 13.320258978 5.405759223 CORE 99 O O 0.0000 99 O -2.028161383 6.086924935 9.204908145 CORE 100 O O 0.0000 100 O -11.957789069 10.748886558 5.240134971 CORE 101 O O 0.0000 101 O -2.172198647 17.868386382 9.221679548 CORE 102 O O 0.0000 102 O 0.526209612 13.328519778 5.381100658 CORE 103 O O 0.0000 103 O -9.122369350 6.131468358 8.846661931 CORE 104 O O 0.0000 104 O -2.089396806 6.124732638 5.479157228 CORE 105 O O 0.0000 105 O -11.718143479 13.356926908 9.198700579 CORE 106 O O 0.0000 106 O -9.205716197 17.839325399 5.368459213 CORE 107 O O 0.0000 107 O 0.514757559 10.744113549 9.153257423 CORE 108 O O 0.0000 108 O2 12.572298693 5.575372732 4.825681617 CORE 109 O2 O2 0.0000 109 O2 13.287852462 7.621994236 3.022494362 CORE 110 O2 O2 0.0000 110 H 13.347756739 6.707368397 3.371161339 CORE 111 H H 0.0000 111 H 13.475277166 8.176944035 3.808997909 CORE 112 H H 0.0000 112 C 13.868976814 5.862161212 5.434249620 CORE 113 C C 0.0000 113 C 13.151612709 4.597876135 5.725891226 CORE 114 C C 0.0000 114 H 13.521982945 3.646554690 5.291955714 CORE 115 H H 0.0000 115 H 12.609952793 4.520732910 6.692086063 CORE 116 H H 0.0000 116 H 14.703613617 5.860252844 4.708386699 CORE 117 H H 0.0000 117 H 13.869155788 6.660107795 6.199263388 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.344090145 4.783146207 3.559873572 CORE 1 Si Si 0.0000 1 Si -2.615060835 12.017014892 7.347010925 CORE 2 Si Si 0.0000 2 Si 1.087713172 4.756168154 3.496617204 CORE 3 Si Si 0.0000 3 Si -8.610302181 12.044729106 7.286408411 CORE 4 Si Si 0.0000 4 Si -13.667232617 7.700687623 11.084262965 CORE 5 Si Si 0.0000 5 Si -3.999083860 14.884274233 7.325404908 CORE 6 Si Si 0.0000 6 Si -7.175393650 9.232793686 7.186552734 CORE 7 Si Si 0.0000 7 Si 2.446455580 16.327833425 3.548125746 CORE 8 Si Si 0.0000 8 Si -13.611492093 16.330811222 3.490682129 CORE 9 Si Si 0.0000 9 Si -3.972932234 9.097305932 7.344426526 CORE 10 Si Si 0.0000 10 Si -7.221780355 14.949722346 7.300235898 CORE 11 Si Si 0.0000 11 Si 2.360726257 7.706693957 3.480902976 CORE 12 Si Si 0.0000 12 Si -10.207232403 4.626339771 5.849832646 CORE 13 Si Si 0.0000 13 Si -0.350387839 12.047486358 9.585515240 CORE 14 Si Si 0.0000 14 Si -10.838225378 12.033146717 9.557523496 CORE 15 Si Si 0.0000 15 Si -1.231186763 4.763590448 5.732442333 CORE 16 Si Si 0.0000 16 Si -9.980833999 4.749728801 8.920435504 CORE 17 Si Si 0.0000 17 Si -0.328429025 11.971503663 5.091079313 CORE 18 Si Si 0.0000 18 Si -10.955566202 12.011865515 5.051029217 CORE 19 Si Si 0.0000 19 Si -1.203185927 4.725462017 8.875919592 CORE 20 Si Si 0.0000 20 Ti -9.083133347 7.711578536 5.010988479 CORE 21 Ti Ti 0.0000 21 Si 0.698413601 14.924621237 8.920340718 CORE 22 Si Si 0.0000 22 Si -2.257457440 16.292634501 5.107014759 CORE 23 Si Si 0.0000 23 Si -11.945486791 9.156800325 8.773220717 CORE 24 Si Si 0.0000 24 Si 0.712867421 9.101815872 5.736133355 CORE 25 Si Si 0.0000 25 Si -8.974168910 16.338537523 9.559184076 CORE 26 Si Si 0.0000 26 Si -11.821158844 14.907342575 5.756747772 CORE 27 Si Si 0.0000 27 Si -2.253411271 7.673323543 9.522280477 CORE 28 Si Si 0.0000 28 Si -12.083977964 9.192075214 5.725729801 CORE 29 Si Si 0.0000 29 Si -2.206663731 16.269374875 9.551583325 CORE 30 Si Si 0.0000 30 Si 0.621591045 14.907240951 5.769732150 CORE 31 Si Si 0.0000 31 Si -9.114411339 7.720118549 9.197132352 CORE 32 Si Si 0.0000 32 Si -2.168988461 7.715011263 5.091418063 CORE 33 Si Si 0.0000 33 Si -11.855302929 14.950688278 8.874961919 CORE 34 Si Si 0.0000 34 Si -8.944028271 16.259549499 5.077685286 CORE 35 Si Si 0.0000 35 Si 0.568989309 9.143231008 8.848537871 CORE 36 Si Si 0.0000 36 O -15.276009983 7.827720267 3.321494504 CORE 37 O O 0.0000 37 O -5.607046604 14.999195467 7.392666931 CORE 38 O O 0.0000 38 O -15.208848197 16.082600914 3.630662834 CORE 39 O O 0.0000 39 O -5.575162985 9.055758035 7.267862093 CORE 40 O O 0.0000 40 O -10.587734323 4.404867798 7.434488748 CORE 41 O O 0.0000 41 O -0.806747585 11.949410766 3.536252402 CORE 42 O O 0.0000 42 O -10.415416215 12.084592784 3.515885068 CORE 43 O O 0.0000 43 O -0.790129907 4.687074552 7.300165455 CORE 44 O O 0.0000 44 O -13.241192099 6.130086417 3.508108286 CORE 45 O O 0.0000 45 O -3.577205941 13.312900541 7.253229763 CORE 46 O O 0.0000 46 O -7.545137861 10.820614453 7.229152008 CORE 47 O O 0.0000 47 O 2.121723627 17.923782664 3.532817135 CORE 48 O O 0.0000 48 O -3.493670305 10.653772763 7.435898670 CORE 49 O O 0.0000 49 O -13.328269119 17.927406098 3.372250389 CORE 50 O O 0.0000 50 O 1.930495813 6.132579735 3.489566759 CORE 51 O O 0.0000 51 O -7.766118343 13.421535651 7.228407946 CORE 52 O O 0.0000 52 O -11.609128814 4.610188630 5.004858735 CORE 53 O O 0.0000 53 O -1.704667240 12.160981253 8.693124481 CORE 54 O O 0.0000 54 O 0.114456257 4.733027738 4.812982510 CORE 55 O O 0.0000 55 O -9.469180587 11.990330756 8.675813802 CORE 56 O O 0.0000 56 O -1.655615741 11.926603763 6.029865348 CORE 57 O O 0.0000 57 O -11.212820181 4.852615168 9.981238713 CORE 58 O O 0.0000 58 O -9.641646879 11.944467663 6.021552029 CORE 59 O O 0.0000 59 O 0.170040515 4.645304957 9.751359645 CORE 60 O O 0.0000 60 O -10.614582025 8.535928024 5.513996609 CORE 61 O O 0.0000 61 O -0.749797541 15.634392561 9.193074966 CORE 62 O O 0.0000 62 O -10.514921180 8.388100674 8.699383547 CORE 63 O O 0.0000 63 O -0.843565510 15.601770849 5.541410128 CORE 64 O O 0.0000 64 O -0.723273340 8.407147737 5.376267032 CORE 65 O O 0.0000 65 O -10.439405137 15.713634716 9.193398653 CORE 66 O O 0.0000 66 O -10.276157953 15.423662309 5.536205118 CORE 67 O O 0.0000 67 O -0.919560934 8.509474379 9.079954509 CORE 68 O O 0.0000 68 O -12.571193670 9.148180021 7.281311120 CORE 69 O O 0.0000 69 O -2.509557148 16.030246430 3.522230932 CORE 70 O O 0.0000 70 O -9.020188429 7.897233914 3.222333594 CORE 71 O O 0.0000 71 O 1.050526137 15.036986161 7.335069725 CORE 72 O O 0.0000 72 O -2.525731432 7.850475233 3.508647561 CORE 73 O O 0.0000 73 O -12.235907808 15.143756436 7.309268023 CORE 74 O O 0.0000 74 O 1.020178234 8.903576281 7.313442179 CORE 75 O O 0.0000 75 O -8.640295214 16.013306659 3.502716823 CORE 76 O O 0.0000 76 O -13.222144217 8.426347739 4.861919813 CORE 77 O O 0.0000 77 O -3.361778861 15.559781141 8.671819709 CORE 78 O O 0.0000 78 O 1.730471118 15.654701778 4.849877740 CORE 79 O O 0.0000 79 O -7.891939668 8.466621949 8.437531195 CORE 80 O O 0.0000 80 O -3.322227824 8.431085865 5.993214080 CORE 81 O O 0.0000 81 O -13.048028474 15.603547321 9.754432124 CORE 82 O O 0.0000 82 O -7.656740726 15.739521717 5.928607888 CORE 83 O O 0.0000 83 O 1.631061221 8.434396498 9.831991049 CORE 84 O O 0.0000 84 O -7.691845115 8.570914762 5.793472373 CORE 85 O O 0.0000 85 O 1.861884527 15.662449557 9.782691642 CORE 86 O O 0.0000 86 O -3.464141836 15.666537145 5.988719661 CORE 87 O O 0.0000 87 O -12.946300378 8.408598292 9.805475029 CORE 88 O O 0.0000 88 O 1.897816432 8.403078167 4.881676592 CORE 89 O O 0.0000 89 O -7.837003374 15.683378463 8.616406078 CORE 90 O O 0.0000 90 O -12.845704439 15.714163017 4.787825063 CORE 91 O O 0.0000 91 O -3.504459576 8.253400109 8.663073920 CORE 92 O O 0.0000 92 O -9.416385636 6.030460376 5.616121215 CORE 93 O O 0.0000 93 O 0.602468110 13.355433540 9.359736767 CORE 94 O O 0.0000 94 O -2.186604933 17.902766981 5.370507456 CORE 95 O O 0.0000 95 O -11.730118407 10.696411567 9.280797513 CORE 96 O O 0.0000 96 O 0.628507155 10.691021751 5.385407636 CORE 97 O O 0.0000 97 O -8.976409747 17.957213764 9.342710751 CORE 98 O O 0.0000 98 O -11.856810355 13.322368287 5.397436167 CORE 99 O O 0.0000 99 O -2.027263047 6.086080663 9.204267084 CORE 100 O O 0.0000 100 O -11.958979152 10.748880936 5.242662012 CORE 101 O O 0.0000 101 O -2.174483169 17.870042203 9.218945666 CORE 102 O O 0.0000 102 O 0.528692353 13.328880146 5.379944285 CORE 103 O O 0.0000 103 O -9.125961925 6.133031060 8.844529856 CORE 104 O O 0.0000 104 O -2.085413567 6.125950684 5.479182256 CORE 105 O O 0.0000 105 O -11.714406955 13.356146349 9.196041857 CORE 106 O O 0.0000 106 O -9.210392432 17.838253231 5.369132299 CORE 107 O O 0.0000 107 O 0.515030447 10.740385464 9.157628682 CORE 108 O O 0.0000 108 O2 12.592041880 5.552418266 4.822192643 CORE 109 O2 O2 0.0000 109 O2 13.308255353 7.623562560 3.014740477 CORE 110 O2 O2 0.0000 110 H 13.328403638 6.704541666 3.360086905 CORE 111 H H 0.0000 111 H 13.472676071 8.189263449 3.806937722 CORE 112 H H 0.0000 112 C 13.878950307 5.872142555 5.440389253 CORE 113 C C 0.0000 113 C 13.141494496 4.593467242 5.732038998 CORE 114 C C 0.0000 114 H 13.506886550 3.653278302 5.274165476 CORE 115 H H 0.0000 115 H 12.613748783 4.513088917 6.705740637 CORE 116 H H 0.0000 116 H 14.699403676 5.850920597 4.723625552 CORE 117 H H 0.0000 117 H 13.871537495 6.666087606 6.199418575 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.342873697 4.784797559 3.560313953 CORE 1 Si Si 0.0000 1 Si -2.616324625 12.012829572 7.348864424 CORE 2 Si Si 0.0000 2 Si 1.087827677 4.756093774 3.497463507 CORE 3 Si Si 0.0000 3 Si -8.611046560 12.045620225 7.284966083 CORE 4 Si Si 0.0000 4 Si -13.671355956 7.700007824 11.081416192 CORE 5 Si Si 0.0000 5 Si -3.999771468 14.885373357 7.327088157 CORE 6 Si Si 0.0000 6 Si -7.177367372 9.236035994 7.188024807 CORE 7 Si Si 0.0000 7 Si 2.445313223 16.327554211 3.547715489 CORE 8 Si Si 0.0000 8 Si -13.610042015 16.329313819 3.497090981 CORE 9 Si Si 0.0000 9 Si -3.969617166 9.097984578 7.344957509 CORE 10 Si Si 0.0000 10 Si -7.221619278 14.953367402 7.295675143 CORE 11 Si Si 0.0000 11 Si 2.361924808 7.705947273 3.480087406 CORE 12 Si Si 0.0000 12 Si -10.206231878 4.624363078 5.855179759 CORE 13 Si Si 0.0000 13 Si -0.350975568 12.049777437 9.586389842 CORE 14 Si Si 0.0000 14 Si -10.839590202 12.030686121 9.556914615 CORE 15 Si Si 0.0000 15 Si -1.229756122 4.761617358 5.733407156 CORE 16 Si Si 0.0000 16 Si -9.980815524 4.749108390 8.919052816 CORE 17 Si Si 0.0000 17 Si -0.329844078 11.973724686 5.089845879 CORE 18 Si Si 0.0000 18 Si -10.953885960 12.012980783 5.050017914 CORE 19 Si Si 0.0000 19 Si -1.202089179 4.723179587 8.876264427 CORE 20 Si Si 0.0000 20 Ti -9.080204132 7.704887502 5.004971398 CORE 21 Ti Ti 0.0000 21 Si 0.699586557 14.925404390 8.919912888 CORE 22 Si Si 0.0000 22 Si -2.255176767 16.291173135 5.106021789 CORE 23 Si Si 0.0000 23 Si -11.946637230 9.156802919 8.776680631 CORE 24 Si Si 0.0000 24 Si 0.709968035 9.101670427 5.736467464 CORE 25 Si Si 0.0000 25 Si -8.974236074 16.337527482 9.560801066 CORE 26 Si Si 0.0000 26 Si -11.814328564 14.906624144 5.757860784 CORE 27 Si Si 0.0000 27 Si -2.255060915 7.673552305 9.520999041 CORE 28 Si Si 0.0000 28 Si -12.084908824 9.193863363 5.724208357 CORE 29 Si Si 0.0000 29 Si -2.204596673 16.267400920 9.552413120 CORE 30 Si Si 0.0000 30 Si 0.622620629 14.908544764 5.770008901 CORE 31 Si Si 0.0000 31 Si -9.109381196 7.726460603 9.204105127 CORE 32 Si Si 0.0000 32 Si -2.168997891 7.714433087 5.091760539 CORE 33 Si Si 0.0000 33 Si -11.855060255 14.951715328 8.874880370 CORE 34 Si Si 0.0000 34 Si -8.948275931 16.257066993 5.081185747 CORE 35 Si Si 0.0000 35 Si 0.564345212 9.144717745 8.849096773 CORE 36 Si Si 0.0000 36 O -15.279009633 7.833885595 3.320185302 CORE 37 O O 0.0000 37 O -5.607469407 14.999380696 7.391794460 CORE 38 O O 0.0000 38 O -15.206747653 16.084464740 3.632270619 CORE 39 O O 0.0000 39 O -5.574343167 9.058586208 7.265410515 CORE 40 O O 0.0000 40 O -10.580621918 4.402801445 7.434506625 CORE 41 O O 0.0000 41 O -0.809179135 11.946395779 3.535813618 CORE 42 O O 0.0000 42 O -10.415784748 12.084257353 3.516360823 CORE 43 O O 0.0000 43 O -0.792270864 4.686847809 7.299807535 CORE 44 O O 0.0000 44 O -13.244309525 6.129296345 3.507831611 CORE 45 O O 0.0000 45 O -3.576578953 13.314257400 7.254141716 CORE 46 O O 0.0000 46 O -7.545061267 10.823749227 7.225531125 CORE 47 O O 0.0000 47 O 2.122716069 17.925070477 3.532485460 CORE 48 O O 0.0000 48 O -3.496660525 10.654478365 7.435716933 CORE 49 O O 0.0000 49 O -13.332700179 17.928370732 3.379148309 CORE 50 O O 0.0000 50 O 1.930814888 6.134195915 3.489446717 CORE 51 O O 0.0000 51 O -7.762354685 13.423621896 7.231367230 CORE 52 O O 0.0000 52 O -11.607900818 4.610191513 5.009208998 CORE 53 O O 0.0000 53 O -1.706329201 12.158478134 8.694585904 CORE 54 O O 0.0000 54 O 0.115118077 4.733378881 4.813763543 CORE 55 O O 0.0000 55 O -9.471067517 11.989923540 8.672850259 CORE 56 O O 0.0000 56 O -1.657023673 11.925160127 6.030080023 CORE 57 O O 0.0000 57 O -11.212550757 4.852930995 9.982520453 CORE 58 O O 0.0000 58 O -9.641554890 11.945618824 6.019718309 CORE 59 O O 0.0000 59 O 0.171043156 4.644992590 9.752795127 CORE 60 O O 0.0000 60 O -10.609090782 8.532782006 5.515908226 CORE 61 O O 0.0000 61 O -0.748069956 15.632961609 9.192211471 CORE 62 O O 0.0000 62 O -10.515288173 8.386909440 8.699564675 CORE 63 O O 0.0000 63 O -0.842420073 15.600204399 5.541746899 CORE 64 O O 0.0000 64 O -0.724199195 8.405472600 5.378827089 CORE 65 O O 0.0000 65 O -10.439057003 15.713466352 9.194517067 CORE 66 O O 0.0000 66 O -10.275939719 15.423621227 5.541161676 CORE 67 O O 0.0000 67 O -0.922019426 8.508920997 9.077911743 CORE 68 O O 0.0000 68 O -12.571256215 9.145223702 7.279041963 CORE 69 O O 0.0000 69 O -2.511435032 16.026792658 3.522347018 CORE 70 O O 0.0000 70 O -9.021424700 7.906606378 3.217834077 CORE 71 O O 0.0000 71 O 1.050054068 15.036188017 7.334608956 CORE 72 O O 0.0000 72 O -2.526772755 7.851273665 3.508951394 CORE 73 O O 0.0000 73 O -12.235799653 15.140283348 7.307475762 CORE 74 O O 0.0000 74 O 1.020390117 8.903184489 7.313653507 CORE 75 O O 0.0000 75 O -8.640449363 16.014163615 3.506079213 CORE 76 O O 0.0000 76 O -13.227152999 8.425710752 4.863334451 CORE 77 O O 0.0000 77 O -3.364734056 15.559221416 8.671750027 CORE 78 O O 0.0000 78 O 1.727415466 15.654674390 4.848047063 CORE 79 O O 0.0000 79 O -7.892577240 8.472356133 8.436200921 CORE 80 O O 0.0000 80 O -3.321995735 8.431557515 5.991558598 CORE 81 O O 0.0000 81 O -13.048533644 15.608909893 9.754193410 CORE 82 O O 0.0000 82 O -7.658290683 15.737085770 5.926185446 CORE 83 O O 0.0000 83 O 1.628318101 8.432087833 9.831578966 CORE 84 O O 0.0000 84 O -7.691573189 8.576118628 5.788741292 CORE 85 O O 0.0000 85 O 1.863244732 15.660701914 9.782115091 CORE 86 O O 0.0000 86 O -3.465866341 15.667209448 5.991092808 CORE 87 O O 0.0000 87 O -12.946777066 8.402143371 9.805016010 CORE 88 O O 0.0000 88 O 1.897228510 8.402054576 4.882804818 CORE 89 O O 0.0000 89 O -7.836575953 15.681677956 8.615188011 CORE 90 O O 0.0000 90 O -12.841954059 15.707527335 4.790359255 CORE 91 O O 0.0000 91 O -3.505194141 8.250705994 8.661327303 CORE 92 O O 0.0000 92 O -9.427094465 6.031670638 5.622603553 CORE 93 O O 0.0000 93 O 0.599863166 13.355822883 9.361160306 CORE 94 O O 0.0000 94 O -2.187117993 17.903457159 5.368915418 CORE 95 O O 0.0000 95 O -11.729729667 10.696554561 9.278765017 CORE 96 O O 0.0000 96 O 0.628097439 10.691739605 5.385085014 CORE 97 O O 0.0000 97 O -8.968434608 17.956763015 9.343922961 CORE 98 O O 0.0000 98 O -11.857502775 13.320704249 5.404001804 CORE 99 O O 0.0000 99 O -2.027971631 6.086746624 9.204772812 CORE 100 O O 0.0000 100 O -11.958040210 10.748885405 5.240668541 CORE 101 O O 0.0000 101 O -2.172680915 17.868735940 9.221102312 CORE 102 O O 0.0000 102 O 0.526733834 13.328595887 5.380856466 CORE 103 O O 0.0000 103 O -9.123127971 6.131798312 8.846211736 CORE 104 O O 0.0000 104 O -2.088555819 6.124989797 5.479162553 CORE 105 O O 0.0000 105 O -11.717354452 13.356762003 9.198139167 CORE 106 O O 0.0000 106 O -9.206703443 17.839099088 5.368601316 CORE 107 O O 0.0000 107 O 0.514815293 10.743326360 9.154180407 CORE 108 O O 0.0000 108 O2 12.576467450 5.570525920 4.824944934 CORE 109 O2 O2 0.0000 109 O2 13.292160549 7.622325343 3.020857136 CORE 110 O2 O2 0.0000 110 H 13.343670349 6.706771627 3.368823033 CORE 111 H H 0.0000 111 H 13.474727926 8.179545175 3.808562928 CORE 112 H H 0.0000 112 C 13.871082746 5.864268647 5.435545966 CORE 113 C C 0.0000 113 C 13.149476178 4.596945231 5.727189245 CORE 114 C C 0.0000 114 H 13.518795469 3.647974398 5.288199346 CORE 115 H H 0.0000 115 H 12.610754329 4.519118891 6.694969199 CORE 116 H H 0.0000 116 H 14.702724710 5.858282349 4.711604400 CORE 117 H H 0.0000 117 H 13.869658648 6.661370382 6.199296175 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.341506370 4.784278917 3.558459162 CORE 1 Si Si 0.0000 1 Si -2.615190543 12.012874691 7.347714213 CORE 2 Si Si 0.0000 2 Si 1.085929394 4.757241908 3.496254948 CORE 3 Si Si 0.0000 3 Si -8.611548458 12.042220653 7.284086917 CORE 4 Si Si 0.0000 4 Si -13.669430730 7.702485141 11.079684105 CORE 5 Si Si 0.0000 5 Si -3.999908297 14.884529662 7.325826347 CORE 6 Si Si 0.0000 6 Si -7.178887500 9.234102545 7.192472518 CORE 7 Si Si 0.0000 7 Si 2.442310109 16.325256357 3.547713131 CORE 8 Si Si 0.0000 8 Si -13.610464626 16.328142189 3.490686846 CORE 9 Si Si 0.0000 9 Si -3.967254511 9.099033827 7.346726187 CORE 10 Si Si 0.0000 10 Si -7.221427794 14.950321134 7.296657006 CORE 11 Si Si 0.0000 11 Si 2.365222556 7.703322637 3.479911603 CORE 12 Si Si 0.0000 12 Si -10.207056508 4.627439904 5.854933741 CORE 13 Si Si 0.0000 13 Si -0.348988759 12.051614451 9.585655669 CORE 14 Si Si 0.0000 14 Si -10.838715537 12.029797741 9.557451912 CORE 15 Si Si 0.0000 15 Si -1.228911094 4.762365339 5.735069181 CORE 16 Si Si 0.0000 16 Si -9.986635657 4.749362955 8.912369876 CORE 17 Si Si 0.0000 17 Si -0.327891717 11.975498132 5.090483060 CORE 18 Si Si 0.0000 18 Si -10.954138063 12.012821500 5.053124473 CORE 19 Si Si 0.0000 19 Si -1.201846120 4.724347469 8.873588436 CORE 20 Si Si 0.0000 20 Ti -9.086412620 7.704215631 5.006878223 CORE 21 Ti Ti 0.0000 21 Si 0.698743452 14.925767209 8.918595394 CORE 22 Si Si 0.0000 22 Si -2.253667224 16.293026870 5.107281773 CORE 23 Si Si 0.0000 23 Si -11.946303915 9.158063056 8.777030031 CORE 24 Si Si 0.0000 24 Si 0.711048232 9.100214826 5.734065029 CORE 25 Si Si 0.0000 25 Si -8.978214502 16.338127856 9.557836229 CORE 26 Si Si 0.0000 26 Si -11.817964054 14.910855159 5.755490603 CORE 27 Si Si 0.0000 27 Si -2.253985529 7.673383941 9.521263316 CORE 28 Si Si 0.0000 28 Si -12.087641552 9.198214596 5.727720990 CORE 29 Si Si 0.0000 29 Si -2.203116766 16.270236156 9.550850065 CORE 30 Si Si 0.0000 30 Si 0.622801720 14.909204239 5.772423888 CORE 31 Si Si 0.0000 31 Si -9.112030017 7.725413660 9.206758144 CORE 32 Si Si 0.0000 32 Si -2.168857983 7.714925495 5.091270863 CORE 33 Si Si 0.0000 33 Si -11.854399589 14.953045232 8.873119984 CORE 34 Si Si 0.0000 34 Si -8.948180670 16.257558391 5.081454054 CORE 35 Si Si 0.0000 35 Si 0.566917825 9.141930654 8.851293965 CORE 36 Si Si 0.0000 36 O -15.278086086 7.826067472 3.322986964 CORE 37 O O 0.0000 37 O -5.608183765 14.998712141 7.393569756 CORE 38 O O 0.0000 38 O -15.205788119 16.083124169 3.629698086 CORE 39 O O 0.0000 39 O -5.573835111 9.054475988 7.267823220 CORE 40 O O 0.0000 40 O -10.587086359 4.408532314 7.429798823 CORE 41 O O 0.0000 41 O -0.806529544 11.948641884 3.535991246 CORE 42 O O 0.0000 42 O -10.414794423 12.084140161 3.517861575 CORE 43 O O 0.0000 43 O -0.790482467 4.687533662 7.299015852 CORE 44 O O 0.0000 44 O -13.240563764 6.131000023 3.507605144 CORE 45 O O 0.0000 45 O -3.577422635 13.312905586 7.252894056 CORE 46 O O 0.0000 46 O -7.546364316 10.820910388 7.230255055 CORE 47 O O 0.0000 47 O 2.121977848 17.925233940 3.532959010 CORE 48 O O 0.0000 48 O -3.492279501 10.655284149 7.435151869 CORE 49 O O 0.0000 49 O -13.330662757 17.925907397 3.369167640 CORE 50 O O 0.0000 50 O 1.931497492 6.136702207 3.489502935 CORE 51 O O 0.0000 51 O -7.765399559 13.423567408 7.228397676 CORE 52 O O 0.0000 52 O -11.606452088 4.610867420 5.007221689 CORE 53 O O 0.0000 53 O -1.705507073 12.161386884 8.691468238 CORE 54 O O 0.0000 54 O 0.113819647 4.732628161 4.812668864 CORE 55 O O 0.0000 55 O -9.466919929 11.990297026 8.675341546 CORE 56 O O 0.0000 56 O -1.656416892 11.926959086 6.030922675 CORE 57 O O 0.0000 57 O -11.214119189 4.853462034 9.982241420 CORE 58 O O 0.0000 58 O -9.642171486 11.943395783 6.022531154 CORE 59 O O 0.0000 59 O 0.170234307 4.645038717 9.751492239 CORE 60 O O 0.0000 60 O -10.611995364 8.534917695 5.514870145 CORE 61 O O 0.0000 61 O -0.748271639 15.633393619 9.193096419 CORE 62 O O 0.0000 62 O -10.513407018 8.387567761 8.699096147 CORE 63 O O 0.0000 63 O -0.842284399 15.600963047 5.541124097 CORE 64 O O 0.0000 64 O -0.723048563 8.407817301 5.376257675 CORE 65 O O 0.0000 65 O -10.441557064 15.712177819 9.192993721 CORE 66 O O 0.0000 66 O -10.278458832 15.423507495 5.534265354 CORE 67 O O 0.0000 67 O -0.918809049 8.508945647 9.079995892 CORE 68 O O 0.0000 68 O -12.572138001 9.148387017 7.279444917 CORE 69 O O 0.0000 69 O -2.511086129 16.031189443 3.522567323 CORE 70 O O 0.0000 70 O -9.020501730 7.894015823 3.212867630 CORE 71 O O 0.0000 71 O 1.048785274 15.036538727 7.334773271 CORE 72 O O 0.0000 72 O -2.525292463 7.850582622 3.509484507 CORE 73 O O 0.0000 73 O -12.235466722 15.143372859 7.306493823 CORE 74 O O 0.0000 74 O 1.021535168 8.903394655 7.312934473 CORE 75 O O 0.0000 75 O -8.638341891 16.013214405 3.505360787 CORE 76 O O 0.0000 76 O -13.222888597 8.424981222 4.861976106 CORE 77 O O 0.0000 77 O -3.363897880 15.558438984 8.669789115 CORE 78 O O 0.0000 78 O 1.729424021 15.653497859 4.852078052 CORE 79 O O 0.0000 79 O -7.893775984 8.463702676 8.438599780 CORE 80 O O 0.0000 80 O -3.322116398 8.430199646 5.992602080 CORE 81 O O 0.0000 81 O -13.048111803 15.601649332 9.754139627 CORE 82 O O 0.0000 82 O -7.656801732 15.739105564 5.929821163 CORE 83 O O 0.0000 83 O 1.633974655 8.433495577 9.833739872 CORE 84 O O 0.0000 84 O -7.689320228 8.570716415 5.792467383 CORE 85 O O 0.0000 85 O 1.859727789 15.661250539 9.781363118 CORE 86 O O 0.0000 86 O -3.466364198 15.665347064 5.989576005 CORE 87 O O 0.0000 87 O -12.946780915 8.408717934 9.807592194 CORE 88 O O 0.0000 88 O 1.899439903 8.402718519 4.880566851 CORE 89 O O 0.0000 89 O -7.834130931 15.682045965 8.614751432 CORE 90 O O 0.0000 90 O -12.845122291 15.713586139 4.789841660 CORE 91 O O 0.0000 91 O -3.503571440 8.253865561 8.663593341 CORE 92 O O 0.0000 92 O -9.416559414 6.027457353 5.615540936 CORE 93 O O 0.0000 93 O 0.602135756 13.354895727 9.359404256 CORE 94 O O 0.0000 94 O -2.187219027 17.904380279 5.371014173 CORE 95 O O 0.0000 95 O -11.729288966 10.697464708 9.281004734 CORE 96 O O 0.0000 96 O 0.630054611 10.690784773 5.385783737 CORE 97 O O 0.0000 97 O -8.974185845 17.956435512 9.343913147 CORE 98 O O 0.0000 98 O -11.858339721 13.324885101 5.396690432 CORE 99 O O 0.0000 99 O -2.028292631 6.088889520 9.204648967 CORE 100 O O 0.0000 100 O -11.959286103 10.748988182 5.243058120 CORE 101 O O 0.0000 101 O -2.175472147 17.871582995 9.218590029 CORE 102 O O 0.0000 102 O 0.529009504 13.328504065 5.379855813 CORE 103 O O 0.0000 103 O -9.125400753 6.130435110 8.843245073 CORE 104 O O 0.0000 104 O -2.085790760 6.128071380 5.478797483 CORE 105 O O 0.0000 105 O -11.715050493 13.357963183 9.195042725 CORE 106 O O 0.0000 106 O -9.210946676 17.838526967 5.368268728 CORE 107 O O 0.0000 107 O 0.516070230 10.740059259 9.158070814 CORE 108 O O 0.0000 108 O2 12.592315538 5.557730531 4.819879060 CORE 109 O2 O2 0.0000 109 O2 13.311875062 7.627083216 3.017076730 CORE 110 O2 O2 0.0000 110 H 13.323788985 6.707977996 3.359272781 CORE 111 H H 0.0000 111 H 13.470469682 8.184100665 3.800535641 CORE 112 H H 0.0000 112 C 13.867260006 5.857067042 5.445372132 CORE 113 C C 0.0000 113 C 13.147795358 4.599751205 5.734899312 CORE 114 C C 0.0000 114 H 13.505968199 3.651092018 5.273100465 CORE 115 H H 0.0000 115 H 12.614782216 4.511480376 6.704555053 CORE 116 H H 0.0000 116 H 14.707820863 5.849547737 4.722206502 CORE 117 H H 0.0000 117 H 13.870267739 6.668891129 6.200162029 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.339318841 4.783449060 3.555491358 CORE 1 Si Si 0.0000 1 Si -2.613376166 12.012947053 7.345873799 CORE 2 Si Si 0.0000 2 Si 1.082891832 4.759078923 3.494321346 CORE 3 Si Si 0.0000 3 Si -8.612351534 12.036781250 7.282680191 CORE 4 Si Si 0.0000 4 Si -13.666350254 7.706448906 11.076912796 CORE 5 Si Si 0.0000 5 Si -4.000127300 14.883179577 7.323807316 CORE 6 Si Si 0.0000 6 Si -7.181319820 9.231008853 7.199588765 CORE 7 Si Si 0.0000 7 Si 2.437504934 16.321579878 3.547709403 CORE 8 Si Si 0.0000 8 Si -13.611140880 16.326267551 3.480440229 CORE 9 Si Si 0.0000 9 Si -3.963474109 9.100712712 7.349555996 CORE 10 Si Si 0.0000 10 Si -7.221121228 14.945447222 7.298227973 CORE 11 Si Si 0.0000 11 Si 2.370498645 7.699123335 3.479630441 CORE 12 Si Si 0.0000 12 Si -10.208375915 4.632362682 5.854540144 CORE 13 Si Si 0.0000 13 Si -0.345809750 12.054553905 9.584481115 CORE 14 Si Si 0.0000 14 Si -10.837315880 12.028376303 9.558311604 CORE 15 Si Si 0.0000 15 Si -1.227558778 4.763562051 5.737728512 CORE 16 Si Si 0.0000 16 Si -9.995947907 4.749770027 8.901677248 CORE 17 Si Si 0.0000 17 Si -0.324767940 11.978335530 5.091502655 CORE 18 Si Si 0.0000 18 Si -10.954541429 12.012566648 5.058094953 CORE 19 Si Si 0.0000 19 Si -1.201457573 4.726215908 8.869306942 CORE 20 Si Si 0.0000 20 Ti -9.096345892 7.703140579 5.009929250 CORE 21 Ti Ti 0.0000 21 Si 0.697394216 14.926347690 8.916487359 CORE 22 Si Si 0.0000 22 Si -2.251252032 16.295992848 5.109297761 CORE 23 Si Si 0.0000 23 Si -11.945770840 9.160079102 8.777589009 CORE 24 Si Si 0.0000 24 Si 0.712776201 9.097885693 5.730221102 CORE 25 Si Si 0.0000 25 Si -8.984580025 16.339088166 9.553092521 CORE 26 Si Si 0.0000 26 Si -11.823780915 14.917624754 5.751698405 CORE 27 Si Si 0.0000 27 Si -2.252265065 7.673114530 9.521686201 CORE 28 Si Si 0.0000 28 Si -12.092013723 9.205176484 5.733341202 CORE 29 Si Si 0.0000 29 Si -2.200748915 16.274772619 9.548349193 CORE 30 Si Si 0.0000 30 Si 0.623091351 14.910259542 5.776287821 CORE 31 Si Si 0.0000 31 Si -9.116267862 7.723738523 9.211002895 CORE 32 Si Si 0.0000 32 Si -2.168633977 7.715713549 5.090487396 CORE 33 Si Si 0.0000 33 Si -11.853342293 14.955172848 8.870303259 CORE 34 Si Si 0.0000 34 Si -8.948028253 16.258344427 5.081883405 CORE 35 Si Si 0.0000 35 Si 0.571034044 9.137471166 8.854809565 CORE 36 Si Si 0.0000 36 O -15.276608296 7.813558360 3.327469593 CORE 37 O O 0.0000 37 O -5.609326700 14.997642423 7.396410215 CORE 38 O O 0.0000 38 O -15.204252981 16.080979111 3.625582050 CORE 39 O O 0.0000 39 O -5.573022028 9.047899695 7.271683426 CORE 40 O O 0.0000 40 O -10.597429348 4.417701963 7.422266308 CORE 41 O O 0.0000 41 O -0.802289968 11.952235623 3.536275452 CORE 42 O O 0.0000 42 O -10.413210018 12.083952625 3.520262793 CORE 43 O O 0.0000 43 O -0.787621186 4.688630768 7.297749251 CORE 44 O O 0.0000 44 O -13.234570238 6.133726139 3.507242737 CORE 45 O O 0.0000 45 O -3.578772256 13.310742654 7.250897846 CORE 46 O O 0.0000 46 O -7.548449465 10.816368303 7.237813433 CORE 47 O O 0.0000 47 O 2.120796809 17.925495712 3.533716688 CORE 48 O O 0.0000 48 O -3.485269862 10.656573259 7.434247827 CORE 49 O O 0.0000 49 O -13.327402729 17.921966119 3.353198570 CORE 50 O O 0.0000 50 O 1.932589814 6.140712243 3.489592928 CORE 51 O O 0.0000 51 O -7.770271512 13.423480343 7.223646437 CORE 52 O O 0.0000 52 O -11.604134081 4.611948814 5.004042101 CORE 53 O O 0.0000 53 O -1.704191515 12.166040972 8.686479957 CORE 54 O O 0.0000 54 O 0.111742196 4.731427269 4.810917302 CORE 55 O O 0.0000 55 O -9.460283827 11.990894661 8.679327576 CORE 56 O O 0.0000 56 O -1.655446004 11.929837422 6.032271054 CORE 57 O O 0.0000 57 O -11.216628679 4.854311495 9.981795029 CORE 58 O O 0.0000 58 O -9.643158154 11.939838657 6.027031811 CORE 59 O O 0.0000 59 O 0.168940111 4.645112665 9.749407634 CORE 60 O O 0.0000 60 O -10.616642733 8.538334853 5.513209262 CORE 61 O O 0.0000 61 O -0.748594563 15.634084950 9.194512198 CORE 62 O O 0.0000 62 O -10.510397168 8.388620902 8.698346379 CORE 63 O O 0.0000 63 O -0.842067128 15.602176912 5.540127627 CORE 64 O O 0.0000 64 O -0.721207436 8.411568738 5.372146583 CORE 65 O O 0.0000 65 O -10.445557239 15.710115934 9.190556369 CORE 66 O O 0.0000 66 O -10.282489413 15.423325581 5.523231314 CORE 67 O O 0.0000 67 O -0.913672483 8.508985287 9.083330439 CORE 68 O O 0.0000 68 O -12.573548627 9.153448465 7.280089705 CORE 69 O O 0.0000 69 O -2.510527844 16.038224269 3.522919765 CORE 70 O O 0.0000 70 O -9.019024903 7.873870790 3.204921435 CORE 71 O O 0.0000 71 O 1.046755165 15.037099749 7.335036177 CORE 72 O O 0.0000 72 O -2.522924035 7.849476868 3.510337581 CORE 73 O O 0.0000 73 O -12.234933841 15.148315962 7.304922780 CORE 74 O O 0.0000 74 O 1.023367058 8.903730951 7.311783957 CORE 75 O O 0.0000 75 O -8.634970051 16.011695524 3.504211261 CORE 76 O O 0.0000 76 O -13.216065245 8.423813916 4.859802648 CORE 77 O O 0.0000 77 O -3.362559613 15.557187064 8.666651518 CORE 78 O O 0.0000 78 O 1.732637670 15.651615293 4.858527602 CORE 79 O O 0.0000 79 O -7.895693897 8.449857029 8.442437926 CORE 80 O O 0.0000 80 O -3.322309229 8.428027057 5.994271712 CORE 81 O O 0.0000 81 O -13.047437089 15.590032349 9.754053513 CORE 82 O O 0.0000 82 O -7.654419640 15.742337349 5.935638326 CORE 83 O O 0.0000 83 O 1.643025180 8.435747880 9.837197276 CORE 84 O O 0.0000 84 O -7.685715915 8.562072904 5.798429235 CORE 85 O O 0.0000 85 O 1.854100487 15.662128252 9.780159960 CORE 86 O O 0.0000 86 O -3.467160538 15.662367249 5.987149074 CORE 87 O O 0.0000 87 O -12.946786880 8.419237092 9.811714088 CORE 88 O O 0.0000 88 O 1.902978400 8.403780741 4.876986134 CORE 89 O O 0.0000 89 O -7.830218897 15.682634663 8.614052862 CORE 90 O O 0.0000 90 O -12.850191308 15.723280340 4.789013614 CORE 91 O O 0.0000 91 O -3.500975156 8.258921099 8.667219017 CORE 92 O O 0.0000 92 O -9.399703488 6.020716011 5.604240720 CORE 93 O O 0.0000 93 O 0.605772016 13.353412306 9.356594454 CORE 94 O O 0.0000 94 O -2.187380488 17.905857213 5.374372226 CORE 95 O O 0.0000 95 O -11.728583845 10.698920741 9.284588189 CORE 96 O O 0.0000 96 O 0.633186086 10.689257243 5.386901693 CORE 97 O O 0.0000 97 O -8.983387825 17.955911825 9.343897476 CORE 98 O O 0.0000 98 O -11.859678757 13.331574261 5.384992130 CORE 99 O O 0.0000 99 O -2.028806076 6.092318066 9.204450799 CORE 100 O O 0.0000 100 O -11.961279262 10.749152798 5.246881431 CORE 101 O O 0.0000 101 O -2.179938039 17.876138342 9.214570299 CORE 102 O O 0.0000 102 O 0.532650574 13.328356891 5.378254722 CORE 103 O O 0.0000 103 O -9.129037206 6.128253871 8.838498322 CORE 104 O O 0.0000 104 O -2.081366628 6.133001943 5.478213477 CORE 105 O O 0.0000 105 O -11.711364197 13.359884957 9.190088373 CORE 106 O O 0.0000 106 O -9.217735580 17.837611775 5.367736679 CORE 107 O O 0.0000 107 O 0.518078016 10.734832041 9.164295495 CORE 108 O O 0.0000 108 O2 12.617672749 5.537257706 4.811773571 CORE 109 O2 O2 0.0000 109 O2 13.343418052 7.634695785 3.011028003 CORE 110 O2 O2 0.0000 110 H 13.291978688 6.709908130 3.343992316 CORE 111 H H 0.0000 111 H 13.463656337 8.191389479 3.787691996 CORE 112 H H 0.0000 112 C 13.861143700 5.845544475 5.461093968 CORE 113 C C 0.0000 113 C 13.145105738 4.604240676 5.747235327 CORE 114 C C 0.0000 114 H 13.485444837 3.656080383 5.248942226 CORE 115 H H 0.0000 115 H 12.621227219 4.499258694 6.719892343 CORE 116 H H 0.0000 116 H 14.715974783 5.835572501 4.739169911 CORE 117 H H 0.0000 117 H 13.871241898 6.680923978 6.201547455 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.341270047 4.784189257 3.558138670 CORE 1 Si Si 0.0000 1 Si -2.614994634 12.012882619 7.347515436 CORE 2 Si Si 0.0000 2 Si 1.085601274 4.757440255 3.496046130 CORE 3 Si Si 0.0000 3 Si -8.611635251 12.041633252 7.283935001 CORE 4 Si Si 0.0000 4 Si -13.669097992 7.702913259 11.079384837 CORE 5 Si Si 0.0000 5 Si -3.999931968 14.884383785 7.325608249 CORE 6 Si Si 0.0000 6 Si -7.179150188 9.233768411 7.193240999 CORE 7 Si Si 0.0000 7 Si 2.441791083 16.324859375 3.547712751 CORE 8 Si Si 0.0000 8 Si -13.610537755 16.327939661 3.489580300 CORE 9 Si Si 0.0000 9 Si -3.966846141 9.099215164 7.347031769 CORE 10 Si Si 0.0000 10 Si -7.221394694 14.949794852 7.296826647 CORE 11 Si Si 0.0000 11 Si 2.365792195 7.702869150 3.479881251 CORE 12 Si Si 0.0000 12 Si -10.207199110 4.627971520 5.854891217 CORE 13 Si Si 0.0000 13 Si -0.348645436 12.051932008 9.585528857 CORE 14 Si Si 0.0000 14 Si -10.838564275 12.029644224 9.557544720 CORE 15 Si Si 0.0000 15 Si -1.228765027 4.762494495 5.735356430 CORE 16 Si Si 0.0000 16 Si -9.987641377 4.749406920 8.911215177 CORE 17 Si Si 0.0000 17 Si -0.327554360 11.975804445 5.090593136 CORE 18 Si Si 0.0000 18 Si -10.954181748 12.012793968 5.053661238 CORE 19 Si Si 0.0000 19 Si -1.201804167 4.724549131 8.873126069 CORE 20 Si Si 0.0000 20 Ti -9.087485312 7.704099448 5.007207768 CORE 21 Ti Ti 0.0000 21 Si 0.698597579 14.925829913 8.918367710 CORE 22 Si Si 0.0000 22 Si -2.253406460 16.293347166 5.107499491 CORE 23 Si Si 0.0000 23 Si -11.946246373 9.158280719 8.777090356 CORE 24 Si Si 0.0000 24 Si 0.711234712 9.099963289 5.733649903 CORE 25 Si Si 0.0000 25 Si -8.978901918 16.338231498 9.557323959 CORE 26 Si Si 0.0000 26 Si -11.818592197 14.911586275 5.755081031 CORE 27 Si Si 0.0000 27 Si -2.253799819 7.673354823 9.521309035 CORE 28 Si Si 0.0000 28 Si -12.088113621 9.198966325 5.728327970 CORE 29 Si Si 0.0000 29 Si -2.202861006 16.270726113 9.550579933 CORE 30 Si Si 0.0000 30 Si 0.622832897 14.909318259 5.772841144 CORE 31 Si Si 0.0000 31 Si -9.112487653 7.725232755 9.207216555 CORE 32 Si Si 0.0000 32 Si -2.168833735 7.715010686 5.091186271 CORE 33 Si Si 0.0000 33 Si -11.854285469 14.953275003 8.872815771 CORE 34 Si Si 0.0000 34 Si -8.948164312 16.257643294 5.081500458 CORE 35 Si Si 0.0000 35 Si 0.567362374 9.141449058 8.851673641 CORE 36 Si Si 0.0000 36 O -15.277926356 7.824716523 3.323471088 CORE 37 O O 0.0000 37 O -5.608307315 14.998596678 7.393876479 CORE 38 O O 0.0000 38 O -15.205622231 16.082892524 3.629253597 CORE 39 O O 0.0000 39 O -5.573747163 9.053765774 7.268240095 CORE 40 O O 0.0000 40 O -10.588203313 4.409522606 7.428985383 CORE 41 O O 0.0000 41 O -0.806071524 11.949029929 3.536021903 CORE 42 O O 0.0000 42 O -10.414623339 12.084119980 3.518120905 CORE 43 O O 0.0000 43 O -0.790173592 4.687652151 7.298879074 CORE 44 O O 0.0000 44 O -13.239916377 6.131294516 3.507565967 CORE 45 O O 0.0000 45 O -3.577568316 13.312672067 7.252678468 CORE 46 O O 0.0000 46 O -7.546589670 10.820419854 7.231071385 CORE 47 O O 0.0000 47 O 2.121850256 17.925262193 3.533040863 CORE 48 O O 0.0000 48 O -3.491522420 10.655423395 7.435054268 CORE 49 O O 0.0000 49 O -13.330310582 17.925481730 3.367443084 CORE 50 O O 0.0000 50 O 1.931615462 6.137135225 3.489512672 CORE 51 O O 0.0000 51 O -7.765925705 13.423558039 7.227884570 CORE 52 O O 0.0000 52 O -11.606201716 4.610984180 5.006878299 CORE 53 O O 0.0000 53 O -1.705365048 12.161889526 8.690929495 CORE 54 O O 0.0000 54 O 0.113595255 4.732498573 4.812479672 CORE 55 O O 0.0000 55 O -9.466203261 11.990361604 8.675772039 CORE 56 O O 0.0000 56 O -1.656312009 11.927269868 6.031068277 CORE 57 O O 0.0000 57 O -11.214390344 4.853553712 9.982193266 CORE 58 O O 0.0000 58 O -9.642278101 11.943011630 6.023017255 CORE 59 O O 0.0000 59 O 0.170094592 4.645046789 9.751267066 CORE 60 O O 0.0000 60 O -10.612497262 8.535286712 5.514690767 CORE 61 O O 0.0000 61 O -0.748306472 15.633468288 9.193249324 CORE 62 O O 0.0000 62 O -10.513081977 8.387681494 8.699015130 CORE 63 O O 0.0000 63 O -0.842260921 15.601094221 5.541016455 CORE 64 O O 0.0000 64 O -0.722849767 8.408222356 5.375813718 CORE 65 O O 0.0000 65 O -10.441989105 15.711955111 9.192730512 CORE 66 O O 0.0000 66 O -10.278894144 15.423487891 5.533073759 CORE 67 O O 0.0000 67 O -0.918254228 8.508949971 9.080356017 CORE 68 O O 0.0000 68 O -12.572290225 9.148933624 7.279514523 CORE 69 O O 0.0000 69 O -2.511025893 16.031949100 3.522605359 CORE 70 O O 0.0000 70 O -9.020342193 7.891840206 3.212009459 CORE 71 O O 0.0000 71 O 1.048565886 15.036599269 7.334801646 CORE 72 O O 0.0000 72 O -2.525036703 7.850463268 3.509576631 CORE 73 O O 0.0000 73 O -12.235409181 15.143906637 7.306324182 CORE 74 O O 0.0000 74 O 1.021733002 8.903430981 7.312810247 CORE 75 O O 0.0000 75 O -8.637977784 16.013050365 3.505236637 CORE 76 O O 0.0000 76 O -13.222151723 8.424855237 4.861741347 CORE 77 O O 0.0000 77 O -3.363753353 15.558303774 8.669450213 CORE 78 O O 0.0000 78 O 1.729771000 15.653294467 4.852774568 CORE 79 O O 0.0000 79 O -7.893983056 8.462207435 8.439014222 CORE 80 O O 0.0000 80 O -3.322137182 8.429964974 5.992782447 CORE 81 O O 0.0000 81 O -13.048039059 15.600394818 9.754130270 CORE 82 O O 0.0000 82 O -7.656544624 15.739454545 5.930449367 CORE 83 O O 0.0000 83 O 1.634952086 8.433738754 9.834113234 CORE 84 O O 0.0000 84 O -7.688931103 8.569782917 5.793111258 CORE 85 O O 0.0000 85 O 1.859120046 15.661345388 9.781233187 CORE 86 O O 0.0000 86 O -3.466450221 15.665025327 5.989313860 CORE 87 O O 0.0000 87 O -12.946781492 8.409853960 9.808037368 CORE 88 O O 0.0000 88 O 1.899822100 8.402833261 4.880180176 CORE 89 O O 0.0000 89 O -7.833708513 15.682109534 8.614675969 CORE 90 O O 0.0000 90 O -12.845669606 15.714633081 4.789752275 CORE 91 O O 0.0000 91 O -3.503291046 8.254411592 8.663984884 CORE 92 O O 0.0000 92 O -9.414739071 6.026729264 5.614320586 CORE 93 O O 0.0000 93 O 0.602528538 13.354735579 9.359100804 CORE 94 O O 0.0000 94 O -2.187236347 17.904539706 5.371376809 CORE 95 O O 0.0000 95 O -11.729212950 10.697621829 9.281391713 CORE 96 O O 0.0000 96 O 0.630392738 10.690619868 5.385904463 CORE 97 O O 0.0000 97 O -8.975179635 17.956379006 9.343911474 CORE 98 O O 0.0000 98 O -11.858484247 13.325607423 5.395427025 CORE 99 O O 0.0000 99 O -2.028348055 6.089259834 9.204627590 CORE 100 O O 0.0000 100 O -11.959501257 10.749006056 5.243471040 CORE 101 O O 0.0000 101 O -2.175954415 17.872074970 9.218155885 CORE 102 O O 0.0000 102 O 0.529402670 13.328488065 5.379682901 CORE 103 O O 0.0000 103 O -9.125793535 6.130199573 8.842732423 CORE 104 O O 0.0000 104 O -2.085312918 6.128603861 5.478734419 CORE 105 O O 0.0000 105 O -11.714652515 13.358170756 9.194507710 CORE 106 O O 0.0000 106 O -9.211679894 17.838428226 5.368211294 CORE 107 O O 0.0000 107 O 0.516286924 10.739494777 9.158743064 CORE 108 O O 0.0000 108 O2 12.595054039 5.555519598 4.819003698 CORE 109 O2 O2 0.0000 109 O2 13.315281542 7.627905289 3.016423498 CORE 110 O2 O2 0.0000 110 H 13.320353638 6.708186434 3.357622547 CORE 111 H H 0.0000 111 H 13.469733770 8.184887854 3.799148541 CORE 112 H H 0.0000 112 C 13.866599533 5.855822762 5.447069987 CORE 113 C C 0.0000 113 C 13.147504765 4.600235972 5.736231564 CORE 114 C C 0.0000 114 H 13.503751803 3.651630841 5.270491494 CORE 115 H H 0.0000 115 H 12.615478292 4.510160562 6.706211372 CORE 116 H H 0.0000 116 H 14.708701494 5.848038513 4.724038472 CORE 117 H H 0.0000 117 H 13.870372814 6.670190618 6.200311663 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.341003895 4.783860025 3.555384781 CORE 1 Si Si 0.0000 1 Si -2.614191751 12.011966129 7.346982018 CORE 2 Si Si 0.0000 2 Si 1.084665988 4.759914545 3.495148783 CORE 3 Si Si 0.0000 3 Si -8.611237274 12.039404445 7.284918994 CORE 4 Si Si 0.0000 4 Si -13.669672057 7.703404513 11.076811620 CORE 5 Si Si 0.0000 5 Si -4.001414761 14.883097701 7.324888910 CORE 6 Si Si 0.0000 6 Si -7.180614507 9.228452543 7.203327712 CORE 7 Si Si 0.0000 7 Si 2.439105889 16.322371103 3.548402041 CORE 8 Si Si 0.0000 8 Si -13.610561041 16.325090300 3.485342700 CORE 9 Si Si 0.0000 9 Si -3.961908564 9.101343068 7.349513776 CORE 10 Si Si 0.0000 10 Si -7.220778675 14.949311093 7.294698300 CORE 11 Si Si 0.0000 11 Si 2.370852360 7.700988891 3.480215588 CORE 12 Si Si 0.0000 12 Si -10.205940900 4.629292631 5.853554857 CORE 13 Si Si 0.0000 13 Si -0.347152828 12.052508598 9.584149364 CORE 14 Si Si 0.0000 14 Si -10.836026110 12.030113712 9.558538832 CORE 15 Si Si 0.0000 15 Si -1.228245809 4.763868509 5.736057967 CORE 16 Si Si 0.0000 16 Si -9.995537036 4.750507341 8.903089452 CORE 17 Si Si 0.0000 17 Si -0.325499426 11.976972616 5.090984679 CORE 18 Si Si 0.0000 18 Si -10.954349754 12.016672975 5.055352323 CORE 19 Si Si 0.0000 19 Si -1.202666708 4.726286252 8.870639803 CORE 20 Si Si 0.0000 20 Ti -9.089236567 7.700616702 5.003114781 CORE 21 Ti Ti 0.0000 21 Si 0.696436992 14.925316460 8.916901115 CORE 22 Si Si 0.0000 22 Si -2.252233119 16.294648096 5.107883123 CORE 23 Si Si 0.0000 23 Si -11.944483764 9.161148099 8.780782899 CORE 24 Si Si 0.0000 24 Si 0.712129007 9.098181915 5.731522925 CORE 25 Si Si 0.0000 25 Si -8.980940879 16.335808236 9.556028602 CORE 26 Si Si 0.0000 26 Si -11.818636267 14.918399979 5.750356568 CORE 27 Si Si 0.0000 27 Si -2.252721546 7.676184293 9.522034384 CORE 28 Si Si 0.0000 28 Si -12.093908350 9.204713915 5.729929441 CORE 29 Si Si 0.0000 29 Si -2.202775175 16.273116221 9.549462509 CORE 30 Si Si 0.0000 30 Si 0.622442232 14.909680934 5.774634317 CORE 31 Si Si 0.0000 31 Si -9.111955541 7.722755294 9.211779515 CORE 32 Si Si 0.0000 32 Si -2.168003717 7.717850678 5.091031920 CORE 33 Si Si 0.0000 33 Si -11.854030863 14.952558735 8.868050915 CORE 34 Si Si 0.0000 34 Si -8.949594568 16.254949900 5.083793805 CORE 35 Si Si 0.0000 35 Si 0.570244439 9.138671770 8.853907273 CORE 36 Si Si 0.0000 36 O -15.274043574 7.815821763 3.326976265 CORE 37 O O 0.0000 37 O -5.608283837 14.996677644 7.396425886 CORE 38 O O 0.0000 38 O -15.207341925 16.082059352 3.624941218 CORE 39 O O 0.0000 39 O -5.572724315 9.049650365 7.271055146 CORE 40 O O 0.0000 40 O -10.596243498 4.418321364 7.422279241 CORE 41 O O 0.0000 41 O -0.803007597 11.951128859 3.535423520 CORE 42 O O 0.0000 42 O -10.413817184 12.082783590 3.522319556 CORE 43 O O 0.0000 43 O -0.787469539 4.688828971 7.298172288 CORE 44 O O 0.0000 44 O -13.234976491 6.134564356 3.506322263 CORE 45 O O 0.0000 45 O -3.579096527 13.311496833 7.250873884 CORE 46 O O 0.0000 46 O -7.548575324 10.817271386 7.237292111 CORE 47 O O 0.0000 47 O 2.120490243 17.925679212 3.533608894 CORE 48 O O 0.0000 48 O -3.487457006 10.654587773 7.433761118 CORE 49 O O 0.0000 49 O -13.328692692 17.923889045 3.354811528 CORE 50 O O 0.0000 50 O 1.930123238 6.135934189 3.489347595 CORE 51 O O 0.0000 51 O -7.769831966 13.421818036 7.224033872 CORE 52 O O 0.0000 52 O -11.603619289 4.612846997 5.006279003 CORE 53 O O 0.0000 53 O -1.701695110 12.165546546 8.689743834 CORE 54 O O 0.0000 54 O 0.112155762 4.731539704 4.810676382 CORE 55 O O 0.0000 55 O -9.461698110 11.990264449 8.678374392 CORE 56 O O 0.0000 56 O -1.653608148 11.929708266 6.029994822 CORE 57 O O 0.0000 57 O -11.214785050 4.854826245 9.979030414 CORE 58 O O 0.0000 58 O -9.645603946 11.938947682 6.024956106 CORE 59 O O 0.0000 59 O 0.169575566 4.645034537 9.749592717 CORE 60 O O 0.0000 60 O -10.614055109 8.536737844 5.515189040 CORE 61 O O 0.0000 61 O -0.746162051 15.632991448 9.193598343 CORE 62 O O 0.0000 62 O -10.515093034 8.390544838 8.697458008 CORE 63 O O 0.0000 63 O -0.838979916 15.600588552 5.540816765 CORE 64 O O 0.0000 64 O -0.723246975 8.410095407 5.372792360 CORE 65 O O 0.0000 65 O -10.443757680 15.711340178 9.191201917 CORE 66 O O 0.0000 66 O -10.283311733 15.423617047 5.524699507 CORE 67 O O 0.0000 67 O -0.916220655 8.506538673 9.083175480 CORE 68 O O 0.0000 68 O -12.574583215 9.152258240 7.282008549 CORE 69 O O 0.0000 69 O -2.511225459 16.038376777 3.522013898 CORE 70 O O 0.0000 70 O -9.019822013 7.876741629 3.211812052 CORE 71 O O 0.0000 71 O 1.046407994 15.037059244 7.335743648 CORE 72 O O 0.0000 72 O -2.523034884 7.850045962 3.509509459 CORE 73 O O 0.0000 73 O -12.234990035 15.147243217 7.301938165 CORE 74 O O 0.0000 74 O 1.023662462 8.903114577 7.312470357 CORE 75 O O 0.0000 75 O -8.635438079 16.013056708 3.504625702 CORE 76 O O 0.0000 76 O -13.218001248 8.424007794 4.861502937 CORE 77 O O 0.0000 77 O -3.362413354 15.557723581 8.667286797 CORE 78 O O 0.0000 78 O 1.732197932 15.651742143 4.857445780 CORE 79 O O 0.0000 79 O -7.894216685 8.453428425 8.439847136 CORE 80 O O 0.0000 80 O -3.321888543 8.428137618 5.994041365 CORE 81 O O 0.0000 81 O -13.049013219 15.591004767 9.753448131 CORE 82 O O 0.0000 82 O -7.658291068 15.742156444 5.933001284 CORE 83 O O 0.0000 83 O 1.643066940 8.434580574 9.835963614 CORE 84 O O 0.0000 84 O -7.688392063 8.562184330 5.794501249 CORE 85 O O 0.0000 85 O 1.854718622 15.661403047 9.780484028 CORE 86 O O 0.0000 86 O -3.467318728 15.662988380 5.987415175 CORE 87 O O 0.0000 87 O -12.946977209 8.417735364 9.810140155 CORE 88 O O 0.0000 88 O 1.903856722 8.403037085 4.877733163 CORE 89 O O 0.0000 89 O -7.832306739 15.682793369 8.615511165 CORE 90 O O 0.0000 90 O -12.849055879 15.720607271 4.790458149 CORE 91 O O 0.0000 91 O -3.500080091 8.258316689 8.667367814 CORE 92 O O 0.0000 92 O -9.404638756 6.019885145 5.607352604 CORE 93 O O 0.0000 93 O 0.605727946 13.356026707 9.356009079 CORE 94 O O 0.0000 94 O -2.187186118 17.907950810 5.374838397 CORE 95 O O 0.0000 95 O -11.728891181 10.697710335 9.283142438 CORE 96 O O 0.0000 96 O 0.632552555 10.692218175 5.386247929 CORE 97 O O 0.0000 97 O -8.981764931 17.957401300 9.342770467 CORE 98 O O 0.0000 98 O -11.860221261 13.330584545 5.387931558 CORE 99 O O 0.0000 99 O -2.027974326 6.090145764 9.203340221 CORE 100 O O 0.0000 100 O -11.960830479 10.752913027 5.246058254 CORE 101 O O 0.0000 101 O -2.178743722 17.876733959 9.214752796 CORE 102 O O 0.0000 102 O 0.533110712 13.331121206 5.379867604 CORE 103 O O 0.0000 103 O -9.129113991 6.125930791 8.837636120 CORE 104 O O 0.0000 104 O -2.081329871 6.129625434 5.479326793 CORE 105 O O 0.0000 105 O -11.711525466 13.358513250 9.190663326 CORE 106 O O 0.0000 106 O -9.217092234 17.838908237 5.368278237 CORE 107 O O 0.0000 107 O 0.517302845 10.738700813 9.164174084 CORE 108 O O 0.0000 108 O2 12.597900887 5.556035357 4.808508553 CORE 109 O2 O2 0.0000 109 O2 13.335826073 7.628920375 3.001346679 CORE 110 O2 O2 0.0000 110 H 13.294684088 6.714149812 3.347878539 CORE 111 H H 0.0000 111 H 13.465153949 8.191023921 3.795922320 CORE 112 H H 0.0000 112 C 13.873236020 5.848920551 5.456830123 CORE 113 C C 0.0000 113 C 13.153081454 4.585463169 5.745074269 CORE 114 C C 0.0000 114 H 13.488732578 3.657379151 5.259712372 CORE 115 H H 0.0000 115 H 12.618238346 4.501098015 6.715819972 CORE 116 H H 0.0000 116 H 14.716692990 5.836728131 4.740963693 CORE 117 H H 0.0000 117 H 13.867828683 6.676871274 6.199248174 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.341026604 4.783887989 3.555618779 CORE 1 Si Si 0.0000 1 Si -2.614259876 12.012043969 7.347027357 CORE 2 Si Si 0.0000 2 Si 1.084745468 4.759704378 3.495225007 CORE 3 Si Si 0.0000 3 Si -8.611271144 12.039593854 7.284835391 CORE 4 Si Si 0.0000 4 Si -13.669623368 7.703362854 11.077030251 CORE 5 Si Si 0.0000 5 Si -4.001288710 14.883206965 7.324949996 CORE 6 Si Si 0.0000 6 Si -7.180489994 9.228904301 7.202470607 CORE 7 Si Si 0.0000 7 Si 2.439333937 16.322582423 3.548343465 CORE 8 Si Si 0.0000 8 Si -13.610559117 16.325332467 3.485702825 CORE 9 Si Si 0.0000 9 Si -3.962328096 9.101162163 7.349302904 CORE 10 Si Si 0.0000 10 Si -7.220831020 14.949352175 7.294879200 CORE 11 Si Si 0.0000 11 Si 2.370422436 7.701148606 3.480187213 CORE 12 Si Si 0.0000 12 Si -10.206047708 4.629180340 5.853668357 CORE 13 Si Si 0.0000 13 Si -0.347279650 12.052459587 9.584266592 CORE 14 Si Si 0.0000 14 Si -10.836241841 12.030073783 9.558454315 CORE 15 Si Si 0.0000 15 Si -1.228289879 4.763751749 5.735998403 CORE 16 Si Si 0.0000 16 Si -9.994865978 4.750413789 8.903779883 CORE 17 Si Si 0.0000 17 Si -0.325673974 11.976873298 5.090951436 CORE 18 Si Si 0.0000 18 Si -10.954335320 12.016343310 5.055208623 CORE 19 Si Si 0.0000 19 Si -1.202593387 4.726138645 8.870851055 CORE 20 Si Si 0.0000 20 Ti -9.089087806 7.700912637 5.003462583 CORE 21 Ti Ti 0.0000 21 Si 0.696620585 14.925360136 8.917025721 CORE 22 Si Si 0.0000 22 Si -2.252332806 16.294537535 5.107850488 CORE 23 Si Si 0.0000 23 Si -11.944633487 9.160904346 8.780469177 CORE 24 Si Si 0.0000 24 Si 0.712052991 9.098333270 5.731703672 CORE 25 Si Si 0.0000 25 Si -8.980767678 16.336014223 9.556138679 CORE 26 Si Si 0.0000 26 Si -11.818632418 14.917820939 5.750758001 CORE 27 Si Si 0.0000 27 Si -2.252813150 7.675943855 9.521972689 CORE 28 Si Si 0.0000 28 Si -12.093416075 9.204225543 5.729793348 CORE 29 Si Si 0.0000 29 Si -2.202782488 16.272913117 9.549557447 CORE 30 Si Si 0.0000 30 Si 0.622475333 14.909650231 5.774481944 CORE 31 Si Si 0.0000 31 Si -9.112000765 7.722965749 9.211391776 CORE 32 Si Si 0.0000 32 Si -2.168074152 7.717609375 5.091045081 CORE 33 Si Si 0.0000 33 Si -11.854052417 14.952619709 8.868455771 CORE 34 Si Si 0.0000 34 Si -8.949472942 16.255178806 5.083598985 CORE 35 Si Si 0.0000 35 Si 0.569999649 9.138907739 8.853717472 CORE 36 Si Si 0.0000 36 O -15.274373425 7.816577528 3.326678442 CORE 37 O O 0.0000 37 O -5.608285954 14.996840675 7.396209308 CORE 38 O O 0.0000 38 O -15.207195859 16.082130272 3.625307657 CORE 39 O O 0.0000 39 O -5.572811108 9.050000067 7.270815975 CORE 40 O O 0.0000 40 O -10.595560316 4.417573816 7.422849021 CORE 41 O O 0.0000 41 O -0.803267976 11.950950549 3.535474412 CORE 42 O O 0.0000 42 O -10.413885695 12.082897178 3.521962777 CORE 43 O O 0.0000 43 O -0.787699319 4.688728932 7.298232309 CORE 44 O O 0.0000 44 O -13.235396215 6.134286584 3.506427927 CORE 45 O O 0.0000 45 O -3.578966626 13.311596727 7.251027245 CORE 46 O O 0.0000 46 O -7.548406549 10.817538924 7.236763485 CORE 47 O O 0.0000 47 O 2.120605903 17.925643896 3.533560664 CORE 48 O O 0.0000 48 O -3.487802446 10.654658837 7.433870966 CORE 49 O O 0.0000 49 O -13.328830290 17.924024399 3.355884831 CORE 50 O O 0.0000 50 O 1.930250060 6.136036245 3.489361593 CORE 51 O O 0.0000 51 O -7.769499998 13.421965787 7.224361059 CORE 52 O O 0.0000 52 O -11.603838677 4.612688723 5.006329895 CORE 53 O O 0.0000 53 O -1.702006872 12.165235764 8.689844553 CORE 54 O O 0.0000 54 O 0.112278157 4.731621147 4.810829591 CORE 55 O O 0.0000 55 O -9.462080884 11.990272665 8.678153326 CORE 56 O O 0.0000 56 O -1.653837929 11.929500982 6.030086033 CORE 57 O O 0.0000 57 O -11.214751565 4.854718134 9.979299177 CORE 58 O O 0.0000 58 O -9.645321243 11.939293060 6.024791334 CORE 59 O O 0.0000 59 O 0.169619636 4.645035546 9.749734972 CORE 60 O O 0.0000 60 O -10.613922707 8.536614598 5.515146668 CORE 61 O O 0.0000 61 O -0.746344297 15.633031953 9.193568675 CORE 62 O O 0.0000 62 O -10.514922142 8.390301517 8.697590374 CORE 63 O O 0.0000 63 O -0.839258769 15.600631508 5.540833729 CORE 64 O O 0.0000 64 O -0.723213297 8.409936268 5.373049103 CORE 65 O O 0.0000 65 O -10.443607572 15.711392504 9.191331849 CORE 66 O O 0.0000 66 O -10.282936272 15.423606091 5.525411086 CORE 67 O O 0.0000 67 O -0.916393472 8.506743651 9.082935929 CORE 68 O O 0.0000 68 O -12.574388267 9.151975711 7.281796688 CORE 69 O O 0.0000 69 O -2.511208331 16.037830602 3.522064106 CORE 70 O O 0.0000 70 O -9.019866083 7.878024541 3.211828864 CORE 71 O O 0.0000 71 O 1.046591394 15.037020180 7.335663544 CORE 72 O O 0.0000 72 O -2.523205006 7.850081422 3.509515164 CORE 73 O O 0.0000 73 O -12.235025637 15.146959680 7.302310842 CORE 74 O O 0.0000 74 O 1.023498498 8.903141533 7.312499188 CORE 75 O O 0.0000 75 O -8.635653811 16.013056131 3.504677583 CORE 76 O O 0.0000 76 O -13.218353809 8.424079868 4.861523172 CORE 77 O O 0.0000 77 O -3.362527282 15.557772879 8.667470663 CORE 78 O O 0.0000 78 O 1.731991823 15.651874182 4.857048835 CORE 79 O O 0.0000 79 O -7.894196863 8.454174388 8.439776389 CORE 80 O O 0.0000 80 O -3.321909712 8.428292864 5.993934332 CORE 81 O O 0.0000 81 O -13.048930467 15.591802623 9.753506098 CORE 82 O O 0.0000 82 O -7.658142693 15.741926817 5.932784402 CORE 83 O O 0.0000 83 O 1.642377408 8.434509077 9.835806372 CORE 84 O O 0.0000 84 O -7.688437865 8.562830111 5.794383185 CORE 85 O O 0.0000 85 O 1.855092544 15.661398146 9.780547700 CORE 86 O O 0.0000 86 O -3.467244829 15.663161357 5.987576524 CORE 87 O O 0.0000 87 O -12.946960659 8.417065655 9.809961461 CORE 88 O O 0.0000 88 O 1.903513784 8.403019787 4.877941068 CORE 89 O O 0.0000 89 O -7.832425863 15.682735278 8.615440190 CORE 90 O O 0.0000 90 O -12.848768173 15.720099728 4.790398128 CORE 91 O O 0.0000 91 O -3.500352979 8.257984862 8.667080413 CORE 92 O O 0.0000 92 O -9.405497063 6.020466780 5.607944674 CORE 93 O O 0.0000 93 O 0.605456020 13.355917011 9.356271832 CORE 94 O O 0.0000 94 O -2.187190352 17.907660930 5.374544226 CORE 95 O O 0.0000 95 O -11.728918508 10.697702839 9.282993641 CORE 96 O O 0.0000 96 O 0.632368962 10.692082388 5.386218717 CORE 97 O O 0.0000 97 O -8.981205299 17.957314379 9.342867383 CORE 98 O O 0.0000 98 O -11.860073656 13.330161617 5.388568434 CORE 99 O O 0.0000 99 O -2.028006079 6.090070519 9.203449537 CORE 100 O O 0.0000 100 O -11.960717514 10.752581056 5.245838406 CORE 101 O O 0.0000 101 O -2.178506821 17.876338130 9.215041947 CORE 102 O O 0.0000 102 O 0.532795486 13.330897489 5.379851857 CORE 103 O O 0.0000 103 O -9.128831866 6.126293610 8.838069199 CORE 104 O O 0.0000 104 O -2.081668383 6.129538657 5.479276433 CORE 105 O O 0.0000 105 O -11.711791234 13.358484132 9.190989980 CORE 106 O O 0.0000 106 O -9.216632289 17.838867443 5.368272532 CORE 107 O O 0.0000 107 O 0.517216629 10.738768274 9.163712554 CORE 108 O O 0.0000 108 O2 12.597658983 5.555991536 4.809400347 CORE 109 O2 O2 0.0000 109 O2 13.334080399 7.628834175 3.002627810 CORE 110 O2 O2 0.0000 110 H 13.296865267 6.713643134 3.348706508 CORE 111 H H 0.0000 111 H 13.465543074 8.190502540 3.796196484 CORE 112 H H 0.0000 112 C 13.872671962 5.849506943 5.456000784 CORE 113 C C 0.0000 113 C 13.152607460 4.586718405 5.744322904 CORE 114 C C 0.0000 114 H 13.490008685 3.656890636 5.260628281 CORE 115 H H 0.0000 115 H 12.618003755 4.501868050 6.715003565 CORE 116 H H 0.0000 116 H 14.716013850 5.837689162 4.739525473 CORE 117 H H 0.0000 117 H 13.868044992 6.676303621 6.199338471 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.341020445 4.783514359 3.554008712 CORE 1 Si Si 0.0000 1 Si -2.611581803 12.014002067 7.346840600 CORE 2 Si Si 0.0000 2 Si 1.084063826 4.757917383 3.494332605 CORE 3 Si Si 0.0000 3 Si -8.612190649 12.038196345 7.286381786 CORE 4 Si Si 0.0000 4 Si -13.665884920 7.702520601 11.077702729 CORE 5 Si Si 0.0000 5 Si -4.001068744 14.882270584 7.324755784 CORE 6 Si Si 0.0000 6 Si -7.179255071 9.221172954 7.205270139 CORE 7 Si Si 0.0000 7 Si 2.437349053 16.322864952 3.548979885 CORE 8 Si Si 0.0000 8 Si -13.612760309 16.323631528 3.484146997 CORE 9 Si Si 0.0000 9 Si -3.961697836 9.099668075 7.350517700 CORE 10 Si Si 0.0000 10 Si -7.221924881 14.950139364 7.294067281 CORE 11 Si Si 0.0000 11 Si 2.374069473 7.698570241 3.481314602 CORE 12 Si Si 0.0000 12 Si -10.203706029 4.629520095 5.848144224 CORE 13 Si Si 0.0000 13 Si -0.344096792 12.053306742 9.584203300 CORE 14 Si Si 0.0000 14 Si -10.832752033 12.031571330 9.561270279 CORE 15 Si Si 0.0000 15 Si -1.226369657 4.765894068 5.735059748 CORE 16 Si Si 0.0000 16 Si -9.999523739 4.749767576 8.899591501 CORE 17 Si Si 0.0000 17 Si -0.321742887 11.978937201 5.089516791 CORE 18 Si Si 0.0000 18 Si -10.957331506 12.022534873 5.055466127 CORE 19 Si Si 0.0000 19 Si -1.202625525 4.728828579 8.870303412 CORE 20 Si Si 0.0000 20 Ti -9.087515333 7.696351957 5.001936499 CORE 21 Ti Ti 0.0000 21 Si 0.696075194 14.924578137 8.916445899 CORE 22 Si Si 0.0000 22 Si -2.251092879 16.296107589 5.108357737 CORE 23 Si Si 0.0000 23 Si -11.944396971 9.164255052 8.782072931 CORE 24 Si Si 0.0000 24 Si 0.714258610 9.099130838 5.731019631 CORE 25 Si Si 0.0000 25 Si -8.979084933 16.335850183 9.558319287 CORE 26 Si Si 0.0000 26 Si -11.819210332 14.920542586 5.745113446 CORE 27 Si Si 0.0000 27 Si -2.251765669 7.676276403 9.524204038 CORE 28 Si Si 0.0000 28 Si -12.095004328 9.206991155 5.729926094 CORE 29 Si Si 0.0000 29 Si -2.202654319 16.275352380 9.547651383 CORE 30 Si Si 0.0000 30 Si 0.624458677 14.909555814 5.775170321 CORE 31 Si Si 0.0000 31 Si -9.114808739 7.714704373 9.209251865 CORE 32 Si Si 0.0000 32 Si -2.167990823 7.718159874 5.090866768 CORE 33 Si Si 0.0000 33 Si -11.855351040 14.949238731 8.861712658 CORE 34 Si Si 0.0000 34 Si -8.952509734 16.255657375 5.082042396 CORE 35 Si Si 0.0000 35 Si 0.573567398 9.138726402 8.855094303 CORE 36 Si Si 0.0000 36 O -15.271283904 7.809737877 3.329135573 CORE 37 O O 0.0000 37 O -5.609078253 14.993883779 7.398321756 CORE 38 O O 0.0000 38 O -15.210153556 16.082116002 3.620127447 CORE 39 O O 0.0000 39 O -5.569793175 9.048056816 7.273852015 CORE 40 O O 0.0000 40 O -10.604335451 4.425940276 7.418856906 CORE 41 O O 0.0000 41 O -0.800678428 11.952463952 3.534637466 CORE 42 O O 0.0000 42 O -10.413067031 12.080940521 3.522841867 CORE 43 O O 0.0000 43 O -0.784206431 4.690215813 7.297972598 CORE 44 O O 0.0000 44 O -13.229929989 6.136890895 3.503965091 CORE 45 O O 0.0000 45 O -3.580267751 13.309182114 7.249315393 CORE 46 O O 0.0000 46 O -7.549394950 10.812368645 7.243557034 CORE 47 O O 0.0000 47 O 2.118600235 17.924696847 3.534282209 CORE 48 O O 0.0000 48 O -3.484895363 10.653552650 7.432527455 CORE 49 O O 0.0000 49 O -13.327450070 17.923388709 3.345255342 CORE 50 O O 0.0000 50 O 1.928660844 6.135133883 3.488929731 CORE 51 O O 0.0000 51 O -7.771176199 13.423040117 7.219801673 CORE 52 O O 0.0000 52 O -11.604427753 4.615517904 5.003123757 CORE 53 O O 0.0000 53 O -1.698736452 12.168222643 8.689063292 CORE 54 O O 0.0000 54 O 0.111034959 4.731023224 4.808868146 CORE 55 O O 0.0000 55 O -9.459861601 11.989737157 8.681509098 CORE 56 O O 0.0000 56 O -1.651522231 11.931909829 6.029097855 CORE 57 O O 0.0000 57 O -11.215994956 4.856559618 9.974531201 CORE 58 O O 0.0000 58 O -9.648301456 11.934865139 6.027866703 CORE 59 O O 0.0000 59 O 0.169290939 4.645307408 9.748037726 CORE 60 O O 0.0000 60 O -10.613910583 8.536738853 5.516473138 CORE 61 O O 0.0000 61 O -0.748352659 15.634353497 9.194358000 CORE 62 O O 0.0000 62 O -10.513245941 8.391629403 8.697926917 CORE 63 O O 0.0000 63 O -0.839007628 15.601426769 5.539709459 CORE 64 O O 0.0000 64 O -0.722805697 8.412033901 5.371094353 CORE 65 O O 0.0000 65 O -10.443657031 15.711599355 9.190102751 CORE 66 O O 0.0000 66 O -10.284053034 15.425000285 5.518099105 CORE 67 O O 0.0000 67 O -0.912799742 8.503859838 9.085040161 CORE 68 O O 0.0000 68 O -12.577234153 9.154931021 7.287234479 CORE 69 O O 0.0000 69 O -2.512158820 16.044948025 3.521260023 CORE 70 O O 0.0000 70 O -9.019232744 7.866023116 3.215962930 CORE 71 O O 0.0000 71 O 1.044424264 15.037833748 7.336283837 CORE 72 O O 0.0000 72 O -2.521284399 7.850774483 3.509879626 CORE 73 O O 0.0000 73 O -12.234238150 15.149953189 7.296221797 CORE 74 O O 0.0000 74 O 1.024833879 8.902237728 7.312940178 CORE 75 O O 0.0000 75 O -8.634231638 16.014167219 3.506596884 CORE 76 O O 0.0000 76 O -13.218448877 8.422097841 4.859818395 CORE 77 O O 0.0000 77 O -3.360533931 15.557848124 8.666202236 CORE 78 O O 0.0000 78 O 1.735367896 15.651118706 4.859617717 CORE 79 O O 0.0000 79 O -7.894007304 8.447070803 8.441998761 CORE 80 O O 0.0000 80 O -3.321459774 8.427433313 5.996248751 CORE 81 O O 0.0000 81 O -13.051621434 15.582399455 9.752371481 CORE 82 O O 0.0000 82 O -7.662702499 15.744319376 5.933235282 CORE 83 O O 0.0000 83 O 1.649345093 8.435452810 9.834133013 CORE 84 O O 0.0000 84 O -7.689272887 8.556950338 5.797072108 CORE 85 O O 0.0000 85 O 1.852239153 15.661564780 9.781940810 CORE 86 O O 0.0000 86 O -3.467461138 15.661950086 5.985493516 CORE 87 O O 0.0000 87 O -12.949442822 8.423000925 9.811985590 CORE 88 O O 0.0000 88 O 1.906924690 8.403646108 4.878406478 CORE 89 O O 0.0000 89 O -7.831775205 15.681849348 8.615114449 CORE 90 O O 0.0000 90 O -12.851982784 15.724794032 4.791552066 CORE 91 O O 0.0000 91 O -3.497180898 8.263183826 8.669585546 CORE 92 O O 0.0000 92 O -9.399097092 6.015317258 5.603212604 CORE 93 O O 0.0000 93 O 0.607194382 13.355256816 9.353225902 CORE 94 O O 0.0000 94 O -2.188298069 17.908222384 5.377840052 CORE 95 O O 0.0000 95 O -11.727085079 10.701500835 9.285112783 CORE 96 O O 0.0000 96 O 0.634498565 10.693335750 5.386517605 CORE 97 O O 0.0000 97 O -8.988335794 17.956977506 9.339415304 CORE 98 O O 0.0000 98 O -11.862164577 13.336519382 5.384205619 CORE 99 O O 0.0000 99 O -2.027744546 6.092196694 9.201400457 CORE 100 O O 0.0000 100 O -11.962307499 10.761581332 5.247660943 CORE 101 O O 0.0000 101 O -2.181178159 17.877459308 9.212322975 CORE 102 O O 0.0000 102 O 0.535662926 13.331964757 5.380749585 CORE 103 O O 0.0000 103 O -9.131127357 6.126044668 8.832467472 CORE 104 O O 0.0000 104 O -2.078631784 6.131438520 5.480188767 CORE 105 O O 0.0000 105 O -11.707636141 13.356051212 9.187476815 CORE 106 O O 0.0000 106 O -9.218960111 17.833299029 5.368212663 CORE 107 O O 0.0000 107 O 0.518236976 10.737670304 9.168416401 CORE 108 O O 0.0000 108 O2 12.597214626 5.563720144 4.809975529 CORE 109 O2 O2 0.0000 109 O2 13.352871943 7.637425216 2.985961995 CORE 110 O2 O2 0.0000 110 H 13.270732308 6.719330902 3.343083634 CORE 111 H H 0.0000 111 H 13.459317459 8.189108923 3.788242606 CORE 112 H H 0.0000 112 C 13.877283151 5.839373380 5.462201655 CORE 113 C C 0.0000 113 C 13.155876534 4.586962302 5.747450535 CORE 114 C C 0.0000 114 H 13.482099555 3.650506779 5.253419074 CORE 115 H H 0.0000 115 H 12.618664229 4.492674616 6.719575274 CORE 116 H H 0.0000 116 H 14.727975306 5.826563288 4.757396195 CORE 117 H H 0.0000 117 H 13.862845689 6.676779740 6.195849041 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.341010631 4.782916724 3.551432680 CORE 1 Si Si 0.0000 1 Si -2.607296617 12.017134967 7.346541788 CORE 2 Si Si 0.0000 2 Si 1.082973044 4.755058219 3.492904654 CORE 3 Si Si 0.0000 3 Si -8.613661704 12.035960187 7.288855957 CORE 4 Si Si 0.0000 4 Si -13.659903326 7.701172967 11.078778618 CORE 5 Si Si 0.0000 5 Si -4.000716761 14.880772459 7.324444953 CORE 6 Si Si 0.0000 6 Si -7.177279039 9.208803088 7.209749421 CORE 7 Si Si 0.0000 7 Si 2.434173316 16.323316710 3.549998187 CORE 8 Si Si 0.0000 8 Si -13.616282449 16.320910025 3.481657612 CORE 9 Si Si 0.0000 9 Si -3.960689229 9.097277535 7.352461496 CORE 10 Si Si 0.0000 10 Si -7.223675174 14.951398780 7.292768273 CORE 11 Si Si 0.0000 11 Si 2.379904809 7.694444887 3.483118350 CORE 12 Si Si 0.0000 12 Si -10.199959113 4.630063675 5.839305551 CORE 13 Si Si 0.0000 13 Si -0.339004489 12.054662448 9.584102047 CORE 14 Si Si 0.0000 14 Si -10.827168416 12.033967637 9.565775729 CORE 15 Si Si 0.0000 15 Si -1.223297263 4.769321605 5.733557931 CORE 16 Si Si 0.0000 16 Si -10.006976003 4.748733751 8.892890000 CORE 17 Si Si 0.0000 17 Si -0.315452995 11.982239474 5.087221389 CORE 18 Si Si 0.0000 18 Si -10.962125326 12.032441260 5.055878134 CORE 19 Si Si 0.0000 19 Si -1.202676908 4.733132389 8.869427212 CORE 20 Si Si 0.0000 20 Ti -9.084999492 7.689054783 4.999494811 CORE 21 Ti Ti 0.0000 21 Si 0.695202453 14.923326937 8.915518199 CORE 22 Si Si 0.0000 22 Si -2.249108957 16.298619646 5.109169275 CORE 23 Si Si 0.0000 23 Si -11.944018431 9.169616038 8.784638921 CORE 24 Si Si 0.0000 24 Si 0.717787293 9.100406831 5.729925105 CORE 25 Si Si 0.0000 25 Si -8.976392812 16.335587835 9.561808185 CORE 26 Si Si 0.0000 26 Si -11.820135033 14.924896991 5.736082158 CORE 27 Si Si 0.0000 27 Si -2.250089468 7.676808595 9.527774181 CORE 28 Si Si 0.0000 28 Si -12.097545380 9.211416049 5.730138411 CORE 29 Si Si 0.0000 29 Si -2.202449172 16.279255315 9.544601649 CORE 30 Si Si 0.0000 30 Si 0.627631720 14.909404748 5.776271770 CORE 31 Si Si 0.0000 31 Si -9.119301767 7.701485911 9.205827933 CORE 32 Si Si 0.0000 32 Si -2.167857651 7.719040615 5.090581497 CORE 33 Si Si 0.0000 33 Si -11.857428875 14.943829167 8.850923646 CORE 34 Si Si 0.0000 34 Si -8.957368408 16.256423230 5.079552021 CORE 35 Si Si 0.0000 35 Si 0.579275720 9.138436377 8.857297277 CORE 36 Si Si 0.0000 36 O -15.266340553 7.798794638 3.333067135 CORE 37 O O 0.0000 37 O -5.610346277 14.989152861 7.401701719 CORE 38 O O 0.0000 38 O -15.214885793 16.082093515 3.611839080 CORE 39 O O 0.0000 39 O -5.564964138 9.044947412 7.278709832 CORE 40 O O 0.0000 40 O -10.618375898 4.439326525 7.412469506 CORE 41 O O 0.0000 41 O -0.796535266 11.954885629 3.533298444 CORE 42 O O 0.0000 42 O -10.411757054 12.077809928 3.524248290 CORE 43 O O 0.0000 43 O -0.778617810 4.692594677 7.297557092 CORE 44 O O 0.0000 44 O -13.221183914 6.141057909 3.500024553 CORE 45 O O 0.0000 45 O -3.582349435 13.305318964 7.246576491 CORE 46 O O 0.0000 46 O -7.550976468 10.804096313 7.254426606 CORE 47 O O 0.0000 47 O 2.115391397 17.923181714 3.535436604 CORE 48 O O 0.0000 48 O -3.480243952 10.651782808 7.430377732 CORE 49 O O 0.0000 49 O -13.325241949 17.922371749 3.328248116 CORE 50 O O 0.0000 50 O 1.926118253 6.133690391 3.488238615 CORE 51 O O 0.0000 51 O -7.773858121 13.424758931 7.212506657 CORE 52 O O 0.0000 52 O -11.605370159 4.620044421 4.997993831 CORE 53 O O 0.0000 53 O -1.693503855 12.173001706 8.687813274 CORE 54 O O 0.0000 54 O 0.109046033 4.730066517 4.805729865 CORE 55 O O 0.0000 55 O -9.456310595 11.988880201 8.686878424 CORE 56 O O 0.0000 56 O -1.647817075 11.935763898 6.027516695 CORE 57 O O 0.0000 57 O -11.217984266 4.859505991 9.966902380 CORE 58 O O 0.0000 58 O -9.653069681 11.927780438 6.032787356 CORE 59 O O 0.0000 59 O 0.168765178 4.645742301 9.745322102 CORE 60 O O 0.0000 60 O -10.613891338 8.536937920 5.518595400 CORE 61 O O 0.0000 61 O -0.751566116 15.636467851 9.195620874 CORE 62 O O 0.0000 62 O -10.510564019 8.393753848 8.698465508 CORE 63 O O 0.0000 63 O -0.838605609 15.602699446 5.537910656 CORE 64 O O 0.0000 64 O -0.722153884 8.415390374 5.367966721 CORE 65 O O 0.0000 65 O -10.443736318 15.711930318 9.188136209 CORE 66 O O 0.0000 66 O -10.285839506 15.427230966 5.506400042 CORE 67 O O 0.0000 67 O -0.907050045 8.499245967 9.088407039 CORE 68 O O 0.0000 68 O -12.581787416 9.159659489 7.295935005 CORE 69 O O 0.0000 69 O -2.513679526 16.056335814 3.519973338 CORE 70 O O 0.0000 70 O -9.018219133 7.846820807 3.222577557 CORE 71 O O 0.0000 71 O 1.040956972 15.039135543 7.337276350 CORE 72 O O 0.0000 72 O -2.518211427 7.851883409 3.510462643 CORE 73 O O 0.0000 73 O -12.232978208 15.154742919 7.286479387 CORE 74 O O 0.0000 74 O 1.026970602 8.900791786 7.313645748 CORE 75 O O 0.0000 75 O -8.631955968 16.015944845 3.509667689 CORE 76 O O 0.0000 76 O -13.218601101 8.418926454 4.857090675 CORE 77 O O 0.0000 77 O -3.357344722 15.557968343 8.664172706 CORE 78 O O 0.0000 78 O 1.740769652 15.649909885 4.863727972 CORE 79 O O 0.0000 79 O -7.893704009 8.435705212 8.445554526 CORE 80 O O 0.0000 80 O -3.320739642 8.426057715 5.999951716 CORE 81 O O 0.0000 81 O -13.055927212 15.567354213 9.750556247 CORE 82 O O 0.0000 82 O -7.669998497 15.748147643 5.933956522 CORE 83 O O 0.0000 83 O 1.660493468 8.436962754 9.831455577 CORE 84 O O 0.0000 84 O -7.690608844 8.547542990 5.801374369 CORE 85 O O 0.0000 85 O 1.847673958 15.661831309 9.784169725 CORE 86 O O 0.0000 86 O -3.467806962 15.660011880 5.982160718 CORE 87 O O 0.0000 87 O -12.953414322 8.432497356 9.815224210 CORE 88 O O 0.0000 88 O 1.912382062 8.404648221 4.879150996 CORE 89 O O 0.0000 89 O -7.830734074 15.680431802 8.614593278 CORE 90 O O 0.0000 90 O -12.857126086 15.732305121 4.793398338 CORE 91 O O 0.0000 91 O -3.492105530 8.271501997 8.673593712 CORE 92 O O 0.0000 92 O -9.388857254 6.007077936 5.595641217 CORE 93 O O 0.0000 93 O 0.609975605 13.354200648 9.348352491 CORE 94 O O 0.0000 94 O -2.190070108 17.909120566 5.383113299 CORE 95 O O 0.0000 95 O -11.724151438 10.707577802 9.288503396 CORE 96 O O 0.0000 96 O 0.637906007 10.695341272 5.386995794 CORE 97 O O 0.0000 97 O -8.999744354 17.956438395 9.333892008 CORE 98 O O 0.0000 98 O -11.865509859 13.346691865 5.377225009 CORE 99 O O 0.0000 99 O -2.027326169 6.095598428 9.198121898 CORE 100 O O 0.0000 100 O -11.964851245 10.775981802 5.250576865 CORE 101 O O 0.0000 101 O -2.185452376 17.879253223 9.207972636 CORE 102 O O 0.0000 102 O 0.540250829 13.333672327 5.382185903 CORE 103 O O 0.0000 103 O -9.134800182 6.125646244 8.823504802 CORE 104 O O 0.0000 104 O -2.073773302 6.134478300 5.481648516 CORE 105 O O 0.0000 105 O -11.700988107 13.352158511 9.181855843 CORE 106 O O 0.0000 106 O -9.222684318 17.824389421 5.368116736 CORE 107 O O 0.0000 107 O 0.519869877 10.735913723 9.175942525 CORE 108 O O 0.0000 108 O2 12.596503732 5.576085973 4.810895774 CORE 109 O2 O2 0.0000 109 O2 13.382938683 7.651170825 2.959296646 CORE 110 O2 O2 0.0000 110 H 13.228919458 6.728431505 3.334086959 CORE 111 H H 0.0000 111 H 13.449356282 8.186879251 3.775516493 CORE 112 H H 0.0000 112 C 13.884660746 5.823159535 5.472123063 CORE 113 C C 0.0000 113 C 13.161106821 4.587352653 5.752454715 CORE 114 C C 0.0000 114 H 13.469444909 3.640292494 5.241884250 CORE 115 H H 0.0000 115 H 12.619720755 4.477965094 6.726889994 CORE 116 H H 0.0000 116 H 14.747113830 5.808761659 4.785989365 CORE 117 H H 0.0000 117 H 13.854527035 6.677541703 6.190265876 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.341019098 4.783440844 3.553691719 CORE 1 Si Si 0.0000 1 Si -2.611054502 12.014387518 7.346803857 CORE 2 Si Si 0.0000 2 Si 1.083929692 4.757565519 3.494156878 CORE 3 Si Si 0.0000 3 Si -8.612371741 12.037921168 7.286686227 CORE 4 Si Si 0.0000 4 Si -13.665148816 7.702354832 11.077835095 CORE 5 Si Si 0.0000 5 Si -4.001025444 14.882086363 7.324717520 CORE 6 Si Si 0.0000 6 Si -7.179012012 9.219650902 7.205821358 CORE 7 Si Si 0.0000 7 Si 2.436958389 16.322920449 3.549105176 CORE 8 Si Si 0.0000 8 Si -13.613193697 16.323296673 3.483840655 CORE 9 Si Si 0.0000 9 Si -3.961573709 9.099373870 7.350756871 CORE 10 Si Si 0.0000 10 Si -7.222140228 14.950294323 7.293907454 CORE 11 Si Si 0.0000 11 Si 2.374787487 7.698062698 3.481536505 CORE 12 Si Si 0.0000 12 Si -10.203244930 4.629586980 5.847056620 CORE 13 Si Si 0.0000 13 Si -0.343470189 12.053473664 9.584190824 CORE 14 Si Si 0.0000 14 Si -10.832065002 12.031866256 9.561824617 CORE 15 Si Si 0.0000 15 Si -1.225991694 4.766315843 5.734874969 CORE 16 Si Si 0.0000 16 Si -10.000440742 4.749640438 8.898766879 CORE 17 Si Si 0.0000 17 Si -0.320968871 11.979343552 5.089234335 CORE 18 Si Si 0.0000 18 Si -10.957921352 12.023753784 5.055516791 CORE 19 Si Si 0.0000 19 Si -1.202631876 4.729358177 8.870195617 CORE 20 Si Si 0.0000 20 Ti -9.087205688 7.695454063 5.001636090 CORE 21 Ti Ti 0.0000 21 Si 0.695967809 14.924424187 8.916331715 CORE 22 Si Si 0.0000 22 Si -2.250848666 16.296416641 5.108457620 CORE 23 Si Si 0.0000 23 Si -11.944350399 9.164914671 8.782388630 CORE 24 Si Si 0.0000 24 Si 0.714692767 9.099287814 5.730884908 CORE 25 Si Si 0.0000 25 Si -8.978753734 16.335817894 9.558748563 CORE 26 Si Si 0.0000 26 Si -11.819324067 14.921078382 5.744002184 CORE 27 Si Si 0.0000 27 Si -2.251559367 7.676341990 9.524643355 CORE 28 Si Si 0.0000 28 Si -12.095316860 9.207535600 5.729952187 CORE 29 Si Si 0.0000 29 Si -2.202629109 16.275832679 9.547276119 CORE 30 Si Si 0.0000 30 Si 0.624849149 14.909537219 5.775305882 CORE 31 Si Si 0.0000 31 Si -9.115361636 7.713077813 9.208830578 CORE 32 Si Si 0.0000 32 Si -2.167974466 7.718268273 5.090831698 CORE 33 Si Si 0.0000 33 Si -11.855606608 14.948573059 8.860385122 CORE 34 Si Si 0.0000 34 Si -8.953107470 16.255751648 5.081735977 CORE 35 Si Si 0.0000 35 Si 0.574269632 9.138690797 8.855365424 CORE 36 Si Si 0.0000 36 O -15.270675583 7.808391396 3.329619392 CORE 37 O O 0.0000 37 O -5.609234326 14.993301712 7.398737643 CORE 38 O O 0.0000 38 O -15.210735896 16.082113263 3.619107547 CORE 39 O O 0.0000 39 O -5.569198903 9.047674104 7.274449790 CORE 40 O O 0.0000 40 O -10.606063036 4.427587448 7.418071004 CORE 41 O O 0.0000 41 O -0.800168640 11.952761905 3.534472694 CORE 42 O O 0.0000 42 O -10.412905762 12.080555359 3.523014932 CORE 43 O O 0.0000 43 O -0.783518823 4.690508432 7.297921478 CORE 44 O O 0.0000 44 O -13.228853834 6.137403628 3.503480207 CORE 45 O O 0.0000 45 O -3.580523896 13.308706860 7.248978393 CORE 46 O O 0.0000 46 O -7.549589512 10.811350820 7.244894459 CORE 47 O O 0.0000 47 O 2.118205337 17.924510465 3.534424236 CORE 48 O O 0.0000 48 O -3.484323030 10.653334843 7.432262952 CORE 49 O O 0.0000 49 O -13.327178530 17.923263589 3.343162673 CORE 50 O O 0.0000 50 O 1.928348120 6.134956293 3.488844682 CORE 51 O O 0.0000 51 O -7.771506243 13.423251582 7.218904022 CORE 52 O O 0.0000 52 O -11.604543797 4.616074890 5.002492510 CORE 53 O O 0.0000 53 O -1.698092529 12.168810764 8.688909474 CORE 54 O O 0.0000 54 O 0.110790360 4.730905455 4.808482004 CORE 55 O O 0.0000 55 O -9.459424557 11.989631641 8.682169784 CORE 56 O O 0.0000 56 O -1.651066327 11.932384074 6.028903339 CORE 57 O O 0.0000 57 O -11.216239747 4.856922148 9.973592471 CORE 58 O O 0.0000 58 O -9.648888222 11.933993336 6.028472238 CORE 59 O O 0.0000 59 O 0.169226277 4.645360887 9.747703541 CORE 60 O O 0.0000 60 O -10.613908273 8.536763358 5.516734218 CORE 61 O O 0.0000 61 O -0.748748135 15.634613683 9.194513339 CORE 62 O O 0.0000 62 O -10.512915896 8.391890742 8.697993176 CORE 63 O O 0.0000 63 O -0.838958169 15.601583457 5.539488165 CORE 64 O O 0.0000 64 O -0.722725447 8.412446884 5.370709504 CORE 65 O O 0.0000 65 O -10.443666845 15.711640005 9.189860765 CORE 66 O O 0.0000 66 O -10.284272807 15.425274742 5.516659591 CORE 67 O O 0.0000 67 O -0.912092312 8.503292185 9.085454450 CORE 68 O O 0.0000 68 O -12.577794362 9.155512944 7.288305043 CORE 69 O O 0.0000 69 O -2.512345877 16.046349282 3.521101717 CORE 70 O O 0.0000 70 O -9.019108039 7.863660396 3.216776902 CORE 71 O O 0.0000 71 O 1.043997612 15.037993895 7.336406008 CORE 72 O O 0.0000 72 O -2.520906243 7.850910990 3.509951362 CORE 73 O O 0.0000 73 O -12.234083039 15.150542608 7.295023052 CORE 74 O O 0.0000 74 O 1.025096759 8.902059850 7.313026977 CORE 75 O O 0.0000 75 O -8.633951629 16.014385891 3.506974734 CORE 76 O O 0.0000 76 O -13.218467736 8.421707634 4.859482765 CORE 77 O O 0.0000 77 O -3.360141534 15.557862827 8.665952491 CORE 78 O O 0.0000 78 O 1.736032603 15.650969945 4.860123520 CORE 79 O O 0.0000 79 O -7.893969969 8.445672285 8.442436252 CORE 80 O O 0.0000 80 O -3.321371056 8.427263940 5.996704348 CORE 81 O O 0.0000 81 O -13.052151237 15.580548170 9.752148134 CORE 82 O O 0.0000 82 O -7.663600258 15.744790449 5.933323982 CORE 83 O O 0.0000 83 O 1.650716846 8.435638616 9.833803544 CORE 84 O O 0.0000 84 O -7.689437235 8.555792834 5.797601494 CORE 85 O O 0.0000 85 O 1.851677404 15.661597501 9.782215050 CORE 86 O O 0.0000 86 O -3.467503668 15.661711522 5.985083411 CORE 87 O O 0.0000 87 O -12.949931442 8.424169384 9.812384132 CORE 88 O O 0.0000 88 O 1.907596133 8.403769354 4.878498068 CORE 89 O O 0.0000 89 O -7.831647036 15.681674929 8.615050320 CORE 90 O O 0.0000 90 O -12.852615546 15.725718306 4.791779218 CORE 91 O O 0.0000 91 O -3.496556412 8.264207273 8.670078722 CORE 92 O O 0.0000 92 O -9.397837151 6.014303469 5.602280948 CORE 93 O O 0.0000 93 O 0.607536550 13.355126795 9.352626225 CORE 94 O O 0.0000 94 O -2.188516110 17.908332945 5.378488872 CORE 95 O O 0.0000 95 O -11.726724051 10.702248672 9.285529963 CORE 96 O O 0.0000 96 O 0.634917904 10.693582530 5.386576485 CORE 97 O O 0.0000 97 O -8.989739492 17.956911199 9.338735675 CORE 98 O O 0.0000 98 O -11.862576218 13.337771014 5.383346612 CORE 99 O O 0.0000 99 O -2.027693163 6.092615154 9.200997046 CORE 100 O O 0.0000 100 O -11.962620416 10.763353192 5.248019699 CORE 101 O O 0.0000 101 O -2.181704113 17.877679998 9.211787655 CORE 102 O O 0.0000 102 O 0.536227561 13.332174779 5.380926300 CORE 103 O O 0.0000 103 O -9.131579220 6.125995658 8.831364654 CORE 104 O O 0.0000 104 O -2.078034047 6.131812582 5.480368449 CORE 105 O O 0.0000 105 O -11.706818247 13.355572210 9.186785167 CORE 106 O O 0.0000 106 O -9.219418324 17.832202643 5.368200872 CORE 107 O O 0.0000 107 O 0.518437889 10.737454227 9.169342503 CORE 108 O O 0.0000 108 O2 12.597127063 5.565241764 4.810088724 CORE 109 O2 O2 0.0000 109 O2 13.356571710 7.639116498 2.982680850 CORE 110 O2 O2 0.0000 110 H 13.265587274 6.720450783 3.341976632 CORE 111 H H 0.0000 111 H 13.458091773 8.188834610 3.786676737 CORE 112 H H 0.0000 112 C 13.878190917 5.837378380 5.463422461 CORE 113 C C 0.0000 113 C 13.156520072 4.587010447 5.748066264 CORE 114 C C 0.0000 114 H 13.480542478 3.649249958 5.251999719 CORE 115 H H 0.0000 115 H 12.618794129 4.490864702 6.720475284 CORE 116 H H 0.0000 116 H 14.730330263 5.824372824 4.760914532 CORE 117 H H 0.0000 117 H 13.861822263 6.676873580 6.195162033 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.340945007 4.782969626 3.548331978 CORE 1 Si Si 0.0000 1 Si -2.607462698 12.014194504 7.345946219 CORE 2 Si Si 0.0000 2 Si 1.082228857 4.754648119 3.491939222 CORE 3 Si Si 0.0000 3 Si -8.611018078 12.034998435 7.288697575 CORE 4 Si Si 0.0000 4 Si -13.660457761 7.701519786 11.077819576 CORE 5 Si Si 0.0000 5 Si -3.999384460 14.880898733 7.323762129 CORE 6 Si Si 0.0000 6 Si -7.175483137 9.213070572 7.204562668 CORE 7 Si Si 0.0000 7 Si 2.434430808 16.324110674 3.549045079 CORE 8 Si Si 0.0000 8 Si -13.616665223 16.323067623 3.478674898 CORE 9 Si Si 0.0000 9 Si -3.960465415 9.098490247 7.351804157 CORE 10 Si Si 0.0000 10 Si -7.224096245 14.951182271 7.292205263 CORE 11 Si Si 0.0000 11 Si 2.376200808 7.696431815 3.481869701 CORE 12 Si Si 0.0000 12 Si -10.203650413 4.626911604 5.841279471 CORE 13 Si Si 0.0000 13 Si -0.340719564 12.053114161 9.584343957 CORE 14 Si Si 0.0000 14 Si -10.827075272 12.032285004 9.564191678 CORE 15 Si Si 0.0000 15 Si -1.224912459 4.766345970 5.735506824 CORE 16 Si Si 0.0000 16 Si -10.003610899 4.748560630 8.894421180 CORE 17 Si Si 0.0000 17 Si -0.317956520 11.980763116 5.087762186 CORE 18 Si Si 0.0000 18 Si -10.958166527 12.030948614 5.055610436 CORE 19 Si Si 0.0000 19 Si -1.203631438 4.730420111 8.869321472 CORE 20 Si Si 0.0000 20 Ti -9.087367727 7.694310109 5.007293273 CORE 21 Ti Ti 0.0000 21 Si 0.693419637 14.925813768 8.918214577 CORE 22 Si Si 0.0000 22 Si -2.251598241 16.298104463 5.107552818 CORE 23 Si Si 0.0000 23 Si -11.943451293 9.169800115 8.785928801 CORE 24 Si Si 0.0000 24 Si 0.716999228 9.101411250 5.732162616 CORE 25 Si Si 0.0000 25 Si -8.977076186 16.335982654 9.560473119 CORE 26 Si Si 0.0000 26 Si -11.819966066 14.924860954 5.737878526 CORE 27 Si Si 0.0000 27 Si -2.249663393 7.677411420 9.525718787 CORE 28 Si Si 0.0000 28 Si -12.092387645 9.211112618 5.731389646 CORE 29 Si Si 0.0000 29 Si -2.204207548 16.278982588 9.546853462 CORE 30 Si Si 0.0000 30 Si 0.625815419 14.911165508 5.774477000 CORE 31 Si Si 0.0000 31 Si -9.119168595 7.707301106 9.206399235 CORE 32 Si Si 0.0000 32 Si -2.167743531 7.719776343 5.092249075 CORE 33 Si Si 0.0000 33 Si -11.855287533 14.945458466 8.854925803 CORE 34 Si Si 0.0000 34 Si -8.953762363 16.254754868 5.078146131 CORE 35 Si Si 0.0000 35 Si 0.577699975 9.138740384 8.856384943 CORE 36 Si Si 0.0000 36 O -15.267218683 7.801524358 3.331931682 CORE 37 O O 0.0000 37 O -5.610228885 14.989399065 7.400327399 CORE 38 O O 0.0000 38 O -15.212524293 16.082999481 3.612898384 CORE 39 O O 0.0000 39 O -5.569711963 9.046472780 7.277414627 CORE 40 O O 0.0000 40 O -10.615279833 4.436647401 7.411924449 CORE 41 O O 0.0000 41 O -0.796977699 11.954689156 3.534106558 CORE 42 O O 0.0000 42 O -10.411293452 12.079653861 3.525239738 CORE 43 O O 0.0000 43 O -0.778932844 4.692917279 7.297362043 CORE 44 O O 0.0000 44 O -13.220756877 6.136906031 3.500110818 CORE 45 O O 0.0000 45 O -3.582774932 13.307296810 7.247225006 CORE 46 O O 0.0000 46 O -7.551180460 10.803205770 7.253487876 CORE 47 O O 0.0000 47 O 2.115595774 17.922184646 3.535655920 CORE 48 O O 0.0000 48 O -3.480099233 10.653804764 7.430695409 CORE 49 O O 0.0000 49 O -13.325626648 17.921354501 3.333680201 CORE 50 O O 0.0000 50 O 1.926118445 6.133543648 3.488346942 CORE 51 O O 0.0000 51 O -7.773367000 13.424299533 7.212434692 CORE 52 O O 0.0000 52 O -11.605552597 4.619295719 4.997749030 CORE 53 O O 0.0000 53 O -1.693884320 12.171965286 8.688591112 CORE 54 O O 0.0000 54 O 0.110733781 4.730188466 4.805010603 CORE 55 O O 0.0000 55 O -9.456928153 11.989303418 8.685966699 CORE 56 O O 0.0000 56 O -1.646733799 11.935906749 6.026975974 CORE 57 O O 0.0000 57 O -11.221001429 4.859630534 9.969800577 CORE 58 O O 0.0000 58 O -9.654340976 11.929904595 6.031885064 CORE 59 O O 0.0000 59 O 0.169983358 4.645704534 9.746873517 CORE 60 O O 0.0000 60 O -10.614134782 8.536144389 5.518360793 CORE 61 O O 0.0000 61 O -0.749293911 15.635037332 9.194659474 CORE 62 O O 0.0000 62 O -10.510608281 8.393206232 8.701044507 CORE 63 O O 0.0000 63 O -0.837306409 15.602029593 5.537751133 CORE 64 O O 0.0000 64 O -0.720200561 8.415649839 5.369603719 CORE 65 O O 0.0000 65 O -10.443999391 15.711069757 9.188528589 CORE 66 O O 0.0000 66 O -10.286745733 15.425698535 5.509641629 CORE 67 O O 0.0000 67 O -0.905099993 8.499886414 9.087935544 CORE 68 O O 0.0000 68 O -12.580892159 9.159311228 7.286986484 CORE 69 O O 0.0000 69 O -2.514326143 16.055613347 3.520706674 CORE 70 O O 0.0000 70 O -9.018196040 7.850986668 3.213680385 CORE 71 O O 0.0000 71 O 1.042115687 15.039646257 7.336625248 CORE 72 O O 0.0000 72 O -2.519202330 7.852474413 3.512289288 CORE 73 O O 0.0000 73 O -12.232863703 15.153719040 7.288540638 CORE 74 O O 0.0000 74 O 1.026043592 8.901271652 7.312881375 CORE 75 O O 0.0000 75 O -8.632233667 16.016638915 3.506733129 CORE 76 O O 0.0000 76 O -13.217997784 8.423006402 4.863317334 CORE 77 O O 0.0000 77 O -3.358670480 15.557468007 8.663888881 CORE 78 O O 0.0000 78 O 1.741092383 15.650865150 4.861590420 CORE 79 O O 0.0000 79 O -7.893769249 8.437180561 8.446540650 CORE 80 O O 0.0000 80 O -3.319593051 8.424996213 5.998033404 CORE 81 O O 0.0000 81 O -13.057277026 15.569312312 9.751959779 CORE 82 O O 0.0000 82 O -7.669561453 15.746753881 5.934275721 CORE 83 O O 0.0000 83 O 1.659755631 8.435382322 9.831445383 CORE 84 O O 0.0000 84 O -7.689790758 8.550031550 5.801640318 CORE 85 O O 0.0000 85 O 1.849135967 15.661441678 9.785550663 CORE 86 O O 0.0000 86 O -3.467478458 15.660464503 5.983714112 CORE 87 O O 0.0000 87 O -12.953288463 8.430527870 9.813300649 CORE 88 O O 0.0000 88 O 1.911306869 8.404489947 4.880601312 CORE 89 O O 0.0000 89 O -7.832840584 15.681081763 8.616486639 CORE 90 O O 0.0000 90 O -12.858094087 15.731429714 4.791997469 CORE 91 O O 0.0000 91 O -3.491729491 8.270093821 8.674076999 CORE 92 O O 0.0000 92 O -9.393259447 6.009461414 5.598603239 CORE 93 O O 0.0000 93 O 0.609843203 13.353890154 9.348980847 CORE 94 O O 0.0000 94 O -2.189143483 17.909762887 5.382995996 CORE 95 O O 0.0000 95 O -11.724395074 10.706600050 9.287571664 CORE 96 O O 0.0000 96 O 0.638210840 10.694707456 5.386776402 CORE 97 O O 0.0000 97 O -8.996660029 17.953766767 9.333425838 CORE 98 O O 0.0000 98 O -11.865513131 13.343437016 5.379752811 CORE 99 O O 0.0000 99 O -2.027832301 6.095115967 9.198249243 CORE 100 O O 0.0000 100 O -11.969134507 10.768766071 5.252177043 CORE 101 O O 0.0000 101 O -2.182842236 17.880246831 9.208158100 CORE 102 O O 0.0000 102 O 0.540082439 13.332223934 5.382043648 CORE 103 O O 0.0000 103 O -9.133842572 6.120970102 8.823400126 CORE 104 O O 0.0000 104 O -2.075913104 6.134231232 5.481517596 CORE 105 O O 0.0000 105 O -11.702423559 13.353993796 9.181538394 CORE 106 O O 0.0000 106 O -9.222040780 17.828782458 5.369286954 CORE 107 O O 0.0000 107 O 0.520541704 10.735611158 9.173900748 CORE 108 O O 0.0000 108 O2 12.600455025 5.575073194 4.821899461 CORE 109 O2 O2 0.0000 109 O2 13.379332060 7.635141921 2.967901473 CORE 110 O2 O2 0.0000 110 H 13.233807384 6.741844710 3.329776177 CORE 111 H H 0.0000 111 H 13.449592797 8.186315778 3.774939486 CORE 112 H H 0.0000 112 C 13.882415098 5.836383474 5.469216574 CORE 113 C C 0.0000 113 C 13.150256160 4.584149410 5.745844880 CORE 114 C C 0.0000 114 H 13.473881935 3.640211195 5.249853495 CORE 115 H H 0.0000 115 H 12.619792922 4.480686597 6.718181328 CORE 116 H H 0.0000 116 H 14.749062727 5.810159024 4.781039577 CORE 117 H H 0.0000 117 H 13.855483490 6.669374023 6.189273743 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.340951742 4.783011717 3.548810092 CORE 1 Si Si 0.0000 1 Si -2.607783119 12.014211802 7.346022748 CORE 2 Si Si 0.0000 2 Si 1.082380504 4.754908450 3.492137010 CORE 3 Si Si 0.0000 3 Si -8.611138742 12.035259054 7.288518121 CORE 4 Si Si 0.0000 4 Si -13.660876331 7.701594310 11.077820945 CORE 5 Si Si 0.0000 5 Si -3.999530911 14.881004681 7.323847330 CORE 6 Si Si 0.0000 6 Si -7.175797978 9.213657685 7.204674951 CORE 7 Si Si 0.0000 7 Si 2.434656354 16.324004437 3.549050480 CORE 8 Si Si 0.0000 8 Si -13.616355578 16.323087948 3.479135667 CORE 9 Si Si 0.0000 9 Si -3.960564332 9.098569095 7.351710740 CORE 10 Si Si 0.0000 10 Si -7.223921889 14.951103134 7.292357103 CORE 11 Si Si 0.0000 11 Si 2.376074756 7.696577403 3.481839957 CORE 12 Si Si 0.0000 12 Si -10.203614233 4.627150312 5.841794860 CORE 13 Si Si 0.0000 13 Si -0.340964932 12.053146306 9.584330264 CORE 14 Si Si 0.0000 14 Si -10.827520399 12.032247526 9.563980502 CORE 15 Si Si 0.0000 15 Si -1.225008682 4.766343375 5.735450455 CORE 16 Si Si 0.0000 16 Si -10.003328004 4.748656921 8.894808844 CORE 17 Si Si 0.0000 17 Si -0.318225174 11.980636411 5.087893487 CORE 18 Si Si 0.0000 18 Si -10.958144588 12.030306725 5.055602068 CORE 19 Si Si 0.0000 19 Si -1.203542144 4.730325406 8.869399446 CORE 20 Si Si 0.0000 20 Ti -9.087353294 7.694412165 5.006788610 CORE 21 Ti Ti 0.0000 21 Si 0.693646915 14.925689801 8.918046610 CORE 22 Si Si 0.0000 22 Si -2.251531463 16.297953829 5.107633530 CORE 23 Si Si 0.0000 23 Si -11.943531543 9.169364213 8.785612949 CORE 24 Si Si 0.0000 24 Si 0.716793504 9.101221840 5.732048660 CORE 25 Si Si 0.0000 25 Si -8.977225909 16.335967951 9.560319301 CORE 26 Si Si 0.0000 26 Si -11.819908717 14.924523505 5.738424801 CORE 27 Si Si 0.0000 27 Si -2.249832360 7.677315994 9.525622860 CORE 28 Si Si 0.0000 28 Si -12.092648986 9.210793476 5.731261465 CORE 29 Si Si 0.0000 29 Si -2.204066677 16.278701645 9.546891193 CORE 30 Si Si 0.0000 30 Si 0.625729203 14.911020208 5.774550942 CORE 31 Si Si 0.0000 31 Si -9.118828928 7.707816433 9.206616117 CORE 32 Si Si 0.0000 32 Si -2.167764122 7.719641710 5.092122643 CORE 33 Si Si 0.0000 33 Si -11.855316015 14.945736382 8.855412817 CORE 34 Si Si 0.0000 34 Si -8.953704052 16.254843807 5.078466395 CORE 35 Si Si 0.0000 35 Si 0.577393986 9.138736060 8.856294037 CORE 36 Si Si 0.0000 36 O -15.267526980 7.802136984 3.331725450 CORE 37 O O 0.0000 37 O -5.610140167 14.989747181 7.400185524 CORE 38 O O 0.0000 38 O -15.212364756 16.082920489 3.613452266 CORE 39 O O 0.0000 39 O -5.569666161 9.046579882 7.277150124 CORE 40 O O 0.0000 40 O -10.614457513 4.435839167 7.412472777 CORE 41 O O 0.0000 41 O -0.797262326 11.954517188 3.534139193 CORE 42 O O 0.0000 42 O -10.411437402 12.079734295 3.525041266 CORE 43 O O 0.0000 43 O -0.779341983 4.692702500 7.297411947 CORE 44 O O 0.0000 44 O -13.221479125 6.136950428 3.500411456 CORE 45 O O 0.0000 45 O -3.582574211 13.307422651 7.247381410 CORE 46 O O 0.0000 46 O -7.551038628 10.803932417 7.252721296 CORE 47 O O 0.0000 47 O 2.115828633 17.922392074 3.535545996 CORE 48 O O 0.0000 48 O -3.480476042 10.653762817 7.430835230 CORE 49 O O 0.0000 49 O -13.325765017 17.921524739 3.334526124 CORE 50 O O 0.0000 50 O 1.926317241 6.133669633 3.488391292 CORE 51 O O 0.0000 51 O -7.773201112 13.424205982 7.213011776 CORE 52 O O 0.0000 52 O -11.605462725 4.619008434 4.998172220 CORE 53 O O 0.0000 53 O -1.694259782 12.171683910 8.688619487 CORE 54 O O 0.0000 54 O 0.110738977 4.730252468 4.805320292 CORE 55 O O 0.0000 55 O -9.457151005 11.989332680 8.685628025 CORE 56 O O 0.0000 56 O -1.647120230 11.935592507 6.027147898 CORE 57 O O 0.0000 57 O -11.220576509 4.859388943 9.970138794 CORE 58 O O 0.0000 58 O -9.653854474 11.930269287 6.031580623 CORE 59 O O 0.0000 59 O 0.169915810 4.645673831 9.746947536 CORE 60 O O 0.0000 60 O -10.614114575 8.536199597 5.518215723 CORE 61 O O 0.0000 61 O -0.749245222 15.634999566 9.194646389 CORE 62 O O 0.0000 62 O -10.510814005 8.393088896 8.700772321 CORE 63 O O 0.0000 63 O -0.837453822 15.601989809 5.537906092 CORE 64 O O 0.0000 64 O -0.720425914 8.415363995 5.369702384 CORE 65 O O 0.0000 65 O -10.443969755 15.711120642 9.188647414 CORE 66 O O 0.0000 66 O -10.286525190 15.425660624 5.510267703 CORE 67 O O 0.0000 67 O -0.905723710 8.500190277 9.087714250 CORE 68 O O 0.0000 68 O -12.580615807 9.158972338 7.287104168 CORE 69 O O 0.0000 69 O -2.514149478 16.054786806 3.520741895 CORE 70 O O 0.0000 70 O -9.018277252 7.852117360 3.213956603 CORE 71 O O 0.0000 71 O 1.042283499 15.039498939 7.336605698 CORE 72 O O 0.0000 72 O -2.519354362 7.852334878 3.512080698 CORE 73 O O 0.0000 73 O -12.232972435 15.153435646 7.289118939 CORE 74 O O 0.0000 74 O 1.025959108 8.901341996 7.312894383 CORE 75 O O 0.0000 75 O -8.632386854 16.016437973 3.506754657 CORE 76 O O 0.0000 76 O -13.218039737 8.422890508 4.862975238 CORE 77 O O 0.0000 77 O -3.358801728 15.557503179 8.664072976 CORE 78 O O 0.0000 78 O 1.740640906 15.650874520 4.861459576 CORE 79 O O 0.0000 79 O -7.893787146 8.437938056 8.446174515 CORE 80 O O 0.0000 80 O -3.319751627 8.425198452 5.997914808 CORE 81 O O 0.0000 81 O -13.056819775 15.570314568 9.751976591 CORE 82 O O 0.0000 82 O -7.669029726 15.746578598 5.934190825 CORE 83 O O 0.0000 83 O 1.658949284 8.435405098 9.831655799 CORE 84 O O 0.0000 84 O -7.689759197 8.550545436 5.801280040 CORE 85 O O 0.0000 85 O 1.849362668 15.661455516 9.785253068 CORE 86 O O 0.0000 86 O -3.467480767 15.660575785 5.983836284 CORE 87 O O 0.0000 87 O -12.952989017 8.429960650 9.813218872 CORE 88 O O 0.0000 88 O 1.910975862 8.404425657 4.880413718 CORE 89 O O 0.0000 89 O -7.832734161 15.681134665 8.616358533 CORE 90 O O 0.0000 90 O -12.857605468 15.730920153 4.791977994 CORE 91 O O 0.0000 91 O -3.492160185 8.269568692 8.673720296 CORE 92 O O 0.0000 92 O -9.393667817 6.009893424 5.598931339 CORE 93 O O 0.0000 93 O 0.609637286 13.354000427 9.349306055 CORE 94 O O 0.0000 94 O -2.189087481 17.909635317 5.382593878 CORE 95 O O 0.0000 95 O -11.724602915 10.706211861 9.287389547 CORE 96 O O 0.0000 96 O 0.637917168 10.694607130 5.386758601 CORE 97 O O 0.0000 97 O -8.996042663 17.954047278 9.333899539 CORE 98 O O 0.0000 98 O -11.865251212 13.342931491 5.380073379 CORE 99 O O 0.0000 99 O -2.027819984 6.094892827 9.198494424 CORE 100 O O 0.0000 100 O -11.968553321 10.768283177 5.251806191 CORE 101 O O 0.0000 101 O -2.182740817 17.880017781 9.208481863 CORE 102 O O 0.0000 102 O 0.539738539 13.332219609 5.381943918 CORE 103 O O 0.0000 103 O -9.133640697 6.121418401 8.824110640 CORE 104 O O 0.0000 104 O -2.076102278 6.134015443 5.481415050 CORE 105 O O 0.0000 105 O -11.702815571 13.354134628 9.182006466 CORE 106 O O 0.0000 106 O -9.221806767 17.829087618 5.369190114 CORE 107 O O 0.0000 107 O 0.520354070 10.735775486 9.173494142 CORE 108 O O 0.0000 108 O2 12.600158081 5.574196057 4.820845785 CORE 109 O2 O2 0.0000 109 O2 13.377301758 7.635496524 2.969219956 CORE 110 O2 O2 0.0000 110 H 13.236642492 6.739936198 3.330864542 CORE 111 H H 0.0000 111 H 13.450350840 8.186540504 3.775986543 CORE 112 H H 0.0000 112 C 13.882038290 5.836472125 5.468699663 CORE 113 C C 0.0000 113 C 13.150815022 4.584404551 5.746043048 CORE 114 C C 0.0000 114 H 13.474476015 3.641017555 5.250044969 CORE 115 H H 0.0000 115 H 12.619703820 4.481594582 6.718385962 CORE 116 H H 0.0000 116 H 14.747391721 5.811426945 4.779244198 CORE 117 H H 0.0000 117 H 13.856048895 6.670043155 6.189799021 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.341557176 4.779212568 3.542720819 CORE 1 Si Si 0.0000 1 Si -2.603710008 12.014272200 7.344167500 CORE 2 Si Si 0.0000 2 Si 1.082673984 4.754994073 3.490163621 CORE 3 Si Si 0.0000 3 Si -8.608454125 12.031288946 7.289215703 CORE 4 Si Si 0.0000 4 Si -13.658698424 7.701885776 11.081336316 CORE 5 Si Si 0.0000 5 Si -4.000057635 14.879518377 7.322121633 CORE 6 Si Si 0.0000 6 Si -7.177579639 9.209072788 7.209169370 CORE 7 Si Si 0.0000 7 Si 2.435746559 16.323689331 3.548830859 CORE 8 Si Si 0.0000 8 Si -13.618334689 16.323388784 3.471562378 CORE 9 Si Si 0.0000 9 Si -3.958160109 9.100033777 7.352249103 CORE 10 Si Si 0.0000 10 Si -7.224994389 14.951880377 7.292168672 CORE 11 Si Si 0.0000 11 Si 2.376664987 7.696096095 3.482977312 CORE 12 Si Si 0.0000 12 Si -10.210404099 4.624255255 5.839700061 CORE 13 Si Si 0.0000 13 Si -0.338141948 12.051873196 9.584318625 CORE 14 Si Si 0.0000 14 Si -10.824921998 12.033419733 9.564518561 CORE 15 Si Si 0.0000 15 Si -1.223618070 4.766580210 5.736627672 CORE 16 Si Si 0.0000 16 Si -10.008802119 4.746774500 8.889572873 CORE 17 Si Si 0.0000 17 Si -0.314527332 11.980424658 5.087701176 CORE 18 Si Si 0.0000 18 Si -10.961068222 12.030281788 5.057791425 CORE 19 Si Si 0.0000 19 Si -1.202367456 4.731438657 8.867421113 CORE 20 Si Si 0.0000 20 Ti -9.090614477 7.693181002 5.009658129 CORE 21 Ti Ti 0.0000 21 Si 0.692941987 14.927144393 8.919357942 CORE 22 Si Si 0.0000 22 Si -2.252118037 16.299379735 5.108088898 CORE 23 Si Si 0.0000 23 Si -11.943780568 9.172514410 8.784107101 CORE 24 Si Si 0.0000 24 Si 0.719627458 9.102529257 5.733103324 CORE 25 Si Si 0.0000 25 Si -8.981309412 16.334404817 9.557272991 CORE 26 Si Si 0.0000 26 Si -11.824265493 14.930841053 5.733721258 CORE 27 Si Si 0.0000 27 Si -2.244733514 7.679839439 9.527839527 CORE 28 Si Si 0.0000 28 Si -12.090414500 9.215133034 5.732840723 CORE 29 Si Si 0.0000 29 Si -2.205516370 16.280912866 9.546512506 CORE 30 Si Si 0.0000 30 Si 0.627495084 14.912725183 5.773257791 CORE 31 Si Si 0.0000 31 Si -9.119074104 7.704979468 9.206027547 CORE 32 Si Si 0.0000 32 Si -2.162338119 7.721798155 5.093895885 CORE 33 Si Si 0.0000 33 Si -11.855306585 14.947129999 8.854340580 CORE 34 Si Si 0.0000 34 Si -8.954362216 16.252949566 5.076326257 CORE 35 Si Si 0.0000 35 Si 0.582834039 9.136916054 8.856874848 CORE 36 Si Si 0.0000 36 O -15.265263435 7.796893190 3.333617365 CORE 37 O O 0.0000 37 O -5.610305286 14.986605200 7.400041063 CORE 38 O O 0.0000 38 O -15.214223780 16.084933219 3.608423439 CORE 39 O O 0.0000 39 O -5.567979568 9.046014968 7.278697128 CORE 40 O O 0.0000 40 O -10.620012841 4.441582288 7.407652388 CORE 41 O O 0.0000 41 O -0.794914297 11.956272327 3.534072326 CORE 42 O O 0.0000 42 O -10.408435058 12.081282871 3.527803523 CORE 43 O O 0.0000 43 O -0.775268679 4.695154735 7.298014895 CORE 44 O O 0.0000 44 O -13.215805059 6.138337703 3.497634669 CORE 45 O O 0.0000 45 O -3.583197928 13.305121338 7.246328648 CORE 46 O O 0.0000 46 O -7.554237074 10.798557449 7.259783304 CORE 47 O O 0.0000 47 O 2.112691962 17.921523586 3.536755391 CORE 48 O O 0.0000 48 O -3.477267974 10.653164173 7.429406366 CORE 49 O O 0.0000 49 O -13.323748379 17.919878288 3.329523998 CORE 50 O O 0.0000 50 O 1.923760602 6.132136337 3.487946650 CORE 51 O O 0.0000 51 O -7.775969442 13.421920524 7.206129374 CORE 52 O O 0.0000 52 O -11.605414229 4.620529189 4.993267923 CORE 53 O O 0.0000 53 O -1.692197342 12.173564457 8.687116377 CORE 54 O O 0.0000 54 O 0.108807401 4.728981520 4.803791166 CORE 55 O O 0.0000 55 O -9.451477901 11.989515459 8.686415144 CORE 56 O O 0.0000 56 O -1.644246439 11.939286285 6.027044059 CORE 57 O O 0.0000 57 O -11.222272917 4.861410754 9.964129777 CORE 58 O O 0.0000 58 O -9.656676111 11.928428381 6.037513567 CORE 59 O O 0.0000 59 O 0.168412232 4.645395626 9.744394934 CORE 60 O O 0.0000 60 O -10.612514390 8.535086635 5.519493888 CORE 61 O O 0.0000 61 O -0.752028370 15.636121609 9.195492616 CORE 62 O O 0.0000 62 O -10.514700252 8.396796511 8.704577222 CORE 63 O O 0.0000 63 O -0.837990745 15.603531609 5.534372311 CORE 64 O O 0.0000 64 O -0.718876727 8.417941206 5.369832468 CORE 65 O O 0.0000 65 O -10.443707067 15.709837153 9.188489640 CORE 66 O O 0.0000 66 O -10.286980709 15.425389339 5.504862699 CORE 67 O O 0.0000 67 O -0.900061575 8.496182691 9.091004067 CORE 68 O O 0.0000 68 O -12.579508860 9.162538256 7.286586192 CORE 69 O O 0.0000 69 O -2.517571738 16.063086382 3.520378498 CORE 70 O O 0.0000 70 O -9.017163761 7.842161819 3.212134294 CORE 71 O O 0.0000 71 O 1.040648289 15.042012293 7.337690791 CORE 72 O O 0.0000 72 O -2.518111740 7.854316761 3.513011974 CORE 73 O O 0.0000 73 O -12.231145356 15.155765789 7.288166439 CORE 74 O O 0.0000 74 O 1.026249893 8.901578975 7.314064905 CORE 75 O O 0.0000 75 O -8.629625452 16.018685520 3.503162149 CORE 76 O O 0.0000 76 O -13.216592546 8.425749527 4.868265144 CORE 77 O O 0.0000 77 O -3.357937069 15.557353266 8.662841063 CORE 78 O O 0.0000 78 O 1.744249838 15.650590117 4.862944581 CORE 79 O O 0.0000 79 O -7.889721155 8.433606570 8.444426528 CORE 80 O O 0.0000 80 O -3.320057423 8.423826457 6.000589201 CORE 81 O O 0.0000 81 O -13.060778189 15.559109270 9.750554117 CORE 82 O O 0.0000 82 O -7.671819225 15.746737448 5.936739242 CORE 83 O O 0.0000 83 O 1.666142131 8.434946276 9.828083982 CORE 84 O O 0.0000 84 O -7.687553385 8.546825280 5.803561748 CORE 85 O O 0.0000 85 O 1.846222918 15.659730937 9.787582322 CORE 86 O O 0.0000 86 O -3.466865711 15.660075737 5.983209297 CORE 87 O O 0.0000 87 O -12.954609025 8.435678834 9.811274695 CORE 88 O O 0.0000 88 O 1.913551170 8.404672005 4.882087534 CORE 89 O O 0.0000 89 O -7.833501827 15.679558845 8.617297568 CORE 90 O O 0.0000 90 O -12.863881696 15.736285752 4.790530950 CORE 91 O O 0.0000 91 O -3.488568380 8.275747570 8.675900525 CORE 92 O O 0.0000 92 O -9.392562217 6.008467662 5.597235690 CORE 93 O O 0.0000 93 O 0.611882357 13.353700456 9.346299607 CORE 94 O O 0.0000 94 O -2.189559165 17.910069489 5.386582114 CORE 95 O O 0.0000 95 O -11.723184206 10.707636614 9.288366846 CORE 96 O O 0.0000 96 O 0.641006690 10.696783179 5.386498130 CORE 97 O O 0.0000 97 O -8.999813635 17.949884301 9.328588180 CORE 98 O O 0.0000 98 O -11.867318078 13.343260003 5.377522299 CORE 99 O O 0.0000 99 O -2.028260685 6.095605924 9.195893592 CORE 100 O O 0.0000 100 O -11.974649806 10.771667903 5.255900167 CORE 101 O O 0.0000 101 O -2.182580318 17.881906688 9.205448257 CORE 102 O O 0.0000 102 O 0.543586681 13.332352657 5.382432910 CORE 103 O O 0.0000 103 O -9.133934369 6.114850036 8.816581321 CORE 104 O O 0.0000 104 O -2.074983207 6.133876341 5.483014163 CORE 105 O O 0.0000 105 O -11.698695310 13.353012441 9.176790882 CORE 106 O O 0.0000 106 O -9.222977413 17.828969849 5.370259308 CORE 107 O O 0.0000 107 O 0.522925720 10.734496033 9.176344642 CORE 108 O O 0.0000 108 O2 12.606392549 5.580952390 4.836664765 CORE 109 O2 O2 0.0000 109 O2 13.401972516 7.641710142 2.957709932 CORE 110 O2 O2 0.0000 110 H 13.205006551 6.747781997 3.321999471 CORE 111 H H 0.0000 111 H 13.441905557 8.184967856 3.760844149 CORE 112 H H 0.0000 112 C 13.885682632 5.831342784 5.465774612 CORE 113 C C 0.0000 113 C 13.141510277 4.578946265 5.737445524 CORE 114 C C 0.0000 114 H 13.469331943 3.637172279 5.254408620 CORE 115 H H 0.0000 115 H 12.618378447 4.473530399 6.711741819 CORE 116 H H 0.0000 116 H 14.764599438 5.798764316 4.796152607 CORE 117 H H 0.0000 117 H 13.852228272 6.665209892 6.193315305 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.341391288 4.780253024 3.544388245 CORE 1 Si Si 0.0000 1 Si -2.604825423 12.014255623 7.344675510 CORE 2 Si Si 0.0000 2 Si 1.082593734 4.754970577 3.490704038 CORE 3 Si Si 0.0000 3 Si -8.609189268 12.032376105 7.289024686 CORE 4 Si Si 0.0000 4 Si -13.659294813 7.701805918 11.080373623 CORE 5 Si Si 0.0000 5 Si -3.999913301 14.879925449 7.322594193 CORE 6 Si Si 0.0000 6 Si -7.177091790 9.210328312 7.207938599 CORE 7 Si Si 0.0000 7 Si 2.435448076 16.323775531 3.548890956 CORE 8 Si Si 0.0000 8 Si -13.617792762 16.323306475 3.473636258 CORE 9 Si Si 0.0000 9 Si -3.958818465 9.099632615 7.352101675 CORE 10 Si Si 0.0000 10 Si -7.224700717 14.951667471 7.292220325 CORE 11 Si Si 0.0000 11 Si 2.376503333 7.696227846 3.482665872 CORE 12 Si Si 0.0000 12 Si -10.208544882 4.625048066 5.840273721 CORE 13 Si Si 0.0000 13 Si -0.338915002 12.052221744 9.584321820 CORE 14 Si Si 0.0000 14 Si -10.825633469 12.033098716 9.564371209 CORE 15 Si Si 0.0000 15 Si -1.223998919 4.766515343 5.736305278 CORE 16 Si Si 0.0000 16 Si -10.007302968 4.747289971 8.891006681 CORE 17 Si Si 0.0000 17 Si -0.315539980 11.980482749 5.087753818 CORE 18 Si Si 0.0000 18 Si -10.960267648 12.030288707 5.057191900 CORE 19 Si Si 0.0000 19 Si -1.202689032 4.731133785 8.867962899 CORE 20 Si Si 0.0000 20 Ti -9.089721337 7.693518163 5.008872303 CORE 21 Ti Ti 0.0000 21 Si 0.693135010 14.926745970 8.918998881 CORE 22 Si Si 0.0000 22 Si -2.251957345 16.298989240 5.107964140 CORE 23 Si Si 0.0000 23 Si -11.943712250 9.171651832 8.784519488 CORE 24 Si Si 0.0000 24 Si 0.718851517 9.102171339 5.732814554 CORE 25 Si Si 0.0000 25 Si -8.980191111 16.334832935 9.558107198 CORE 26 Si Si 0.0000 26 Si -11.823072523 14.929110996 5.735009236 CORE 27 Si Si 0.0000 27 Si -2.246129707 7.679148396 9.527232471 CORE 28 Si Si 0.0000 28 Si -12.091026477 9.213944682 5.732408253 CORE 29 Si Si 0.0000 29 Si -2.205119355 16.280307447 9.546616192 CORE 30 Si Si 0.0000 30 Si 0.627011468 14.912258290 5.773611907 CORE 31 Si Si 0.0000 31 Si -9.119006940 7.705756278 9.206188743 CORE 32 Si Si 0.0000 32 Si -2.163823991 7.721207583 5.093410317 CORE 33 Si Si 0.0000 33 Si -11.855309087 14.946748441 8.854634218 CORE 34 Si Si 0.0000 34 Si -8.954182087 16.253468208 5.076912317 CORE 35 Si Si 0.0000 35 Si 0.581344317 9.137414372 8.856715781 CORE 36 Si Si 0.0000 36 O -15.265883303 7.798329186 3.333099238 CORE 37 O O 0.0000 37 O -5.610260061 14.987465615 7.400080621 CORE 38 O O 0.0000 38 O -15.213714762 16.084382143 3.609800574 CORE 39 O O 0.0000 39 O -5.568441438 9.046169638 7.278273482 CORE 40 O O 0.0000 40 O -10.618491558 4.440009640 7.408972392 CORE 41 O O 0.0000 41 O -0.795557258 11.955791740 3.534090583 CORE 42 O O 0.0000 42 O -10.409257185 12.080858789 3.527047137 CORE 43 O O 0.0000 43 O -0.776384094 4.694483153 7.297849818 CORE 44 O O 0.0000 44 O -13.217358865 6.137957730 3.498395011 CORE 45 O O 0.0000 45 O -3.583027036 13.305751550 7.246616961 CORE 46 O O 0.0000 46 O -7.553361254 10.800029338 7.257849397 CORE 47 O O 0.0000 47 O 2.113550847 17.921761429 3.536424249 CORE 48 O O 0.0000 48 O -3.478146488 10.653328068 7.429797682 CORE 49 O O 0.0000 49 O -13.324300698 17.920329181 3.330893753 CORE 50 O O 0.0000 50 O 1.924460719 6.132556239 3.488068366 CORE 51 O O 0.0000 51 O -7.775211398 13.422546412 7.208014062 CORE 52 O O 0.0000 52 O -11.605427507 4.620112747 4.994610901 CORE 53 O O 0.0000 53 O -1.692761978 12.173049563 8.687528004 CORE 54 O O 0.0000 54 O 0.109336434 4.729329636 4.804209867 CORE 55 O O 0.0000 55 O -9.453031514 11.989465439 8.686199555 CORE 56 O O 0.0000 56 O -1.645033349 11.938274802 6.027072434 CORE 57 O O 0.0000 57 O -11.221808353 4.860857084 9.965775295 CORE 58 O O 0.0000 58 O -9.655903442 11.928932609 6.035888894 CORE 59 O O 0.0000 59 O 0.168823874 4.645471880 9.745093961 CORE 60 O O 0.0000 60 O -10.612952588 8.535391363 5.519143880 CORE 61 O O 0.0000 61 O -0.751266286 15.635814287 9.195260900 CORE 62 O O 0.0000 62 O -10.513636028 8.395781137 8.703535262 CORE 63 O O 0.0000 63 O -0.837843717 15.603109402 5.535340025 CORE 64 O O 0.0000 64 O -0.719301070 8.417235461 5.369796866 CORE 65 O O 0.0000 65 O -10.443779041 15.710188584 9.188532849 CORE 66 O O 0.0000 66 O -10.286856004 15.425463575 5.506342759 CORE 67 O O 0.0000 67 O -0.901612109 8.497280085 9.090103221 CORE 68 O O 0.0000 68 O -12.579811962 9.161561802 7.286727991 CORE 69 O O 0.0000 69 O -2.516634528 16.060813609 3.520478001 CORE 70 O O 0.0000 70 O -9.017468788 7.844888079 3.212633327 CORE 71 O O 0.0000 71 O 1.041096110 15.041323989 7.337393653 CORE 72 O O 0.0000 72 O -2.518451984 7.853774046 3.512756904 CORE 73 O O 0.0000 73 O -12.231645715 15.155127648 7.288427291 CORE 74 O O 0.0000 74 O 1.026170221 8.901513964 7.313744413 CORE 75 O O 0.0000 75 O -8.630381571 16.018070010 3.504145915 CORE 76 O O 0.0000 76 O -13.216988792 8.424966663 4.866816578 CORE 77 O O 0.0000 77 O -3.358173778 15.557394348 8.663178367 CORE 78 O O 0.0000 78 O 1.743261630 15.650667957 4.862537899 CORE 79 O O 0.0000 79 O -7.890834645 8.434792759 8.444905174 CORE 80 O O 0.0000 80 O -3.319973709 8.424202105 5.999856854 CORE 81 O O 0.0000 81 O -13.059694142 15.562177735 9.750943607 CORE 82 O O 0.0000 82 O -7.671055408 15.746693916 5.936041356 CORE 83 O O 0.0000 83 O 1.664172450 8.435071973 9.829062118 CORE 84 O O 0.0000 84 O -7.688157472 8.547844113 5.802936892 CORE 85 O O 0.0000 85 O 1.847082765 15.660203164 9.786944457 CORE 86 O O 0.0000 86 O -3.467034293 15.660212677 5.983380992 CORE 87 O O 0.0000 87 O -12.954165437 8.434112960 9.811807124 CORE 88 O O 0.0000 88 O 1.912846049 8.404604544 4.881629123 CORE 89 O O 0.0000 89 O -7.833291484 15.679990423 8.617040444 CORE 90 O O 0.0000 90 O -12.862163157 15.734816458 4.790927210 CORE 91 O O 0.0000 91 O -3.489551969 8.274055424 8.675303510 CORE 92 O O 0.0000 92 O -9.392865126 6.008858013 5.597700034 CORE 93 O O 0.0000 93 O 0.611267493 13.353782620 9.347122936 CORE 94 O O 0.0000 94 O -2.189430034 17.909950567 5.385490022 CORE 95 O O 0.0000 95 O -11.723572754 10.707246551 9.288099224 CORE 96 O O 0.0000 96 O 0.640160699 10.696187274 5.386569410 CORE 97 O O 0.0000 97 O -8.998780972 17.951024363 9.330042604 CORE 98 O O 0.0000 98 O -11.866752096 13.343170055 5.378220870 CORE 99 O O 0.0000 99 O -2.028140021 6.095410604 9.196605780 CORE 100 O O 0.0000 100 O -11.972980340 10.770741035 5.254779092 CORE 101 O O 0.0000 101 O -2.182624388 17.881389488 9.206278965 CORE 102 O O 0.0000 102 O 0.542532849 13.332316188 5.382298947 CORE 103 O O 0.0000 103 O -9.133853927 6.116648707 8.818643181 CORE 104 O O 0.0000 104 O -2.075289581 6.133914396 5.482576292 CORE 105 O O 0.0000 105 O -11.699823619 13.353319763 9.178219137 CORE 106 O O 0.0000 106 O -9.222656799 17.829002139 5.369966507 CORE 107 O O 0.0000 107 O 0.522221562 10.734846456 9.175564066 CORE 108 O O 0.0000 108 O2 12.604685364 5.579102258 4.832332911 CORE 109 O2 O2 0.0000 109 O2 13.395216713 7.640008626 2.960861831 CORE 110 O2 O2 0.0000 110 H 13.213669683 6.745633480 3.324427086 CORE 111 H H 0.0000 111 H 13.444218369 8.185398424 3.764990767 CORE 112 H H 0.0000 112 C 13.884684609 5.832747500 5.466575652 CORE 113 C C 0.0000 113 C 13.144058256 4.580440929 5.739799881 CORE 114 C C 0.0000 114 H 13.470740645 3.638225276 5.253213679 CORE 115 H H 0.0000 115 H 12.618741399 4.475738593 6.713561237 CORE 116 H H 0.0000 116 H 14.759887215 5.802231782 4.791522398 CORE 117 H H 0.0000 117 H 13.853274599 6.666533454 6.192352384 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.340822804 4.779280317 3.540107892 CORE 1 Si Si 0.0000 1 Si -2.604186503 12.014400779 7.343616813 CORE 2 Si Si 0.0000 2 Si 1.079875825 4.755785298 3.489636289 CORE 3 Si Si 0.0000 3 Si -8.607312538 12.030156524 7.288419912 CORE 4 Si Si 0.0000 4 Si -13.657302808 7.705960679 11.083549027 CORE 5 Si Si 0.0000 5 Si -4.000659028 14.878243826 7.321876909 CORE 6 Si Si 0.0000 6 Si -7.175863987 9.210134578 7.211557428 CORE 7 Si Si 0.0000 7 Si 2.435044710 16.322935872 3.548591156 CORE 8 Si Si 0.0000 8 Si -13.619022490 16.321927129 3.467451743 CORE 9 Si Si 0.0000 9 Si -3.957841226 9.101187533 7.352832120 CORE 10 Si Si 0.0000 10 Si -7.224596026 14.947996037 7.294083105 CORE 11 Si Si 0.0000 11 Si 2.377476145 7.695570678 3.483468282 CORE 12 Si Si 0.0000 12 Si -10.212260237 4.625866391 5.839729425 CORE 13 Si Si 0.0000 13 Si -0.337904277 12.052314287 9.583219915 CORE 14 Si Si 0.0000 14 Si -10.822542216 12.033478545 9.563345984 CORE 15 Si Si 0.0000 15 Si -1.223868056 4.766554119 5.737891154 CORE 16 Si Si 0.0000 16 Si -10.008937216 4.744197288 8.886141409 CORE 17 Si Si 0.0000 17 Si -0.313649202 11.981655677 5.088407887 CORE 18 Si Si 0.0000 18 Si -10.961152513 12.025763199 5.060871283 CORE 19 Si Si 0.0000 19 Si -1.202842604 4.732683946 8.865971710 CORE 20 Si Si 0.0000 20 Ti -9.089885878 7.691651166 5.006608167 CORE 21 Ti Ti 0.0000 21 Si 0.690770046 14.926960749 8.918269425 CORE 22 Si Si 0.0000 22 Si -2.252885702 16.300738324 5.108424985 CORE 23 Si Si 0.0000 23 Si -11.946468263 9.173786079 8.781278053 CORE 24 Si Si 0.0000 24 Si 0.720552544 9.103280409 5.733343028 CORE 25 Si Si 0.0000 25 Si -8.983083376 16.332429709 9.553353220 CORE 26 Si Si 0.0000 26 Si -11.827184893 14.930584471 5.733505822 CORE 27 Si Si 0.0000 27 Si -2.244350547 7.680034614 9.528419653 CORE 28 Si Si 0.0000 28 Si -12.089723813 9.216227401 5.733864198 CORE 29 Si Si 0.0000 29 Si -2.207101737 16.282213364 9.546012027 CORE 30 Si Si 0.0000 30 Si 0.626609257 14.913093048 5.773952482 CORE 31 Si Si 0.0000 31 Si -9.117665979 7.704042077 9.204315238 CORE 32 Si Si 0.0000 32 Si -2.161841994 7.721565213 5.094950322 CORE 33 Si Si 0.0000 33 Si -11.853954655 14.946633411 8.855519926 CORE 34 Si Si 0.0000 34 Si -8.952784547 16.253587274 5.075191564 CORE 35 Si Si 0.0000 35 Si 0.584246205 9.135946375 8.857858537 CORE 36 Si Si 0.0000 36 O -15.266317267 7.795414093 3.335021734 CORE 37 O O 0.0000 37 O -5.611112788 14.985912715 7.398560471 CORE 38 O O 0.0000 38 O -15.212042602 16.086875894 3.606631635 CORE 39 O O 0.0000 39 O -5.567387028 9.046835455 7.278354270 CORE 40 O O 0.0000 40 O -10.622135901 4.440283520 7.407586205 CORE 41 O O 0.0000 41 O -0.794085626 11.956694247 3.534542680 CORE 42 O O 0.0000 42 O -10.406895300 12.083486308 3.529012918 CORE 43 O O 0.0000 43 O -0.772942782 4.696277500 7.297480107 CORE 44 O O 0.0000 44 O -13.214681946 6.139666742 3.497426003 CORE 45 O O 0.0000 45 O -3.582021123 13.303607213 7.246132381 CORE 46 O O 0.0000 46 O -7.556029127 10.797271366 7.261683283 CORE 47 O O 0.0000 47 O 2.111770725 17.921044584 3.537216845 CORE 48 O O 0.0000 48 O -3.475025405 10.654624530 7.428664510 CORE 49 O O 0.0000 49 O -13.323284393 17.918188159 3.329137095 CORE 50 O O 0.0000 50 O 1.923873952 6.135009339 3.487820903 CORE 51 O O 0.0000 51 O -7.776077789 13.421671293 7.202337025 CORE 52 O O 0.0000 52 O -11.607432213 4.619004542 4.988565294 CORE 53 O O 0.0000 53 O -1.691058449 12.173031112 8.686740200 CORE 54 O O 0.0000 54 O 0.108156357 4.728014147 4.802934061 CORE 55 O O 0.0000 55 O -9.448865644 11.989986532 8.687812285 CORE 56 O O 0.0000 56 O -1.642069495 11.940941818 6.026684618 CORE 57 O O 0.0000 57 O -11.222658000 4.860924113 9.960839200 CORE 58 O O 0.0000 58 O -9.658783583 11.928603520 6.040036425 CORE 59 O O 0.0000 59 O 0.169003040 4.644837776 9.744138419 CORE 60 O O 0.0000 60 O -10.613440823 8.536587931 5.520483587 CORE 61 O O 0.0000 61 O -0.752676527 15.636021571 9.196338462 CORE 62 O O 0.0000 62 O -10.514833232 8.397019940 8.707097570 CORE 63 O O 0.0000 63 O -0.836903620 15.603856229 5.531565400 CORE 64 O O 0.0000 64 O -0.715388651 8.420249295 5.371568587 CORE 65 O O 0.0000 65 O -10.446908014 15.707789683 9.188946454 CORE 66 O O 0.0000 66 O -10.288798550 15.423953343 5.503645012 CORE 67 O O 0.0000 67 O -0.894811659 8.495465269 9.092948776 CORE 68 O O 0.0000 68 O -12.575989992 9.164191195 7.287238891 CORE 69 O O 0.0000 69 O -2.520804632 16.066150235 3.520846571 CORE 70 O O 0.0000 70 O -9.016159773 7.839150724 3.214143816 CORE 71 O O 0.0000 71 O 1.039720894 15.044205496 7.337661580 CORE 72 O O 0.0000 72 O -2.516403401 7.855711964 3.514211175 CORE 73 O O 0.0000 73 O -12.229800739 15.157155226 7.290428902 CORE 74 O O 0.0000 74 O 1.026633822 8.902454814 7.313690935 CORE 75 O O 0.0000 75 O -8.628347806 16.019819960 3.500861042 CORE 76 O O 0.0000 76 O -13.216423387 8.426359415 4.868443990 CORE 77 O O 0.0000 77 O -3.358767857 15.556928608 8.661992478 CORE 78 O O 0.0000 78 O 1.746002248 15.650795239 4.863003385 CORE 79 O O 0.0000 79 O -7.890198998 8.430345812 8.444763072 CORE 80 O O 0.0000 80 O -3.318806334 8.422459219 6.000321351 CORE 81 O O 0.0000 81 O -13.063370046 15.555362590 9.750034468 CORE 82 O O 0.0000 82 O -7.671398731 15.746421910 5.937594674 CORE 83 O O 0.0000 83 O 1.670040887 8.433472657 9.827333226 CORE 84 O O 0.0000 84 O -7.686518990 8.545596567 5.802234137 CORE 85 O O 0.0000 85 O 1.845956189 15.658704463 9.789282079 CORE 86 O O 0.0000 86 O -3.466689623 15.659989825 5.983738911 CORE 87 O O 0.0000 87 O -12.956604301 8.435960209 9.812092471 CORE 88 O O 0.0000 88 O 1.914025355 8.404245761 4.881807969 CORE 89 O O 0.0000 89 O -7.833733339 15.677436995 8.616845243 CORE 90 O O 0.0000 90 O -12.867985984 15.739471987 4.788101813 CORE 91 O O 0.0000 91 O -3.485194231 8.278427703 8.676985238 CORE 92 O O 0.0000 92 O -9.397013484 6.007653229 5.598384456 CORE 93 O O 0.0000 93 O 0.612708718 13.353919704 9.345512717 CORE 94 O O 0.0000 94 O -2.189360754 17.910034749 5.388516781 CORE 95 O O 0.0000 95 O -11.722933065 10.707241938 9.288090856 CORE 96 O O 0.0000 96 O 0.643714785 10.695899411 5.386669293 CORE 97 O O 0.0000 97 O -9.001647257 17.949850138 9.324778790 CORE 98 O O 0.0000 98 O -11.868647877 13.344503996 5.378212806 CORE 99 O O 0.0000 99 O -2.028380578 6.095868993 9.195272159 CORE 100 O O 0.0000 100 O -11.976969353 10.772292638 5.257045890 CORE 101 O O 0.0000 101 O -2.181456243 17.881837642 9.204318053 CORE 102 O O 0.0000 102 O 0.545660475 13.333098188 5.382106408 CORE 103 O O 0.0000 103 O -9.132311090 6.115726164 8.814282192 CORE 104 O O 0.0000 104 O -2.074756699 6.133672228 5.483770093 CORE 105 O O 0.0000 105 O -11.697475782 13.355515128 9.174103252 CORE 106 O O 0.0000 106 O -9.223146958 17.830211679 5.370542829 CORE 107 O O 0.0000 107 O 0.525104975 10.732834014 9.176078694 CORE 108 O O 0.0000 108 O2 12.605398375 5.583010959 4.836743119 CORE 109 O2 O2 0.0000 109 O2 13.413930894 7.634191702 2.950226637 CORE 110 O2 O2 0.0000 110 H 13.190478447 6.750858824 3.314599855 CORE 111 H H 0.0000 111 H 13.438515628 8.193415903 3.760285019 CORE 112 H H 0.0000 112 C 13.888276414 5.827232709 5.469252708 CORE 113 C C 0.0000 113 C 13.138703457 4.579020068 5.736171619 CORE 114 C C 0.0000 114 H 13.468223072 3.635299372 5.256780399 CORE 115 H H 0.0000 115 H 12.614783948 4.471052073 6.706405052 CORE 116 H H 0.0000 116 H 14.771755143 5.793491980 4.799565357 CORE 117 H H 0.0000 117 H 13.854413107 6.661098664 6.200487237 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.340920758 4.779447672 3.540844423 CORE 1 Si Si 0.0000 1 Si -2.604296390 12.014375842 7.343799006 CORE 2 Si Si 0.0000 2 Si 1.080343468 4.755645043 3.489820003 CORE 3 Si Si 0.0000 3 Si -8.607635462 12.030538370 7.288523979 CORE 4 Si Si 0.0000 4 Si -13.657645554 7.705245708 11.083002677 CORE 5 Si Si 0.0000 5 Si -4.000530666 14.878533129 7.322000298 CORE 6 Si Si 0.0000 6 Si -7.176075292 9.210167876 7.210934701 CORE 7 Si Si 0.0000 7 Si 2.435114183 16.323080452 3.548642733 CORE 8 Si Si 0.0000 8 Si -13.618810799 16.322164395 3.468515916 CORE 9 Si Si 0.0000 9 Si -3.958009424 9.100919996 7.352706449 CORE 10 Si Si 0.0000 10 Si -7.224614116 14.948627835 7.293762536 CORE 11 Si Si 0.0000 11 Si 2.377308717 7.695683834 3.483330211 CORE 12 Si Si 0.0000 12 Si -10.211620740 4.625725559 5.839823146 CORE 13 Si Si 0.0000 13 Si -0.338078248 12.052298431 9.583409563 CORE 14 Si Si 0.0000 14 Si -10.823074328 12.033413102 9.563522395 CORE 15 Si Si 0.0000 15 Si -1.223890573 4.766547488 5.737618284 CORE 16 Si Si 0.0000 16 Si -10.008656053 4.744729480 8.886978659 CORE 17 Si Si 0.0000 17 Si -0.313974628 11.981453871 5.088295300 CORE 18 Si Si 0.0000 18 Si -10.961000289 12.026542027 5.060238134 CORE 19 Si Si 0.0000 19 Si -1.202816239 4.732417273 8.866314339 CORE 20 Si Si 0.0000 20 Ti -9.089857589 7.691972326 5.006997809 CORE 21 Ti Ti 0.0000 21 Si 0.691177068 14.926923847 8.918394944 CORE 22 Si Si 0.0000 22 Si -2.252725973 16.300437345 5.108345718 CORE 23 Si Si 0.0000 23 Si -11.945994077 9.173418791 8.781835814 CORE 24 Si Si 0.0000 24 Si 0.720259834 9.103089558 5.733252121 CORE 25 Si Si 0.0000 25 Si -8.982585711 16.332843268 9.554171300 CORE 26 Si Si 0.0000 26 Si -11.826477078 14.930330916 5.733764543 CORE 27 Si Si 0.0000 27 Si -2.244656728 7.679882106 9.528215324 CORE 28 Si Si 0.0000 28 Si -12.089948012 9.215834599 5.733613692 CORE 29 Si Si 0.0000 29 Si -2.206760724 16.281885285 9.546115942 CORE 30 Si Si 0.0000 30 Si 0.626678537 14.912949333 5.773893906 CORE 31 Si Si 0.0000 31 Si -9.117896722 7.704337003 9.204637632 CORE 32 Si Si 0.0000 32 Si -2.162183200 7.721503662 5.094685286 CORE 33 Si Si 0.0000 33 Si -11.854187707 14.946653159 8.855367478 CORE 34 Si Si 0.0000 34 Si -8.953025104 16.253566805 5.075487637 CORE 35 Si Si 0.0000 35 Si 0.583747001 9.136198921 8.857661891 CORE 36 Si Si 0.0000 36 O -15.266242598 7.795915726 3.334690896 CORE 37 O O 0.0000 37 O -5.610965952 14.986179965 7.398822083 CORE 38 O O 0.0000 38 O -15.212330308 16.086446767 3.607176921 CORE 39 O O 0.0000 39 O -5.567568504 9.046720858 7.278340349 CORE 40 O O 0.0000 40 O -10.621508913 4.440236383 7.407824768 CORE 41 O O 0.0000 41 O -0.794338885 11.956539000 3.534464858 CORE 42 O O 0.0000 42 O -10.407301746 12.083034262 3.528674625 CORE 43 O O 0.0000 43 O -0.773534937 4.695968736 7.297543704 CORE 44 O O 0.0000 44 O -13.215142661 6.139372681 3.497592754 CORE 45 O O 0.0000 45 O -3.582194131 13.303976231 7.246215757 CORE 46 O O 0.0000 46 O -7.555569952 10.797745899 7.261023509 CORE 47 O O 0.0000 47 O 2.112077099 17.921167974 3.537080448 CORE 48 O O 0.0000 48 O -3.475562521 10.654401390 7.428859483 CORE 49 O O 0.0000 49 O -13.323459326 17.918556600 3.329439330 CORE 50 O O 0.0000 50 O 1.923974794 6.134587276 3.487863503 CORE 51 O O 0.0000 51 O -7.775928643 13.421821927 7.203313943 CORE 52 O O 0.0000 52 O -11.607087351 4.619195249 4.989605657 CORE 53 O O 0.0000 53 O -1.691351544 12.173034283 8.686875761 CORE 54 O O 0.0000 54 O 0.108359387 4.728240602 4.803153605 CORE 55 O O 0.0000 55 O -9.449582504 11.989896873 8.687534774 CORE 56 O O 0.0000 56 O -1.642579475 11.940482852 6.026751409 CORE 57 O O 0.0000 57 O -11.222511742 4.860912581 9.961688622 CORE 58 O O 0.0000 58 O -9.658287843 11.928660170 6.039322716 CORE 59 O O 0.0000 59 O 0.168972249 4.644946895 9.744302887 CORE 60 O O 0.0000 60 O -10.613356917 8.536382088 5.520253088 CORE 61 O O 0.0000 61 O -0.752433853 15.635985966 9.196152999 CORE 62 O O 0.0000 62 O -10.514627315 8.396806746 8.706484580 CORE 63 O O 0.0000 63 O -0.837065467 15.603727794 5.532214904 CORE 64 O O 0.0000 64 O -0.716061825 8.419730652 5.371263689 CORE 65 O O 0.0000 65 O -10.446369552 15.708202521 9.188875250 CORE 66 O O 0.0000 66 O -10.288464272 15.424213240 5.504109281 CORE 67 O O 0.0000 67 O -0.895981920 8.495777492 9.092459100 CORE 68 O O 0.0000 68 O -12.576647579 9.163738716 7.287151028 CORE 69 O O 0.0000 69 O -2.520087195 16.065231872 3.520783126 CORE 70 O O 0.0000 70 O -9.016385126 7.840137989 3.213883878 CORE 71 O O 0.0000 71 O 1.039957602 15.043709629 7.337615480 CORE 72 O O 0.0000 72 O -2.516755961 7.855378407 3.513960974 CORE 73 O O 0.0000 73 O -12.230118082 15.156806245 7.290084447 CORE 74 O O 0.0000 74 O 1.026553957 8.902292937 7.313700139 CORE 75 O O 0.0000 75 O -8.628697864 16.019518836 3.501426258 CORE 76 O O 0.0000 76 O -13.216520572 8.426119698 4.868163892 CORE 77 O O 0.0000 77 O -3.358665669 15.557008754 8.662196504 CORE 78 O O 0.0000 78 O 1.745530564 15.650773328 4.862923281 CORE 79 O O 0.0000 79 O -7.890308499 8.431110946 8.444787491 CORE 80 O O 0.0000 80 O -3.319007055 8.422759189 6.000241399 CORE 81 O O 0.0000 81 O -13.062737477 15.556535373 9.750190949 CORE 82 O O 0.0000 82 O -7.671339650 15.746468758 5.937327356 CORE 83 O O 0.0000 83 O 1.669031125 8.433747835 9.827630744 CORE 84 O O 0.0000 84 O -7.686800923 8.545983315 5.802355092 CORE 85 O O 0.0000 85 O 1.846149981 15.658962343 9.788879809 CORE 86 O O 0.0000 86 O -3.466748897 15.660028169 5.983677293 CORE 87 O O 0.0000 87 O -12.956184577 8.435642364 9.812043328 CORE 88 O O 0.0000 88 O 1.913822518 8.404307600 4.881777159 CORE 89 O O 0.0000 89 O -7.833657323 15.677876357 8.616878867 CORE 90 O O 0.0000 90 O -12.866983920 15.738670815 4.788588066 CORE 91 O O 0.0000 91 O -3.485944191 8.277675398 8.676695859 CORE 92 O O 0.0000 92 O -9.396299510 6.007860513 5.598266620 CORE 93 O O 0.0000 93 O 0.612460848 13.353896064 9.345789848 CORE 94 O O 0.0000 94 O -2.189372685 17.910020334 5.387995915 CORE 95 O O 0.0000 95 O -11.723043144 10.707242659 9.288092302 CORE 96 O O 0.0000 96 O 0.643103193 10.695948998 5.386652100 CORE 97 O O 0.0000 97 O -9.001154019 17.950052088 9.325684582 CORE 98 O O 0.0000 98 O -11.868321682 13.344274513 5.378214251 CORE 99 O O 0.0000 99 O -2.028339203 6.095790144 9.195501669 CORE 100 O O 0.0000 100 O -11.976282899 10.772025677 5.256655868 CORE 101 O O 0.0000 101 O -2.181657156 17.881760523 9.204655433 CORE 102 O O 0.0000 102 O 0.545122205 13.332963698 5.382139575 CORE 103 O O 0.0000 103 O -9.132576665 6.115884870 8.815032644 CORE 104 O O 0.0000 104 O -2.074848303 6.133713887 5.483564622 CORE 105 O O 0.0000 105 O -11.697879726 13.355137462 9.174811484 CORE 106 O O 0.0000 106 O -9.223062667 17.830003531 5.370443631 CORE 107 O O 0.0000 107 O 0.524608850 10.733180256 9.175990146 CORE 108 O O 0.0000 108 O2 12.605275595 5.582338367 4.835984223 CORE 109 O2 O2 0.0000 109 O2 13.410710509 7.635192661 2.952056781 CORE 110 O2 O2 0.0000 110 H 13.194469192 6.749959632 3.316290940 CORE 111 H H 0.0000 111 H 13.439496908 8.192036268 3.761094807 CORE 112 H H 0.0000 112 C 13.887658279 5.828181775 5.468792091 CORE 113 C C 0.0000 113 C 13.139624887 4.579264542 5.736795943 CORE 114 C C 0.0000 114 H 13.468656267 3.635802879 5.256166648 CORE 115 H H 0.0000 115 H 12.615465013 4.471858577 6.707636508 CORE 116 H H 0.0000 116 H 14.769712910 5.794995870 4.798181300 CORE 117 H H 0.0000 117 H 13.854217198 6.662033892 6.199087433 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.342070236 4.780527913 3.536460231 CORE 1 Si Si 0.0000 1 Si -2.602611721 12.014878772 7.343212262 CORE 2 Si Si 0.0000 2 Si 1.079488047 4.756835701 3.489631497 CORE 3 Si Si 0.0000 3 Si -8.608046718 12.030827097 7.288305727 CORE 4 Si Si 0.0000 4 Si -13.658070666 7.707608716 11.083918662 CORE 5 Si Si 0.0000 5 Si -4.000746013 14.876926751 7.321743174 CORE 6 Si Si 0.0000 6 Si -7.174225120 9.209312073 7.210681305 CORE 7 Si Si 0.0000 7 Si 2.435521590 16.323107984 3.548629801 CORE 8 Si Si 0.0000 8 Si -13.619503604 16.321248915 3.464367701 CORE 9 Si Si 0.0000 9 Si -3.956372674 9.101701995 7.352797431 CORE 10 Si Si 0.0000 10 Si -7.224711879 14.945041015 7.293892620 CORE 11 Si Si 0.0000 11 Si 2.378552493 7.695934650 3.484051755 CORE 12 Si Si 0.0000 12 Si -10.214655415 4.626131766 5.838208210 CORE 13 Si Si 0.0000 13 Si -0.336444192 12.051634776 9.582628225 CORE 14 Si Si 0.0000 14 Si -10.821386195 12.034359141 9.563522015 CORE 15 Si Si 0.0000 15 Si -1.223480663 4.766551668 5.738198790 CORE 16 Si Si 0.0000 16 Si -10.007926492 4.744408752 8.883775565 CORE 17 Si Si 0.0000 17 Si -0.311059654 11.982186572 5.088577908 CORE 18 Si Si 0.0000 18 Si -10.961884384 12.025944680 5.062025450 CORE 19 Si Si 0.0000 19 Si -1.202600700 4.733620904 8.865269412 CORE 20 Si Si 0.0000 20 Ti -9.089635699 7.689929037 5.006703942 CORE 21 Ti Ti 0.0000 21 Si 0.689623840 14.927228143 8.918038774 CORE 22 Si Si 0.0000 22 Si -2.253130686 16.301501153 5.108385960 CORE 23 Si Si 0.0000 23 Si -11.948173716 9.173482216 8.783113218 CORE 24 Si Si 0.0000 24 Si 0.723557389 9.103913649 5.733689688 CORE 25 Si Si 0.0000 25 Si -8.984231314 16.331343847 9.551108330 CORE 26 Si Si 0.0000 26 Si -11.830950284 14.930853882 5.733457288 CORE 27 Si Si 0.0000 27 Si -2.242518080 7.680374370 9.529268999 CORE 28 Si Si 0.0000 28 Si -12.089651069 9.215379382 5.733662683 CORE 29 Si Si 0.0000 29 Si -2.208524488 16.282759106 9.546015527 CORE 30 Si Si 0.0000 30 Si 0.626968745 14.913885858 5.773774321 CORE 31 Si Si 0.0000 31 Si -9.119214974 7.702132701 9.203439571 CORE 32 Si Si 0.0000 32 Si -2.159881743 7.721546474 5.095927240 CORE 33 Si Si 0.0000 33 Si -11.855771534 14.945482826 8.855672071 CORE 34 Si Si 0.0000 34 Si -8.952776464 16.254296624 5.074362910 CORE 35 Si Si 0.0000 35 Si 0.587821074 9.135133816 8.858612869 CORE 36 Si Si 0.0000 36 O -15.264938587 7.794436630 3.337031180 CORE 37 O O 0.0000 37 O -5.611185917 14.985038606 7.397154201 CORE 38 O O 0.0000 38 O -15.212650153 16.088865416 3.604749305 CORE 39 O O 0.0000 39 O -5.566592228 9.048288317 7.278178239 CORE 40 O O 0.0000 40 O -10.625250440 4.437553656 7.406501797 CORE 41 O O 0.0000 41 O -0.793047190 11.957082724 3.534430245 CORE 42 O O 0.0000 42 O -10.406291791 12.085232798 3.530152327 CORE 43 O O 0.0000 43 O -0.770421359 4.697326749 7.297078674 CORE 44 O O 0.0000 44 O -13.213700666 6.142022255 3.497655209 CORE 45 O O 0.0000 45 O -3.581728798 13.303773992 7.245801087 CORE 46 O O 0.0000 46 O -7.556850678 10.795975913 7.263134816 CORE 47 O O 0.0000 47 O 2.110091252 17.921422827 3.537557344 CORE 48 O O 0.0000 48 O -3.473724665 10.654884428 7.427827108 CORE 49 O O 0.0000 49 O -13.322279634 17.917387709 3.328071932 CORE 50 O O 0.0000 50 O 1.922472563 6.135188226 3.487809568 CORE 51 O O 0.0000 51 O -7.775804516 13.420129637 7.198443955 CORE 52 O O 0.0000 52 O -11.607597332 4.616568162 4.985893487 CORE 53 O O 0.0000 53 O -1.690466101 12.172059991 8.685907058 CORE 54 O O 0.0000 54 O 0.106515566 4.727137875 4.802736045 CORE 55 O O 0.0000 55 O -9.445655459 11.990538329 8.689220762 CORE 56 O O 0.0000 56 O -1.640731420 11.942618396 6.027223589 CORE 57 O O 0.0000 57 O -11.222639333 4.859921423 9.957189637 CORE 58 O O 0.0000 58 O -9.660698610 11.928206250 6.042811842 CORE 59 O O 0.0000 59 O 0.168656253 4.644437334 9.743035600 CORE 60 O O 0.0000 60 O -10.613660019 8.538485199 5.521015940 CORE 61 O O 0.0000 61 O -0.754092157 15.635956848 9.197434662 CORE 62 O O 0.0000 62 O -10.513405670 8.396492072 8.709985117 CORE 63 O O 0.0000 63 O -0.836321087 15.604472892 5.528388779 CORE 64 O O 0.0000 64 O -0.715263176 8.420787974 5.372880679 CORE 65 O O 0.0000 65 O -10.447935674 15.707156588 9.190314155 CORE 66 O O 0.0000 66 O -10.289615674 15.423382231 5.502031141 CORE 67 O O 0.0000 67 O -0.892337385 8.493196389 9.095997901 CORE 68 O O 0.0000 68 O -12.573589618 9.165828565 7.285942165 CORE 69 O O 0.0000 69 O -2.524631413 16.069129906 3.520884911 CORE 70 O O 0.0000 70 O -9.014495888 7.836449978 3.213633524 CORE 71 O O 0.0000 71 O 1.038358956 15.046782419 7.337275513 CORE 72 O O 0.0000 72 O -2.513848493 7.857116824 3.515322894 CORE 73 O O 0.0000 73 O -12.228388958 15.158980132 7.290922686 CORE 74 O O 0.0000 74 O 1.027356840 8.903429251 7.313620492 CORE 75 O O 0.0000 75 O -8.627604196 16.021282624 3.498545786 CORE 76 O O 0.0000 76 O -13.215551031 8.428098698 4.869740336 CORE 77 O O 0.0000 77 O -3.360058590 15.556368451 8.661133015 CORE 78 O O 0.0000 78 O 1.746721610 15.650137494 4.864345678 CORE 79 O O 0.0000 79 O -7.889951705 8.427718869 8.444957588 CORE 80 O O 0.0000 80 O -3.318051947 8.421859854 6.001141409 CORE 81 O O 0.0000 81 O -13.065480020 15.551531440 9.748242056 CORE 82 O O 0.0000 82 O -7.670630873 15.745676812 5.938795930 CORE 83 O O 0.0000 83 O 1.673783376 8.432285459 9.826135470 CORE 84 O O 0.0000 84 O -7.685377788 8.545355553 5.802098804 CORE 85 O O 0.0000 85 O 1.844668343 15.656618794 9.789560655 CORE 86 O O 0.0000 86 O -3.466823565 15.659539365 5.984794793 CORE 87 O O 0.0000 87 O -12.957964121 8.437076919 9.811936143 CORE 88 O O 0.0000 88 O 1.914034400 8.404092821 4.881687394 CORE 89 O O 0.0000 89 O -7.834041059 15.674488893 8.616178774 CORE 90 O O 0.0000 90 O -12.869635435 15.740782863 4.788491531 CORE 91 O O 0.0000 91 O -3.481767352 8.281810699 8.677288538 CORE 92 O O 0.0000 92 O -9.401849065 6.008628098 5.599429231 CORE 93 O O 0.0000 93 O 0.613072248 13.353737646 9.344730543 CORE 94 O O 0.0000 94 O -2.189256641 17.910500057 5.390790350 CORE 95 O O 0.0000 95 O -11.722030110 10.708270430 9.287773788 CORE 96 O O 0.0000 96 O 0.645900390 10.696903398 5.386461387 CORE 97 O O 0.0000 97 O -9.002825024 17.948123540 9.320648984 CORE 98 O O 0.0000 98 O -11.869048934 13.343422313 5.379020084 CORE 99 O O 0.0000 99 O -2.028834173 6.096914062 9.194977912 CORE 100 O O 0.0000 100 O -11.979786179 10.772156707 5.257932740 CORE 101 O O 0.0000 101 O -2.180242103 17.882151018 9.202873138 CORE 102 O O 0.0000 102 O 0.547694240 13.333989019 5.381832016 CORE 103 O O 0.0000 103 O -9.131140059 6.116196949 8.812513286 CORE 104 O O 0.0000 104 O -2.074572913 6.134055660 5.484488518 CORE 105 O O 0.0000 105 O -11.694865258 13.354696515 9.172393302 CORE 106 O O 0.0000 106 O -9.223411186 17.831139268 5.370753778 CORE 107 O O 0.0000 107 O 0.526595273 10.732989837 9.176110112 CORE 108 O O 0.0000 108 O2 12.603888640 5.585325246 4.832838335 CORE 109 O2 O2 0.0000 109 O2 13.427579329 7.632701938 2.951611226 CORE 110 O2 O2 0.0000 110 H 13.175174017 6.752275793 3.306951864 CORE 111 H H 0.0000 111 H 13.434560101 8.196836521 3.750490423 CORE 112 H H 0.0000 112 C 13.892450559 5.825085056 5.475851817 CORE 113 C C 0.0000 113 C 13.137846690 4.579385770 5.736065270 CORE 114 C C 0.0000 114 H 13.467049923 3.632756179 5.257760284 CORE 115 H H 0.0000 115 H 12.608906659 4.468782472 6.702605627 CORE 116 H H 0.0000 116 H 14.776287430 5.788341305 4.803004427 CORE 117 H H 0.0000 117 H 13.858400773 6.653986575 6.207552820 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.343909631 4.782256240 3.529445388 CORE 1 Si Si 0.0000 1 Si -2.599916135 12.015683547 7.342273379 CORE 2 Si Si 0.0000 2 Si 1.078119566 4.758740609 3.489329794 CORE 3 Si Si 0.0000 3 Si -8.608704690 12.031288801 7.287956480 CORE 4 Si Si 0.0000 4 Si -13.658750961 7.711389559 11.085384268 CORE 5 Si Si 0.0000 5 Si -4.001090298 14.874356458 7.321331775 CORE 6 Si Si 0.0000 6 Si -7.171264922 9.207942673 7.210275916 CORE 7 Si Si 0.0000 7 Si 2.436173596 16.323152238 3.548609109 CORE 8 Si Si 0.0000 8 Si -13.620612283 16.319783945 3.457730480 CORE 9 Si Si 0.0000 9 Si -3.953754067 9.102953339 7.352942957 CORE 10 Si Si 0.0000 10 Si -7.224868337 14.939301930 7.294100677 CORE 11 Si Si 0.0000 11 Si 2.380542189 7.696335957 3.485206302 CORE 12 Si Si 0.0000 12 Si -10.219510818 4.626781727 5.835624342 CORE 13 Si Si 0.0000 13 Si -0.333829819 12.050572842 9.581378131 CORE 14 Si Si 0.0000 14 Si -10.818685606 12.035872689 9.563521407 CORE 15 Si Si 0.0000 15 Si -1.222824616 4.766558443 5.739127631 CORE 16 Si Si 0.0000 16 Si -10.006759117 4.743895443 8.878650583 CORE 17 Si Si 0.0000 17 Si -0.306395735 11.983358923 5.089030081 CORE 18 Si Si 0.0000 18 Si -10.963298859 12.024988983 5.064885155 CORE 19 Si Si 0.0000 19 Si -1.202256030 4.735546570 8.863597498 CORE 20 Si Si 0.0000 20 Ti -9.089280637 7.686659773 5.006233816 CORE 21 Ti Ti 0.0000 21 Si 0.687138790 14.927715361 8.917468766 CORE 22 Si Si 0.0000 22 Si -2.253778458 16.303203101 5.108450317 CORE 23 Si Si 0.0000 23 Si -11.951661023 9.173583840 8.785157049 CORE 24 Si Si 0.0000 24 Si 0.728833671 9.105232454 5.734389781 CORE 25 Si Si 0.0000 25 Si -8.986864355 16.328944657 9.546207609 CORE 26 Si Si 0.0000 26 Si -11.838107336 14.931690658 5.732965710 CORE 27 Si Si 0.0000 27 Si -2.239096590 7.681161991 9.530954758 CORE 28 Si Si 0.0000 28 Si -12.089175920 9.214651005 5.733741113 CORE 29 Si Si 0.0000 29 Si -2.211346702 16.284157048 9.545854862 CORE 30 Si Si 0.0000 30 Si 0.627433309 14.915384271 5.773582923 CORE 31 Si Si 0.0000 31 Si -9.121324370 7.698605702 9.201522705 CORE 32 Si Si 0.0000 32 Si -2.156199681 7.721614800 5.097914398 CORE 33 Si Si 0.0000 33 Si -11.858305658 14.943610352 8.856159389 CORE 34 Si Si 0.0000 34 Si -8.952378679 16.255464506 5.072563347 CORE 35 Si Si 0.0000 35 Si 0.594339977 9.133429561 8.860134388 CORE 36 Si Si 0.0000 36 O -15.262851899 7.792070162 3.340775680 CORE 37 O O 0.0000 37 O -5.611537515 14.983212258 7.394485665 CORE 38 O O 0.0000 38 O -15.213161865 16.092735053 3.600865136 CORE 39 O O 0.0000 39 O -5.565030339 9.050796337 7.277918833 CORE 40 O O 0.0000 40 O -10.631237038 4.433261234 7.404385165 CORE 41 O O 0.0000 41 O -0.790980516 11.957952798 3.534374713 CORE 42 O O 0.0000 42 O -10.404675825 12.088750572 3.532516726 CORE 43 O O 0.0000 43 O -0.765439520 4.699499771 7.296334613 CORE 44 O O 0.0000 44 O -13.211393628 6.146261774 3.497755015 CORE 45 O O 0.0000 45 O -3.580984033 13.303450525 7.245137586 CORE 46 O O 0.0000 46 O -7.558899646 10.793143993 7.266512800 CORE 47 O O 0.0000 47 O 2.106913975 17.921830620 3.538320424 CORE 48 O O 0.0000 48 O -3.470783904 10.655657346 7.426175353 CORE 49 O O 0.0000 49 O -13.320392320 17.915517540 3.325884021 CORE 50 O O 0.0000 50 O 1.920068725 6.136149978 3.487723378 CORE 51 O O 0.0000 51 O -7.775605912 13.417421972 7.190651959 CORE 52 O O 0.0000 52 O -11.608413109 4.612364535 4.979954076 CORE 53 O O 0.0000 53 O -1.689049702 12.170501181 8.684357088 CORE 54 O O 0.0000 54 O 0.103565182 4.725373654 4.802067903 CORE 55 O O 0.0000 55 O -9.439371917 11.991564658 8.691918357 CORE 56 O O 0.0000 56 O -1.637774301 11.946035122 6.027979062 CORE 57 O O 0.0000 57 O -11.222843518 4.858335658 9.949991156 CORE 58 O O 0.0000 58 O -9.664555797 11.927480035 6.048394398 CORE 59 O O 0.0000 59 O 0.168150506 4.643621748 9.741008049 CORE 60 O O 0.0000 60 O -10.614144981 8.541850320 5.522236442 CORE 61 O O 0.0000 61 O -0.756745597 15.635910433 9.199485340 CORE 62 O O 0.0000 62 O -10.511451000 8.395988421 8.715586007 CORE 63 O O 0.0000 63 O -0.835130234 15.605665135 5.522266871 CORE 64 O O 0.0000 64 O -0.713985145 8.422479688 5.375467894 CORE 65 O O 0.0000 65 O -10.450441123 15.705483036 9.192616327 CORE 66 O O 0.0000 66 O -10.291457571 15.422052759 5.498706179 CORE 67 O O 0.0000 67 O -0.886506283 8.489066421 9.101659953 CORE 68 O O 0.0000 68 O -12.568696881 9.169172353 7.284008030 CORE 69 O O 0.0000 69 O -2.531902008 16.075366588 3.521047781 CORE 70 O O 0.0000 70 O -9.011472952 7.830549015 3.213232928 CORE 71 O O 0.0000 71 O 1.035801354 15.051698999 7.336731445 CORE 72 O O 0.0000 72 O -2.509196698 7.859898149 3.517502058 CORE 73 O O 0.0000 73 O -12.225622167 15.162458121 7.292263839 CORE 74 O O 0.0000 74 O 1.028641222 8.905247382 7.313493071 CORE 75 O O 0.0000 75 O -8.625854288 16.024104742 3.493936953 CORE 76 O O 0.0000 76 O -13.213999727 8.431265184 4.872262509 CORE 77 O O 0.0000 77 O -3.362287495 15.555343851 8.659431356 CORE 78 O O 0.0000 78 O 1.748627014 15.649120102 4.866621453 CORE 79 O O 0.0000 79 O -7.889380911 8.422291431 8.445229698 CORE 80 O O 0.0000 80 O -3.316523544 8.420420974 6.002581455 CORE 81 O O 0.0000 81 O -13.069867780 15.543525061 9.745123858 CORE 82 O O 0.0000 82 O -7.669496599 15.744409756 5.941145571 CORE 83 O O 0.0000 83 O 1.681387095 8.429945514 9.823743152 CORE 84 O O 0.0000 84 O -7.683100386 8.544351133 5.801688775 CORE 85 O O 0.0000 85 O 1.842297798 15.652868943 9.790650008 CORE 86 O O 0.0000 86 O -3.466943074 15.658757221 5.986582793 CORE 87 O O 0.0000 87 O -12.960811162 8.439372178 9.811764676 CORE 88 O O 0.0000 88 O 1.914373682 8.403749317 4.881543770 CORE 89 O O 0.0000 89 O -7.834654961 15.669068950 8.615058612 CORE 90 O O 0.0000 90 O -12.873877514 15.744161967 4.788337180 CORE 91 O O 0.0000 91 O -3.475084293 8.288427209 8.678236929 CORE 92 O O 0.0000 92 O -9.410727928 6.009856089 5.601289424 CORE 93 O O 0.0000 93 O 0.614050641 13.353484235 9.343035731 CORE 94 O O 0.0000 94 O -2.189071123 17.911267498 5.395261340 CORE 95 O O 0.0000 95 O -11.720409333 10.709915008 9.287264256 CORE 96 O O 0.0000 96 O 0.650376097 10.698430496 5.386156186 CORE 97 O O 0.0000 97 O -9.005498478 17.945037632 9.312591953 CORE 98 O O 0.0000 98 O -11.870212652 13.342058967 5.380309507 CORE 99 O O 0.0000 99 O -2.029626086 6.098712157 9.194139977 CORE 100 O O 0.0000 100 O -11.985391543 10.772366297 5.259975810 CORE 101 O O 0.0000 101 O -2.177977788 17.882776042 9.200021344 CORE 102 O O 0.0000 102 O 0.551809497 13.335629560 5.381339981 CORE 103 O O 0.0000 103 O -9.128841681 6.116696132 8.808482222 CORE 104 O O 0.0000 104 O -2.074132020 6.134602555 5.485966677 CORE 105 O O 0.0000 105 O -11.690041801 13.353991057 9.168524119 CORE 106 O O 0.0000 106 O -9.223968893 17.832956534 5.371249920 CORE 107 O O 0.0000 107 O 0.529773705 10.732685398 9.176302194 CORE 108 O O 0.0000 108 O2 12.601669549 5.590104309 4.827805020 CORE 109 O2 O2 0.0000 109 O2 13.454569441 7.628716983 2.950898354 CORE 110 O2 O2 0.0000 110 H 13.144301893 6.755981679 3.292009312 CORE 111 H H 0.0000 111 H 13.426661363 8.204517128 3.733523362 CORE 112 H H 0.0000 112 C 13.900118170 5.820130277 5.487147545 CORE 113 C C 0.0000 113 C 13.135001574 4.579579649 5.734896193 CORE 114 C C 0.0000 114 H 13.464479427 3.627881546 5.260310071 CORE 115 H H 0.0000 115 H 12.598413562 4.463860702 6.694556203 CORE 116 H H 0.0000 116 H 14.786806699 5.777694001 4.810721340 CORE 117 H H 0.0000 117 H 13.865094416 6.641110896 6.221097470 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.342589069 4.781015275 3.534482051 CORE 1 Si Si 0.0000 1 Si -2.601851561 12.015105660 7.342947454 CORE 2 Si Si 0.0000 2 Si 1.079102193 4.757372794 3.489546372 CORE 3 Si Si 0.0000 3 Si -8.608232236 12.030957262 7.288207214 CORE 4 Si Si 0.0000 4 Si -13.658262534 7.708674831 11.084331962 CORE 5 Si Si 0.0000 5 Si -4.000843006 14.876201978 7.321627164 CORE 6 Si Si 0.0000 6 Si -7.173390291 9.208925902 7.210567044 CORE 7 Si Si 0.0000 7 Si 2.435705568 16.323120525 3.548623943 CORE 8 Si Si 0.0000 8 Si -13.619816328 16.320835789 3.462496021 CORE 9 Si Si 0.0000 9 Si -3.955634260 9.102054868 7.352838434 CORE 10 Si Si 0.0000 10 Si -7.224755949 14.943422528 7.293951271 CORE 11 Si Si 0.0000 11 Si 2.379113472 7.696047806 3.484377344 CORE 12 Si Si 0.0000 12 Si -10.216024665 4.626314978 5.837479590 CORE 13 Si Si 0.0000 13 Si -0.335707126 12.051335238 9.582275707 CORE 14 Si Si 0.0000 14 Si -10.820624688 12.034785962 9.563521863 CORE 15 Si Si 0.0000 15 Si -1.223295723 4.766553542 5.738460707 CORE 16 Si Si 0.0000 16 Si -10.007597217 4.744263884 8.882330346 CORE 17 Si Si 0.0000 17 Si -0.309744481 11.982517102 5.088705405 CORE 18 Si Si 0.0000 18 Si -10.962283324 12.025675125 5.062831815 CORE 19 Si Si 0.0000 19 Si -1.202503515 4.734163908 8.864797993 CORE 20 Si Si 0.0000 20 Ti -9.089535627 7.689007070 5.006571348 CORE 21 Ti Ti 0.0000 21 Si 0.688923145 14.927365515 8.917878034 CORE 22 Si Si 0.0000 22 Si -2.253313317 16.301981019 5.108404065 CORE 23 Si Si 0.0000 23 Si -11.949157113 9.173510901 8.783689541 CORE 24 Si Si 0.0000 24 Si 0.725045379 9.104285549 5.733887096 CORE 25 Si Si 0.0000 25 Si -8.984973769 16.330667219 9.549726403 CORE 26 Si Si 0.0000 26 Si -11.832968461 14.931089852 5.733318684 CORE 27 Si Si 0.0000 27 Si -2.241553350 7.680596501 9.529744374 CORE 28 Si Si 0.0000 28 Si -12.089517126 9.215173972 5.733684820 CORE 29 Si Si 0.0000 29 Si -2.209320250 16.283153205 9.545970188 CORE 30 Si Si 0.0000 30 Si 0.627099801 14.914308354 5.773720310 CORE 31 Si Si 0.0000 31 Si -9.119809823 7.701138083 9.202899002 CORE 32 Si Si 0.0000 32 Si -2.158843499 7.721565645 5.096487588 CORE 33 Si Si 0.0000 33 Si -11.856486084 14.944954815 8.855809457 CORE 34 Si Si 0.0000 34 Si -8.952664268 16.254626000 5.073855433 CORE 35 Si Si 0.0000 35 Si 0.589659507 9.134653228 8.859041916 CORE 36 Si Si 0.0000 36 O -15.264350088 7.793769371 3.338087062 CORE 37 O O 0.0000 37 O -5.611285026 14.984523567 7.396401695 CORE 38 O O 0.0000 38 O -15.212794487 16.089956612 3.603654018 CORE 39 O O 0.0000 39 O -5.566151912 9.048995648 7.278105058 CORE 40 O O 0.0000 40 O -10.626938573 4.436343250 7.405904934 CORE 41 O O 0.0000 41 O -0.792464464 11.957328063 3.534414575 CORE 42 O O 0.0000 42 O -10.405836080 12.086224821 3.530819100 CORE 43 O O 0.0000 43 O -0.769016506 4.697939519 7.296868867 CORE 44 O O 0.0000 44 O -13.213050200 6.143217814 3.497683355 CORE 45 O O 0.0000 45 O -3.581518840 13.303682891 7.245613950 CORE 46 O O 0.0000 46 O -7.557428399 10.795177336 7.264087391 CORE 47 O O 0.0000 47 O 2.109195418 17.921537857 3.537772552 CORE 48 O O 0.0000 48 O -3.472895417 10.655102379 7.427361318 CORE 49 O O 0.0000 49 O -13.321747522 17.916860417 3.327454987 CORE 50 O O 0.0000 50 O 1.921794577 6.135459512 3.487785301 CORE 51 O O 0.0000 51 O -7.775748514 13.419366088 7.196246687 CORE 52 O O 0.0000 52 O -11.607827304 4.615382694 4.984218606 CORE 53 O O 0.0000 53 O -1.690066777 12.171620341 8.685469947 CORE 54 O O 0.0000 54 O 0.105683431 4.726640422 4.802547614 CORE 55 O O 0.0000 55 O -9.443883420 11.990827777 8.689981483 CORE 56 O O 0.0000 56 O -1.639897553 11.943581877 6.027436591 CORE 57 O O 0.0000 57 O -11.222696874 4.859474278 9.955159728 CORE 58 O O 0.0000 58 O -9.661786312 11.928001416 6.044386079 CORE 59 O O 0.0000 59 O 0.168513651 4.644207275 9.742463842 CORE 60 O O 0.0000 60 O -10.613796847 8.539434121 5.521360090 CORE 61 O O 0.0000 61 O -0.754840386 15.635943875 9.198012963 CORE 62 O O 0.0000 62 O -10.512854506 8.396349942 8.711564527 CORE 63 O O 0.0000 63 O -0.835985269 15.604809044 5.526662473 CORE 64 O O 0.0000 64 O -0.714902725 8.421265102 5.373610211 CORE 65 O O 0.0000 65 O -10.448642142 15.706684649 9.190963355 CORE 66 O O 0.0000 66 O -10.290135085 15.423007303 5.501093551 CORE 67 O O 0.0000 67 O -0.890693130 8.492031822 9.097594504 CORE 68 O O 0.0000 68 O -12.572209975 9.166771578 7.285396728 CORE 69 O O 0.0000 69 O -2.526681728 16.070888648 3.520930858 CORE 70 O O 0.0000 70 O -9.013643354 7.834785940 3.213520557 CORE 71 O O 0.0000 71 O 1.037637670 15.048168829 7.337122076 CORE 72 O O 0.0000 72 O -2.512536784 7.857901131 3.515937405 CORE 73 O O 0.0000 73 O -12.227608783 15.159960911 7.291300917 CORE 74 O O 0.0000 74 O 1.027719023 8.903941983 7.313584586 CORE 75 O O 0.0000 75 O -8.627110765 16.022078461 3.497246093 CORE 76 O O 0.0000 76 O -13.215113602 8.428991691 4.870451535 CORE 77 O O 0.0000 77 O -3.360687117 15.556079579 8.660653151 CORE 78 O O 0.0000 78 O 1.747258918 15.649850641 4.864987423 CORE 79 O O 0.0000 79 O -7.889790628 8.426188312 8.445034269 CORE 80 O O 0.0000 80 O -3.317620869 8.421454079 6.001547482 CORE 81 O O 0.0000 81 O -13.066717252 15.549273659 9.747362738 CORE 82 O O 0.0000 82 O -7.670311028 15.745319470 5.939458442 CORE 83 O O 0.0000 83 O 1.675927605 8.431625552 9.825460862 CORE 84 O O 0.0000 84 O -7.684735597 8.545072303 5.801983175 CORE 85 O O 0.0000 85 O 1.843999786 15.655561329 9.789867834 CORE 86 O O 0.0000 86 O -3.466857436 15.659318819 5.985298999 CORE 87 O O 0.0000 87 O -12.958767004 8.437724141 9.811887761 CORE 88 O O 0.0000 88 O 1.914130046 8.403995954 4.881646924 CORE 89 O O 0.0000 89 O -7.834214068 15.672960498 8.615862847 CORE 90 O O 0.0000 90 O -12.870831677 15.741735677 4.788448018 CORE 91 O O 0.0000 91 O -3.479882732 8.283676543 8.677556007 CORE 92 O O 0.0000 92 O -9.404352782 6.008974340 5.599953825 CORE 93 O O 0.0000 93 O 0.613348215 13.353666149 9.344252657 CORE 94 O O 0.0000 94 O -2.189204488 17.910716422 5.392051094 CORE 95 O O 0.0000 95 O -11.721573052 10.708734297 9.287630087 CORE 96 O O 0.0000 96 O 0.647162640 10.697334110 5.386375350 CORE 97 O O 0.0000 97 O -9.003578833 17.947253322 9.318376937 CORE 98 O O 0.0000 98 O -11.869377246 13.343037872 5.379383709 CORE 99 O O 0.0000 99 O -2.029057410 6.097421028 9.194741632 CORE 100 O O 0.0000 100 O -11.981366927 10.772215807 5.258508910 CORE 101 O O 0.0000 101 O -2.179603569 17.882327311 9.202068979 CORE 102 O O 0.0000 102 O 0.548854687 13.334451588 5.381693260 CORE 103 O O 0.0000 103 O -9.130492094 6.116337781 8.811376539 CORE 104 O O 0.0000 104 O -2.074448593 6.134209898 5.484905318 CORE 105 O O 0.0000 105 O -11.693505052 13.354497591 9.171302198 CORE 106 O O 0.0000 106 O -9.223568414 17.831651712 5.370893674 CORE 107 O O 0.0000 107 O 0.527491685 10.732904069 9.176164275 CORE 108 O O 0.0000 108 O2 12.603262999 5.586672880 4.831418980 CORE 109 O2 O2 0.0000 109 O2 13.435190360 7.631578309 2.951410244 CORE 110 O2 O2 0.0000 110 H 13.166468355 6.753320862 3.302738150 CORE 111 H H 0.0000 111 H 13.432332735 8.199002336 3.745705864 CORE 112 H H 0.0000 112 C 13.894612878 5.823687835 5.479037110 CORE 113 C C 0.0000 113 C 13.137044384 4.579440402 5.735735573 CORE 114 C C 0.0000 114 H 13.466324981 3.631381589 5.258479242 CORE 115 H H 0.0000 115 H 12.605947808 4.467394620 6.700335710 CORE 116 H H 0.0000 116 H 14.779253786 5.785338859 4.805180548 CORE 117 H H 0.0000 117 H 13.860288279 6.650355790 6.211372328 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.343046705 4.783374248 3.528823650 CORE 1 Si Si 0.0000 1 Si -2.599793932 12.015830001 7.342299091 CORE 2 Si Si 0.0000 2 Si 1.077300902 4.757353766 3.489616130 CORE 3 Si Si 0.0000 3 Si -8.609036466 12.030108667 7.289394396 CORE 4 Si Si 0.0000 4 Si -13.658072398 7.709974031 11.085926359 CORE 5 Si Si 0.0000 5 Si -4.001826210 14.874966490 7.321248781 CORE 6 Si Si 0.0000 6 Si -7.173177831 9.205989908 7.209136051 CORE 7 Si Si 0.0000 7 Si 2.433099662 16.323896759 3.548746039 CORE 8 Si Si 0.0000 8 Si -13.619404302 16.320539710 3.460948485 CORE 9 Si Si 0.0000 9 Si -3.952726022 9.102688684 7.351870340 CORE 10 Si Si 0.0000 10 Si -7.224229417 14.940926039 7.290818011 CORE 11 Si Si 0.0000 11 Si 2.380933238 7.695346961 3.485236579 CORE 12 Si Si 0.0000 12 Si -10.220143964 4.622970037 5.835435075 CORE 13 Si Si 0.0000 13 Si -0.334442181 12.050251826 9.582219413 CORE 14 Si Si 0.0000 14 Si -10.816479409 12.034902433 9.565985004 CORE 15 Si Si 0.0000 15 Si -1.223634043 4.767664054 5.739042507 CORE 16 Si Si 0.0000 16 Si -10.004871418 4.746168648 8.877293988 CORE 17 Si Si 0.0000 17 Si -0.306463283 11.983984378 5.088085721 CORE 18 Si Si 0.0000 18 Si -10.964317474 12.027280350 5.062544490 CORE 19 Si Si 0.0000 19 Si -1.202335317 4.735930002 8.863675319 CORE 20 Si Si 0.0000 20 Ti -9.090783445 7.690593844 5.009344331 CORE 21 Ti Ti 0.0000 21 Si 0.686354959 14.927807039 8.917802570 CORE 22 Si Si 0.0000 22 Si -2.255025698 16.302175762 5.108706985 CORE 23 Si Si 0.0000 23 Si -11.945685587 9.173383331 8.787023784 CORE 24 Si Si 0.0000 24 Si 0.726122689 9.105783817 5.734153653 CORE 25 Si Si 0.0000 25 Si -8.984250751 16.329124841 9.547751189 CORE 26 Si Si 0.0000 26 Si -11.833871223 14.930795070 5.732970959 CORE 27 Si Si 0.0000 27 Si -2.239520740 7.681962730 9.532764820 CORE 28 Si Si 0.0000 28 Si -12.087278599 9.215279776 5.732347395 CORE 29 Si Si 0.0000 29 Si -2.213039646 16.283067438 9.545776204 CORE 30 Si Si 0.0000 30 Si 0.627180628 14.915948319 5.772637346 CORE 31 Si Si 0.0000 31 Si -9.120314608 7.699975246 9.203139314 CORE 32 Si Si 0.0000 32 Si -2.157072614 7.722215462 5.097842357 CORE 33 Si Si 0.0000 33 Si -11.857633253 14.941884331 8.854006014 CORE 34 Si Si 0.0000 34 Si -8.953153080 16.254246893 5.073120195 CORE 35 Si Si 0.0000 35 Si 0.592927811 9.134255093 8.860052458 CORE 36 Si Si 0.0000 36 O -15.263155194 7.793116672 3.342215575 CORE 37 O O 0.0000 37 O -5.610907448 14.982503773 7.394430665 CORE 38 O O 0.0000 38 O -15.214731837 16.093197911 3.600356366 CORE 39 O O 0.0000 39 O -5.562345145 9.051895750 7.278062458 CORE 40 O O 0.0000 40 O -10.632508719 4.430647121 7.403083265 CORE 41 O O 0.0000 41 O -0.789624737 11.957764685 3.533982256 CORE 42 O O 0.0000 42 O -10.406464992 12.088500764 3.532289575 CORE 43 O O 0.0000 43 O -0.764561775 4.699771345 7.297022990 CORE 44 O O 0.0000 44 O -13.211709816 6.147758601 3.498300681 CORE 45 O O 0.0000 45 O -3.580609534 13.303449228 7.245006589 CORE 46 O O 0.0000 46 O -7.558874821 10.794342434 7.265316337 CORE 47 O O 0.0000 47 O 2.106424971 17.921550686 3.538311067 CORE 48 O O 0.0000 48 O -3.471120876 10.655646103 7.425723332 CORE 49 O O 0.0000 49 O -13.320028213 17.916188402 3.323905688 CORE 50 O O 0.0000 50 O 1.919563363 6.136432074 3.488138580 CORE 51 O O 0.0000 51 O -7.774152948 13.415296518 7.189391595 CORE 52 O O 0.0000 52 O -11.608945991 4.610491484 4.978409126 CORE 53 O O 0.0000 53 O -1.687402560 12.169303460 8.685720833 CORE 54 O O 0.0000 54 O 0.104328037 4.725502090 4.800676086 CORE 55 O O 0.0000 55 O -9.439846873 11.992435453 8.694660683 CORE 56 O O 0.0000 56 O -1.635647007 11.946491349 6.027070152 CORE 57 O O 0.0000 57 O -11.224124051 4.857738599 9.950631227 CORE 58 O O 0.0000 58 O -9.666811259 11.926777028 6.047730592 CORE 59 O O 0.0000 59 O 0.168936262 4.644221545 9.741792505 CORE 60 O O 0.0000 60 O -10.610374395 8.541444689 5.520482446 CORE 61 O O 0.0000 61 O -0.757390290 15.635174272 9.200160937 CORE 62 O O 0.0000 62 O -10.515797192 8.397193781 8.716243879 CORE 63 O O 0.0000 63 O -0.835029969 15.606000278 5.520910656 CORE 64 O O 0.0000 64 O -0.712407091 8.422665638 5.376782421 CORE 65 O O 0.0000 65 O -10.451719732 15.705680807 9.193747140 CORE 66 O O 0.0000 66 O -10.292680755 15.422637277 5.498043514 CORE 67 O O 0.0000 67 O -0.883448900 8.488935680 9.103197675 CORE 68 O O 0.0000 68 O -12.569375444 9.168488229 7.287149583 CORE 69 O O 0.0000 69 O -2.534047776 16.075749587 3.520493824 CORE 70 O O 0.0000 70 O -9.009877001 7.830002408 3.211695129 CORE 71 O O 0.0000 71 O 1.034324911 15.053125914 7.337110132 CORE 72 O O 0.0000 72 O -2.506524590 7.860258085 3.517288675 CORE 73 O O 0.0000 73 O -12.226349034 15.163500307 7.290098216 CORE 74 O O 0.0000 74 O 1.030399790 8.905560182 7.314446788 CORE 75 O O 0.0000 75 O -8.626806124 16.025324373 3.496203447 CORE 76 O O 0.0000 76 O -13.216770944 8.429758988 4.868627476 CORE 77 O O 0.0000 77 O -3.361964956 15.556208591 8.661352939 CORE 78 O O 0.0000 78 O 1.750097298 15.649714277 4.865686982 CORE 79 O O 0.0000 79 O -7.888011853 8.423025862 8.443291455 CORE 80 O O 0.0000 80 O -3.316047818 8.420666746 6.003196423 CORE 81 O O 0.0000 81 O -13.072383621 15.544246951 9.744931927 CORE 82 O O 0.0000 82 O -7.671473785 15.745047897 5.938929665 CORE 83 O O 0.0000 83 O 1.683635822 8.429880936 9.823468608 CORE 84 O O 0.0000 84 O -7.684295666 8.544381981 5.800770128 CORE 85 O O 0.0000 85 O 1.842713480 15.652555279 9.791447321 CORE 86 O O 0.0000 86 O -3.465532448 15.659261449 5.985972771 CORE 87 O O 0.0000 87 O -12.962436557 8.439368142 9.812158578 CORE 88 O O 0.0000 88 O 1.915387293 8.403407688 4.880510938 CORE 89 O O 0.0000 89 O -7.835841773 15.666757258 8.615064241 CORE 90 O O 0.0000 90 O -12.873409294 15.742659662 4.789452627 CORE 91 O O 0.0000 91 O -3.473190821 8.289753798 8.677925642 CORE 92 O O 0.0000 92 O -9.412821543 6.012677775 5.601834633 CORE 93 O O 0.0000 93 O 0.613566641 13.353284879 9.342467167 CORE 94 O O 0.0000 94 O -2.189610163 17.911178415 5.396004869 CORE 95 O O 0.0000 95 O -11.719822759 10.710140599 9.286737000 CORE 96 O O 0.0000 96 O 0.651672988 10.699100781 5.386043751 CORE 97 O O 0.0000 97 O -9.004389414 17.943537779 9.310623053 CORE 98 O O 0.0000 98 O -11.871099827 13.342386326 5.381984616 CORE 99 O O 0.0000 99 O -2.029587212 6.097989690 9.194259867 CORE 100 O O 0.0000 100 O -11.985118270 10.773098998 5.258554782 CORE 101 O O 0.0000 101 O -2.177652170 17.882810925 9.199282912 CORE 102 O O 0.0000 102 O 0.552444183 13.335606353 5.381380908 CORE 103 O O 0.0000 103 O -9.129681321 6.112766241 8.808418853 CORE 104 O O 0.0000 104 O -2.073596252 6.134135518 5.486409797 CORE 105 O O 0.0000 105 O -11.689510074 13.351923119 9.168945330 CORE 106 O O 0.0000 106 O -9.223777217 17.832856929 5.370819732 CORE 107 O O 0.0000 107 O 0.530652027 10.732374616 9.175919247 CORE 108 O O 0.0000 108 O2 12.609077358 5.589318850 4.826247670 CORE 109 O2 O2 0.0000 109 O2 13.458933530 7.622190277 2.949527458 CORE 110 O2 O2 0.0000 110 H 13.140334819 6.758483789 3.289197152 CORE 111 H H 0.0000 111 H 13.424799837 8.207753093 3.732159084 CORE 112 H H 0.0000 112 C 13.900354685 5.815721385 5.484039921 CORE 113 C C 0.0000 113 C 13.136625237 4.579743256 5.732604139 CORE 114 C C 0.0000 114 H 13.463583785 3.629018437 5.259472060 CORE 115 H H 0.0000 115 H 12.591832692 4.464228134 6.695883890 CORE 116 H H 0.0000 116 H 14.781283895 5.777176800 4.813947561 CORE 117 H H 0.0000 117 H 13.869553188 6.638458151 6.227628951 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.343778961 4.787148604 3.519770073 CORE 1 Si Si 0.0000 1 Si -2.596501958 12.016988946 7.341261619 CORE 2 Si Si 0.0000 2 Si 1.074418645 4.757323207 3.489727728 CORE 3 Si Si 0.0000 3 Si -8.610323350 12.028750942 7.291293842 CORE 4 Si Si 0.0000 4 Si -13.657768142 7.712052781 11.088477439 CORE 5 Si Si 0.0000 5 Si -4.003399261 14.872989653 7.320643246 CORE 6 Si Si 0.0000 6 Si -7.172837587 9.201292576 7.206846583 CORE 7 Si Si 0.0000 7 Si 2.428930520 16.325138877 3.548941392 CORE 8 Si Si 0.0000 8 Si -13.618745175 16.320066042 3.458472412 CORE 9 Si Si 0.0000 9 Si -3.948072687 9.103702617 7.350321358 CORE 10 Si Si 0.0000 10 Si -7.223387083 14.936931426 7.285804779 CORE 11 Si Si 0.0000 11 Si 2.383844940 7.694225494 3.486611203 CORE 12 Si Si 0.0000 12 Si -10.226735033 4.617617988 5.832163895 CORE 13 Si Si 0.0000 13 Si -0.332418230 12.048518453 9.582129268 CORE 14 Si Si 0.0000 14 Si -10.809846964 12.035088671 9.569926151 CORE 15 Si Si 0.0000 15 Si -1.224175392 4.769440959 5.739973478 CORE 16 Si Si 0.0000 16 Si -10.000510023 4.749216357 8.869235815 CORE 17 Si Si 0.0000 17 Si -0.301213175 11.986331963 5.087094196 CORE 18 Si Si 0.0000 18 Si -10.967571922 12.029848769 5.062084710 CORE 19 Si Si 0.0000 19 Si -1.202066278 4.738755723 8.861879179 CORE 20 Si Si 0.0000 20 Ti -9.092779875 7.693132569 5.013781012 CORE 21 Ti Ti 0.0000 21 Si 0.682245860 14.928513505 8.917681768 CORE 22 Si Si 0.0000 22 Si -2.257765353 16.302487121 5.109191488 CORE 23 Si Si 0.0000 23 Si -11.940131414 9.173179218 8.792358573 CORE 24 Si Si 0.0000 24 Si 0.727846810 9.108181133 5.734580189 CORE 25 Si Si 0.0000 25 Si -8.983093960 16.326656894 9.544590847 CORE 26 Si Si 0.0000 26 Si -11.835315528 14.930323564 5.732414643 CORE 27 Si Si 0.0000 27 Si -2.236268794 7.684148725 9.537597532 CORE 28 Si Si 0.0000 28 Si -12.083696994 9.215449149 5.730207409 CORE 29 Si Si 0.0000 29 Si -2.218990450 16.282930353 9.545465753 CORE 30 Si Si 0.0000 30 Si 0.627310144 14.918572091 5.770904650 CORE 31 Si Si 0.0000 31 Si -9.121122302 7.698114736 9.203523783 CORE 32 Si Si 0.0000 32 Si -2.154239045 7.723254909 5.100009958 CORE 33 Si Si 0.0000 33 Si -11.859468414 14.936971499 8.851120521 CORE 34 Si Si 0.0000 34 Si -8.953935179 16.253640320 5.071943891 CORE 35 Si Si 0.0000 35 Si 0.598157136 9.133618250 8.861669372 CORE 36 Si Si 0.0000 36 O -15.261243054 7.792072468 3.348821149 CORE 37 O O 0.0000 37 O -5.610303169 14.979272133 7.391277017 CORE 38 O O 0.0000 38 O -15.217831366 16.098383902 3.595080152 CORE 39 O O 0.0000 39 O -5.556254434 9.056536143 7.277994221 CORE 40 O O 0.0000 40 O -10.641420875 4.421533257 7.398568534 CORE 41 O O 0.0000 41 O -0.785081289 11.958463368 3.533290608 CORE 42 O O 0.0000 42 O -10.407471098 12.092142216 3.534642411 CORE 43 O O 0.0000 43 O -0.757433975 4.702702006 7.297269616 CORE 44 O O 0.0000 44 O -13.209565587 6.155023919 3.499288402 CORE 45 O O 0.0000 45 O -3.579154838 13.303075309 7.244034691 CORE 46 O O 0.0000 46 O -7.561188979 10.793006764 7.267282651 CORE 47 O O 0.0000 47 O 2.101992564 17.921571299 3.539172737 CORE 48 O O 0.0000 48 O -3.468281726 10.656515888 7.423102570 CORE 49 O O 0.0000 49 O -13.317277395 17.915113207 3.318226748 CORE 50 O O 0.0000 50 O 1.915993497 6.137988146 3.488703797 CORE 51 O O 0.0000 51 O -7.771599964 13.408785236 7.178423510 CORE 52 O O 0.0000 52 O -11.610736120 4.602665433 4.969113944 CORE 53 O O 0.0000 53 O -1.683140082 12.165596421 8.686122342 CORE 54 O O 0.0000 54 O 0.102159175 4.723680787 4.797681658 CORE 55 O O 0.0000 55 O -9.433388398 11.995007763 8.702147477 CORE 56 O O 0.0000 56 O -1.628846172 11.951146445 6.026483940 CORE 57 O O 0.0000 57 O -11.226407611 4.854961599 9.943385657 CORE 58 O O 0.0000 58 O -9.674851060 11.924818209 6.053081813 CORE 59 O O 0.0000 59 O 0.169612516 4.644244465 9.740718290 CORE 60 O O 0.0000 60 O -10.604898355 8.544661339 5.519078230 CORE 61 O O 0.0000 61 O -0.761470329 15.633942965 9.203597649 CORE 62 O O 0.0000 62 O -10.520505374 8.398543722 8.723730826 CORE 63 O O 0.0000 63 O -0.833501374 15.607906051 5.511707901 CORE 64 O O 0.0000 64 O -0.708414229 8.424906553 5.381857956 CORE 65 O O 0.0000 65 O -10.456643645 15.704074572 9.198201166 CORE 66 O O 0.0000 66 O -10.296754059 15.422045263 5.493163484 CORE 67 O O 0.0000 67 O -0.871858478 8.483981910 9.112162781 CORE 68 O O 0.0000 68 O -12.564840271 9.171235102 7.289954059 CORE 69 O O 0.0000 69 O -2.545833531 16.083527349 3.519794645 CORE 70 O O 0.0000 70 O -9.003850759 7.822348757 3.208774566 CORE 71 O O 0.0000 71 O 1.029024382 15.061057193 7.337090962 CORE 72 O O 0.0000 72 O -2.496905196 7.864029269 3.519450646 CORE 73 O O 0.0000 73 O -12.224333551 15.169163282 7.288173970 CORE 74 O O 0.0000 74 O 1.034689211 8.908149214 7.315826432 CORE 75 O O 0.0000 75 O -8.626318851 16.030517716 3.494535261 CORE 76 O O 0.0000 76 O -13.219422652 8.430986691 4.865709043 CORE 77 O O 0.0000 77 O -3.364009691 15.556415010 8.662472646 CORE 78 O O 0.0000 78 O 1.754638630 15.649496182 4.866806384 CORE 79 O O 0.0000 79 O -7.885165583 8.417966000 8.440502878 CORE 80 O O 0.0000 80 O -3.313530630 8.419406897 6.005834758 CORE 81 O O 0.0000 81 O -13.081449926 15.536203958 9.741042510 CORE 82 O O 0.0000 82 O -7.673334349 15.744613436 5.938083666 CORE 83 O O 0.0000 83 O 1.695968891 8.427089522 9.820281032 CORE 84 O O 0.0000 84 O -7.683591892 8.543277524 5.798829299 CORE 85 O O 0.0000 85 O 1.840655274 15.647745656 9.793974514 CORE 86 O O 0.0000 86 O -3.463412467 15.659169627 5.987050713 CORE 87 O O 0.0000 87 O -12.968308073 8.441998256 9.812591885 CORE 88 O O 0.0000 88 O 1.917398735 8.402466550 4.878693422 CORE 89 O O 0.0000 89 O -7.838446139 15.656832132 8.613786381 CORE 90 O O 0.0000 90 O -12.877533403 15.744137894 4.791060032 CORE 91 O O 0.0000 91 O -3.462484109 8.299477405 8.678517179 CORE 92 O O 0.0000 92 O -9.426371446 6.018603098 5.604843972 CORE 93 O O 0.0000 93 O 0.613916122 13.352674847 9.339610429 CORE 94 O O 0.0000 94 O -2.190259282 17.911917747 5.402330955 CORE 95 O O 0.0000 95 O -11.717021906 10.712390884 9.285307984 CORE 96 O O 0.0000 96 O 0.658889891 10.701927656 5.385513300 CORE 97 O O 0.0000 97 O -9.005686305 17.937592851 9.298216823 CORE 98 O O 0.0000 98 O -11.873856033 13.341343708 5.386146068 CORE 99 O O 0.0000 99 O -2.030434935 6.098899548 9.193489103 CORE 100 O O 0.0000 100 O -11.991120648 10.774512219 5.258628192 CORE 101 O O 0.0000 101 O -2.174530125 17.883584708 9.194825235 CORE 102 O O 0.0000 102 O 0.558187145 13.337453746 5.380881037 CORE 103 O O 0.0000 103 O -9.128384238 6.107051661 8.803686632 CORE 104 O O 0.0000 104 O -2.072232197 6.134016452 5.488816873 CORE 105 O O 0.0000 105 O -11.683117993 13.347803962 9.165174281 CORE 106 O O 0.0000 106 O -9.224111495 17.834785477 5.370701440 CORE 107 O O 0.0000 107 O 0.535708728 10.731527462 9.175527171 CORE 108 O O 0.0000 108 O2 12.618380371 5.593552459 4.817973529 CORE 109 O2 O2 0.0000 109 O2 13.496922871 7.607169540 2.946515000 CORE 110 O2 O2 0.0000 110 H 13.098520814 6.766744445 3.267531569 CORE 111 H H 0.0000 111 H 13.412746968 8.221753987 3.710484297 CORE 112 H H 0.0000 112 C 13.909541462 5.802975294 5.492044387 CORE 113 C C 0.0000 113 C 13.135954564 4.580227735 5.727593797 CORE 114 C C 0.0000 114 H 13.459197565 3.625237162 5.261060523 CORE 115 H H 0.0000 115 H 12.569248430 4.459161785 6.688761025 CORE 116 H H 0.0000 116 H 14.784532185 5.764117477 4.827974813 CORE 117 H H 0.0000 117 H 13.884377274 6.619422044 6.253639471 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.343087696 4.783585568 3.528316553 CORE 1 Si Si 0.0000 1 Si -2.599609570 12.015895011 7.342240972 CORE 2 Si Si 0.0000 2 Si 1.077139441 4.757352037 3.489622368 CORE 3 Si Si 0.0000 3 Si -8.609108633 12.030032701 7.289500745 CORE 4 Si Si 0.0000 4 Si -13.658055270 7.710090502 11.086069222 CORE 5 Si Si 0.0000 5 Si -4.001914350 14.874855785 7.321214853 CORE 6 Si Si 0.0000 6 Si -7.173158779 9.205726839 7.209007869 CORE 7 Si Si 0.0000 7 Si 2.432866225 16.323966382 3.548756993 CORE 8 Si Si 0.0000 8 Si -13.619367352 16.320513187 3.460809805 CORE 9 Si Si 0.0000 9 Si -3.952465451 9.102745478 7.351783617 CORE 10 Si Si 0.0000 10 Si -7.224182268 14.940702322 7.290537229 CORE 11 Si Si 0.0000 11 Si 2.381096432 7.695284113 3.485313564 CORE 12 Si Si 0.0000 12 Si -10.220513074 4.622670210 5.835251893 CORE 13 Si Si 0.0000 13 Si -0.334328830 12.050154814 9.582214317 CORE 14 Si Si 0.0000 14 Si -10.816107989 12.034912811 9.566205765 CORE 15 Si Si 0.0000 15 Si -1.223664257 4.767763660 5.739094692 CORE 16 Si Si 0.0000 16 Si -10.004627204 4.746339463 8.876842651 CORE 17 Si Si 0.0000 17 Si -0.306169226 11.984115841 5.088030188 CORE 18 Si Si 0.0000 18 Si -10.964499720 12.027424209 5.062518778 CORE 19 Si Si 0.0000 19 Si -1.202320306 4.736088276 8.863574752 CORE 20 Si Si 0.0000 20 Ti -9.090895255 7.690735974 5.009592783 CORE 21 Ti Ti 0.0000 21 Si 0.686124794 14.927846679 8.917795800 CORE 22 Si Si 0.0000 22 Si -2.255179077 16.302193204 5.108734066 CORE 23 Si Si 0.0000 23 Si -11.945374595 9.173371943 8.787322595 CORE 24 Si Si 0.0000 24 Si 0.726219297 9.105918163 5.734177539 CORE 25 Si Si 0.0000 25 Si -8.984185897 16.328986604 9.547574169 CORE 26 Si Si 0.0000 26 Si -11.833952051 14.930768691 5.732939845 CORE 27 Si Si 0.0000 27 Si -2.239338686 7.682085111 9.533035484 CORE 28 Si Si 0.0000 28 Si -12.087077878 9.215289289 5.732227505 CORE 29 Si Si 0.0000 29 Si -2.213372962 16.283059798 9.545758783 CORE 30 Si Si 0.0000 30 Si 0.627187941 14.916095206 5.772540278 CORE 31 Si Si 0.0000 31 Si -9.120359833 7.699871028 9.203160843 CORE 32 Si Si 0.0000 32 Si -2.156913847 7.722273553 5.097963768 CORE 33 Si Si 0.0000 33 Si -11.857736019 14.941609153 8.853844437 CORE 34 Si Si 0.0000 34 Si -8.953196957 16.254212874 5.073054317 CORE 35 Si Si 0.0000 35 Si 0.593220713 9.134219489 8.860142984 CORE 36 Si Si 0.0000 36 O -15.263048001 7.793058148 3.342585513 CORE 37 O O 0.0000 37 O -5.610873578 14.982322724 7.394254025 CORE 38 O O 0.0000 38 O -15.214905423 16.093488368 3.600060825 CORE 39 O O 0.0000 39 O -5.562003939 9.052155647 7.278058578 CORE 40 O O 0.0000 40 O -10.633007923 4.430136695 7.402830402 CORE 41 O O 0.0000 41 O -0.789370324 11.957803893 3.533943536 CORE 42 O O 0.0000 42 O -10.406521186 12.088704733 3.532421408 CORE 43 O O 0.0000 43 O -0.764162451 4.699935384 7.297036835 CORE 44 O O 0.0000 44 O -13.211589730 6.148165529 3.498355986 CORE 45 O O 0.0000 45 O -3.580528130 13.303428182 7.244952122 CORE 46 O O 0.0000 46 O -7.559004337 10.794267622 7.265426490 CORE 47 O O 0.0000 47 O 2.106176716 17.921551839 3.538359373 CORE 48 O O 0.0000 48 O -3.470961916 10.655694825 7.425576589 CORE 49 O O 0.0000 49 O -13.319874256 17.916128149 3.323587554 CORE 50 O O 0.0000 50 O 1.919363412 6.136519139 3.488170226 CORE 51 O O 0.0000 51 O -7.774009961 13.414931825 7.188777312 CORE 52 O O 0.0000 52 O -11.609046255 4.610053132 4.977888565 CORE 53 O O 0.0000 53 O -1.687163927 12.169095888 8.685743351 CORE 54 O O 0.0000 54 O 0.104206604 4.725400033 4.800508347 CORE 55 O O 0.0000 55 O -9.439485075 11.992579600 8.695080068 CORE 56 O O 0.0000 56 O -1.635266157 11.946751967 6.027037365 CORE 57 O O 0.0000 57 O -11.224252027 4.857583064 9.950225382 CORE 58 O O 0.0000 58 O -9.667261582 11.926667332 6.048030317 CORE 59 O O 0.0000 59 O 0.168974174 4.644222843 9.741732332 CORE 60 O O 0.0000 60 O -10.610067636 8.541624729 5.520403787 CORE 61 O O 0.0000 61 O -0.757618915 15.635105370 9.200353399 CORE 62 O O 0.0000 62 O -10.516060843 8.397269315 8.716663188 CORE 63 O O 0.0000 63 O -0.834944331 15.606106947 5.520395267 CORE 64 O O 0.0000 64 O -0.712183469 8.422791190 5.377066703 CORE 65 O O 0.0000 65 O -10.451995507 15.705590859 9.193996581 CORE 66 O O 0.0000 66 O -10.292908996 15.422604123 5.497770187 CORE 67 O O 0.0000 67 O -0.882799781 8.488658196 9.103699828 CORE 68 O O 0.0000 68 O -12.569121416 9.168642179 7.287306672 CORE 69 O O 0.0000 69 O -2.534707865 16.076185201 3.520454723 CORE 70 O O 0.0000 70 O -9.009539451 7.829573714 3.211531574 CORE 71 O O 0.0000 71 O 1.034027968 15.053570176 7.337109067 CORE 72 O O 0.0000 72 O -2.505985935 7.860469261 3.517409706 CORE 73 O O 0.0000 73 O -12.226236261 15.163817431 7.289990498 CORE 74 O O 0.0000 74 O 1.030640155 8.905705194 7.314524077 CORE 75 O O 0.0000 75 O -8.626778796 16.025615262 3.496110031 CORE 76 O O 0.0000 76 O -13.216919512 8.429827746 4.868464073 CORE 77 O O 0.0000 77 O -3.362079654 15.556220123 8.661415699 CORE 78 O O 0.0000 78 O 1.750351519 15.649702025 4.865749742 CORE 79 O O 0.0000 79 O -7.887852316 8.422742468 8.443135279 CORE 80 O O 0.0000 80 O -3.315906756 8.420596113 6.003344231 CORE 81 O O 0.0000 81 O -13.072891485 15.543796490 9.744714057 CORE 82 O O 0.0000 82 O -7.671577898 15.745023536 5.938882272 CORE 83 O O 0.0000 83 O 1.684326509 8.429724681 9.823290066 CORE 84 O O 0.0000 84 O -7.684256215 8.544320142 5.800661421 CORE 85 O O 0.0000 85 O 1.842598205 15.652285867 9.791588891 CORE 86 O O 0.0000 86 O -3.465413709 15.659256259 5.986033172 CORE 87 O O 0.0000 87 O -12.962765447 8.439515317 9.812182845 CORE 88 O O 0.0000 88 O 1.915499874 8.403354930 4.880409153 CORE 89 O O 0.0000 89 O -7.835987647 15.666201426 8.614992657 CORE 90 O O 0.0000 90 O -12.873640228 15.742742403 4.789542696 CORE 91 O O 0.0000 91 O -3.472591160 8.290298387 8.677958809 CORE 92 O O 0.0000 92 O -9.413580356 6.013009602 5.602003209 CORE 93 O O 0.0000 93 O 0.613586078 13.353250716 9.342307188 CORE 94 O O 0.0000 94 O -2.189646535 17.911219929 5.396359214 CORE 95 O O 0.0000 95 O -11.719665723 10.710266728 9.286656972 CORE 96 O O 0.0000 96 O 0.652077316 10.699259199 5.386014083 CORE 97 O O 0.0000 97 O -9.004461966 17.943204798 9.309928210 CORE 98 O O 0.0000 98 O -11.871254168 13.342327946 5.382217701 CORE 99 O O 0.0000 99 O -2.029634746 6.098040718 9.194216734 CORE 100 O O 0.0000 100 O -11.985454472 10.773178135 5.258558890 CORE 101 O O 0.0000 101 O -2.177477430 17.882854314 9.199033243 CORE 102 O O 0.0000 102 O 0.552765759 13.335709706 5.381352913 CORE 103 O O 0.0000 103 O -9.129608577 6.112446089 8.808153818 CORE 104 O O 0.0000 104 O -2.073519851 6.134128887 5.486544597 CORE 105 O O 0.0000 105 O -11.689152125 13.351692339 9.168734078 CORE 106 O O 0.0000 106 O -9.223796077 17.832965039 5.370813114 CORE 107 O O 0.0000 107 O 0.530935307 10.732327192 9.175897262 CORE 108 O O 0.0000 108 O2 12.609598308 5.589555972 4.825784239 CORE 109 O2 O2 0.0000 109 O2 13.461061208 7.621349032 2.949358730 CORE 110 O2 O2 0.0000 110 H 13.137992756 6.758946358 3.287983725 CORE 111 H H 0.0000 111 H 13.424124738 8.208537255 3.730945124 CORE 112 H H 0.0000 112 C 13.900869093 5.815007567 5.484488214 CORE 113 C C 0.0000 113 C 13.136587710 4.579770356 5.732323508 CORE 114 C C 0.0000 114 H 13.463338032 3.628806540 5.259561065 CORE 115 H H 0.0000 115 H 12.590567747 4.463944308 6.695484968 CORE 116 H H 0.0000 116 H 14.781465949 5.776445396 4.814733234 CORE 117 H H 0.0000 117 H 13.870383591 6.637391893 6.229085733 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.344161927 4.784938968 3.523904900 CORE 1 Si Si 0.0000 1 Si -2.596296811 12.015580770 7.341690134 CORE 2 Si Si 0.0000 2 Si 1.076064055 4.757120392 3.488796985 CORE 3 Si Si 0.0000 3 Si -8.611310981 12.027063408 7.291202556 CORE 4 Si Si 0.0000 4 Si -13.659270949 7.710743202 11.084997137 CORE 5 Si Si 0.0000 5 Si -4.000703675 14.875674542 7.321342958 CORE 6 Si Si 0.0000 6 Si -7.170522851 9.205290937 7.207468397 CORE 7 Si Si 0.0000 7 Si 2.429733788 16.325195960 3.547748733 CORE 8 Si Si 0.0000 8 Si -13.620789140 16.320775535 3.462269478 CORE 9 Si Si 0.0000 9 Si -3.948657145 9.104039922 7.351310753 CORE 10 Si Si 0.0000 10 Si -7.224327180 14.939240235 7.285796335 CORE 11 Si Si 0.0000 11 Si 2.382709703 7.693230012 3.485245936 CORE 12 Si Si 0.0000 12 Si -10.225179111 4.618622407 5.833302011 CORE 13 Si Si 0.0000 13 Si -0.331228147 12.048766242 9.582536406 CORE 14 Si Si 0.0000 14 Si -10.813126044 12.032982822 9.568615123 CORE 15 Si Si 0.0000 15 Si -1.222366981 4.767901465 5.740341135 CORE 16 Si Si 0.0000 16 Si -10.007315092 4.742215405 8.871778299 CORE 17 Si Si 0.0000 17 Si -0.302010477 11.985731013 5.086434270 CORE 18 Si Si 0.0000 18 Si -10.968522218 12.028904459 5.062225291 CORE 19 Si Si 0.0000 19 Si -1.200655074 4.737027108 8.863210823 CORE 20 Si Si 0.0000 20 Ti -9.089920326 7.691699023 5.009745916 CORE 21 Ti Ti 0.0000 21 Si 0.683943808 14.928248418 8.918657241 CORE 22 Si Si 0.0000 22 Si -2.255942124 16.303329230 5.107273329 CORE 23 Si Si 0.0000 23 Si -11.945258550 9.175873045 8.791066107 CORE 24 Si Si 0.0000 24 Si 0.728106996 9.107425224 5.734765425 CORE 25 Si Si 0.0000 25 Si -8.984350630 16.326427411 9.547334998 CORE 26 Si Si 0.0000 26 Si -11.832286819 14.930814242 5.731676515 CORE 27 Si Si 0.0000 27 Si -2.235411449 7.683403916 9.534594203 CORE 28 Si Si 0.0000 28 Si -12.088433273 9.216490037 5.732451005 CORE 29 Si Si 0.0000 29 Si -2.215148850 16.284581274 9.546315860 CORE 30 Si Si 0.0000 30 Si 0.628067995 14.918174100 5.770968627 CORE 31 Si Si 0.0000 31 Si -9.119233449 7.699490190 9.203034791 CORE 32 Si Si 0.0000 32 Si -2.154590066 7.723208061 5.100007752 CORE 33 Si Si 0.0000 33 Si -11.859156267 14.939110214 8.852189715 CORE 34 Si Si 0.0000 34 Si -8.956425810 16.253748863 5.072550187 CORE 35 Si Si 0.0000 35 Si 0.597809579 9.133801173 8.861903827 CORE 36 Si Si 0.0000 36 O -15.262447571 7.793203449 3.347350446 CORE 37 O O 0.0000 37 O -5.611659910 14.980160225 7.392791309 CORE 38 O O 0.0000 38 O -15.216212706 16.096957852 3.597168333 CORE 39 O O 0.0000 39 O -5.561122346 9.055479687 7.277899663 CORE 40 O O 0.0000 40 O -10.637519233 4.424207047 7.401013266 CORE 41 O O 0.0000 41 O -0.785858192 11.957886922 3.534107395 CORE 42 O O 0.0000 42 O -10.407871192 12.089982744 3.534679914 CORE 43 O O 0.0000 43 O -0.760099347 4.701993377 7.296768452 CORE 44 O O 0.0000 44 O -13.208587002 6.148524024 3.499210580 CORE 45 O O 0.0000 45 O -3.579223733 13.303204754 7.244402729 CORE 46 O O 0.0000 46 O -7.559633634 10.791438008 7.264776910 CORE 47 O O 0.0000 47 O 2.103384523 17.921094171 3.538871187 CORE 48 O O 0.0000 48 O -3.469140033 10.657601462 7.423479507 CORE 49 O O 0.0000 49 O -13.317632650 17.917319094 3.317864949 CORE 50 O O 0.0000 50 O 1.916685339 6.136162951 3.489065368 CORE 51 O O 0.0000 51 O -7.769869493 13.411963110 7.181889054 CORE 52 O O 0.0000 52 O -11.609935353 4.604589657 4.971677272 CORE 53 O O 0.0000 53 O -1.685434611 12.165879238 8.685670702 CORE 54 O O 0.0000 54 O 0.101910920 4.724739550 4.799289215 CORE 55 O O 0.0000 55 O -9.434456471 11.994744838 8.700755128 CORE 56 O O 0.0000 56 O -1.630988476 11.949706268 6.027107579 CORE 57 O O 0.0000 57 O -11.223170868 4.856633709 9.944585011 CORE 58 O O 0.0000 58 O -9.673281666 11.924675359 6.051147450 CORE 59 O O 0.0000 59 O 0.169164310 4.645218181 9.741389703 CORE 60 O O 0.0000 60 O -10.605686227 8.544720583 5.518267757 CORE 61 O O 0.0000 61 O -0.761522290 15.633670094 9.203098159 CORE 62 O O 0.0000 62 O -10.514395033 8.394561073 8.721356993 CORE 63 O O 0.0000 63 O -0.834955493 15.607566584 5.514325469 CORE 64 O O 0.0000 64 O -0.711522226 8.422899301 5.380336893 CORE 65 O O 0.0000 65 O -10.453818544 15.705435900 9.197788702 CORE 66 O O 0.0000 66 O -10.293211136 15.423910242 5.493900091 CORE 67 O O 0.0000 67 O -0.876037050 8.484724846 9.110796448 CORE 68 O O 0.0000 68 O -12.565503246 9.168569096 7.289666278 CORE 69 O O 0.0000 69 O -2.543088871 16.080288213 3.520721432 CORE 70 O O 0.0000 70 O -9.004266057 7.824812813 3.211554852 CORE 71 O O 0.0000 71 O 1.028799798 15.059290090 7.336996252 CORE 72 O O 0.0000 72 O -2.498787122 7.863287775 3.520162377 CORE 73 O O 0.0000 73 O -12.226144465 15.167309690 7.287314735 CORE 74 O O 0.0000 74 O 1.034468668 8.907336943 7.314571242 CORE 75 O O 0.0000 75 O -8.627228542 16.029384429 3.498260819 CORE 76 O O 0.0000 76 O -13.216650280 8.432120699 4.868926440 CORE 77 O O 0.0000 77 O -3.365476896 15.555512503 8.661501737 CORE 78 O O 0.0000 78 O 1.753163919 15.649684871 4.866734496 CORE 79 O O 0.0000 79 O -7.887227830 8.419217343 8.441167521 CORE 80 O O 0.0000 80 O -3.313396110 8.419473493 6.003471424 CORE 81 O O 0.0000 81 O -13.078368102 15.539798129 9.741900452 CORE 82 O O 0.0000 82 O -7.674379136 15.745504988 5.935842504 CORE 83 O O 0.0000 83 O 1.691742016 8.429960794 9.819534992 CORE 84 O O 0.0000 84 O -7.684399202 8.543914511 5.798620405 CORE 85 O O 0.0000 85 O 1.841019574 15.649610491 9.793479132 CORE 86 O O 0.0000 86 O -3.464578880 15.658357644 5.987537651 CORE 87 O O 0.0000 87 O -12.965102699 8.442402734 9.811045109 CORE 88 O O 0.0000 88 O 1.915549525 8.404292321 4.880987530 CORE 89 O O 0.0000 89 O -7.837658459 15.657654349 8.613005804 CORE 90 O O 0.0000 90 O -12.874560888 15.741129682 4.791720947 CORE 91 O O 0.0000 91 O -3.464941640 8.296564474 8.678326618 CORE 92 O O 0.0000 92 O -9.422607595 6.016943097 5.604397580 CORE 93 O O 0.0000 93 O 0.612913480 13.352722560 9.339904372 CORE 94 O O 0.0000 94 O -2.191072942 17.910607591 5.400144869 CORE 95 O O 0.0000 95 O -11.716091239 10.711987848 9.286261397 CORE 96 O O 0.0000 96 O 0.656611335 10.701644839 5.385532242 CORE 97 O O 0.0000 97 O -9.003957566 17.940873646 9.301093264 CORE 98 O O 0.0000 98 O -11.874331951 13.343061945 5.385664227 CORE 99 O O 0.0000 99 O -2.030842920 6.099460426 9.194451644 CORE 100 O O 0.0000 100 O -11.986644748 10.775223443 5.256010700 CORE 101 O O 0.0000 101 O -2.176383569 17.881781713 9.196310164 CORE 102 O O 0.0000 102 O 0.556242674 13.336757370 5.381158092 CORE 103 O O 0.0000 103 O -9.127499373 6.112457477 8.805650283 CORE 104 O O 0.0000 104 O -2.073314126 6.136148104 5.487667042 CORE 105 O O 0.0000 105 O -11.686122454 13.348682108 9.166871603 CORE 106 O O 0.0000 106 O -9.222300005 17.831536250 5.369644645 CORE 107 O O 0.0000 107 O 0.533939383 10.732542836 9.176015326 CORE 108 O O 0.0000 108 O2 12.623956483 5.591526035 4.821242121 CORE 109 O2 O2 0.0000 109 O2 13.485877070 7.612583573 2.946716515 CORE 110 O2 O2 0.0000 110 H 13.110840027 6.763819550 3.276313265 CORE 111 H H 0.0000 111 H 13.415202959 8.215704697 3.715223365 CORE 112 H H 0.0000 112 C 13.902358429 5.811876108 5.491062143 CORE 113 C C 0.0000 113 C 13.130582638 4.573981396 5.733304915 CORE 114 C C 0.0000 114 H 13.459918851 3.627864825 5.258697569 CORE 115 H H 0.0000 115 H 12.575116674 4.462860896 6.687454333 CORE 116 H H 0.0000 116 H 14.782223222 5.768846377 4.822586012 CORE 117 H H 0.0000 117 H 13.883061138 6.620778615 6.245778782 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.344080715 4.784836623 3.524238400 CORE 1 Si Si 0.0000 1 Si -2.596547375 12.015604554 7.341731745 CORE 2 Si Si 0.0000 2 Si 1.076145459 4.757137978 3.488859440 CORE 3 Si Si 0.0000 3 Si -8.611144323 12.027287990 7.291073918 CORE 4 Si Si 0.0000 4 Si -13.659179153 7.710693759 11.085078154 CORE 5 Si Si 0.0000 5 Si -4.000795279 14.875612559 7.321333297 CORE 6 Si Si 0.0000 6 Si -7.170722032 9.205323802 7.207584787 CORE 7 Si Si 0.0000 7 Si 2.429970496 16.325102985 3.547824957 CORE 8 Si Si 0.0000 8 Si -13.620681563 16.320755643 3.462159174 CORE 9 Si Si 0.0000 9 Si -3.948945043 9.103942046 7.351346507 CORE 10 Si Si 0.0000 10 Si -7.224316210 14.939350796 7.286154787 CORE 11 Si Si 0.0000 11 Si 2.382587693 7.693385259 3.485251033 CORE 12 Si Si 0.0000 12 Si -10.224826358 4.618928432 5.833449439 CORE 13 Si Si 0.0000 13 Si -0.331462545 12.048871326 9.582512063 CORE 14 Si Si 0.0000 14 Si -10.813351398 12.033128699 9.568433006 CORE 15 Si Si 0.0000 15 Si -1.222465128 4.767891086 5.740246881 CORE 16 Si Si 0.0000 16 Si -10.007111869 4.742527052 8.872161170 CORE 17 Si Si 0.0000 17 Si -0.302324933 11.985608920 5.086554921 CORE 18 Si Si 0.0000 18 Si -10.968218154 12.028792457 5.062247428 CORE 19 Si Si 0.0000 19 Si -1.200780934 4.736956187 8.863238361 CORE 20 Si Si 0.0000 20 Ti -9.089994033 7.691626228 5.009734277 CORE 21 Ti Ti 0.0000 21 Si 0.684108541 14.928218003 8.918592123 CORE 22 Si Si 0.0000 22 Si -2.255884582 16.303243318 5.107383785 CORE 23 Si Si 0.0000 23 Si -11.945267210 9.175684068 8.790783118 CORE 24 Si Si 0.0000 24 Si 0.727964394 9.107311348 5.734720999 CORE 25 Si Si 0.0000 25 Si -8.984338314 16.326620857 9.547353104 CORE 26 Si Si 0.0000 26 Si -11.832412871 14.930810782 5.731772061 CORE 27 Si Si 0.0000 27 Si -2.235708392 7.683304166 9.534476367 CORE 28 Si Si 0.0000 28 Si -12.088330892 9.216399224 5.732434117 CORE 29 Si Si 0.0000 29 Si -2.215014523 16.284466244 9.546273792 CORE 30 Si Si 0.0000 30 Si 0.628001408 14.918016979 5.771087452 CORE 31 Si Si 0.0000 31 Si -9.119318510 7.699519020 9.203044300 CORE 32 Si Si 0.0000 32 Si -2.154765769 7.723137429 5.099853249 CORE 33 Si Si 0.0000 33 Si -11.859048883 14.939299191 8.852314778 CORE 34 Si Si 0.0000 34 Si -8.956181789 16.253783891 5.072588299 CORE 35 Si Si 0.0000 35 Si 0.597462792 9.133832885 8.861770701 CORE 36 Si Si 0.0000 36 O -15.262492988 7.793192493 3.346990244 CORE 37 O O 0.0000 37 O -5.611600445 14.980323688 7.392901842 CORE 38 O O 0.0000 38 O -15.216113789 16.096695503 3.597387041 CORE 39 O O 0.0000 39 O -5.561189125 9.055228438 7.277911683 CORE 40 O O 0.0000 40 O -10.637178219 4.424655346 7.401150652 CORE 41 O O 0.0000 41 O -0.786123767 11.957880580 3.534095071 CORE 42 O O 0.0000 42 O -10.407769196 12.089886165 3.534509208 CORE 43 O O 0.0000 43 O -0.760406490 4.701837842 7.296788687 CORE 44 O O 0.0000 44 O -13.208814087 6.148496924 3.499145995 CORE 45 O O 0.0000 45 O -3.579322265 13.303221763 7.244444264 CORE 46 O O 0.0000 46 O -7.559586100 10.791651923 7.264826052 CORE 47 O O 0.0000 47 O 2.103595636 17.921128766 3.538832466 CORE 48 O O 0.0000 48 O -3.469277824 10.657457315 7.423638042 CORE 49 O O 0.0000 49 O -13.317802195 17.917229146 3.318297571 CORE 50 O O 0.0000 50 O 1.916887791 6.136189907 3.488997663 CORE 51 O O 0.0000 51 O -7.770182602 13.412187547 7.182409844 CORE 52 O O 0.0000 52 O -11.609868190 4.605002783 4.972146789 CORE 53 O O 0.0000 53 O -1.685565474 12.166122415 8.685676255 CORE 54 O O 0.0000 54 O 0.102084313 4.724789425 4.799381414 CORE 55 O O 0.0000 55 O -9.434836744 11.994581231 8.700326081 CORE 56 O O 0.0000 56 O -1.631311785 11.949482840 6.027102254 CORE 57 O O 0.0000 57 O -11.223252657 4.856705495 9.945011472 CORE 58 O O 0.0000 58 O -9.672826532 11.924825993 6.050911778 CORE 59 O O 0.0000 59 O 0.169149876 4.645142936 9.741415644 CORE 60 O O 0.0000 60 O -10.606017426 8.544486488 5.518429258 CORE 61 O O 0.0000 61 O -0.761227270 15.633778493 9.202890635 CORE 62 O O 0.0000 62 O -10.514520893 8.394765762 8.721002117 CORE 63 O O 0.0000 63 O -0.834954531 15.607456311 5.514784336 CORE 64 O O 0.0000 64 O -0.711572262 8.422891084 5.380089659 CORE 65 O O 0.0000 65 O -10.453680753 15.705447576 9.197501986 CORE 66 O O 0.0000 66 O -10.293188427 15.423811502 5.494192665 CORE 67 O O 0.0000 67 O -0.876548378 8.485022222 9.110259987 CORE 68 O O 0.0000 68 O -12.565776903 9.168574573 7.289487889 CORE 69 O O 0.0000 69 O -2.542455340 16.079978007 3.520701273 CORE 70 O O 0.0000 70 O -9.004664804 7.825172749 3.211553102 CORE 71 O O 0.0000 71 O 1.029195081 15.058857647 7.337004772 CORE 72 O O 0.0000 72 O -2.499331358 7.863074725 3.519954244 CORE 73 O O 0.0000 73 O -12.226151393 15.167045612 7.287517011 CORE 74 O O 0.0000 74 O 1.034179230 8.907213553 7.314567666 CORE 75 O O 0.0000 75 O -8.627194479 16.029099449 3.498098253 CORE 76 O O 0.0000 76 O -13.216670679 8.431947289 4.868891447 CORE 77 O O 0.0000 77 O -3.365219981 15.555565982 8.661495270 CORE 78 O O 0.0000 78 O 1.752951267 15.649686169 4.866660098 CORE 79 O O 0.0000 79 O -7.887275171 8.419483872 8.441316242 CORE 80 O O 0.0000 80 O -3.313585862 8.419558396 6.003461762 CORE 81 O O 0.0000 81 O -13.077954152 15.540100406 9.742113225 CORE 82 O O 0.0000 82 O -7.674167254 15.745468663 5.936072318 CORE 83 O O 0.0000 83 O 1.691181422 8.429942920 9.819818893 CORE 84 O O 0.0000 84 O -7.684388425 8.543945214 5.798774755 CORE 85 O O 0.0000 85 O 1.841138890 15.649812730 9.793336193 CORE 86 O O 0.0000 86 O -3.464642002 15.658425538 5.987423923 CORE 87 O O 0.0000 87 O -12.964926034 8.442184494 9.811131147 CORE 88 O O 0.0000 88 O 1.915545868 8.404221400 4.880943789 CORE 89 O O 0.0000 89 O -7.837532215 15.658300562 8.613155971 CORE 90 O O 0.0000 90 O -12.874491223 15.741251630 4.791556250 CORE 91 O O 0.0000 91 O -3.465519939 8.296090662 8.678298776 CORE 92 O O 0.0000 92 O -9.421925183 6.016645721 5.604216529 CORE 93 O O 0.0000 93 O 0.612964286 13.352762489 9.340086032 CORE 94 O O 0.0000 94 O -2.190964980 17.910653862 5.399858686 CORE 95 O O 0.0000 95 O -11.716361625 10.711857683 9.286291293 CORE 96 O O 0.0000 96 O 0.656268589 10.701464510 5.385568681 CORE 97 O O 0.0000 97 O -9.003995670 17.941049794 9.301761177 CORE 98 O O 0.0000 98 O -11.874099284 13.343006448 5.385403680 CORE 99 O O 0.0000 99 O -2.030751701 6.099353180 9.194433920 CORE 100 O O 0.0000 100 O -11.986554684 10.775068917 5.256203315 CORE 101 O O 0.0000 101 O -2.176466321 17.881862868 9.196516091 CORE 102 O O 0.0000 102 O 0.555979794 13.336678233 5.381172850 CORE 103 O O 0.0000 103 O -9.127658718 6.112456612 8.805839550 CORE 104 O O 0.0000 104 O -2.073329522 6.135995452 5.487582145 CORE 105 O O 0.0000 105 O -11.686351464 13.348909717 9.167012413 CORE 106 O O 0.0000 106 O -9.222413163 17.831644216 5.369732965 CORE 107 O O 0.0000 107 O 0.533712297 10.732526547 9.176006425 CORE 108 O O 0.0000 108 O2 12.622870897 5.591377131 4.821585511 CORE 109 O2 O2 0.0000 109 O2 13.484000918 7.613246218 2.946916204 CORE 110 O2 O2 0.0000 110 H 13.112892845 6.763451253 3.277195550 CORE 111 H H 0.0000 111 H 13.415877481 8.215162846 3.716411992 CORE 112 H H 0.0000 112 C 13.902245848 5.812112798 5.490565163 CORE 113 C C 0.0000 113 C 13.131036617 4.574419027 5.733230745 CORE 114 C C 0.0000 114 H 13.460177306 3.627936034 5.258762915 CORE 115 H H 0.0000 115 H 12.576284819 4.462942772 6.688061465 CORE 116 H H 0.0000 116 H 14.782166066 5.769420948 4.821992269 CORE 117 H H 0.0000 117 H 13.882102759 6.622034572 6.244516820 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.340100940 4.781241731 3.520310338 CORE 1 Si Si 0.0000 1 Si -2.593768460 12.017210645 7.340539314 CORE 2 Si Si 0.0000 2 Si 1.074391510 4.756602758 3.488960312 CORE 3 Si Si 0.0000 3 Si -8.610596238 12.026047602 7.290000920 CORE 4 Si Si 0.0000 4 Si -13.657373821 7.710655993 11.083581434 CORE 5 Si Si 0.0000 5 Si -4.000888808 14.875231145 7.321447938 CORE 6 Si Si 0.0000 6 Si -7.168353989 9.205182538 7.206946085 CORE 7 Si Si 0.0000 7 Si 2.430946196 16.324673425 3.546847886 CORE 8 Si Si 0.0000 8 Si -13.620982933 16.320810131 3.463213153 CORE 9 Si Si 0.0000 9 Si -3.948047092 9.106391831 7.350671670 CORE 10 Si Si 0.0000 10 Si -7.225017867 14.938266231 7.280341656 CORE 11 Si Si 0.0000 11 Si 2.379286673 7.693290410 3.485715453 CORE 12 Si Si 0.0000 12 Si -10.224070047 4.618762518 5.831262821 CORE 13 Si Si 0.0000 13 Si -0.330002460 12.047730832 9.581742973 CORE 14 Si Si 0.0000 14 Si -10.811337840 12.033555664 9.569355153 CORE 15 Si Si 0.0000 15 Si -1.224443469 4.768099812 5.740997561 CORE 16 Si Si 0.0000 16 Si -10.008901998 4.738137908 8.868496317 CORE 17 Si Si 0.0000 17 Si -0.299331249 11.986569086 5.087050607 CORE 18 Si Si 0.0000 18 Si -10.971338852 12.030170073 5.065165405 CORE 19 Si Si 0.0000 19 Si -1.201614416 4.737683411 8.863177503 CORE 20 Si Si 0.0000 20 Ti -9.086605450 7.688106869 5.006228795 CORE 21 Ti Ti 0.0000 21 Si 0.680974179 14.928088559 8.918980091 CORE 22 Si Si 0.0000 22 Si -2.257914499 16.304556501 5.105893912 CORE 23 Si Si 0.0000 23 Si -11.943675300 9.177368574 8.790715110 CORE 24 Si Si 0.0000 24 Si 0.728152413 9.109276077 5.735904073 CORE 25 Si Si 0.0000 25 Si -8.983087225 16.323576608 9.548279587 CORE 26 Si Si 0.0000 26 Si -11.828936341 14.932208868 5.731161582 CORE 27 Si Si 0.0000 27 Si -2.231855246 7.684053156 9.536786071 CORE 28 Si Si 0.0000 28 Si -12.086949132 9.219355111 5.735225662 CORE 29 Si Si 0.0000 29 Si -2.218282442 16.284996418 9.547263719 CORE 30 Si Si 0.0000 30 Si 0.626986258 14.919362595 5.770044426 CORE 31 Si Si 0.0000 31 Si -9.114212735 7.695929749 9.202727992 CORE 32 Si Si 0.0000 32 Si -2.152685432 7.723262981 5.101172493 CORE 33 Si Si 0.0000 33 Si -11.860466437 14.939890916 8.852386894 CORE 34 Si Si 0.0000 34 Si -8.957545651 16.255114228 5.072276555 CORE 35 Si Si 0.0000 35 Si 0.601234341 9.134126225 8.861247020 CORE 36 Si Si 0.0000 36 O -15.262976796 7.793385795 3.350556812 CORE 37 O O 0.0000 37 O -5.611512497 14.979216924 7.392143555 CORE 38 O O 0.0000 38 O -15.218194703 16.100069129 3.596638719 CORE 39 O O 0.0000 39 O -5.558675400 9.057690476 7.278068239 CORE 40 O O 0.0000 40 O -10.640263700 4.419716855 7.397974411 CORE 41 O O 0.0000 41 O -0.782642425 11.957639998 3.533791087 CORE 42 O O 0.0000 42 O -10.409175011 12.089601474 3.536872314 CORE 43 O O 0.0000 43 O -0.757668374 4.703502889 7.297887550 CORE 44 O O 0.0000 44 O -13.207027615 6.148609071 3.499233022 CORE 45 O O 0.0000 45 O -3.576405367 13.302845971 7.244361726 CORE 46 O O 0.0000 46 O -7.561087753 10.789387367 7.261933712 CORE 47 O O 0.0000 47 O 2.101343637 17.921057557 3.538944444 CORE 48 O O 0.0000 48 O -3.468281533 10.659153353 7.421266416 CORE 49 O O 0.0000 49 O -13.317587425 17.916346099 3.310687235 CORE 50 O O 0.0000 50 O 1.915637087 6.135366825 3.490075378 CORE 51 O O 0.0000 51 O -7.766910642 13.406867499 7.177233208 CORE 52 O O 0.0000 52 O -11.610128184 4.600132330 4.967625972 CORE 53 O O 0.0000 53 O -1.683379677 12.162234471 8.687062366 CORE 54 O O 0.0000 54 O 0.101156148 4.724610394 4.797622778 CORE 55 O O 0.0000 55 O -9.428948293 11.996365776 8.705966148 CORE 56 O O 0.0000 56 O -1.626776612 11.951545157 6.026819950 CORE 57 O O 0.0000 57 O -11.224034564 4.857560289 9.943930486 CORE 58 O O 0.0000 58 O -9.678650513 11.922320423 6.054951515 CORE 59 O O 0.0000 59 O 0.169780713 4.647067736 9.741380270 CORE 60 O O 0.0000 60 O -10.609148324 8.552492435 5.516318483 CORE 61 O O 0.0000 61 O -0.763139410 15.630752695 9.205679516 CORE 62 O O 0.0000 62 O -10.514387528 8.392396844 8.724657537 CORE 63 O O 0.0000 63 O -0.833679771 15.607861077 5.510291970 CORE 64 O O 0.0000 64 O -0.709281389 8.423527495 5.383692893 CORE 65 O O 0.0000 65 O -10.455946800 15.704936718 9.200941209 CORE 66 O O 0.0000 66 O -10.294282673 15.424204880 5.491408499 CORE 67 O O 0.0000 67 O -0.868494144 8.482316719 9.116795804 CORE 68 O O 0.0000 68 O -12.561983800 9.166625845 7.290227310 CORE 69 O O 0.0000 69 O -2.549515207 16.081902087 3.520075807 CORE 70 O O 0.0000 70 O -8.997582420 7.821841647 3.213777833 CORE 71 O O 0.0000 71 O 1.022189483 15.064770430 7.337768081 CORE 72 O O 0.0000 72 O -2.492574015 7.866184129 3.520888258 CORE 73 O O 0.0000 73 O -12.226648672 15.169125227 7.286777362 CORE 74 O O 0.0000 74 O 1.037998505 8.908529619 7.314866858 CORE 75 O O 0.0000 75 O -8.628464428 16.032156383 3.497726108 CORE 76 O O 0.0000 76 O -13.215787546 8.433548623 4.869090147 CORE 77 O O 0.0000 77 O -3.367232192 15.556736315 8.664670599 CORE 78 O O 0.0000 78 O 1.755533117 15.650547449 4.867297582 CORE 79 O O 0.0000 79 O -7.886045636 8.418429434 8.437915892 CORE 80 O O 0.0000 80 O -3.312662508 8.420098517 6.003785145 CORE 81 O O 0.0000 81 O -13.081348507 15.539755750 9.742030231 CORE 82 O O 0.0000 82 O -7.676750451 15.745728128 5.932255016 CORE 83 O O 0.0000 83 O 1.699592065 8.430940276 9.817930706 CORE 84 O O 0.0000 84 O -7.682571738 8.545474042 5.797971433 CORE 85 O O 0.0000 85 O 1.838817611 15.648331183 9.794386597 CORE 86 O O 0.0000 86 O -3.462521059 15.658228632 5.987085706 CORE 87 O O 0.0000 87 O -12.966977889 8.444964666 9.810951465 CORE 88 O O 0.0000 88 O 1.915966169 8.404766566 4.879745500 CORE 89 O O 0.0000 89 O -7.841592625 15.650840213 8.612828328 CORE 90 O O 0.0000 90 O -12.875556024 15.739082500 4.790848475 CORE 91 O O 0.0000 91 O -3.458630001 8.301076577 8.678480817 CORE 92 O O 0.0000 92 O -9.430728607 6.013916434 5.607405094 CORE 93 O O 0.0000 93 O 0.612493949 13.353784494 9.337162503 CORE 94 O O 0.0000 94 O -2.191847343 17.911652371 5.402914733 CORE 95 O O 0.0000 95 O -11.712704003 10.711143000 9.286715395 CORE 96 O O 0.0000 96 O 0.659988755 10.702604572 5.385275118 CORE 97 O O 0.0000 97 O -9.001392459 17.938591937 9.294433069 CORE 98 O O 0.0000 98 O -11.878090798 13.344137861 5.387679075 CORE 99 O O 0.0000 99 O -2.030901038 6.098269480 9.194741784 CORE 100 O O 0.0000 100 O -11.986907821 10.773862835 5.251854345 CORE 101 O O 0.0000 101 O -2.175306643 17.882513693 9.194118296 CORE 102 O O 0.0000 102 O 0.559283122 13.339135225 5.381267028 CORE 103 O O 0.0000 103 O -9.128478343 6.110682734 8.804301067 CORE 104 O O 0.0000 104 O -2.071864241 6.135578577 5.489116977 CORE 105 O O 0.0000 105 O -11.686169410 13.347906451 9.165632083 CORE 106 O O 0.0000 106 O -9.221836403 17.831955431 5.368947672 CORE 107 O O 0.0000 107 O 0.536850507 10.731904407 9.176677686 CORE 108 O O 0.0000 108 O2 12.638154928 5.593578262 4.820979216 CORE 109 O2 O2 0.0000 109 O2 13.502511683 7.603025014 2.949592043 CORE 110 O2 O2 0.0000 110 H 13.092877154 6.772371095 3.269180358 CORE 111 H H 0.0000 111 H 13.406789622 8.216634303 3.699225311 CORE 112 H H 0.0000 112 C 13.898716204 5.805332248 5.496958040 CORE 113 C C 0.0000 113 C 13.124545811 4.570419369 5.733238961 CORE 114 C C 0.0000 114 H 13.456784105 3.625735335 5.254904002 CORE 115 H H 0.0000 115 H 12.559401758 4.464212422 6.680264752 CORE 116 H H 0.0000 116 H 14.783389250 5.764433736 4.827459652 CORE 117 H H 0.0000 117 H 13.894934455 6.606807704 6.260555496 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.341771560 4.782750810 3.521959354 CORE 1 Si Si 0.0000 1 Si -2.594934873 12.016536467 7.341039869 CORE 2 Si Si 0.0000 2 Si 1.075127807 4.756827340 3.488917940 CORE 3 Si Si 0.0000 3 Si -8.610826403 12.026568262 7.290451343 CORE 4 Si Si 0.0000 4 Si -13.658131671 7.710671849 11.084209714 CORE 5 Si Si 0.0000 5 Si -4.000849549 14.875391293 7.321399784 CORE 6 Si Si 0.0000 6 Si -7.169348163 9.205241927 7.207214240 CORE 7 Si Si 0.0000 7 Si 2.430536671 16.324853754 3.547258067 CORE 8 Si Si 0.0000 8 Si -13.620856496 16.320787355 3.462770718 CORE 9 Si Si 0.0000 9 Si -3.948424093 9.105363339 7.350954963 CORE 10 Si Si 0.0000 10 Si -7.224723425 14.938721592 7.282781975 CORE 11 Si Si 0.0000 11 Si 2.380672474 7.693330339 3.485520481 CORE 12 Si Si 0.0000 12 Si -10.224387582 4.618832141 5.832180783 CORE 13 Si Si 0.0000 13 Si -0.330615400 12.048209545 9.582065824 CORE 14 Si Si 0.0000 14 Si -10.812183061 12.033376488 9.568968022 CORE 15 Si Si 0.0000 15 Si -1.223613066 4.768012170 5.740682394 CORE 16 Si Si 0.0000 16 Si -10.008150498 4.739980400 8.870034801 CORE 17 Si Si 0.0000 17 Si -0.300587919 11.986166049 5.086842550 CORE 18 Si Si 0.0000 18 Si -10.970028875 12.029591754 5.063940490 CORE 19 Si Si 0.0000 19 Si -1.201264550 4.737378107 8.863203063 CORE 20 Si Si 0.0000 20 Ti -9.088028008 7.689584236 5.007700335 CORE 21 Ti Ti 0.0000 21 Si 0.682289930 14.928142902 8.918817221 CORE 22 Si Si 0.0000 22 Si -2.257062350 16.304005281 5.106519377 CORE 23 Si Si 0.0000 23 Si -11.944343664 9.176661387 8.790743637 CORE 24 Si Si 0.0000 24 Si 0.728073510 9.108451265 5.735407398 CORE 25 Si Si 0.0000 25 Si -8.983612409 16.324854474 9.547890630 CORE 26 Si Si 0.0000 26 Si -11.830395656 14.931621900 5.731417869 CORE 27 Si Si 0.0000 27 Si -2.233472752 7.683738770 9.535816455 CORE 28 Si Si 0.0000 28 Si -12.087529163 9.218114290 5.734053770 CORE 29 Si Si 0.0000 29 Si -2.216910690 16.284773855 9.546848137 CORE 30 Si Si 0.0000 30 Si 0.627412525 14.918797681 5.770482298 CORE 31 Si Si 0.0000 31 Si -9.116356002 7.697436522 9.202860814 CORE 32 Si Si 0.0000 32 Si -2.153558750 7.723210223 5.100618687 CORE 33 Si Si 0.0000 33 Si -11.859871203 14.939642550 8.852356617 CORE 34 Si Si 0.0000 34 Si -8.956973125 16.254555801 5.072407475 CORE 35 Si Si 0.0000 35 Si 0.599651091 9.134003123 8.861466868 CORE 36 Si Si 0.0000 36 O -15.262773766 7.793304640 3.349059636 CORE 37 O O 0.0000 37 O -5.611549447 14.979681511 7.392461917 CORE 38 O O 0.0000 38 O -15.217321192 16.098653025 3.596952897 CORE 39 O O 0.0000 39 O -5.559730579 9.056656939 7.278002513 CORE 40 O O 0.0000 40 O -10.638968541 4.421789983 7.399307804 CORE 41 O O 0.0000 41 O -0.784103857 11.957741045 3.533918660 CORE 42 O O 0.0000 42 O -10.408584781 12.089720972 3.535880257 CORE 43 O O 0.0000 43 O -0.758817851 4.702803918 7.297426248 CORE 44 O O 0.0000 44 O -13.207777575 6.148562079 3.499196507 CORE 45 O O 0.0000 45 O -3.577629899 13.303003668 7.244396338 CORE 46 O O 0.0000 46 O -7.560457493 10.790338019 7.263147900 CORE 47 O O 0.0000 47 O 2.102288930 17.921087396 3.538897431 CORE 48 O O 0.0000 48 O -3.468699718 10.658441409 7.422261972 CORE 49 O O 0.0000 49 O -13.317677490 17.916716702 3.313882038 CORE 50 O O 0.0000 50 O 1.916162079 6.135712346 3.489622977 CORE 51 O O 0.0000 51 O -7.768284126 13.409100774 7.179406286 CORE 52 O O 0.0000 52 O -11.610019067 4.602176917 4.969523745 CORE 53 O O 0.0000 53 O -1.684297257 12.163866652 8.686480490 CORE 54 O O 0.0000 54 O 0.101545851 4.724685639 4.798361058 CORE 55 O O 0.0000 55 O -9.431420257 11.995616642 8.703598478 CORE 56 O O 0.0000 56 O -1.628680476 11.950679408 6.026938471 CORE 57 O O 0.0000 57 O -11.223706444 4.857201506 9.944384257 CORE 58 O O 0.0000 58 O -9.676205684 11.923372266 6.053255714 CORE 59 O O 0.0000 59 O 0.169515908 4.646259790 9.741395104 CORE 60 O O 0.0000 60 O -10.607833920 8.549131638 5.517204572 CORE 61 O O 0.0000 61 O -0.762336719 15.632022922 9.204508766 CORE 62 O O 0.0000 62 O -10.514443530 8.393391317 8.723123009 CORE 63 O O 0.0000 63 O -0.834214962 15.607691127 5.512177875 CORE 64 O O 0.0000 64 O -0.710243040 8.423260246 5.382180274 CORE 65 O O 0.0000 65 O -10.454995541 15.705151209 9.199497435 CORE 66 O O 0.0000 66 O -10.293823305 15.424039687 5.492577272 CORE 67 O O 0.0000 67 O -0.871875221 8.483452456 9.114052109 CORE 68 O O 0.0000 68 O -12.563576095 9.167443881 7.289916936 CORE 69 O O 0.0000 69 O -2.546551545 16.081094429 3.520338332 CORE 70 O O 0.0000 70 O -9.000555513 7.823240021 3.212843895 CORE 71 O O 0.0000 71 O 1.025130245 15.062288356 7.337447665 CORE 72 O O 0.0000 72 O -2.495410664 7.864878730 3.520496182 CORE 73 O O 0.0000 73 O -12.226439869 15.168252270 7.287087888 CORE 74 O O 0.0000 74 O 1.036395241 8.907977246 7.314741263 CORE 75 O O 0.0000 75 O -8.627931353 16.030873039 3.497882284 CORE 76 O O 0.0000 76 O -13.216158389 8.432876464 4.869006772 CORE 77 O O 0.0000 77 O -3.366387549 15.556245061 8.663337586 CORE 78 O O 0.0000 78 O 1.754449456 15.650185928 4.867029961 CORE 79 O O 0.0000 79 O -7.886561776 8.418872110 8.439343310 CORE 80 O O 0.0000 80 O -3.313050093 8.419871773 6.003649356 CORE 81 O O 0.0000 81 O -13.079923640 15.539900474 9.742065072 CORE 82 O O 0.0000 82 O -7.675666020 15.745619153 5.933857477 CORE 83 O O 0.0000 83 O 1.696061265 8.430521527 9.818723378 CORE 84 O O 0.0000 84 O -7.683334400 8.544832153 5.798308661 CORE 85 O O 0.0000 85 O 1.839791963 15.648953035 9.793945607 CORE 86 O O 0.0000 86 O -3.463411505 15.658311373 5.987227657 CORE 87 O O 0.0000 87 O -12.966116502 8.443797504 9.811026928 CORE 88 O O 0.0000 88 O 1.915789697 8.404537804 4.880248489 CORE 89 O O 0.0000 89 O -7.839888134 15.653971959 8.612965866 CORE 90 O O 0.0000 90 O -12.875108973 15.739993079 4.791145613 CORE 91 O O 0.0000 91 O -3.461522266 8.298983556 8.678404440 CORE 92 O O 0.0000 92 O -9.427033074 6.015062117 5.606066604 CORE 93 O O 0.0000 93 O 0.612691398 13.353355511 9.338389775 CORE 94 O O 0.0000 94 O -2.191476886 17.911233191 5.401631852 CORE 95 O O 0.0000 95 O -11.714239334 10.711442971 9.286537387 CORE 96 O O 0.0000 96 O 0.658427059 10.702126003 5.385398355 CORE 97 O O 0.0000 97 O -9.002485165 17.939623744 9.297509352 CORE 98 O O 0.0000 98 O -11.876415174 13.343662895 5.386723836 CORE 99 O O 0.0000 99 O -2.030838301 6.098724409 9.194612537 CORE 100 O O 0.0000 100 O -11.986759638 10.774369081 5.253680001 CORE 101 O O 0.0000 101 O -2.175793531 17.882240390 9.195124883 CORE 102 O O 0.0000 102 O 0.557896359 13.338103851 5.381227470 CORE 103 O O 0.0000 103 O -9.128134251 6.111427400 8.804946920 CORE 104 O O 0.0000 104 O -2.072479297 6.135753572 5.488472646 CORE 105 O O 0.0000 105 O -11.686245811 13.348327506 9.166211525 CORE 106 O O 0.0000 106 O -9.222078500 17.831824689 5.369277369 CORE 107 O O 0.0000 107 O 0.535533217 10.732165602 9.176395915 CORE 108 O O 0.0000 108 O2 12.631738983 5.592654277 4.821233677 CORE 109 O2 O2 0.0000 109 O2 13.494741115 7.607315850 2.948468761 CORE 110 O2 O2 0.0000 110 H 13.101279522 6.768626578 3.272545030 CORE 111 H H 0.0000 111 H 13.410604664 8.216016632 3.706440072 CORE 112 H H 0.0000 112 C 13.900198035 5.808178583 5.494274366 CORE 113 C C 0.0000 113 C 13.127270456 4.572098398 5.733235462 CORE 114 C C 0.0000 114 H 13.458208587 3.626659176 5.256523883 CORE 115 H H 0.0000 115 H 12.566489145 4.463679365 6.683537757 CORE 116 H H 0.0000 116 H 14.782875805 5.766527333 4.825164479 CORE 117 H H 0.0000 117 H 13.889547902 6.613199921 6.253822577 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.341186911 4.780137273 3.520984261 CORE 1 Si Si 0.0000 1 Si -2.592637650 12.017230537 7.340608920 CORE 2 Si Si 0.0000 2 Si 1.074762352 4.756599443 3.489275707 CORE 3 Si Si 0.0000 3 Si -8.610661284 12.026069512 7.289593781 CORE 4 Si Si 0.0000 4 Si -13.657275481 7.710594153 11.085102421 CORE 5 Si Si 0.0000 5 Si -4.000364201 14.875071574 7.321893416 CORE 6 Si Si 0.0000 6 Si -7.167725077 9.205573466 7.206580863 CORE 7 Si Si 0.0000 7 Si 2.431207729 16.324618505 3.546882119 CORE 8 Si Si 0.0000 8 Si -13.621416705 16.320784905 3.462397279 CORE 9 Si Si 0.0000 9 Si -3.947737639 9.106896059 7.350890530 CORE 10 Si Si 0.0000 10 Si -7.225765518 14.937098060 7.280593151 CORE 11 Si Si 0.0000 11 Si 2.379474885 7.693374880 3.486102813 CORE 12 Si Si 0.0000 12 Si -10.224823664 4.618234795 5.831003186 CORE 13 Si Si 0.0000 13 Si -0.329093732 12.047965359 9.581514072 CORE 14 Si Si 0.0000 14 Si -10.811509309 12.035158006 9.569172123 CORE 15 Si Si 0.0000 15 Si -1.223592282 4.767870473 5.741349547 CORE 16 Si Si 0.0000 16 Si -10.008693772 4.737879163 8.868521649 CORE 17 Si Si 0.0000 17 Si -0.297944678 11.987029060 5.087322565 CORE 18 Si Si 0.0000 18 Si -10.972216019 12.029773091 5.066177012 CORE 19 Si Si 0.0000 19 Si -1.201052090 4.737530182 8.863369814 CORE 20 Si Si 0.0000 20 Ti -9.090576758 7.689532775 5.008293546 CORE 21 Ti Ti 0.0000 21 Si 0.680988420 14.928654337 8.918742594 CORE 22 Si Si 0.0000 22 Si -2.256788692 16.304941086 5.105705938 CORE 23 Si Si 0.0000 23 Si -11.943178021 9.175509649 8.790022397 CORE 24 Si Si 0.0000 24 Si 0.729509732 9.109108722 5.735883610 CORE 25 Si Si 0.0000 25 Si -8.983994221 16.323367450 9.547419058 CORE 26 Si Si 0.0000 26 Si -11.831011097 14.932829855 5.732083881 CORE 27 Si Si 0.0000 27 Si -2.230475604 7.683416601 9.536453407 CORE 28 Si Si 0.0000 28 Si -12.088143257 9.219600162 5.734508377 CORE 29 Si Si 0.0000 29 Si -2.217290770 16.285159161 9.547297951 CORE 30 Si Si 0.0000 30 Si 0.627612861 14.920392240 5.770361039 CORE 31 Si Si 0.0000 31 Si -9.114171744 7.694847202 9.201836959 CORE 32 Si Si 0.0000 32 Si -2.152146776 7.722925532 5.101524326 CORE 33 Si Si 0.0000 33 Si -11.861771988 14.941201360 8.853542887 CORE 34 Si Si 0.0000 34 Si -8.957477718 16.256663236 5.071168336 CORE 35 Si Si 0.0000 35 Si 0.603275419 9.133959014 8.861063077 CORE 36 Si Si 0.0000 36 O -15.263535081 7.793015336 3.350528437 CORE 37 O O 0.0000 37 O -5.611948771 14.979759063 7.392098824 CORE 38 O O 0.0000 38 O -15.216327403 16.100371262 3.597836551 CORE 39 O O 0.0000 39 O -5.558354593 9.057595915 7.278457044 CORE 40 O O 0.0000 40 O -10.639735821 4.419489391 7.397207984 CORE 41 O O 0.0000 41 O -0.781972907 11.957558843 3.534032160 CORE 42 O O 0.0000 42 O -10.409511021 12.089080958 3.537610214 CORE 43 O O 0.0000 43 O -0.758374842 4.703572656 7.297780897 CORE 44 O O 0.0000 44 O -13.205860047 6.146533348 3.498594015 CORE 45 O O 0.0000 45 O -3.575558607 13.304197208 7.244586747 CORE 46 O O 0.0000 46 O -7.561711469 10.789376412 7.260258831 CORE 47 O O 0.0000 47 O 2.101503175 17.920435417 3.538649208 CORE 48 O O 0.0000 48 O -3.468292310 10.660185449 7.420633952 CORE 49 O O 0.0000 49 O -13.318054491 17.915134973 3.308305035 CORE 50 O O 0.0000 50 O 1.915999655 6.135345491 3.490296139 CORE 51 O O 0.0000 51 O -7.765827751 13.406942888 7.176833373 CORE 52 O O 0.0000 52 O -11.608052081 4.599165534 4.969069974 CORE 53 O O 0.0000 53 O -1.684155233 12.161138374 8.686692960 CORE 54 O O 0.0000 54 O 0.099724545 4.724724126 4.798669607 CORE 55 O O 0.0000 55 O -9.426448425 11.996571763 8.705748582 CORE 56 O O 0.0000 56 O -1.626841851 11.951476831 6.027436439 CORE 57 O O 0.0000 57 O -11.222184969 4.858379767 9.943581771 CORE 58 O O 0.0000 58 O -9.678937450 11.921800915 6.057226301 CORE 59 O O 0.0000 59 O 0.168966861 4.647891971 9.740533891 CORE 60 O O 0.0000 60 O -10.606608811 8.552790388 5.514349127 CORE 61 O O 0.0000 61 O -0.764836973 15.630384110 9.206809645 CORE 62 O O 0.0000 62 O -10.512861242 8.391174906 8.725816192 CORE 63 O O 0.0000 63 O -0.835180077 15.608391683 5.509749880 CORE 64 O O 0.0000 64 O -0.709276193 8.423526198 5.384358905 CORE 65 O O 0.0000 65 O -10.455592700 15.705184075 9.201604558 CORE 66 O O 0.0000 66 O -10.292967307 15.424293530 5.491301390 CORE 67 O O 0.0000 67 O -0.867193404 8.481786977 9.117799805 CORE 68 O O 0.0000 68 O -12.561703600 9.165727374 7.290066646 CORE 69 O O 0.0000 69 O -2.550198582 16.081215081 3.520202391 CORE 70 O O 0.0000 70 O -8.994322392 7.821583335 3.212686578 CORE 71 O O 0.0000 71 O 1.019882061 15.066117055 7.337727230 CORE 72 O O 0.0000 72 O -2.491959537 7.866953011 3.520865741 CORE 73 O O 0.0000 73 O -12.226440254 15.168825112 7.287825104 CORE 74 O O 0.0000 74 O 1.038534851 8.908579638 7.314617646 CORE 75 O O 0.0000 75 O -8.628742127 16.032076526 3.497255602 CORE 76 O O 0.0000 76 O -13.214667705 8.433614787 4.869029289 CORE 77 O O 0.0000 77 O -3.368516190 15.556791668 8.664858954 CORE 78 O O 0.0000 78 O 1.755277742 15.650694191 4.867775924 CORE 79 O O 0.0000 79 O -7.885438471 8.418912904 8.437810380 CORE 80 O O 0.0000 80 O -3.313278911 8.420977239 6.003712268 CORE 81 O O 0.0000 81 O -13.080114161 15.541122556 9.742919438 CORE 82 O O 0.0000 82 O -7.675765322 15.744991247 5.932171489 CORE 83 O O 0.0000 83 O 1.700247535 8.432695991 9.816954776 CORE 84 O O 0.0000 84 O -7.681998443 8.545647163 5.797383547 CORE 85 O O 0.0000 85 O 1.837924279 15.648569314 9.793966299 CORE 86 O O 0.0000 86 O -3.462611316 15.657740405 5.987329594 CORE 87 O O 0.0000 87 O -12.966057614 8.446204045 9.809970286 CORE 88 O O 0.0000 88 O 1.914601923 8.405670226 4.880172721 CORE 89 O O 0.0000 89 O -7.842364524 15.649320611 8.611834445 CORE 90 O O 0.0000 90 O -12.875120713 15.738483279 4.789549695 CORE 91 O O 0.0000 91 O -3.457911217 8.301516226 8.678032676 CORE 92 O O 0.0000 92 O -9.429437682 6.013924073 5.607395889 CORE 93 O O 0.0000 93 O 0.612153320 13.353081487 9.336615240 CORE 94 O O 0.0000 94 O -2.192468558 17.911644443 5.402663466 CORE 95 O O 0.0000 95 O -11.711586279 10.710494048 9.287138661 CORE 96 O O 0.0000 96 O 0.659942569 10.702624753 5.385433424 CORE 97 O O 0.0000 97 O -8.999949309 17.937625140 9.294191844 CORE 98 O O 0.0000 98 O -11.878770324 13.344246692 5.387278479 CORE 99 O O 0.0000 99 O -2.031206642 6.098553739 9.195303729 CORE 100 O O 0.0000 100 O -11.986864521 10.773520485 5.250465267 CORE 101 O O 0.0000 101 O -2.175753502 17.882241831 9.194409577 CORE 102 O O 0.0000 102 O 0.559284854 13.338739541 5.381151626 CORE 103 O O 0.0000 103 O -9.130416463 6.108080153 8.804609007 CORE 104 O O 0.0000 104 O -2.071739152 6.135732239 5.489293389 CORE 105 O O 0.0000 105 O -11.687637770 13.349332501 9.165465942 CORE 106 O O 0.0000 106 O -9.221792910 17.832927849 5.368965853 CORE 107 O O 0.0000 107 O 0.537378771 10.731831469 9.177092584 CORE 108 O O 0.0000 108 O2 12.635149697 5.595534342 4.821607192 CORE 109 O2 O2 0.0000 109 O2 13.505433008 7.599950061 2.948099355 CORE 110 O2 O2 0.0000 110 H 13.091519643 6.772866385 3.270690238 CORE 111 H H 0.0000 111 H 13.404395599 8.217059394 3.698895158 CORE 112 H H 0.0000 112 C 13.903103579 5.803196560 5.497655165 CORE 113 C C 0.0000 113 C 13.124200179 4.568251968 5.731695533 CORE 114 C C 0.0000 114 H 13.455488561 3.624868865 5.253188803 CORE 115 H H 0.0000 115 H 12.554468992 4.465255473 6.679548913 CORE 116 H H 0.0000 116 H 14.782558462 5.764348978 4.829592411 CORE 117 H H 0.0000 117 H 13.896706109 6.604737747 6.263483058 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.340251625 4.775955701 3.519424097 CORE 1 Si Si 0.0000 1 Si -2.588962131 12.018341049 7.339919402 CORE 2 Si Si 0.0000 2 Si 1.074177895 4.756234750 3.489848150 CORE 3 Si Si 0.0000 3 Si -8.610397056 12.025271656 7.288221744 CORE 4 Si Si 0.0000 4 Si -13.655905653 7.710470043 11.086530676 CORE 5 Si Si 0.0000 5 Si -3.999587683 14.874560139 7.322683198 CORE 6 Si Si 0.0000 6 Si -7.165128408 9.206104216 7.205567581 CORE 7 Si Si 0.0000 7 Si 2.432281576 16.324241992 3.546280692 CORE 8 Si Si 0.0000 8 Si -13.622313309 16.320780869 3.461799733 CORE 9 Si Si 0.0000 9 Si -3.946639352 9.109348150 7.350787376 CORE 10 Si Si 0.0000 10 Si -7.227432675 14.934500668 7.277091092 CORE 11 Si Si 0.0000 11 Si 2.377558897 7.693446378 3.487034545 CORE 12 Si Si 0.0000 12 Si -10.225521279 4.617278953 5.829119107 CORE 13 Si Si 0.0000 13 Si -0.326659295 12.047574432 9.580631255 CORE 14 Si Si 0.0000 14 Si -10.810431229 12.038008521 9.569498625 CORE 15 Si Si 0.0000 15 Si -1.223559181 4.767643873 5.742416992 CORE 16 Si Si 0.0000 16 Si -10.009563242 4.734517069 8.866100576 CORE 17 Si Si 0.0000 17 Si -0.293715301 11.988409992 5.088090666 CORE 18 Si Si 0.0000 18 Si -10.975715450 12.030062972 5.069755523 CORE 19 Si Si 0.0000 19 Si -1.200712231 4.737773647 8.863636523 CORE 20 Si Si 0.0000 20 Ti -9.094654680 7.689450323 5.009242698 CORE 21 Ti Ti 0.0000 21 Si 0.678905966 14.929472518 8.918623161 CORE 22 Si Si 0.0000 22 Si -2.256350686 16.306438201 5.104404495 CORE 23 Si Si 0.0000 23 Si -11.941313030 9.173667013 8.788868306 CORE 24 Si Si 0.0000 24 Si 0.731807725 9.110160565 5.736645549 CORE 25 Si Si 0.0000 25 Si -8.984605428 16.320988153 9.546664498 CORE 26 Si Si 0.0000 26 Si -11.831995456 14.934762439 5.733149576 CORE 27 Si Si 0.0000 27 Si -2.225680051 7.682900986 9.537472470 CORE 28 Si Si 0.0000 28 Si -12.089126077 9.221977441 5.735235703 CORE 29 Si Si 0.0000 29 Si -2.217898898 16.285775535 9.548017670 CORE 30 Si Si 0.0000 30 Si 0.627933475 14.922943217 5.770167131 CORE 31 Si Si 0.0000 31 Si -9.110676740 7.690704261 9.200198897 CORE 32 Si Si 0.0000 32 Si -2.149887657 7.722469738 5.102973197 CORE 33 Si Si 0.0000 33 Si -11.864813398 14.943695399 8.855440887 CORE 34 Si Si 0.0000 34 Si -8.958285219 16.260034988 5.069185895 CORE 35 Si Si 0.0000 35 Si 0.609074383 9.133888670 8.860416996 CORE 36 Si Si 0.0000 36 O -15.264753262 7.792552335 3.352878611 CORE 37 O O 0.0000 37 O -5.612587498 14.979882885 7.391518013 CORE 38 O O 0.0000 38 O -15.214737033 16.103120442 3.599250505 CORE 39 O O 0.0000 39 O -5.556152823 9.059098363 7.279184370 CORE 40 O O 0.0000 40 O -10.640963624 4.415808443 7.393848256 CORE 41 O O 0.0000 41 O -0.778563348 11.957267232 3.534213820 CORE 42 O O 0.0000 42 O -10.410993045 12.088056934 3.540378100 CORE 43 O O 0.0000 43 O -0.757666064 4.704802810 7.298348319 CORE 44 O O 0.0000 44 O -13.202791694 6.143287437 3.497629953 CORE 45 O O 0.0000 45 O -3.572244693 13.306106729 7.244891416 CORE 46 O O 0.0000 46 O -7.563717907 10.787838071 7.255636458 CORE 47 O O 0.0000 47 O 2.100245927 17.919392078 3.538252035 CORE 48 O O 0.0000 48 O -3.467640689 10.662976143 7.418029089 CORE 49 O O 0.0000 49 O -13.318657615 17.912604033 3.299381846 CORE 50 O O 0.0000 50 O 1.915739853 6.134758667 3.491373321 CORE 51 O O 0.0000 51 O -7.761897241 13.403490413 7.172716576 CORE 52 O O 0.0000 52 O -11.604905018 4.594347407 4.968343866 CORE 53 O O 0.0000 53 O -1.683927762 12.156773014 8.687033002 CORE 54 O O 0.0000 54 O 0.096810726 4.724785821 4.799163315 CORE 55 O O 0.0000 55 O -9.418493878 11.998099869 8.709188793 CORE 56 O O 0.0000 56 O -1.623900127 11.952752536 6.028233219 CORE 57 O O 0.0000 57 O -11.219750724 4.860265071 9.942297749 CORE 58 O O 0.0000 58 O -9.683308275 11.919286696 6.063579392 CORE 59 O O 0.0000 59 O 0.168088539 4.650503345 9.739155844 CORE 60 O O 0.0000 60 O -10.604648753 8.558644214 5.509780461 CORE 61 O O 0.0000 61 O -0.768837147 15.627761924 9.210491157 CORE 62 O O 0.0000 62 O -10.510329812 8.387628736 8.730125300 CORE 63 O O 0.0000 63 O -0.836724645 15.609512430 5.505865102 CORE 64 O O 0.0000 64 O -0.707729123 8.423951865 5.387844608 CORE 65 O O 0.0000 65 O -10.456548385 15.705236400 9.204976001 CORE 66 O O 0.0000 66 O -10.291597864 15.424699594 5.489260069 CORE 67 O O 0.0000 67 O -0.859702266 8.479122268 9.123796041 CORE 68 O O 0.0000 68 O -12.558707414 9.162980789 7.290306273 CORE 69 O O 0.0000 69 O -2.556033725 16.081408382 3.519984749 CORE 70 O O 0.0000 70 O -8.984349283 7.818932752 3.212434855 CORE 71 O O 0.0000 71 O 1.011484504 15.072242888 7.338174534 CORE 72 O O 0.0000 72 O -2.486437695 7.870271861 3.521457050 CORE 73 O O 0.0000 73 O -12.226440446 15.169741745 7.289004679 CORE 74 O O 0.0000 74 O 1.041958459 8.909543552 7.314419858 CORE 75 O O 0.0000 75 O -8.630039402 16.034002047 3.496252894 CORE 76 O O 0.0000 76 O -13.212282727 8.434796075 4.869065424 CORE 77 O O 0.0000 77 O -3.371922092 15.557666210 8.667293035 CORE 78 O O 0.0000 78 O 1.756603307 15.651507615 4.868969421 CORE 79 O O 0.0000 79 O -7.883641029 8.418978347 8.435357585 CORE 80 O O 0.0000 80 O -3.313645135 8.422745928 6.003812835 CORE 81 O O 0.0000 81 O -13.080418803 15.543077771 9.744286379 CORE 82 O O 0.0000 82 O -7.675923897 15.743986539 5.929473894 CORE 83 O O 0.0000 83 O 1.706945219 8.436174989 9.814124967 CORE 84 O O 0.0000 84 O -7.679860949 8.546951120 5.795903411 CORE 85 O O 0.0000 85 O 1.834935791 15.647955391 9.793999314 CORE 86 O O 0.0000 86 O -3.461331168 15.656826943 5.987492616 CORE 87 O O 0.0000 87 O -12.965963316 8.450054511 9.808279582 CORE 88 O O 0.0000 88 O 1.912701330 8.407482303 4.880051538 CORE 89 O O 0.0000 89 O -7.846326595 15.641878568 8.610024232 CORE 90 O O 0.0000 90 O -12.875139187 15.736067657 4.786996180 CORE 91 O O 0.0000 91 O -3.452133422 8.305568498 8.677437791 CORE 92 O O 0.0000 92 O -9.433284862 6.012102915 5.609522715 CORE 93 O O 0.0000 93 O 0.611292126 13.352643135 9.333775922 CORE 94 O O 0.0000 94 O -2.194055080 17.912302188 5.404314156 CORE 95 O O 0.0000 95 O -11.707341122 10.708975599 9.288100822 CORE 96 O O 0.0000 96 O 0.662367383 10.703422753 5.385489642 CORE 97 O O 0.0000 97 O -8.995891786 17.934427230 9.288883833 CORE 98 O O 0.0000 98 O -11.882538409 13.345180768 5.388165937 CORE 99 O O 0.0000 99 O -2.031796103 6.098280723 9.196409742 CORE 100 O O 0.0000 100 O -11.987032334 10.772162761 5.245321648 CORE 101 O O 0.0000 101 O -2.175689225 17.882244138 9.193265147 CORE 102 O O 0.0000 102 O 0.561506254 13.339756933 5.381030367 CORE 103 O O 0.0000 103 O -9.134067926 6.102724644 8.804068286 CORE 104 O O 0.0000 104 O -2.070554649 6.135698076 5.490606470 CORE 105 O O 0.0000 105 O -11.689864751 13.350940322 9.164272902 CORE 106 O O 0.0000 106 O -9.221336045 17.834692934 5.368467429 CORE 107 O O 0.0000 107 O 0.540331656 10.731296826 9.178207269 CORE 108 O O 0.0000 108 O2 12.640607070 5.600142446 4.822204815 CORE 109 O2 O2 0.0000 109 O2 13.522539691 7.588164857 2.947508350 CORE 110 O2 O2 0.0000 110 H 13.075903644 6.779649963 3.267722435 CORE 111 H H 0.0000 111 H 13.394461171 8.218727756 3.686823341 CORE 112 H H 0.0000 112 C 13.907752680 5.795225064 5.503064505 CORE 113 C C 0.0000 113 C 13.119287812 4.562097883 5.729231631 CORE 114 C C 0.0000 114 H 13.451136596 3.622004224 5.247852569 CORE 115 H H 0.0000 115 H 12.535236940 4.467777188 6.673166762 CORE 116 H H 0.0000 116 H 14.782050791 5.760863637 4.836677165 CORE 117 H H 0.0000 117 H 13.908159510 6.591198558 6.278939782 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.341028143 4.779427780 3.520719530 CORE 1 Si Si 0.0000 1 Si -2.592013934 12.017418938 7.340491921 CORE 2 Si Si 0.0000 2 Si 1.074663243 4.756537604 3.489372851 CORE 3 Si Si 0.0000 3 Si -8.610616444 12.025934158 7.289361001 CORE 4 Si Si 0.0000 4 Si -13.657043006 7.710573108 11.085344787 CORE 5 Si Si 0.0000 5 Si -4.000232376 14.874984797 7.322027455 CORE 6 Si Si 0.0000 6 Si -7.167284569 9.205663558 7.206408940 CORE 7 Si Si 0.0000 7 Si 2.431389975 16.324554504 3.546780106 CORE 8 Si Si 0.0000 8 Si -13.621568930 16.320784184 3.462295875 CORE 9 Si Si 0.0000 9 Si -3.947551160 9.107312068 7.350873033 CORE 10 Si Si 0.0000 10 Si -7.226048413 14.936657401 7.279998875 CORE 11 Si Si 0.0000 11 Si 2.379149845 7.693386989 3.486260891 CORE 12 Si Si 0.0000 12 Si -10.224942018 4.618072629 5.830683531 CORE 13 Si Si 0.0000 13 Si -0.328680744 12.047898908 9.581364210 CORE 14 Si Si 0.0000 14 Si -10.811326486 12.035641765 9.569227504 CORE 15 Si Si 0.0000 15 Si -1.223586701 4.767832130 5.741530675 CORE 16 Si Si 0.0000 16 Si -10.008841378 4.737308627 8.868110783 CORE 17 Si Si 0.0000 17 Si -0.297227049 11.987263444 5.087452953 CORE 18 Si Si 0.0000 18 Si -10.972809906 12.029822246 5.066784296 CORE 19 Si Si 0.0000 19 Si -1.200994549 4.737571552 8.863415077 CORE 20 Si Si 0.0000 20 Ti -9.091268600 7.689518793 5.008454591 CORE 21 Ti Ti 0.0000 21 Si 0.680635090 14.928793151 8.918722283 CORE 22 Si Si 0.0000 22 Si -2.256714215 16.305195074 5.105485100 CORE 23 Si Si 0.0000 23 Si -11.942861448 9.175196994 8.789826511 CORE 24 Si Si 0.0000 24 Si 0.729899627 9.109287176 5.736012856 CORE 25 Si Si 0.0000 25 Si -8.984097949 16.322963693 9.547291029 CORE 26 Si Si 0.0000 26 Si -11.831178140 14.933157790 5.732264705 CORE 27 Si Si 0.0000 27 Si -2.229661751 7.683329103 9.536626319 CORE 28 Si Si 0.0000 28 Si -12.088310108 9.220003486 5.734631766 CORE 29 Si Si 0.0000 29 Si -2.217393921 16.285263812 9.547420123 CORE 30 Si Si 0.0000 30 Si 0.627667323 14.920825115 5.770328176 CORE 31 Si Si 0.0000 31 Si -9.113578627 7.694144195 9.201558991 CORE 32 Si Si 0.0000 32 Si -2.151763425 7.722848125 5.101770192 CORE 33 Si Si 0.0000 33 Si -11.862288127 14.941624577 8.853864976 CORE 34 Si Si 0.0000 34 Si -8.957614739 16.257235357 5.070831944 CORE 35 Si Si 0.0000 35 Si 0.604259394 9.133947194 8.860953457 CORE 36 Si Si 0.0000 36 O -15.263741768 7.792936776 3.350927207 CORE 37 O O 0.0000 37 O -5.612057118 14.979780108 7.392000311 CORE 38 O O 0.0000 38 O -15.216057595 16.100837723 3.598076483 CORE 39 O O 0.0000 39 O -5.557980864 9.057850912 7.278580509 CORE 40 O O 0.0000 40 O -10.639944240 4.418864800 7.396637823 CORE 41 O O 0.0000 41 O -0.781394416 11.957509400 3.534063045 CORE 42 O O 0.0000 42 O -10.409762548 12.088907260 3.538079884 CORE 43 O O 0.0000 43 O -0.758254563 4.703781381 7.297877128 CORE 44 O O 0.0000 44 O -13.205339289 6.145982561 3.498430384 CORE 45 O O 0.0000 45 O -3.574996281 13.304521252 7.244638476 CORE 46 O O 0.0000 46 O -7.562051905 10.789115361 7.259474527 CORE 47 O O 0.0000 47 O 2.101289945 17.920258404 3.538581808 CORE 48 O O 0.0000 48 O -3.468181847 10.660658973 7.420191896 CORE 49 O O 0.0000 49 O -13.318156872 17.914705414 3.306790895 CORE 50 O O 0.0000 50 O 1.915955585 6.135245885 3.490478941 CORE 51 O O 0.0000 51 O -7.765160734 13.406357073 7.176134802 CORE 52 O O 0.0000 52 O -11.607518044 4.598348074 4.968946737 CORE 53 O O 0.0000 53 O -1.684116551 12.160397600 8.686750698 CORE 54 O O 0.0000 54 O 0.099230153 4.724734649 4.798753362 CORE 55 O O 0.0000 55 O -9.425098804 11.996831084 8.706332360 CORE 56 O O 0.0000 56 O -1.626342647 11.951693340 6.027571696 CORE 57 O O 0.0000 57 O -11.221771788 4.858699774 9.943363901 CORE 58 O O 0.0000 58 O -9.679679135 11.921374239 6.058304320 CORE 59 O O 0.0000 59 O 0.168817908 4.648335080 9.740300045 CORE 60 O O 0.0000 60 O -10.606276265 8.553783708 5.513573876 CORE 61 O O 0.0000 61 O -0.765515728 15.629939127 9.207434349 CORE 62 O O 0.0000 62 O -10.512431703 8.390573091 8.726547398 CORE 63 O O 0.0000 63 O -0.835442188 15.608581814 5.509090638 CORE 64 O O 0.0000 64 O -0.709013697 8.423598416 5.384950366 CORE 65 O O 0.0000 65 O -10.455754932 15.705192868 9.202176697 CORE 66 O O 0.0000 66 O -10.292735025 15.424362433 5.490955033 CORE 67 O O 0.0000 67 O -0.865922301 8.481334787 9.118817270 CORE 68 O O 0.0000 68 O -12.561195158 9.165261345 7.290107345 CORE 69 O O 0.0000 69 O -2.551188715 16.081247946 3.520165420 CORE 70 O O 0.0000 70 O -8.992630025 7.821133595 3.212643825 CORE 71 O O 0.0000 71 O 1.018457001 15.067156502 7.337803150 CORE 72 O O 0.0000 72 O -2.491022519 7.867516195 3.520966080 CORE 73 O O 0.0000 73 O -12.226440254 15.168980647 7.288025249 CORE 74 O O 0.0000 74 O 1.039115845 8.908743245 7.314584098 CORE 75 O O 0.0000 75 O -8.628962284 16.032403308 3.497085428 CORE 76 O O 0.0000 76 O -13.214262992 8.433815152 4.869035451 CORE 77 O O 0.0000 77 O -3.369094104 15.556939995 8.665271949 CORE 78 O O 0.0000 78 O 1.755502711 15.650832285 4.867978428 CORE 79 O O 0.0000 79 O -7.885133444 8.418924003 8.437394113 CORE 80 O O 0.0000 80 O -3.313341071 8.421277354 6.003729308 CORE 81 O O 0.0000 81 O -13.080165737 15.541454239 9.743151382 CORE 82 O O 0.0000 82 O -7.675792264 15.744820720 5.931713763 CORE 83 O O 0.0000 83 O 1.701383926 8.433286275 9.816474608 CORE 84 O O 0.0000 84 O -7.681635875 8.545868429 5.797132357 CORE 85 O O 0.0000 85 O 1.837417184 15.648465240 9.793971852 CORE 86 O O 0.0000 86 O -3.462394045 15.657585447 5.987357208 CORE 87 O O 0.0000 87 O -12.966041641 8.446857465 9.809683341 CORE 88 O O 0.0000 88 O 1.914279384 8.405977692 4.880152182 CORE 89 O O 0.0000 89 O -7.843036737 15.648057879 8.611527266 CORE 90 O O 0.0000 90 O -12.875123792 15.738073468 4.789116388 CORE 91 O O 0.0000 91 O -3.456930706 8.302203809 8.677931728 CORE 92 O O 0.0000 92 O -9.430090458 6.013615021 5.607756775 CORE 93 O O 0.0000 93 O 0.612007061 13.353007107 9.336133399 CORE 94 O O 0.0000 94 O -2.192737789 17.911756013 5.402943564 CORE 95 O O 0.0000 95 O -11.710865955 10.710236457 9.287301988 CORE 96 O O 0.0000 96 O 0.660354017 10.702760251 5.385443009 CORE 97 O O 0.0000 97 O -8.999260739 17.937082425 9.293291150 CORE 98 O O 0.0000 98 O -11.879409628 13.344405110 5.387429102 CORE 99 O O 0.0000 99 O -2.031306714 6.098507467 9.195491399 CORE 100 O O 0.0000 100 O -11.986893003 10.773290138 5.249592491 CORE 101 O O 0.0000 101 O -2.175742533 17.882242264 9.194215364 CORE 102 O O 0.0000 102 O 0.559661663 13.338912229 5.381131087 CORE 103 O O 0.0000 103 O -9.131036138 6.107171447 8.804517264 CORE 104 O O 0.0000 104 O -2.071538046 6.135726473 5.489516204 CORE 105 O O 0.0000 105 O -11.688015541 13.349605228 9.165263437 CORE 106 O O 0.0000 106 O -9.221715355 17.833227387 5.368881261 CORE 107 O O 0.0000 107 O 0.537879899 10.731740656 9.177281699 CORE 108 O O 0.0000 108 O2 12.636075745 5.596316342 4.821708596 CORE 109 O2 O2 0.0000 109 O2 13.508335665 7.597950304 2.947999092 CORE 110 O2 O2 0.0000 110 H 13.088869859 6.774017403 3.270186640 CORE 111 H H 0.0000 111 H 13.402709967 8.217342499 3.696846763 CORE 112 H H 0.0000 112 C 13.903892413 5.801843881 5.498573052 CORE 113 C C 0.0000 113 C 13.123366697 4.567207765 5.731277440 CORE 114 C C 0.0000 114 H 13.454750147 3.624382800 5.252283316 CORE 115 H H 0.0000 115 H 12.551205692 4.465683446 6.678465950 CORE 116 H H 0.0000 116 H 14.782472247 5.763757541 4.830794656 CORE 117 H H 0.0000 117 H 13.898649617 6.602440326 6.266105798 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.340473130 4.776000675 3.520682255 CORE 1 Si Si 0.0000 1 Si -2.590838284 12.017881939 7.340236623 CORE 2 Si Si 0.0000 2 Si 1.073124640 4.756379186 3.489823427 CORE 3 Si Si 0.0000 3 Si -8.609179645 12.025710441 7.290019177 CORE 4 Si Si 0.0000 4 Si -13.656736633 7.709526021 11.085438432 CORE 5 Si Si 0.0000 5 Si -4.000574159 14.876126300 7.322745957 CORE 6 Si Si 0.0000 6 Si -7.165182293 9.206055206 7.204046594 CORE 7 Si Si 0.0000 7 Si 2.431294715 16.323966959 3.546638231 CORE 8 Si Si 0.0000 8 Si -13.621166911 16.320496033 3.461793951 CORE 9 Si Si 0.0000 9 Si -3.945103059 9.109338493 7.351274923 CORE 10 Si Si 0.0000 10 Si -7.225926980 14.934408702 7.278846457 CORE 11 Si Si 0.0000 11 Si 2.379260693 7.694114501 3.486415546 CORE 12 Si Si 0.0000 12 Si -10.225131384 4.616228839 5.831182032 CORE 13 Si Si 0.0000 13 Si -0.328023735 12.046527201 9.581310351 CORE 14 Si Si 0.0000 14 Si -10.808773117 12.037914393 9.569070567 CORE 15 Si Si 0.0000 15 Si -1.224239284 4.767375471 5.743285888 CORE 16 Si Si 0.0000 16 Si -10.008208809 4.732350677 8.865738397 CORE 17 Si Si 0.0000 17 Si -0.295317988 11.987808753 5.087362731 CORE 18 Si Si 0.0000 18 Si -10.973660516 12.030635381 5.068393831 CORE 19 Si Si 0.0000 19 Si -1.201871716 4.737770908 8.863129730 CORE 20 Si Si 0.0000 20 Ti -9.092143073 7.689706041 5.010594805 CORE 21 Ti Ti 0.0000 21 Si 0.677330992 14.929278928 8.919170044 CORE 22 Si Si 0.0000 22 Si -2.258186809 16.305916244 5.104763632 CORE 23 Si Si 0.0000 23 Si -11.938436931 9.173212372 8.790454334 CORE 24 Si Si 0.0000 24 Si 0.730269507 9.110395093 5.736911497 CORE 25 Si Si 0.0000 25 Si -8.984060037 16.321544273 9.544715149 CORE 26 Si Si 0.0000 26 Si -11.832067431 14.934344412 5.733466873 CORE 27 Si Si 0.0000 27 Si -2.226807590 7.683987425 9.536416816 CORE 28 Si Si 0.0000 28 Si -12.088112466 9.220739071 5.733039804 CORE 29 Si Si 0.0000 29 Si -2.219633603 16.285585260 9.547972331 CORE 30 Si Si 0.0000 30 Si 0.626192420 14.922770816 5.769584950 CORE 31 Si Si 0.0000 31 Si -9.110776234 7.690506203 9.200751105 CORE 32 Si Si 0.0000 32 Si -2.151580986 7.723795173 5.103243101 CORE 33 Si Si 0.0000 33 Si -11.862810232 14.943948810 8.855734070 CORE 34 Si Si 0.0000 34 Si -8.956237598 16.259418037 5.069254284 CORE 35 Si Si 0.0000 35 Si 0.607615068 9.134435566 8.860719611 CORE 36 Si Si 0.0000 36 O -15.262564001 7.791765290 3.352576072 CORE 37 O O 0.0000 37 O -5.612853843 14.980356986 7.391416001 CORE 38 O O 0.0000 38 O -15.215571284 16.102261467 3.600246746 CORE 39 O O 0.0000 39 O -5.557221858 9.058691003 7.279689109 CORE 40 O O 0.0000 40 O -10.640099544 4.416447160 7.395884860 CORE 41 O O 0.0000 41 O -0.778120338 11.957661908 3.534578510 CORE 42 O O 0.0000 42 O -10.411519961 12.088402600 3.540337934 CORE 43 O O 0.0000 43 O -0.758549582 4.704392134 7.298036119 CORE 44 O O 0.0000 44 O -13.203310913 6.144787579 3.497475602 CORE 45 O O 0.0000 45 O -3.571192978 13.306062908 7.245192053 CORE 46 O O 0.0000 46 O -7.563433665 10.788257828 7.255113614 CORE 47 O O 0.0000 47 O 2.100694903 17.919087351 3.537911764 CORE 48 O O 0.0000 48 O -3.467921468 10.663500695 7.418163280 CORE 49 O O 0.0000 49 O -13.317772365 17.913868926 3.299326922 CORE 50 O O 0.0000 50 O 1.916103961 6.135285814 3.491328439 CORE 51 O O 0.0000 51 O -7.762195725 13.403953415 7.172851071 CORE 52 O O 0.0000 52 O -11.607168178 4.594356920 4.966823107 CORE 53 O O 0.0000 53 O -1.683351580 12.156908801 8.687781704 CORE 54 O O 0.0000 54 O 0.098290056 4.724562537 4.798308264 CORE 55 O O 0.0000 55 O -9.420607700 11.998519915 8.709970891 CORE 56 O O 0.0000 56 O -1.623192697 11.952463808 6.027474628 CORE 57 O O 0.0000 57 O -11.219713390 4.859832917 9.943594247 CORE 58 O O 0.0000 58 O -9.685296623 11.919596325 6.062555917 CORE 59 O O 0.0000 59 O 0.169703927 4.650573401 9.740479880 CORE 60 O O 0.0000 60 O -10.604397419 8.558008956 5.509700053 CORE 61 O O 0.0000 61 O -0.767250433 15.627353987 9.210162601 CORE 62 O O 0.0000 62 O -10.510584995 8.387482282 8.730159456 CORE 63 O O 0.0000 63 O -0.835091552 15.608785062 5.506830002 CORE 64 O O 0.0000 64 O -0.707539949 8.423976370 5.387816157 CORE 65 O O 0.0000 65 O -10.458223431 15.704790552 9.204285113 CORE 66 O O 0.0000 66 O -10.293076616 15.424017632 5.490344021 CORE 67 O O 0.0000 67 O -0.859167075 8.478970481 9.122890478 CORE 68 O O 0.0000 68 O -12.559684845 9.162917652 7.289066221 CORE 69 O O 0.0000 69 O -2.554691802 16.081058536 3.520476632 CORE 70 O O 0.0000 70 O -8.983073561 7.818483877 3.211024553 CORE 71 O O 0.0000 71 O 1.012072425 15.072561598 7.337863399 CORE 72 O O 0.0000 72 O -2.487200357 7.869947674 3.522065247 CORE 73 O O 0.0000 73 O -12.226481822 15.169675870 7.289585946 CORE 74 O O 0.0000 74 O 1.042146863 8.909149453 7.313823909 CORE 75 O O 0.0000 75 O -8.629733414 16.033314031 3.496180854 CORE 76 O O 0.0000 76 O -13.212453619 8.433556119 4.868438969 CORE 77 O O 0.0000 77 O -3.371914971 15.557792915 8.666748130 CORE 78 O O 0.0000 78 O 1.756783244 15.651874903 4.868416680 CORE 79 O O 0.0000 79 O -7.884356926 8.418112598 8.437312944 CORE 80 O O 0.0000 80 O -3.312807034 8.422320116 6.002419422 CORE 81 O O 0.0000 81 O -13.079668842 15.543437563 9.744112098 CORE 82 O O 0.0000 82 O -7.675615792 15.743906537 5.929457462 CORE 83 O O 0.0000 83 O 1.707794289 8.435917830 9.815809053 CORE 84 O O 0.0000 84 O -7.681902412 8.545181423 5.794534340 CORE 85 O O 0.0000 85 O 1.836185725 15.649066479 9.794674302 CORE 86 O O 0.0000 86 O -3.461193569 15.656842367 5.987784201 CORE 87 O O 0.0000 87 O -12.967153014 8.448010500 9.810705980 CORE 88 O O 0.0000 88 O 1.913193221 8.406848054 4.879165526 CORE 89 O O 0.0000 89 O -7.846336409 15.642474474 8.609332355 CORE 90 O O 0.0000 90 O -12.874804524 15.736866378 4.786270071 CORE 91 O O 0.0000 91 O -3.451764312 8.304528763 8.677638089 CORE 92 O O 0.0000 92 O -9.429678817 6.015542849 5.608390000 CORE 93 O O 0.0000 93 O 0.612174104 13.353434360 9.333373500 CORE 94 O O 0.0000 94 O -2.194014089 17.912542338 5.403486643 CORE 95 O O 0.0000 95 O -11.706677377 10.708908138 9.287424997 CORE 96 O O 0.0000 96 O 0.662177247 10.703079538 5.386002064 CORE 97 O O 0.0000 97 O -8.996791661 17.935476623 9.289796166 CORE 98 O O 0.0000 98 O -11.882158906 13.345190714 5.387830839 CORE 99 O O 0.0000 99 O -2.031758769 6.098087854 9.196542640 CORE 100 O O 0.0000 100 O -11.988411784 10.772282403 5.246114244 CORE 101 O O 0.0000 101 O -2.175779867 17.882122765 9.194106733 CORE 102 O O 0.0000 102 O 0.561881138 13.341044746 5.381587291 CORE 103 O O 0.0000 103 O -9.133584118 6.104337221 8.804372499 CORE 104 O O 0.0000 104 O -2.070925107 6.136148680 5.490447556 CORE 105 O O 0.0000 105 O -11.690503478 13.351222995 9.164677149 CORE 106 O O 0.0000 106 O -9.220608215 17.834892434 5.368180484 CORE 107 O O 0.0000 107 O 0.540444429 10.731575030 9.178063113 CORE 108 O O 0.0000 108 O2 12.635734732 5.600717306 4.823735463 CORE 109 O2 O2 0.0000 109 O2 13.523736510 7.591859211 2.947232741 CORE 110 O2 O2 0.0000 110 H 13.077017904 6.774359176 3.271011567 CORE 111 H H 0.0000 111 H 13.394654002 8.217929324 3.687069967 CORE 112 H H 0.0000 112 C 13.907404545 5.795800789 5.507178564 CORE 113 C C 0.0000 113 C 13.118904461 4.565148907 5.729451023 CORE 114 C C 0.0000 114 H 13.450036192 3.620393088 5.246913153 CORE 115 H H 0.0000 115 H 12.536247472 4.467368818 6.671701841 CORE 116 H H 0.0000 116 H 14.784835864 5.760848358 4.835056371 CORE 117 H H 0.0000 117 H 13.907060260 6.590430108 6.276897168 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.340569738 4.776597013 3.520688721 CORE 1 Si Si 0.0000 1 Si -2.591042853 12.017801361 7.340281049 CORE 2 Si Si 0.0000 2 Si 1.073392332 4.756406862 3.489744996 CORE 3 Si Si 0.0000 3 Si -8.609429632 12.025749361 7.289904612 CORE 4 Si Si 0.0000 4 Si -13.656789941 7.709708223 11.085422152 CORE 5 Si Si 0.0000 5 Si -4.000514693 14.875927665 7.322620971 CORE 6 Si Si 0.0000 6 Si -7.165548132 9.205987025 7.204457688 CORE 7 Si Si 0.0000 7 Si 2.431311265 16.324069159 3.546662955 CORE 8 Si Si 0.0000 8 Si -13.621236769 16.320546197 3.461881282 CORE 9 Si Si 0.0000 9 Si -3.945529134 9.108985764 7.351205012 CORE 10 Si Si 0.0000 10 Si -7.225948149 14.934800062 7.279047060 CORE 11 Si Si 0.0000 11 Si 2.379241449 7.693987795 3.486388616 CORE 12 Si Si 0.0000 12 Si -10.225098476 4.616549711 5.831095234 CORE 13 Si Si 0.0000 13 Si -0.328138047 12.046765909 9.581319708 CORE 14 Si Si 0.0000 14 Si -10.809217474 12.037518853 9.569097877 CORE 15 Si Si 0.0000 15 Si -1.224125741 4.767454896 5.742980459 CORE 16 Si Si 0.0000 16 Si -10.008318888 4.733213544 8.866151240 CORE 17 Si Si 0.0000 17 Si -0.295650149 11.987713760 5.087378402 CORE 18 Si Si 0.0000 18 Si -10.973512525 12.030493828 5.068113734 CORE 19 Si Si 0.0000 19 Si -1.201719106 4.737736169 8.863179405 CORE 20 Si Si 0.0000 20 Ti -9.091991041 7.689673463 5.010222356 CORE 21 Ti Ti 0.0000 21 Si 0.677906019 14.929194313 8.919092146 CORE 22 Si Si 0.0000 22 Si -2.257930664 16.305790691 5.104889151 CORE 23 Si Si 0.0000 23 Si -11.939206905 9.173557749 8.790345095 CORE 24 Si Si 0.0000 24 Si 0.730205038 9.110202224 5.736755169 CORE 25 Si Si 0.0000 25 Si -8.984066580 16.321791198 9.545163442 CORE 26 Si Si 0.0000 26 Si -11.831912705 14.934137849 5.733257675 CORE 27 Si Si 0.0000 27 Si -2.227304292 7.683872827 9.536453255 CORE 28 Si Si 0.0000 28 Si -12.088146721 9.220611068 5.733316859 CORE 29 Si Si 0.0000 29 Si -2.219243901 16.285529331 9.547876176 CORE 30 Si Si 0.0000 30 Si 0.626449142 14.922432214 5.769714273 CORE 31 Si Si 0.0000 31 Si -9.111264084 7.691139298 9.200891762 CORE 32 Si Si 0.0000 32 Si -2.151612740 7.723630269 5.102986738 CORE 33 Si Si 0.0000 33 Si -11.862719398 14.943544332 8.855408785 CORE 34 Si Si 0.0000 34 Si -8.956477385 16.259038208 5.069528904 CORE 35 Si Si 0.0000 35 Si 0.607031188 9.134350519 8.860760310 CORE 36 Si Si 0.0000 36 O -15.262768955 7.791969114 3.352289127 CORE 37 O O 0.0000 37 O -5.612715090 14.980256515 7.391517709 CORE 38 O O 0.0000 38 O -15.215655961 16.102013678 3.599869047 CORE 39 O O 0.0000 39 O -5.557353876 9.058544837 7.279496190 CORE 40 O O 0.0000 40 O -10.640072601 4.416867782 7.396015857 CORE 41 O O 0.0000 41 O -0.778689978 11.957635385 3.534488821 CORE 42 O O 0.0000 42 O -10.411213972 12.088490386 3.539945021 CORE 43 O O 0.0000 43 O -0.758498199 4.704285897 7.298008428 CORE 44 O O 0.0000 44 O -13.203663858 6.144995439 3.497641744 CORE 45 O O 0.0000 45 O -3.571854991 13.305794650 7.245095670 CORE 46 O O 0.0000 46 O -7.563193300 10.788407021 7.255872510 CORE 47 O O 0.0000 47 O 2.100798439 17.919291175 3.538028383 CORE 48 O O 0.0000 48 O -3.467966885 10.663006270 7.418516331 CORE 49 O O 0.0000 49 O -13.317839337 17.914014515 3.300625854 CORE 50 O O 0.0000 50 O 1.916078173 6.135278895 3.491180630 CORE 51 O O 0.0000 51 O -7.762711671 13.404371730 7.173422525 CORE 52 O O 0.0000 52 O -11.607229183 4.595051422 4.967192665 CORE 53 O O 0.0000 53 O -1.683484752 12.157515950 8.687602326 CORE 54 O O 0.0000 54 O 0.098453635 4.724592520 4.798385705 CORE 55 O O 0.0000 55 O -9.421389222 11.998225998 8.709337667 CORE 56 O O 0.0000 56 O -1.623740782 11.952329751 6.027491516 CORE 57 O O 0.0000 57 O -11.220071724 4.859635723 9.943554157 CORE 58 O O 0.0000 58 O -9.684318999 11.919905809 6.061816039 CORE 59 O O 0.0000 59 O 0.169549778 4.650183915 9.740448538 CORE 60 O O 0.0000 60 O -10.604724384 8.557273660 5.510374204 CORE 61 O O 0.0000 61 O -0.766948486 15.627803871 9.209687835 CORE 62 O O 0.0000 62 O -10.510906379 8.388020096 8.729530872 CORE 63 O O 0.0000 63 O -0.835152557 15.608749746 5.507223371 CORE 64 O O 0.0000 64 O -0.707796286 8.423910639 5.387317428 CORE 65 O O 0.0000 65 O -10.457793893 15.704860608 9.203918141 CORE 66 O O 0.0000 66 O -10.293017150 15.424077598 5.490450370 CORE 67 O O 0.0000 67 O -0.860342725 8.479381878 9.122181638 CORE 68 O O 0.0000 68 O -12.559947726 9.163325590 7.289247425 CORE 69 O O 0.0000 69 O -2.554082134 16.081091402 3.520422468 CORE 70 O O 0.0000 70 O -8.984736676 7.818945005 3.211306324 CORE 71 O O 0.0000 71 O 1.013183606 15.071620892 7.337852977 CORE 72 O O 0.0000 72 O -2.487865641 7.869524457 3.521874001 CORE 73 O O 0.0000 73 O -12.226474509 15.169554786 7.289314368 CORE 74 O O 0.0000 74 O 1.041619370 8.909078820 7.313956198 CORE 75 O O 0.0000 75 O -8.629599279 16.033155613 3.496338323 CORE 76 O O 0.0000 76 O -13.212768460 8.433601237 4.868542808 CORE 77 O O 0.0000 77 O -3.371424043 15.557644444 8.666491234 CORE 78 O O 0.0000 78 O 1.756560392 15.651693421 4.868340380 CORE 79 O O 0.0000 79 O -7.884492023 8.418253718 8.437327093 CORE 80 O O 0.0000 80 O -3.312899986 8.422138635 6.002647410 CORE 81 O O 0.0000 81 O -13.079755250 15.543092474 9.743944967 CORE 82 O O 0.0000 82 O -7.675646391 15.744065532 5.929850147 CORE 83 O O 0.0000 83 O 1.706678682 8.435459874 9.815924835 CORE 84 O O 0.0000 84 O -7.681856033 8.545300921 5.794986437 CORE 85 O O 0.0000 85 O 1.836400109 15.648961828 9.794552054 CORE 86 O O 0.0000 86 O -3.461402565 15.656971667 5.987709955 CORE 87 O O 0.0000 87 O -12.966959607 8.447809847 9.810528047 CORE 88 O O 0.0000 88 O 1.913382202 8.406696555 4.879337221 CORE 89 O O 0.0000 89 O -7.845762152 15.643446171 8.609714314 CORE 90 O O 0.0000 90 O -12.874860141 15.737076401 4.786765377 CORE 91 O O 0.0000 91 O -3.452663417 8.304124141 8.677689134 CORE 92 O O 0.0000 92 O -9.429750599 6.015207418 5.608279848 CORE 93 O O 0.0000 93 O 0.612145045 13.353359980 9.333853820 CORE 94 O O 0.0000 94 O -2.193792006 17.912405542 5.403392086 CORE 95 O O 0.0000 95 O -11.707406361 10.709139351 9.287403620 CORE 96 O O 0.0000 96 O 0.661859904 10.703023897 5.385904767 CORE 97 O O 0.0000 97 O -8.997221393 17.935755981 9.290404439 CORE 98 O O 0.0000 98 O -11.881680486 13.345054062 5.387760928 CORE 99 O O 0.0000 99 O -2.031680058 6.098160793 9.196359687 CORE 100 O O 0.0000 100 O -11.988147556 10.772457686 5.246719550 CORE 101 O O 0.0000 101 O -2.175773516 17.882143667 9.194125599 CORE 102 O O 0.0000 102 O 0.561494900 13.340673566 5.381507872 CORE 103 O O 0.0000 103 O -9.133140723 6.104830493 8.804397679 CORE 104 O O 0.0000 104 O -2.071031722 6.136075165 5.490285522 CORE 105 O O 0.0000 105 O -11.690070668 13.350941475 9.164779162 CORE 106 O O 0.0000 106 O -9.220801046 17.834602698 5.368302428 CORE 107 O O 0.0000 107 O 0.539998148 10.731603860 9.177927096 CORE 108 O O 0.0000 108 O2 12.635794005 5.599951451 4.823382716 CORE 109 O2 O2 0.0000 109 O2 13.521056512 7.592919271 2.947366095 CORE 110 O2 O2 0.0000 110 H 13.079080343 6.774299643 3.270868019 CORE 111 H H 0.0000 111 H 13.396055968 8.217827267 3.688771321 CORE 112 H H 0.0000 112 C 13.906793338 5.796852489 5.505681008 CORE 113 C C 0.0000 113 C 13.119680979 4.565507113 5.729768853 CORE 114 C C 0.0000 114 H 13.450856395 3.621087446 5.247847700 CORE 115 H H 0.0000 115 H 12.538850491 4.467075478 6.672878981 CORE 116 H H 0.0000 116 H 14.784424607 5.761354603 4.834314744 CORE 117 H H 0.0000 117 H 13.905596519 6.592520245 6.275019250 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.340766802 4.776406162 3.519057429 CORE 1 Si Si 0.0000 1 Si -2.589760588 12.018744517 7.339937811 CORE 2 Si Si 0.0000 2 Si 1.073955236 4.756528667 3.490214742 CORE 3 Si Si 0.0000 3 Si -8.609835308 12.025536887 7.291437923 CORE 4 Si Si 0.0000 4 Si -13.656407359 7.707568067 11.084407350 CORE 5 Si Si 0.0000 5 Si -4.001577186 14.877587955 7.322820736 CORE 6 Si Si 0.0000 6 Si -7.166561358 9.203820057 7.201826276 CORE 7 Si Si 0.0000 7 Si 2.430871334 16.323846740 3.547073136 CORE 8 Si Si 0.0000 8 Si -13.621395921 16.321066280 3.461690341 CORE 9 Si Si 0.0000 9 Si -3.943090463 9.110092384 7.350939597 CORE 10 Si Si 0.0000 10 Si -7.224889506 14.933612576 7.277635008 CORE 11 Si Si 0.0000 11 Si 2.382539389 7.694164088 3.486315967 CORE 12 Si Si 0.0000 12 Si -10.224807498 4.617662673 5.831719938 CORE 13 Si Si 0.0000 13 Si -0.327143296 12.045790752 9.581881197 CORE 14 Si Si 0.0000 14 Si -10.808218104 12.038536822 9.569774159 CORE 15 Si Si 0.0000 15 Si -1.224623983 4.767826364 5.743088253 CORE 16 Si Si 0.0000 16 Si -10.007957860 4.730247567 8.866547424 CORE 17 Si Si 0.0000 17 Si -0.293519007 11.988558896 5.087327966 CORE 18 Si Si 0.0000 18 Si -10.975326133 12.031157051 5.067722571 CORE 19 Si Si 0.0000 19 Si -1.201672727 4.738035707 8.863785776 CORE 20 Si Si 0.0000 20 Ti -9.090254219 7.691110181 5.008910339 CORE 21 Ti Ti 0.0000 21 Si 0.676678409 14.929812562 8.919801290 CORE 22 Si Si 0.0000 22 Si -2.259193107 16.305687914 5.105136233 CORE 23 Si Si 0.0000 23 Si -11.936301747 9.171760231 8.792223621 CORE 24 Si Si 0.0000 24 Si 0.730097461 9.110818022 5.736844858 CORE 25 Si Si 0.0000 25 Si -8.984721280 16.320675497 9.542660744 CORE 26 Si Si 0.0000 26 Si -11.832602814 14.933892077 5.734019994 CORE 27 Si Si 0.0000 27 Si -2.224623910 7.685193938 9.537745493 CORE 28 Si Si 0.0000 28 Si -12.087084229 9.219846510 5.730482181 CORE 29 Si Si 0.0000 29 Si -2.221542856 16.285069501 9.548603654 CORE 30 Si Si 0.0000 30 Si 0.625852176 14.923998952 5.768650480 CORE 31 Si Si 0.0000 31 Si -9.109246676 7.688084238 9.202371062 CORE 32 Si Si 0.0000 32 Si -2.150844689 7.725158808 5.103353862 CORE 33 Si Si 0.0000 33 Si -11.862854687 14.943763580 8.856063766 CORE 34 Si Si 0.0000 34 Si -8.955850013 16.257944850 5.069340473 CORE 35 Si Si 0.0000 35 Si 0.610599129 9.134748366 8.861113361 CORE 36 Si Si 0.0000 36 O -15.260901463 7.789984204 3.353561130 CORE 37 O O 0.0000 37 O -5.612522836 14.981097904 7.390987106 CORE 38 O O 0.0000 38 O -15.216330290 16.102221250 3.602318039 CORE 39 O O 0.0000 39 O -5.555301829 9.058925531 7.280924977 CORE 40 O O 0.0000 40 O -10.639968296 4.414739590 7.396703016 CORE 41 O O 0.0000 41 O -0.775891818 11.958309995 3.534626892 CORE 42 O O 0.0000 42 O -10.412588419 12.089162545 3.539919385 CORE 43 O O 0.0000 43 O -0.759481596 4.704117245 7.298814565 CORE 44 O O 0.0000 44 O -13.202185683 6.145021242 3.497197102 CORE 45 O O 0.0000 45 O -3.568291860 13.308391322 7.245951025 CORE 46 O O 0.0000 46 O -7.563237178 10.787730249 7.251956010 CORE 47 O O 0.0000 47 O 2.099718626 17.919581488 3.537083719 CORE 48 O O 0.0000 48 O -3.469013981 10.664206585 7.417277343 CORE 49 O O 0.0000 49 O -13.316520314 17.914318666 3.294530419 CORE 50 O O 0.0000 50 O 1.916073554 6.135744491 3.491743640 CORE 51 O O 0.0000 51 O -7.760474299 13.402805857 7.170771486 CORE 52 O O 0.0000 52 O -11.607632742 4.591519090 4.966210041 CORE 53 O O 0.0000 53 O -1.683112562 12.154661110 8.688552087 CORE 54 O O 0.0000 54 O 0.097761985 4.723956109 4.798550782 CORE 55 O O 0.0000 55 O -9.418731741 12.000632683 8.712279149 CORE 56 O O 0.0000 56 O -1.621938722 11.952718949 6.027983398 CORE 57 O O 0.0000 57 O -11.217708877 4.858945257 9.944520274 CORE 58 O O 0.0000 58 O -9.688462353 11.919115017 6.066812003 CORE 59 O O 0.0000 59 O 0.169747035 4.651968604 9.739980390 CORE 60 O O 0.0000 60 O -10.603306637 8.560131239 5.507736782 CORE 61 O O 0.0000 61 O -0.769973346 15.626863021 9.212100616 CORE 62 O O 0.0000 62 O -10.509162052 8.384785428 8.732488938 CORE 63 O O 0.0000 63 O -0.836329939 15.609718128 5.505510758 CORE 64 O O 0.0000 64 O -0.708235832 8.423700472 5.389427898 CORE 65 O O 0.0000 65 O -10.458279241 15.705909568 9.205476556 CORE 66 O O 0.0000 66 O -10.292941134 15.424684891 5.490686270 CORE 67 O O 0.0000 67 O -0.855790617 8.476263969 9.124633596 CORE 68 O O 0.0000 68 O -12.558210519 9.161364752 7.289021110 CORE 69 O O 0.0000 69 O -2.555817031 16.080858892 3.520838583 CORE 70 O O 0.0000 70 O -8.975556636 7.815657146 3.211317583 CORE 71 O O 0.0000 71 O 1.009021200 15.076568175 7.338003144 CORE 72 O O 0.0000 72 O -2.485535895 7.871047230 3.521991837 CORE 73 O O 0.0000 73 O -12.226612300 15.170675388 7.290395430 CORE 74 O O 0.0000 74 O 1.044185824 8.909014531 7.314287340 CORE 75 O O 0.0000 75 O -8.629697619 16.033482107 3.493804740 CORE 76 O O 0.0000 76 O -13.211920544 8.431277004 4.867153426 CORE 77 O O 0.0000 77 O -3.373935073 15.558674665 8.667047854 CORE 78 O O 0.0000 78 O 1.756815959 15.652223163 4.869167665 CORE 79 O O 0.0000 79 O -7.882726335 8.417957495 8.436545832 CORE 80 O O 0.0000 80 O -3.313052595 8.423802384 6.002292761 CORE 81 O O 0.0000 81 O -13.078808610 15.544138696 9.743350463 CORE 82 O O 0.0000 82 O -7.674531938 15.742755376 5.929174550 CORE 83 O O 0.0000 83 O 1.712016738 8.438202999 9.815798479 CORE 84 O O 0.0000 84 O -7.682301160 8.544086623 5.793589219 CORE 85 O O 0.0000 85 O 1.835564318 15.649450488 9.794447607 CORE 86 O O 0.0000 86 O -3.460972257 15.656328914 5.988912199 CORE 87 O O 0.0000 87 O -12.967362010 8.447477011 9.811997837 CORE 88 O O 0.0000 88 O 1.912867410 8.406933389 4.877975605 CORE 89 O O 0.0000 89 O -7.848142896 15.639933876 8.607318040 CORE 90 O O 0.0000 90 O -12.873244368 15.736997264 4.785329895 CORE 91 O O 0.0000 91 O -3.448678639 8.305774773 8.676567602 CORE 92 O O 0.0000 92 O -9.428049380 6.015951363 5.608951032 CORE 93 O O 0.0000 93 O 0.612290919 13.352640396 9.331593335 CORE 94 O O 0.0000 94 O -2.195135084 17.912535851 5.402975286 CORE 95 O O 0.0000 95 O -11.702067727 10.709115711 9.286445491 CORE 96 O O 0.0000 96 O 0.662855040 10.704087993 5.386689452 CORE 97 O O 0.0000 97 O -8.995382382 17.933909741 9.288451819 CORE 98 O O 0.0000 98 O -11.883093422 13.345612489 5.387959705 CORE 99 O O 0.0000 99 O -2.032422129 6.098336076 9.197169399 CORE 100 O O 0.0000 100 O -11.990341244 10.773528702 5.244832427 CORE 101 O O 0.0000 101 O -2.175990980 17.881712089 9.194882061 CORE 102 O O 0.0000 102 O 0.562885897 13.341828187 5.381960121 CORE 103 O O 0.0000 103 O -9.134035980 6.103299936 8.803692718 CORE 104 O O 0.0000 104 O -2.071069441 6.137090684 5.491073097 CORE 105 O O 0.0000 105 O -11.690981320 13.350357966 9.165315775 CORE 106 O O 0.0000 106 O -9.218239595 17.835357886 5.367302383 CORE 107 O O 0.0000 107 O 0.542001507 10.732080844 9.178274365 CORE 108 O O 0.0000 108 O2 12.633975394 5.604559988 4.828328853 CORE 109 O2 O2 0.0000 109 O2 13.531039436 7.583100382 2.949715356 CORE 110 O2 O2 0.0000 110 H 13.074800353 6.776410394 3.270899056 CORE 111 H H 0.0000 111 H 13.389810338 8.218721846 3.680346937 CORE 112 H H 0.0000 112 C 13.908662370 5.790920535 5.512239113 CORE 113 C C 0.0000 113 C 13.114596373 4.565148619 5.727468963 CORE 114 C C 0.0000 114 H 13.444222410 3.618416106 5.243773883 CORE 115 H H 0.0000 115 H 12.528365477 4.467098974 6.665094136 CORE 116 H H 0.0000 116 H 14.787904601 5.758447871 4.837668157 CORE 117 H H 0.0000 117 H 13.911252303 6.583419931 6.284268105 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.341082220 4.776100714 3.516447393 CORE 1 Si Si 0.0000 1 Si -2.587709310 12.020253596 7.339388646 CORE 2 Si Si 0.0000 2 Si 1.074855496 4.756723554 3.490966259 CORE 3 Si Si 0.0000 3 Si -8.610484427 12.025196844 7.293891174 CORE 4 Si Si 0.0000 4 Si -13.655795189 7.704143845 11.082783665 CORE 5 Si Si 0.0000 5 Si -4.003277058 14.880244303 7.323140467 CORE 6 Si Si 0.0000 6 Si -7.168182713 9.200352735 7.197616062 CORE 7 Si Si 0.0000 7 Si 2.430167368 16.323490840 3.547729334 CORE 8 Si Si 0.0000 8 Si -13.621650334 16.321898443 3.461384759 CORE 9 Si Si 0.0000 9 Si -3.939188821 9.111863090 7.350515038 CORE 10 Si Si 0.0000 10 Si -7.223195985 14.931712857 7.275375817 CORE 11 Si Si 0.0000 11 Si 2.387816440 7.694446184 3.486199805 CORE 12 Si Si 0.0000 12 Si -10.224341972 4.619443326 5.832719298 CORE 13 Si Si 0.0000 13 Si -0.325551578 12.044230356 9.582779685 CORE 14 Si Si 0.0000 14 Si -10.806619073 12.040165399 9.570856133 CORE 15 Si Si 0.0000 15 Si -1.225421285 4.768420828 5.743260861 CORE 16 Si Si 0.0000 16 Si -10.007380139 4.725502090 8.867181182 CORE 17 Si Si 0.0000 17 Si -0.290109448 11.989910999 5.087247254 CORE 18 Si Si 0.0000 18 Si -10.978227827 12.032217976 5.067096801 CORE 19 Si Si 0.0000 19 Si -1.201598443 4.738514709 8.864756077 CORE 20 Si Si 0.0000 20 Ti -9.087475497 7.693408755 5.006811052 CORE 21 Ti Ti 0.0000 21 Si 0.674714309 14.930801701 8.920935907 CORE 22 Si Si 0.0000 22 Si -2.261213016 16.305523442 5.105531504 CORE 23 Si Si 0.0000 23 Si -11.931653608 9.168884202 8.795229308 CORE 24 Si Si 0.0000 24 Si 0.729925415 9.111803269 5.736988406 CORE 25 Si Si 0.0000 25 Si -8.985768762 16.318890231 9.538656457 CORE 26 Si Si 0.0000 26 Si -11.833707067 14.933498699 5.735239735 CORE 27 Si Si 0.0000 27 Si -2.220335260 7.687307572 9.539812906 CORE 28 Si Si 0.0000 28 Si -12.085383780 9.218623275 5.725946835 CORE 29 Si Si 0.0000 29 Si -2.225221454 16.284333917 9.549767558 CORE 30 Si Si 0.0000 30 Si 0.624896876 14.926505820 5.766948365 CORE 31 Si Si 0.0000 31 Si -9.106018786 7.683195911 9.204738047 CORE 32 Si Si 0.0000 32 Si -2.149615732 7.727604413 5.103941291 CORE 33 Si Si 0.0000 33 Si -11.863071188 14.944114291 8.857111661 CORE 34 Si Si 0.0000 34 Si -8.954846409 16.256195477 5.069038999 CORE 35 Si Si 0.0000 35 Si 0.616307836 9.135385065 8.861678349 CORE 36 Si Si 0.0000 36 O -15.257913552 7.786808493 3.355596289 CORE 37 O O 0.0000 37 O -5.612215116 14.982444240 7.390138140 CORE 38 O O 0.0000 38 O -15.217409332 16.102553222 3.606236364 CORE 39 O O 0.0000 39 O -5.552018514 9.059534698 7.283211022 CORE 40 O O 0.0000 40 O -10.639801253 4.411334251 7.397802411 CORE 41 O O 0.0000 41 O -0.771414764 11.959389515 3.534847806 CORE 42 O O 0.0000 42 O -10.414787110 12.090237885 3.539878382 CORE 43 O O 0.0000 43 O -0.761055224 4.703847689 7.300104293 CORE 44 O O 0.0000 44 O -13.199820334 6.145062468 3.496485675 CORE 45 O O 0.0000 45 O -3.562590852 13.312546082 7.247319488 CORE 46 O O 0.0000 46 O -7.563307613 10.786647269 7.245689641 CORE 47 O O 0.0000 47 O 2.097990850 17.920045931 3.535572317 CORE 48 O O 0.0000 48 O -3.470689413 10.666127205 7.415294903 CORE 49 O O 0.0000 49 O -13.314410148 17.914805308 3.284777815 CORE 50 O O 0.0000 50 O 1.916066434 6.136489301 3.492644487 CORE 51 O O 0.0000 51 O -7.756894618 13.400300431 7.166529854 CORE 52 O O 0.0000 52 O -11.608278204 4.585867503 4.964637782 CORE 53 O O 0.0000 53 O -1.682517136 12.150093223 8.690071705 CORE 54 O O 0.0000 54 O 0.096655423 4.722937851 4.798814905 CORE 55 O O 0.0000 55 O -9.414479655 12.004483582 8.716985582 CORE 56 O O 0.0000 56 O -1.619055117 11.953341522 6.028770441 CORE 57 O O 0.0000 57 O -11.213928283 4.857840367 9.946065984 CORE 58 O O 0.0000 58 O -9.695091719 11.917849691 6.074805515 CORE 59 O O 0.0000 59 O 0.170062838 4.654824164 9.739231307 CORE 60 O O 0.0000 60 O -10.601037896 8.564703450 5.503516907 CORE 61 O O 0.0000 61 O -0.774813161 15.625357689 9.215961051 CORE 62 O O 0.0000 62 O -10.506370821 8.379609960 8.737221768 CORE 63 O O 0.0000 63 O -0.838213790 15.611267568 5.502770639 CORE 64 O O 0.0000 64 O -0.708938836 8.423364320 5.392804589 CORE 65 O O 0.0000 65 O -10.459055951 15.707587877 9.207970049 CORE 66 O O 0.0000 66 O -10.292819701 15.425656300 5.491063740 CORE 67 O O 0.0000 67 O -0.848507128 8.471275027 9.128556638 CORE 68 O O 0.0000 68 O -12.555431027 9.158227528 7.288659007 CORE 69 O O 0.0000 69 O -2.558592674 16.080486704 3.521504367 CORE 70 O O 0.0000 70 O -8.960868417 7.810396631 3.211335536 CORE 71 O O 0.0000 71 O 1.002361427 15.084483742 7.338243456 CORE 72 O O 0.0000 72 O -2.481808223 7.873483466 3.522180420 CORE 73 O O 0.0000 73 O -12.226832650 15.172468149 7.292125159 CORE 74 O O 0.0000 74 O 1.048292036 8.908911898 7.314817183 CORE 75 O O 0.0000 75 O -8.629854847 16.034004642 3.489751082 CORE 76 O O 0.0000 76 O -13.210563803 8.427558289 4.864930369 CORE 77 O O 0.0000 77 O -3.377952760 15.560322847 8.667938507 CORE 78 O O 0.0000 78 O 1.757224714 15.653070606 4.870491244 CORE 79 O O 0.0000 79 O -7.879901041 8.417483394 8.435295890 CORE 80 O O 0.0000 80 O -3.313296808 8.426464210 6.001725491 CORE 81 O O 0.0000 81 O -13.077293871 15.545812536 9.742399333 CORE 82 O O 0.0000 82 O -7.672748545 15.740659040 5.928093640 CORE 83 O O 0.0000 83 O 1.720557282 8.442591999 9.815596355 CORE 84 O O 0.0000 84 O -7.683013209 8.542143804 5.791353610 CORE 85 O O 0.0000 85 O 1.834227014 15.650232487 9.794280401 CORE 86 O O 0.0000 86 O -3.460283686 15.655300278 5.990835760 CORE 87 O O 0.0000 87 O -12.968005933 8.446944386 9.814349456 CORE 88 O O 0.0000 88 O 1.912043551 8.407312209 4.875796974 CORE 89 O O 0.0000 89 O -7.851952165 15.634314433 8.603483927 CORE 90 O O 0.0000 90 O -12.870659246 15.736870702 4.783033048 CORE 91 O O 0.0000 91 O -3.442303108 8.308415698 8.674773135 CORE 92 O O 0.0000 92 O -9.425327236 6.017141732 5.610024943 CORE 93 O O 0.0000 93 O 0.612524163 13.351488947 9.327976636 CORE 94 O O 0.0000 94 O -2.197284124 17.912744288 5.402308285 CORE 95 O O 0.0000 95 O -11.693526029 10.709077944 9.284912485 CORE 96 O O 0.0000 96 O 0.664446950 10.705790662 5.387944871 CORE 97 O O 0.0000 97 O -8.992440081 17.930955584 9.285327687 CORE 98 O O 0.0000 98 O -11.885353888 13.346506059 5.388277839 CORE 99 O O 0.0000 99 O -2.033609326 6.098616587 9.198464908 CORE 100 O O 0.0000 100 O -11.993851259 10.775242182 5.241812971 CORE 101 O O 0.0000 101 O -2.176339114 17.881021623 9.196092369 CORE 102 O O 0.0000 102 O 0.565111723 13.343675436 5.382683643 CORE 103 O O 0.0000 103 O -9.135468545 6.100850872 8.802564644 CORE 104 O O 0.0000 104 O -2.071129676 6.138715369 5.492333233 CORE 105 O O 0.0000 105 O -11.692438518 13.349424612 9.166174250 CORE 106 O O 0.0000 106 O -9.214141081 17.836566130 5.365702357 CORE 107 O O 0.0000 107 O 0.545206881 10.732843960 9.178829920 CORE 108 O O 0.0000 108 O2 12.631065424 5.611933560 4.836242641 CORE 109 O2 O2 0.0000 109 O2 13.547012229 7.567390044 2.953474158 CORE 110 O2 O2 0.0000 110 H 13.067952561 6.779787479 3.270948807 CORE 111 H H 0.0000 111 H 13.379817215 8.220153374 3.666867938 CORE 112 H H 0.0000 112 C 13.911652975 5.781429437 5.522732052 CORE 113 C C 0.0000 113 C 13.106460927 4.564574912 5.723789200 CORE 114 C C 0.0000 114 H 13.433607880 3.614141991 5.237255791 CORE 115 H H 0.0000 115 H 12.511589416 4.467136452 6.652638383 CORE 116 H H 0.0000 116 H 14.793472823 5.753797099 4.843033679 CORE 117 H H 0.0000 117 H 13.920301673 6.568859313 6.299066348 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.340789318 4.776384540 3.518872498 CORE 1 Si Si 0.0000 1 Si -2.589615292 12.018851475 7.339898862 CORE 2 Si Si 0.0000 2 Si 1.074018935 4.756542505 3.490267992 CORE 3 Si Si 0.0000 3 Si -8.609881302 12.025512815 7.291611824 CORE 4 Si Si 0.0000 4 Si -13.656364058 7.707325467 11.084292252 CORE 5 Si Si 0.0000 5 Si -4.001697656 14.877776211 7.322843406 CORE 6 Si Si 0.0000 6 Si -7.166676248 9.203574285 7.201527921 CORE 7 Si Si 0.0000 7 Si 2.430821298 16.323821514 3.547119616 CORE 8 Si Si 0.0000 8 Si -13.621413819 16.321125237 3.461668660 CORE 9 Si Si 0.0000 9 Si -3.942814111 9.110217936 7.350909548 CORE 10 Si Si 0.0000 10 Si -7.224769612 14.933477942 7.277474952 CORE 11 Si Si 0.0000 11 Si 2.382913503 7.694184124 3.486307751 CORE 12 Si Si 0.0000 12 Si -10.224774397 4.617788802 5.831790761 CORE 13 Si Si 0.0000 13 Si -0.327030523 12.045680191 9.581944869 CORE 14 Si Si 0.0000 14 Si -10.808104754 12.038652139 9.569850839 CORE 15 Si Si 0.0000 15 Si -1.224680562 4.767868599 5.743100501 CORE 16 Si Si 0.0000 16 Si -10.007916869 4.729911271 8.866592307 CORE 17 Si Si 0.0000 17 Si -0.293277487 11.988654754 5.087322261 CORE 18 Si Si 0.0000 18 Si -10.975531664 12.031232152 5.067678220 CORE 19 Si Si 0.0000 19 Si -1.201667338 4.738069582 8.863854546 CORE 20 Si Si 0.0000 20 Ti -9.090057347 7.691273067 5.008761542 CORE 21 Ti Ti 0.0000 21 Si 0.676539270 14.929882617 8.919881699 CORE 22 Si Si 0.0000 22 Si -2.259336287 16.305676238 5.105164228 CORE 23 Si Si 0.0000 23 Si -11.935972280 9.171556407 8.792436623 CORE 24 Si Si 0.0000 24 Si 0.730085337 9.110887789 5.736855051 CORE 25 Si Si 0.0000 25 Si -8.984795564 16.320548935 9.542376995 CORE 26 Si Si 0.0000 26 Si -11.832681140 14.933864113 5.734106412 CORE 27 Si Si 0.0000 27 Si -2.224320038 7.685343708 9.537892008 CORE 28 Si Si 0.0000 28 Si -12.086963566 9.219759877 5.730160777 CORE 29 Si Si 0.0000 29 Si -2.221803620 16.285017464 9.548686116 CORE 30 Si Si 0.0000 30 Si 0.625784435 14.924176686 5.768529829 CORE 31 Si Si 0.0000 31 Si -9.109017859 7.687737708 9.202538801 CORE 32 Si Si 0.0000 32 Si -2.150757511 7.725332073 5.103395474 CORE 33 Si Si 0.0000 33 Si -11.862870083 14.943788374 8.856138013 CORE 34 Si Si 0.0000 34 Si -8.955778808 16.257820884 5.069319097 CORE 35 Si Si 0.0000 35 Si 0.611003650 9.134793484 8.861153451 CORE 36 Si Si 0.0000 36 O -15.260689773 7.789759190 3.353705363 CORE 37 O O 0.0000 37 O -5.612500898 14.981193329 7.390926933 CORE 38 O O 0.0000 38 O -15.216406883 16.102244746 3.602595702 CORE 39 O O 0.0000 39 O -5.555069162 9.058968631 7.281087011 CORE 40 O O 0.0000 40 O -10.639956364 4.414498143 7.396780914 CORE 41 O O 0.0000 41 O -0.775574668 11.958386537 3.534642563 CORE 42 O O 0.0000 42 O -10.412744107 12.089238799 3.539916494 CORE 43 O O 0.0000 43 O -0.759593215 4.704098217 7.298905928 CORE 44 O O 0.0000 44 O -13.202018063 6.145024125 3.497146666 CORE 45 O O 0.0000 45 O -3.567887725 13.308685815 7.246048017 CORE 46 O O 0.0000 46 O -7.563242181 10.787653418 7.251511977 CORE 47 O O 0.0000 47 O 2.099596039 17.919614354 3.536976609 CORE 48 O O 0.0000 48 O -3.469132720 10.664342660 7.417136838 CORE 49 O O 0.0000 49 O -13.316370784 17.914353117 3.293839304 CORE 50 O O 0.0000 50 O 1.916073169 6.135797249 3.491807465 CORE 51 O O 0.0000 51 O -7.760220655 13.402628267 7.170470925 CORE 52 O O 0.0000 52 O -11.607678351 4.591118649 4.966098595 CORE 53 O O 0.0000 53 O -1.683070417 12.154337355 8.688659729 CORE 54 O O 0.0000 54 O 0.097683660 4.723883891 4.798569496 CORE 55 O O 0.0000 55 O -9.418430371 12.000905699 8.712612726 CORE 56 O O 0.0000 56 O -1.621734344 11.952763058 6.028039159 CORE 57 O O 0.0000 57 O -11.217440992 4.858866985 9.944629818 CORE 58 O O 0.0000 58 O -9.688932113 11.919025213 6.067378436 CORE 59 O O 0.0000 59 O 0.169769551 4.652170987 9.739927292 CORE 60 O O 0.0000 60 O -10.603145753 8.560455282 5.507437742 CORE 61 O O 0.0000 61 O -0.770316477 15.626756352 9.212374172 CORE 62 O O 0.0000 62 O -10.508964218 8.384418717 8.732824341 CORE 63 O O 0.0000 63 O -0.836463497 15.609827968 5.505316622 CORE 64 O O 0.0000 64 O -0.708285676 8.423676688 5.389667145 CORE 65 O O 0.0000 65 O -10.458334280 15.706028490 9.205653271 CORE 66 O O 0.0000 66 O -10.292932667 15.424753649 5.490713047 CORE 67 O O 0.0000 67 O -0.855274478 8.475910376 9.124911563 CORE 68 O O 0.0000 68 O -12.558013455 9.161142477 7.288995474 CORE 69 O O 0.0000 69 O -2.556013711 16.080832513 3.520885748 CORE 70 O O 0.0000 70 O -8.974515697 7.815284381 3.211318876 CORE 71 O O 0.0000 71 O 1.008549323 15.077129196 7.338020184 CORE 72 O O 0.0000 72 O -2.485271667 7.871219775 3.522005226 CORE 73 O O 0.0000 73 O -12.226627888 15.170802382 7.290517982 CORE 74 O O 0.0000 74 O 1.044476802 8.909007323 7.314324920 CORE 75 O O 0.0000 75 O -8.629708781 16.033519153 3.493517491 CORE 76 O O 0.0000 76 O -13.211824322 8.431013503 4.866995880 CORE 77 O O 0.0000 77 O -3.374219893 15.558791425 8.667110994 CORE 78 O O 0.0000 78 O 1.756844826 15.652283272 4.869261462 CORE 79 O O 0.0000 79 O -7.882526191 8.417923909 8.436457284 CORE 80 O O 0.0000 80 O -3.313069915 8.423990929 6.002252595 CORE 81 O O 0.0000 81 O -13.078701226 15.544257329 9.743283063 CORE 82 O O 0.0000 82 O -7.674405501 15.742606904 5.929097945 CORE 83 O O 0.0000 83 O 1.712621980 8.438514069 9.815784177 CORE 84 O O 0.0000 84 O -7.682351581 8.543948962 5.793430761 CORE 85 O O 0.0000 85 O 1.835469442 15.649505984 9.794435740 CORE 86 O O 0.0000 86 O -3.460923375 15.656255975 5.989048520 CORE 87 O O 0.0000 87 O -12.967407812 8.447439244 9.812164435 CORE 88 O O 0.0000 88 O 1.912808907 8.406960201 4.877821178 CORE 89 O O 0.0000 89 O -7.848412897 15.639535740 8.607046310 CORE 90 O O 0.0000 90 O -12.873061160 15.736988327 4.785167101 CORE 91 O O 0.0000 91 O -3.448226776 8.305961877 8.676440409 CORE 92 O O 0.0000 92 O -9.427856357 6.016035689 5.609027105 CORE 93 O O 0.0000 93 O 0.612307469 13.352558809 9.331337048 CORE 94 O O 0.0000 94 O -2.195287501 17.912550554 5.402927969 CORE 95 O O 0.0000 95 O -11.701462486 10.709112972 9.286336860 CORE 96 O O 0.0000 96 O 0.662967814 10.704208789 5.386778380 CORE 97 O O 0.0000 97 O -8.995173964 17.933700294 9.288230449 CORE 98 O O 0.0000 98 O -11.883253537 13.345675770 5.387982298 CORE 99 O O 0.0000 99 O -2.032506227 6.098355968 9.197261218 CORE 100 O O 0.0000 100 O -11.990590076 10.773650074 5.244618436 CORE 101 O O 0.0000 101 O -2.176015613 17.881663079 9.194967870 CORE 102 O O 0.0000 102 O 0.563043702 13.341959073 5.382011394 CORE 103 O O 0.0000 103 O -9.134137592 6.103126383 8.803612766 CORE 104 O O 0.0000 104 O -2.071073675 6.137205858 5.491162406 CORE 105 O O 0.0000 105 O -11.691084664 13.350291947 9.165376633 CORE 106 O O 0.0000 106 O -9.217949002 17.835443510 5.367189036 CORE 107 O O 0.0000 107 O 0.542228592 10.732134899 9.178313770 CORE 108 O O 0.0000 108 O2 12.633769092 5.605082522 4.828889657 CORE 109 O2 O2 0.0000 109 O2 13.532171401 7.581986987 2.949981685 CORE 110 O2 O2 0.0000 110 H 13.074315198 6.776649678 3.270902632 CORE 111 H H 0.0000 111 H 13.389102138 8.218823326 3.679391699 CORE 112 H H 0.0000 112 C 13.908874253 5.790247943 5.512982719 CORE 113 C C 0.0000 113 C 13.114019806 4.565107969 5.727208187 CORE 114 C C 0.0000 114 H 13.443470140 3.618113253 5.243311973 CORE 115 H H 0.0000 115 H 12.527176548 4.467101713 6.664211394 CORE 116 H H 0.0000 116 H 14.788299307 5.758118350 4.838048442 CORE 117 H H 0.0000 117 H 13.911893724 6.582388124 6.285316836 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.339660047 4.777497214 3.516999449 CORE 1 Si Si 0.0000 1 Si -2.588910748 12.019591672 7.340162833 CORE 2 Si Si 0.0000 2 Si 1.073953311 4.758080990 3.490167197 CORE 3 Si Si 0.0000 3 Si -8.610271389 12.025070570 7.293148025 CORE 4 Si Si 0.0000 4 Si -13.654856055 7.705378468 11.083754346 CORE 5 Si Si 0.0000 5 Si -4.001760586 14.878687079 7.323438366 CORE 6 Si Si 0.0000 6 Si -7.164507001 9.201896409 7.200577704 CORE 7 Si Si 0.0000 7 Si 2.429395854 16.324786004 3.547520440 CORE 8 Si Si 0.0000 8 Si -13.621870492 16.322362022 3.461017406 CORE 9 Si Si 0.0000 9 Si -3.942100523 9.110741623 7.350501649 CORE 10 Si Si 0.0000 10 Si -7.223833557 14.931997836 7.275652567 CORE 11 Si Si 0.0000 11 Si 2.385799225 7.693580291 3.486098249 CORE 12 Si Si 0.0000 12 Si -10.223406494 4.618922234 5.831079030 CORE 13 Si Si 0.0000 13 Si -0.325893362 12.045659722 9.581492163 CORE 14 Si Si 0.0000 14 Si -10.807304950 12.039478969 9.570082631 CORE 15 Si Si 0.0000 15 Si -1.226053084 4.768427170 5.742663466 CORE 16 Si Si 0.0000 16 Si -10.006482380 4.728717298 8.868482548 CORE 17 Si Si 0.0000 17 Si -0.291637658 11.990483408 5.088247983 CORE 18 Si Si 0.0000 18 Si -10.977036397 12.031442318 5.067697543 CORE 19 Si Si 0.0000 19 Si -1.202570486 4.738411499 8.865737788 CORE 20 Si Si 0.0000 20 Ti -9.087384278 7.690958393 5.006156983 CORE 21 Ti Ti 0.0000 21 Si 0.674414478 14.930704402 8.920134791 CORE 22 Si Si 0.0000 22 Si -2.261063871 16.306032138 5.105358744 CORE 23 Si Si 0.0000 23 Si -11.935581615 9.170698009 8.793176881 CORE 24 Si Si 0.0000 24 Si 0.730600321 9.110666811 5.736773578 CORE 25 Si Si 0.0000 25 Si -8.984154913 16.318979458 9.540911997 CORE 26 Si Si 0.0000 26 Si -11.831961778 14.933850851 5.734850398 CORE 27 Si Si 0.0000 27 Si -2.222019351 7.685570740 9.538912212 CORE 28 Si Si 0.0000 28 Si -12.087075377 9.219427041 5.728563033 CORE 29 Si Si 0.0000 29 Si -2.224787104 16.285075988 9.549864626 CORE 30 Si Si 0.0000 30 Si 0.624173665 14.925895788 5.769009693 CORE 31 Si Si 0.0000 31 Si -9.104775203 7.685303635 9.203259509 CORE 32 Si Si 0.0000 32 Si -2.151533452 7.726160488 5.103310197 CORE 33 Si Si 0.0000 33 Si -11.861745431 14.941901196 8.856049237 CORE 34 Si Si 0.0000 34 Si -8.955046552 16.255970607 5.067817737 CORE 35 Si Si 0.0000 35 Si 0.614702839 9.134692148 8.862475966 CORE 36 Si Si 0.0000 36 O -15.258094259 7.786639696 3.354700995 CORE 37 O O 0.0000 37 O -5.612261688 14.982347662 7.390381799 CORE 38 O O 0.0000 38 O -15.216524660 16.101909892 3.605310566 CORE 39 O O 0.0000 39 O -5.555540076 9.059060741 7.282282866 CORE 40 O O 0.0000 40 O -10.639882080 4.412297012 7.397481083 CORE 41 O O 0.0000 41 O -0.772747642 11.959592907 3.535395069 CORE 42 O O 0.0000 42 O -10.413490604 12.091118193 3.540199026 CORE 43 O O 0.0000 43 O -0.761243243 4.703360183 7.298886682 CORE 44 O O 0.0000 44 O -13.200405561 6.144304973 3.496792550 CORE 45 O O 0.0000 45 O -3.563814998 13.312826593 7.247331963 CORE 46 O O 0.0000 46 O -7.562907711 10.786004372 7.247139349 CORE 47 O O 0.0000 47 O 2.099250984 17.919113297 3.535818791 CORE 48 O O 0.0000 48 O -3.470033558 10.667003333 7.416321421 CORE 49 O O 0.0000 49 O -13.315317144 17.914292864 3.287236772 CORE 50 O O 0.0000 50 O 1.916523492 6.137323194 3.492154050 CORE 51 O O 0.0000 51 O -7.758372600 13.400719900 7.167920453 CORE 52 O O 0.0000 52 O -11.607858480 4.588134365 4.966163181 CORE 53 O O 0.0000 53 O -1.682666858 12.151185284 8.689843565 CORE 54 O O 0.0000 54 O 0.097722919 4.722821524 4.798674019 CORE 55 O O 0.0000 55 O -9.416240532 12.004514717 8.716067543 CORE 56 O O 0.0000 56 O -1.619742725 11.953025407 6.028240826 CORE 57 O O 0.0000 57 O -11.214966142 4.856828741 9.946547141 CORE 58 O O 0.0000 58 O -9.694712409 11.919085611 6.072351122 CORE 59 O O 0.0000 59 O 0.170739285 4.654060183 9.739998571 CORE 60 O O 0.0000 60 O -10.600412255 8.562367397 5.504498998 CORE 61 O O 0.0000 61 O -0.772292316 15.625544504 9.214341094 CORE 62 O O 0.0000 62 O -10.507296677 8.380379851 8.737056083 CORE 63 O O 0.0000 63 O -0.837453437 15.610689105 5.503853374 CORE 64 O O 0.0000 64 O -0.707939658 8.424429714 5.391959884 CORE 65 O O 0.0000 65 O -10.459843823 15.707170282 9.206144546 CORE 66 O O 0.0000 66 O -10.293676084 15.425426385 5.492025445 CORE 67 O O 0.0000 67 O -0.849035391 8.472665329 9.126454231 CORE 68 O O 0.0000 68 O -12.553790813 9.159037060 7.289598118 CORE 69 O O 0.0000 69 O -2.557483033 16.080364034 3.522108456 CORE 70 O O 0.0000 70 O -8.963599605 7.811012284 3.212277005 CORE 71 O O 0.0000 71 O 1.005541014 15.082617753 7.338051678 CORE 72 O O 0.0000 72 O -2.483769244 7.872855127 3.522692462 CORE 73 O O 0.0000 73 O -12.226846121 15.172291569 7.290253860 CORE 74 O O 0.0000 74 O 1.047045373 8.908688613 7.314155279 CORE 75 O O 0.0000 75 O -8.629572529 16.033311004 3.492190564 CORE 76 O O 0.0000 76 O -13.210675614 8.427093270 4.865857841 CORE 77 O O 0.0000 77 O -3.377330583 15.560493085 8.667425857 CORE 78 O O 0.0000 78 O 1.756962795 15.653023037 4.869806899 CORE 79 O O 0.0000 79 O -7.881968291 8.416203509 8.436486496 CORE 80 O O 0.0000 80 O -3.312549927 8.425743762 6.000993753 CORE 81 O O 0.0000 81 O -13.078876159 15.545046825 9.742676616 CORE 82 O O 0.0000 82 O -7.672882102 15.741116853 5.928196566 CORE 83 O O 0.0000 83 O 1.719166478 8.441776701 9.816243045 CORE 84 O O 0.0000 84 O -7.681798107 8.542424892 5.791973142 CORE 85 O O 0.0000 85 O 1.835222535 15.650111692 9.794422884 CORE 86 O O 0.0000 86 O -3.461072906 15.656257561 5.990144873 CORE 87 O O 0.0000 87 O -12.965381553 8.447452073 9.811637864 CORE 88 O O 0.0000 88 O 1.912287379 8.407242153 4.876546893 CORE 89 O O 0.0000 89 O -7.850389891 15.637137848 8.603673423 CORE 90 O O 0.0000 90 O -12.870737186 15.738259274 4.784161731 CORE 91 O O 0.0000 91 O -3.443363676 8.307325367 8.675352197 CORE 92 O O 0.0000 92 O -9.425912271 6.016673109 5.609764700 CORE 93 O O 0.0000 93 O 0.612701982 13.351813711 9.328941383 CORE 94 O O 0.0000 94 O -2.196559374 17.912877769 5.402062420 CORE 95 O O 0.0000 95 O -11.695355417 10.706936490 9.283709860 CORE 96 O O 0.0000 96 O 0.664081689 10.704985887 5.387929504 CORE 97 O O 0.0000 97 O -8.993523935 17.932325561 9.286642290 CORE 98 O O 0.0000 98 O -11.884193441 13.345994480 5.387988308 CORE 99 O O 0.0000 99 O -2.033482311 6.099370622 9.198201013 CORE 100 O O 0.0000 100 O -11.994196122 10.774657952 5.243768178 CORE 101 O O 0.0000 101 O -2.175957879 17.881515184 9.196347667 CORE 102 O O 0.0000 102 O 0.564287093 13.342674044 5.382414576 CORE 103 O O 0.0000 103 O -9.133815630 6.101328576 8.802416835 CORE 104 O O 0.0000 104 O -2.071414881 6.139110477 5.491819898 CORE 105 O O 0.0000 105 O -11.691072347 13.349085000 9.166491166 CORE 106 O O 0.0000 106 O -9.214923179 17.835921791 5.366436910 CORE 107 O O 0.0000 107 O 0.544549679 10.732210000 9.178203009 CORE 108 O O 0.0000 108 O2 12.633218890 5.612086645 4.835970911 CORE 109 O2 O2 0.0000 109 O2 13.543160815 7.575482336 2.953447304 CORE 110 O2 O2 0.0000 110 H 13.071303424 6.773627195 3.272615701 CORE 111 H H 0.0000 111 H 13.383321650 8.219208488 3.667802180 CORE 112 H H 0.0000 112 C 13.912849602 5.785711480 5.515732043 CORE 113 C C 0.0000 113 C 13.107256498 4.561110329 5.722523435 CORE 114 C C 0.0000 114 H 13.432512864 3.618221219 5.239865904 CORE 115 H H 0.0000 115 H 12.516867814 4.464932871 6.656316929 CORE 116 H H 0.0000 116 H 14.789820590 5.754091592 4.844010370 CORE 117 H H 0.0000 117 H 13.916995265 6.573311017 6.296464375 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.339835365 4.777324525 3.517290197 CORE 1 Si Si 0.0000 1 Si -2.589020057 12.019476786 7.340121830 CORE 2 Si Si 0.0000 2 Si 1.073963511 4.757842138 3.490182792 CORE 3 Si Si 0.0000 3 Si -8.610210769 12.025139185 7.292909615 CORE 4 Si Si 0.0000 4 Si -13.655090068 7.705680745 11.083837873 CORE 5 Si Si 0.0000 5 Si -4.001750771 14.878545670 7.323346014 CORE 6 Si Si 0.0000 6 Si -7.164843781 9.202156884 7.200725207 CORE 7 Si Si 0.0000 7 Si 2.429617166 16.324636379 3.547458213 CORE 8 Si Si 0.0000 8 Si -13.621799672 16.322170017 3.461118506 CORE 9 Si Si 0.0000 9 Si -3.942211179 9.110660324 7.350564941 CORE 10 Si Si 0.0000 10 Si -7.223978853 14.932227607 7.275935404 CORE 11 Si Si 0.0000 11 Si 2.385351212 7.693674130 3.486130808 CORE 12 Si Si 0.0000 12 Si -10.223618762 4.618746230 5.831189487 CORE 13 Si Si 0.0000 13 Si -0.326069834 12.045662893 9.581562454 CORE 14 Si Si 0.0000 14 Si -10.807429077 12.039350534 9.570046649 CORE 15 Si Si 0.0000 15 Si -1.225840047 4.768340538 5.742731322 CORE 16 Si Si 0.0000 16 Si -10.006705039 4.728902671 8.868189138 CORE 17 Si Si 0.0000 17 Si -0.291892071 11.990199582 5.088104283 CORE 18 Si Si 0.0000 18 Si -10.976802768 12.031409741 5.067694500 CORE 19 Si Si 0.0000 19 Si -1.202430193 4.738358453 8.865445519 CORE 20 Si Si 0.0000 20 Ti -9.087799190 7.691007259 5.006561231 CORE 21 Ti Ti 0.0000 21 Si 0.674744330 14.930576831 8.920095538 CORE 22 Si Si 0.0000 22 Si -2.260795794 16.305976930 5.105328543 CORE 23 Si Si 0.0000 23 Si -11.935642235 9.170831201 8.793062012 CORE 24 Si Si 0.0000 24 Si 0.730520456 9.110701118 5.736786282 CORE 25 Si Si 0.0000 25 Si -8.984254407 16.319223068 9.541139377 CORE 26 Si Si 0.0000 26 Si -11.832073397 14.933853013 5.734734920 CORE 27 Si Si 0.0000 27 Si -2.222376530 7.685535424 9.538753829 CORE 28 Si Si 0.0000 28 Si -12.087058056 9.219478646 5.728811028 CORE 29 Si Si 0.0000 29 Si -2.224324080 16.285066906 9.549681673 CORE 30 Si Si 0.0000 30 Si 0.624423652 14.925628971 5.768935218 CORE 31 Si Si 0.0000 31 Si -9.105433751 7.685681445 9.203147606 CORE 32 Si Si 0.0000 32 Si -2.151412981 7.726031909 5.103323433 CORE 33 Si Si 0.0000 33 Si -11.861919979 14.942194103 8.856063006 CORE 34 Si Si 0.0000 34 Si -8.955160288 16.256257893 5.068050746 CORE 35 Si Si 0.0000 35 Si 0.614128582 9.134707860 8.862270647 CORE 36 Si Si 0.0000 36 O -15.258497048 7.787123887 3.354546493 CORE 37 O O 0.0000 37 O -5.612298830 14.982168486 7.390466468 CORE 38 O O 0.0000 38 O -15.216506378 16.101961785 3.604889202 CORE 39 O O 0.0000 39 O -5.555466947 9.059046470 7.282097249 CORE 40 O O 0.0000 40 O -10.639893627 4.412638641 7.397372375 CORE 41 O O 0.0000 41 O -0.773186418 11.959405659 3.535278298 CORE 42 O O 0.0000 42 O -10.413374752 12.090826439 3.540155133 CORE 43 O O 0.0000 43 O -0.760987098 4.703474636 7.298889648 CORE 44 O O 0.0000 44 O -13.200655933 6.144416543 3.496847551 CORE 45 O O 0.0000 45 O -3.564447182 13.312183840 7.247132654 CORE 46 O O 0.0000 46 O -7.562959671 10.786260377 7.247818065 CORE 47 O O 0.0000 47 O 2.099304483 17.919190993 3.535998549 CORE 48 O O 0.0000 48 O -3.469893843 10.666590351 7.416447929 CORE 49 O O 0.0000 49 O -13.315480723 17.914302233 3.288261616 CORE 50 O O 0.0000 50 O 1.916453634 6.137086359 3.492100267 CORE 51 O O 0.0000 51 O -7.758659344 13.401016123 7.168316333 CORE 52 O O 0.0000 52 O -11.607830576 4.588597510 4.966153139 CORE 53 O O 0.0000 53 O -1.682729403 12.151674520 8.689659774 CORE 54 O O 0.0000 54 O 0.097716760 4.722986429 4.798657816 CORE 55 O O 0.0000 55 O -9.416580391 12.003954561 8.715531311 CORE 56 O O 0.0000 56 O -1.620051792 11.952984613 6.028209485 CORE 57 O O 0.0000 57 O -11.215350263 4.857145144 9.946249546 CORE 58 O O 0.0000 58 O -9.693815227 11.919076241 6.071579294 CORE 59 O O 0.0000 59 O 0.170588792 4.653766987 9.739987541 CORE 60 O O 0.0000 60 O -10.600836405 8.562070598 5.504955127 CORE 61 O O 0.0000 61 O -0.771985557 15.625732617 9.214035816 CORE 62 O O 0.0000 62 O -10.507555516 8.381006748 8.736399200 CORE 63 O O 0.0000 63 O -0.837299673 15.610555336 5.504080525 CORE 64 O O 0.0000 64 O -0.707993351 8.424312810 5.391604018 CORE 65 O O 0.0000 65 O -10.459609425 15.706992980 9.206068245 CORE 66 O O 0.0000 66 O -10.293560617 15.425321878 5.491821723 CORE 67 O O 0.0000 67 O -0.850003777 8.473168980 9.126214756 CORE 68 O O 0.0000 68 O -12.554446283 9.159363842 7.289504549 CORE 69 O O 0.0000 69 O -2.557254985 16.080436685 3.521918656 CORE 70 O O 0.0000 70 O -8.965294088 7.811675363 3.212128284 CORE 71 O O 0.0000 71 O 1.006007887 15.081765698 7.338046809 CORE 72 O O 0.0000 72 O -2.484002488 7.872601283 3.522585809 CORE 73 O O 0.0000 73 O -12.226812251 15.172060500 7.290294863 CORE 74 O O 0.0000 74 O 1.046646626 8.908738056 7.314181600 CORE 75 O O 0.0000 75 O -8.629593698 16.033343437 3.492396492 CORE 76 O O 0.0000 76 O -13.210853818 8.427701716 4.866034480 CORE 77 O O 0.0000 77 O -3.376847737 15.560228862 8.667376942 CORE 78 O O 0.0000 78 O 1.756944513 15.652908151 4.869722231 CORE 79 O O 0.0000 79 O -7.882054892 8.416470470 8.436481931 CORE 80 O O 0.0000 80 O -3.312630562 8.425471755 6.001189182 CORE 81 O O 0.0000 81 O -13.078849024 15.544924300 9.742770717 CORE 82 O O 0.0000 82 O -7.673118425 15.741348209 5.928336463 CORE 83 O O 0.0000 83 O 1.718150557 8.441270312 9.816171841 CORE 84 O O 0.0000 84 O -7.681883938 8.542661438 5.792199381 CORE 85 O O 0.0000 85 O 1.835260831 15.650017563 9.794424862 CORE 86 O O 0.0000 86 O -3.461049620 15.656257272 5.989974699 CORE 87 O O 0.0000 87 O -12.965696009 8.447450055 9.811719565 CORE 88 O O 0.0000 88 O 1.912368399 8.407198332 4.876744757 CORE 89 O O 0.0000 89 O -7.850083133 15.637510037 8.604196951 CORE 90 O O 0.0000 90 O -12.871098022 15.738062081 4.784317831 CORE 91 O O 0.0000 91 O -3.444118447 8.307113759 8.675521077 CORE 92 O O 0.0000 92 O -9.426214026 6.016574079 5.609650212 CORE 93 O O 0.0000 93 O 0.612640785 13.351929317 9.329313224 CORE 94 O O 0.0000 94 O -2.196361925 17.912827029 5.402196764 CORE 95 O O 0.0000 95 O -11.696303404 10.707274372 9.284117607 CORE 96 O O 0.0000 96 O 0.663908873 10.704865236 5.387750887 CORE 97 O O 0.0000 97 O -8.993780080 17.932539043 9.286888840 CORE 98 O O 0.0000 98 O -11.884047567 13.345945037 5.387987395 CORE 99 O O 0.0000 99 O -2.033330857 6.099213069 9.198055107 CORE 100 O O 0.0000 100 O -11.993636297 10.774501408 5.243900163 CORE 101 O O 0.0000 101 O -2.175966924 17.881538104 9.196133448 CORE 102 O O 0.0000 102 O 0.564094070 13.342563051 5.382351969 CORE 103 O O 0.0000 103 O -9.133865666 6.101607646 8.802602451 CORE 104 O O 0.0000 104 O -2.071361958 6.138814831 5.491717809 CORE 105 O O 0.0000 105 O -11.691074272 13.349272248 9.166318178 CORE 106 O O 0.0000 106 O -9.215392939 17.835847555 5.366553681 CORE 107 O O 0.0000 107 O 0.544189421 10.732198324 9.178220202 CORE 108 O O 0.0000 108 O2 12.633304144 5.610999341 4.834871820 CORE 109 O2 O2 0.0000 109 O2 13.541454977 7.576491944 2.952909398 CORE 110 O2 O2 0.0000 110 H 13.071770874 6.774096251 3.272349753 CORE 111 H H 0.0000 111 H 13.384218831 8.219148666 3.669601135 CORE 112 H H 0.0000 112 C 13.912232621 5.786415640 5.515305278 CORE 113 C C 0.0000 113 C 13.108306288 4.561730884 5.723250609 CORE 114 C C 0.0000 114 H 13.434213699 3.618204354 5.240400843 CORE 115 H H 0.0000 115 H 12.518467999 4.465269599 6.657542299 CORE 116 H H 0.0000 116 H 14.789584459 5.754716615 4.843084952 CORE 117 H H 0.0000 117 H 13.916203351 6.574719914 6.294734038 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.338125871 4.775997504 3.517597832 CORE 1 Si Si 0.0000 1 Si -2.588133845 12.020493314 7.340475717 CORE 2 Si Si 0.0000 2 Si 1.074355330 4.759267756 3.490215731 CORE 3 Si Si 0.0000 3 Si -8.610286593 12.023908022 7.293321090 CORE 4 Si Si 0.0000 4 Si -13.652487626 7.705023144 11.082807932 CORE 5 Si Si 0.0000 5 Si -4.001457099 14.879209037 7.323885899 CORE 6 Si Si 0.0000 6 Si -7.163437581 9.201235926 7.201246606 CORE 7 Si Si 0.0000 7 Si 2.429465904 16.325100966 3.547644894 CORE 8 Si Si 0.0000 8 Si -13.621738474 16.322864087 3.460400157 CORE 9 Si Si 0.0000 9 Si -3.942979422 9.111393170 7.350143653 CORE 10 Si Si 0.0000 10 Si -7.223727904 14.930562416 7.274229181 CORE 11 Si Si 0.0000 11 Si 2.386573242 7.694003363 3.486487053 CORE 12 Si Si 0.0000 12 Si -10.222223146 4.617858282 5.830775198 CORE 13 Si Si 0.0000 13 Si -0.324784298 12.045563287 9.581197992 CORE 14 Si Si 0.0000 14 Si -10.806844235 12.038655887 9.570221615 CORE 15 Si Si 0.0000 15 Si -1.227064001 4.768846207 5.742256176 CORE 16 Si Si 0.0000 16 Si -10.005327899 4.728806525 8.868272893 CORE 17 Si Si 0.0000 17 Si -0.290590177 11.990929545 5.089245213 CORE 18 Si Si 0.0000 18 Si -10.978241684 12.031142636 5.068452635 CORE 19 Si Si 0.0000 19 Si -1.203215178 4.738894826 8.866494782 CORE 20 Si Si 0.0000 20 Ti -9.087422574 7.690015669 5.007260106 CORE 21 Ti Ti 0.0000 21 Si 0.673641424 14.931290217 8.920106188 CORE 22 Si Si 0.0000 22 Si -2.261957396 16.306643611 5.105873601 CORE 23 Si Si 0.0000 23 Si -11.934043782 9.169721554 8.791970453 CORE 24 Si Si 0.0000 24 Si 0.731805223 9.110772759 5.737164589 CORE 25 Si Si 0.0000 25 Si -8.983534276 16.318119475 9.540619423 CORE 26 Si Si 0.0000 26 Si -11.831861322 14.934688492 5.734389933 CORE 27 Si Si 0.0000 27 Si -2.219797374 7.685881233 9.539168118 CORE 28 Si Si 0.0000 28 Si -12.086747257 9.219327579 5.728982190 CORE 29 Si Si 0.0000 29 Si -2.226043774 16.285097466 9.550850293 CORE 30 Si Si 0.0000 30 Si 0.623335180 14.926822512 5.769932981 CORE 31 Si Si 0.0000 31 Si -9.102607880 7.684100148 9.203027336 CORE 32 Si Si 0.0000 32 Si -2.151371413 7.726874306 5.103334540 CORE 33 Si Si 0.0000 33 Si -11.862301406 14.940991770 8.855528751 CORE 34 Si Si 0.0000 34 Si -8.955120836 16.255925201 5.067135446 CORE 35 Si Si 0.0000 35 Si 0.617925726 9.134467855 8.862777211 CORE 36 Si Si 0.0000 36 O -15.256402085 7.783874228 3.354910879 CORE 37 O O 0.0000 37 O -5.612019206 14.983035389 7.390076370 CORE 38 O O 0.0000 38 O -15.216979601 16.101626498 3.606789941 CORE 39 O O 0.0000 39 O -5.555091678 9.058568333 7.282928414 CORE 40 O O 0.0000 40 O -10.639047059 4.411588527 7.397564306 CORE 41 O O 0.0000 41 O -0.771061818 11.960884756 3.535631881 CORE 42 O O 0.0000 42 O -10.413275257 12.092829079 3.541246920 CORE 43 O O 0.0000 43 O -0.763267579 4.702614652 7.299044912 CORE 44 O O 0.0000 44 O -13.199574774 6.143617390 3.496398801 CORE 45 O O 0.0000 45 O -3.560384655 13.314883865 7.248464450 CORE 46 O O 0.0000 46 O -7.563230635 10.784841102 7.244595952 CORE 47 O O 0.0000 47 O 2.098811630 17.920336388 3.534927453 CORE 48 O O 0.0000 48 O -3.471393186 10.668218640 7.416219788 CORE 49 O O 0.0000 49 O -13.314579693 17.915358113 3.283100956 CORE 50 O O 0.0000 50 O 1.916724598 6.137697833 3.492059872 CORE 51 O O 0.0000 51 O -7.757687301 13.399042024 7.166697441 CORE 52 O O 0.0000 52 O -11.607611765 4.587609380 4.966510754 CORE 53 O O 0.0000 53 O -1.682905683 12.149244050 8.690290717 CORE 54 O O 0.0000 54 O 0.097851857 4.722144608 4.798804711 CORE 55 O O 0.0000 55 O -9.414266810 12.007558246 8.717760986 CORE 56 O O 0.0000 56 O -1.619611092 11.953304188 6.029119536 CORE 57 O O 0.0000 57 O -11.212825954 4.854984231 9.947829185 CORE 58 O O 0.0000 58 O -9.698638877 11.919854205 6.075648698 CORE 59 O O 0.0000 59 O 0.171132644 4.655457836 9.739828170 CORE 60 O O 0.0000 60 O -10.598806104 8.563192497 5.502336571 CORE 61 O O 0.0000 61 O -0.773724688 15.625069539 9.215119921 CORE 62 O O 0.0000 62 O -10.507187945 8.377768476 8.741534224 CORE 63 O O 0.0000 63 O -0.838307318 15.611153692 5.503257424 CORE 64 O O 0.0000 64 O -0.708401143 8.425049980 5.392915122 CORE 65 O O 0.0000 65 O -10.460560298 15.707811449 9.205621930 CORE 66 O O 0.0000 66 O -10.292840678 15.426232313 5.493280255 CORE 67 O O 0.0000 67 O -0.845469566 8.469781660 9.127275354 CORE 68 O O 0.0000 68 O -12.549698073 9.157731805 7.288809249 CORE 69 O O 0.0000 69 O -2.558614228 16.079872492 3.522758416 CORE 70 O O 0.0000 70 O -8.955753790 7.807755850 3.211439603 CORE 71 O O 0.0000 71 O 1.004914603 15.085995271 7.338508035 CORE 72 O O 0.0000 72 O -2.483754426 7.873997784 3.522658001 CORE 73 O O 0.0000 73 O -12.226818602 15.172872915 7.290006929 CORE 74 O O 0.0000 74 O 1.048435985 8.908245504 7.314222603 CORE 75 O O 0.0000 75 O -8.629038685 16.032229034 3.492452405 CORE 76 O O 0.0000 76 O -13.208796382 8.424378253 4.867014214 CORE 77 O O 0.0000 77 O -3.379217128 15.562723910 8.668359414 CORE 78 O O 0.0000 78 O 1.756090824 15.653357891 4.870351576 CORE 79 O O 0.0000 79 O -7.880750880 8.415102223 8.435734066 CORE 80 O O 0.0000 80 O -3.312664047 8.427451620 6.000360909 CORE 81 O O 0.0000 81 O -13.079214286 15.544234554 9.741637926 CORE 82 O O 0.0000 82 O -7.672266083 15.740355754 5.926326712 CORE 83 O O 0.0000 83 O 1.724157554 8.444108142 9.816730363 CORE 84 O O 0.0000 84 O -7.679467783 8.541889096 5.792135404 CORE 85 O O 0.0000 85 O 1.834800886 15.650082141 9.794045338 CORE 86 O O 0.0000 86 O -3.461671027 15.657234880 5.990243995 CORE 87 O O 0.0000 87 O -12.963701310 8.446832528 9.811284052 CORE 88 O O 0.0000 88 O 1.912535249 8.407079122 4.875567616 CORE 89 O O 0.0000 89 O -7.851194506 15.636791174 8.601080503 CORE 90 O O 0.0000 90 O -12.868890286 15.740238274 4.783609371 CORE 91 O O 0.0000 91 O -3.440342472 8.308380526 8.674166688 CORE 92 O O 0.0000 92 O -9.424903471 6.016879672 5.610056741 CORE 93 O O 0.0000 93 O 0.613373425 13.352537042 9.327111239 CORE 94 O O 0.0000 94 O -2.197287011 17.913702148 5.401205619 CORE 95 O O 0.0000 95 O -11.691291350 10.705057384 9.281179472 CORE 96 O O 0.0000 96 O 0.664681349 10.705068051 5.388784860 CORE 97 O O 0.0000 97 O -8.992342896 17.931430838 9.286487559 CORE 98 O O 0.0000 98 O -11.884364718 13.345944605 5.387828480 CORE 99 O O 0.0000 99 O -2.034001337 6.099434047 9.198763567 CORE 100 O O 0.0000 100 O -11.997447298 10.774416073 5.244230697 CORE 101 O O 0.0000 101 O -2.175823552 17.881840525 9.197791441 CORE 102 O O 0.0000 102 O 0.565228537 13.344189898 5.383134828 CORE 103 O O 0.0000 103 O -9.131821124 6.100473350 8.801739793 CORE 104 O O 0.0000 104 O -2.071760705 6.139839431 5.492093909 CORE 105 O O 0.0000 105 O -11.690704006 13.348272441 9.167161058 CORE 106 O O 0.0000 106 O -9.212984675 17.835146566 5.366085913 CORE 107 O O 0.0000 107 O 0.545860041 10.732142395 9.177903741 CORE 108 O O 0.0000 108 O2 12.635694510 5.618092547 4.840066789 CORE 109 O2 O2 0.0000 109 O2 13.549287898 7.568216153 2.953354572 CORE 110 O2 O2 0.0000 110 H 13.072591462 6.770472962 3.273912351 CORE 111 H H 0.0000 111 H 13.379540863 8.222313711 3.661907500 CORE 112 H H 0.0000 112 C 13.911442439 5.783672514 5.519314282 CORE 113 C C 0.0000 113 C 13.102391857 4.562509136 5.720062272 CORE 114 C C 0.0000 114 H 13.423008361 3.617079139 5.235556567 CORE 115 H H 0.0000 115 H 12.510974744 4.461244283 6.652469807 CORE 116 H H 0.0000 116 H 14.791176562 5.750620234 4.847303762 CORE 117 H H 0.0000 117 H 13.920106918 6.566131035 6.303327835 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.335390834 4.773874213 3.518090019 CORE 1 Si Si 0.0000 1 Si -2.586715521 12.022120017 7.341041923 CORE 2 Si Si 0.0000 2 Si 1.074982125 4.761548744 3.490268373 CORE 3 Si Si 0.0000 3 Si -8.610407641 12.021938247 7.293979418 CORE 4 Si Si 0.0000 4 Si -13.648323681 7.703971157 11.081159981 CORE 5 Si Si 0.0000 5 Si -4.000987340 14.880270250 7.324749774 CORE 6 Si Si 0.0000 6 Si -7.161187507 9.199762307 7.202080890 CORE 7 Si Si 0.0000 7 Si 2.429223615 16.325844335 3.547943706 CORE 8 Si Si 0.0000 8 Si -13.621640712 16.323974454 3.459250706 CORE 9 Si Si 0.0000 9 Si -3.944208764 9.112565809 7.349469502 CORE 10 Si Si 0.0000 10 Si -7.223326270 14.927897996 7.271499103 CORE 11 Si Si 0.0000 11 Si 2.388528296 7.694530222 3.487056986 CORE 12 Si Si 0.0000 12 Si -10.219990007 4.616437421 5.830112305 CORE 13 Si Si 0.0000 13 Si -0.322727632 12.045403860 9.580614975 CORE 14 Si Si 0.0000 14 Si -10.805908564 12.037544222 9.570501637 CORE 15 Si Si 0.0000 15 Si -1.229022520 4.769655450 5.741495910 CORE 16 Si Si 0.0000 16 Si -10.003124396 4.728652720 8.868406932 CORE 17 Si Si 0.0000 17 Si -0.288507146 11.992097427 5.091070717 CORE 18 Si Si 0.0000 18 Si -10.980543910 12.030715239 5.069665606 CORE 19 Si Si 0.0000 19 Si -1.204471078 4.739752935 8.868173695 CORE 20 Si Si 0.0000 20 Ti -9.086819642 7.688429039 5.008378366 CORE 21 Ti Ti 0.0000 21 Si 0.671876698 14.932431864 8.920123152 CORE 22 Si Si 0.0000 22 Si -2.263816228 16.307710302 5.106745540 CORE 23 Si Si 0.0000 23 Si -11.931485988 9.167946091 8.790223988 CORE 24 Si Si 0.0000 24 Si 0.733861120 9.110887212 5.737769971 CORE 25 Si Si 0.0000 25 Si -8.982382104 16.316353813 9.539787498 CORE 26 Si Si 0.0000 26 Si -11.831522232 14.936025171 5.733837877 CORE 27 Si Si 0.0000 27 Si -2.215670955 7.686434615 9.539830935 CORE 28 Si Si 0.0000 28 Si -12.086249977 9.219085844 5.729256050 CORE 29 Si Si 0.0000 29 Si -2.228795361 16.285146187 9.552720147 CORE 30 Si Si 0.0000 30 Si 0.621593739 14.928732321 5.771529431 CORE 31 Si Si 0.0000 31 Si -9.098086371 7.681570217 9.202834874 CORE 32 Si Si 0.0000 32 Si -2.151304827 7.728221940 5.103352265 CORE 33 Si Si 0.0000 33 Si -11.862911458 14.939068123 8.854673852 CORE 34 Si Si 0.0000 34 Si -8.955057906 16.255393009 5.065670980 CORE 35 Si Si 0.0000 35 Si 0.624000849 9.134083702 8.863587684 CORE 36 Si Si 0.0000 36 O -15.253049875 7.778674687 3.355493972 CORE 37 O O 0.0000 37 O -5.611571963 14.984422375 7.389452274 CORE 38 O O 0.0000 38 O -15.217736682 16.101090125 3.609831079 CORE 39 O O 0.0000 39 O -5.554491248 9.057803343 7.284258384 CORE 40 O O 0.0000 40 O -10.637692626 4.409908201 7.397871257 CORE 41 O O 0.0000 41 O -0.767662459 11.963251368 3.536197630 CORE 42 O O 0.0000 42 O -10.413116105 12.096033187 3.542993614 CORE 43 O O 0.0000 43 O -0.766915963 4.701238765 7.299293287 CORE 44 O O 0.0000 44 O -13.197844880 6.142338803 3.495680832 CORE 45 O O 0.0000 45 O -3.553884420 13.319203963 7.250595307 CORE 46 O O 0.0000 46 O -7.563664022 10.782570492 7.239440617 CORE 47 O O 0.0000 47 O 2.098022796 17.922169078 3.533213699 CORE 48 O O 0.0000 48 O -3.473792406 10.670823816 7.415854718 CORE 49 O O 0.0000 49 O -13.313137890 17.917047377 3.274843855 CORE 50 O O 0.0000 50 O 1.917158178 6.138676017 3.491995211 CORE 51 O O 0.0000 51 O -7.756131763 13.395883610 7.164107260 CORE 52 O O 0.0000 52 O -11.607261707 4.586028227 4.967082817 CORE 53 O O 0.0000 53 O -1.683187616 12.145355097 8.691300194 CORE 54 O O 0.0000 54 O 0.098067781 4.720797551 4.799039774 CORE 55 O O 0.0000 55 O -9.410564734 12.013324142 8.721328542 CORE 56 O O 0.0000 56 O -1.618905586 11.953815479 6.030575633 CORE 57 O O 0.0000 57 O -11.208787291 4.851526999 9.950356683 CORE 58 O O 0.0000 58 O -9.706356715 11.921098773 6.082159715 CORE 59 O O 0.0000 59 O 0.172003075 4.658163339 9.739573252 CORE 60 O O 0.0000 60 O -10.595557237 8.564987421 5.498146896 CORE 61 O O 0.0000 61 O -0.776507452 15.624008758 9.216854442 CORE 62 O O 0.0000 62 O -10.506599831 8.372587386 8.749750170 CORE 63 O O 0.0000 63 O -0.839919435 15.612110975 5.501940463 CORE 64 O O 0.0000 64 O -0.709053534 8.426229394 5.395012812 CORE 65 O O 0.0000 65 O -10.462081581 15.709121029 9.204907688 CORE 66 O O 0.0000 66 O -10.291688698 15.427689067 5.495613769 CORE 67 O O 0.0000 67 O -0.838214752 8.464361862 9.128972296 CORE 68 O O 0.0000 68 O -12.542100897 9.155120431 7.287696694 CORE 69 O O 0.0000 69 O -2.560789056 16.078969841 3.524102079 CORE 70 O O 0.0000 70 O -8.940489004 7.801484573 3.210337697 CORE 71 O O 0.0000 71 O 1.003165465 15.092762560 7.339245935 CORE 72 O O 0.0000 72 O -2.483357795 7.876231924 3.522773555 CORE 73 O O 0.0000 73 O -12.226828994 15.174172981 7.289546236 CORE 74 O O 0.0000 74 O 1.051298806 8.907457450 7.314288253 CORE 75 O O 0.0000 75 O -8.628150741 16.030446074 3.492541942 CORE 76 O O 0.0000 76 O -13.205504408 8.419060943 4.868581833 CORE 77 O O 0.0000 77 O -3.383008306 15.566715928 8.669931218 CORE 78 O O 0.0000 78 O 1.754725230 15.654077331 4.871358467 CORE 79 O O 0.0000 79 O -7.878664577 8.412912912 8.434537374 CORE 80 O O 0.0000 80 O -3.312717547 8.430619404 5.999035807 CORE 81 O O 0.0000 81 O -13.079798550 15.543130817 9.739825507 CORE 82 O O 0.0000 82 O -7.670902221 15.738767971 5.923111217 CORE 83 O O 0.0000 83 O 1.733768481 8.448648641 9.817623983 CORE 84 O O 0.0000 84 O -7.675601936 8.540653320 5.792033163 CORE 85 O O 0.0000 85 O 1.834064782 15.650185207 9.793438130 CORE 86 O O 0.0000 86 O -3.462665393 15.658798880 5.990674943 CORE 87 O O 0.0000 87 O -12.960509407 8.445844397 9.810587155 CORE 88 O O 0.0000 88 O 1.912802171 8.406888271 4.873684298 CORE 89 O O 0.0000 89 O -7.852972704 15.635640733 8.596094124 CORE 90 O O 0.0000 90 O -12.865358139 15.743720155 4.782475820 CORE 91 O O 0.0000 91 O -3.434301027 8.310407383 8.671999696 CORE 92 O O 0.0000 92 O -9.422806584 6.017368620 5.610707082 CORE 93 O O 0.0000 93 O 0.614545996 13.353509317 9.323588033 CORE 94 O O 0.0000 94 O -2.198766918 17.915102251 5.399619819 CORE 95 O O 0.0000 95 O -11.683271949 10.701510205 9.276478440 CORE 96 O O 0.0000 96 O 0.665917235 10.705392816 5.390439353 CORE 97 O O 0.0000 97 O -8.990043364 17.929657680 9.285845434 CORE 98 O O 0.0000 98 O -11.884872389 13.345943884 5.387574171 CORE 99 O O 0.0000 99 O -2.035074029 6.099787496 9.199897119 CORE 100 O O 0.0000 100 O -12.003544552 10.774279421 5.244759702 CORE 101 O O 0.0000 101 O -2.175594157 17.882324428 9.200444077 CORE 102 O O 0.0000 102 O 0.567043492 13.346792768 5.384387356 CORE 103 O O 0.0000 103 O -9.128549741 6.098658678 8.800359540 CORE 104 O O 0.0000 104 O -2.072398470 6.141478819 5.492695640 CORE 105 O O 0.0000 105 O -11.690111851 13.346672405 9.168509589 CORE 106 O O 0.0000 106 O -9.209131529 17.834025099 5.365337591 CORE 107 O O 0.0000 107 O 0.548533303 10.732053167 9.177397405 CORE 108 O O 0.0000 108 O2 12.639518982 5.629441705 4.848378814 CORE 109 O2 O2 0.0000 109 O2 13.561820726 7.554974772 2.954066836 CORE 110 O2 O2 0.0000 110 H 13.073904326 6.764675641 3.276412539 CORE 111 H H 0.0000 111 H 13.372056076 8.227377754 3.649597577 CORE 112 H H 0.0000 112 C 13.910178264 5.779283514 5.525728611 CORE 113 C C 0.0000 113 C 13.092928922 4.563754425 5.714960948 CORE 114 C C 0.0000 114 H 13.405079743 3.615278594 5.227805802 CORE 115 H H 0.0000 115 H 12.498985575 4.454804065 6.644353819 CORE 116 H H 0.0000 116 H 14.793723964 5.744065995 4.854053874 CORE 117 H H 0.0000 117 H 13.926352355 6.552388886 6.317077803 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.337190778 4.775271578 3.517766104 CORE 1 Si Si 0.0000 1 Si -2.587648882 12.021049434 7.340669321 CORE 2 Si Si 0.0000 2 Si 1.074569522 4.760047449 3.490233760 CORE 3 Si Si 0.0000 3 Si -8.610327968 12.023234709 7.293546111 CORE 4 Si Si 0.0000 4 Si -13.651064106 7.704663497 11.082244542 CORE 5 Si Si 0.0000 5 Si -4.001296600 14.879571712 7.324181287 CORE 6 Si Si 0.0000 6 Si -7.162668376 9.200732131 7.201531801 CORE 7 Si Si 0.0000 7 Si 2.429382960 16.325355098 3.547747059 CORE 8 Si Si 0.0000 8 Si -13.621705181 16.323243627 3.460007168 CORE 9 Si Si 0.0000 9 Si -3.943399723 9.111794044 7.349913231 CORE 10 Si Si 0.0000 10 Si -7.223590690 14.929651549 7.273295852 CORE 11 Si Si 0.0000 11 Si 2.387241605 7.694183403 3.486681874 CORE 12 Si Si 0.0000 12 Si -10.221459714 4.617372505 5.830548579 CORE 13 Si Si 0.0000 13 Si -0.324081294 12.045508799 9.580998683 CORE 14 Si Si 0.0000 14 Si -10.806524390 12.038275771 9.570317314 CORE 15 Si Si 0.0000 15 Si -1.227733519 4.769122826 5.741996237 CORE 16 Si Si 0.0000 16 Si -10.004574474 4.728753911 8.868318689 CORE 17 Si Si 0.0000 17 Si -0.289878128 11.991328689 5.089869309 CORE 18 Si Si 0.0000 18 Si -10.979028786 12.030996470 5.068867305 CORE 19 Si Si 0.0000 19 Si -1.203644525 4.739188166 8.867068747 CORE 20 Si Si 0.0000 20 Ti -9.087216465 7.689473243 5.007642368 CORE 21 Ti Ti 0.0000 21 Si 0.673038107 14.931680568 8.920111969 CORE 22 Si Si 0.0000 22 Si -2.262592851 16.307008304 5.106171651 CORE 23 Si Si 0.0000 23 Si -11.933169309 9.169114694 8.791373438 CORE 24 Si Si 0.0000 24 Si 0.732508035 9.110811823 5.737371581 CORE 25 Si Si 0.0000 25 Si -8.983140340 16.317515930 9.540335066 CORE 26 Si Si 0.0000 26 Si -11.831745469 14.935145439 5.734201198 CORE 27 Si Si 0.0000 27 Si -2.218386748 7.686070499 9.539394737 CORE 28 Si Si 0.0000 28 Si -12.086577327 9.219244983 5.729075759 CORE 29 Si Si 0.0000 29 Si -2.226984448 16.285114043 9.551489528 CORE 30 Si Si 0.0000 30 Si 0.622739753 14.927475355 5.770478722 CORE 31 Si Si 0.0000 31 Si -9.101062157 7.683235263 9.202961534 CORE 32 Si Si 0.0000 32 Si -2.151348704 7.727335001 5.103340549 CORE 33 Si Si 0.0000 33 Si -11.862509824 14.940334169 8.855236482 CORE 34 Si Si 0.0000 34 Si -8.955099475 16.255743287 5.066634815 CORE 35 Si Si 0.0000 35 Si 0.620002599 9.134336536 8.863054266 CORE 36 Si Si 0.0000 36 O -15.255256071 7.782096746 3.355110188 CORE 37 O O 0.0000 37 O -5.611866405 14.983509490 7.389863063 CORE 38 O O 0.0000 38 O -15.217238248 16.101443142 3.607829544 CORE 39 O O 0.0000 39 O -5.554886531 9.058306850 7.283383097 CORE 40 O O 0.0000 40 O -10.638584034 4.411014100 7.397669209 CORE 41 O O 0.0000 41 O -0.769899639 11.961693855 3.535825333 CORE 42 O O 0.0000 42 O -10.413220795 12.093924311 3.541844011 CORE 43 O O 0.0000 43 O -0.764514819 4.702144299 7.299129808 CORE 44 O O 0.0000 44 O -13.198983388 6.143180335 3.496153392 CORE 45 O O 0.0000 45 O -3.558162486 13.316360655 7.249192917 CORE 46 O O 0.0000 46 O -7.563378818 10.784065012 7.242833588 CORE 47 O O 0.0000 47 O 2.098542014 17.920962853 3.534341621 CORE 48 O O 0.0000 48 O -3.472213390 10.669109183 7.416095030 CORE 49 O O 0.0000 49 O -13.314086840 17.915935568 3.280278222 CORE 50 O O 0.0000 50 O 1.916872781 6.138032255 3.492037735 CORE 51 O O 0.0000 51 O -7.757155382 13.397962360 7.165811961 CORE 52 O O 0.0000 52 O -11.607492064 4.587068827 4.966706336 CORE 53 O O 0.0000 53 O -1.683002099 12.147914579 8.690635780 CORE 54 O O 0.0000 54 O 0.097925564 4.721684057 4.798885043 CORE 55 O O 0.0000 55 O -9.413001095 12.009529317 8.718980575 CORE 56 O O 0.0000 56 O -1.619369958 11.953479039 6.029617352 CORE 57 O O 0.0000 57 O -11.211445349 4.853802366 9.948693213 CORE 58 O O 0.0000 58 O -9.701277306 11.920279584 6.077874494 CORE 59 O O 0.0000 59 O 0.171430164 4.656382686 9.739741067 CORE 60 O O 0.0000 60 O -10.597695501 8.563806133 5.500904284 CORE 61 O O 0.0000 61 O -0.774675947 15.624707008 9.215712903 CORE 62 O O 0.0000 62 O -10.506986840 8.375997337 8.744342884 CORE 63 O O 0.0000 63 O -0.838858482 15.611480907 5.502807229 CORE 64 O O 0.0000 64 O -0.708624187 8.425453160 5.393632254 CORE 65 O O 0.0000 65 O -10.461080286 15.708259171 9.205377738 CORE 66 O O 0.0000 66 O -10.292446742 15.426730342 5.494077948 CORE 67 O O 0.0000 67 O -0.842989327 8.467928934 9.127855404 CORE 68 O O 0.0000 68 O -12.547100827 9.156839100 7.288428888 CORE 69 O O 0.0000 69 O -2.559357646 16.079563872 3.523217740 CORE 70 O O 0.0000 70 O -8.950535435 7.805612090 3.211062893 CORE 71 O O 0.0000 71 O 1.004316675 15.088308693 7.338760290 CORE 72 O O 0.0000 72 O -2.483618944 7.874761477 3.522697559 CORE 73 O O 0.0000 73 O -12.226822258 15.173317466 7.289849460 CORE 74 O O 0.0000 74 O 1.049414764 8.907976093 7.314245044 CORE 75 O O 0.0000 75 O -8.628735199 16.031619579 3.492482986 CORE 76 O O 0.0000 76 O -13.207670960 8.422560554 4.867550142 CORE 77 O O 0.0000 77 O -3.380513056 15.564088554 8.668896712 CORE 78 O O 0.0000 78 O 1.755623951 15.653603807 4.870695802 CORE 79 O O 0.0000 79 O -7.880037677 8.414353810 8.435324950 CORE 80 O O 0.0000 80 O -3.312682330 8.428534600 5.999907899 CORE 81 O O 0.0000 81 O -13.079414044 15.543857176 9.741018395 CORE 82 O O 0.0000 82 O -7.671799788 15.739813039 5.925227469 CORE 83 O O 0.0000 83 O 1.727442986 8.445660321 9.817035793 CORE 84 O O 0.0000 84 O -7.678146259 8.541466600 5.792100487 CORE 85 O O 0.0000 85 O 1.834549167 15.650117313 9.793837813 CORE 86 O O 0.0000 86 O -3.462011078 15.657769523 5.990391346 CORE 87 O O 0.0000 87 O -12.962610143 8.446494646 9.811045794 CORE 88 O O 0.0000 88 O 1.912626468 8.407013824 4.874923818 CORE 89 O O 0.0000 89 O -7.851802249 15.636397795 8.599375877 CORE 90 O O 0.0000 90 O -12.867682882 15.741428499 4.783221859 CORE 91 O O 0.0000 91 O -3.438277146 8.309073443 8.673425897 CORE 92 O O 0.0000 92 O -9.424186611 6.017046883 5.610279100 CORE 93 O O 0.0000 93 O 0.613774289 13.352869302 9.325906789 CORE 94 O O 0.0000 94 O -2.197792951 17.914180717 5.400663529 CORE 95 O O 0.0000 95 O -11.688549962 10.703844816 9.279572447 CORE 96 O O 0.0000 96 O 0.665103767 10.705179045 5.389350456 CORE 97 O O 0.0000 97 O -8.991556756 17.930824554 9.286268015 CORE 98 O O 0.0000 98 O -11.884538304 13.345944316 5.387741530 CORE 99 O O 0.0000 99 O -2.034367946 6.099554842 9.199151079 CORE 100 O O 0.0000 100 O -11.999531676 10.774369369 5.244411520 CORE 101 O O 0.0000 101 O -2.175745227 17.882006006 9.198698221 CORE 102 O O 0.0000 102 O 0.565848982 13.345079720 5.383563038 CORE 103 O O 0.0000 103 O -9.130702822 6.099853083 8.801267917 CORE 104 O O 0.0000 104 O -2.071978746 6.140399876 5.492299609 CORE 105 O O 0.0000 105 O -11.690501553 13.347725402 9.167622055 CORE 106 O O 0.0000 106 O -9.211667385 17.834763134 5.365830082 CORE 107 O O 0.0000 107 O 0.546773965 10.732111979 9.177730601 CORE 108 O O 0.0000 108 O2 12.637001793 5.621972418 4.842908312 CORE 109 O2 O2 0.0000 109 O2 13.553572315 7.563689492 2.953598079 CORE 110 O2 O2 0.0000 110 H 13.073040245 6.768491079 3.274767098 CORE 111 H H 0.0000 111 H 13.376982106 8.224044922 3.657699263 CORE 112 H H 0.0000 112 C 13.911010399 5.782172084 5.521507062 CORE 113 C C 0.0000 113 C 13.099156847 4.562934947 5.718318394 CORE 114 C C 0.0000 114 H 13.416879353 3.616463630 5.232906974 CORE 115 H H 0.0000 115 H 12.506876230 4.459042719 6.649695303 CORE 116 H H 0.0000 116 H 14.792047378 5.748379607 4.849611335 CORE 117 H H 0.0000 117 H 13.922241910 6.561433271 6.308028334 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.334944937 4.773173512 3.518815520 CORE 1 Si Si 0.0000 1 Si -2.587224155 12.020793140 7.341616039 CORE 2 Si Si 0.0000 2 Si 1.074148066 4.761254684 3.490440905 CORE 3 Si Si 0.0000 3 Si -8.610475189 12.021283097 7.293521920 CORE 4 Si Si 0.0000 4 Si -13.647527148 7.703362278 11.081538820 CORE 5 Si Si 0.0000 5 Si -4.000955586 14.882175590 7.325066767 CORE 6 Si Si 0.0000 6 Si -7.162029649 9.199377722 7.201375625 CORE 7 Si Si 0.0000 7 Si 2.428177481 16.326038934 3.548000912 CORE 8 Si Si 0.0000 8 Si -13.621228878 16.324056042 3.457774982 CORE 9 Si Si 0.0000 9 Si -3.942485029 9.113547453 7.349551888 CORE 10 Si Si 0.0000 10 Si -7.223605124 14.927524942 7.269740923 CORE 11 Si Si 0.0000 11 Si 2.390638078 7.694043148 3.487277367 CORE 12 Si Si 0.0000 12 Si -10.219101293 4.614258632 5.831039320 CORE 13 Si Si 0.0000 13 Si -0.322246517 12.045696191 9.580628136 CORE 14 Si Si 0.0000 14 Si -10.803959283 12.037081221 9.571529220 CORE 15 Si Si 0.0000 15 Si -1.228317399 4.769836067 5.741701685 CORE 16 Si Si 0.0000 16 Si -10.001894669 4.727542929 8.867133408 CORE 17 Si Si 0.0000 17 Si -0.288435171 11.992258872 5.091563208 CORE 18 Si Si 0.0000 18 Si -10.982306712 12.029613953 5.070271140 CORE 19 Si Si 0.0000 19 Si -1.203895859 4.739711421 8.867351355 CORE 20 Si Si 0.0000 20 Ti -9.084319196 7.690006300 5.007725287 CORE 21 Ti Ti 0.0000 21 Si 0.671805493 14.933992404 8.920101243 CORE 22 Si Si 0.0000 22 Si -2.263676898 16.308745425 5.106640332 CORE 23 Si Si 0.0000 23 Si -11.928148211 9.165419042 8.790277619 CORE 24 Si Si 0.0000 24 Si 0.733474497 9.110507672 5.737959011 CORE 25 Si Si 0.0000 25 Si -8.982895741 16.315955967 9.539805451 CORE 26 Si Si 0.0000 26 Si -11.831003207 14.936121750 5.733232266 CORE 27 Si Si 0.0000 27 Si -2.215321859 7.687009475 9.539480699 CORE 28 Si Si 0.0000 28 Si -12.083769738 9.218124957 5.727427656 CORE 29 Si Si 0.0000 29 Si -2.227944751 16.286026207 9.553541194 CORE 30 Si Si 0.0000 30 Si 0.621567759 14.930314627 5.771940906 CORE 31 Si Si 0.0000 31 Si -9.097978793 7.680619132 9.203690609 CORE 32 Si Si 0.0000 32 Si -2.151456089 7.729144195 5.103608932 CORE 33 Si Si 0.0000 33 Si -11.863329258 14.939849978 8.854354957 CORE 34 Si Si 0.0000 34 Si -8.954028322 16.255355963 5.066643106 CORE 35 Si Si 0.0000 35 Si 0.625226150 9.133459544 8.863484607 CORE 36 Si Si 0.0000 36 O -15.252683458 7.777178725 3.355528356 CORE 37 O O 0.0000 37 O -5.611732270 14.984017033 7.389220482 CORE 38 O O 0.0000 38 O -15.216326826 16.101308076 3.609886763 CORE 39 O O 0.0000 39 O -5.553714922 9.057120949 7.284818275 CORE 40 O O 0.0000 40 O -10.636242934 4.410540287 7.396612110 CORE 41 O O 0.0000 41 O -0.766391933 11.964306095 3.536247153 CORE 42 O O 0.0000 42 O -10.413010452 12.095859778 3.543871258 CORE 43 O O 0.0000 43 O -0.768925287 4.700970219 7.299521504 CORE 44 O O 0.0000 44 O -13.196279527 6.140668855 3.495301384 CORE 45 O O 0.0000 45 O -3.551993064 13.319644910 7.251289314 CORE 46 O O 0.0000 46 O -7.564930699 10.782557086 7.238945235 CORE 47 O O 0.0000 47 O 2.098793540 17.922336722 3.532736118 CORE 48 O O 0.0000 48 O -3.475172818 10.671447254 7.415996897 CORE 49 O O 0.0000 49 O -13.313986383 17.915974632 3.273273497 CORE 50 O O 0.0000 50 O 1.917405855 6.139394592 3.491690922 CORE 51 O O 0.0000 51 O -7.756005711 13.394651582 7.163793766 CORE 52 O O 0.0000 52 O -11.605731379 4.586744351 4.968637961 CORE 53 O O 0.0000 53 O -1.682229429 12.144643298 8.692504189 CORE 54 O O 0.0000 54 O 0.097540673 4.720974564 4.799452466 CORE 55 O O 0.0000 55 O -9.408866016 12.014762301 8.721398909 CORE 56 O O 0.0000 56 O -1.618322284 11.954146297 6.030224028 CORE 57 O O 0.0000 57 O -11.206590331 4.850633285 9.950371897 CORE 58 O O 0.0000 58 O -9.707409778 11.921613524 6.084308070 CORE 59 O O 0.0000 59 O 0.171502139 4.659400268 9.738911043 CORE 60 O O 0.0000 60 O -10.597156845 8.566483815 5.497544252 CORE 61 O O 0.0000 61 O -0.777219308 15.623798591 9.216472560 CORE 62 O O 0.0000 62 O -10.506802284 8.370997296 8.753713378 CORE 63 O O 0.0000 63 O -0.840351091 15.611972882 5.502380617 CORE 64 O O 0.0000 64 O -0.707793015 8.427405205 5.395155371 CORE 65 O O 0.0000 65 O -10.461772898 15.709060198 9.204258488 CORE 66 O O 0.0000 66 O -10.291271861 15.427853107 5.496558357 CORE 67 O O 0.0000 67 O -0.835177383 8.463116428 9.129456419 CORE 68 O O 0.0000 68 O -12.540561717 9.154369999 7.287321049 CORE 69 O O 0.0000 69 O -2.561808441 16.078575021 3.524350835 CORE 70 O O 0.0000 70 O -8.936797897 7.799722083 3.210754116 CORE 71 O O 0.0000 71 O 1.003989132 15.094023850 7.339814270 CORE 72 O O 0.0000 72 O -2.483682643 7.876939832 3.521909223 CORE 73 O O 0.0000 73 O -12.226814945 15.173594950 7.289037009 CORE 74 O O 0.0000 74 O 1.052316074 8.906874518 7.314458046 CORE 75 O O 0.0000 75 O -8.627640953 16.028927626 3.491538778 CORE 76 O O 0.0000 76 O -13.203416373 8.417694714 4.870402848 CORE 77 O O 0.0000 77 O -3.384312895 15.568470202 8.670503509 CORE 78 O O 0.0000 78 O 1.754032811 15.654883692 4.870714973 CORE 79 O O 0.0000 79 O -7.877005311 8.412845595 8.433737476 CORE 80 O O 0.0000 80 O -3.313382639 8.431993849 5.998904735 CORE 81 O O 0.0000 81 O -13.081195321 15.541958899 9.740086130 CORE 82 O O 0.0000 82 O -7.670824666 15.738017683 5.921418231 CORE 83 O O 0.0000 83 O 1.735930800 8.450887683 9.816413522 CORE 84 O O 0.0000 84 O -7.674270789 8.539984620 5.792747861 CORE 85 O O 0.0000 85 O 1.834202573 15.650374184 9.794095545 CORE 86 O O 0.0000 86 O -3.463918022 15.659809065 5.990830739 CORE 87 O O 0.0000 87 O -12.959584321 8.445859821 9.809893148 CORE 88 O O 0.0000 88 O 1.912952664 8.407396823 4.874835954 CORE 89 O O 0.0000 89 O -7.853537916 15.636284063 8.594944978 CORE 90 O O 0.0000 90 O -12.864983063 15.746216788 4.781015386 CORE 91 O O 0.0000 91 O -3.432793216 8.311346647 8.670785432 CORE 92 O O 0.0000 92 O -9.423781898 6.014732020 5.611270245 CORE 93 O O 0.0000 93 O 0.614637215 13.353295979 9.322649987 CORE 94 O O 0.0000 94 O -2.199389287 17.915737365 5.398860923 CORE 95 O O 0.0000 95 O -11.681859976 10.701526638 9.275062052 CORE 96 O O 0.0000 96 O 0.666265754 10.705338184 5.390776049 CORE 97 O O 0.0000 97 O -8.989662706 17.929857757 9.286570554 CORE 98 O O 0.0000 98 O -11.885381408 13.347661545 5.387671087 CORE 99 O O 0.0000 99 O -2.035332099 6.099201249 9.200252223 CORE 100 O O 0.0000 100 O -12.004712889 10.774508616 5.245497222 CORE 101 O O 0.0000 101 O -2.175618405 17.882418556 9.201740043 CORE 102 O O 0.0000 102 O 0.566973634 13.346648044 5.385200111 CORE 103 O O 0.0000 103 O -9.125938446 6.098322526 8.799811440 CORE 104 O O 0.0000 104 O -2.072597459 6.141261013 5.492501961 CORE 105 O O 0.0000 105 O -11.690250989 13.346585052 9.168292631 CORE 106 O O 0.0000 106 O -9.209237374 17.834803495 5.365486160 CORE 107 O O 0.0000 107 O 0.548897795 10.731958318 9.177157169 CORE 108 O O 0.0000 108 O2 12.638552520 5.635195060 4.845514469 CORE 109 O2 O2 0.0000 109 O2 13.563059884 7.554885977 2.957412262 CORE 110 O2 O2 0.0000 110 H 13.077209964 6.761982247 3.277676630 CORE 111 H H 0.0000 111 H 13.371406572 8.225377132 3.641503726 CORE 112 H H 0.0000 112 C 13.912853450 5.779277892 5.528563136 CORE 113 C C 0.0000 113 C 13.089919650 4.562522253 5.716160226 CORE 114 C C 0.0000 114 H 13.397850716 3.615111815 5.223150794 CORE 115 H H 0.0000 115 H 12.496128335 4.451499918 6.644071896 CORE 116 H H 0.0000 116 H 14.792812157 5.741223120 4.857422882 CORE 117 H H 0.0000 117 H 13.927998343 6.548525447 6.321651566 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.331351400 4.769816463 3.520494661 CORE 1 Si Si 0.0000 1 Si -2.586544437 12.020383041 7.343130864 CORE 2 Si Si 0.0000 2 Si 1.073473737 4.763185971 3.490772351 CORE 3 Si Si 0.0000 3 Si -8.610710935 12.018160432 7.293483199 CORE 4 Si Si 0.0000 4 Si -13.641868093 7.701280357 11.080409681 CORE 5 Si Si 0.0000 5 Si -4.000410195 14.886341595 7.326483687 CORE 6 Si Si 0.0000 6 Si -7.161007955 9.197210754 7.201125804 CORE 7 Si Si 0.0000 7 Si 2.426248406 16.327133301 3.548407061 CORE 8 Si Si 0.0000 8 Si -13.620466794 16.325355963 3.454203470 CORE 9 Si Si 0.0000 9 Si -3.941021288 9.116352994 7.348973892 CORE 10 Si Si 0.0000 10 Si -7.223628602 14.924122631 7.264052931 CORE 11 Si Si 0.0000 11 Si 2.396072549 7.693818854 3.488230247 CORE 12 Si Si 0.0000 12 Si -10.215327627 4.609276321 5.831824461 CORE 13 Si Si 0.0000 13 Si -0.319311145 12.045996162 9.580035153 CORE 14 Si Si 0.0000 14 Si -10.799855380 12.035169826 9.573468223 CORE 15 Si Si 0.0000 15 Si -1.229251722 4.770976994 5.741230342 CORE 16 Si Si 0.0000 16 Si -9.997606788 4.725605299 8.865236929 CORE 17 Si Si 0.0000 17 Si -0.286126401 11.993747050 5.094273508 CORE 18 Si Si 0.0000 18 Si -10.987551625 12.027402155 5.072517323 CORE 19 Si Si 0.0000 19 Si -1.204298070 4.740548629 8.867803528 CORE 20 Si Si 0.0000 20 Ti -9.079683567 7.690859076 5.007857805 CORE 21 Ti Ti 0.0000 21 Si 0.669833311 14.937691371 8.920084051 CORE 22 Si Si 0.0000 22 Si -2.265411410 16.311524731 5.107390251 CORE 23 Si Si 0.0000 23 Si -11.920114184 9.159505972 8.788524231 CORE 24 Si Si 0.0000 24 Si 0.735020605 9.110020886 5.738898806 CORE 25 Si Si 0.0000 25 Si -8.982504114 16.313459910 9.538958007 CORE 26 Si Si 0.0000 26 Si -11.829815625 14.937683875 5.731681916 CORE 27 Si Si 0.0000 27 Si -2.210418152 7.688512068 9.539618161 CORE 28 Si Si 0.0000 28 Si -12.079277673 9.216332917 5.724790614 CORE 29 Si Si 0.0000 29 Si -2.229481045 16.287485700 9.556823937 CORE 30 Si Si 0.0000 30 Si 0.619692377 14.934857577 5.774280353 CORE 31 Si Si 0.0000 31 Si -9.093045643 7.676433091 9.204857252 CORE 32 Si Si 0.0000 32 Si -2.151627751 7.732038964 5.104038359 CORE 33 Si Si 0.0000 33 Si -11.864640390 14.939075042 8.852944579 CORE 34 Si Si 0.0000 34 Si -8.952314594 16.254736129 5.066656419 CORE 35 Si Si 0.0000 35 Si 0.633584256 9.132056269 8.864173212 CORE 36 Si Si 0.0000 36 O -15.248567431 7.769310006 3.356197411 CORE 37 O O 0.0000 37 O -5.611517886 14.984829159 7.388192519 CORE 38 O O 0.0000 38 O -15.214868281 16.101092144 3.613178330 CORE 39 O O 0.0000 39 O -5.551840502 9.055223537 7.287114513 CORE 40 O O 0.0000 40 O -10.632496980 4.409782216 7.394920722 CORE 41 O O 0.0000 41 O -0.760779257 11.968485793 3.536922065 CORE 42 O O 0.0000 42 O -10.412674057 12.098956641 3.547114747 CORE 43 O O 0.0000 43 O -0.775982075 4.699091545 7.300148186 CORE 44 O O 0.0000 44 O -13.191953350 6.136650458 3.493938094 CORE 45 O O 0.0000 45 O -3.542121952 13.324899804 7.254643488 CORE 46 O O 0.0000 46 O -7.567413825 10.780144491 7.232723825 CORE 47 O O 0.0000 47 O 2.099195944 17.924534825 3.530167389 CORE 48 O O 0.0000 48 O -3.479908135 10.675188023 7.415839884 CORE 49 O O 0.0000 49 O -13.313825691 17.916037047 3.262065860 CORE 50 O O 0.0000 50 O 1.918258966 6.141574245 3.491136052 CORE 51 O O 0.0000 51 O -7.754165931 13.389354309 7.160564503 CORE 52 O O 0.0000 52 O -11.602914553 4.586225277 4.971728545 CORE 53 O O 0.0000 53 O -1.680993351 12.139409161 8.695493521 CORE 54 O O 0.0000 54 O 0.096924847 4.719839403 4.800360311 CORE 55 O O 0.0000 55 O -9.402249929 12.023135103 8.725268320 CORE 56 O O 0.0000 56 O -1.616646275 11.955213853 6.031194709 CORE 57 O O 0.0000 57 O -11.198822264 4.845562612 9.953057777 CORE 58 O O 0.0000 58 O -9.717222002 11.923747626 6.094601851 CORE 59 O O 0.0000 59 O 0.171617029 4.664228485 9.737582976 CORE 60 O O 0.0000 60 O -10.596294881 8.570768164 5.492168080 CORE 61 O O 0.0000 61 O -0.781288571 15.622345009 9.217688117 CORE 62 O O 0.0000 62 O -10.506507073 8.362997403 8.768706214 CORE 63 O O 0.0000 63 O -0.842739533 15.612760071 5.501698097 CORE 64 O O 0.0000 64 O -0.706463408 8.430528447 5.397592420 CORE 65 O O 0.0000 65 O -10.462881192 15.710341957 9.202467673 CORE 66 O O 0.0000 66 O -10.289391668 15.429649472 5.500526890 CORE 67 O O 0.0000 67 O -0.822678233 8.455416362 9.132017921 CORE 68 O O 0.0000 68 O -12.530099027 9.150419640 7.285548416 CORE 69 O O 0.0000 69 O -2.565729520 16.076992715 3.526163635 CORE 70 O O 0.0000 70 O -8.914818107 7.790298013 3.210260104 CORE 71 O O 0.0000 71 O 1.003465103 15.103167985 7.341500790 CORE 72 O O 0.0000 72 O -2.483784832 7.880425172 3.520647946 CORE 73 O O 0.0000 73 O -12.226803591 15.174039212 7.287737012 CORE 74 O O 0.0000 74 O 1.056958439 8.905112172 7.314798850 CORE 75 O O 0.0000 75 O -8.625890468 16.024620789 3.490027909 CORE 76 O O 0.0000 76 O -13.196609187 8.409909457 4.874967255 CORE 77 O O 0.0000 77 O -3.390392637 15.575480812 8.673074444 CORE 78 O O 0.0000 78 O 1.751486948 15.656931450 4.870745630 CORE 79 O O 0.0000 79 O -7.872153180 8.410432568 8.431197502 CORE 80 O O 0.0000 80 O -3.314502865 8.437528821 5.997299688 CORE 81 O O 0.0000 81 O -13.084045633 15.538921713 9.738594507 CORE 82 O O 0.0000 82 O -7.669264124 15.735145258 5.915323329 CORE 83 O O 0.0000 83 O 1.749511109 8.459251548 9.815417814 CORE 84 O O 0.0000 84 O -7.668069999 8.537613395 5.793783736 CORE 85 O O 0.0000 85 O 1.833647945 15.650785293 9.794507932 CORE 86 O O 0.0000 86 O -3.466969439 15.663072418 5.991533798 CORE 87 O O 0.0000 87 O -12.954743352 8.444844158 9.808048779 CORE 88 O O 0.0000 88 O 1.913474576 8.408009594 4.874695449 CORE 89 O O 0.0000 89 O -7.856314714 15.636102005 8.587855584 CORE 90 O O 0.0000 90 O -12.860663429 15.753878223 4.777484953 CORE 91 O O 0.0000 91 O -3.424018851 8.314984063 8.666560688 CORE 92 O O 0.0000 92 O -9.423134319 6.011028296 5.612856045 CORE 93 O O 0.0000 93 O 0.616018013 13.353978661 9.317439119 CORE 94 O O 0.0000 94 O -2.201943425 17.918228088 5.395976723 CORE 95 O O 0.0000 95 O -11.671156343 10.697817725 9.267845542 CORE 96 O O 0.0000 96 O 0.668124779 10.705592748 5.393057073 CORE 97 O O 0.0000 97 O -8.986632073 17.928310767 9.287054677 CORE 98 O O 0.0000 98 O -11.886730452 13.350409138 5.387558424 CORE 99 O O 0.0000 99 O -2.036874550 6.098635470 9.202014055 CORE 100 O O 0.0000 100 O -12.013003061 10.774731468 5.247234254 CORE 101 O O 0.0000 101 O -2.175415760 17.883078463 9.206606836 CORE 102 O O 0.0000 102 O 0.568773193 13.349157218 5.387819580 CORE 103 O O 0.0000 103 O -9.118315483 6.095873606 8.797481045 CORE 104 O O 0.0000 104 O -2.073587207 6.142638629 5.492825800 CORE 105 O O 0.0000 105 O -11.689850125 13.344760578 9.169365477 CORE 106 O O 0.0000 106 O -9.205349010 17.834868073 5.364935778 CORE 107 O O 0.0000 107 O 0.552296192 10.731712403 9.176239587 CORE 108 O O 0.0000 108 O2 12.641033529 5.656351287 4.849684365 CORE 109 O2 O2 0.0000 109 O2 13.578239993 7.540800325 2.963515000 CORE 110 O2 O2 0.0000 110 H 13.083881092 6.751568173 3.282331943 CORE 111 H H 0.0000 111 H 13.362485756 8.227508640 3.615590883 CORE 112 H H 0.0000 112 C 13.915802295 5.774647301 5.539852931 CORE 113 C C 0.0000 113 C 13.075140020 4.561862058 5.712707082 CORE 114 C C 0.0000 114 H 13.367404666 3.612948883 5.207540937 CORE 115 H H 0.0000 115 H 12.478931781 4.439431320 6.635074460 CORE 116 H H 0.0000 116 H 14.794036111 5.729772482 4.869921388 CORE 117 H H 0.0000 117 H 13.937208405 6.527873159 6.343448754 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.334362020 4.772628923 3.519087934 CORE 1 Si Si 0.0000 1 Si -2.587113884 12.020726544 7.341861752 CORE 2 Si Si 0.0000 2 Si 1.074038757 4.761567916 3.490494688 CORE 3 Si Si 0.0000 3 Si -8.610513486 12.020776563 7.293515606 CORE 4 Si Si 0.0000 4 Si -13.646609375 7.703024685 11.081355715 CORE 5 Si Si 0.0000 5 Si -4.000867254 14.882851353 7.325296657 CORE 6 Si Si 0.0000 6 Si -7.161863953 9.199026290 7.201335078 CORE 7 Si Si 0.0000 7 Si 2.427864564 16.326216523 3.548066790 CORE 8 Si Si 0.0000 8 Si -13.621105136 16.324266930 3.457195617 CORE 9 Si Si 0.0000 9 Si -3.942247551 9.114002526 7.349458167 CORE 10 Si Si 0.0000 10 Si -7.223608973 14.926973146 7.268818244 CORE 11 Si Si 0.0000 11 Si 2.391519479 7.694006823 3.487431946 CORE 12 Si Si 0.0000 12 Si -10.218489124 4.613450398 5.831166665 CORE 13 Si Si 0.0000 13 Si -0.321770407 12.045744913 9.580531904 CORE 14 Si Si 0.0000 14 Si -10.803293613 12.036771160 9.571843702 CORE 15 Si Si 0.0000 15 Si -1.228469046 4.770021152 5.741625233 CORE 16 Si Si 0.0000 16 Si -10.001199170 4.727228687 8.866825772 CORE 17 Si Si 0.0000 17 Si -0.288060672 11.992500175 5.092002829 CORE 18 Si Si 0.0000 18 Si -10.983157514 12.029255170 5.070635450 CORE 19 Si Si 0.0000 19 Si -1.203961098 4.739847208 8.867424689 CORE 20 Si Si 0.0000 20 Ti -9.083567311 7.690144537 5.007746739 CORE 21 Ti Ti 0.0000 21 Si 0.671485649 14.934592346 8.920098428 CORE 22 Si Si 0.0000 22 Si -2.263958253 16.309196174 5.106761971 CORE 23 Si Si 0.0000 23 Si -11.926844969 9.164459886 8.789993185 CORE 24 Si Si 0.0000 24 Si 0.733725253 9.110428679 5.738111459 CORE 25 Si Si 0.0000 25 Si -8.982832234 16.315551056 9.539667989 CORE 26 Si Si 0.0000 26 Si -11.830810569 14.936375161 5.732980772 CORE 27 Si Si 0.0000 27 Si -2.214526481 7.687253228 9.539502988 CORE 28 Si Si 0.0000 28 Si -12.083041139 9.217834356 5.726999902 CORE 29 Si Si 0.0000 29 Si -2.228193968 16.286263042 9.554073699 CORE 30 Si Si 0.0000 30 Si 0.621263503 14.931051509 5.772320354 CORE 31 Si Si 0.0000 31 Si -9.097178605 7.679940054 9.203879877 CORE 32 Si Si 0.0000 32 Si -2.151483801 7.729613683 5.103678614 CORE 33 Si Si 0.0000 33 Si -11.863541910 14.939724282 8.854126208 CORE 34 Si Si 0.0000 34 Si -8.953750431 16.255255348 5.066645313 CORE 35 Si Si 0.0000 35 Si 0.626581930 9.133231935 8.863596357 CORE 36 Si Si 0.0000 36 O -15.252015864 7.775902444 3.355636911 CORE 37 O O 0.0000 37 O -5.611697630 14.984148784 7.389053732 CORE 38 O O 0.0000 38 O -15.216090118 16.101273049 3.610420714 CORE 39 O O 0.0000 39 O -5.553410858 9.056813194 7.285190724 CORE 40 O O 0.0000 40 O -10.635635190 4.410417329 7.396337794 CORE 41 O O 0.0000 41 O -0.765481473 11.964984020 3.536356621 CORE 42 O O 0.0000 42 O -10.412955990 12.096362132 3.544397373 CORE 43 O O 0.0000 43 O -0.770069954 4.700665491 7.299623136 CORE 44 O O 0.0000 44 O -13.195577871 6.140017020 3.495080242 CORE 45 O O 0.0000 45 O -3.550391917 13.320497398 7.251833382 CORE 46 O O 0.0000 46 O -7.565333488 10.782165726 7.237936062 CORE 47 O O 0.0000 47 O 2.098858779 17.922693342 3.532319471 CORE 48 O O 0.0000 48 O -3.475941061 10.672053970 7.415971412 CORE 49 O O 0.0000 49 O -13.313960210 17.915984722 3.271455524 CORE 50 O O 0.0000 50 O 1.917544223 6.139748041 3.491600929 CORE 51 O O 0.0000 51 O -7.755707228 13.393792319 7.163269933 CORE 52 O O 0.0000 52 O -11.605274513 4.586660169 4.969139276 CORE 53 O O 0.0000 53 O -1.682028901 12.143794269 8.692989073 CORE 54 O O 0.0000 54 O 0.097440793 4.720790487 4.799599741 CORE 55 O O 0.0000 55 O -9.407792940 12.016120458 8.722026581 CORE 56 O O 0.0000 56 O -1.618050358 11.954319418 6.030381497 CORE 57 O O 0.0000 57 O -11.205330198 4.849810780 9.950807563 CORE 58 O O 0.0000 58 O -9.709001495 11.921959622 6.085977778 CORE 59 O O 0.0000 59 O 0.171520806 4.660183421 9.738695607 CORE 60 O O 0.0000 60 O -10.597016937 8.567178750 5.496672161 CORE 61 O O 0.0000 61 O -0.777879397 15.623562766 9.216669739 CORE 62 O O 0.0000 62 O -10.506754365 8.369699681 8.756145329 CORE 63 O O 0.0000 63 O -0.840738676 15.612100596 5.502269932 CORE 64 O O 0.0000 64 O -0.707577476 8.427911883 5.395550642 CORE 65 O O 0.0000 65 O -10.461952642 15.709268059 9.203968045 CORE 66 O O 0.0000 66 O -10.290966835 15.428144429 5.497202080 CORE 67 O O 0.0000 67 O -0.833149968 8.461867391 9.129871925 CORE 68 O O 0.0000 68 O -12.538864540 9.153729264 7.287033497 CORE 69 O O 0.0000 69 O -2.562444473 16.078318294 3.524644854 CORE 70 O O 0.0000 70 O -8.933232650 7.798193399 3.210674012 CORE 71 O O 0.0000 71 O 1.003904071 15.095507126 7.340087825 CORE 72 O O 0.0000 72 O -2.483699386 7.877505178 3.521704665 CORE 73 O O 0.0000 73 O -12.226813213 15.173667023 7.288826137 CORE 74 O O 0.0000 74 O 1.053069114 8.906588674 7.314513351 CORE 75 O O 0.0000 75 O -8.627357096 16.028229087 3.491293674 CORE 76 O O 0.0000 76 O -13.202312312 8.416431839 4.871143259 CORE 77 O O 0.0000 77 O -3.385298986 15.569607381 8.670920536 CORE 78 O O 0.0000 78 O 1.753619823 15.655215807 4.870719917 CORE 79 O O 0.0000 79 O -7.876218209 8.412454235 8.433325469 CORE 80 O O 0.0000 80 O -3.313564308 8.432891743 5.998644416 CORE 81 O O 0.0000 81 O -13.081657767 15.541466347 9.739844145 CORE 82 O O 0.0000 82 O -7.670571407 15.737551799 5.920429597 CORE 83 O O 0.0000 83 O 1.738133532 8.452244398 9.816252021 CORE 84 O O 0.0000 84 O -7.673264876 8.539600035 5.792915905 CORE 85 O O 0.0000 85 O 1.834112701 15.650440924 9.794162413 CORE 86 O O 0.0000 86 O -3.464412992 15.660338518 5.990944771 CORE 87 O O 0.0000 87 O -12.958799143 8.445695060 9.809593957 CORE 88 O O 0.0000 88 O 1.913037340 8.407496285 4.874813209 CORE 89 O O 0.0000 89 O -7.853988239 15.636254513 8.593794995 CORE 90 O O 0.0000 90 O -12.864282368 15.747459627 4.780442715 CORE 91 O O 0.0000 91 O -3.431369888 8.311936643 8.670100174 CORE 92 O O 0.0000 92 O -9.423676823 6.014131213 5.611527445 CORE 93 O O 0.0000 93 O 0.614861222 13.353406828 9.321804749 CORE 94 O O 0.0000 94 O -2.199803622 17.916141410 5.398393079 CORE 95 O O 0.0000 95 O -11.680123731 10.700924967 9.273891529 CORE 96 O O 0.0000 96 O 0.666567316 10.705379554 5.391146064 CORE 97 O O 0.0000 97 O -8.989171200 17.929606796 9.286649137 CORE 98 O O 0.0000 98 O -11.885600219 13.348107248 5.387652830 CORE 99 O O 0.0000 99 O -2.035582278 6.099109427 9.200538027 CORE 100 O O 0.0000 100 O -12.006057699 10.774544797 5.245778993 CORE 101 O O 0.0000 101 O -2.175585689 17.882525513 9.202529444 CORE 102 O O 0.0000 102 O 0.567265574 13.347054972 5.385625050 CORE 103 O O 0.0000 103 O -9.124701983 6.097925256 8.799433437 CORE 104 O O 0.0000 104 O -2.072757959 6.141484441 5.492554526 CORE 105 O O 0.0000 105 O -11.690185943 13.346289117 9.168466608 CORE 106 O O 0.0000 106 O -9.208606537 17.834814018 5.365396851 CORE 107 O O 0.0000 107 O 0.549449152 10.731918389 9.177008296 CORE 108 O O 0.0000 108 O2 12.638954924 5.638626778 4.846190826 CORE 109 O2 O2 0.0000 109 O2 13.565522225 7.552601241 2.958402189 CORE 110 O2 O2 0.0000 110 H 13.078292086 6.760292983 3.278431799 CORE 111 H H 0.0000 111 H 13.369959574 8.225722797 3.637300511 CORE 112 H H 0.0000 112 C 13.913331678 5.778526740 5.530394421 CORE 113 C C 0.0000 113 C 13.087522355 4.562415152 5.715600107 CORE 114 C C 0.0000 114 H 13.392911984 3.614760960 5.220618808 CORE 115 H H 0.0000 115 H 12.493338836 4.449542252 6.642612451 CORE 116 H H 0.0000 116 H 14.793010761 5.739365637 4.859450206 CORE 117 H H 0.0000 117 H 13.929492298 6.545175605 6.325187249 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.330752317 4.768946389 3.519228363 CORE 1 Si Si 0.0000 1 Si -2.585744633 12.019216888 7.343914636 CORE 2 Si Si 0.0000 2 Si 1.072868303 4.762206056 3.490055219 CORE 3 Si Si 0.0000 3 Si -8.611563854 12.020796167 7.294002240 CORE 4 Si Si 0.0000 4 Si -13.642917306 7.699803999 11.083103473 CORE 5 Si Si 0.0000 5 Si -4.000573197 14.886418281 7.326985916 CORE 6 Si Si 0.0000 6 Si -7.158898559 9.199353217 7.199624063 CORE 7 Si Si 0.0000 7 Si 2.429161070 16.327011208 3.548476515 CORE 8 Si Si 0.0000 8 Si -13.621037203 16.324467150 3.453396877 CORE 9 Si Si 0.0000 9 Si -3.939401858 9.116670262 7.349336984 CORE 10 Si Si 0.0000 10 Si -7.224084506 14.924653814 7.265288267 CORE 11 Si Si 0.0000 11 Si 2.395222709 7.695316402 3.487379760 CORE 12 Si Si 0.0000 12 Si -10.216422258 4.610806734 5.831789772 CORE 13 Si Si 0.0000 13 Si -0.318679346 12.045491790 9.580944140 CORE 14 Si Si 0.0000 14 Si -10.798421468 12.038258473 9.572848311 CORE 15 Si Si 0.0000 15 Si -1.228973446 4.770741457 5.741879694 CORE 16 Si Si 0.0000 16 Si -9.997025603 4.724325414 8.865350429 CORE 17 Si Si 0.0000 17 Si -0.286195681 11.993415511 5.092737230 CORE 18 Si Si 0.0000 18 Si -10.988107600 12.029093869 5.073352824 CORE 19 Si Si 0.0000 19 Si -1.204960660 4.739941047 8.867630236 CORE 20 Si Si 0.0000 20 Ti -9.078113788 7.687999191 5.009474871 CORE 21 Ti Ti 0.0000 21 Si 0.670633692 14.936422729 8.920947470 CORE 22 Si Si 0.0000 22 Si -2.265660242 16.310833112 5.106760830 CORE 23 Si Si 0.0000 23 Si -11.922154877 9.161436682 8.790085156 CORE 24 Si Si 0.0000 24 Si 0.734723853 9.111323402 5.739666070 CORE 25 Si Si 0.0000 25 Si -8.983612409 16.314157295 9.538186407 CORE 26 Si Si 0.0000 26 Si -11.830897939 14.939144521 5.731047322 CORE 27 Si Si 0.0000 27 Si -2.211098448 7.688293973 9.538199720 CORE 28 Si Si 0.0000 28 Si -12.079543440 9.216979130 5.724364990 CORE 29 Si Si 0.0000 29 Si -2.229298414 16.287836843 9.556170857 CORE 30 Si Si 0.0000 30 Si 0.620794705 14.933269793 5.773471858 CORE 31 Si Si 0.0000 31 Si -9.091137929 7.675515016 9.205465297 CORE 32 Si Si 0.0000 32 Si -2.151652384 7.732787089 5.103445225 CORE 33 Si Si 0.0000 33 Si -11.863836545 14.939535160 8.853765170 CORE 34 Si Si 0.0000 34 Si -8.952238578 16.254524521 5.065210515 CORE 35 Si Si 0.0000 35 Si 0.631941925 9.133911878 8.863461937 CORE 36 Si Si 0.0000 36 O -15.246636240 7.770815482 3.356532737 CORE 37 O O 0.0000 37 O -5.612952760 14.983052687 7.387858638 CORE 38 O O 0.0000 38 O -15.216737505 16.102286981 3.611228829 CORE 39 O O 0.0000 39 O -5.552604511 9.055387432 7.287187238 CORE 40 O O 0.0000 40 O -10.632041653 4.410541440 7.396293824 CORE 41 O O 0.0000 41 O -0.760397445 11.968498622 3.537398277 CORE 42 O O 0.0000 42 O -10.413120724 12.095226538 3.548330152 CORE 43 O O 0.0000 43 O -0.775478253 4.699633684 7.298758576 CORE 44 O O 0.0000 44 O -13.191250154 6.137872107 3.493890930 CORE 45 O O 0.0000 45 O -3.544628748 13.325519205 7.254434061 CORE 46 O O 0.0000 46 O -7.567888396 10.779145550 7.234664350 CORE 47 O O 0.0000 47 O 2.100299620 17.923662734 3.530554597 CORE 48 O O 0.0000 48 O -3.480202192 10.675516247 7.416083086 CORE 49 O O 0.0000 49 O -13.314522152 17.915458872 3.264783843 CORE 50 O O 0.0000 50 O 1.917014613 6.140229061 3.490974855 CORE 51 O O 0.0000 51 O -7.753473897 13.391615261 7.160925465 CORE 52 O O 0.0000 52 O -11.603237092 4.586572816 4.971459553 CORE 53 O O 0.0000 53 O -1.681082646 12.140194188 8.694864480 CORE 54 O O 0.0000 54 O 0.096974498 4.720984942 4.800100676 CORE 55 O O 0.0000 55 O -9.402670615 12.020950117 8.724853651 CORE 56 O O 0.0000 56 O -1.617182621 11.954881160 6.030929673 CORE 57 O O 0.0000 57 O -11.199058010 4.846644006 9.952275299 CORE 58 O O 0.0000 58 O -9.716366581 11.922995609 6.091739712 CORE 59 O O 0.0000 59 O 0.171792155 4.664446436 9.737832416 CORE 60 O O 0.0000 60 O -10.593090470 8.569689942 5.492053972 CORE 61 O O 0.0000 61 O -0.779913739 15.622509625 9.216007455 CORE 62 O O 0.0000 62 O -10.502411060 8.361314770 8.769780201 CORE 63 O O 0.0000 63 O -0.842735107 15.612698952 5.503207673 CORE 64 O O 0.0000 64 O -0.707695830 8.429490441 5.395916702 CORE 65 O O 0.0000 65 O -10.462541911 15.709358584 9.202350826 CORE 66 O O 0.0000 66 O -10.289407256 15.429334654 5.500114503 CORE 67 O O 0.0000 67 O -0.825098236 8.456040808 9.132892751 CORE 68 O O 0.0000 68 O -12.531924374 9.150359530 7.286862714 CORE 69 O O 0.0000 69 O -2.565693148 16.077146520 3.526203116 CORE 70 O O 0.0000 70 O -8.918995139 7.792364943 3.213263129 CORE 71 O O 0.0000 71 O 1.005036614 15.101742943 7.340569743 CORE 72 O O 0.0000 72 O -2.483436505 7.880306395 3.521464961 CORE 73 O O 0.0000 73 O -12.227073400 15.172760480 7.287034714 CORE 74 O O 0.0000 74 O 1.057163971 8.904462067 7.313952927 CORE 75 O O 0.0000 75 O -8.626385438 16.024200744 3.490183324 CORE 76 O O 0.0000 76 O -13.198436458 8.408813216 4.871232720 CORE 77 O O 0.0000 77 O -3.389351891 15.576256469 8.673362377 CORE 78 O O 0.0000 78 O 1.751479250 15.658333716 4.869380667 CORE 79 O O 0.0000 79 O -7.875067192 8.409797887 8.434452934 CORE 80 O O 0.0000 80 O -3.313709219 8.436696226 5.996113191 CORE 81 O O 0.0000 81 O -13.084857561 15.537765507 9.738636651 CORE 82 O O 0.0000 82 O -7.667634687 15.734124838 5.916405075 CORE 83 O O 0.0000 83 O 1.749045391 8.457594285 9.816033238 CORE 84 O O 0.0000 84 O -7.671025579 8.536273545 5.791832941 CORE 85 O O 0.0000 85 O 1.834024946 15.651421703 9.795875938 CORE 86 O O 0.0000 86 O -3.466871292 15.664358357 5.990643450 CORE 87 O O 0.0000 87 O -12.956610459 8.444856267 9.809534392 CORE 88 O O 0.0000 88 O 1.914693912 8.407751858 4.875642167 CORE 89 O O 0.0000 89 O -7.856579134 15.636395201 8.587880155 CORE 90 O O 0.0000 90 O -12.859780873 15.753709426 4.777810237 CORE 91 O O 0.0000 91 O -3.424110647 8.314793788 8.667076762 CORE 92 O O 0.0000 92 O -9.423912184 6.013693870 5.611603212 CORE 93 O O 0.0000 93 O 0.615488018 13.354796409 9.317776347 CORE 94 O O 0.0000 94 O -2.201497336 17.919007925 5.396124607 CORE 95 O O 0.0000 95 O -11.673811515 10.699490412 9.269137703 CORE 96 O O 0.0000 96 O 0.667739118 10.705787059 5.392433053 CORE 97 O O 0.0000 97 O -8.986761396 17.928740182 9.288148899 CORE 98 O O 0.0000 98 O -11.886903268 13.350257928 5.386838097 CORE 99 O O 0.0000 99 O -2.036887637 6.098887007 9.201911129 CORE 100 O O 0.0000 100 O -12.010599801 10.775838952 5.246995692 CORE 101 O O 0.0000 101 O -2.174835729 17.884084756 9.206296233 CORE 102 O O 0.0000 102 O 0.567626409 13.348996350 5.388840012 CORE 103 O O 0.0000 103 O -9.117812430 6.095099534 8.797259903 CORE 104 O O 0.0000 104 O -2.073249465 6.143123541 5.491902588 CORE 105 O O 0.0000 105 O -11.689622077 13.345345240 9.168533400 CORE 106 O O 0.0000 106 O -9.205588220 17.833661848 5.364531683 CORE 107 O O 0.0000 107 O 0.550992373 10.731467641 9.176319158 CORE 108 O O 0.0000 108 O2 12.639709118 5.654422019 4.846286677 CORE 109 O2 O2 0.0000 109 O2 13.576307262 7.538678331 2.958370163 CORE 110 O2 O2 0.0000 110 H 13.087744052 6.753075811 3.283152533 CORE 111 H H 0.0000 111 H 13.362762108 8.228983988 3.619149615 CORE 112 H H 0.0000 112 C 13.914331433 5.768824466 5.538852429 CORE 113 C C 0.0000 113 C 13.078641760 4.562828710 5.709713034 CORE 114 C C 0.0000 114 H 13.367038634 3.616422115 5.205729658 CORE 115 H H 0.0000 115 H 12.479337841 4.440170796 6.640270418 CORE 116 H H 0.0000 116 H 14.793776117 5.729649813 4.870415172 CORE 117 H H 0.0000 117 H 13.936796764 6.532578707 6.345361056 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.331178199 4.769380850 3.519211780 CORE 1 Si Si 0.0000 1 Si -2.585906095 12.019395055 7.343672422 CORE 2 Si Si 0.0000 2 Si 1.073006286 4.762130811 3.490107100 CORE 3 Si Si 0.0000 3 Si -8.611439919 12.020793861 7.293944881 CORE 4 Si Si 0.0000 4 Si -13.643353003 7.700183972 11.082897241 CORE 5 Si Si 0.0000 5 Si -4.000607837 14.885997515 7.326786606 CORE 6 Si Si 0.0000 6 Si -7.159248425 9.199314729 7.199825958 CORE 7 Si Si 0.0000 7 Si 2.429008076 16.326917368 3.548428209 CORE 8 Si Si 0.0000 8 Si -13.621045285 16.324443510 3.453845018 CORE 9 Si Si 0.0000 9 Si -3.939737483 9.116355588 7.349351286 CORE 10 Si Si 0.0000 10 Si -7.224028312 14.924927550 7.265704762 CORE 11 Si Si 0.0000 11 Si 2.394785858 7.695161876 3.487385922 CORE 12 Si Si 0.0000 12 Si -10.216666279 4.611118669 5.831716287 CORE 13 Si Si 0.0000 13 Si -0.319044030 12.045521628 9.580895529 CORE 14 Si Si 0.0000 14 Si -10.798996303 12.038082901 9.572729791 CORE 15 Si Si 0.0000 15 Si -1.228913980 4.770656410 5.741849646 CORE 16 Si Si 0.0000 16 Si -9.997517878 4.724668053 8.865524558 CORE 17 Si Si 0.0000 17 Si -0.286415839 11.993307545 5.092650584 CORE 18 Si Si 0.0000 18 Si -10.987523528 12.029112896 5.073032256 CORE 19 Si Si 0.0000 19 Si -1.204842691 4.739929948 8.867605969 CORE 20 Si Si 0.0000 20 Ti -9.078757133 7.688252314 5.009270997 CORE 21 Ti Ti 0.0000 21 Si 0.670734149 14.936206796 8.920847283 CORE 22 Si Si 0.0000 22 Si -2.265459329 16.310639954 5.106760982 CORE 23 Si Si 0.0000 23 Si -11.922708351 9.161793447 8.790074278 CORE 24 Si Si 0.0000 24 Si 0.734605884 9.111217887 5.739482660 CORE 25 Si Si 0.0000 25 Si -8.983520227 16.314321623 9.538361221 CORE 26 Si Si 0.0000 26 Si -11.830887739 14.938817739 5.731275462 CORE 27 Si Si 0.0000 27 Si -2.211502968 7.688171159 9.538353462 CORE 28 Si Si 0.0000 28 Si -12.079956044 9.217080033 5.724675821 CORE 29 Si Si 0.0000 29 Si -2.229168128 16.287651037 9.555923394 CORE 30 Si Si 0.0000 30 Si 0.620850130 14.933008165 5.773335993 CORE 31 Si Si 0.0000 31 Si -9.091850555 7.676037118 9.205278236 CORE 32 Si Si 0.0000 32 Si -2.151632562 7.732412594 5.103472763 CORE 33 Si Si 0.0000 33 Si -11.863801712 14.939557359 8.853807770 CORE 34 Si Si 0.0000 34 Si -8.952416975 16.254610721 5.065379776 CORE 35 Si Si 0.0000 35 Si 0.631309548 9.133831588 8.863477836 CORE 36 Si Si 0.0000 36 O -15.247270925 7.771415712 3.356426997 CORE 37 O O 0.0000 37 O -5.612804769 14.983181987 7.387999676 CORE 38 O O 0.0000 38 O -15.216661104 16.102167339 3.611133510 CORE 39 O O 0.0000 39 O -5.552699772 9.055555652 7.286951643 CORE 40 O O 0.0000 40 O -10.632465611 4.410526881 7.396298997 CORE 41 O O 0.0000 41 O -0.760997298 11.968084054 3.537275345 CORE 42 O O 0.0000 42 O -10.413101287 12.095360595 3.547866112 CORE 43 O O 0.0000 43 O -0.774840103 4.699755344 7.298860589 CORE 44 O O 0.0000 44 O -13.191760712 6.138125230 3.494031207 CORE 45 O O 0.0000 45 O -3.545308659 13.324926759 7.254127262 CORE 46 O O 0.0000 46 O -7.567586833 10.779501882 7.235050340 CORE 47 O O 0.0000 47 O 2.100129498 17.923548425 3.530762806 CORE 48 O O 0.0000 48 O -3.479699524 10.675107733 7.416069926 CORE 49 O O 0.0000 49 O -13.314455950 17.915521000 3.265570961 CORE 50 O O 0.0000 50 O 1.917077158 6.140172267 3.491048721 CORE 51 O O 0.0000 51 O -7.753737548 13.391872132 7.161202064 CORE 52 O O 0.0000 52 O -11.603477649 4.586583050 4.971185770 CORE 53 O O 0.0000 53 O -1.681194264 12.140618990 8.694643262 CORE 54 O O 0.0000 54 O 0.097029537 4.720962023 4.800041568 CORE 55 O O 0.0000 55 O -9.403274894 12.020380302 8.724520074 CORE 56 O O 0.0000 56 O -1.617285002 11.954814853 6.030865012 CORE 57 O O 0.0000 57 O -11.199797964 4.847017636 9.952102159 CORE 58 O O 0.0000 58 O -9.715497497 11.922873372 6.091059931 CORE 59 O O 0.0000 59 O 0.171760209 4.663943506 9.737934277 CORE 60 O O 0.0000 60 O -10.593553686 8.569393719 5.492598877 CORE 61 O O 0.0000 61 O -0.779673759 15.622633880 9.216085581 CORE 62 O O 0.0000 62 O -10.502923543 8.362304054 8.768171503 CORE 63 O O 0.0000 63 O -0.842499553 15.612628320 5.503097064 CORE 64 O O 0.0000 64 O -0.707681781 8.429304203 5.395873493 CORE 65 O O 0.0000 65 O -10.462472438 15.709347917 9.202541615 CORE 66 O O 0.0000 66 O -10.289591234 15.429194110 5.499770885 CORE 67 O O 0.0000 67 O -0.826048148 8.456728247 9.132536277 CORE 68 O O 0.0000 68 O -12.532743037 9.150757089 7.286882874 CORE 69 O O 0.0000 69 O -2.565309796 16.077284757 3.526019250 CORE 70 O O 0.0000 70 O -8.920674996 7.793052670 3.212957623 CORE 71 O O 0.0000 71 O 1.004902864 15.101007215 7.340512841 CORE 72 O O 0.0000 72 O -2.483467489 7.879975865 3.521493260 CORE 73 O O 0.0000 73 O -12.227042801 15.172867438 7.287246042 CORE 74 O O 0.0000 74 O 1.056680933 8.904713028 7.314019034 CORE 75 O O 0.0000 75 O -8.626499943 16.024675998 3.490314320 CORE 76 O O 0.0000 76 O -13.198893709 8.409712119 4.871222146 CORE 77 O O 0.0000 77 O -3.388873856 15.575472019 8.673074291 CORE 78 O O 0.0000 78 O 1.751731739 15.657965852 4.869538669 CORE 79 O O 0.0000 79 O -7.875202866 8.410111263 8.434319884 CORE 80 O O 0.0000 80 O -3.313692092 8.436247351 5.996411850 CORE 81 O O 0.0000 81 O -13.084479982 15.538202129 9.738779134 CORE 82 O O 0.0000 82 O -7.667981089 15.734529172 5.916879918 CORE 83 O O 0.0000 83 O 1.747758122 8.456963063 9.816059026 CORE 84 O O 0.0000 84 O -7.671289807 8.536666058 5.791960666 CORE 85 O O 0.0000 85 O 1.834035338 15.651306097 9.795673815 CORE 86 O O 0.0000 86 O -3.466581276 15.663884112 5.990678975 CORE 87 O O 0.0000 87 O -12.956868721 8.444955296 9.809541467 CORE 88 O O 0.0000 88 O 1.914498579 8.407721732 4.875544338 CORE 89 O O 0.0000 89 O -7.856273338 15.636378624 8.588578042 CORE 90 O O 0.0000 90 O -12.860312023 15.752972112 4.778120840 CORE 91 O O 0.0000 91 O -3.424967223 8.314456772 8.667433464 CORE 92 O O 0.0000 92 O -9.423884279 6.013745475 5.611594312 CORE 93 O O 0.0000 93 O 0.615414118 13.354632369 9.318251646 CORE 94 O O 0.0000 94 O -2.201297578 17.918669756 5.396392229 CORE 95 O O 0.0000 95 O -11.674556280 10.699659641 9.269698584 CORE 96 O O 0.0000 96 O 0.667600942 10.705739058 5.392281213 CORE 97 O O 0.0000 97 O -8.987045831 17.928842383 9.287971956 CORE 98 O O 0.0000 98 O -11.886749504 13.350004228 5.386934252 CORE 99 O O 0.0000 99 O -2.036733680 6.098913242 9.201749096 CORE 100 O O 0.0000 100 O -12.010063839 10.775686156 5.246852144 CORE 101 O O 0.0000 101 O -2.174924254 17.883900824 9.205851820 CORE 102 O O 0.0000 102 O 0.567583879 13.348767299 5.388460716 CORE 103 O O 0.0000 103 O -9.118625321 6.095432947 8.797516342 CORE 104 O O 0.0000 104 O -2.073191539 6.142930095 5.491979497 CORE 105 O O 0.0000 105 O -11.689688663 13.345456666 9.168525488 CORE 106 O O 0.0000 106 O -9.205944437 17.833797779 5.364633771 CORE 107 O O 0.0000 107 O 0.550810320 10.731520831 9.176400479 CORE 108 O O 0.0000 108 O2 12.639620208 5.652558481 4.846275343 CORE 109 O2 O2 0.0000 109 O2 13.575034812 7.540321034 2.958373890 CORE 110 O2 O2 0.0000 110 H 13.086628830 6.753927290 3.282595533 CORE 111 H H 0.0000 111 H 13.363611370 8.228599259 3.621291123 CORE 112 H H 0.0000 112 C 13.914213464 5.769969141 5.537854591 CORE 113 C C 0.0000 113 C 13.079689434 4.562779844 5.710407573 CORE 114 C C 0.0000 114 H 13.370091206 3.616226219 5.207486317 CORE 115 H H 0.0000 115 H 12.480989794 4.441276407 6.640546712 CORE 116 H H 0.0000 116 H 14.793685860 5.730796073 4.869121489 CORE 117 H H 0.0000 117 H 13.935934992 6.534064867 6.342980910 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.327583700 4.766876433 3.517902501 CORE 1 Si Si 0.0000 1 Si -2.584563017 12.020905287 7.344957661 CORE 2 Si Si 0.0000 2 Si 1.072998204 4.762028323 3.489754810 CORE 3 Si Si 0.0000 3 Si -8.612321705 12.021965635 7.293636409 CORE 4 Si Si 0.0000 4 Si -13.639468104 7.696042040 11.082957110 CORE 5 Si Si 0.0000 5 Si -4.001212501 14.889160974 7.328014563 CORE 6 Si Si 0.0000 6 Si -7.157942874 9.197486075 7.199182312 CORE 7 Si Si 0.0000 7 Si 2.430475474 16.328704652 3.548689137 CORE 8 Si Si 0.0000 8 Si -13.622181869 16.324178423 3.451325964 CORE 9 Si Si 0.0000 9 Si -3.938453871 9.117629707 7.348228765 CORE 10 Si Si 0.0000 10 Si -7.224166680 14.923828858 7.263886104 CORE 11 Si Si 0.0000 11 Si 2.398391904 7.695514893 3.487827445 CORE 12 Si Si 0.0000 12 Si -10.214464124 4.611548805 5.831403630 CORE 13 Si Si 0.0000 13 Si -0.316326698 12.045953926 9.581318567 CORE 14 Si Si 0.0000 14 Si -10.795798627 12.039483726 9.574272002 CORE 15 Si Si 0.0000 15 Si -1.230284578 4.772201382 5.740647706 CORE 16 Si Si 0.0000 16 Si -9.993023889 4.724079211 8.865797353 CORE 17 Si Si 0.0000 17 Si -0.284711926 11.994513914 5.093870934 CORE 18 Si Si 0.0000 18 Si -10.991195198 12.030804178 5.075405479 CORE 19 Si Si 0.0000 19 Si -1.205682524 4.740812130 8.867999490 CORE 20 Si Si 0.0000 20 Ti -9.074492154 7.685013178 5.010231028 CORE 21 Ti Ti 0.0000 21 Si 0.671598999 14.937973755 8.921184815 CORE 22 Si Si 0.0000 22 Si -2.266750831 16.312331236 5.107134725 CORE 23 Si Si 0.0000 23 Si -11.918697784 9.159443988 8.792539853 CORE 24 Si Si 0.0000 24 Si 0.735608911 9.111564273 5.739578815 CORE 25 Si Si 0.0000 25 Si -8.983310654 16.313420125 9.536752295 CORE 26 Si Si 0.0000 26 Si -11.830801524 14.941518340 5.729581335 CORE 27 Si Si 0.0000 27 Si -2.208530838 7.687747942 9.538875088 CORE 28 Si Si 0.0000 28 Si -12.077495434 9.215627027 5.722836776 CORE 29 Si Si 0.0000 29 Si -2.230014312 16.289024041 9.557622162 CORE 30 Si Si 0.0000 30 Si 0.621023523 14.934949975 5.773744120 CORE 31 Si Si 0.0000 31 Si -9.084323430 7.670188193 9.209748465 CORE 32 Si Si 0.0000 32 Si -2.151593495 7.733820481 5.101977717 CORE 33 Si Si 0.0000 33 Si -11.864089033 14.938594742 8.852662428 CORE 34 Si Si 0.0000 34 Si -8.950596440 16.252797923 5.063435295 CORE 35 Si Si 0.0000 35 Si 0.635916696 9.133582213 8.863634697 CORE 36 Si Si 0.0000 36 O -15.244229707 7.767963381 3.357760466 CORE 37 O O 0.0000 37 O -5.613240466 14.981060858 7.387027321 CORE 38 O O 0.0000 38 O -15.215983695 16.103523766 3.610597886 CORE 39 O O 0.0000 39 O -5.549804620 9.054703309 7.288847742 CORE 40 O O 0.0000 40 O -10.629607024 4.410138837 7.397101863 CORE 41 O O 0.0000 41 O -0.756153827 11.971159439 3.537548444 CORE 42 O O 0.0000 42 O -10.413781582 12.091990717 3.550946655 CORE 43 O O 0.0000 43 O -0.778691132 4.699213062 7.298926239 CORE 44 O O 0.0000 44 O -13.186618373 6.135383546 3.493057863 CORE 45 O O 0.0000 45 O -3.540855082 13.328435451 7.256648674 CORE 46 O O 0.0000 46 O -7.571074718 10.777944946 7.233268730 CORE 47 O O 0.0000 47 O 2.101426196 17.924708811 3.529336073 CORE 48 O O 0.0000 48 O -3.483659862 10.678653471 7.416353219 CORE 49 O O 0.0000 49 O -13.314633193 17.915326401 3.261462151 CORE 50 O O 0.0000 50 O 1.916075671 6.141343609 3.490391610 CORE 51 O O 0.0000 51 O -7.751799813 13.390279159 7.159247694 CORE 52 O O 0.0000 52 O -11.603158189 4.585740221 4.971862964 CORE 53 O O 0.0000 53 O -1.679824052 12.137506415 8.696438717 CORE 54 O O 0.0000 54 O 0.096985659 4.721730617 4.800060815 CORE 55 O O 0.0000 55 O -9.398855573 12.023450209 8.727462470 CORE 56 O O 0.0000 56 O -1.616873361 11.954649371 6.031406646 CORE 57 O O 0.0000 57 O -11.194838448 4.844471127 9.953253968 CORE 58 O O 0.0000 58 O -9.720982389 11.923484701 6.095265733 CORE 59 O O 0.0000 59 O 0.171583736 4.667684996 9.736557294 CORE 60 O O 0.0000 60 O -10.587819192 8.571502163 5.488430350 CORE 61 O O 0.0000 61 O -0.781476975 15.622186158 9.214775238 CORE 62 O O 0.0000 62 O -10.500405970 8.355996884 8.780382303 CORE 63 O O 0.0000 63 O -0.844129375 15.613163972 5.504827630 CORE 64 O O 0.0000 64 O -0.707353661 8.430802327 5.395672130 CORE 65 O O 0.0000 65 O -10.463409071 15.708919511 9.201286349 CORE 66 O O 0.0000 66 O -10.288407886 15.430070670 5.501824681 CORE 67 O O 0.0000 67 O -0.819696096 8.453142148 9.135758770 CORE 68 O O 0.0000 68 O -12.527186940 9.147422094 7.286218383 CORE 69 O O 0.0000 69 O -2.567920898 16.076416846 3.526383940 CORE 70 O O 0.0000 70 O -8.910396861 7.788630228 3.216475124 CORE 71 O O 0.0000 71 O 1.006620634 15.105631608 7.340937399 CORE 72 O O 0.0000 72 O -2.482647863 7.882584501 3.520293222 CORE 73 O O 0.0000 73 O -12.227541427 15.171440378 7.286687444 CORE 74 O O 0.0000 74 O 1.060410529 8.902635143 7.314309097 CORE 75 O O 0.0000 75 O -8.626362922 16.021044925 3.488374480 CORE 76 O O 0.0000 76 O -13.194961275 8.404417729 4.871595204 CORE 77 O O 0.0000 77 O -3.392270329 15.581911516 8.674888461 CORE 78 O O 0.0000 78 O 1.749269012 15.661043975 4.868537483 CORE 79 O O 0.0000 79 O -7.872870810 8.410033568 8.433728879 CORE 80 O O 0.0000 80 O -3.313892813 8.440055581 5.994406968 CORE 81 O O 0.0000 81 O -13.087246195 15.533975151 9.736761320 CORE 82 O O 0.0000 82 O -7.664857120 15.731392957 5.912996814 CORE 83 O O 0.0000 83 O 1.755721136 8.461576790 9.814840578 CORE 84 O O 0.0000 84 O -7.669059170 8.534482081 5.791763716 CORE 85 O O 0.0000 85 O 1.833467623 15.651851695 9.797086703 CORE 86 O O 0.0000 86 O -3.469190646 15.667872671 5.990839031 CORE 87 O O 0.0000 87 O -12.956376830 8.444148359 9.811081396 CORE 88 O O 0.0000 88 O 1.916494625 8.407978314 4.876496457 CORE 89 O O 0.0000 89 O -7.859886697 15.636606377 8.583827411 CORE 90 O O 0.0000 90 O -12.856076103 15.758764964 4.774979059 CORE 91 O O 0.0000 91 O -3.418652697 8.317340152 8.664737314 CORE 92 O O 0.0000 92 O -9.424918482 6.013542948 5.611389298 CORE 93 O O 0.0000 93 O 0.615320782 13.355027477 9.315316173 CORE 94 O O 0.0000 94 O -2.202715517 17.920653080 5.394229421 CORE 95 O O 0.0000 95 O -11.669680670 10.701221334 9.266628463 CORE 96 O O 0.0000 96 O 0.668376497 10.706758756 5.392955669 CORE 97 O O 0.0000 97 O -8.984131242 17.926780786 9.290191894 CORE 98 O O 0.0000 98 O -11.888637973 13.352570052 5.385635852 CORE 99 O O 0.0000 99 O -2.037986308 6.099167951 9.202641118 CORE 100 O O 0.0000 100 O -12.013516314 10.776293881 5.247899049 CORE 101 O O 0.0000 101 O -2.174250117 17.885176384 9.209017487 CORE 102 O O 0.0000 102 O 0.567121817 13.349756006 5.391685035 CORE 103 O O 0.0000 103 O -9.112707426 6.090258055 8.795600312 CORE 104 O O 0.0000 104 O -2.073164019 6.145335483 5.490838338 CORE 105 O O 0.0000 105 O -11.688626556 13.345527730 9.168183924 CORE 106 O O 0.0000 106 O -9.203302159 17.832147723 5.363548678 CORE 107 O O 0.0000 107 O 0.551480800 10.731480181 9.175938797 CORE 108 O O 0.0000 108 O2 12.640854747 5.663640822 4.846941583 CORE 109 O2 O2 0.0000 109 O2 13.585481722 7.532315520 2.956194499 CORE 110 O2 O2 0.0000 110 H 13.095615463 6.745327599 3.289082359 CORE 111 H H 0.0000 111 H 13.357995807 8.229219093 3.603917152 CORE 112 H H 0.0000 112 C 13.914188253 5.764135784 5.548478069 CORE 113 C C 0.0000 113 C 13.067267070 4.562287149 5.707151912 CORE 114 C C 0.0000 114 H 13.346925181 3.619158754 5.191716328 CORE 115 H H 0.0000 115 H 12.471019764 4.434649806 6.636749493 CORE 116 H H 0.0000 116 H 14.795479453 5.721805888 4.878680566 CORE 117 H H 0.0000 117 H 13.942414636 6.521354525 6.358969911 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.321832463 4.762869279 3.515807702 CORE 1 Si Si 0.0000 1 Si -2.582414169 12.023321486 7.347013968 CORE 2 Si Si 0.0000 2 Si 1.072985310 4.761864427 3.489191191 CORE 3 Si Si 0.0000 3 Si -8.613732716 12.023840561 7.293143005 CORE 4 Si Si 0.0000 4 Si -13.633252110 7.689415007 11.083052809 CORE 5 Si Si 0.0000 5 Si -4.002179925 14.894222422 7.329979279 CORE 6 Si Si 0.0000 6 Si -7.155853877 9.194560315 7.198152447 CORE 7 Si Si 0.0000 7 Si 2.432823503 16.331564104 3.549106697 CORE 8 Si Si 0.0000 8 Si -13.624000673 16.323754486 3.447295508 CORE 9 Si Si 0.0000 9 Si -3.936399706 9.119668240 7.346432701 CORE 10 Si Si 0.0000 10 Si -7.224387993 14.922071125 7.260976192 CORE 11 Si Si 0.0000 11 Si 2.404161423 7.696079807 3.488533927 CORE 12 Si Si 0.0000 12 Si -10.210940637 4.612236965 5.830903532 CORE 13 Si Si 0.0000 13 Si -0.311978774 12.046645834 9.581995305 CORE 14 Si Si 0.0000 14 Si -10.790682652 12.041724930 9.576739631 CORE 15 Si Si 0.0000 15 Si -1.232477688 4.774673366 5.738724525 CORE 16 Si Si 0.0000 16 Si -9.985833351 4.723137351 8.866233855 CORE 17 Si Si 0.0000 17 Si -0.281985549 11.996444192 5.095823478 CORE 18 Si Si 0.0000 18 Si -10.997069792 12.033510257 5.079202622 CORE 19 Si Si 0.0000 19 Si -1.207025986 4.742223622 8.868629063 CORE 20 Si Si 0.0000 20 Ti -9.067667840 7.679830357 5.011767001 CORE 21 Ti Ti 0.0000 21 Si 0.672982876 14.940800774 8.921724775 CORE 22 Si Si 0.0000 22 Si -2.268817120 16.315037171 5.107732728 CORE 23 Si Si 0.0000 23 Si -11.912281070 9.155684768 8.796484804 CORE 24 Si Si 0.0000 24 Si 0.737213715 9.112118520 5.739732709 CORE 25 Si Si 0.0000 25 Si -8.982975414 16.311977642 9.534177936 CORE 26 Si Si 0.0000 26 Si -11.830663733 14.945839015 5.726870883 CORE 27 Si Si 0.0000 27 Si -2.203775315 7.687070882 9.539709600 CORE 28 Si Si 0.0000 28 Si -12.073558189 9.213302217 5.719894305 CORE 29 Si Si 0.0000 29 Si -2.231368166 16.291220848 9.560340221 CORE 30 Si Si 0.0000 30 Si 0.621300837 14.938056929 5.774397200 CORE 31 Si Si 0.0000 31 Si -9.072279799 7.660829999 9.216900770 CORE 32 Si Si 0.0000 32 Si -2.151530950 7.736073073 5.099585627 CORE 33 Si Si 0.0000 33 Si -11.864548978 14.937054527 8.850829849 CORE 34 Si Si 0.0000 34 Si -8.947683391 16.249897389 5.060324096 CORE 35 Si Si 0.0000 35 Si 0.643288325 9.133183357 8.863885735 CORE 36 Si Si 0.0000 36 O -15.239363720 7.762439941 3.359894062 CORE 37 O O 0.0000 37 O -5.613937504 14.977667051 7.385471645 CORE 38 O O 0.0000 38 O -15.214899649 16.105693905 3.609740857 CORE 39 O O 0.0000 39 O -5.545172261 9.053339386 7.291881348 CORE 40 O O 0.0000 40 O -10.625032977 4.409518138 7.398386494 CORE 41 O O 0.0000 41 O -0.748404235 11.976080199 3.537985326 CORE 42 O O 0.0000 42 O -10.414870054 12.086599172 3.555875370 CORE 43 O O 0.0000 43 O -0.784852471 4.698345294 7.299031295 CORE 44 O O 0.0000 44 O -13.178390938 6.130996852 3.491500438 CORE 45 O O 0.0000 45 O -3.533729399 13.334049416 7.260682934 CORE 46 O O 0.0000 46 O -7.576655063 10.775453934 7.230418077 CORE 47 O O 0.0000 47 O 2.103500760 17.926565574 3.527053223 CORE 48 O O 0.0000 48 O -3.489996519 10.684326681 7.416806533 CORE 49 O O 0.0000 49 O -13.314916858 17.915015186 3.254887918 CORE 50 O O 0.0000 50 O 1.914473369 6.143217669 3.489340216 CORE 51 O O 0.0000 51 O -7.748699321 13.387730488 7.156120595 CORE 52 O O 0.0000 52 O -11.602647246 4.584391866 4.972946536 CORE 53 O O 0.0000 53 O -1.677631711 12.132526266 8.699311507 CORE 54 O O 0.0000 54 O 0.096915224 4.722960338 4.800091700 CORE 55 O O 0.0000 55 O -9.391784544 12.028362032 8.732170348 CORE 56 O O 0.0000 56 O -1.616214619 11.954384573 6.032273412 CORE 57 O O 0.0000 57 O -11.186903146 4.840396657 9.955096892 CORE 58 O O 0.0000 58 O -9.729757909 11.924462886 6.101995001 CORE 59 O O 0.0000 59 O 0.171301611 4.673671582 9.734354168 CORE 60 O O 0.0000 60 O -10.578644155 8.574875645 5.481760646 CORE 61 O O 0.0000 61 O -0.784361927 15.621469890 9.212678765 CORE 62 O O 0.0000 62 O -10.496377698 8.345905268 8.799919614 CORE 63 O O 0.0000 63 O -0.846737013 15.614021072 5.507596505 CORE 64 O O 0.0000 64 O -0.706828670 8.433199210 5.395349964 CORE 65 O O 0.0000 65 O -10.464907645 15.708233801 9.199277967 CORE 66 O O 0.0000 66 O -10.286514606 15.431473225 5.505110771 CORE 67 O O 0.0000 67 O -0.809532851 8.447404216 9.140914638 CORE 68 O O 0.0000 68 O -12.518296915 9.142086189 7.285155122 CORE 69 O O 0.0000 69 O -2.572098507 16.075028130 3.526967337 CORE 70 O O 0.0000 70 O -8.893951999 7.781554320 3.222103095 CORE 71 O O 0.0000 71 O 1.009369142 15.113030839 7.341616648 CORE 72 O O 0.0000 72 O -2.481336539 7.886758433 3.518373160 CORE 73 O O 0.0000 73 O -12.228339114 15.169157083 7.285793596 CORE 74 O O 0.0000 74 O 1.066377882 8.899310383 7.314773061 CORE 75 O O 0.0000 75 O -8.626143534 16.015234919 3.485270736 CORE 76 O O 0.0000 76 O -13.188669458 8.395946762 4.872192066 CORE 77 O O 0.0000 77 O -3.397704800 15.592214596 8.677791070 CORE 78 O O 0.0000 78 O 1.745328496 15.665969204 4.866935707 CORE 79 O O 0.0000 79 O -7.869139674 8.409909169 8.432783150 CORE 80 O O 0.0000 80 O -3.314214004 8.446148836 5.991199233 CORE 81 O O 0.0000 81 O -13.091672445 15.527212042 9.733532741 CORE 82 O O 0.0000 82 O -7.659858538 15.726375041 5.906783924 CORE 83 O O 0.0000 83 O 1.768461998 8.468958578 9.812890924 CORE 84 O O 0.0000 84 O -7.665490073 8.530987804 5.791448625 CORE 85 O O 0.0000 85 O 1.832559280 15.652724652 9.799347416 CORE 86 O O 0.0000 86 O -3.473365754 15.674254221 5.991095090 CORE 87 O O 0.0000 87 O -12.955589727 8.442857230 9.813545297 CORE 88 O O 0.0000 88 O 1.919688645 8.408388702 4.878019727 CORE 89 O O 0.0000 89 O -7.865667763 15.636971070 8.576226355 CORE 90 O O 0.0000 90 O -12.849298553 15.768033499 4.769952210 CORE 91 O O 0.0000 91 O -3.408549495 8.321953734 8.660423414 CORE 92 O O 0.0000 92 O -9.426572937 6.013218904 5.611061274 CORE 93 O O 0.0000 93 O 0.615171252 13.355659419 9.310619477 CORE 94 O O 0.0000 94 O -2.204984258 17.923826485 5.390768822 CORE 95 O O 0.0000 95 O -11.661879888 10.703719985 9.261716255 CORE 96 O O 0.0000 96 O 0.669617387 10.708390217 5.394034828 CORE 97 O O 0.0000 97 O -8.979467900 17.923481973 9.293743779 CORE 98 O O 0.0000 98 O -11.891659561 13.356675226 5.383558473 CORE 99 O O 0.0000 99 O -2.039990437 6.099575600 9.204068384 CORE 100 O O 0.0000 100 O -12.019040080 10.777266300 5.249573930 CORE 101 O O 0.0000 101 O -2.173171652 17.887217079 9.214082524 CORE 102 O O 0.0000 102 O 0.566382441 13.351337880 5.396843945 CORE 103 O O 0.0000 103 O -9.103238717 6.081978228 8.792534604 CORE 104 O O 0.0000 104 O -2.073120141 6.149183931 5.489012530 CORE 105 O O 0.0000 105 O -11.686927069 13.345641463 9.167637346 CORE 106 O O 0.0000 106 O -9.199074706 17.829507808 5.361812635 CORE 107 O O 0.0000 107 O 0.552553877 10.731415315 9.175200136 CORE 108 O O 0.0000 108 O2 12.642830201 5.681372683 4.848007506 CORE 109 O2 O2 0.0000 109 O2 13.602196777 7.519506869 2.952707503 CORE 110 O2 O2 0.0000 110 H 13.109994036 6.731568008 3.299461265 CORE 111 H H 0.0000 111 H 13.349011099 8.230210971 3.576118784 CORE 112 H H 0.0000 112 C 13.914148225 5.754802239 5.565475559 CORE 113 C C 0.0000 113 C 13.047391095 4.561498951 5.701942794 CORE 114 C C 0.0000 114 H 13.309859772 3.623851040 5.166484330 CORE 115 H H 0.0000 115 H 12.455067948 4.424047332 6.630673913 CORE 116 H H 0.0000 116 H 14.798349202 5.707421706 4.893975104 CORE 117 H H 0.0000 117 H 13.952782258 6.501018064 6.384552373 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.326192896 4.765907329 3.517395861 CORE 1 Si Si 0.0000 1 Si -2.584043414 12.021489661 7.345454945 CORE 2 Si Si 0.0000 2 Si 1.072995124 4.761988682 3.489618488 CORE 3 Si Si 0.0000 3 Si -8.612663103 12.022419123 7.293517128 CORE 4 Si Si 0.0000 4 Si -13.637964719 7.694439409 11.082980236 CORE 5 Si Si 0.0000 5 Si -4.001446515 14.890384930 7.328489710 CORE 6 Si Si 0.0000 6 Si -7.157437704 9.196778456 7.198933251 CORE 7 Si Si 0.0000 7 Si 2.431043381 16.329396127 3.548790161 CORE 8 Si Si 0.0000 8 Si -13.622621800 16.324075934 3.450351251 CORE 9 Si Si 0.0000 9 Si -3.937956976 9.118122692 7.347794393 CORE 10 Si Si 0.0000 10 Si -7.224220180 14.923403768 7.263182361 CORE 11 Si Si 0.0000 11 Si 2.399787134 7.695651545 3.487998303 CORE 12 Si Si 0.0000 12 Si -10.213611975 4.611715296 5.831282675 CORE 13 Si Si 0.0000 13 Si -0.315275175 12.046121282 9.581482198 CORE 14 Si Si 0.0000 14 Si -10.794561394 12.040025720 9.574868788 CORE 15 Si Si 0.0000 15 Si -1.230814958 4.772799305 5.740182600 CORE 16 Si Si 0.0000 16 Si -9.991284950 4.723851458 8.865902941 CORE 17 Si Si 0.0000 17 Si -0.284052415 11.994980664 5.094343114 CORE 18 Si Si 0.0000 18 Si -10.992615831 12.031458607 5.076323747 CORE 19 Si Si 0.0000 19 Si -1.206007372 4.741153471 8.868151710 CORE 20 Si Si 0.0000 20 Ti -9.072841740 7.683759672 5.010602488 CORE 21 Ti Ti 0.0000 21 Si 0.671933662 14.938657447 8.921315355 CORE 22 Si Si 0.0000 22 Si -2.267250613 16.312985665 5.107279338 CORE 23 Si Si 0.0000 23 Si -11.917145903 9.158534850 8.793493950 CORE 24 Si Si 0.0000 24 Si 0.735997074 9.111698330 5.739616015 CORE 25 Si Si 0.0000 25 Si -8.983229634 16.313071289 9.536129720 CORE 26 Si Si 0.0000 26 Si -11.830768230 14.942563265 5.728925821 CORE 27 Si Si 0.0000 27 Si -2.207380783 7.687584191 9.539076908 CORE 28 Si Si 0.0000 28 Si -12.076543213 9.215064708 5.722125197 CORE 29 Si Si 0.0000 29 Si -2.230341661 16.289555368 9.558279502 CORE 30 Si Si 0.0000 30 Si 0.621090494 14.935701416 5.773902046 CORE 31 Si Si 0.0000 31 Si -9.081410766 7.667924934 9.211478194 CORE 32 Si Si 0.0000 32 Si -2.151578292 7.734365215 5.101399188 CORE 33 Si Si 0.0000 33 Si -11.864200267 14.938222266 8.852219231 CORE 34 Si Si 0.0000 34 Si -8.949891897 16.252096358 5.062682865 CORE 35 Si Si 0.0000 35 Si 0.637699512 9.133485778 8.863695403 CORE 36 Si Si 0.0000 36 O -15.243052902 7.766627567 3.358276464 CORE 37 O O 0.0000 37 O -5.613409049 14.980240082 7.386651068 CORE 38 O O 0.0000 38 O -15.215721392 16.104048607 3.610390589 CORE 39 O O 0.0000 39 O -5.548684201 9.054373500 7.289581382 CORE 40 O O 0.0000 40 O -10.628500847 4.409988779 7.397412542 CORE 41 O O 0.0000 41 O -0.754279599 11.972349520 3.537654108 CORE 42 O O 0.0000 42 O -10.414044847 12.090686904 3.552138629 CORE 43 O O 0.0000 43 O -0.780181046 4.699003183 7.298951647 CORE 44 O O 0.0000 44 O -13.184628678 6.134322621 3.492681230 CORE 45 O O 0.0000 45 O -3.539131732 13.329793176 7.257624300 CORE 46 O O 0.0000 46 O -7.572424339 10.777342554 7.232579288 CORE 47 O O 0.0000 47 O 2.101927902 17.925157831 3.528783941 CORE 48 O O 0.0000 48 O -3.485192306 10.680025466 7.416462839 CORE 49 O O 0.0000 49 O -13.314701703 17.915251156 3.259872167 CORE 50 O O 0.0000 50 O 1.915688278 6.141796808 3.490137301 CORE 51 O O 0.0000 51 O -7.751049852 13.389662784 7.158491384 CORE 52 O O 0.0000 52 O -11.603034639 4.585414159 4.972125033 CORE 53 O O 0.0000 53 O -1.679293864 12.136302064 8.697133485 CORE 54 O O 0.0000 54 O 0.096968532 4.722027993 4.800068346 CORE 55 O O 0.0000 55 O -9.397145501 12.024637984 8.728601042 CORE 56 O O 0.0000 56 O -1.616714016 11.954585370 6.031616301 CORE 57 O O 0.0000 57 O -11.192919380 4.843485736 9.953699674 CORE 58 O O 0.0000 58 O -9.723104680 11.923721247 6.096893145 CORE 59 O O 0.0000 59 O 0.171515610 4.669132813 9.736024485 CORE 60 O O 0.0000 60 O -10.585600294 8.572318037 5.486817316 CORE 61 O O 0.0000 61 O -0.782174590 15.622012893 9.214268217 CORE 62 O O 0.0000 62 O -10.499431810 8.353556324 8.785107298 CORE 63 O O 0.0000 63 O -0.844760019 15.613371256 5.505497217 CORE 64 O O 0.0000 64 O -0.707226840 8.431381943 5.395594232 CORE 65 O O 0.0000 65 O -10.463771446 15.708753597 9.200800628 CORE 66 O O 0.0000 66 O -10.287950057 15.430409849 5.502619407 CORE 67 O O 0.0000 67 O -0.817238180 8.451754441 9.137005669 CORE 68 O O 0.0000 68 O -12.525036938 9.146131542 7.285961259 CORE 69 O O 0.0000 69 O -2.568931238 16.076080982 3.526524978 CORE 70 O O 0.0000 70 O -8.906419780 7.786919054 3.217836207 CORE 71 O O 0.0000 71 O 1.007285341 15.107421054 7.341101639 CORE 72 O O 0.0000 72 O -2.482330713 7.883593965 3.519828877 CORE 73 O O 0.0000 73 O -12.227734258 15.170888150 7.286471247 CORE 74 O O 0.0000 74 O 1.061853678 8.901831089 7.314421303 CORE 75 O O 0.0000 75 O -8.626309807 16.019639776 3.487623876 CORE 76 O O 0.0000 76 O -13.193439608 8.402369106 4.871739513 CORE 77 O O 0.0000 77 O -3.393584732 15.584403248 8.675590378 CORE 78 O O 0.0000 78 O 1.748316022 15.662235065 4.868150123 CORE 79 O O 0.0000 79 O -7.871968432 8.410003441 8.433500130 CORE 80 O O 0.0000 80 O -3.313970561 8.441529200 5.993631184 CORE 81 O O 0.0000 81 O -13.088316770 15.532339510 9.735980515 CORE 82 O O 0.0000 82 O -7.663648177 15.730179380 5.911494312 CORE 83 O O 0.0000 83 O 1.758802383 8.463362055 9.814369083 CORE 84 O O 0.0000 84 O -7.668195859 8.533637089 5.791687567 CORE 85 O O 0.0000 85 O 1.833247850 15.652062727 9.797633510 CORE 86 O O 0.0000 86 O -3.470200409 15.669415913 5.990900954 CORE 87 O O 0.0000 87 O -12.956186501 8.443836135 9.811677269 CORE 88 O O 0.0000 88 O 1.917267102 8.408077487 4.876864875 CORE 89 O O 0.0000 89 O -7.861284814 15.636694595 8.581989127 CORE 90 O O 0.0000 90 O -12.854437043 15.761006456 4.773763350 CORE 91 O O 0.0000 91 O -3.416209215 8.318455997 8.663693984 CORE 92 O O 0.0000 92 O -9.425318576 6.013464532 5.611309954 CORE 93 O O 0.0000 93 O 0.615284602 13.355180273 9.314180340 CORE 94 O O 0.0000 94 O -2.203264179 17.921420521 5.393392475 CORE 95 O O 0.0000 95 O -11.667794126 10.701825600 9.265440444 CORE 96 O O 0.0000 96 O 0.668676520 10.707153288 5.393216672 CORE 97 O O 0.0000 97 O -8.983003318 17.925982930 9.291050825 CORE 98 O O 0.0000 98 O -11.889368689 13.353562795 5.385133472 CORE 99 O O 0.0000 99 O -2.038470887 6.099266548 9.202986333 CORE 100 O O 0.0000 100 O -12.014852079 10.776529130 5.248304057 CORE 101 O O 0.0000 101 O -2.173989353 17.885669801 9.210242401 CORE 102 O O 0.0000 102 O 0.566943035 13.350138574 5.392932695 CORE 103 O O 0.0000 103 O -9.110417515 6.088255559 8.794858913 CORE 104 O O 0.0000 104 O -2.073153434 6.146266243 5.490396815 CORE 105 O O 0.0000 105 O -11.688215492 13.345555263 9.168051711 CORE 106 O O 0.0000 106 O -9.202279888 17.831509294 5.363128836 CORE 107 O O 0.0000 107 O 0.551740409 10.731464469 9.175760180 CORE 108 O O 0.0000 108 O2 12.641332589 5.667929207 4.847199315 CORE 109 O2 O2 0.0000 109 O2 13.589524042 7.529217936 2.955351239 CORE 110 O2 O2 0.0000 110 H 13.099092762 6.741999956 3.291592436 CORE 111 H H 0.0000 111 H 13.355822904 8.229458954 3.597194274 CORE 112 H H 0.0000 112 C 13.914178631 5.761878579 5.552588781 CORE 113 C C 0.0000 113 C 13.062460163 4.562096586 5.705892081 CORE 114 C C 0.0000 114 H 13.337961257 3.620293626 5.185614123 CORE 115 H H 0.0000 115 H 12.467161999 4.432085712 6.635280159 CORE 116 H H 0.0000 116 H 14.796173604 5.718327178 4.882379423 CORE 117 H H 0.0000 117 H 13.944922010 6.516436359 6.365156860 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.322042999 4.761230467 3.514745963 CORE 1 Si Si 0.0000 1 Si -2.583045776 12.025151870 7.346975019 CORE 2 Si Si 0.0000 2 Si 1.073828029 4.764253238 3.488099023 CORE 3 Si Si 0.0000 3 Si -8.613476571 12.022601758 7.293220903 CORE 4 Si Si 0.0000 4 Si -13.634653307 7.688059301 11.081682292 CORE 5 Si Si 0.0000 5 Si -4.000969250 14.893249283 7.329916444 CORE 6 Si Si 0.0000 6 Si -7.154306614 9.196026294 7.198805907 CORE 7 Si Si 0.0000 7 Si 2.430319785 16.332184803 3.548471494 CORE 8 Si Si 0.0000 8 Si -13.620265688 16.324206676 3.445800006 CORE 9 Si Si 0.0000 9 Si -3.935145153 9.121461146 7.345926441 CORE 10 Si Si 0.0000 10 Si -7.223403826 14.922584146 7.261633760 CORE 11 Si Si 0.0000 11 Si 2.401911542 7.695805927 3.488386195 CORE 12 Si Si 0.0000 12 Si -10.212535049 4.609771612 5.830062630 CORE 13 Si Si 0.0000 13 Si -0.313601861 12.046283303 9.580664726 CORE 14 Si Si 0.0000 14 Si -10.792116565 12.041605720 9.577753445 CORE 15 Si Si 0.0000 15 Si -1.232949950 4.775897177 5.737789446 CORE 16 Si Si 0.0000 16 Si -9.986843305 4.719397879 8.868532071 CORE 17 Si Si 0.0000 17 Si -0.284361867 11.996161807 5.096991034 CORE 18 Si Si 0.0000 18 Si -10.996010764 12.033396813 5.078402799 CORE 19 Si Si 0.0000 19 Si -1.207242680 4.743784017 8.868921637 CORE 20 Si Si 0.0000 20 Ti -9.064502110 7.678966626 5.011329206 CORE 21 Ti Ti 0.0000 21 Si 0.672048937 14.939917727 8.919602210 CORE 22 Si Si 0.0000 22 Si -2.268514403 16.314245081 5.107764831 CORE 23 Si Si 0.0000 23 Si -11.911935823 9.158347603 8.798453171 CORE 24 Si Si 0.0000 24 Si 0.738178252 9.111492343 5.739042811 CORE 25 Si Si 0.0000 25 Si -8.984673361 16.309917343 9.534832309 CORE 26 Si Si 0.0000 26 Si -11.830002297 14.946364864 5.728830883 CORE 27 Si Si 0.0000 27 Si -2.203113109 7.688824867 9.539583549 CORE 28 Si Si 0.0000 28 Si -12.071177060 9.212812549 5.721464663 CORE 29 Si Si 0.0000 29 Si -2.230293550 16.290869128 9.559231545 CORE 30 Si Si 0.0000 30 Si 0.619901180 14.938075524 5.775589099 CORE 31 Si Si 0.0000 31 Si -9.070804511 7.660892127 9.218428299 CORE 32 Si Si 0.0000 32 Si -2.151790560 7.737929836 5.098620804 CORE 33 Si Si 0.0000 33 Si -11.864992565 14.936151156 8.849956084 CORE 34 Si Si 0.0000 34 Si -8.946909182 16.247829306 5.059936128 CORE 35 Si Si 0.0000 35 Si 0.642304928 9.132337356 8.864689742 CORE 36 Si Si 0.0000 36 O -15.239193021 7.762868491 3.361133202 CORE 37 O O 0.0000 37 O -5.613472556 14.976500466 7.386758938 CORE 38 O O 0.0000 38 O -15.215392118 16.105585074 3.608807071 CORE 39 O O 0.0000 39 O -5.548874145 9.053885561 7.291545413 CORE 40 O O 0.0000 40 O -10.624472383 4.408715525 7.398190912 CORE 41 O O 0.0000 41 O -0.747481843 11.976677690 3.538809568 CORE 42 O O 0.0000 42 O -10.415903680 12.084654767 3.554760761 CORE 43 O O 0.0000 43 O -0.784125411 4.699400165 7.297990247 CORE 44 O O 0.0000 44 O -13.176668165 6.130442029 3.491171578 CORE 45 O O 0.0000 45 O -3.535088642 13.336203699 7.261672785 CORE 46 O O 0.0000 46 O -7.578080893 10.774170734 7.231240265 CORE 47 O O 0.0000 47 O 2.103846585 17.927907442 3.526923215 CORE 48 O O 0.0000 48 O -3.489589496 10.686282905 7.416515861 CORE 49 O O 0.0000 49 O -13.313500843 17.915640210 3.256716922 CORE 50 O O 0.0000 50 O 1.913545589 6.144463391 3.489201689 CORE 51 O O 0.0000 51 O -7.748627154 13.388880208 7.156025885 CORE 52 O O 0.0000 52 O -11.602910319 4.582394992 4.971786588 CORE 53 O O 0.0000 53 O -1.677000105 12.132568069 8.699234522 CORE 54 O O 0.0000 54 O 0.097317243 4.723446980 4.799377534 CORE 55 O O 0.0000 55 O -9.392393442 12.028088729 8.733693617 CORE 56 O O 0.0000 56 O -1.615648444 11.953442425 6.031579025 CORE 57 O O 0.0000 57 O -11.185729420 4.840664194 9.953973154 CORE 58 O O 0.0000 58 O -9.728917499 11.925370582 6.102176510 CORE 59 O O 0.0000 59 O 0.172347360 4.673659330 9.734989675 CORE 60 O O 0.0000 60 O -10.577545483 8.576903222 5.481941013 CORE 61 O O 0.0000 61 O -0.783733592 15.621835447 9.211892254 CORE 62 O O 0.0000 62 O -10.496811278 8.346214897 8.801768472 CORE 63 O O 0.0000 63 O -0.846484140 15.614383891 5.508511957 CORE 64 O O 0.0000 64 O -0.705964781 8.433270130 5.394738344 CORE 65 O O 0.0000 65 O -10.464302596 15.708840229 9.200163904 CORE 66 O O 0.0000 66 O -10.286450136 15.431109108 5.504069038 CORE 67 O O 0.0000 67 O -0.810447160 8.449684052 9.143167287 CORE 68 O O 0.0000 68 O -12.515893654 9.140252634 7.288334635 CORE 69 O O 0.0000 69 O -2.571308518 16.075437508 3.527773322 CORE 70 O O 0.0000 70 O -8.894240283 7.780019582 3.219874561 CORE 71 O O 0.0000 71 O 1.010370244 15.112300444 7.341041923 CORE 72 O O 0.0000 72 O -2.480753814 7.887039376 3.518349654 CORE 73 O O 0.0000 73 O -12.229120251 15.168619702 7.284467658 CORE 74 O O 0.0000 74 O 1.066364218 8.899372366 7.313701204 CORE 75 O O 0.0000 75 O -8.627107109 16.014615950 3.483806498 CORE 76 O O 0.0000 76 O -13.187072737 8.397862193 4.872764205 CORE 77 O O 0.0000 77 O -3.399855765 15.592686967 8.675069360 CORE 78 O O 0.0000 78 O 1.745756110 15.667172979 4.866546142 CORE 79 O O 0.0000 79 O -7.869650618 8.409650568 8.434015443 CORE 80 O O 0.0000 80 O -3.312405016 8.445645762 5.988702468 CORE 81 O O 0.0000 81 O -13.092742827 15.527374929 9.733373750 CORE 82 O O 0.0000 82 O -7.659215577 15.726611731 5.905134223 CORE 83 O O 0.0000 83 O 1.768537437 8.467143186 9.814392513 CORE 84 O O 0.0000 84 O -7.663227298 8.532067612 5.793317642 CORE 85 O O 0.0000 85 O 1.833376789 15.653126391 9.800374694 CORE 86 O O 0.0000 86 O -3.474554298 15.674631743 5.992790282 CORE 87 O O 0.0000 87 O -12.955682101 8.444701308 9.813043069 CORE 88 O O 0.0000 88 O 1.920898935 8.408178391 4.876725359 CORE 89 O O 0.0000 89 O -7.866940021 15.635767871 8.575414665 CORE 90 O O 0.0000 90 O -12.848104043 15.768734632 4.769073121 CORE 91 O O 0.0000 91 O -3.406429514 8.321845624 8.660871783 CORE 92 O O 0.0000 92 O -9.426669160 6.012008354 5.611650149 CORE 93 O O 0.0000 93 O 0.616008775 13.357457514 9.310847314 CORE 94 O O 0.0000 94 O -2.205003118 17.923820863 5.390077478 CORE 95 O O 0.0000 95 O -11.664133233 10.703116728 9.261619415 CORE 96 O O 0.0000 96 O 0.670257653 10.707868259 5.393981958 CORE 97 O O 0.0000 97 O -8.978463334 17.924709820 9.294584073 CORE 98 O O 0.0000 98 O -11.893964675 13.358794337 5.382423857 CORE 99 O O 0.0000 99 O -2.040498493 6.098823727 9.203368216 CORE 100 O O 0.0000 100 O -12.018582637 10.775520242 5.249982437 CORE 101 O O 0.0000 101 O -2.173556928 17.887270414 9.214071190 CORE 102 O O 0.0000 102 O 0.566872600 13.353109452 5.397657461 CORE 103 O O 0.0000 103 O -9.099149825 6.084018346 8.793985909 CORE 104 O O 0.0000 104 O -2.072519519 6.149079568 5.488324077 CORE 105 O O 0.0000 105 O -11.684841728 13.344933411 9.168047755 CORE 106 O O 0.0000 106 O -9.200293657 17.831258334 5.361709405 CORE 107 O O 0.0000 107 O 0.552594868 10.731095019 9.175108013 CORE 108 O O 0.0000 108 O2 12.644691535 5.678718497 4.856152401 CORE 109 O2 O2 0.0000 109 O2 13.599398233 7.514177884 2.952438816 CORE 110 O2 O2 0.0000 110 H 13.118052504 6.735900359 3.299941813 CORE 111 H H 0.0000 111 H 13.349351343 8.228026850 3.572486109 CORE 112 H H 0.0000 112 C 13.914524841 5.753525093 5.563449985 CORE 113 C C 0.0000 113 C 13.042420417 4.562163903 5.698421870 CORE 114 C C 0.0000 114 H 13.306454832 3.626913308 5.161369770 CORE 115 H H 0.0000 115 H 12.453740265 4.426470450 6.628193048 CORE 116 H H 0.0000 116 H 14.796886423 5.705932807 4.898726267 CORE 117 H H 0.0000 117 H 13.952736071 6.497331782 6.385369616 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.322874556 4.762167425 3.515276871 CORE 1 Si Si 0.0000 1 Si -2.583245727 12.024418159 7.346670502 CORE 2 Si Si 0.0000 2 Si 1.073660986 4.763799606 3.488403464 CORE 3 Si Si 0.0000 3 Si -8.613313570 12.022565144 7.293280239 CORE 4 Si Si 0.0000 4 Si -13.635316667 7.689337456 11.081942307 CORE 5 Si Si 0.0000 5 Si -4.001064895 14.892675432 7.329630641 CORE 6 Si Si 0.0000 6 Si -7.154933795 9.196177073 7.198831391 CORE 7 Si Si 0.0000 7 Si 2.430464889 16.331626087 3.548535319 CORE 8 Si Si 0.0000 8 Si -13.620737757 16.324180585 3.446711807 CORE 9 Si Si 0.0000 9 Si -3.935708442 9.120792302 7.346300640 CORE 10 Si Si 0.0000 10 Si -7.223567405 14.922748329 7.261943982 CORE 11 Si Si 0.0000 11 Si 2.401485852 7.695774935 3.488308449 CORE 12 Si Si 0.0000 12 Si -10.212750781 4.610160954 5.830307050 CORE 13 Si Si 0.0000 13 Si -0.313937101 12.046250870 9.580828510 CORE 14 Si Si 0.0000 14 Si -10.792606339 12.041289172 9.577175524 CORE 15 Si Si 0.0000 15 Si -1.232522143 4.775276479 5.738268853 CORE 16 Si Si 0.0000 16 Si -9.987733174 4.720290152 8.868005347 CORE 17 Si Si 0.0000 17 Si -0.284299900 11.995925261 5.096460506 CORE 18 Si Si 0.0000 18 Si -10.995330661 12.033008624 5.077986304 CORE 19 Si Si 0.0000 19 Si -1.206995195 4.743257014 8.868767362 CORE 20 Si Si 0.0000 20 Ti -9.066172923 7.679926936 5.011183604 CORE 21 Ti Ti 0.0000 21 Si 0.672025843 14.939665181 8.919945447 CORE 22 Si Si 0.0000 22 Si -2.268261144 16.313992679 5.107667611 CORE 23 Si Si 0.0000 23 Si -11.912979648 9.158385081 8.797459592 CORE 24 Si Si 0.0000 24 Si 0.737741208 9.111533569 5.739157680 CORE 25 Si Si 0.0000 25 Si -8.984384116 16.310549141 9.535092172 CORE 26 Si Si 0.0000 26 Si -11.830155869 14.945603334 5.728849901 CORE 27 Si Si 0.0000 27 Si -2.203968145 7.688576213 9.539481992 CORE 28 Si Si 0.0000 28 Si -12.072252061 9.213263730 5.721597028 CORE 29 Si Si 0.0000 29 Si -2.230303172 16.290605915 9.559040832 CORE 30 Si Si 0.0000 30 Si 0.620139428 14.937599837 5.775251110 CORE 31 Si Si 0.0000 31 Si -9.072929303 7.662301023 9.217035874 CORE 32 Si Si 0.0000 32 Si -2.151748029 7.737215730 5.099177424 CORE 33 Si Si 0.0000 33 Si -11.864833798 14.936566012 8.850409474 CORE 34 Si Si 0.0000 34 Si -8.947506726 16.248684244 5.060486434 CORE 35 Si Si 0.0000 35 Si 0.641382152 9.132567415 8.864490509 CORE 36 Si Si 0.0000 36 O -15.239966460 7.763621661 3.360560835 CORE 37 O O 0.0000 37 O -5.613459662 14.977249744 7.386737334 CORE 38 O O 0.0000 38 O -15.215458126 16.105277319 3.609124292 CORE 39 O O 0.0000 39 O -5.548836041 9.053983292 7.291151892 CORE 40 O O 0.0000 40 O -10.625279500 4.408970666 7.398034964 CORE 41 O O 0.0000 41 O -0.748843780 11.975810499 3.538578080 CORE 42 O O 0.0000 42 O -10.415531297 12.085863299 3.554235407 CORE 43 O O 0.0000 43 O -0.783335230 4.699320596 7.298182862 CORE 44 O O 0.0000 44 O -13.178262962 6.131219560 3.491474041 CORE 45 O O 0.0000 45 O -3.535898646 13.334919346 7.260861703 CORE 46 O O 0.0000 46 O -7.576947580 10.774806280 7.231508496 CORE 47 O O 0.0000 47 O 2.103462078 17.927356511 3.527295969 CORE 48 O O 0.0000 48 O -3.488708480 10.685029255 7.416505287 CORE 49 O O 0.0000 49 O -13.313741400 17.915562226 3.257349081 CORE 50 O O 0.0000 50 O 1.913974742 6.143929181 3.489389131 CORE 51 O O 0.0000 51 O -7.749112695 13.389037041 7.156519822 CORE 52 O O 0.0000 52 O -11.602935337 4.582999834 4.971854368 CORE 53 O O 0.0000 53 O -1.677459665 12.133316050 8.698813614 CORE 54 O O 0.0000 54 O 0.097247385 4.723162721 4.799515910 CORE 55 O O 0.0000 55 O -9.393345470 12.027397398 8.732673337 CORE 56 O O 0.0000 56 O -1.615861867 11.953671475 6.031586480 CORE 57 O O 0.0000 57 O -11.187169875 4.841229541 9.953918382 CORE 58 O O 0.0000 58 O -9.727752818 11.925040196 6.101118041 CORE 59 O O 0.0000 59 O 0.172180702 4.672752498 9.735196972 CORE 60 O O 0.0000 60 O -10.579159332 8.575984571 5.482917932 CORE 61 O O 0.0000 61 O -0.783421253 15.621870908 9.212368238 CORE 62 O O 0.0000 62 O -10.497336270 8.347685633 8.798430501 CORE 63 O O 0.0000 63 O -0.846138700 15.614180932 5.507907944 CORE 64 O O 0.0000 64 O -0.706217655 8.432891887 5.394909811 CORE 65 O O 0.0000 65 O -10.464196173 15.708822788 9.200291477 CORE 66 O O 0.0000 66 O -10.286750736 15.430969141 5.503778671 CORE 67 O O 0.0000 67 O -0.811807750 8.450098764 9.141932864 CORE 68 O O 0.0000 68 O -12.517725544 9.141430463 7.287859184 CORE 69 O O 0.0000 69 O -2.570832408 16.075566376 3.527523273 CORE 70 O O 0.0000 70 O -8.896680300 7.781401812 3.219466206 CORE 71 O O 0.0000 71 O 1.009752301 15.111322836 7.341053866 CORE 72 O O 0.0000 72 O -2.481069617 7.886349054 3.518646031 CORE 73 O O 0.0000 73 O -12.228842552 15.169074199 7.284869015 CORE 74 O O 0.0000 74 O 1.065460494 8.899864918 7.313845437 CORE 75 O O 0.0000 75 O -8.626947379 16.015622387 3.484571328 CORE 76 O O 0.0000 76 O -13.188348266 8.398765132 4.872558886 CORE 77 O O 0.0000 77 O -3.398599287 15.591027398 8.675173731 CORE 78 O O 0.0000 78 O 1.746268978 15.666183695 4.866867470 CORE 79 O O 0.0000 79 O -7.870114989 8.409721200 8.433912213 CORE 80 O O 0.0000 80 O -3.312718702 8.444820951 5.989689961 CORE 81 O O 0.0000 81 O -13.091856038 15.528369546 9.733895986 CORE 82 O O 0.0000 82 O -7.660103521 15.727326414 5.906408431 CORE 83 O O 0.0000 83 O 1.766587193 8.466385691 9.814387797 CORE 84 O O 0.0000 84 O -7.664222819 8.532381997 5.792991064 CORE 85 O O 0.0000 85 O 1.833351001 15.652913341 9.799825453 CORE 86 O O 0.0000 86 O -3.473681942 15.673586818 5.992411747 CORE 87 O O 0.0000 87 O -12.955783135 8.444527899 9.812769437 CORE 88 O O 0.0000 88 O 1.920171298 8.408158210 4.876753277 CORE 89 O O 0.0000 89 O -7.865806901 15.635953533 8.576731855 CORE 90 O O 0.0000 90 O -12.849372837 15.767186344 4.770012764 CORE 91 O O 0.0000 91 O -3.408388803 8.321166545 8.661437227 CORE 92 O O 0.0000 92 O -9.426398581 6.012300109 5.611581988 CORE 93 O O 0.0000 93 O 0.615863671 13.357001288 9.311515075 CORE 94 O O 0.0000 94 O -2.204654599 17.923339988 5.390741588 CORE 95 O O 0.0000 95 O -11.664866643 10.702857983 9.262384929 CORE 96 O O 0.0000 96 O 0.669940888 10.707724976 5.393828673 CORE 97 O O 0.0000 97 O -8.979373024 17.924964961 9.293876221 CORE 98 O O 0.0000 98 O -11.893044015 13.357746242 5.382966708 CORE 99 O O 0.0000 99 O -2.040092241 6.098912522 9.203291687 CORE 100 O O 0.0000 100 O -12.017835178 10.775722337 5.249646198 CORE 101 O O 0.0000 101 O -2.173643528 17.886949686 9.213304154 CORE 102 O O 0.0000 102 O 0.566886648 13.352514267 5.396710819 CORE 103 O O 0.0000 103 O -9.101407212 6.084867230 8.794160799 CORE 104 O O 0.0000 104 O -2.072646533 6.148515952 5.488739355 CORE 105 O O 0.0000 105 O -11.685517597 13.345057954 9.168048516 CORE 106 O O 0.0000 106 O -9.200691634 17.831308641 5.361993763 CORE 107 O O 0.0000 107 O 0.552423591 10.731169111 9.175238629 CORE 108 O O 0.0000 108 O2 12.644018553 5.676556862 4.854358695 CORE 109 O2 O2 0.0000 109 O2 13.597420085 7.517190997 2.953022289 CORE 110 O2 O2 0.0000 110 H 13.114254012 6.737122440 3.298269062 CORE 111 H H 0.0000 111 H 13.350647849 8.228313703 3.577436201 CORE 112 H H 0.0000 112 C 13.914455368 5.755198644 5.561274017 CORE 113 C C 0.0000 113 C 13.046435217 4.562150497 5.699918438 CORE 114 C C 0.0000 114 H 13.312767048 3.625587152 5.166226902 CORE 115 H H 0.0000 115 H 12.456429308 4.427595376 6.629612935 CORE 116 H H 0.0000 116 H 14.796743628 5.708415890 4.895451284 CORE 117 H H 0.0000 117 H 13.951170526 6.501159329 6.381320142 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.319234640 4.758736140 3.513745994 CORE 1 Si Si 0.0000 1 Si -2.583044429 12.027927860 7.347467282 CORE 2 Si Si 0.0000 2 Si 1.074269499 4.766415737 3.487455833 CORE 3 Si Si 0.0000 3 Si -8.613796223 12.022095368 7.295309996 CORE 4 Si Si 0.0000 4 Si -13.632546412 7.687069152 11.082342979 CORE 5 Si Si 0.0000 5 Si -4.001574299 14.895911830 7.330158505 CORE 6 Si Si 0.0000 6 Si -7.154889340 9.196786816 7.200731826 CORE 7 Si Si 0.0000 7 Si 2.430027653 16.334013024 3.548358984 CORE 8 Si Si 0.0000 8 Si -13.619255349 16.324876529 3.443617951 CORE 9 Si Si 0.0000 9 Si -3.934341501 9.123968878 7.344636561 CORE 10 Si Si 0.0000 10 Si -7.222150043 14.922236750 7.259645690 CORE 11 Si Si 0.0000 11 Si 2.403662604 7.695938254 3.488579419 CORE 12 Si Si 0.0000 12 Si -10.214298428 4.606213910 5.830198799 CORE 13 Si Si 0.0000 13 Si -0.311559820 12.046656213 9.580678419 CORE 14 Si Si 0.0000 14 Si -10.791369491 12.039629747 9.578220984 CORE 15 Si Si 0.0000 15 Si -1.232742301 4.776695898 5.736435513 CORE 16 Si Si 0.0000 16 Si -9.982927999 4.717817303 8.867938404 CORE 17 Si Si 0.0000 17 Si -0.282702794 11.996939339 5.098253071 CORE 18 Si Si 0.0000 18 Si -10.999316017 12.032938136 5.079634255 CORE 19 Si Si 0.0000 19 Si -1.206699599 4.744300930 8.868442838 CORE 20 Si Si 0.0000 20 Ti -9.058111568 7.677406086 5.013065097 CORE 21 Ti Ti 0.0000 21 Si 0.672770031 14.941515457 8.918630312 CORE 22 Si Si 0.0000 22 Si -2.269754907 16.314691217 5.108929039 CORE 23 Si Si 0.0000 23 Si -11.908096725 9.157742184 8.801034832 CORE 24 Si Si 0.0000 24 Si 0.740722191 9.111201742 5.738359303 CORE 25 Si Si 0.0000 25 Si -8.985924450 16.308698289 9.533705680 CORE 26 Si Si 0.0000 26 Si -11.829711897 14.948767081 5.727758189 CORE 27 Si Si 0.0000 27 Si -2.200178891 7.689509712 9.539381349 CORE 28 Si Si 0.0000 28 Si -12.066824133 9.210809476 5.724082686 CORE 29 Si Si 0.0000 29 Si -2.231150126 16.291085637 9.558511674 CORE 30 Si Si 0.0000 30 Si 0.619928892 14.940738935 5.776014266 CORE 31 Si Si 0.0000 31 Si -9.068635841 7.659539303 9.218000545 CORE 32 Si Si 0.0000 32 Si -2.149814336 7.739941125 5.096995522 CORE 33 Si Si 0.0000 33 Si -11.865733481 14.935205549 8.849232942 CORE 34 Si Si 0.0000 34 Si -8.945810125 16.247606454 5.058700563 CORE 35 Si Si 0.0000 35 Si 0.645514344 9.131587213 8.864906015 CORE 36 Si Si 0.0000 36 O -15.238878757 7.760702676 3.363256604 CORE 37 O O 0.0000 37 O -5.613098056 14.974076483 7.388436710 CORE 38 O O 0.0000 38 O -15.214605208 16.106573060 3.607480448 CORE 39 O O 0.0000 39 O -5.546206272 9.054287011 7.292464897 CORE 40 O O 0.0000 40 O -10.621815479 4.407287024 7.398566861 CORE 41 O O 0.0000 41 O -0.743981257 11.979363589 3.539287834 CORE 42 O O 0.0000 42 O -10.417305646 12.081756107 3.556087003 CORE 43 O O 0.0000 43 O -0.785889175 4.700745637 7.296969739 CORE 44 O O 0.0000 44 O -13.172186299 6.128852659 3.489813309 CORE 45 O O 0.0000 45 O -3.532667291 13.338150266 7.264357980 CORE 46 O O 0.0000 46 O -7.581478135 10.771604478 7.231040576 CORE 47 O O 0.0000 47 O 2.104763973 17.931485037 3.525764028 CORE 48 O O 0.0000 48 O -3.491260694 10.690203138 7.415998570 CORE 49 O O 0.0000 49 O -13.312188171 17.915177496 3.255553550 CORE 50 O O 0.0000 50 O 1.912063950 6.146781858 3.488641798 CORE 51 O O 0.0000 51 O -7.748235143 13.388075145 7.154812306 CORE 52 O O 0.0000 52 O -11.602431707 4.578998014 4.970865506 CORE 53 O O 0.0000 53 O -1.677496807 12.131207029 8.698384872 CORE 54 O O 0.0000 54 O 0.097489097 4.724532698 4.798388672 CORE 55 O O 0.0000 55 O -9.390673748 12.030142685 8.736465687 CORE 56 O O 0.0000 56 O -1.617155871 11.952449682 6.033133636 CORE 57 O O 0.0000 57 O -11.183010741 4.839246072 9.954869588 CORE 58 O O 0.0000 58 O -9.731630982 11.927551388 6.104658973 CORE 59 O O 0.0000 59 O 0.172777284 4.675913363 9.734312937 CORE 60 O O 0.0000 60 O -10.571062183 8.580250758 5.479440749 CORE 61 O O 0.0000 61 O -0.784183722 15.621813681 9.210265984 CORE 62 O O 0.0000 62 O -10.494299670 8.342669591 8.811511111 CORE 63 O O 0.0000 63 O -0.847911894 15.615350111 5.510449592 CORE 64 O O 0.0000 64 O -0.705057978 8.433962614 5.393760284 CORE 65 O O 0.0000 65 O -10.466927746 15.708581629 9.199919636 CORE 66 O O 0.0000 66 O -10.285228107 15.430990187 5.503989467 CORE 67 O O 0.0000 67 O -0.807591459 8.450408392 9.148314710 CORE 68 O O 0.0000 68 O -12.508461597 9.135901833 7.290974643 CORE 69 O O 0.0000 69 O -2.571336038 16.075106257 3.527994692 CORE 70 O O 0.0000 70 O -8.886917535 7.775019253 3.221877770 CORE 71 O O 0.0000 71 O 1.012530061 15.114345175 7.340756804 CORE 72 O O 0.0000 72 O -2.479989997 7.889007709 3.517373952 CORE 73 O O 0.0000 73 O -12.230679253 15.167742276 7.284218142 CORE 74 O O 0.0000 74 O 1.067723462 8.898496526 7.313797664 CORE 75 O O 0.0000 75 O -8.627962337 16.011357786 3.482919497 CORE 76 O O 0.0000 76 O -13.183662408 8.395828129 4.871441842 CORE 77 O O 0.0000 77 O -3.402627751 15.597894148 8.674933952 CORE 78 O O 0.0000 78 O 1.743424824 15.669436093 4.867335542 CORE 79 O O 0.0000 79 O -7.868264239 8.409388364 8.435110730 CORE 80 O O 0.0000 80 O -3.312146561 8.449009009 5.986629730 CORE 81 O O 0.0000 81 O -13.094069547 15.524917648 9.730214701 CORE 82 O O 0.0000 82 O -7.655872989 15.724748194 5.901794046 CORE 83 O O 0.0000 83 O 1.771917166 8.468062414 9.814310051 CORE 84 O O 0.0000 84 O -7.659129361 8.531541041 5.794341117 CORE 85 O O 0.0000 85 O 1.831872441 15.652586126 9.799699402 CORE 86 O O 0.0000 86 O -3.476106372 15.677511376 5.993669068 CORE 87 O O 0.0000 87 O -12.955991169 8.446439726 9.813477061 CORE 88 O O 0.0000 88 O 1.922656541 8.408693718 4.876367135 CORE 89 O O 0.0000 89 O -7.870622660 15.634292378 8.572194606 CORE 90 O O 0.0000 90 O -12.842798125 15.772380696 4.767764223 CORE 91 O O 0.0000 91 O -3.401213276 8.324912216 8.657714255 CORE 92 O O 0.0000 92 O -9.426915105 6.010328460 5.612213616 CORE 93 O O 0.0000 93 O 0.616261264 13.358012194 9.309637614 CORE 94 O O 0.0000 94 O -2.205638188 17.925009215 5.387941067 CORE 95 O O 0.0000 95 O -11.663916539 10.704824875 9.260133801 CORE 96 O O 0.0000 96 O 0.671049567 10.708096877 5.394388184 CORE 97 O O 0.0000 97 O -8.974757409 17.922791507 9.297369683 CORE 98 O O 0.0000 98 O -11.896631393 13.360201216 5.379738890 CORE 99 O O 0.0000 99 O -2.042583064 6.100513999 9.203620851 CORE 100 O O 0.0000 100 O -12.018750834 10.776061083 5.250977994 CORE 101 O O 0.0000 101 O -2.173418752 17.888334798 9.215705904 CORE 102 O O 0.0000 102 O 0.566440752 13.354021184 5.399906002 CORE 103 O O 0.0000 103 O -9.091933499 6.080760326 8.795252587 CORE 104 O O 0.0000 104 O -2.072659811 6.151921146 5.486323911 CORE 105 O O 0.0000 105 O -11.682302793 13.345329384 9.168331808 CORE 106 O O 0.0000 106 O -9.199218463 17.828983111 5.359811709 CORE 107 O O 0.0000 107 O 0.553147187 10.730402679 9.174643592 CORE 108 O O 0.0000 108 O2 12.644574721 5.685907417 4.864650195 CORE 109 O2 O2 0.0000 109 O2 13.606333588 7.510107737 2.948117003 CORE 110 O2 O2 0.0000 110 H 13.129086180 6.728766503 3.307343559 CORE 111 H H 0.0000 111 H 13.346638822 8.225592488 3.557422146 CORE 112 H H 0.0000 112 C 13.913762179 5.746309794 5.569123372 CORE 113 C C 0.0000 113 C 13.033770564 4.562050170 5.691323956 CORE 114 C C 0.0000 114 H 13.288394004 3.632045820 5.145985771 CORE 115 H H 0.0000 115 H 12.444008291 4.425507401 6.624202302 CORE 116 H H 0.0000 116 H 14.798092480 5.698006141 4.909319697 CORE 117 H H 0.0000 117 H 13.956177576 6.484838526 6.396277300 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.319289872 4.758788177 3.513769196 CORE 1 Si Si 0.0000 1 Si -2.583047508 12.027874526 7.347455187 CORE 2 Si Si 0.0000 2 Si 1.074260262 4.766376097 3.487470210 CORE 3 Si Si 0.0000 3 Si -8.613788910 12.022102575 7.295279187 CORE 4 Si Si 0.0000 4 Si -13.632588366 7.687103603 11.082336893 CORE 5 Si Si 0.0000 5 Si -4.001566601 14.895862675 7.330150518 CORE 6 Si Si 0.0000 6 Si -7.154889917 9.196777591 7.200702994 CORE 7 Si Si 0.0000 7 Si 2.430034196 16.333976843 3.548361646 CORE 8 Si Si 0.0000 8 Si -13.619277865 16.324866006 3.443664888 CORE 9 Si Si 0.0000 9 Si -3.934362285 9.123920733 7.344661817 CORE 10 Si Si 0.0000 10 Si -7.222171597 14.922244534 7.259680607 CORE 11 Si Si 0.0000 11 Si 2.403629503 7.695935803 3.488575311 CORE 12 Si Si 0.0000 12 Si -10.214274950 4.606273731 5.830200397 CORE 13 Si Si 0.0000 13 Si -0.311596000 12.046650014 9.580680702 CORE 14 Si Si 0.0000 14 Si -10.791388351 12.039654973 9.578205085 CORE 15 Si Si 0.0000 15 Si -1.232739029 4.776674420 5.736463356 CORE 16 Si Si 0.0000 16 Si -9.983000936 4.717854781 8.867939393 CORE 17 Si Si 0.0000 17 Si -0.282727042 11.996923915 5.098225837 CORE 18 Si Si 0.0000 18 Si -10.999255397 12.032939289 5.079609227 CORE 19 Si Si 0.0000 19 Si -1.206704025 4.744285074 8.868447707 CORE 20 Si Si 0.0000 20 Ti -9.058233964 7.677444285 5.013036570 CORE 21 Ti Ti 0.0000 21 Si 0.672758676 14.941487349 8.918650319 CORE 22 Si Si 0.0000 22 Si -2.269732199 16.314680550 5.108909869 CORE 23 Si Si 0.0000 23 Si -11.908170817 9.157751986 8.800980593 CORE 24 Si Si 0.0000 24 Si 0.740676966 9.111206787 5.738371474 CORE 25 Si Si 0.0000 25 Si -8.985901164 16.308726397 9.533726752 CORE 26 Si Si 0.0000 26 Si -11.829718632 14.948719080 5.727774773 CORE 27 Si Si 0.0000 27 Si -2.200236432 7.689495441 9.539382870 CORE 28 Si Si 0.0000 28 Si -12.066906692 9.210846666 5.724044954 CORE 29 Si Si 0.0000 29 Si -2.231137232 16.291078286 9.558519737 CORE 30 Si Si 0.0000 30 Si 0.619932164 14.940691367 5.776002703 CORE 31 Si Si 0.0000 31 Si -9.068700888 7.659581250 9.217985863 CORE 32 Si Si 0.0000 32 Si -2.149843780 7.739899754 5.097028613 CORE 33 Si Si 0.0000 33 Si -11.865719817 14.935226306 8.849250819 CORE 34 Si Si 0.0000 34 Si -8.945835720 16.247622743 5.058727645 CORE 35 Si Si 0.0000 35 Si 0.645451799 9.131602060 8.864899701 CORE 36 Si Si 0.0000 36 O -15.238895308 7.760747074 3.363215677 CORE 37 O O 0.0000 37 O -5.613103445 14.974124773 7.388410922 CORE 38 O O 0.0000 38 O -15.214618294 16.106553312 3.607505400 CORE 39 O O 0.0000 39 O -5.546246300 9.054282398 7.292444966 CORE 40 O O 0.0000 40 O -10.621868016 4.407312682 7.398558797 CORE 41 O O 0.0000 41 O -0.744055156 11.979309678 3.539277032 CORE 42 O O 0.0000 42 O -10.417278703 12.081818523 3.556058857 CORE 43 O O 0.0000 43 O -0.785850494 4.700724015 7.296988149 CORE 44 O O 0.0000 44 O -13.172278481 6.128888552 3.489838565 CORE 45 O O 0.0000 45 O -3.532716365 13.338101256 7.264304882 CORE 46 O O 0.0000 46 O -7.581409432 10.771653055 7.231047650 CORE 47 O O 0.0000 47 O 2.104744151 17.931422333 3.525787306 CORE 48 O O 0.0000 48 O -3.491222012 10.690124578 7.416006254 CORE 49 O O 0.0000 49 O -13.312211650 17.915183262 3.255580784 CORE 50 O O 0.0000 50 O 1.912093009 6.146738614 3.488653132 CORE 51 O O 0.0000 51 O -7.748248421 13.388089704 7.154838246 CORE 52 O O 0.0000 52 O -11.602439404 4.579058844 4.970880492 CORE 53 O O 0.0000 53 O -1.677496230 12.131239030 8.698391338 CORE 54 O O 0.0000 54 O 0.097485441 4.724511941 4.798405789 CORE 55 O O 0.0000 55 O -9.390714354 12.030101027 8.736408177 CORE 56 O O 0.0000 56 O -1.617136241 11.952468277 6.033110130 CORE 57 O O 0.0000 57 O -11.183073863 4.839276199 9.954855211 CORE 58 O O 0.0000 58 O -9.731572094 11.927513189 6.104605190 CORE 59 O O 0.0000 59 O 0.172768239 4.675865362 9.734326326 CORE 60 O O 0.0000 60 O -10.571185156 8.580186035 5.479493543 CORE 61 O O 0.0000 61 O -0.784172176 15.621814546 9.210297858 CORE 62 O O 0.0000 62 O -10.494345857 8.342745845 8.811312563 CORE 63 O O 0.0000 63 O -0.847884951 15.615332381 5.510411023 CORE 64 O O 0.0000 64 O -0.705075490 8.433946326 5.393777781 CORE 65 O O 0.0000 65 O -10.466886371 15.708585233 9.199925265 CORE 66 O O 0.0000 66 O -10.285251200 15.430989898 5.503986272 CORE 67 O O 0.0000 67 O -0.807655351 8.450403636 9.148217870 CORE 68 O O 0.0000 68 O -12.508602275 9.135985727 7.290927327 CORE 69 O O 0.0000 69 O -2.571328340 16.075113177 3.527987541 CORE 70 O O 0.0000 70 O -8.887065718 7.775116120 3.221841103 CORE 71 O O 0.0000 71 O 1.012487915 15.114299336 7.340761292 CORE 72 O O 0.0000 72 O -2.480006547 7.888967348 3.517393274 CORE 73 O O 0.0000 73 O -12.230651348 15.167762457 7.284228031 CORE 74 O O 0.0000 74 O 1.067689014 8.898517284 7.313798425 CORE 75 O O 0.0000 75 O -8.627946941 16.011422508 3.482944601 CORE 76 O O 0.0000 76 O -13.183733613 8.395872670 4.871458806 CORE 77 O O 0.0000 77 O -3.402566746 15.597789786 8.674937603 CORE 78 O O 0.0000 78 O 1.743467932 15.669386651 4.867328468 CORE 79 O O 0.0000 79 O -7.868292336 8.409393409 8.435092549 CORE 80 O O 0.0000 80 O -3.312155221 8.448945440 5.986676210 CORE 81 O O 0.0000 81 O -13.094036062 15.524970118 9.730270538 CORE 82 O O 0.0000 82 O -7.655937266 15.724787402 5.901864108 CORE 83 O O 0.0000 83 O 1.771836339 8.468036900 9.814311192 CORE 84 O O 0.0000 84 O -7.659206532 8.531553726 5.794320653 CORE 85 O O 0.0000 85 O 1.831894765 15.652591171 9.799701303 CORE 86 O O 0.0000 86 O -3.476069615 15.677451843 5.993650050 CORE 87 O O 0.0000 87 O -12.955988090 8.446410752 9.813466258 CORE 88 O O 0.0000 88 O 1.922618822 8.408685501 4.876372992 CORE 89 O O 0.0000 89 O -7.870549531 15.634317604 8.572263452 CORE 90 O O 0.0000 90 O -12.842898004 15.772301847 4.767798379 CORE 91 O O 0.0000 91 O -3.401322200 8.324855422 8.657770777 CORE 92 O O 0.0000 92 O -9.426907407 6.010358443 5.612203954 CORE 93 O O 0.0000 93 O 0.616255298 13.357996770 9.309666141 CORE 94 O O 0.0000 94 O -2.205623178 17.924983845 5.387983592 CORE 95 O O 0.0000 95 O -11.663930973 10.704794892 9.260167958 CORE 96 O O 0.0000 96 O 0.671032632 10.708091111 5.394379664 CORE 97 O O 0.0000 97 O -8.974827459 17.922824516 9.297316661 CORE 98 O O 0.0000 98 O -11.896576931 13.360163882 5.379787880 CORE 99 O O 0.0000 99 O -2.042545345 6.100489638 9.203615831 CORE 100 O O 0.0000 100 O -12.018736978 10.776055894 5.250957835 CORE 101 O O 0.0000 101 O -2.173422216 17.888313753 9.215669466 CORE 102 O O 0.0000 102 O 0.566447488 13.353998265 5.399857468 CORE 103 O O 0.0000 103 O -9.092077256 6.080822742 8.795236003 CORE 104 O O 0.0000 104 O -2.072659619 6.151869541 5.486360578 CORE 105 O O 0.0000 105 O -11.682351482 13.345325203 9.168327472 CORE 106 O O 0.0000 106 O -9.199240787 17.829018427 5.359844876 CORE 107 O O 0.0000 107 O 0.553136217 10.730414211 9.174652645 CORE 108 O O 0.0000 108 O2 12.644566446 5.685765431 4.864493943 CORE 109 O2 O2 0.0000 109 O2 13.606198299 7.510215271 2.948191478 CORE 110 O2 O2 0.0000 110 H 13.128861019 6.728893353 3.307205793 CORE 111 H H 0.0000 111 H 13.346699635 8.225633714 3.557725978 CORE 112 H H 0.0000 112 C 13.913772571 5.746444860 5.569004167 CORE 113 C C 0.0000 113 C 13.033962817 4.562051612 5.691454496 CORE 114 C C 0.0000 114 H 13.288764076 3.631947800 5.146293027 CORE 115 H H 0.0000 115 H 12.444196888 4.425539113 6.624284460 CORE 116 H H 0.0000 116 H 14.798072080 5.698164271 4.909109205 CORE 117 H H 0.0000 117 H 13.956101560 6.485086316 6.396050225 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.315935545 4.757360974 3.512943965 CORE 1 Si Si 0.0000 1 Si -2.583769564 12.028717788 7.347976129 CORE 2 Si Si 0.0000 2 Si 1.073270514 4.769800751 3.486927740 CORE 3 Si Si 0.0000 3 Si -8.615213200 12.022923783 7.298121776 CORE 4 Si Si 0.0000 4 Si -13.630467038 7.687135460 11.083397035 CORE 5 Si Si 0.0000 5 Si -4.002156832 14.897963624 7.330667885 CORE 6 Si Si 0.0000 6 Si -7.152380811 9.196557766 7.203807576 CORE 7 Si Si 0.0000 7 Si 2.430024574 16.336331203 3.547765469 CORE 8 Si Si 0.0000 8 Si -13.618036398 16.323783315 3.441623872 CORE 9 Si Si 0.0000 9 Si -3.931947670 9.128270525 7.342696644 CORE 10 Si Si 0.0000 10 Si -7.221821153 14.920774375 7.256332442 CORE 11 Si Si 0.0000 11 Si 2.405689056 7.697155002 3.488502205 CORE 12 Si Si 0.0000 12 Si -10.214394844 4.602092591 5.829720990 CORE 13 Si Si 0.0000 13 Si -0.310365695 12.046782053 9.579929489 CORE 14 Si Si 0.0000 14 Si -10.790105508 12.038647527 9.579079382 CORE 15 Si Si 0.0000 15 Si -1.233049636 4.778363684 5.734292256 CORE 16 Si Si 0.0000 16 Si -9.976164691 4.717462700 8.867211610 CORE 17 Si Si 0.0000 17 Si -0.281590458 11.997594200 5.100454904 CORE 18 Si Si 0.0000 18 Si -11.002218867 12.033676027 5.081352726 CORE 19 Si Si 0.0000 19 Si -1.207107198 4.745644816 8.867658991 CORE 20 Si Si 0.0000 20 Ti -9.054262464 7.677339346 5.016029477 CORE 21 Ti Ti 0.0000 21 Si 0.672178260 14.942197707 8.917238191 CORE 22 Si Si 0.0000 22 Si -2.271427645 16.315961588 5.109194759 CORE 23 Si Si 0.0000 23 Si -11.903264994 9.155825456 8.805707337 CORE 24 Si Si 0.0000 24 Si 0.742639526 9.111385818 5.738190346 CORE 25 Si Si 0.0000 25 Si -8.987773083 16.306080716 9.532731880 CORE 26 Si Si 0.0000 26 Si -11.828034541 14.948798794 5.726695689 CORE 27 Si Si 0.0000 27 Si -2.198762876 7.691858161 9.538563345 CORE 28 Si Si 0.0000 28 Si -12.060422429 9.208773250 5.725932001 CORE 29 Si Si 0.0000 29 Si -2.232313459 16.291719598 9.558277524 CORE 30 Si Si 0.0000 30 Si 0.618762864 14.942827631 5.776733833 CORE 31 Si Si 0.0000 31 Si -9.066300514 7.657036472 9.218048395 CORE 32 Si Si 0.0000 32 Si -2.148416411 7.743498683 5.095695296 CORE 33 Si Si 0.0000 33 Si -11.866313320 14.933323272 8.848102510 CORE 34 Si Si 0.0000 34 Si -8.944319826 16.246837428 5.057559329 CORE 35 Si Si 0.0000 35 Si 0.648373123 9.131442056 8.864954549 CORE 36 Si Si 0.0000 36 O -15.236494549 7.757650787 3.365749946 CORE 37 O O 0.0000 37 O -5.612991442 14.971265753 7.391963948 CORE 38 O O 0.0000 38 O -15.214311343 16.108077527 3.606010430 CORE 39 O O 0.0000 39 O -5.545281763 9.055821172 7.293528234 CORE 40 O O 0.0000 40 O -10.618926870 4.404387211 7.399773822 CORE 41 O O 0.0000 41 O -0.740255125 11.982749900 3.539724412 CORE 42 O O 0.0000 42 O -10.419370972 12.079257456 3.557513280 CORE 43 O O 0.0000 43 O -0.787529774 4.703181152 7.295864030 CORE 44 O O 0.0000 44 O -13.167735417 6.129285534 3.487728627 CORE 45 O O 0.0000 45 O -3.531050363 13.342727235 7.267610294 CORE 46 O O 0.0000 46 O -7.586311022 10.769532503 7.231603282 CORE 47 O O 0.0000 47 O 2.107017126 17.934857077 3.524307550 CORE 48 O O 0.0000 48 O -3.493358351 10.694131876 7.414873843 CORE 49 O O 0.0000 49 O -13.310524094 17.913947486 3.253683087 CORE 50 O O 0.0000 50 O 1.910247841 6.149546606 3.488097273 CORE 51 O O 0.0000 51 O -7.748509763 13.386121659 7.153805795 CORE 52 O O 0.0000 52 O -11.601498345 4.573246532 4.970349965 CORE 53 O O 0.0000 53 O -1.676413531 12.130607664 8.698819548 CORE 54 O O 0.0000 54 O 0.097879184 4.725901666 4.796807817 CORE 55 O O 0.0000 55 O -9.389112244 12.032443278 8.739605490 CORE 56 O O 0.0000 56 O -1.617224189 11.951521517 6.033041437 CORE 57 O O 0.0000 57 O -11.178804649 4.837256694 9.954596185 CORE 58 O O 0.0000 58 O -9.734799022 11.931033701 6.108077504 CORE 59 O O 0.0000 59 O 0.173175261 4.678478177 9.733155119 CORE 60 O O 0.0000 60 O -10.562360177 8.585294043 5.477189622 CORE 61 O O 0.0000 61 O -0.785104767 15.621987379 9.208215078 CORE 62 O O 0.0000 62 O -10.493134027 8.340573544 8.821918621 CORE 63 O O 0.0000 63 O -0.849672579 15.616669637 5.512996336 CORE 64 O O 0.0000 64 O -0.701057996 8.435442288 5.392766629 CORE 65 O O 0.0000 65 O -10.470778198 15.709513110 9.199985134 CORE 66 O O 0.0000 66 O -10.283411998 15.430397741 5.503757751 CORE 67 O O 0.0000 67 O -0.802226845 8.452593091 9.155501400 CORE 68 O O 0.0000 68 O -12.497487771 9.129449363 7.293245093 CORE 69 O O 0.0000 69 O -2.569942924 16.074576227 3.527645064 CORE 70 O O 0.0000 70 O -8.877270621 7.767974336 3.223545880 CORE 71 O O 0.0000 71 O 1.015422134 15.116724616 7.340235025 CORE 72 O O 0.0000 72 O -2.479345689 7.891440341 3.516112523 CORE 73 O O 0.0000 73 O -12.233028052 15.167294122 7.283544827 CORE 74 O O 0.0000 74 O 1.068415111 8.897695211 7.313794164 CORE 75 O O 0.0000 75 O -8.629216120 16.007164394 3.482415595 CORE 76 O O 0.0000 76 O -13.177558803 8.395445994 4.871420694 CORE 77 O O 0.0000 77 O -3.405294855 15.604191084 8.675112950 CORE 78 O O 0.0000 78 O 1.742088867 15.673380687 4.867090666 CORE 79 O O 0.0000 79 O -7.866678680 8.409005220 8.436952742 CORE 80 O O 0.0000 80 O -3.311660828 8.453799893 5.984158982 CORE 81 O O 0.0000 81 O -13.096570763 15.524018457 9.727480363 CORE 82 O O 0.0000 82 O -7.651485614 15.723116877 5.898030908 CORE 83 O O 0.0000 83 O 1.774896802 8.468151785 9.814011239 CORE 84 O O 0.0000 84 O -7.653005549 8.531107014 5.795640582 CORE 85 O O 0.0000 85 O 1.831005089 15.653195726 9.799873987 CORE 86 O O 0.0000 86 O -3.477265087 15.680669213 5.994113938 CORE 87 O O 0.0000 87 O -12.956716112 8.449398784 9.813570325 CORE 88 O O 0.0000 88 O 1.924868703 8.409704479 4.875961518 CORE 89 O O 0.0000 89 O -7.874981938 15.631447341 8.568510583 CORE 90 O O 0.0000 90 O -12.837397524 15.778050158 4.764929089 CORE 91 O O 0.0000 91 O -3.394409362 8.329608394 8.652991999 CORE 92 O O 0.0000 92 O -9.427931988 6.006244908 5.613525861 CORE 93 O O 0.0000 93 O 0.616800304 13.358939782 9.308198481 CORE 94 O O 0.0000 94 O -2.205719785 17.926697181 5.385556737 CORE 95 O O 0.0000 95 O -11.665709363 10.704612257 9.257701242 CORE 96 O O 0.0000 96 O 0.672277755 10.707891755 5.395043850 CORE 97 O O 0.0000 97 O -8.970396014 17.920970637 9.300520364 CORE 98 O O 0.0000 98 O -11.899311776 13.360652397 5.376163726 CORE 99 O O 0.0000 99 O -2.043994845 6.100875377 9.203107592 CORE 100 O O 0.0000 100 O -12.019496946 10.773260443 5.253875202 CORE 101 O O 0.0000 101 O -2.172778678 17.889965249 9.216855355 CORE 102 O O 0.0000 102 O 0.566084150 13.355949732 5.402341301 CORE 103 O O 0.0000 103 O -9.084174862 6.076289450 8.797811046 CORE 104 O O 0.0000 104 O -2.072154449 6.153287087 5.483815584 CORE 105 O O 0.0000 105 O -11.678845123 13.345141704 9.169191272 CORE 106 O O 0.0000 106 O -9.198862439 17.826546155 5.357260324 CORE 107 O O 0.0000 107 O 0.554289929 10.729574841 9.174111239 CORE 108 O O 0.0000 108 O2 12.639821891 5.700757627 4.871920336 CORE 109 O2 O2 0.0000 109 O2 13.613807791 7.500313353 2.940593618 CORE 110 O2 O2 0.0000 110 H 13.145584158 6.720756953 3.316424751 CORE 111 H H 0.0000 111 H 13.343088201 8.225727843 3.541160198 CORE 112 H H 0.0000 112 C 13.914175937 5.737500802 5.579349145 CORE 113 C C 0.0000 113 C 13.022942034 4.559469211 5.688422259 CORE 114 C C 0.0000 114 H 13.266482339 3.636486570 5.124743607 CORE 115 H H 0.0000 115 H 12.431846498 4.425344659 6.616399807 CORE 116 H H 0.0000 116 H 14.801441226 5.687654771 4.920927473 CORE 117 H H 0.0000 117 H 13.959735510 6.467150919 6.409561859 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.315978075 4.757379136 3.512954387 CORE 1 Si Si 0.0000 1 Si -2.583760326 12.028707121 7.347969511 CORE 2 Si Si 0.0000 2 Si 1.073283023 4.769757363 3.486934586 CORE 3 Si Si 0.0000 3 Si -8.615195110 12.022913404 7.298085718 CORE 4 Si Si 0.0000 4 Si -13.630493980 7.687135027 11.083383570 CORE 5 Si Si 0.0000 5 Si -4.002149326 14.897936956 7.330661342 CORE 6 Si Si 0.0000 6 Si -7.152412757 9.196560649 7.203768170 CORE 7 Si Si 0.0000 7 Si 2.430024766 16.336301364 3.547773076 CORE 8 Si Si 0.0000 8 Si -13.618052179 16.323797009 3.441649736 CORE 9 Si Si 0.0000 9 Si -3.931978268 9.128215317 7.342721596 CORE 10 Si Si 0.0000 10 Si -7.221825579 14.920793114 7.256374891 CORE 11 Si Si 0.0000 11 Si 2.405662884 7.697139578 3.488503194 CORE 12 Si Si 0.0000 12 Si -10.214393496 4.602145637 5.829727076 CORE 13 Si Si 0.0000 13 Si -0.310381283 12.046780324 9.579938998 CORE 14 Si Si 0.0000 14 Si -10.790121866 12.038660356 9.579068352 CORE 15 Si Si 0.0000 15 Si -1.233045595 4.778342206 5.734319794 CORE 16 Si Si 0.0000 16 Si -9.976251291 4.717467601 8.867220891 CORE 17 Si Si 0.0000 17 Si -0.281604891 11.997585696 5.100426681 CORE 18 Si Si 0.0000 18 Si -11.002181340 12.033666657 5.081330589 CORE 19 Si Si 0.0000 19 Si -1.207102002 4.745627519 8.867668956 CORE 20 Si Si 0.0000 20 Ti -9.054312885 7.677340787 5.015991517 CORE 21 Ti Ti 0.0000 21 Si 0.672185573 14.942188770 8.917256068 CORE 22 Si Si 0.0000 22 Si -2.271406091 16.315945300 5.109191184 CORE 23 Si Si 0.0000 23 Si -11.903327346 9.155849817 8.805647316 CORE 24 Si Si 0.0000 24 Si 0.742614508 9.111383656 5.738192628 CORE 25 Si Si 0.0000 25 Si -8.987749412 16.306114302 9.532744508 CORE 26 Si Si 0.0000 26 Si -11.828055902 14.948797784 5.726709382 CORE 27 Si Si 0.0000 27 Si -2.198781544 7.691828179 9.538573767 CORE 28 Si Si 0.0000 28 Si -12.060504796 9.208799629 5.725908038 CORE 29 Si Si 0.0000 29 Si -2.232298641 16.291711381 9.558280567 CORE 30 Si Si 0.0000 30 Si 0.618777875 14.942800531 5.776724552 CORE 31 Si Si 0.0000 31 Si -9.066330920 7.657068761 9.218047558 CORE 32 Si Si 0.0000 32 Si -2.148434501 7.743452988 5.095712260 CORE 33 Si Si 0.0000 33 Si -11.866305814 14.933347488 8.848117039 CORE 34 Si Si 0.0000 34 Si -8.944339071 16.246847374 5.057574163 CORE 35 Si Si 0.0000 35 Si 0.648336174 9.131444074 8.864953788 CORE 36 Si Si 0.0000 36 O -15.236524955 7.757689995 3.365717767 CORE 37 O O 0.0000 37 O -5.612992789 14.971302078 7.391918838 CORE 38 O O 0.0000 38 O -15.214315192 16.108058211 3.606029372 CORE 39 O O 0.0000 39 O -5.545293887 9.055801568 7.293514541 CORE 40 O O 0.0000 40 O -10.618964204 4.404424257 7.399758455 CORE 41 O O 0.0000 41 O -0.740303429 11.982706223 3.539718783 CORE 42 O O 0.0000 42 O -10.419344415 12.079289889 3.557494795 CORE 43 O O 0.0000 43 O -0.787508413 4.703150016 7.295878256 CORE 44 O O 0.0000 44 O -13.167793151 6.129280489 3.487755329 CORE 45 O O 0.0000 45 O -3.531071532 13.342668567 7.267568378 CORE 46 O O 0.0000 46 O -7.586248862 10.769559458 7.231596283 CORE 47 O O 0.0000 47 O 2.106988259 17.934813545 3.524326340 CORE 48 O O 0.0000 48 O -3.493331216 10.694080992 7.414888221 CORE 49 O O 0.0000 49 O -13.310545648 17.913963199 3.253707126 CORE 50 O O 0.0000 50 O 1.910271127 6.149511001 3.488104272 CORE 51 O O 0.0000 51 O -7.748506299 13.386146741 7.153818879 CORE 52 O O 0.0000 52 O -11.601510277 4.573320336 4.970356735 CORE 53 O O 0.0000 53 O -1.676427194 12.130615592 8.698814147 CORE 54 O O 0.0000 54 O 0.097874181 4.725883936 4.796828128 CORE 55 O O 0.0000 55 O -9.389132643 12.032413584 8.739564867 CORE 56 O O 0.0000 56 O -1.617223034 11.951533481 6.033042274 CORE 57 O O 0.0000 57 O -11.178858727 4.837282352 9.954599456 CORE 58 O O 0.0000 58 O -9.734758223 11.930989016 6.108033458 CORE 59 O O 0.0000 59 O 0.173170065 4.678445024 9.733169953 CORE 60 O O 0.0000 60 O -10.562472181 8.585229177 5.477218833 CORE 61 O O 0.0000 61 O -0.785093028 15.621985072 9.208241475 CORE 62 O O 0.0000 62 O -10.493149423 8.340601076 8.821784049 CORE 63 O O 0.0000 63 O -0.849649870 15.616652627 5.512963549 CORE 64 O O 0.0000 64 O -0.701108994 8.435423260 5.392779485 CORE 65 O O 0.0000 65 O -10.470728932 15.709501290 9.199984373 CORE 66 O O 0.0000 66 O -10.283435476 15.430405381 5.503760642 CORE 67 O O 0.0000 67 O -0.802295741 8.452565414 9.155409049 CORE 68 O O 0.0000 68 O -12.497628834 9.129532247 7.293215654 CORE 69 O O 0.0000 69 O -2.569960437 16.074583002 3.527649400 CORE 70 O O 0.0000 70 O -8.877394941 7.768065005 3.223524276 CORE 71 O O 0.0000 71 O 1.015384799 15.116693769 7.340241643 CORE 72 O O 0.0000 72 O -2.479354157 7.891408917 3.516128803 CORE 73 O O 0.0000 73 O -12.232997838 15.167300032 7.283553499 CORE 74 O O 0.0000 74 O 1.068405874 8.897705590 7.313794241 CORE 75 O O 0.0000 75 O -8.629199955 16.007218305 3.482422289 CORE 76 O O 0.0000 76 O -13.177637129 8.395451472 4.871421151 CORE 77 O O 0.0000 77 O -3.405260215 15.604109929 8.675110667 CORE 78 O O 0.0000 78 O 1.742106379 15.673330092 4.867093633 CORE 79 O O 0.0000 79 O -7.866699079 8.409010121 8.436929083 CORE 80 O O 0.0000 80 O -3.311667179 8.453738342 5.984190932 CORE 81 O O 0.0000 81 O -13.096538432 15.524030565 9.727515737 CORE 82 O O 0.0000 82 O -7.651542001 15.723138067 5.898079594 CORE 83 O O 0.0000 83 O 1.774858120 8.468150344 9.814015043 CORE 84 O O 0.0000 84 O -7.653084067 8.531112635 5.795623846 CORE 85 O O 0.0000 85 O 1.831016443 15.653188086 9.799871781 CORE 86 O O 0.0000 86 O -3.477250076 15.680628419 5.994108081 CORE 87 O O 0.0000 87 O -12.956706874 8.449360873 9.813569032 CORE 88 O O 0.0000 88 O 1.924840221 8.409691506 4.875966767 CORE 89 O O 0.0000 89 O -7.874925744 15.631483810 8.568558205 CORE 90 O O 0.0000 90 O -12.837467189 15.777977219 4.764965528 CORE 91 O O 0.0000 91 O -3.394497117 8.329548141 8.653052629 CORE 92 O O 0.0000 92 O -9.427919094 6.006297090 5.613509125 CORE 93 O O 0.0000 93 O 0.616793376 13.358927818 9.308217042 CORE 94 O O 0.0000 94 O -2.205718631 17.926675415 5.385587546 CORE 95 O O 0.0000 95 O -11.665686847 10.704614708 9.257732583 CORE 96 O O 0.0000 96 O 0.672261974 10.707894350 5.395035406 CORE 97 O O 0.0000 97 O -8.970452208 17.920994133 9.300479666 CORE 98 O O 0.0000 98 O -11.899277136 13.360646199 5.376209674 CORE 99 O O 0.0000 99 O -2.043976563 6.100870476 9.203114059 CORE 100 O O 0.0000 100 O -12.019487324 10.773295904 5.253838231 CORE 101 O O 0.0000 101 O -2.172786953 17.889944348 9.216840293 CORE 102 O O 0.0000 102 O 0.566088769 13.355924939 5.402309807 CORE 103 O O 0.0000 103 O -9.084275126 6.076346965 8.797778335 CORE 104 O O 0.0000 104 O -2.072160992 6.153269068 5.483847838 CORE 105 O O 0.0000 105 O -11.678889578 13.345144010 9.169180317 CORE 106 O O 0.0000 106 O -9.198867250 17.826577579 5.357293111 CORE 107 O O 0.0000 107 O 0.554275303 10.729585508 9.174118086 CORE 108 O O 0.0000 108 O2 12.639882127 5.700567496 4.871826083 CORE 109 O2 O2 0.0000 109 O2 13.613711183 7.500439050 2.940690001 CORE 110 O2 O2 0.0000 110 H 13.145372083 6.720860162 3.316307752 CORE 111 H H 0.0000 111 H 13.343134003 8.225726689 3.541370386 CORE 112 H H 0.0000 112 C 13.914170741 5.737614246 5.579217920 CORE 113 C C 0.0000 113 C 13.023081942 4.559501932 5.688460752 CORE 114 C C 0.0000 114 H 13.266765041 3.636428911 5.125017010 CORE 115 H H 0.0000 115 H 12.432003341 4.425347109 6.616499842 CORE 116 H H 0.0000 116 H 14.801398503 5.687788108 4.920777459 CORE 117 H H 0.0000 117 H 13.959689516 6.467378527 6.409390469 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.314250299 4.757151239 3.511179776 CORE 1 Si Si 0.0000 1 Si -2.583254387 12.030498585 7.348199705 CORE 2 Si Si 0.0000 2 Si 1.073417735 4.771101970 3.485325279 CORE 3 Si Si 0.0000 3 Si -8.617721536 12.023320333 7.299377119 CORE 4 Si Si 0.0000 4 Si -13.627689085 7.688987610 11.084450787 CORE 5 Si Si 0.0000 5 Si -4.002160873 14.901028918 7.332081153 CORE 6 Si Si 0.0000 6 Si -7.149613443 9.195996600 7.205579981 CORE 7 Si Si 0.0000 7 Si 2.430501646 16.339180421 3.546394116 CORE 8 Si Si 0.0000 8 Si -13.618472480 16.322770968 3.440340002 CORE 9 Si Si 0.0000 9 Si -3.931505430 9.131914860 7.340007721 CORE 10 Si Si 0.0000 10 Si -7.223058578 14.917928184 7.254364455 CORE 11 Si Si 0.0000 11 Si 2.407620248 7.698766570 3.488268359 CORE 12 Si Si 0.0000 12 Si -10.212831993 4.599215265 5.829857844 CORE 13 Si Si 0.0000 13 Si -0.308747035 12.046497074 9.579689557 CORE 14 Si Si 0.0000 14 Si -10.790736730 12.037317623 9.580473937 CORE 15 Si Si 0.0000 15 Si -1.232561979 4.779814383 5.732759858 CORE 16 Si Si 0.0000 16 Si -9.971523480 4.715126359 8.868344477 CORE 17 Si Si 0.0000 17 Si -0.280071870 11.998119762 5.101101669 CORE 18 Si Si 0.0000 18 Si -11.003017709 12.032254877 5.083117372 CORE 19 Si Si 0.0000 19 Si -1.207394135 4.747117426 8.866755862 CORE 20 Si Si 0.0000 20 Ti -9.053680701 7.674964950 5.016498766 CORE 21 Ti Ti 0.0000 21 Si 0.671482570 14.942653501 8.916558030 CORE 22 Si Si 0.0000 22 Si -2.271416675 16.318146286 5.107484885 CORE 23 Si Si 0.0000 23 Si -11.902556024 9.153753481 8.809464465 CORE 24 Si Si 0.0000 24 Si 0.745832969 9.112581665 5.739113102 CORE 25 Si Si 0.0000 25 Si -8.989776442 16.303170524 9.532857704 CORE 26 Si Si 0.0000 26 Si -11.827144480 14.947594730 5.725658978 CORE 27 Si Si 0.0000 27 Si -2.196907701 7.693955650 9.537178375 CORE 28 Si Si 0.0000 28 Si -12.054538597 9.206823512 5.727121922 CORE 29 Si Si 0.0000 29 Si -2.231395879 16.294174428 9.558347434 CORE 30 Si Si 0.0000 30 Si 0.618267317 14.945084115 5.776462407 CORE 31 Si Si 0.0000 31 Si -9.063050108 7.652808196 9.222336887 CORE 32 Si Si 0.0000 32 Si -2.146551998 7.746454137 5.095302155 CORE 33 Si Si 0.0000 33 Si -11.868919995 14.932282960 8.847448289 CORE 34 Si Si 0.0000 34 Si -8.942612834 16.244443572 5.056797846 CORE 35 Si Si 0.0000 35 Si 0.651282709 9.132567415 8.865062191 CORE 36 Si Si 0.0000 36 O -15.233257421 7.754889932 3.367591957 CORE 37 O O 0.0000 37 O -5.614622611 14.968769985 7.396662698 CORE 38 O O 0.0000 38 O -15.214309996 16.109391431 3.605255794 CORE 39 O O 0.0000 39 O -5.542127195 9.058819726 7.295116545 CORE 40 O O 0.0000 40 O -10.616013051 4.400200593 7.401071613 CORE 41 O O 0.0000 41 O -0.737737167 11.985569856 3.540446413 CORE 42 O O 0.0000 42 O -10.421659728 12.078439852 3.559019433 CORE 43 O O 0.0000 43 O -0.788457939 4.706482992 7.294241335 CORE 44 O O 0.0000 44 O -13.164211931 6.132039038 3.485733254 CORE 45 O O 0.0000 45 O -3.529018523 13.344753082 7.270241630 CORE 46 O O 0.0000 46 O -7.591548044 10.768472299 7.233833185 CORE 47 O O 0.0000 47 O 2.109039152 17.938450384 3.522852670 CORE 48 O O 0.0000 48 O -3.495779702 10.696811288 7.413434025 CORE 49 O O 0.0000 49 O -13.308059251 17.913598794 3.251439263 CORE 50 O O 0.0000 50 O 1.908905725 6.152652982 3.487970765 CORE 51 O O 0.0000 51 O -7.748652172 13.384967471 7.153373248 CORE 52 O O 0.0000 52 O -11.600241483 4.566244139 4.970983342 CORE 53 O O 0.0000 53 O -1.675731311 12.131221444 8.698746823 CORE 54 O O 0.0000 54 O 0.096951404 4.727211534 4.796542173 CORE 55 O O 0.0000 55 O -9.388564159 12.034174056 8.743061905 CORE 56 O O 0.0000 56 O -1.617225729 11.951035884 6.032489609 CORE 57 O O 0.0000 57 O -11.173047447 4.835517988 9.952326648 CORE 58 O O 0.0000 58 O -9.738172209 11.935256211 6.111527453 CORE 59 O O 0.0000 59 O 0.172440696 4.680656821 9.731240002 CORE 60 O O 0.0000 60 O -10.554520713 8.591607988 5.476568416 CORE 61 O O 0.0000 61 O -0.787386210 15.622467390 9.206419242 CORE 62 O O 0.0000 62 O -10.490643974 8.339500654 8.829134446 CORE 63 O O 0.0000 63 O -0.851947478 15.618151760 5.515265492 CORE 64 O O 0.0000 64 O -0.698876432 8.435253454 5.391206009 CORE 65 O O 0.0000 65 O -10.473755717 15.712683055 9.200817820 CORE 66 O O 0.0000 66 O -10.281625332 15.428303135 5.504021950 CORE 67 O O 0.0000 67 O -0.799426569 8.453518517 9.163514234 CORE 68 O O 0.0000 68 O -12.484328148 9.121443704 7.293769307 CORE 69 O O 0.0000 69 O -2.567047965 16.073952357 3.527486226 CORE 70 O O 0.0000 70 O -8.868594596 7.760768984 3.224279824 CORE 71 O O 0.0000 71 O 1.017892558 15.118610353 7.339822486 CORE 72 O O 0.0000 72 O -2.479422475 7.893891568 3.515577812 CORE 73 O O 0.0000 73 O -12.235072979 15.166859950 7.281013754 CORE 74 O O 0.0000 74 O 1.067704795 8.897319995 7.313544724 CORE 75 O O 0.0000 75 O -8.630517437 16.002945055 3.481379112 CORE 76 O O 0.0000 76 O -13.169725305 8.397226791 4.872782842 CORE 77 O O 0.0000 77 O -3.407913270 15.608425558 8.674351087 CORE 78 O O 0.0000 78 O 1.741245762 15.677198287 4.866739745 CORE 79 O O 0.0000 79 O -7.865651598 8.408315619 8.438936019 CORE 80 O O 0.0000 80 O -3.310446689 8.458921306 5.981322479 CORE 81 O O 0.0000 81 O -13.098429980 15.524073953 9.724876108 CORE 82 O O 0.0000 82 O -7.647692896 15.722963793 5.894680918 CORE 83 O O 0.0000 83 O 1.776408077 8.467256918 9.812969887 CORE 84 O O 0.0000 84 O -7.647330906 8.530454314 5.796735336 CORE 85 O O 0.0000 85 O 1.830328258 15.654775869 9.800300372 CORE 86 O O 0.0000 86 O -3.478418798 15.682176274 5.994468967 CORE 87 O O 0.0000 87 O -12.959048168 8.452146522 9.814725253 CORE 88 O O 0.0000 88 O 1.926823181 8.411651190 4.876139223 CORE 89 O O 0.0000 89 O -7.878628783 15.626802911 8.565234231 CORE 90 O O 0.0000 90 O -12.831687470 15.781848010 4.764218955 CORE 91 O O 0.0000 91 O -3.387977829 8.335578980 8.647828525 CORE 92 O O 0.0000 92 O -9.429003910 6.004146843 5.614772759 CORE 93 O O 0.0000 93 O 0.617096093 13.358889619 9.306925945 CORE 94 O O 0.0000 94 O -2.205162655 17.928524105 5.383679885 CORE 95 O O 0.0000 95 O -11.667723114 10.705002897 9.255708227 CORE 96 O O 0.0000 96 O 0.673308109 10.708749144 5.395683312 CORE 97 O O 0.0000 97 O -8.966563075 17.919320437 9.302632280 CORE 98 O O 0.0000 98 O -11.901814531 13.360397545 5.373482182 CORE 99 O O 0.0000 99 O -2.044682838 6.102975893 9.202143149 CORE 100 O O 0.0000 100 O -12.018923843 10.770774765 5.257624343 CORE 101 O O 0.0000 101 O -2.171991383 17.890844260 9.216804539 CORE 102 O O 0.0000 102 O 0.565562238 13.357356034 5.403750690 CORE 103 O O 0.0000 103 O -9.077568589 6.075840287 8.800531843 CORE 104 O O 0.0000 104 O -2.071873479 6.155554670 5.480757178 CORE 105 O O 0.0000 105 O -11.675889351 13.344228962 9.170454146 CORE 106 O O 0.0000 106 O -9.198968284 17.824518001 5.354795358 CORE 107 O O 0.0000 107 O 0.555637433 10.730775445 9.173933839 CORE 108 O O 0.0000 108 O2 12.635545558 5.717929331 4.879744511 CORE 109 O2 O2 0.0000 109 O2 13.616531858 7.494813265 2.937651451 CORE 110 O2 O2 0.0000 110 H 13.163759683 6.712709347 3.325370381 CORE 111 H H 0.0000 111 H 13.342707351 8.222082787 3.522464397 CORE 112 H H 0.0000 112 C 13.912488766 5.725210073 5.586770061 CORE 113 C C 0.0000 113 C 13.015148565 4.560152758 5.683542914 CORE 114 C C 0.0000 114 H 13.246116590 3.639553594 5.104118844 CORE 115 H H 0.0000 115 H 12.417668645 4.424873297 6.609611355 CORE 116 H H 0.0000 116 H 14.804661033 5.677259725 4.931197292 CORE 117 H H 0.0000 117 H 13.962642209 6.450318681 6.425266122 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.314800693 4.757223745 3.511745144 CORE 1 Si Si 0.0000 1 Si -2.583415656 12.029927762 7.348126372 CORE 2 Si Si 0.0000 2 Si 1.073374820 4.770673564 3.485838006 CORE 3 Si Si 0.0000 3 Si -8.616916536 12.023190744 7.298965645 CORE 4 Si Si 0.0000 4 Si -13.628582803 7.688397326 11.084110744 CORE 5 Si Si 0.0000 5 Si -4.002157024 14.900043815 7.331628828 CORE 6 Si Si 0.0000 6 Si -7.150505236 9.196176352 7.205002746 CORE 7 Si Si 0.0000 7 Si 2.430349614 16.338263066 3.546833432 CORE 8 Si Si 0.0000 8 Si -13.618338538 16.323097894 3.440757334 CORE 9 Si Si 0.0000 9 Si -3.931656114 9.130736167 7.340872358 CORE 10 Si Si 0.0000 10 Si -7.222665797 14.918840926 7.255004983 CORE 11 Si Si 0.0000 11 Si 2.406996724 7.698248216 3.488343138 CORE 12 Si Si 0.0000 12 Si -10.213329465 4.600148907 5.829816156 CORE 13 Si Si 0.0000 13 Si -0.309267601 12.046587310 9.579769053 CORE 14 Si Si 0.0000 14 Si -10.790540820 12.037745308 9.580026101 CORE 15 Si Si 0.0000 15 Si -1.232716128 4.779345328 5.733256838 CORE 16 Si Si 0.0000 16 Si -9.973029752 4.715872322 8.867986482 CORE 17 Si Si 0.0000 17 Si -0.280560297 11.997949668 5.100886613 CORE 18 Si Si 0.0000 18 Si -11.002751364 12.032704617 5.082548124 CORE 19 Si Si 0.0000 19 Si -1.207301184 4.746642749 8.867046762 CORE 20 Si Si 0.0000 20 Ti -9.053882191 7.675721868 5.016337113 CORE 21 Ti Ti 0.0000 21 Si 0.671706576 14.942505462 8.916780465 CORE 22 Si Si 0.0000 22 Si -2.271413404 16.317445009 5.108028497 CORE 23 Si Si 0.0000 23 Si -11.902801777 9.154421460 8.808248300 CORE 24 Si Si 0.0000 24 Si 0.744807619 9.112199963 5.738819843 CORE 25 Si Si 0.0000 25 Si -8.989130594 16.304108491 9.532821646 CORE 26 Si Si 0.0000 26 Si -11.827434880 14.947978018 5.725993619 CORE 27 Si Si 0.0000 27 Si -2.197504667 7.693277869 9.537622941 CORE 28 Si Si 0.0000 28 Si -12.056439383 9.207453148 5.726735171 CORE 29 Si Si 0.0000 29 Si -2.231683585 16.293389689 9.558326134 CORE 30 Si Si 0.0000 30 Si 0.618429934 14.944356603 5.776545934 CORE 31 Si Si 0.0000 31 Si -9.064095280 7.654165632 9.220970327 CORE 32 Si Si 0.0000 32 Si -2.147151851 7.745497863 5.095432771 CORE 33 Si Si 0.0000 33 Si -11.868087091 14.932622139 8.847661367 CORE 34 Si Si 0.0000 34 Si -8.943162843 16.245209427 5.057045157 CORE 35 Si Si 0.0000 35 Si 0.650343959 9.132209497 8.865027654 CORE 36 Si Si 0.0000 36 O -15.234298552 7.755782060 3.366994791 CORE 37 O O 0.0000 37 O -5.614103200 14.969576778 7.395151296 CORE 38 O O 0.0000 38 O -15.214311536 16.108966628 3.605502268 CORE 39 O O 0.0000 39 O -5.543136187 9.057858119 7.294606177 CORE 40 O O 0.0000 40 O -10.616953340 4.401546354 7.400653216 CORE 41 O O 0.0000 41 O -0.738554868 11.984657547 3.540214545 CORE 42 O O 0.0000 42 O -10.420922084 12.078710705 3.558533712 CORE 43 O O 0.0000 43 O -0.788155415 4.705421058 7.294762885 CORE 44 O O 0.0000 44 O -13.165352941 6.131160171 3.486377510 CORE 45 O O 0.0000 45 O -3.529672645 13.344088851 7.269389926 CORE 46 O O 0.0000 46 O -7.589859719 10.768818685 7.233120465 CORE 47 O O 0.0000 47 O 2.108385799 17.937291727 3.523322187 CORE 48 O O 0.0000 48 O -3.494999720 10.695941502 7.413897381 CORE 49 O O 0.0000 49 O -13.308851357 17.913714833 3.252161796 CORE 50 O O 0.0000 50 O 1.909340844 6.151651879 3.488013289 CORE 51 O O 0.0000 51 O -7.748605600 13.385343119 7.153515275 CORE 52 O O 0.0000 52 O -11.600645811 4.568498605 4.970783728 CORE 53 O O 0.0000 53 O -1.675953008 12.131028431 8.698768275 CORE 54 O O 0.0000 54 O 0.097245461 4.726788605 4.796633307 CORE 55 O O 0.0000 55 O -9.388745250 12.033613178 8.741947752 CORE 56 O O 0.0000 56 O -1.617224959 11.951194446 6.032665716 CORE 57 O O 0.0000 57 O -11.174898966 4.836080163 9.953050779 CORE 58 O O 0.0000 58 O -9.737084314 11.933896613 6.110414289 CORE 59 O O 0.0000 59 O 0.172672978 4.679952085 9.731854893 CORE 60 O O 0.0000 60 O -10.557054067 8.589575654 5.476775637 CORE 61 O O 0.0000 61 O -0.786655494 15.622313729 9.206999825 CORE 62 O O 0.0000 62 O -10.491442238 8.339851365 8.826792565 CORE 63 O O 0.0000 63 O -0.851215415 15.617674056 5.514532081 CORE 64 O O 0.0000 64 O -0.699587711 8.435307510 5.391707324 CORE 65 O O 0.0000 65 O -10.472791372 15.711669267 9.200552252 CORE 66 O O 0.0000 66 O -10.282202092 15.428972988 5.503938727 CORE 67 O O 0.0000 67 O -0.800340686 8.453214798 9.160931888 CORE 68 O O 0.0000 68 O -12.488565800 9.124020771 7.293592895 CORE 69 O O 0.0000 69 O -2.567975938 16.074153299 3.527538183 CORE 70 O O 0.0000 70 O -8.871398336 7.763093505 3.224039056 CORE 71 O O 0.0000 71 O 1.017093524 15.117999744 7.339956068 CORE 72 O O 0.0000 72 O -2.479400729 7.893100631 3.515753387 CORE 73 O O 0.0000 73 O -12.234411928 15.167000206 7.281822933 CORE 74 O O 0.0000 74 O 1.067928032 8.897442809 7.313624219 CORE 75 O O 0.0000 75 O -8.630097713 16.004306527 3.481711471 CORE 76 O O 0.0000 76 O -13.172245957 8.396661157 4.872349003 CORE 77 O O 0.0000 77 O -3.407068049 15.607050536 8.674593148 CORE 78 O O 0.0000 78 O 1.741519997 15.675965827 4.866852484 CORE 79 O O 0.0000 79 O -7.865985298 8.408536885 8.438296633 CORE 80 O O 0.0000 80 O -3.310835429 8.457269953 5.982236410 CORE 81 O O 0.0000 81 O -13.097827432 15.524060115 9.725717162 CORE 82 O O 0.0000 82 O -7.648919159 15.723019434 5.895763729 CORE 83 O O 0.0000 83 O 1.775914262 8.467541609 9.813302855 CORE 84 O O 0.0000 84 O -7.649163950 8.530664049 5.796381220 CORE 85 O O 0.0000 85 O 1.830547646 15.654269912 9.800163822 CORE 86 O O 0.0000 86 O -3.478046416 15.681683146 5.994353946 CORE 87 O O 0.0000 87 O -12.958302248 8.451259006 9.814356911 CORE 88 O O 0.0000 88 O 1.926191382 8.411026888 4.876084298 CORE 89 O O 0.0000 89 O -7.877449091 15.628294260 8.566293232 CORE 90 O O 0.0000 90 O -12.833528982 15.780614829 4.764456833 CORE 91 O O 0.0000 91 O -3.390054895 8.333657495 8.649492908 CORE 92 O O 0.0000 92 O -9.428658278 6.004831831 5.614370186 CORE 93 O O 0.0000 93 O 0.616999678 13.358901871 9.307337268 CORE 94 O O 0.0000 94 O -2.205339705 17.927935119 5.384287701 CORE 95 O O 0.0000 95 O -11.667074379 10.704879218 9.256353167 CORE 96 O O 0.0000 96 O 0.672974793 10.708476705 5.395476852 CORE 97 O O 0.0000 97 O -8.967802232 17.919853782 9.301946489 CORE 98 O O 0.0000 98 O -11.901006067 13.360476826 5.374351154 CORE 99 O O 0.0000 99 O -2.044457677 6.102305175 9.202452535 CORE 100 O O 0.0000 100 O -12.019103395 10.771578099 5.256418067 CORE 101 O O 0.0000 101 O -2.172244834 17.890557551 9.216815873 CORE 102 O O 0.0000 102 O 0.565730050 13.356900096 5.403291594 CORE 103 O O 0.0000 103 O -9.079705313 6.076001732 8.799654579 CORE 104 O O 0.0000 104 O -2.071965083 6.154826437 5.481741856 CORE 105 O O 0.0000 105 O -11.676845228 13.344520428 9.170048301 CORE 106 O O 0.0000 106 O -9.198936145 17.825174160 5.355591149 CORE 107 O O 0.0000 107 O 0.555203468 10.730396337 9.173992491 CORE 108 O O 0.0000 108 O2 12.636927125 5.712397819 4.877221730 CORE 109 O2 O2 0.0000 109 O2 13.615633330 7.496605738 2.938619545 CORE 110 O2 O2 0.0000 110 H 13.157901254 6.715306162 3.322482986 CORE 111 H H 0.0000 111 H 13.342843410 8.223243750 3.528487868 CORE 112 H H 0.0000 112 C 13.913024727 5.729162162 5.584363898 CORE 113 C C 0.0000 113 C 13.017676145 4.559945330 5.685109772 CORE 114 C C 0.0000 114 H 13.252695150 3.638558112 5.110777137 CORE 115 H H 0.0000 115 H 12.422235764 4.425024219 6.611806037 CORE 116 H H 0.0000 116 H 14.803621634 5.680614180 4.927877503 CORE 117 H H 0.0000 117 H 13.961701535 6.455754048 6.420208083 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.312774626 4.758146721 3.510132262 CORE 1 Si Si 0.0000 1 Si -2.582558888 12.031250747 7.347600409 CORE 2 Si Si 0.0000 2 Si 1.073503181 4.771030184 3.484419792 CORE 3 Si Si 0.0000 3 Si -8.618665097 12.022692571 7.299665661 CORE 4 Si Si 0.0000 4 Si -13.625994794 7.691329140 11.086821500 CORE 5 Si Si 0.0000 5 Si -4.003401762 14.901105749 7.332429108 CORE 6 Si Si 0.0000 6 Si -7.150325877 9.195763370 7.205274551 CORE 7 Si Si 0.0000 7 Si 2.430234339 16.340398322 3.546128776 CORE 8 Si Si 0.0000 8 Si -13.617849149 16.323610626 3.441728090 CORE 9 Si Si 0.0000 9 Si -3.931330304 9.132203875 7.338004741 CORE 10 Si Si 0.0000 10 Si -7.223837598 14.916963117 7.254991062 CORE 11 Si Si 0.0000 11 Si 2.408594985 7.699410477 3.488644232 CORE 12 Si Si 0.0000 12 Si -10.211567240 4.598786426 5.831364529 CORE 13 Si Si 0.0000 13 Si -0.309713882 12.046897083 9.580597783 CORE 14 Si Si 0.0000 14 Si -10.791735522 12.036049270 9.581452682 CORE 15 Si Si 0.0000 15 Si -1.233317713 4.781676624 5.732978262 CORE 16 Si Si 0.0000 16 Si -9.969850166 4.713557170 8.868423060 CORE 17 Si Si 0.0000 17 Si -0.280470040 11.998614043 5.100163395 CORE 18 Si Si 0.0000 18 Si -11.002483480 12.030497720 5.083461066 CORE 19 Si Si 0.0000 19 Si -1.208346933 4.748971594 8.865533687 CORE 20 Si Si 0.0000 20 Ti -9.050871765 7.674811000 5.015724047 CORE 21 Ti Ti 0.0000 21 Si 0.671104029 14.942899705 8.916946074 CORE 22 Si Si 0.0000 22 Si -2.271474216 16.318940250 5.107528551 CORE 23 Si Si 0.0000 23 Si -11.902800622 9.153271740 8.808977908 CORE 24 Si Si 0.0000 24 Si 0.745369367 9.113511993 5.738675535 CORE 25 Si Si 0.0000 25 Si -8.988791697 16.302389965 9.532620283 CORE 26 Si Si 0.0000 26 Si -11.826591199 14.946284430 5.724995933 CORE 27 Si Si 0.0000 27 Si -2.197657084 7.694969151 9.538062790 CORE 28 Si Si 0.0000 28 Si -12.051529133 9.207477509 5.727656100 CORE 29 Si Si 0.0000 29 Si -2.231674925 16.295243713 9.557536276 CORE 30 Si Si 0.0000 30 Si 0.618373547 14.946059704 5.775499942 CORE 31 Si Si 0.0000 31 Si -9.060322768 7.652758897 9.225149808 CORE 32 Si Si 0.0000 32 Si -2.146870880 7.746778325 5.094632796 CORE 33 Si Si 0.0000 33 Si -11.869533319 14.932748412 8.846266888 CORE 34 Si Si 0.0000 34 Si -8.942454259 16.242189827 5.056624250 CORE 35 Si Si 0.0000 35 Si 0.649835518 9.133594610 8.865986392 CORE 36 Si Si 0.0000 36 O -15.232930263 7.754763947 3.367657988 CORE 37 O O 0.0000 37 O -5.615560013 14.967939263 7.398619350 CORE 38 O O 0.0000 38 O -15.214627146 16.109526208 3.605943562 CORE 39 O O 0.0000 39 O -5.541343556 9.061206519 7.296191597 CORE 40 O O 0.0000 40 O -10.614216186 4.397951894 7.401364110 CORE 41 O O 0.0000 41 O -0.737882078 11.985740670 3.540031211 CORE 42 O O 0.0000 42 O -10.422587316 12.079313673 3.559926670 CORE 43 O O 0.0000 43 O -0.788159264 4.708179175 7.294336425 CORE 44 O O 0.0000 44 O -13.162351559 6.133041439 3.485432998 CORE 45 O O 0.0000 45 O -3.528199089 13.344353362 7.270359009 CORE 46 O O 0.0000 46 O -7.593279092 10.767672857 7.236335883 CORE 47 O O 0.0000 47 O 2.109920168 17.939380711 3.522215641 CORE 48 O O 0.0000 48 O -3.495878234 10.698851550 7.412725489 CORE 49 O O 0.0000 49 O -13.307076816 17.913894729 3.250030786 CORE 50 O O 0.0000 50 O 1.908526800 6.152992017 3.488346486 CORE 51 O O 0.0000 51 O -7.749251063 13.383890834 7.153252522 CORE 52 O O 0.0000 52 O -11.600472225 4.563691721 4.970372026 CORE 53 O O 0.0000 53 O -1.674828741 12.132314514 8.698959597 CORE 54 O O 0.0000 54 O 0.097747359 4.727310131 4.795529576 CORE 55 O O 0.0000 55 O -9.389439017 12.034292978 8.744509787 CORE 56 O O 0.0000 56 O -1.616576225 11.951380396 6.031782671 CORE 57 O O 0.0000 57 O -11.173360171 4.835575935 9.953605193 CORE 58 O O 0.0000 58 O -9.739877084 11.937027351 6.112562339 CORE 59 O O 0.0000 59 O 0.172189747 4.680901440 9.730930464 CORE 60 O O 0.0000 60 O -10.552589136 8.594182317 5.477160714 CORE 61 O O 0.0000 61 O -0.787210507 15.621945720 9.205691916 CORE 62 O O 0.0000 62 O -10.488771863 8.339921277 8.829562428 CORE 63 O O 0.0000 63 O -0.851593763 15.618266358 5.515828198 CORE 64 O O 0.0000 64 O -0.697419619 8.434784399 5.390923781 CORE 65 O O 0.0000 65 O -10.476445529 15.714903214 9.201152614 CORE 66 O O 0.0000 66 O -10.281166735 15.425638137 5.504946455 CORE 67 O O 0.0000 67 O -0.797868530 8.453422226 9.165732651 CORE 68 O O 0.0000 68 O -12.478887326 9.116877835 7.292984851 CORE 69 O O 0.0000 69 O -2.564950885 16.073882014 3.526605766 CORE 70 O O 0.0000 70 O -8.866894724 7.758584286 3.227063001 CORE 71 O O 0.0000 71 O 1.017941054 15.118912053 7.340131034 CORE 72 O O 0.0000 72 O -2.480085835 7.894596016 3.515370896 CORE 73 O O 0.0000 73 O -12.235284669 15.166181592 7.280794514 CORE 74 O O 0.0000 74 O 1.066643072 8.897616939 7.314498669 CORE 75 O O 0.0000 75 O -8.630739520 16.001266458 3.480850182 CORE 76 O O 0.0000 76 O -13.167645353 8.397473283 4.871710149 CORE 77 O O 0.0000 77 O -3.406685467 15.609353435 8.675792654 CORE 78 O O 0.0000 78 O 1.741434167 15.678584841 4.866072440 CORE 79 O O 0.0000 79 O -7.865458382 8.407935358 8.439182037 CORE 80 O O 0.0000 80 O -3.309240632 8.460708446 5.979621809 CORE 81 O O 0.0000 81 O -13.099588310 15.524784744 9.724866371 CORE 82 O O 0.0000 82 O -7.646673896 15.723676890 5.894813511 CORE 83 O O 0.0000 83 O 1.776745434 8.466393475 9.812003467 CORE 84 O O 0.0000 84 O -7.648486734 8.528317329 5.795196624 CORE 85 O O 0.0000 85 O 1.829613707 15.655972437 9.800021719 CORE 86 O O 0.0000 86 O -3.477745046 15.682014252 5.993199931 CORE 87 O O 0.0000 87 O -12.961653111 8.453091120 9.815752683 CORE 88 O O 0.0000 88 O 1.928269025 8.413052159 4.876119900 CORE 89 O O 0.0000 89 O -7.880866348 15.624383685 8.566219442 CORE 90 O O 0.0000 90 O -12.831404383 15.781910426 4.763963581 CORE 91 O O 0.0000 91 O -3.385258380 8.338085848 8.646827415 CORE 92 O O 0.0000 92 O -9.429644176 6.006079860 5.615012463 CORE 93 O O 0.0000 93 O 0.617416323 13.359079317 9.306453081 CORE 94 O O 0.0000 94 O -2.204637086 17.929300339 5.383433411 CORE 95 O O 0.0000 95 O -11.668581036 10.705299264 9.255499789 CORE 96 O O 0.0000 96 O 0.674095019 10.709890503 5.396039482 CORE 97 O O 0.0000 97 O -8.965209605 17.917935180 9.302433199 CORE 98 O O 0.0000 98 O -11.902468076 13.358825761 5.373748206 CORE 99 O O 0.0000 99 O -2.043815101 6.104329293 9.201017738 CORE 100 O O 0.0000 100 O -12.017328469 10.771959801 5.259171043 CORE 101 O O 0.0000 101 O -2.171411352 17.891593106 9.215449998 CORE 102 O O 0.0000 102 O 0.565654804 13.358128376 5.403242756 CORE 103 O O 0.0000 103 O -9.078074914 6.075224778 8.800366386 CORE 104 O O 0.0000 104 O -2.071711439 6.156175368 5.479572887 CORE 105 O O 0.0000 105 O -11.676866397 13.345601966 9.170701533 CORE 106 O O 0.0000 106 O -9.198581276 17.823525690 5.353873135 CORE 107 O O 0.0000 107 O 0.557243007 10.732037023 9.173787781 CORE 108 O O 0.0000 108 O2 12.636731600 5.723170819 4.883259045 CORE 109 O2 O2 0.0000 109 O2 13.616342107 7.490164799 2.934649034 CORE 110 O2 O2 0.0000 110 H 13.171321834 6.709658467 3.329101113 CORE 111 H H 0.0000 111 H 13.342789140 8.223884774 3.519186676 CORE 112 H H 0.0000 112 C 13.914102615 5.725427735 5.588309914 CORE 113 C C 0.0000 113 C 13.009223164 4.558371673 5.678979573 CORE 114 C C 0.0000 114 H 13.239130237 3.641978874 5.098949816 CORE 115 H H 0.0000 115 H 12.411979953 4.423699504 6.606468586 CORE 116 H H 0.0000 116 H 14.803820046 5.673123704 4.934513507 CORE 117 H H 0.0000 117 H 13.963639077 6.442320662 6.431624538 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.312964570 4.758060233 3.510283493 CORE 1 Si Si 0.0000 1 Si -2.582639138 12.031126780 7.347649703 CORE 2 Si Si 0.0000 2 Si 1.073491057 4.770996742 3.484552766 CORE 3 Si Si 0.0000 3 Si -8.618501133 12.022739274 7.299600010 CORE 4 Si Si 0.0000 4 Si -13.626237468 7.691054251 11.086567419 CORE 5 Si Si 0.0000 5 Si -4.003285140 14.901006287 7.332354100 CORE 6 Si Si 0.0000 6 Si -7.150342620 9.195802001 7.205249067 CORE 7 Si Si 0.0000 7 Si 2.430245309 16.340198245 3.546194807 CORE 8 Si Si 0.0000 8 Si -13.617895143 16.323562625 3.441637108 CORE 9 Si Si 0.0000 9 Si -3.931360710 9.132066215 7.338273580 CORE 10 Si Si 0.0000 10 Si -7.223727712 14.917139121 7.254992355 CORE 11 Si Si 0.0000 11 Si 2.408445262 7.699301501 3.488616009 CORE 12 Si Si 0.0000 12 Si -10.211732551 4.598914141 5.831219383 CORE 13 Si Si 0.0000 13 Si -0.309671929 12.046868109 9.580520037 CORE 14 Si Si 0.0000 14 Si -10.791623519 12.036208264 9.581318947 CORE 15 Si Si 0.0000 15 Si -1.233261327 4.781458096 5.733004354 CORE 16 Si Si 0.0000 16 Si -9.970148264 4.713774112 8.868382133 CORE 17 Si Si 0.0000 17 Si -0.280478507 11.998551771 5.100231252 CORE 18 Si Si 0.0000 18 Si -11.002508498 12.030704716 5.083375485 CORE 19 Si Si 0.0000 19 Si -1.208248978 4.748753211 8.865675561 CORE 20 Si Si 0.0000 20 Ti -9.051153890 7.674896480 5.015781558 CORE 21 Ti Ti 0.0000 21 Si 0.671160416 14.942862659 8.916930555 CORE 22 Si Si 0.0000 22 Si -2.271468635 16.318800139 5.107575411 CORE 23 Si Si 0.0000 23 Si -11.902800815 9.153379562 8.808909519 CORE 24 Si Si 0.0000 24 Si 0.745316637 9.113389035 5.738689075 CORE 25 Si Si 0.0000 25 Si -8.988823451 16.302551122 9.532639148 CORE 26 Si Si 0.0000 26 Si -11.826670294 14.946443137 5.725089425 CORE 27 Si Si 0.0000 27 Si -2.197642843 7.694810589 9.538021559 CORE 28 Si Si 0.0000 28 Si -12.051989463 9.207475202 5.727569758 CORE 29 Si Si 0.0000 29 Si -2.231675694 16.295069872 9.557610295 CORE 30 Si Si 0.0000 30 Si 0.618378743 14.945899989 5.775597999 CORE 31 Si Si 0.0000 31 Si -9.060676484 7.652890792 9.224758036 CORE 32 Si Si 0.0000 32 Si -2.146897245 7.746658394 5.094707804 CORE 33 Si Si 0.0000 33 Si -11.869397838 14.932736592 8.846397580 CORE 34 Si Si 0.0000 34 Si -8.942520652 16.242472932 5.056663731 CORE 35 Si Si 0.0000 35 Si 0.649883244 9.133464733 8.865896475 CORE 36 Si Si 0.0000 36 O -15.233058625 7.754859373 3.367595837 CORE 37 O O 0.0000 37 O -5.615423377 14.968092780 7.398294218 CORE 38 O O 0.0000 38 O -15.214597510 16.109473739 3.605902255 CORE 39 O O 0.0000 39 O -5.541511561 9.060892566 7.296042952 CORE 40 O O 0.0000 40 O -10.614472716 4.398288910 7.401297471 CORE 41 O O 0.0000 41 O -0.737945201 11.985639191 3.540048403 CORE 42 O O 0.0000 42 O -10.422431242 12.079257168 3.559796054 CORE 43 O O 0.0000 43 O -0.788158879 4.707920574 7.294376439 CORE 44 O O 0.0000 44 O -13.162632914 6.132865147 3.485521546 CORE 45 O O 0.0000 45 O -3.528337265 13.344328568 7.270268179 CORE 46 O O 0.0000 46 O -7.592958670 10.767780247 7.236034486 CORE 47 O O 0.0000 47 O 2.109776411 17.939184815 3.522319328 CORE 48 O O 0.0000 48 O -3.495795867 10.698578823 7.412835413 CORE 49 O O 0.0000 49 O -13.307243089 17.913877863 3.250230552 CORE 50 O O 0.0000 50 O 1.908603200 6.152866465 3.488315220 CORE 51 O O 0.0000 51 O -7.749190635 13.384027053 7.153277093 CORE 52 O O 0.0000 52 O -11.600488391 4.564142326 4.970410594 CORE 53 O O 0.0000 53 O -1.674934201 12.132194007 8.698941644 CORE 54 O O 0.0000 54 O 0.097700402 4.727261265 4.795633034 CORE 55 O O 0.0000 55 O -9.389373970 12.034229264 8.744269551 CORE 56 O O 0.0000 56 O -1.616637037 11.951362955 6.031865437 CORE 57 O O 0.0000 57 O -11.173504505 4.835623215 9.953553235 CORE 58 O O 0.0000 58 O -9.739615358 11.936733866 6.112360976 CORE 59 O O 0.0000 59 O 0.172235164 4.680812501 9.731017110 CORE 60 O O 0.0000 60 O -10.553007705 8.593750451 5.477124580 CORE 61 O O 0.0000 61 O -0.787158547 15.621980171 9.205814544 CORE 62 O O 0.0000 62 O -10.489022234 8.339914790 8.829302794 CORE 63 O O 0.0000 63 O -0.851558353 15.618210861 5.515706711 CORE 64 O O 0.0000 64 O -0.697622842 8.434833409 5.390997191 CORE 65 O O 0.0000 65 O -10.476102976 15.714600072 9.201096320 CORE 66 O O 0.0000 66 O -10.281263920 15.425950793 5.504851973 CORE 67 O O 0.0000 67 O -0.798100234 8.453402767 9.165282608 CORE 68 O O 0.0000 68 O -12.479794514 9.117547399 7.293041829 CORE 69 O O 0.0000 69 O -2.565234357 16.073907383 3.526693173 CORE 70 O O 0.0000 70 O -8.867316949 7.759007070 3.226779556 CORE 71 O O 0.0000 71 O 1.017861574 15.118826574 7.340114603 CORE 72 O O 0.0000 72 O -2.480021558 7.894455761 3.515406802 CORE 73 O O 0.0000 73 O -12.235202880 15.166258279 7.280890973 CORE 74 O O 0.0000 74 O 1.066763543 8.897600650 7.314416739 CORE 75 O O 0.0000 75 O -8.630679284 16.001551438 3.480930970 CORE 76 O O 0.0000 76 O -13.168076816 8.397397173 4.871770094 CORE 77 O O 0.0000 77 O -3.406721262 15.609137646 8.675680220 CORE 78 O O 0.0000 78 O 1.741442249 15.678339358 4.866145622 CORE 79 O O 0.0000 79 O -7.865507841 8.407991864 8.439099042 CORE 80 O O 0.0000 80 O -3.309390163 8.460385988 5.979866914 CORE 81 O O 0.0000 81 O -13.099423191 15.524716851 9.724946171 CORE 82 O O 0.0000 82 O -7.646884432 15.723615195 5.894902592 CORE 83 O O 0.0000 83 O 1.776667494 8.466501153 9.812125258 CORE 84 O O 0.0000 84 O -7.648550049 8.528537298 5.795307690 CORE 85 O O 0.0000 85 O 1.829701270 15.655812866 9.800035032 CORE 86 O O 0.0000 86 O -3.477773143 15.681983117 5.993308106 CORE 87 O O 0.0000 87 O -12.961339040 8.452919440 9.815621839 CORE 88 O O 0.0000 88 O 1.928074270 8.412862317 4.876116553 CORE 89 O O 0.0000 89 O -7.880546118 15.624750252 8.566226364 CORE 90 O O 0.0000 90 O -12.831603564 15.781789053 4.764009757 CORE 91 O O 0.0000 91 O -3.385708126 8.337670703 8.647077312 CORE 92 O O 0.0000 92 O -9.429551803 6.005962812 5.614952290 CORE 93 O O 0.0000 93 O 0.617377256 13.359062740 9.306535999 CORE 94 O O 0.0000 94 O -2.204703095 17.929172336 5.383513515 CORE 95 O O 0.0000 95 O -11.668439781 10.705259912 9.255579741 CORE 96 O O 0.0000 96 O 0.673989943 10.709758032 5.395986764 CORE 97 O O 0.0000 97 O -8.965452664 17.918115076 9.302387632 CORE 98 O O 0.0000 98 O -11.902331055 13.358980576 5.373804728 CORE 99 O O 0.0000 99 O -2.043875337 6.104139595 9.201152233 CORE 100 O O 0.0000 100 O -12.017494742 10.771924053 5.258912930 CORE 101 O O 0.0000 101 O -2.171489485 17.891496095 9.215578027 CORE 102 O O 0.0000 102 O 0.565661732 13.358013203 5.403247320 CORE 103 O O 0.0000 103 O -9.078227716 6.075297572 8.800299671 CORE 104 O O 0.0000 104 O -2.071735303 6.156048807 5.479776228 CORE 105 O O 0.0000 105 O -11.676864473 13.345500487 9.170640295 CORE 106 O O 0.0000 106 O -9.198614569 17.823680216 5.354034180 CORE 107 O O 0.0000 107 O 0.557051716 10.731883217 9.173806951 CORE 108 O O 0.0000 108 O2 12.636750075 5.722160778 4.882693068 CORE 109 O2 O2 0.0000 109 O2 13.616275521 7.490768632 2.935021255 CORE 110 O2 O2 0.0000 110 H 13.170063624 6.710187920 3.328480668 CORE 111 H H 0.0000 111 H 13.342794144 8.223824664 3.520058615 CORE 112 H H 0.0000 112 C 13.914001581 5.725777725 5.587940051 CORE 113 C C 0.0000 113 C 13.010015463 4.558519135 5.679554222 CORE 114 C C 0.0000 114 H 13.240401917 3.641658146 5.100058568 CORE 115 H H 0.0000 115 H 12.412941411 4.423823759 6.606968912 CORE 116 H H 0.0000 116 H 14.803801571 5.673825846 4.933891388 CORE 117 H H 0.0000 117 H 13.963457601 6.443579934 6.430554279 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.312006768 4.758648354 3.510301142 CORE 1 Si Si 0.0000 1 Si -2.580589400 12.031845787 7.347102060 CORE 2 Si Si 0.0000 2 Si 1.073749896 4.772064010 3.483245466 CORE 3 Si Si 0.0000 3 Si -8.620923446 12.022189929 7.301537797 CORE 4 Si Si 0.0000 4 Si -13.625895685 7.691687347 11.089012455 CORE 5 Si Si 0.0000 5 Si -4.003610181 14.900991152 7.332855340 CORE 6 Si Si 0.0000 6 Si -7.151333522 9.194952396 7.204500365 CORE 7 Si Si 0.0000 7 Si 2.430329792 16.341806066 3.545474327 CORE 8 Si Si 0.0000 8 Si -13.617320501 16.325174049 3.442342145 CORE 9 Si Si 0.0000 9 Si -3.929230145 9.134369114 7.336026789 CORE 10 Si Si 0.0000 10 Si -7.225135259 14.916043889 7.255462101 CORE 11 Si Si 0.0000 11 Si 2.409386706 7.699770124 3.488612966 CORE 12 Si Si 0.0000 12 Si -10.211451388 4.598080104 5.831221209 CORE 13 Si Si 0.0000 13 Si -0.309416938 12.048063524 9.580714021 CORE 14 Si Si 0.0000 14 Si -10.793741768 12.036849576 9.582396509 CORE 15 Si Si 0.0000 15 Si -1.232359719 4.783404086 5.732322063 CORE 16 Si Si 0.0000 16 Si -9.968615434 4.712044632 8.869326036 CORE 17 Si Si 0.0000 17 Si -0.279943316 11.999925208 5.099561284 CORE 18 Si Si 0.0000 18 Si -11.002893774 12.031022994 5.083827505 CORE 19 Si Si 0.0000 19 Si -1.208167381 4.750965874 8.864782093 CORE 20 Si Si 0.0000 20 Ti -9.049841796 7.673172333 5.016035943 CORE 21 Ti Ti 0.0000 21 Si 0.671262412 14.943242343 8.916833030 CORE 22 Si Si 0.0000 22 Si -2.270583386 16.319574211 5.107482679 CORE 23 Si Si 0.0000 23 Si -11.901542220 9.151584639 8.810336633 CORE 24 Si Si 0.0000 24 Si 0.745920531 9.114506898 5.738605548 CORE 25 Si Si 0.0000 25 Si -8.990374370 16.300854796 9.532493622 CORE 26 Si Si 0.0000 26 Si -11.826999376 14.944235375 5.724346124 CORE 27 Si Si 0.0000 27 Si -2.197242171 7.696602485 9.538895172 CORE 28 Si Si 0.0000 28 Si -12.047488930 9.208170281 5.727070953 CORE 29 Si Si 0.0000 29 Si -2.230322802 16.296393577 9.556621509 CORE 30 Si Si 0.0000 30 Si 0.619344243 14.947355878 5.775427673 CORE 31 Si Si 0.0000 31 Si -9.058479717 7.652568478 9.227092083 CORE 32 Si Si 0.0000 32 Si -2.145664246 7.747684147 5.093127861 CORE 33 Si Si 0.0000 33 Si -11.871107909 14.933976259 8.845746402 CORE 34 Si Si 0.0000 34 Si -8.943179009 16.239911577 5.056172153 CORE 35 Si Si 0.0000 35 Si 0.649563784 9.134729482 8.867507227 CORE 36 Si Si 0.0000 36 O -15.231424954 7.754812381 3.368145534 CORE 37 O O 0.0000 37 O -5.616307857 14.966603737 7.401048715 CORE 38 O O 0.0000 38 O -15.214548628 16.109914253 3.607035122 CORE 39 O O 0.0000 39 O -5.542750333 9.064331058 7.297232873 CORE 40 O O 0.0000 40 O -10.611388006 4.394840760 7.402340649 CORE 41 O O 0.0000 41 O -0.738566607 11.985798185 3.539834945 CORE 42 O O 0.0000 42 O -10.423517983 12.079905110 3.560660614 CORE 43 O O 0.0000 43 O -0.787974324 4.710767630 7.293712101 CORE 44 O O 0.0000 44 O -13.159293791 6.134807821 3.485258488 CORE 45 O O 0.0000 45 O -3.528059951 13.346153619 7.270504840 CORE 46 O O 0.0000 46 O -7.595595368 10.765491474 7.239749774 CORE 47 O O 0.0000 47 O 2.111323482 17.940783266 3.521152000 CORE 48 O O 0.0000 48 O -3.496329711 10.700712493 7.411576495 CORE 49 O O 0.0000 49 O -13.305615191 17.914678458 3.248173941 CORE 50 O O 0.0000 50 O 1.907971786 6.153600896 3.488886826 CORE 51 O O 0.0000 51 O -7.750023155 13.382194795 7.152875204 CORE 52 O O 0.0000 52 O -11.598951135 4.560572227 4.970526680 CORE 53 O O 0.0000 53 O -1.674468868 12.133627553 8.698447555 CORE 54 O O 0.0000 54 O 0.097700018 4.727467684 4.794932866 CORE 55 O O 0.0000 55 O -9.390019433 12.034312005 8.745904190 CORE 56 O O 0.0000 56 O -1.616181904 11.951871362 6.031174702 CORE 57 O O 0.0000 57 O -11.171483056 4.835681595 9.953462633 CORE 58 O O 0.0000 58 O -9.741071017 11.939009810 6.114838494 CORE 59 O O 0.0000 59 O 0.171157662 4.681301449 9.730038366 CORE 60 O O 0.0000 60 O -10.547952929 8.596814881 5.476959808 CORE 61 O O 0.0000 61 O -0.787850004 15.621656993 9.204897571 CORE 62 O O 0.0000 62 O -10.485786646 8.340577436 8.831544489 CORE 63 O O 0.0000 63 O -0.851877620 15.618940823 5.516320613 CORE 64 O O 0.0000 64 O -0.696711997 8.433704879 5.390153322 CORE 65 O O 0.0000 65 O -10.478819730 15.718780923 9.201785534 CORE 66 O O 0.0000 66 O -10.279318294 15.422037768 5.506046610 CORE 67 O O 0.0000 67 O -0.797142432 8.452684624 9.169150573 CORE 68 O O 0.0000 68 O -12.472379585 9.110502771 7.292338694 CORE 69 O O 0.0000 69 O -2.562205841 16.074212255 3.525980301 CORE 70 O O 0.0000 70 O -8.863951460 7.755770528 3.229346459 CORE 71 O O 0.0000 71 O 1.017753805 15.119332531 7.339687229 CORE 72 O O 0.0000 72 O -2.481426219 7.895649301 3.515325861 CORE 73 O O 0.0000 73 O -12.235531577 15.165100631 7.279724635 CORE 74 O O 0.0000 74 O 1.064815801 8.898248449 7.315022121 CORE 75 O O 0.0000 75 O -8.630799755 15.998622795 3.480799366 CORE 76 O O 0.0000 76 O -13.163683667 8.399092924 4.872294992 CORE 77 O O 0.0000 77 O -3.406697014 15.609702992 8.675903644 CORE 78 O O 0.0000 78 O 1.741151272 15.680361746 4.865559942 CORE 79 O O 0.0000 79 O -7.864175348 8.407615207 8.439043966 CORE 80 O O 0.0000 80 O -3.308283215 8.463350956 5.977295979 CORE 81 O O 0.0000 81 O -13.101121716 15.525481120 9.724855873 CORE 82 O O 0.0000 82 O -7.644739048 15.723862119 5.895972547 CORE 83 O O 0.0000 83 O 1.777435159 8.465532771 9.810823663 CORE 84 O O 0.0000 84 O -7.647813944 8.526869512 5.795288139 CORE 85 O O 0.0000 85 O 1.828505028 15.657753378 9.799665930 CORE 86 O O 0.0000 86 O -3.477911704 15.681231964 5.992715579 CORE 87 O O 0.0000 87 O -12.963407253 8.456133495 9.814681968 CORE 88 O O 0.0000 88 O 1.929998918 8.415484646 4.876520040 CORE 89 O O 0.0000 89 O -7.883276537 15.620267989 8.566573330 CORE 90 O O 0.0000 90 O -12.830540302 15.781568508 4.764175670 CORE 91 O O 0.0000 91 O -3.381810332 8.341854726 8.644917167 CORE 92 O O 0.0000 92 O -9.430965316 6.007455603 5.615778053 CORE 93 O O 0.0000 93 O 0.617575860 13.359098777 9.306136544 CORE 94 O O 0.0000 94 O -2.204220442 17.930661379 5.383172255 CORE 95 O O 0.0000 95 O -11.670243959 10.704441875 9.254884061 CORE 96 O O 0.0000 96 O 0.674977382 10.711694364 5.396346129 CORE 97 O O 0.0000 97 O -8.962705503 17.916109265 9.302336283 CORE 98 O O 0.0000 98 O -11.903183204 13.356361129 5.374117765 CORE 99 O O 0.0000 99 O -2.043385947 6.107071121 9.199613522 CORE 100 O O 0.0000 100 O -12.016366048 10.772076272 5.261542897 CORE 101 O O 0.0000 101 O -2.170783979 17.893206692 9.213413546 CORE 102 O O 0.0000 102 O 0.565541646 13.359063749 5.402244004 CORE 103 O O 0.0000 103 O -9.078709215 6.074051562 8.800247257 CORE 104 O O 0.0000 104 O -2.072183893 6.157491867 5.477907819 CORE 105 O O 0.0000 105 O -11.677546115 13.346010913 9.171412883 CORE 106 O O 0.0000 106 O -9.197660231 17.821558078 5.352515094 CORE 107 O O 0.0000 107 O 0.559111076 10.734033032 9.173790519 CORE 108 O O 0.0000 108 O2 12.638908929 5.729577883 4.887411140 CORE 109 O2 O2 0.0000 109 O2 13.616702558 7.488024210 2.930572555 CORE 110 O2 O2 0.0000 110 H 13.180942767 6.703042245 3.336266350 CORE 111 H H 0.0000 111 H 13.343685937 8.223707472 3.512188340 CORE 112 H H 0.0000 112 C 13.912718354 5.722499957 5.592649983 CORE 113 C C 0.0000 113 C 13.000567923 4.560502460 5.674718162 CORE 114 C C 0.0000 114 H 13.228508009 3.644213880 5.089682704 CORE 115 H H 0.0000 115 H 12.404232093 4.421617727 6.600324693 CORE 116 H H 0.0000 116 H 14.804037317 5.667258634 4.938232371 CORE 117 H H 0.0000 117 H 13.965753670 6.430556216 6.441746397 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.310474131 4.759589348 3.510329289 CORE 1 Si Si 0.0000 1 Si -2.577309934 12.032996372 7.346225784 CORE 2 Si Si 0.0000 2 Si 1.074164039 4.773771580 3.481153862 CORE 3 Si Si 0.0000 3 Si -8.624799108 12.021311206 7.304638270 CORE 4 Si Si 0.0000 4 Si -13.625348754 7.692700126 11.092924466 CORE 5 Si Si 0.0000 5 Si -4.004130554 14.900967223 7.333657369 CORE 6 Si Si 0.0000 6 Si -7.152919082 9.193593086 7.203302457 CORE 7 Si Si 0.0000 7 Si 2.430464889 16.344378520 3.544321605 CORE 8 Si Si 0.0000 8 Si -13.616401188 16.327752270 3.443470143 CORE 9 Si Si 0.0000 9 Si -3.925820971 9.138053810 7.332432074 CORE 10 Si Si 0.0000 10 Si -7.227387257 14.914291633 7.256213770 CORE 11 Si Si 0.0000 11 Si 2.410893171 7.700519979 3.488608174 CORE 12 Si Si 0.0000 12 Si -10.211001835 4.596745587 5.831224176 CORE 13 Si Si 0.0000 13 Si -0.309008761 12.049976360 9.581024396 CORE 14 Si Si 0.0000 14 Si -10.797130735 12.037875761 9.584120685 CORE 15 Si Si 0.0000 15 Si -1.230916954 4.786517670 5.731230427 CORE 16 Si Si 0.0000 16 Si -9.966163100 4.709277290 8.870836221 CORE 17 Si Si 0.0000 17 Si -0.279087318 12.002122735 5.098489351 CORE 18 Si Si 0.0000 18 Si -11.003510177 12.031532266 5.084550723 CORE 19 Si Si 0.0000 19 Si -1.208036903 4.754505990 8.863352621 CORE 20 Si Si 0.0000 20 Ti -9.047742214 7.670413640 5.016443005 CORE 21 Ti Ti 0.0000 21 Si 0.671425606 14.943849925 8.916677006 CORE 22 Si Si 0.0000 22 Si -2.269166986 16.320812725 5.107334262 CORE 23 Si Si 0.0000 23 Si -11.899528662 9.148712934 8.812620091 CORE 24 Si Si 0.0000 24 Si 0.746886801 9.116295623 5.738471965 CORE 25 Si Si 0.0000 25 Si -8.992855571 16.298140788 9.532260842 CORE 26 Si Si 0.0000 26 Si -11.827526292 14.940702754 5.723156736 CORE 27 Si Si 0.0000 27 Si -2.196601327 7.699469577 9.540292998 CORE 28 Si Si 0.0000 28 Si -12.040288385 9.209282234 5.726272880 CORE 29 Si Si 0.0000 29 Si -2.228158174 16.298511679 9.555039284 CORE 30 Si Si 0.0000 30 Si 0.620889196 14.949685156 5.775155183 CORE 31 Si Si 0.0000 31 Si -9.054964890 7.652052863 9.230826618 CORE 32 Si Si 0.0000 32 Si -2.143691678 7.749325265 5.090600059 CORE 33 Si Si 0.0000 33 Si -11.873843909 14.935959728 8.844704594 CORE 34 Si Si 0.0000 34 Si -8.944232456 16.235813466 5.055385642 CORE 35 Si Si 0.0000 35 Si 0.649052841 9.136753168 8.870084324 CORE 36 Si Si 0.0000 36 O -15.228811158 7.754737280 3.369025081 CORE 37 O O 0.0000 37 O -5.617723102 14.964221413 7.405455956 CORE 38 O O 0.0000 38 O -15.214470303 16.110619134 3.608847694 CORE 39 O O 0.0000 39 O -5.544732138 9.069832733 7.299136731 CORE 40 O O 0.0000 40 O -10.606452353 4.389323662 7.404009672 CORE 41 O O 0.0000 41 O -0.739560781 11.986052461 3.539493305 CORE 42 O O 0.0000 42 O -10.425256729 12.080941674 3.562043911 CORE 43 O O 0.0000 43 O -0.787679112 4.715322976 7.292649144 CORE 44 O O 0.0000 44 O -13.153950923 6.137916072 3.484837657 CORE 45 O O 0.0000 45 O -3.527616171 13.349073613 7.270883527 CORE 46 O O 0.0000 46 O -7.599814353 10.761829265 7.245694206 CORE 47 O O 0.0000 47 O 2.113798717 17.943340873 3.519284124 CORE 48 O O 0.0000 48 O -3.497183785 10.704126625 7.409562180 CORE 49 O O 0.0000 49 O -13.303010440 17.915959496 3.244883287 CORE 50 O O 0.0000 50 O 1.906961832 6.154775985 3.489801518 CORE 51 O O 0.0000 51 O -7.751355071 13.379263270 7.152232166 CORE 52 O O 0.0000 52 O -11.596491296 4.554860242 4.970712449 CORE 53 O O 0.0000 53 O -1.673724488 12.135921226 8.697656937 CORE 54 O O 0.0000 54 O 0.097699440 4.727797926 4.793812551 CORE 55 O O 0.0000 55 O -9.391052288 12.034444332 8.748519627 CORE 56 O O 0.0000 56 O -1.615453305 11.952685075 6.030069373 CORE 57 O O 0.0000 57 O -11.168248623 4.835774858 9.953317792 CORE 58 O O 0.0000 58 O -9.743400378 11.942651550 6.118802539 CORE 59 O O 0.0000 59 O 0.169433541 4.682084025 9.728472496 CORE 60 O O 0.0000 60 O -10.539865402 8.601717911 5.476696065 CORE 61 O O 0.0000 61 O -0.788956566 15.621139792 9.203430367 CORE 62 O O 0.0000 62 O -10.480609859 8.341637640 8.835131140 CORE 63 O O 0.0000 63 O -0.852388563 15.620108850 5.517302933 CORE 64 O O 0.0000 64 O -0.695254991 8.431899288 5.388803117 CORE 65 O O 0.0000 65 O -10.483166884 15.725470372 9.202888276 CORE 66 O O 0.0000 66 O -10.276205294 15.415777013 5.507958000 CORE 67 O O 0.0000 67 O -0.795609796 8.451535625 9.175339425 CORE 68 O O 0.0000 68 O -12.460515890 9.099231309 7.291213738 CORE 69 O O 0.0000 69 O -2.557360445 16.074700050 3.524839827 CORE 70 O O 0.0000 70 O -8.858566832 7.750592033 3.233453519 CORE 71 O O 0.0000 71 O 1.017581566 15.120142207 7.339003341 CORE 72 O O 0.0000 72 O -2.483673791 7.897558966 3.515196462 CORE 73 O O 0.0000 73 O -12.236057723 15.163248337 7.277858432 CORE 74 O O 0.0000 74 O 1.061699337 8.899285013 7.315990748 CORE 75 O O 0.0000 75 O -8.630992393 15.993936851 3.480588874 CORE 76 O O 0.0000 76 O -13.156654591 8.401806066 4.873134904 CORE 77 O O 0.0000 77 O -3.406658140 15.610607662 8.676261107 CORE 78 O O 0.0000 78 O 1.740685553 15.683597567 4.864622885 CORE 79 O O 0.0000 79 O -7.862043435 8.407012526 8.438955874 CORE 80 O O 0.0000 80 O -3.306512523 8.468094991 5.973182376 CORE 81 O O 0.0000 81 O -13.103839241 15.526704067 9.724711336 CORE 82 O O 0.0000 82 O -7.641306781 15.724257083 5.897684475 CORE 83 O O 0.0000 83 O 1.778663347 8.463983475 9.808741188 CORE 84 O O 0.0000 84 O -7.646635985 8.524201055 5.795256797 CORE 85 O O 0.0000 85 O 1.826591349 15.660858314 9.799075458 CORE 86 O O 0.0000 86 O -3.478133209 15.680030063 5.991767568 CORE 87 O O 0.0000 87 O -12.966716355 8.461276098 9.813178097 CORE 88 O O 0.0000 88 O 1.933078626 8.419680633 4.877165588 CORE 89 O O 0.0000 89 O -7.887645629 15.613096367 8.567128352 CORE 90 O O 0.0000 90 O -12.828838890 15.781215635 4.764441086 CORE 91 O O 0.0000 91 O -3.375574132 8.348549364 8.641460904 CORE 92 O O 0.0000 92 O -9.433227129 6.009843981 5.617099199 CORE 93 O O 0.0000 93 O 0.617893588 13.359156436 9.305497386 CORE 94 O O 0.0000 94 O -2.203448542 17.933043847 5.382626209 CORE 95 O O 0.0000 95 O -11.673130835 10.703133017 9.253770897 CORE 96 O O 0.0000 96 O 0.676557360 10.714792524 5.396921235 CORE 97 O O 0.0000 97 O -8.958310045 17.912900256 9.302254125 CORE 98 O O 0.0000 98 O -11.904546489 13.352170043 5.374618548 CORE 99 O O 0.0000 99 O -2.042602886 6.111761677 9.197151598 CORE 100 O O 0.0000 100 O -12.014560139 10.772319881 5.265750753 CORE 101 O O 0.0000 101 O -2.169655286 17.895943763 9.209950284 CORE 102 O O 0.0000 102 O 0.565349585 13.360744508 5.400638577 CORE 103 O O 0.0000 103 O -9.079479382 6.072057859 8.800163273 CORE 104 O O 0.0000 104 O -2.072901716 6.159800676 5.474918411 CORE 105 O O 0.0000 105 O -11.678636897 13.346827652 9.172649132 CORE 106 O O 0.0000 106 O -9.196133560 17.818162686 5.350084436 CORE 107 O O 0.0000 107 O 0.562405937 10.737472677 9.173764274 CORE 108 O O 0.0000 108 O2 12.642362943 5.741445251 4.894960010 CORE 109 O2 O2 0.0000 109 O2 13.617385932 7.483633192 2.923454558 CORE 110 O2 O2 0.0000 110 H 13.198349280 6.691609193 3.348723320 CORE 111 H H 0.0000 111 H 13.345112728 8.223519648 3.499595886 CORE 112 H H 0.0000 112 C 13.910665151 5.717255298 5.600185997 CORE 113 C C 0.0000 113 C 12.985451705 4.563675721 5.666980405 CORE 114 C C 0.0000 114 H 13.209477447 3.648303054 5.073081322 CORE 115 H H 0.0000 115 H 12.390297491 4.418088278 6.589693987 CORE 116 H H 0.0000 116 H 14.804414703 5.656750864 4.945177988 CORE 117 H H 0.0000 117 H 13.969427649 6.409718122 6.459653862 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.311998108 4.758653688 3.510301294 CORE 1 Si Si 0.0000 1 Si -2.580570925 12.031852274 7.347097115 CORE 2 Si Si 0.0000 2 Si 1.073752205 4.772073523 3.483233675 CORE 3 Si Si 0.0000 3 Si -8.620945193 12.022185028 7.301555293 CORE 4 Si Si 0.0000 4 Si -13.625892605 7.691692968 11.089034439 CORE 5 Si Si 0.0000 5 Si -4.003613260 14.900991008 7.332859828 CORE 6 Si Si 0.0000 6 Si -7.151342567 9.194944756 7.204493671 CORE 7 Si Si 0.0000 7 Si 2.430330562 16.341820480 3.545467861 CORE 8 Si Si 0.0000 8 Si -13.617315305 16.325188464 3.442348459 CORE 9 Si Si 0.0000 9 Si -3.929210901 9.134389871 7.336006553 CORE 10 Si Si 0.0000 10 Si -7.225147960 14.916034087 7.255466361 CORE 11 Si Si 0.0000 11 Si 2.409395174 7.699774449 3.488612966 CORE 12 Si Si 0.0000 12 Si -10.211448886 4.598072608 5.831221209 CORE 13 Si Si 0.0000 13 Si -0.309414629 12.048074335 9.580715771 CORE 14 Si Si 0.0000 14 Si -10.793760820 12.036855342 9.582406247 CORE 15 Si Si 0.0000 15 Si -1.232351444 4.783421672 5.732315977 CORE 16 Si Si 0.0000 16 Si -9.968601771 4.712029064 8.869334556 CORE 17 Si Si 0.0000 17 Si -0.279938505 11.999937605 5.099555274 CORE 18 Si Si 0.0000 18 Si -11.002897238 12.031025877 5.083831537 CORE 19 Si Si 0.0000 19 Si -1.208166612 4.750985766 8.864774030 CORE 20 Si Si 0.0000 20 Ti -9.049829864 7.673156765 5.016038225 CORE 21 Ti Ti 0.0000 21 Si 0.671263374 14.943245803 8.916832194 CORE 22 Si Si 0.0000 22 Si -2.270575303 16.319581130 5.107481842 CORE 23 Si Si 0.0000 23 Si -11.901530866 9.151568494 8.810349489 CORE 24 Si Si 0.0000 24 Si 0.745925920 9.114516988 5.738604787 CORE 25 Si Si 0.0000 25 Si -8.990388226 16.300839516 9.532492329 CORE 26 Si Si 0.0000 26 Si -11.827002455 14.944215482 5.724339430 CORE 27 Si Si 0.0000 27 Si -2.197238707 7.696618630 9.538903083 CORE 28 Si Si 0.0000 28 Si -12.047448516 9.208176480 5.727066465 CORE 29 Si Si 0.0000 29 Si -2.230310678 16.296405542 9.556612608 CORE 30 Si Si 0.0000 30 Si 0.619353095 14.947368995 5.775426152 CORE 31 Si Si 0.0000 31 Si -9.058459895 7.652565596 9.227113078 CORE 32 Si Si 0.0000 32 Si -2.145653277 7.747693372 5.093113635 CORE 33 Si Si 0.0000 33 Si -11.871123305 14.933987359 8.845740545 CORE 34 Si Si 0.0000 34 Si -8.943184975 16.239888513 5.056167740 CORE 35 Si Si 0.0000 35 Si 0.649560898 9.134740870 8.867521681 CORE 36 Si Si 0.0000 36 O -15.231410328 7.754812092 3.368150479 CORE 37 O O 0.0000 37 O -5.616315939 14.966590332 7.401073515 CORE 38 O O 0.0000 38 O -15.214548244 16.109918289 3.607045316 CORE 39 O O 0.0000 39 O -5.542761303 9.064362050 7.297243599 CORE 40 O O 0.0000 40 O -10.611360294 4.394809624 7.402350006 CORE 41 O O 0.0000 41 O -0.738572188 11.985799483 3.539833043 CORE 42 O O 0.0000 42 O -10.423527797 12.079910876 3.560668450 CORE 43 O O 0.0000 43 O -0.787972784 4.710793288 7.293706091 CORE 44 O O 0.0000 44 O -13.159263769 6.134825263 3.485256130 CORE 45 O O 0.0000 45 O -3.528057449 13.346170051 7.270506970 CORE 46 O O 0.0000 46 O -7.595619231 10.765470861 7.239783170 CORE 47 O O 0.0000 47 O 2.111337338 17.940797680 3.521141426 CORE 48 O O 0.0000 48 O -3.496334522 10.700731809 7.411565160 CORE 49 O O 0.0000 49 O -13.305600566 17.914685665 3.248155379 CORE 50 O O 0.0000 50 O 1.907966205 6.153607526 3.488891999 CORE 51 O O 0.0000 51 O -7.750030660 13.382178363 7.152871629 CORE 52 O O 0.0000 52 O -11.598937279 4.560540082 4.970527745 CORE 53 O O 0.0000 53 O -1.674464826 12.133640526 8.698443067 CORE 54 O O 0.0000 54 O 0.097700018 4.727469558 4.794926552 CORE 55 O O 0.0000 55 O -9.390025399 12.034312726 8.745918948 CORE 56 O O 0.0000 56 O -1.616177670 11.951875975 6.031168464 CORE 57 O O 0.0000 57 O -11.171464774 4.835682027 9.953461873 CORE 58 O O 0.0000 58 O -9.741084103 11.939030423 6.114860783 CORE 59 O O 0.0000 59 O 0.171147847 4.681305917 9.730029618 CORE 60 O O 0.0000 60 O -10.547907512 8.596842413 5.476958286 CORE 61 O O 0.0000 61 O -0.787856162 15.621654110 9.204889279 CORE 62 O O 0.0000 62 O -10.485757587 8.340583346 8.831564648 CORE 63 O O 0.0000 63 O -0.851880507 15.618947454 5.516326167 CORE 64 O O 0.0000 64 O -0.696703914 8.433694789 5.390145715 CORE 65 O O 0.0000 65 O -10.478844363 15.718818546 9.201791772 CORE 66 O O 0.0000 66 O -10.279300782 15.422002596 5.506057337 CORE 67 O O 0.0000 67 O -0.797133772 8.452678138 9.169185414 CORE 68 O O 0.0000 68 O -12.472312999 9.110439346 7.292332380 CORE 69 O O 0.0000 69 O -2.562178706 16.074214994 3.525973911 CORE 70 O O 0.0000 70 O -8.863921247 7.755741411 3.229369509 CORE 71 O O 0.0000 71 O 1.017752842 15.119337144 7.339683350 CORE 72 O O 0.0000 72 O -2.481438920 7.895660112 3.515325176 CORE 73 O O 0.0000 73 O -12.235534656 15.165090252 7.279714137 CORE 74 O O 0.0000 74 O 1.064798289 8.898254359 7.315027599 CORE 75 O O 0.0000 75 O -8.630800910 15.998596416 3.480798224 CORE 76 O O 0.0000 76 O -13.163644024 8.399108203 4.872299708 CORE 77 O O 0.0000 77 O -3.406696821 15.609708182 8.675905622 CORE 78 O O 0.0000 78 O 1.741148577 15.680379909 4.865554693 CORE 79 O O 0.0000 79 O -7.864163416 8.407611747 8.439043433 CORE 80 O O 0.0000 80 O -3.308273401 8.463377623 5.977272853 CORE 81 O O 0.0000 81 O -13.101136920 15.525488039 9.724855036 CORE 82 O O 0.0000 82 O -7.644719804 15.723864282 5.895982132 CORE 83 O O 0.0000 83 O 1.777442087 8.465524122 9.810811948 CORE 84 O O 0.0000 84 O -7.647807401 8.526854521 5.795287911 CORE 85 O O 0.0000 85 O 1.828494251 15.657770820 9.799662659 CORE 86 O O 0.0000 86 O -3.477912859 15.681225189 5.992710254 CORE 87 O O 0.0000 87 O -12.963425728 8.456162469 9.814673448 CORE 88 O O 0.0000 88 O 1.930016239 8.415508286 4.876523691 CORE 89 O O 0.0000 89 O -7.883301170 15.620227627 8.566576448 CORE 90 O O 0.0000 90 O -12.830530680 15.781566490 4.764177116 CORE 91 O O 0.0000 91 O -3.381775307 8.341892492 8.644897692 CORE 92 O O 0.0000 92 O -9.430978017 6.007469008 5.615785432 CORE 93 O O 0.0000 93 O 0.617577592 13.359099065 9.306132893 CORE 94 O O 0.0000 94 O -2.204216208 17.930674784 5.383169136 CORE 95 O O 0.0000 95 O -11.670260317 10.704434524 9.254877747 CORE 96 O O 0.0000 96 O 0.674986427 10.711711806 5.396349400 CORE 97 O O 0.0000 97 O -8.962680870 17.916091247 9.302335827 CORE 98 O O 0.0000 98 O -11.903190902 13.356337489 5.374120580 CORE 99 O O 0.0000 99 O -2.043381521 6.107097500 9.199599676 CORE 100 O O 0.0000 100 O -12.016356041 10.772077570 5.261566555 CORE 101 O O 0.0000 101 O -2.170777628 17.893222116 9.213393995 CORE 102 O O 0.0000 102 O 0.565540684 13.359073118 5.402234952 CORE 103 O O 0.0000 103 O -9.078713448 6.074040318 8.800246725 CORE 104 O O 0.0000 104 O -2.072187935 6.157504840 5.477891007 CORE 105 O O 0.0000 105 O -11.677552273 13.346015525 9.171419882 CORE 106 O O 0.0000 106 O -9.197651763 17.821538906 5.352501401 CORE 107 O O 0.0000 107 O 0.559129551 10.734052348 9.173790443 CORE 108 O O 0.0000 108 O2 12.638928366 5.729644624 4.887453589 CORE 109 O2 O2 0.0000 109 O2 13.616706407 7.487999561 2.930532465 CORE 110 O2 O2 0.0000 110 H 13.181040722 6.702977955 3.336336413 CORE 111 H H 0.0000 111 H 13.343693827 8.223706319 3.512117517 CORE 112 H H 0.0000 112 C 13.912706807 5.722470407 5.592692432 CORE 113 C C 0.0000 113 C 13.000482862 4.560520334 5.674674649 CORE 114 C C 0.0000 114 H 13.228400817 3.644236944 5.089589288 CORE 115 H H 0.0000 115 H 12.404153767 4.421597979 6.600264900 CORE 116 H H 0.0000 116 H 14.804039434 5.667199389 4.938271472 CORE 117 H H 0.0000 117 H 13.965774454 6.430439024 6.441847193 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.310148128 4.758859674 3.511804480 CORE 1 Si Si 0.0000 1 Si -2.580298230 12.033753290 7.346266331 CORE 2 Si Si 0.0000 2 Si 1.072958175 4.772954120 3.482244661 CORE 3 Si Si 0.0000 3 Si -8.621529650 12.020643804 7.304794599 CORE 4 Si Si 0.0000 4 Si -13.625002352 7.692379254 11.088894314 CORE 5 Si Si 0.0000 5 Si -4.004016626 14.901251050 7.332855720 CORE 6 Si Si 0.0000 6 Si -7.152564212 9.194102215 7.203336917 CORE 7 Si Si 0.0000 7 Si 2.430847856 16.342670950 3.544887963 CORE 8 Si Si 0.0000 8 Si -13.617205803 16.327024325 3.442452678 CORE 9 Si Si 0.0000 9 Si -3.929767261 9.137336821 7.334462060 CORE 10 Si Si 0.0000 10 Si -7.225323086 14.913963410 7.256229745 CORE 11 Si Si 0.0000 11 Si 2.409367654 7.700278677 3.488616998 CORE 12 Si Si 0.0000 12 Si -10.210065395 4.596800940 5.830611034 CORE 13 Si Si 0.0000 13 Si -0.308974506 12.049658227 9.580083611 CORE 14 Si Si 0.0000 14 Si -10.796029176 12.037892050 9.582131398 CORE 15 Si Si 0.0000 15 Si -1.231354960 4.784666673 5.731145150 CORE 16 Si Si 0.0000 16 Si -9.967138799 4.710476596 8.870464989 CORE 17 Si Si 0.0000 17 Si -0.279286499 12.001790475 5.099105307 CORE 18 Si Si 0.0000 18 Si -11.002047590 12.032461296 5.084717322 CORE 19 Si Si 0.0000 19 Si -1.208131779 4.753561104 8.863975272 CORE 20 Si Si 0.0000 20 Ti -9.049831404 7.672632356 5.019110020 CORE 21 Ti Ti 0.0000 21 Si 0.671206218 14.943611072 8.915937661 CORE 22 Si Si 0.0000 22 Si -2.270563371 16.319923047 5.108156907 CORE 23 Si Si 0.0000 23 Si -11.897527035 9.149349633 8.811211615 CORE 24 Si Si 0.0000 24 Si 0.745936697 9.115904984 5.738945743 CORE 25 Si Si 0.0000 25 Si -8.992129089 16.299281715 9.533054502 CORE 26 Si Si 0.0000 26 Si -11.826799617 14.941281362 5.723908025 CORE 27 Si Si 0.0000 27 Si -2.197709622 7.698597774 9.539467843 CORE 28 Si Si 0.0000 28 Si -12.042069661 9.208719483 5.726760046 CORE 29 Si Si 0.0000 29 Si -2.229614602 16.297502792 9.555180017 CORE 30 Si Si 0.0000 30 Si 0.619765314 14.948275538 5.775607660 CORE 31 Si Si 0.0000 31 Si -9.056639552 7.652042196 9.226404238 CORE 32 Si Si 0.0000 32 Si -2.144923523 7.748628312 5.091477931 CORE 33 Si Si 0.0000 33 Si -11.872429818 14.935875978 8.846597041 CORE 34 Si Si 0.0000 34 Si -8.942277594 16.237682914 5.056558751 CORE 35 Si Si 0.0000 35 Si 0.649357483 9.135909329 8.869014901 CORE 36 Si Si 0.0000 36 O -15.231407826 7.755600579 3.368962930 CORE 37 O O 0.0000 37 O -5.616444493 14.965074045 7.402800277 CORE 38 O O 0.0000 38 O -15.213499223 16.110687172 3.608840695 CORE 39 O O 0.0000 39 O -5.542644103 9.067740001 7.297678580 CORE 40 O O 0.0000 40 O -10.608067742 4.391248463 7.402265870 CORE 41 O O 0.0000 41 O -0.740485675 11.985022240 3.539382392 CORE 42 O O 0.0000 42 O -10.424125341 12.080423464 3.560635967 CORE 43 O O 0.0000 43 O -0.787338868 4.714121508 7.292579614 CORE 44 O O 0.0000 44 O -13.155165832 6.136105725 3.486116354 CORE 45 O O 0.0000 45 O -3.527039219 13.346393192 7.269991276 CORE 46 O O 0.0000 46 O -7.599530110 10.763870393 7.244141801 CORE 47 O O 0.0000 47 O 2.112773559 17.942703309 3.519639381 CORE 48 O O 0.0000 48 O -3.495624013 10.703344913 7.410136145 CORE 49 O O 0.0000 49 O -13.304497660 17.916182925 3.246485747 CORE 50 O O 0.0000 50 O 1.908174817 6.154886835 3.489656220 CORE 51 O O 0.0000 51 O -7.750916872 13.380386610 7.152373128 CORE 52 O O 0.0000 52 O -11.597267429 4.558296860 4.970019355 CORE 53 O O 0.0000 53 O -1.673752008 12.135078540 8.697892609 CORE 54 O O 0.0000 54 O 0.098415915 4.727471143 4.793541962 CORE 55 O O 0.0000 55 O -9.392435010 12.033959853 8.748542981 CORE 56 O O 0.0000 56 O -1.615291265 11.952784536 6.030215888 CORE 57 O O 0.0000 57 O -11.170392467 4.836102938 9.954405092 CORE 58 O O 0.0000 58 O -9.742658308 11.940136322 6.116448866 CORE 59 O O 0.0000 59 O 0.171038923 4.681568698 9.730183740 CORE 60 O O 0.0000 60 O -10.542488628 8.598475459 5.475479900 CORE 61 O O 0.0000 61 O -0.786900669 15.620760252 9.203949331 CORE 62 O O 0.0000 62 O -10.482409033 8.342307493 8.834362735 CORE 63 O O 0.0000 63 O -0.850325546 15.619253191 5.516615089 CORE 64 O O 0.0000 64 O -0.695040991 8.432982268 5.389280090 CORE 65 O O 0.0000 65 O -10.483203256 15.723195438 9.202048820 CORE 66 O O 0.0000 66 O -10.278850267 15.416188554 5.507768124 CORE 67 O O 0.0000 67 O -0.795660794 8.452266308 9.171983957 CORE 68 O O 0.0000 68 O -12.467336163 9.103549100 7.291787475 CORE 69 O O 0.0000 69 O -2.558853823 16.075648828 3.525640410 CORE 70 O O 0.0000 70 O -8.861496239 7.753714698 3.228962751 CORE 71 O O 0.0000 71 O 1.017048299 15.119411380 7.339372367 CORE 72 O O 0.0000 72 O -2.483825438 7.896821796 3.515062880 CORE 73 O O 0.0000 73 O -12.235564292 15.163476810 7.278865171 CORE 74 O O 0.0000 74 O 1.061715117 8.899647688 7.315394419 CORE 75 O O 0.0000 75 O -8.630797253 15.995396343 3.480927243 CORE 76 O O 0.0000 76 O -13.160491764 8.400573606 4.872506700 CORE 77 O O 0.0000 77 O -3.406411040 15.609147592 8.675509438 CORE 78 O O 0.0000 78 O 1.740885889 15.682053749 4.864980728 CORE 79 O O 0.0000 79 O -7.863083796 8.405864248 8.439527405 CORE 80 O O 0.0000 80 O -3.307500347 8.465824237 5.974381045 CORE 81 O O 0.0000 81 O -13.102870470 15.526294544 9.725528275 CORE 82 O O 0.0000 82 O -7.644648984 15.724451971 5.897419820 CORE 83 O O 0.0000 83 O 1.778926805 8.464570011 9.810301960 CORE 84 O O 0.0000 84 O -7.646701416 8.525639214 5.796135583 CORE 85 O O 0.0000 85 O 1.827469671 15.660197974 9.799216724 CORE 86 O O 0.0000 86 O -3.477860321 15.680028333 5.992233206 CORE 87 O O 0.0000 87 O -12.965984485 8.458634020 9.814402479 CORE 88 O O 0.0000 88 O 1.932286135 8.418247231 4.876314797 CORE 89 O O 0.0000 89 O -7.886541569 15.615262614 8.568249580 CORE 90 O O 0.0000 90 O -12.830904409 15.780170999 4.764211728 CORE 91 O O 0.0000 91 O -3.378387495 8.345850060 8.643415274 CORE 92 O O 0.0000 92 O -9.434139706 6.005527631 5.617723295 CORE 93 O O 0.0000 93 O 0.618225171 13.360374625 9.306178536 CORE 94 O O 0.0000 94 O -2.203682364 17.932188909 5.383407014 CORE 95 O O 0.0000 95 O -11.671505247 10.704133400 9.254762498 CORE 96 O O 0.0000 96 O 0.675866096 10.713361573 5.396557914 CORE 97 O O 0.0000 97 O -8.960049176 17.914784118 9.302017997 CORE 98 O O 0.0000 98 O -11.905155387 13.355495668 5.375779409 CORE 99 O O 0.0000 99 O -2.042863458 6.110062324 9.197923578 CORE 100 O O 0.0000 100 O -12.016298500 10.772676935 5.263573339 CORE 101 O O 0.0000 101 O -2.170092137 17.895017184 9.210630141 CORE 102 O O 0.0000 102 O 0.565806644 13.361145814 5.400390126 CORE 103 O O 0.0000 103 O -9.080898668 6.073919667 8.799914898 CORE 104 O O 0.0000 104 O -2.072960989 6.158265073 5.476302620 CORE 105 O O 0.0000 105 O -11.679596238 13.347825008 9.171977871 CORE 106 O O 0.0000 106 O -9.197297471 17.820434593 5.351430990 CORE 107 O O 0.0000 107 O 0.561072097 10.736050087 9.174015312 CORE 108 O O 0.0000 108 O2 12.640245079 5.736203763 4.888158625 CORE 109 O2 O2 0.0000 109 O2 13.614069902 7.483241831 2.926847529 CORE 110 O2 O2 0.0000 110 H 13.192758543 6.699053254 3.343868395 CORE 111 H H 0.0000 111 H 13.345362908 8.222783920 3.505387945 CORE 112 H H 0.0000 112 C 13.912205679 5.717130755 5.598221661 CORE 113 C C 0.0000 113 C 12.992114365 4.562210750 5.669322287 CORE 114 C C 0.0000 114 H 13.216258268 3.648156167 5.080661534 CORE 115 H H 0.0000 115 H 12.395065716 4.418406988 6.592857829 CORE 116 H H 0.0000 116 H 14.802849543 5.661342392 4.942032708 CORE 117 H H 0.0000 117 H 13.968870711 6.417787494 6.454966447 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.307188315 4.759189195 3.514209654 CORE 1 Si Si 0.0000 1 Si -2.579861763 12.036794944 7.344936970 CORE 2 Si Si 0.0000 2 Si 1.071687649 4.774363017 3.480662207 CORE 3 Si Si 0.0000 3 Si -8.622464743 12.018177730 7.309977472 CORE 4 Si Si 0.0000 4 Si -13.623577870 7.693477225 11.088670130 CORE 5 Si Si 0.0000 5 Si -4.004662089 14.901667203 7.332849026 CORE 6 Si Si 0.0000 6 Si -7.154518689 9.192754004 7.201486233 CORE 7 Si Si 0.0000 7 Si 2.431675372 16.344031558 3.543960110 CORE 8 Si Si 0.0000 8 Si -13.617030485 16.329961761 3.442619504 CORE 9 Si Si 0.0000 9 Si -3.930657322 9.142051882 7.331990856 CORE 10 Si Si 0.0000 10 Si -7.225603094 14.910650181 7.257451160 CORE 11 Si Si 0.0000 11 Si 2.409323392 7.701085470 3.488623464 CORE 12 Si Si 0.0000 12 Si -10.207851885 4.594766443 5.829634800 CORE 13 Si Si 0.0000 13 Si -0.308270347 12.052192482 9.579072080 CORE 14 Si Si 0.0000 14 Si -10.799658508 12.039550754 9.581691549 CORE 15 Si Si 0.0000 15 Si -1.229760356 4.786658646 5.729271873 CORE 16 Si Si 0.0000 16 Si -9.964798276 4.707992648 8.872273757 CORE 17 Si Si 0.0000 17 Si -0.278243444 12.004755155 5.098385437 CORE 18 Si Si 0.0000 18 Si -11.000688155 12.034757997 5.086134546 CORE 19 Si Si 0.0000 19 Si -1.208075970 4.757681558 8.862697336 CORE 20 Si Si 0.0000 20 Ti -9.049833521 7.671793274 5.024024890 CORE 21 Ti Ti 0.0000 21 Si 0.671114998 14.944195734 8.914506439 CORE 22 Si Si 0.0000 22 Si -2.270544127 16.320469943 5.109236979 CORE 23 Si Si 0.0000 23 Si -11.891120906 9.145799427 8.812591108 CORE 24 Si Si 0.0000 24 Si 0.745953825 9.118125719 5.739491180 CORE 25 Si Si 0.0000 25 Si -8.994914355 16.296789118 9.533953980 CORE 26 Si Si 0.0000 26 Si -11.826474961 14.936586769 5.723217822 CORE 27 Si Si 0.0000 27 Si -2.198463046 7.701764260 9.540371428 CORE 28 Si Si 0.0000 28 Si -12.033463494 9.209588259 5.726269761 CORE 29 Si Si 0.0000 29 Si -2.228500919 16.299258507 9.552887963 CORE 30 Si Si 0.0000 30 Si 0.620425017 14.949725950 5.775898104 CORE 31 Si Si 0.0000 31 Si -9.053726695 7.651204844 9.225270078 CORE 32 Si Si 0.0000 32 Si -2.143755763 7.750124130 5.088860744 CORE 33 Si Si 0.0000 33 Si -11.874520163 14.938897596 8.847967329 CORE 34 Si Si 0.0000 34 Si -8.940825591 16.234154041 5.057184445 CORE 35 Si Si 0.0000 35 Si 0.649032057 9.137778632 8.871404024 CORE 36 Si Si 0.0000 36 O -15.231404170 7.756862301 3.370262775 CORE 37 O O 0.0000 37 O -5.616650217 14.962647900 7.405563066 CORE 38 O O 0.0000 38 O -15.211820904 16.111917470 3.611713256 CORE 39 O O 0.0000 39 O -5.542456661 9.073144808 7.298374564 CORE 40 O O 0.0000 40 O -10.602799735 4.385550748 7.402131222 CORE 41 O O 0.0000 41 O -0.743547485 11.983778392 3.538661380 CORE 42 O O 0.0000 42 O -10.425081603 12.081243375 3.560584010 CORE 43 O O 0.0000 43 O -0.786324487 4.719446889 7.290777236 CORE 44 O O 0.0000 44 O -13.148609210 6.138154492 3.487492728 CORE 45 O O 0.0000 45 O -3.525409975 13.346750245 7.269166122 CORE 46 O O 0.0000 46 O -7.605787479 10.761309758 7.251115565 CORE 47 O O 0.0000 47 O 2.115071552 17.945752459 3.517236033 CORE 48 O O 0.0000 48 O -3.494487429 10.707525909 7.407849872 CORE 49 O O 0.0000 49 O -13.302732933 17.918578510 3.243814321 CORE 50 O O 0.0000 50 O 1.908508710 6.156934016 3.490879004 CORE 51 O O 0.0000 51 O -7.752335196 13.377519807 7.151575663 CORE 52 O O 0.0000 52 O -11.594595706 4.554707734 4.969205839 CORE 53 O O 0.0000 53 O -1.672611768 12.137379421 8.697011769 CORE 54 O O 0.0000 54 O 0.099561351 4.727473882 4.791326741 CORE 55 O O 0.0000 55 O -9.396290466 12.033395372 8.752741556 CORE 56 O O 0.0000 56 O -1.613872941 11.954238263 6.028691782 CORE 57 O O 0.0000 57 O -11.168676622 4.836776395 9.955914211 CORE 58 O O 0.0000 58 O -9.745177036 11.941905731 6.118989752 CORE 59 O O 0.0000 59 O 0.170864759 4.681989032 9.730430442 CORE 60 O O 0.0000 60 O -10.533818761 8.601088275 5.473114512 CORE 61 O O 0.0000 61 O -0.785371497 15.619330021 9.202445460 CORE 62 O O 0.0000 62 O -10.477051540 8.345066042 8.838839658 CORE 63 O O 0.0000 63 O -0.847837802 15.619742427 5.517077379 CORE 64 O O 0.0000 64 O -0.692380238 8.431842350 5.387895044 CORE 65 O O 0.0000 65 O -10.490177870 15.730198407 9.202460142 CORE 66 O O 0.0000 66 O -10.278129558 15.406886001 5.510505429 CORE 67 O O 0.0000 67 O -0.793304105 8.451607411 9.176461641 CORE 68 O O 0.0000 68 O -12.459373533 9.092524706 7.290915688 CORE 69 O O 0.0000 69 O -2.553534242 16.077942934 3.525106840 CORE 70 O O 0.0000 70 O -8.857616151 7.750471958 3.228311954 CORE 71 O O 0.0000 71 O 1.015920760 15.119530157 7.338874855 CORE 72 O O 0.0000 72 O -2.487643751 7.898680577 3.514643265 CORE 73 O O 0.0000 73 O -12.235611826 15.160895130 7.277506979 CORE 74 O O 0.0000 74 O 1.056781967 8.901877072 7.315981468 CORE 75 O O 0.0000 75 O -8.630791480 15.990276227 3.481133779 CORE 76 O O 0.0000 76 O -13.155448150 8.402918307 4.872837843 CORE 77 O O 0.0000 77 O -3.405953789 15.608250563 8.674875528 CORE 78 O O 0.0000 78 O 1.740465780 15.684732008 4.864062385 CORE 79 O O 0.0000 79 O -7.861356597 8.403068221 8.440301667 CORE 80 O O 0.0000 80 O -3.306263691 8.469738848 5.969754260 CORE 81 O O 0.0000 81 O -13.105643996 15.527585096 9.726605381 CORE 82 O O 0.0000 82 O -7.644535633 15.725392388 5.899720166 CORE 83 O O 0.0000 83 O 1.781302354 8.463043345 9.809486010 CORE 84 O O 0.0000 84 O -7.644931686 8.523694521 5.797491874 CORE 85 O O 0.0000 85 O 1.825830227 15.664081306 9.798503243 CORE 86 O O 0.0000 86 O -3.477776415 15.678113479 5.991469974 CORE 87 O O 0.0000 87 O -12.970078380 8.462588416 9.813968867 CORE 88 O O 0.0000 88 O 1.935917968 8.422629601 4.875980688 CORE 89 O O 0.0000 89 O -7.891726246 15.607318362 8.570926712 CORE 90 O O 0.0000 90 O -12.831502338 15.777938155 4.764267109 CORE 91 O O 0.0000 91 O -3.372967072 8.352182167 8.641043344 CORE 92 O O 0.0000 92 O -9.439198139 6.002421398 5.620823844 CORE 93 O O 0.0000 93 O 0.619261299 13.362415609 9.306251642 CORE 94 O O 0.0000 94 O -2.202828482 17.934611450 5.383787527 CORE 95 O O 0.0000 95 O -11.673497059 10.703651803 9.254578099 CORE 96 O O 0.0000 96 O 0.677273835 10.716001344 5.396891567 CORE 97 O O 0.0000 97 O -8.955838658 17.912692827 9.301509455 CORE 98 O O 0.0000 98 O -11.908298793 13.354148610 5.378433567 CORE 99 O O 0.0000 99 O -2.042034594 6.114805927 9.195241882 CORE 100 O O 0.0000 100 O -12.016206703 10.773635803 5.266784193 CORE 101 O O 0.0000 101 O -2.168995582 17.897889321 9.206207990 CORE 102 O O 0.0000 102 O 0.566232526 13.364461925 5.397438373 CORE 103 O O 0.0000 103 O -9.084394828 6.073726654 8.799383990 CORE 104 O O 0.0000 104 O -2.074197837 6.159481533 5.473761201 CORE 105 O O 0.0000 105 O -11.682866466 13.350720064 9.172870654 CORE 106 O O 0.0000 106 O -9.196730526 17.818667634 5.349718377 CORE 107 O O 0.0000 107 O 0.564180093 10.739246267 9.174375134 CORE 108 O O 0.0000 108 O2 12.642351781 5.746698415 4.889286548 CORE 109 O2 O2 0.0000 109 O2 13.609851109 7.475629551 2.920951632 CORE 110 O2 O2 0.0000 110 H 13.211506979 6.692773760 3.355919672 CORE 111 H H 0.0000 111 H 13.348033283 8.221308139 3.494620614 CORE 112 H H 0.0000 112 C 13.911403758 5.708587282 5.607068398 CORE 113 C C 0.0000 113 C 12.978724769 4.564915677 5.660758538 CORE 114 C C 0.0000 114 H 13.196829922 3.654427012 5.066377234 CORE 115 H H 0.0000 115 H 12.380524718 4.413301287 6.581006470 CORE 116 H H 0.0000 116 H 14.800945486 5.651971080 4.948050625 CORE 117 H H 0.0000 117 H 13.973824646 6.397545305 6.475957193 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.310129268 4.758861692 3.511819847 CORE 1 Si Si 0.0000 1 Si -2.580295536 12.033772750 7.346257811 CORE 2 Si Si 0.0000 2 Si 1.072950092 4.772963057 3.482234543 CORE 3 Si Si 0.0000 3 Si -8.621535616 12.020628091 7.304827614 CORE 4 Si Si 0.0000 4 Si -13.624993307 7.692386318 11.088892869 CORE 5 Si Si 0.0000 5 Si -4.004020667 14.901253788 7.332855644 CORE 6 Si Si 0.0000 6 Si -7.152576528 9.194093566 7.203325126 CORE 7 Si Si 0.0000 7 Si 2.430853052 16.342679599 3.544882029 CORE 8 Si Si 0.0000 8 Si -13.617204648 16.327043065 3.442453743 CORE 9 Si Si 0.0000 9 Si -3.929772842 9.137366803 7.334446313 CORE 10 Si Si 0.0000 10 Si -7.225324818 14.913942220 7.256237504 CORE 11 Si Si 0.0000 11 Si 2.409367269 7.700283866 3.488616998 CORE 12 Si Si 0.0000 12 Si -10.210051346 4.596787966 5.830604872 CORE 13 Si Si 0.0000 13 Si -0.308970080 12.049674371 9.580077145 CORE 14 Si Si 0.0000 14 Si -10.796052270 12.037902717 9.582128583 CORE 15 Si Si 0.0000 15 Si -1.231344761 4.784679358 5.731133207 CORE 16 Si Si 0.0000 16 Si -9.967123981 4.710460740 8.870476552 CORE 17 Si Si 0.0000 17 Si -0.279279956 12.001809359 5.099100743 CORE 18 Si Si 0.0000 18 Si -11.002038930 12.032475855 5.084726374 CORE 19 Si Si 0.0000 19 Si -1.208131394 4.753587339 8.863967132 CORE 20 Si Si 0.0000 20 Ti -9.049831404 7.672627023 5.019141361 CORE 21 Ti Ti 0.0000 21 Si 0.671205640 14.943614820 8.915928532 CORE 22 Si Si 0.0000 22 Si -2.270563179 16.319926507 5.108163753 CORE 23 Si Si 0.0000 23 Si -11.897486237 9.149327002 8.811220439 CORE 24 Si Si 0.0000 24 Si 0.745936889 9.115919110 5.738949166 CORE 25 Si Si 0.0000 25 Si -8.992146794 16.299265859 9.533060208 CORE 26 Si Si 0.0000 26 Si -11.826797500 14.941251379 5.723903612 CORE 27 Si Si 0.0000 27 Si -2.197714433 7.698617954 9.539473548 CORE 28 Si Si 0.0000 28 Si -12.042014814 9.208724961 5.726756927 CORE 29 Si Si 0.0000 29 Si -2.229607481 16.297514035 9.555165411 CORE 30 Si Si 0.0000 30 Si 0.619769547 14.948284764 5.775609562 CORE 31 Si Si 0.0000 31 Si -9.056620885 7.652036863 9.226397011 CORE 32 Si Si 0.0000 32 Si -2.144916017 7.748637826 5.091461272 CORE 33 Si Si 0.0000 33 Si -11.872443097 14.935895150 8.846605790 CORE 34 Si Si 0.0000 34 Si -8.942268356 16.237660427 5.056562783 CORE 35 Si Si 0.0000 35 Si 0.649355366 9.135921149 8.869030116 CORE 36 Si Si 0.0000 36 O -15.231407826 7.755608651 3.368971222 CORE 37 O O 0.0000 37 O -5.616445840 14.965058621 7.402817850 CORE 38 O O 0.0000 38 O -15.213488446 16.110695100 3.608859028 CORE 39 O O 0.0000 39 O -5.542642949 9.067774452 7.297683068 CORE 40 O O 0.0000 40 O -10.608034256 4.391212282 7.402265033 CORE 41 O O 0.0000 41 O -0.740505304 11.985014312 3.539377751 CORE 42 O O 0.0000 42 O -10.424131499 12.080428654 3.560635587 CORE 43 O O 0.0000 43 O -0.787332325 4.714155526 7.292568127 CORE 44 O O 0.0000 44 O -13.155124071 6.136118842 3.486125102 CORE 45 O O 0.0000 45 O -3.527028827 13.346395498 7.269986028 CORE 46 O O 0.0000 46 O -7.599569947 10.763854104 7.244186227 CORE 47 O O 0.0000 47 O 2.112788185 17.942722769 3.519624091 CORE 48 O O 0.0000 48 O -3.495616700 10.703371581 7.410121615 CORE 49 O O 0.0000 49 O -13.304486305 17.916198204 3.246468707 CORE 50 O O 0.0000 50 O 1.908176933 6.154899952 3.489664056 CORE 51 O O 0.0000 51 O -7.750925917 13.380368304 7.152368107 CORE 52 O O 0.0000 52 O -11.597250493 4.558274085 4.970014106 CORE 53 O O 0.0000 53 O -1.673744695 12.135093243 8.697886979 CORE 54 O O 0.0000 54 O 0.098423228 4.727471143 4.793527889 CORE 55 O O 0.0000 55 O -9.392459643 12.033956249 8.748569758 CORE 56 O O 0.0000 56 O -1.615282220 11.952793906 6.030206151 CORE 57 O O 0.0000 57 O -11.170381497 4.836107262 9.954414677 CORE 58 O O 0.0000 58 O -9.742674474 11.940147565 6.116465069 CORE 59 O O 0.0000 59 O 0.171037960 4.681571293 9.730185337 CORE 60 O O 0.0000 60 O -10.542433397 8.598492180 5.475464837 CORE 61 O O 0.0000 61 O -0.786890855 15.620751171 9.203939746 CORE 62 O O 0.0000 62 O -10.482374971 8.342325079 8.834391262 CORE 63 O O 0.0000 63 O -0.850309766 15.619256362 5.516618056 CORE 64 O O 0.0000 64 O -0.695024056 8.432975061 5.389271265 CORE 65 O O 0.0000 65 O -10.483247711 15.723239979 9.202051406 CORE 66 O O 0.0000 66 O -10.278845648 15.416129165 5.507785544 CORE 67 O O 0.0000 67 O -0.795645783 8.452262128 9.172012484 CORE 68 O O 0.0000 68 O -12.467285550 9.103478900 7.291781921 CORE 69 O O 0.0000 69 O -2.558819953 16.075663387 3.525637063 CORE 70 O O 0.0000 70 O -8.861471414 7.753693941 3.228958643 CORE 71 O O 0.0000 71 O 1.017040986 15.119412100 7.339369248 CORE 72 O O 0.0000 72 O -2.483849686 7.896833616 3.515060217 CORE 73 O O 0.0000 73 O -12.235564677 15.163460234 7.278856575 CORE 74 O O 0.0000 74 O 1.061683556 8.899661958 7.315398222 CORE 75 O O 0.0000 75 O -8.630797253 15.995363622 3.480928612 CORE 76 O O 0.0000 76 O -13.160459626 8.400588597 4.872508830 CORE 77 O O 0.0000 77 O -3.406408153 15.609141827 8.675505406 CORE 78 O O 0.0000 78 O 1.740883195 15.682070902 4.864974871 CORE 79 O O 0.0000 79 O -7.863072827 8.405846518 8.439532273 CORE 80 O O 0.0000 80 O -3.307492456 8.465849175 5.974351605 CORE 81 O O 0.0000 81 O -13.102888175 15.526302761 9.725535122 CORE 82 O O 0.0000 82 O -7.644648214 15.724458025 5.897434502 CORE 83 O O 0.0000 83 O 1.778942008 8.464560209 9.810296787 CORE 84 O O 0.0000 84 O -7.646690062 8.525626817 5.796144255 CORE 85 O O 0.0000 85 O 1.827459279 15.660222623 9.799212159 CORE 86 O O 0.0000 86 O -3.477859936 15.680016225 5.992228337 CORE 87 O O 0.0000 87 O -12.966010465 8.458659102 9.814399740 CORE 88 O O 0.0000 88 O 1.932309228 8.418275196 4.876312667 CORE 89 O O 0.0000 89 O -7.886574669 15.615211874 8.568266696 CORE 90 O O 0.0000 90 O -12.830908258 15.780156728 4.764212109 CORE 91 O O 0.0000 91 O -3.378353047 8.345890421 8.643400135 CORE 92 O O 0.0000 92 O -9.434171844 6.005507883 5.617743073 CORE 93 O O 0.0000 93 O 0.618231715 13.360387743 9.306179069 CORE 94 O O 0.0000 94 O -2.203676975 17.932204333 5.383409448 CORE 95 O O 0.0000 95 O -11.671517949 10.704130373 9.254761357 CORE 96 O O 0.0000 96 O 0.675875141 10.713378438 5.396560044 CORE 97 O O 0.0000 97 O -8.960022426 17.914770857 9.302014726 CORE 98 O O 0.0000 98 O -11.905175401 13.355487019 5.375796374 CORE 99 O O 0.0000 99 O -2.042858262 6.110092595 9.197906538 CORE 100 O O 0.0000 100 O -12.016297923 10.772682989 5.263593802 CORE 101 O O 0.0000 101 O -2.170085209 17.895035490 9.210601994 CORE 102 O O 0.0000 102 O 0.565809338 13.361166860 5.400371336 CORE 103 O O 0.0000 103 O -9.080920799 6.073918514 8.799911551 CORE 104 O O 0.0000 104 O -2.072968879 6.158272857 5.476286493 CORE 105 O O 0.0000 105 O -11.679617022 13.347843459 9.171983577 CORE 106 O O 0.0000 106 O -9.197293814 17.820423350 5.351420112 CORE 107 O O 0.0000 107 O 0.561091919 10.736070411 9.174017595 CORE 108 O O 0.0000 108 O2 12.640258358 5.736270648 4.888165776 CORE 109 O2 O2 0.0000 109 O2 13.614042959 7.483193254 2.926809949 CORE 110 O2 O2 0.0000 110 H 13.192878051 6.699013325 3.343945227 CORE 111 H H 0.0000 111 H 13.345379843 8.222774550 3.505319328 CORE 112 H H 0.0000 112 C 13.912200483 5.717076267 5.598278031 CORE 113 C C 0.0000 113 C 12.992029111 4.562228048 5.669267743 CORE 114 C C 0.0000 114 H 13.216134333 3.648196096 5.080570551 CORE 115 H H 0.0000 115 H 12.394972957 4.418374411 6.592782289 CORE 116 H H 0.0000 116 H 14.802837418 5.661282715 4.942071048 CORE 117 H H 0.0000 117 H 13.968902272 6.417658626 6.455100182 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.308170172 4.758830124 3.513192797 CORE 1 Si Si 0.0000 1 Si -2.579333885 12.035769047 7.345067586 CORE 2 Si Si 0.0000 2 Si 1.074283548 4.773835293 3.481747149 CORE 3 Si Si 0.0000 3 Si -8.623386943 12.019966743 7.308142078 CORE 4 Si Si 0.0000 4 Si -13.624335336 7.693625985 11.087847485 CORE 5 Si Si 0.0000 5 Si -4.003841116 14.900707758 7.332374412 CORE 6 Si Si 0.0000 6 Si -7.152216655 9.193583140 7.204691839 CORE 7 Si Si 0.0000 7 Si 2.432008110 16.343923447 3.544723495 CORE 8 Si Si 0.0000 8 Si -13.616749899 16.328596685 3.443229070 CORE 9 Si Si 0.0000 9 Si -3.930418112 9.139859400 7.332807110 CORE 10 Si Si 0.0000 10 Si -7.225393136 14.911523426 7.257668726 CORE 11 Si Si 0.0000 11 Si 2.409393057 7.701346521 3.489596884 CORE 12 Si Si 0.0000 12 Si -10.209694359 4.592871625 5.831324059 CORE 13 Si Si 0.0000 13 Si -0.308389279 12.050921967 9.579851059 CORE 14 Si Si 0.0000 14 Si -10.800285881 12.038880181 9.582075181 CORE 15 Si Si 0.0000 15 Si -1.230515705 4.785985334 5.729715754 CORE 16 Si Si 0.0000 16 Si -9.967094344 4.708697961 8.870718081 CORE 17 Si Si 0.0000 17 Si -0.278382005 12.003141857 5.097910822 CORE 18 Si Si 0.0000 18 Si -11.001823391 12.033801003 5.085088934 CORE 19 Si Si 0.0000 19 Si -1.207285980 4.756605497 8.862634576 CORE 20 Si Si 0.0000 20 Ti -9.048129800 7.668555724 5.017585001 CORE 21 Ti Ti 0.0000 21 Si 0.672566808 14.944436028 8.915156704 CORE 22 Si Si 0.0000 22 Si -2.269385219 16.320491853 5.109206855 CORE 23 Si Si 0.0000 23 Si -11.895535608 9.148464280 8.811445309 CORE 24 Si Si 0.0000 24 Si 0.747030365 9.117414928 5.738500492 CORE 25 Si Si 0.0000 25 Si -8.994216547 16.298414668 9.534295544 CORE 26 Si Si 0.0000 26 Si -11.827917149 14.940649564 5.724358296 CORE 27 Si Si 0.0000 27 Si -2.197946522 7.701075812 9.539201134 CORE 28 Si Si 0.0000 28 Si -12.039589230 9.208592345 5.727032004 CORE 29 Si Si 0.0000 29 Si -2.228450306 16.298464831 9.553625482 CORE 30 Si Si 0.0000 30 Si 0.620851477 14.949118657 5.775029131 CORE 31 Si Si 0.0000 31 Si -9.054732801 7.649716234 9.226130530 CORE 32 Si Si 0.0000 32 Si -2.144486286 7.749673669 5.091021803 CORE 33 Si Si 0.0000 33 Si -11.875522804 14.937832923 8.846804110 CORE 34 Si Si 0.0000 34 Si -8.943311411 16.235746870 5.057983431 CORE 35 Si Si 0.0000 35 Si 0.650591059 9.136907261 8.870310030 CORE 36 Si Si 0.0000 36 O -15.231172273 7.756747992 3.370067422 CORE 37 O O 0.0000 37 O -5.616440259 14.963532100 7.403227042 CORE 38 O O 0.0000 38 O -15.213286955 16.112013040 3.610857368 CORE 39 O O 0.0000 39 O -5.542838474 9.070928253 7.297099214 CORE 40 O O 0.0000 40 O -10.604611418 4.387614939 7.401821380 CORE 41 O O 0.0000 41 O -0.742733247 11.983797563 3.538478654 CORE 42 O O 0.0000 42 O -10.424689014 12.080900736 3.560265724 CORE 43 O O 0.0000 43 O -0.786290424 4.717783428 7.291786257 CORE 44 O O 0.0000 44 O -13.150823105 6.137298256 3.488012833 CORE 45 O O 0.0000 45 O -3.526733808 13.347288347 7.268773437 CORE 46 O O 0.0000 46 O -7.603760835 10.761529583 7.248929175 CORE 47 O O 0.0000 47 O 2.113927078 17.944519422 3.517871540 CORE 48 O O 0.0000 48 O -3.494606168 10.705378112 7.408690089 CORE 49 O O 0.0000 49 O -13.304104301 17.917860656 3.245681360 CORE 50 O O 0.0000 50 O 1.908118622 6.155151345 3.490452163 CORE 51 O O 0.0000 51 O -7.751337751 13.378747366 7.152047767 CORE 52 O O 0.0000 52 O -11.595211532 4.556880900 4.970007564 CORE 53 O O 0.0000 53 O -1.673206809 12.136531835 8.696684126 CORE 54 O O 0.0000 54 O 0.098701889 4.727352222 4.792642713 CORE 55 O O 0.0000 55 O -9.394290378 12.033351118 8.750526943 CORE 56 O O 0.0000 56 O -1.614794756 11.954353004 6.029964394 CORE 57 O O 0.0000 57 O -11.169098847 4.836450621 9.955571887 CORE 58 O O 0.0000 58 O -9.742167764 11.939891560 6.119050382 CORE 59 O O 0.0000 59 O 0.170480253 4.681901246 9.729922432 CORE 60 O O 0.0000 60 O -10.538509623 8.599961763 5.473362127 CORE 61 O O 0.0000 61 O -0.787268241 15.620743675 9.203452656 CORE 62 O O 0.0000 62 O -10.478567049 8.344742143 8.837338297 CORE 63 O O 0.0000 63 O -0.849997234 15.620498913 5.516270710 CORE 64 O O 0.0000 64 O -0.693672318 8.432393858 5.387881883 CORE 65 O O 0.0000 65 O -10.487026381 15.728466476 9.202702888 CORE 66 O O 0.0000 66 O -10.276241859 15.410715277 5.508590616 CORE 67 O O 0.0000 67 O -0.794162989 8.452300760 9.174092297 CORE 68 O O 0.0000 68 O -12.463560187 9.097434223 7.291970200 CORE 69 O O 0.0000 69 O -2.555620544 16.078278798 3.525256246 CORE 70 O O 0.0000 70 O -8.860413155 7.752769235 3.229519904 CORE 71 O O 0.0000 71 O 1.016452295 15.119113571 7.339212463 CORE 72 O O 0.0000 72 O -2.487044091 7.898028887 3.514165228 CORE 73 O O 0.0000 73 O -12.235320464 15.161565704 7.279922346 CORE 74 O O 0.0000 74 O 1.057767288 8.901697176 7.316155140 CORE 75 O O 0.0000 75 O -8.631037233 15.992031655 3.481428482 CORE 76 O O 0.0000 76 O -13.157804646 8.401333695 4.871532292 CORE 77 O O 0.0000 77 O -3.405482682 15.608319466 8.675159430 CORE 78 O O 0.0000 78 O 1.740611077 15.683261848 4.864734331 CORE 79 O O 0.0000 79 O -7.860571611 8.403812742 8.438654400 CORE 80 O O 0.0000 80 O -3.308210663 8.468565633 5.973067583 CORE 81 O O 0.0000 81 O -13.104400027 15.526930522 9.726058194 CORE 82 O O 0.0000 82 O -7.645253263 15.724405123 5.900106080 CORE 83 O O 0.0000 83 O 1.779819753 8.464867819 9.809032696 CORE 84 O O 0.0000 84 O -7.645264232 8.524664201 5.796868843 CORE 85 O O 0.0000 85 O 1.826677565 15.662597020 9.798205192 CORE 86 O O 0.0000 86 O -3.477698282 15.678981679 5.991617097 CORE 87 O O 0.0000 87 O -12.966846833 8.460624552 9.813277904 CORE 88 O O 0.0000 88 O 1.933455049 8.421466475 4.876510227 CORE 89 O O 0.0000 89 O -7.889678432 15.609291019 8.569711611 CORE 90 O O 0.0000 90 O -12.832026752 15.777933975 4.763688961 CORE 91 O O 0.0000 91 O -3.376886226 8.350169869 8.641412750 CORE 92 O O 0.0000 92 O -9.436779097 6.004432543 5.619899948 CORE 93 O O 0.0000 93 O 0.619397550 13.362158882 9.306826139 CORE 94 O O 0.0000 94 O -2.203564010 17.932036113 5.384072417 CORE 95 O O 0.0000 95 O -11.671780060 10.704244393 9.254886800 CORE 96 O O 0.0000 96 O 0.676270231 10.714952672 5.396580279 CORE 97 O O 0.0000 97 O -8.957472906 17.913815159 9.302180031 CORE 98 O O 0.0000 98 O -11.908150610 13.353824855 5.377392900 CORE 99 O O 0.0000 99 O -2.042451432 6.112103883 9.196398940 CORE 100 O O 0.0000 100 O -12.015911107 10.774386379 5.264676309 CORE 101 O O 0.0000 101 O -2.169699163 17.895279820 9.207922428 CORE 102 O O 0.0000 102 O 0.566409191 13.363255411 5.397935885 CORE 103 O O 0.0000 103 O -9.083812680 6.074976123 8.798975178 CORE 104 O O 0.0000 104 O -2.073606451 6.158077249 5.474745423 CORE 105 O O 0.0000 105 O -11.682119008 13.349787719 9.172643959 CORE 106 O O 0.0000 106 O -9.196815780 17.818395340 5.350023046 CORE 107 O O 0.0000 107 O 0.562607428 10.737381288 9.174433253 CORE 108 O O 0.0000 108 O2 12.640001828 5.743032314 4.885715111 CORE 109 O2 O2 0.0000 109 O2 13.610183655 7.479418610 2.921233783 CORE 110 O2 O2 0.0000 110 H 13.203175816 6.695542111 3.352766784 CORE 111 H H 0.0000 111 H 13.347648392 8.220768018 3.499647919 CORE 112 H H 0.0000 112 C 13.913637474 5.711498915 5.604710389 CORE 113 C C 0.0000 113 C 12.985227506 4.561729154 5.663478271 CORE 114 C C 0.0000 114 H 13.203885940 3.652668558 5.072229847 CORE 115 H H 0.0000 115 H 12.384776996 4.414786293 6.585305460 CORE 116 H H 0.0000 116 H 14.800174741 5.656215501 4.946309105 CORE 117 H H 0.0000 117 H 13.972478104 6.404645430 6.468519693 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.308277942 4.758831854 3.513117410 CORE 1 Si Si 0.0000 1 Si -2.579386808 12.035659351 7.345132932 CORE 2 Si Si 0.0000 2 Si 1.074210226 4.773787436 3.481773926 CORE 3 Si Si 0.0000 3 Si -8.623285139 12.020003068 7.307960038 CORE 4 Si Si 0.0000 4 Si -13.624371515 7.693557948 11.087904920 CORE 5 Si Si 0.0000 5 Si -4.003851123 14.900737741 7.332400809 CORE 6 Si Si 0.0000 6 Si -7.152236477 9.193611105 7.204616755 CORE 7 Si Si 0.0000 7 Si 2.431944796 16.343855121 3.544732243 CORE 8 Si Si 0.0000 8 Si -13.616774725 16.328511350 3.443186470 CORE 9 Si Si 0.0000 9 Si -3.930382702 9.139722460 7.332897180 CORE 10 Si Si 0.0000 10 Si -7.225389287 14.911656186 7.257590143 CORE 11 Si Si 0.0000 11 Si 2.409391517 7.701288141 3.489543101 CORE 12 Si Si 0.0000 12 Si -10.209713989 4.593086693 5.831284577 CORE 13 Si Si 0.0000 13 Si -0.308421225 12.050853497 9.579863458 CORE 14 Si Si 0.0000 14 Si -10.800053407 12.038826558 9.582078147 CORE 15 Si Si 0.0000 15 Si -1.230561315 4.785913549 5.729793576 CORE 16 Si Si 0.0000 16 Si -9.967096076 4.708794828 8.870704844 CORE 17 Si Si 0.0000 17 Si -0.278431271 12.003068631 5.097976168 CORE 18 Si Si 0.0000 18 Si -11.001835130 12.033728208 5.085069079 CORE 19 Si Si 0.0000 19 Si -1.207332360 4.756439728 8.862707758 CORE 20 Si Si 0.0000 20 Ti -9.048223328 7.668779440 5.017670506 CORE 21 Ti Ti 0.0000 21 Si 0.672492139 14.944390910 8.915199152 CORE 22 Si Si 0.0000 22 Si -2.269449881 16.320460861 5.109149496 CORE 23 Si Si 0.0000 23 Si -11.895642800 9.148511704 8.811432985 CORE 24 Si Si 0.0000 24 Si 0.746970322 9.117332764 5.738525140 CORE 25 Si Si 0.0000 25 Si -8.994102811 16.298461372 9.534227687 CORE 26 Si Si 0.0000 26 Si -11.827855566 14.940682718 5.724333344 CORE 27 Si Si 0.0000 27 Si -2.197933628 7.700940746 9.539216120 CORE 28 Si Si 0.0000 28 Si -12.039722402 9.208599696 5.727016942 CORE 29 Si Si 0.0000 29 Si -2.228513813 16.298412506 9.553710074 CORE 30 Si Si 0.0000 30 Si 0.620792011 14.949072818 5.775061006 CORE 31 Si Si 0.0000 31 Si -9.054836529 7.649843804 9.226145136 CORE 32 Si Si 0.0000 32 Si -2.144509957 7.749616731 5.091045918 CORE 33 Si Si 0.0000 33 Si -11.875353645 14.937726543 8.846793231 CORE 34 Si Si 0.0000 34 Si -8.943254063 16.235852098 5.057905381 CORE 35 Si Si 0.0000 35 Si 0.650523126 9.136853062 8.870239663 CORE 36 Si Si 0.0000 36 O -15.231185167 7.756685432 3.370007173 CORE 37 O O 0.0000 37 O -5.616440452 14.963615994 7.403204524 CORE 38 O O 0.0000 38 O -15.213298117 16.111940678 3.610747596 CORE 39 O O 0.0000 39 O -5.542827697 9.070754988 7.297131316 CORE 40 O O 0.0000 40 O -10.604799438 4.387812565 7.401845723 CORE 41 O O 0.0000 41 O -0.742610852 11.983864304 3.538528025 CORE 42 O O 0.0000 42 O -10.424658415 12.080874790 3.560286035 CORE 43 O O 0.0000 43 O -0.786347773 4.717584217 7.291829162 CORE 44 O O 0.0000 44 O -13.151059428 6.137233390 3.487909147 CORE 45 O O 0.0000 45 O -3.526750166 13.347239337 7.268840000 CORE 46 O O 0.0000 46 O -7.603530670 10.761657153 7.248668704 CORE 47 O O 0.0000 47 O 2.113864533 17.944420681 3.517967847 CORE 48 O O 0.0000 48 O -3.494661785 10.705267840 7.408768671 CORE 49 O O 0.0000 49 O -13.304125277 17.917769267 3.245724645 CORE 50 O O 0.0000 50 O 1.908121894 6.155137507 3.490408878 CORE 51 O O 0.0000 51 O -7.751315042 13.378836449 7.152065340 CORE 52 O O 0.0000 52 O -11.595323536 4.556957442 4.970007944 CORE 53 O O 0.0000 53 O -1.673236446 12.136452842 8.696750157 CORE 54 O O 0.0000 54 O 0.098686494 4.727358708 4.792691399 CORE 55 O O 0.0000 55 O -9.394189922 12.033384416 8.750419377 CORE 56 O O 0.0000 56 O -1.614821506 11.954267381 6.029977706 CORE 57 O O 0.0000 57 O -11.169169283 4.836431738 9.955508366 CORE 58 O O 0.0000 58 O -9.742195476 11.939905542 6.118908355 CORE 59 O O 0.0000 59 O 0.170510852 4.681883083 9.729936886 CORE 60 O O 0.0000 60 O -10.538725162 8.599881040 5.473477604 CORE 61 O O 0.0000 61 O -0.787247649 15.620744107 9.203479357 CORE 62 O O 0.0000 62 O -10.478776238 8.344609383 8.837176416 CORE 63 O O 0.0000 63 O -0.850014362 15.620430731 5.516289804 CORE 64 O O 0.0000 64 O -0.693746410 8.432425859 5.387958260 CORE 65 O O 0.0000 65 O -10.486818732 15.728179478 9.202667058 CORE 66 O O 0.0000 66 O -10.276384846 15.411012653 5.508546342 CORE 67 O O 0.0000 67 O -0.794244394 8.452298597 9.173978037 CORE 68 O O 0.0000 68 O -12.463764950 9.097766339 7.291959854 CORE 69 O O 0.0000 69 O -2.555796247 16.078135083 3.525277166 CORE 70 O O 0.0000 70 O -8.860471274 7.752820119 3.229489094 CORE 71 O O 0.0000 71 O 1.016484626 15.119130004 7.339221059 CORE 72 O O 0.0000 72 O -2.486868580 7.897963299 3.514214371 CORE 73 O O 0.0000 73 O -12.235333935 15.161669779 7.279863771 CORE 74 O O 0.0000 74 O 1.057982442 8.901585317 7.316113529 CORE 75 O O 0.0000 75 O -8.631024147 15.992214722 3.481401020 CORE 76 O O 0.0000 76 O -13.157950520 8.401292757 4.871585999 CORE 77 O O 0.0000 77 O -3.405533488 15.608364584 8.675178448 CORE 78 O O 0.0000 78 O 1.740626088 15.683196405 4.864747491 CORE 79 O O 0.0000 79 O -7.860709017 8.403924456 8.438702630 CORE 80 O O 0.0000 80 O -3.308171212 8.468416440 5.973138178 CORE 81 O O 0.0000 81 O -13.104316891 15.526895927 9.726029439 CORE 82 O O 0.0000 82 O -7.645219970 15.724408006 5.899959337 CORE 83 O O 0.0000 83 O 1.779771641 8.464850954 9.809102074 CORE 84 O O 0.0000 84 O -7.645342558 8.524717103 5.796829057 CORE 85 O O 0.0000 85 O 1.826720673 15.662466566 9.798260497 CORE 86 O O 0.0000 86 O -3.477707134 15.679038473 5.991650721 CORE 87 O O 0.0000 87 O -12.966800839 8.460516585 9.813339522 CORE 88 O O 0.0000 88 O 1.933392119 8.421291192 4.876499348 CORE 89 O O 0.0000 89 O -7.889507925 15.609616360 8.569632191 CORE 90 O O 0.0000 90 O -12.831965362 15.778056068 4.763717716 CORE 91 O O 0.0000 91 O -3.376966861 8.349934909 8.641521914 CORE 92 O O 0.0000 92 O -9.436635918 6.004491644 5.619781503 CORE 93 O O 0.0000 93 O 0.619333466 13.362061583 9.306790613 CORE 94 O O 0.0000 94 O -2.203570168 17.932045338 5.384036055 CORE 95 O O 0.0000 95 O -11.671765626 10.704238195 9.254879877 CORE 96 O O 0.0000 96 O 0.676248485 10.714866327 5.396579138 CORE 97 O O 0.0000 97 O -8.957613007 17.913867629 9.302170902 CORE 98 O O 0.0000 98 O -11.907987224 13.353916245 5.377305189 CORE 99 O O 0.0000 99 O -2.042473755 6.111993322 9.196481782 CORE 100 O O 0.0000 100 O -12.015932468 10.774292827 5.264616821 CORE 101 O O 0.0000 101 O -2.169720332 17.895266415 9.208069628 CORE 102 O O 0.0000 102 O 0.566376283 13.363140670 5.398069620 CORE 103 O O 0.0000 103 O -9.083653720 6.074918032 8.799026603 CORE 104 O O 0.0000 104 O -2.073571426 6.158088060 5.474830091 CORE 105 O O 0.0000 105 O -11.681981601 13.349680906 9.172607749 CORE 106 O O 0.0000 106 O -9.196841952 17.818506766 5.350099803 CORE 107 O O 0.0000 107 O 0.562524099 10.737309214 9.174410431 CORE 108 O O 0.0000 108 O2 12.640016069 5.742660847 4.885849683 CORE 109 O2 O2 0.0000 109 O2 13.610395730 7.479626038 2.921540126 CORE 110 O2 O2 0.0000 110 H 13.202610026 6.695732818 3.352282205 CORE 111 H H 0.0000 111 H 13.347523879 8.220878147 3.499959511 CORE 112 H H 0.0000 112 C 13.913558379 5.711805229 5.604357034 CORE 113 C C 0.0000 113 C 12.985601235 4.561756542 5.663796328 CORE 114 C C 0.0000 114 H 13.204558730 3.652422787 5.072688029 CORE 115 H H 0.0000 115 H 12.385337205 4.414983343 6.585716174 CORE 116 H H 0.0000 116 H 14.800321000 5.656493849 4.946076248 CORE 117 H H 0.0000 117 H 13.972281617 6.405360257 6.467782477 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.306818049 4.759450246 3.513690766 CORE 1 Si Si 0.0000 1 Si -2.578570068 12.036934191 7.344180204 CORE 2 Si Si 0.0000 2 Si 1.075079118 4.773866285 3.481124118 CORE 3 Si Si 0.0000 3 Si -8.624911112 12.019961266 7.310579507 CORE 4 Si Si 0.0000 4 Si -13.623131973 7.694726407 11.087221335 CORE 5 Si Si 0.0000 5 Si -4.003406189 14.900694641 7.331999072 CORE 6 Si Si 0.0000 6 Si -7.151602561 9.193811181 7.206073157 CORE 7 Si Si 0.0000 7 Si 2.431776406 16.345478365 3.544553473 CORE 8 Si Si 0.0000 8 Si -13.616830149 16.329756063 3.443822662 CORE 9 Si Si 0.0000 9 Si -3.930717750 9.142431423 7.331466414 CORE 10 Si Si 0.0000 10 Si -7.225596936 14.909264925 7.259261069 CORE 11 Si Si 0.0000 11 Si 2.409550478 7.702551881 3.490256201 CORE 12 Si Si 0.0000 12 Si -10.208697491 4.589618507 5.832131184 CORE 13 Si Si 0.0000 13 Si -0.308239556 12.051844222 9.579487281 CORE 14 Si Si 0.0000 14 Si -10.803002828 12.039993575 9.582686192 CORE 15 Si Si 0.0000 15 Si -1.230865956 4.785774158 5.729160351 CORE 16 Si Si 0.0000 16 Si -9.966811257 4.707298434 8.870533530 CORE 17 Si Si 0.0000 17 Si -0.278801344 12.004076509 5.096323424 CORE 18 Si Si 0.0000 18 Si -11.000387362 12.033781110 5.085676363 CORE 19 Si Si 0.0000 19 Si -1.207304455 4.757367749 8.861475464 CORE 20 Si Si 0.0000 20 Ti -9.043540742 7.664849982 5.015558514 CORE 21 Ti Ti 0.0000 21 Si 0.672479823 14.946189005 8.915399983 CORE 22 Si Si 0.0000 22 Si -2.268821739 16.320771211 5.108818583 CORE 23 Si Si 0.0000 23 Si -11.894688462 9.149365057 8.811297424 CORE 24 Si Si 0.0000 24 Si 0.747114656 9.119117453 5.738492961 CORE 25 Si Si 0.0000 25 Si -8.994417460 16.297288012 9.535417760 CORE 26 Si Si 0.0000 26 Si -11.828168483 14.940692952 5.725458604 CORE 27 Si Si 0.0000 27 Si -2.198280030 7.703300871 9.537607878 CORE 28 Si Si 0.0000 28 Si -12.038352574 9.208411584 5.726601588 CORE 29 Si Si 0.0000 29 Si -2.228048480 16.299128486 9.553201152 CORE 30 Si Si 0.0000 30 Si 0.620587634 14.950492237 5.774073893 CORE 31 Si Si 0.0000 31 Si -9.051752203 7.649432119 9.227210527 CORE 32 Si Si 0.0000 32 Si -2.145665786 7.750693512 5.091191444 CORE 33 Si Si 0.0000 33 Si -11.877241921 14.938809378 8.847721388 CORE 34 Si Si 0.0000 34 Si -8.943273500 16.233092684 5.058831636 CORE 35 Si Si 0.0000 35 Si 0.650890697 9.138275509 8.870881332 CORE 36 Si Si 0.0000 36 O -15.230648821 7.757768411 3.371084202 CORE 37 O O 0.0000 37 O -5.616369632 14.962293730 7.402505345 CORE 38 O O 0.0000 38 O -15.212946904 16.113723925 3.612454960 CORE 39 O O 0.0000 39 O -5.542201286 9.073289099 7.295890579 CORE 40 O O 0.0000 40 O -10.602525885 4.383756401 7.402784226 CORE 41 O O 0.0000 41 O -0.744216618 11.982604311 3.537814620 CORE 42 O O 0.0000 42 O -10.425770173 12.081621185 3.560202356 CORE 43 O O 0.0000 43 O -0.784916555 4.721147252 7.290493639 CORE 44 O O 0.0000 44 O -13.147607146 6.139023556 3.490155558 CORE 45 O O 0.0000 45 O -3.526961087 13.347763457 7.267147318 CORE 46 O O 0.0000 46 O -7.607564522 10.759479663 7.253513512 CORE 47 O O 0.0000 47 O 2.115479344 17.944861917 3.516360595 CORE 48 O O 0.0000 48 O -3.493582935 10.706615906 7.407510666 CORE 49 O O 0.0000 49 O -13.304547118 17.918558906 3.246236915 CORE 50 O O 0.0000 50 O 1.908763315 6.156654226 3.491173480 CORE 51 O O 0.0000 51 O -7.751238256 13.376895793 7.152176481 CORE 52 O O 0.0000 52 O -11.593914064 4.555495932 4.970624585 CORE 53 O O 0.0000 53 O -1.671895100 12.137869090 8.695706066 CORE 54 O O 0.0000 54 O 0.099272875 4.727203029 4.791865484 CORE 55 O O 0.0000 55 O -9.396659769 12.033108518 8.752862891 CORE 56 O O 0.0000 56 O -1.613259425 11.956413592 6.029078153 CORE 57 O O 0.0000 57 O -11.167434001 4.836203985 9.956196972 CORE 58 O O 0.0000 58 O -9.742373681 11.938811031 6.119952446 CORE 59 O O 0.0000 59 O 0.170723312 4.682609875 9.730198117 CORE 60 O O 0.0000 60 O -10.537722136 8.601150546 5.470952541 CORE 61 O O 0.0000 61 O -0.786468052 15.620602699 9.202808933 CORE 62 O O 0.0000 62 O -10.475998285 8.347876772 8.839876750 CORE 63 O O 0.0000 63 O -0.848889710 15.621464268 5.516159949 CORE 64 O O 0.0000 64 O -0.692378314 8.432285171 5.386175508 CORE 65 O O 0.0000 65 O -10.491171659 15.733094761 9.203444744 CORE 66 O O 0.0000 66 O -10.275852734 15.405860825 5.509064622 CORE 67 O O 0.0000 67 O -0.792676347 8.453017461 9.175343380 CORE 68 O O 0.0000 68 O -12.461806046 9.093581163 7.292338085 CORE 69 O O 0.0000 69 O -2.553078530 16.081466329 3.525109351 CORE 70 O O 0.0000 70 O -8.860514959 7.752368361 3.228834493 CORE 71 O O 0.0000 71 O 1.016640699 15.118590748 7.338188455 CORE 72 O O 0.0000 72 O -2.490031039 7.899067036 3.514050815 CORE 73 O O 0.0000 73 O -12.235555440 15.160515158 7.280310390 CORE 74 O O 0.0000 74 O 1.054318855 8.903874378 7.315663182 CORE 75 O O 0.0000 75 O -8.632077594 15.989508210 3.482968031 CORE 76 O O 0.0000 76 O -13.156344946 8.401264648 4.869336012 CORE 77 O O 0.0000 77 O -3.404272199 15.607476780 8.674765908 CORE 78 O O 0.0000 78 O 1.741481893 15.684630095 4.863917087 CORE 79 O O 0.0000 79 O -7.858489927 8.400019071 8.438949789 CORE 80 O O 0.0000 80 O -3.309064160 8.470101091 5.972359960 CORE 81 O O 0.0000 81 O -13.106707258 15.528072170 9.726970299 CORE 82 O O 0.0000 82 O -7.646649263 15.723978879 5.902941823 CORE 83 O O 0.0000 83 O 1.781571200 8.465250098 9.809106867 CORE 84 O O 0.0000 84 O -7.644801786 8.523323630 5.796813082 CORE 85 O O 0.0000 85 O 1.827722737 15.665340145 9.798050309 CORE 86 O O 0.0000 86 O -3.477145001 15.678722070 5.990627322 CORE 87 O O 0.0000 87 O -12.966182126 8.461265143 9.811761329 CORE 88 O O 0.0000 88 O 1.934074339 8.423920441 4.876511672 CORE 89 O O 0.0000 89 O -7.893250992 15.604134001 8.571493373 CORE 90 O O 0.0000 90 O -12.833061917 15.775764124 4.763300156 CORE 91 O O 0.0000 91 O -3.376884879 8.353267741 8.640013098 CORE 92 O O 0.0000 92 O -9.438890996 6.002514229 5.622071960 CORE 93 O O 0.0000 93 O 0.620705410 13.362865781 9.308259034 CORE 94 O O 0.0000 94 O -2.203122924 17.932193089 5.385680583 CORE 95 O O 0.0000 95 O -11.672344118 10.703613748 9.254586619 CORE 96 O O 0.0000 96 O 0.676451900 10.716078463 5.396352976 CORE 97 O O 0.0000 97 O -8.955976449 17.914288972 9.302784576 CORE 98 O O 0.0000 98 O -11.911724325 13.353525317 5.378600850 CORE 99 O O 0.0000 99 O -2.042619629 6.113849509 9.195610071 CORE 100 O O 0.0000 100 O -12.015706730 10.774760585 5.265433912 CORE 101 O O 0.0000 101 O -2.168496955 17.896111118 9.205286680 CORE 102 O O 0.0000 102 O 0.567087947 13.363867029 5.395313982 CORE 103 O O 0.0000 103 O -9.087131982 6.073528163 8.797117496 CORE 104 O O 0.0000 104 O -2.074265962 6.158483313 5.473049014 CORE 105 O O 0.0000 105 O -11.684742811 13.351614067 9.173257405 CORE 106 O O 0.0000 106 O -9.196581958 17.816158748 5.348511188 CORE 107 O O 0.0000 107 O 0.563515194 10.738052583 9.175110371 CORE 108 O O 0.0000 108 O2 12.641292176 5.747667374 4.884682584 CORE 109 O2 O2 0.0000 109 O2 13.605370975 7.476524850 2.913188923 CORE 110 O2 O2 0.0000 110 H 13.210559569 6.692685686 3.361485948 CORE 111 H H 0.0000 111 H 13.350063584 8.218617051 3.495957278 CORE 112 H H 0.0000 112 C 13.911725527 5.706278184 5.610461369 CORE 113 C C 0.0000 113 C 12.979649470 4.564051945 5.659692843 CORE 114 C C 0.0000 114 H 13.193956132 3.653813809 5.063100958 CORE 115 H H 0.0000 115 H 12.375078507 4.411708458 6.577781010 CORE 116 H H 0.0000 116 H 14.798657500 5.652313142 4.950060072 CORE 117 H H 0.0000 117 H 13.975656536 6.392434415 6.479516229 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.307021464 4.759364046 3.513610890 CORE 1 Si Si 0.0000 1 Si -2.578683804 12.036756601 7.344312874 CORE 2 Si Si 0.0000 2 Si 1.074958262 4.773855329 3.481214644 CORE 3 Si Si 0.0000 3 Si -8.624684603 12.019967031 7.310214741 CORE 4 Si Si 0.0000 4 Si -13.623304597 7.694563664 11.087316578 CORE 5 Si Si 0.0000 5 Si -4.003468156 14.900700695 7.332055061 CORE 6 Si Si 0.0000 6 Si -7.151690701 9.193783217 7.205870349 CORE 7 Si Si 0.0000 7 Si 2.431799884 16.345252342 3.544578349 CORE 8 Si Si 0.0000 8 Si -13.616822451 16.329582654 3.443734038 CORE 9 Si Si 0.0000 9 Si -3.930671178 9.142054189 7.331665647 CORE 10 Si Si 0.0000 10 Si -7.225567877 14.909597905 7.259028364 CORE 11 Si Si 0.0000 11 Si 2.409528346 7.702375877 3.490156851 CORE 12 Si Si 0.0000 12 Si -10.208838939 4.590101545 5.832013272 CORE 13 Si Si 0.0000 13 Si -0.308264767 12.051706273 9.579539695 CORE 14 Si Si 0.0000 14 Si -10.802592149 12.039830977 9.582601448 CORE 15 Si Si 0.0000 15 Si -1.230823618 4.785793618 5.729248519 CORE 16 Si Si 0.0000 16 Si -9.966850901 4.707506871 8.870557417 CORE 17 Si Si 0.0000 17 Si -0.278749768 12.003936110 5.096553619 CORE 18 Si Si 0.0000 18 Si -11.000589045 12.033773759 5.085591771 CORE 19 Si Si 0.0000 19 Si -1.207308304 4.757238593 8.861647083 CORE 20 Si Si 0.0000 20 Ti -9.044192940 7.665397310 5.015852685 CORE 21 Ti Ti 0.0000 21 Si 0.672481555 14.945938621 8.915371988 CORE 22 Si Si 0.0000 22 Si -2.268909301 16.320727967 5.108864682 CORE 23 Si Si 0.0000 23 Si -11.894821250 9.149246135 8.811316290 CORE 24 Si Si 0.0000 24 Si 0.747094642 9.118868799 5.738497450 CORE 25 Si Si 0.0000 25 Si -8.994373582 16.297451475 9.535251999 CORE 26 Si Si 0.0000 26 Si -11.828124990 14.940691511 5.725301895 CORE 27 Si Si 0.0000 27 Si -2.198231727 7.702972215 9.537831835 CORE 28 Si Si 0.0000 28 Si -12.038543288 9.208437819 5.726659403 CORE 29 Si Si 0.0000 29 Si -2.228113334 16.299028880 9.553272051 CORE 30 Si Si 0.0000 30 Si 0.620616116 14.950294467 5.774211356 CORE 31 Si Si 0.0000 31 Si -9.052181742 7.649489490 9.227062186 CORE 32 Si Si 0.0000 32 Si -2.145504709 7.750543599 5.091171208 CORE 33 Si Si 0.0000 33 Si -11.876979040 14.938658600 8.847592141 CORE 34 Si Si 0.0000 34 Si -8.943270805 16.233476981 5.058702617 CORE 35 Si Si 0.0000 35 Si 0.650839506 9.138077450 8.870791947 CORE 36 Si Si 0.0000 36 O -15.230723490 7.757617633 3.370934188 CORE 37 O O 0.0000 37 O -5.616379447 14.962477806 7.402602718 CORE 38 O O 0.0000 38 O -15.212995785 16.113475559 3.612217158 CORE 39 O O 0.0000 39 O -5.542288656 9.072936226 7.296063415 CORE 40 O O 0.0000 40 O -10.602842458 4.384321315 7.402653534 CORE 41 O O 0.0000 41 O -0.743992996 11.982779883 3.537913970 CORE 42 O O 0.0000 42 O -10.425615255 12.081517255 3.560213995 CORE 43 O O 0.0000 43 O -0.785115736 4.720650953 7.290679636 CORE 44 O O 0.0000 44 O -13.148087875 6.138774181 3.489842749 CORE 45 O O 0.0000 45 O -3.526931642 13.347690518 7.267383066 CORE 46 O O 0.0000 46 O -7.607002773 10.759782949 7.252838752 CORE 47 O O 0.0000 47 O 2.115254376 17.944800510 3.516584475 CORE 48 O O 0.0000 48 O -3.493733235 10.706428082 7.407685860 CORE 49 O O 0.0000 49 O -13.304488422 17.918448922 3.246165559 CORE 50 O O 0.0000 50 O 1.908674020 6.156443050 3.491066978 CORE 51 O O 0.0000 51 O -7.751248841 13.377166069 7.152161038 CORE 52 O O 0.0000 52 O -11.594110358 4.555699468 4.970538700 CORE 53 O O 0.0000 53 O -1.672081965 12.137671752 8.695851440 CORE 54 O O 0.0000 54 O 0.099191086 4.727224795 4.791980505 CORE 55 O O 0.0000 55 O -9.396315868 12.033146862 8.752522620 CORE 56 O O 0.0000 56 O -1.613477081 11.956114774 6.029203444 CORE 57 O O 0.0000 57 O -11.167675520 4.836235698 9.956101045 CORE 58 O O 0.0000 58 O -9.742348856 11.938963394 6.119807072 CORE 59 O O 0.0000 59 O 0.170693675 4.682508683 9.730161755 CORE 60 O O 0.0000 60 O -10.537861851 8.600973822 5.471304222 CORE 61 O O 0.0000 61 O -0.786576591 15.620622447 9.202902274 CORE 62 O O 0.0000 62 O -10.476385101 8.347421843 8.839500649 CORE 63 O O 0.0000 63 O -0.849046361 15.621320265 5.516178054 CORE 64 O O 0.0000 64 O -0.692568835 8.432304775 5.386423808 CORE 65 O O 0.0000 65 O -10.490565456 15.732410205 9.203336494 CORE 66 O O 0.0000 66 O -10.275926826 15.406578246 5.508992429 CORE 67 O O 0.0000 67 O -0.792894773 8.452917422 9.175153200 CORE 68 O O 0.0000 68 O -12.462078741 9.094164095 7.292285443 CORE 69 O O 0.0000 69 O -2.553457071 16.081002463 3.525132781 CORE 70 O O 0.0000 70 O -8.860508993 7.752431354 3.228925628 CORE 71 O O 0.0000 71 O 1.016618953 15.118665849 7.338332232 CORE 72 O O 0.0000 72 O -2.489590724 7.898913375 3.514073637 CORE 73 O O 0.0000 73 O -12.235524649 15.160676026 7.280248239 CORE 74 O O 0.0000 74 O 1.054829221 8.903555524 7.315725941 CORE 75 O O 0.0000 75 O -8.631930950 15.989885156 3.482749780 CORE 76 O O 0.0000 76 O -13.156568568 8.401268540 4.869649354 CORE 77 O O 0.0000 77 O -3.404447709 15.607600458 8.674823343 CORE 78 O O 0.0000 78 O 1.741362769 15.684430451 4.864032717 CORE 79 O O 0.0000 79 O -7.858798995 8.400562939 8.438915328 CORE 80 O O 0.0000 80 O -3.308939840 8.469866563 5.972468363 CORE 81 O O 0.0000 81 O -13.106374327 15.527908274 9.726839227 CORE 82 O O 0.0000 82 O -7.646450082 15.724038556 5.902526469 CORE 83 O O 0.0000 83 O 1.781320636 8.465194457 9.809106182 CORE 84 O O 0.0000 84 O -7.644877224 8.523517652 5.796815288 CORE 85 O O 0.0000 85 O 1.827583214 15.664939992 9.798079597 CORE 86 O O 0.0000 86 O -3.477223326 15.678766035 5.990769805 CORE 87 O O 0.0000 87 O -12.966268342 8.461160924 9.811981101 CORE 88 O O 0.0000 88 O 1.933979271 8.423554307 4.876509998 CORE 89 O O 0.0000 89 O -7.892729657 15.604897406 8.571234195 CORE 90 O O 0.0000 90 O -12.832909115 15.776083411 4.763358351 CORE 91 O O 0.0000 91 O -3.376896234 8.352803586 8.640223210 CORE 92 O O 0.0000 92 O -9.438576924 6.002789695 5.621752990 CORE 93 O O 0.0000 93 O 0.620514312 13.362753778 9.308054552 CORE 94 O O 0.0000 94 O -2.203185277 17.932172476 5.385451605 CORE 95 O O 0.0000 95 O -11.672263483 10.703700669 9.254627470 CORE 96 O O 0.0000 96 O 0.676423611 10.715909522 5.396384470 CORE 97 O O 0.0000 97 O -8.956204305 17.914230304 9.302699147 CORE 98 O O 0.0000 98 O -11.911203952 13.353579805 5.378420407 CORE 99 O O 0.0000 99 O -2.042599230 6.113591052 9.195731483 CORE 100 O O 0.0000 100 O -12.015738098 10.774695431 5.265320108 CORE 101 O O 0.0000 101 O -2.168667270 17.895993494 9.205674267 CORE 102 O O 0.0000 102 O 0.566988837 13.363765982 5.395697766 CORE 103 O O 0.0000 103 O -9.086647596 6.073721753 8.797383368 CORE 104 O O 0.0000 104 O -2.074169162 6.158428248 5.473297085 CORE 105 O O 0.0000 105 O -11.684358305 13.351344799 9.173166956 CORE 106 O O 0.0000 106 O -9.196618330 17.816485675 5.348732406 CORE 107 O O 0.0000 107 O 0.563377210 10.737948941 9.175012923 CORE 108 O O 0.0000 108 O2 12.641114549 5.746970133 4.884845150 CORE 109 O2 O2 0.0000 109 O2 13.606070708 7.476956716 2.914351990 CORE 110 O2 O2 0.0000 110 H 13.209452429 6.693110056 3.360204132 CORE 111 H H 0.0000 111 H 13.349709869 8.218931869 3.496514659 CORE 112 H H 0.0000 112 C 13.911980710 5.707047932 5.609611187 CORE 113 C C 0.0000 113 C 12.980478333 4.563732226 5.660264374 CORE 114 C C 0.0000 114 H 13.195432767 3.653620075 5.064436101 CORE 115 H H 0.0000 115 H 12.376507223 4.412164540 6.578886110 CORE 116 H H 0.0000 116 H 14.798889012 5.652895353 4.949505277 CORE 117 H H 0.0000 117 H 13.975186584 6.394234672 6.477882123 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.306576915 4.760075846 3.513511312 CORE 1 Si Si 0.0000 1 Si -2.577359970 12.037318343 7.343388749 CORE 2 Si Si 0.0000 2 Si 1.076069635 4.774372098 3.480876959 CORE 3 Si Si 0.0000 3 Si -8.626765518 12.019596140 7.312046787 CORE 4 Si Si 0.0000 4 Si -13.622203615 7.695324042 11.086177853 CORE 5 Si Si 0.0000 5 Si -4.003131954 14.901393035 7.331267485 CORE 6 Si Si 0.0000 6 Si -7.152217810 9.193092606 7.206160640 CORE 7 Si Si 0.0000 7 Si 2.432590258 16.346384476 3.544574393 CORE 8 Si Si 0.0000 8 Si -13.617811429 16.330232758 3.444742754 CORE 9 Si Si 0.0000 9 Si -3.930045730 9.144089262 7.330702193 CORE 10 Si Si 0.0000 10 Si -7.226232776 14.908012284 7.260468258 CORE 11 Si Si 0.0000 11 Si 2.410883933 7.703735620 3.490705407 CORE 12 Si Si 0.0000 12 Si -10.208308366 4.588164203 5.832977031 CORE 13 Si Si 0.0000 13 Si -0.307344299 12.052209780 9.579469176 CORE 14 Si Si 0.0000 14 Si -10.804882059 12.040630995 9.583773796 CORE 15 Si Si 0.0000 15 Si -1.230907717 4.786130490 5.728716394 CORE 16 Si Si 0.0000 16 Si -9.966785277 4.706261438 8.870715951 CORE 17 Si Si 0.0000 17 Si -0.278547315 12.004342894 5.094796504 CORE 18 Si Si 0.0000 18 Si -11.001390004 12.033921366 5.086636090 CORE 19 Si Si 0.0000 19 Si -1.206777732 4.757887400 8.860822005 CORE 20 Si Si 0.0000 20 Ti -9.041664782 7.664054288 5.017441529 CORE 21 Ti Ti 0.0000 21 Si 0.673578495 14.947159261 8.915968318 CORE 22 Si Si 0.0000 22 Si -2.268363333 16.321148877 5.108316354 CORE 23 Si Si 0.0000 23 Si -11.893934268 9.149708849 8.810739511 CORE 24 Si Si 0.0000 24 Si 0.746237874 9.120356544 5.737863312 CORE 25 Si Si 0.0000 25 Si -8.995349859 16.297557424 9.536566678 CORE 26 Si Si 0.0000 26 Si -11.828885343 14.939836861 5.725897160 CORE 27 Si Si 0.0000 27 Si -2.198388570 7.704750129 9.537048596 CORE 28 Si Si 0.0000 28 Si -12.038197848 9.207637080 5.725621778 CORE 29 Si Si 0.0000 29 Si -2.227478071 16.299828898 9.553041324 CORE 30 Si Si 0.0000 30 Si 0.621229825 14.950726621 5.772605852 CORE 31 Si Si 0.0000 31 Si -9.051955426 7.649230457 9.226989309 CORE 32 Si Si 0.0000 32 Si -2.146207712 7.751573100 5.090559208 CORE 33 Si Si 0.0000 33 Si -11.878554785 14.939973801 8.849189429 CORE 34 Si Si 0.0000 34 Si -8.943705925 16.230218384 5.059499245 CORE 35 Si Si 0.0000 35 Si 0.651706666 9.139030264 8.871078207 CORE 36 Si Si 0.0000 36 O -15.229675816 7.758403957 3.371652690 CORE 37 O O 0.0000 37 O -5.616236459 14.961694365 7.401452506 CORE 38 O O 0.0000 38 O -15.213554454 16.115532110 3.613296698 CORE 39 O O 0.0000 39 O -5.541612980 9.074722213 7.294532539 CORE 40 O O 0.0000 40 O -10.602303803 4.379560126 7.403645895 CORE 41 O O 0.0000 41 O -0.744979280 11.981791464 3.536798220 CORE 42 O O 0.0000 42 O -10.426981234 12.082554107 3.560690206 CORE 43 O O 0.0000 43 O -0.783721276 4.723451593 7.289898070 CORE 44 O O 0.0000 44 O -13.145796425 6.140363983 3.491626033 CORE 45 O O 0.0000 45 O -3.527392742 13.347318906 7.265643600 CORE 46 O O 0.0000 46 O -7.610352867 10.758640148 7.257226671 CORE 47 O O 0.0000 47 O 2.116471402 17.945701287 3.515368157 CORE 48 O O 0.0000 48 O -3.492640721 10.707792293 7.406796120 CORE 49 O O 0.0000 49 O -13.304827896 17.919540118 3.247946561 CORE 50 O O 0.0000 50 O 1.909125883 6.157537850 3.491658135 CORE 51 O O 0.0000 51 O -7.750472323 13.375016254 7.152796926 CORE 52 O O 0.0000 52 O -11.593637135 4.553842273 4.971467237 CORE 53 O O 0.0000 53 O -1.670939223 12.138996611 8.694438095 CORE 54 O O 0.0000 54 O 0.099269027 4.726829399 4.791714024 CORE 55 O O 0.0000 55 O -9.398153724 12.033630188 8.754325759 CORE 56 O O 0.0000 56 O -1.612629550 11.958573929 6.028865227 CORE 57 O O 0.0000 57 O -11.166234295 4.835262703 9.956656904 CORE 58 O O 0.0000 58 O -9.742299205 11.937601634 6.119911823 CORE 59 O O 0.0000 59 O 0.170604765 4.683477210 9.729944112 CORE 60 O O 0.0000 60 O -10.536310355 8.599905834 5.467704259 CORE 61 O O 0.0000 61 O -0.786643177 15.621301381 9.202650094 CORE 62 O O 0.0000 62 O -10.473802288 8.350849092 8.841834163 CORE 63 O O 0.0000 63 O -0.848794449 15.622631285 5.515928537 CORE 64 O O 0.0000 64 O -0.693000875 8.432132231 5.384448290 CORE 65 O O 0.0000 65 O -10.493155004 15.736736789 9.204655965 CORE 66 O O 0.0000 66 O -10.276234546 15.403122312 5.509067208 CORE 67 O O 0.0000 67 O -0.792725421 8.453800758 9.175906467 CORE 68 O O 0.0000 68 O -12.462114344 9.092573428 7.291257480 CORE 69 O O 0.0000 69 O -2.551874591 16.084149778 3.524483277 CORE 70 O O 0.0000 70 O -8.860519578 7.752084535 3.228067762 CORE 71 O O 0.0000 71 O 1.017171657 15.118018051 7.337613274 CORE 72 O O 0.0000 72 O -2.491995716 7.899875991 3.513527743 CORE 73 O O 0.0000 73 O -12.236342735 15.160817291 7.280561809 CORE 74 O O 0.0000 74 O 1.052197335 8.905753340 7.315252696 CORE 75 O O 0.0000 75 O -8.633369866 15.987893759 3.483815095 CORE 76 O O 0.0000 76 O -13.155493952 8.401777813 4.868295801 CORE 77 O O 0.0000 77 O -3.403066335 15.607044482 8.674647388 CORE 78 O O 0.0000 78 O 1.742009771 15.685447844 4.863802903 CORE 79 O O 0.0000 79 O -7.855338822 8.396267058 8.439169637 CORE 80 O O 0.0000 80 O -3.309990593 8.470386070 5.972247525 CORE 81 O O 0.0000 81 O -13.108643838 15.528848836 9.726878708 CORE 82 O O 0.0000 82 O -7.647700594 15.722855970 5.905704612 CORE 83 O O 0.0000 83 O 1.782711248 8.466450846 9.809011852 CORE 84 O O 0.0000 84 O -7.643973307 8.522812772 5.797604385 CORE 85 O O 0.0000 85 O 1.828845464 15.667074238 9.797132803 CORE 86 O O 0.0000 86 O -3.476533986 15.679096420 5.989766870 CORE 87 O O 0.0000 87 O -12.965147539 8.460158956 9.810943021 CORE 88 O O 0.0000 88 O 1.934057596 8.425361915 4.876620151 CORE 89 O O 0.0000 89 O -7.895773762 15.599987601 8.572643889 CORE 90 O O 0.0000 90 O -12.833205674 15.774352489 4.763570288 CORE 91 O O 0.0000 91 O -3.377916773 8.354618114 8.639539777 CORE 92 O O 0.0000 92 O -9.439256642 6.001111098 5.623349364 CORE 93 O O 0.0000 93 O 0.621703241 13.363359198 9.309969289 CORE 94 O O 0.0000 94 O -2.203108876 17.931795386 5.387601861 CORE 95 O O 0.0000 95 O -11.672878924 10.704864659 9.254361673 CORE 96 O O 0.0000 96 O 0.676036218 10.717446999 5.395758776 CORE 97 O O 0.0000 97 O -8.954702844 17.913433169 9.304190618 CORE 98 O O 0.0000 98 O -11.913494055 13.352771859 5.378755505 CORE 99 O O 0.0000 99 O -2.043084962 6.114615796 9.195314227 CORE 100 O O 0.0000 100 O -12.015486957 10.774005685 5.265898181 CORE 101 O O 0.0000 101 O -2.167396166 17.895959187 9.203550256 CORE 102 O O 0.0000 102 O 0.567464563 13.364005699 5.393268858 CORE 103 O O 0.0000 103 O -9.088866109 6.073102784 8.795474869 CORE 104 O O 0.0000 104 O -2.074778060 6.158952080 5.471627149 CORE 105 O O 0.0000 105 O -11.686324906 13.351488947 9.174129497 CORE 106 O O 0.0000 106 O -9.196272698 17.813750622 5.347168971 CORE 107 O O 0.0000 107 O 0.563466698 10.738928278 9.176011674 CORE 108 O O 0.0000 108 O2 12.642990893 5.750943268 4.886116012 CORE 109 O2 O2 0.0000 109 O2 13.598140794 7.473283840 2.905775310 CORE 110 O2 O2 0.0000 110 H 13.215727311 6.692732678 3.366718497 CORE 111 H H 0.0000 111 H 13.352999534 8.216014469 3.493163604 CORE 112 H H 0.0000 112 C 13.911034839 5.704519586 5.612950146 CORE 113 C C 0.0000 113 C 12.974338549 4.561943934 5.656130079 CORE 114 C C 0.0000 114 H 13.187045410 3.654279694 5.056093646 CORE 115 H H 0.0000 115 H 12.366919391 4.410001752 6.571339066 CORE 116 H H 0.0000 116 H 14.797540930 5.649823716 4.954172913 CORE 117 H H 0.0000 117 H 13.977469566 6.382876721 6.486805617 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.305866021 4.761214611 3.513352016 CORE 1 Si Si 0.0000 1 Si -2.575242106 12.038217247 7.341910134 CORE 2 Si Si 0.0000 2 Si 1.077847833 4.775199072 3.480336771 CORE 3 Si Si 0.0000 3 Si -8.630095212 12.019002685 7.314978152 CORE 4 Si Si 0.0000 4 Si -13.620442353 7.696540646 11.084355849 CORE 5 Si Si 0.0000 5 Si -4.002594068 14.902500808 7.330007426 CORE 6 Si Si 0.0000 6 Si -7.153060914 9.191987572 7.206625061 CORE 7 Si Si 0.0000 7 Si 2.433854626 16.348196120 3.544568003 CORE 8 Si Si 0.0000 8 Si -13.619393717 16.331272926 3.446356550 CORE 9 Si Si 0.0000 9 Si -3.929045205 9.147345408 7.329160667 CORE 10 Si Si 0.0000 10 Si -7.227296231 14.905475145 7.262772028 CORE 11 Si Si 0.0000 11 Si 2.413052795 7.705911237 3.491583052 CORE 12 Si Si 0.0000 12 Si -10.207459296 4.585064602 5.834519166 CORE 13 Si Si 0.0000 13 Si -0.305871513 12.053015564 9.579356361 CORE 14 Si Si 0.0000 14 Si -10.808546031 12.041910736 9.585649431 CORE 15 Si Si 0.0000 15 Si -1.231042236 4.786669458 5.727864995 CORE 16 Si Si 0.0000 16 Si -9.966680201 4.704268888 8.870969576 CORE 17 Si Si 0.0000 17 Si -0.278223237 12.004993719 5.091985028 CORE 18 Si Si 0.0000 18 Si -11.002671499 12.034157623 5.088307015 CORE 19 Si Si 0.0000 19 Si -1.205928662 4.758925406 8.859501772 CORE 20 Si Si 0.0000 20 Ti -9.037619960 7.661905483 5.019983708 CORE 21 Ti Ti 0.0000 21 Si 0.675333406 14.949112602 8.916922339 CORE 22 Si Si 0.0000 22 Si -2.267490015 16.321822334 5.107439166 CORE 23 Si Si 0.0000 23 Si -11.892514789 9.150449190 8.809816680 CORE 24 Si Si 0.0000 24 Si 0.744867084 9.122736994 5.736848661 CORE 25 Si Si 0.0000 25 Si -8.996911555 16.297727085 9.538670150 CORE 26 Si Si 0.0000 26 Si -11.830102176 14.938469334 5.726849583 CORE 27 Si Si 0.0000 27 Si -2.198639519 7.707594734 9.535795459 CORE 28 Si Si 0.0000 28 Si -12.037645144 9.206355898 5.723961579 CORE 29 Si Si 0.0000 29 Si -2.226461766 16.301109072 9.552672146 CORE 30 Si Si 0.0000 30 Si 0.622211682 14.951417952 5.770037123 CORE 31 Si Si 0.0000 31 Si -9.051593243 7.648816177 9.226872690 CORE 32 Si Si 0.0000 32 Si -2.147332365 7.753220272 5.089580159 CORE 33 Si Si 0.0000 33 Si -11.881076015 14.942078209 8.851745149 CORE 34 Si Si 0.0000 34 Si -8.944402193 16.225004717 5.060773910 CORE 35 Si Si 0.0000 35 Si 0.653094199 9.140554912 8.871536237 CORE 36 Si Si 0.0000 36 O -15.227999422 7.759662364 3.372802368 CORE 37 O O 0.0000 37 O -5.616007834 14.960440859 7.399612168 CORE 38 O O 0.0000 38 O -15.214448364 16.118822707 3.615023917 CORE 39 O O 0.0000 39 O -5.540532205 9.077579791 7.292083091 CORE 40 O O 0.0000 40 O -10.601442032 4.371942368 7.405233750 CORE 41 O O 0.0000 41 O -0.746557334 11.980210023 3.535013034 CORE 42 O O 0.0000 42 O -10.429166646 12.084213244 3.561452145 CORE 43 O O 0.0000 43 O -0.781490061 4.727932703 7.288647672 CORE 44 O O 0.0000 44 O -13.142129759 6.142907897 3.494479348 CORE 45 O O 0.0000 45 O -3.528130194 13.346724586 7.262860347 CORE 46 O O 0.0000 46 O -7.615712862 10.756811782 7.264247219 CORE 47 O O 0.0000 47 O 2.118418374 17.947142761 3.513422079 CORE 48 O O 0.0000 48 O -3.490892738 10.709974973 7.405372581 CORE 49 O O 0.0000 49 O -13.305371363 17.921285887 3.250796072 CORE 50 O O 0.0000 50 O 1.909848708 6.159289529 3.492604093 CORE 51 O O 0.0000 51 O -7.749229702 13.371576609 7.153814391 CORE 52 O O 0.0000 52 O -11.592880054 4.550870962 4.972952774 CORE 53 O O 0.0000 53 O -1.669110989 12.141116443 8.692176622 CORE 54 O O 0.0000 54 O 0.099393539 4.726197024 4.791287640 CORE 55 O O 0.0000 55 O -9.401094100 12.034403395 8.757210872 CORE 56 O O 0.0000 56 O -1.611273771 11.962508721 6.028324202 CORE 57 O O 0.0000 57 O -11.163928026 4.833705911 9.957546340 CORE 58 O O 0.0000 58 O -9.742219532 11.935422702 6.120079562 CORE 59 O O 0.0000 59 O 0.170462163 4.685026794 9.729595930 CORE 60 O O 0.0000 60 O -10.533827999 8.598197110 5.461944455 CORE 61 O O 0.0000 61 O -0.786749792 15.622387820 9.202246608 CORE 62 O O 0.0000 62 O -10.469669904 8.356332603 8.845567709 CORE 63 O O 0.0000 63 O -0.848391468 15.624728774 5.515529311 CORE 64 O O 0.0000 64 O -0.693692140 8.431856188 5.381287415 CORE 65 O O 0.0000 65 O -10.497298358 15.743659469 9.206767272 CORE 66 O O 0.0000 66 O -10.276726822 15.397592962 5.509186794 CORE 67 O O 0.0000 67 O -0.792454457 8.455214123 9.177111754 CORE 68 O O 0.0000 68 O -12.462171115 9.090028361 7.289612723 CORE 69 O O 0.0000 69 O -2.549342776 16.089185423 3.523444055 CORE 70 O O 0.0000 70 O -8.860536513 7.751529712 3.226695192 CORE 71 O O 0.0000 71 O 1.018055752 15.116981631 7.336462910 CORE 72 O O 0.0000 72 O -2.495843666 7.901416207 3.512654282 CORE 73 O O 0.0000 73 O -12.237651942 15.161043170 7.281063505 CORE 74 O O 0.0000 74 O 1.047986240 8.909269960 7.314495626 CORE 75 O O 0.0000 75 O -8.635672478 15.984707381 3.485519568 CORE 76 O O 0.0000 76 O -13.153774643 8.402592534 4.866130255 CORE 77 O O 0.0000 77 O -3.400855905 15.606154948 8.674365921 CORE 78 O O 0.0000 78 O 1.743044744 15.687075700 4.863435094 CORE 79 O O 0.0000 79 O -7.849802355 8.389393533 8.439576395 CORE 80 O O 0.0000 80 O -3.311671990 8.471217224 5.971894170 CORE 81 O O 0.0000 81 O -13.112274902 15.530353735 9.726941924 CORE 82 O O 0.0000 82 O -7.649701066 15.720963747 5.910789656 CORE 83 O O 0.0000 83 O 1.784936304 8.468461270 9.808860925 CORE 84 O O 0.0000 84 O -7.642527078 8.521685106 5.798866954 CORE 85 O O 0.0000 85 O 1.830865181 15.670488946 9.795617901 CORE 86 O O 0.0000 86 O -3.475431080 15.679624865 5.988162051 CORE 87 O O 0.0000 87 O -12.963354330 8.458556037 9.809282061 CORE 88 O O 0.0000 88 O 1.934182878 8.428254377 4.876796410 CORE 89 O O 0.0000 89 O -7.900644560 15.592131711 8.574899505 CORE 90 O O 0.0000 90 O -12.833680245 15.771583273 4.763909418 CORE 91 O O 0.0000 91 O -3.379549289 8.357521387 8.638446316 CORE 92 O O 0.0000 92 O -9.440343960 5.998425488 5.625903563 CORE 93 O O 0.0000 93 O 0.623605566 13.364328012 9.313032867 CORE 94 O O 0.0000 94 O -2.202986673 17.931191985 5.391042301 CORE 95 O O 0.0000 95 O -11.673863668 10.706726900 9.253936430 CORE 96 O O 0.0000 96 O 0.675416158 10.719906730 5.394757666 CORE 97 O O 0.0000 97 O -8.952300353 17.912157896 9.306576926 CORE 98 O O 0.0000 98 O -11.917158604 13.351479289 5.379291738 CORE 99 O O 0.0000 99 O -2.043861865 6.116255329 9.194646617 CORE 100 O O 0.0000 100 O -12.015084938 10.772902237 5.266823218 CORE 101 O O 0.0000 101 O -2.165362209 17.895904411 9.200151808 CORE 102 O O 0.0000 102 O 0.568225493 13.364389563 5.389382559 CORE 103 O O 0.0000 103 O -9.092415576 6.072112347 8.792421333 CORE 104 O O 0.0000 104 O -2.075752220 6.159790153 5.468955190 CORE 105 O O 0.0000 105 O -11.689471392 13.351719727 9.175669578 CORE 106 O O 0.0000 106 O -9.195719609 17.809374451 5.344667413 CORE 107 O O 0.0000 107 O 0.563609685 10.740495016 9.177609799 CORE 108 O O 0.0000 108 O2 12.645993237 5.757300313 4.888149497 CORE 109 O2 O2 0.0000 109 O2 13.585452855 7.467407094 2.892052575 CORE 110 O2 O2 0.0000 110 H 13.225767391 6.692128989 3.377141525 CORE 111 H H 0.0000 111 H 13.358262729 8.211346688 3.487801885 CORE 112 H H 0.0000 112 C 13.909521447 5.700474089 5.618292467 CORE 113 C C 0.0000 113 C 12.964514778 4.559082752 5.649515376 CORE 114 C C 0.0000 114 H 13.173625792 3.655335141 5.042745567 CORE 115 H H 0.0000 115 H 12.351578781 4.406541206 6.559263750 CORE 116 H H 0.0000 116 H 14.795384000 5.644908866 4.961641223 CORE 117 H H 0.0000 117 H 13.981122568 6.364704057 6.501083222 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.306369266 4.760408538 3.513464755 CORE 1 Si Si 0.0000 1 Si -2.576741258 12.037580980 7.342956811 CORE 2 Si Si 0.0000 2 Si 1.076589046 4.774613689 3.480719185 CORE 3 Si Si 0.0000 3 Si -8.627738330 12.019422875 7.312903131 CORE 4 Si Si 0.0000 4 Si -13.621689208 7.695679365 11.085645576 CORE 5 Si Si 0.0000 5 Si -4.002974918 14.901716646 7.330899372 CORE 6 Si Si 0.0000 6 Si -7.152464140 9.192769860 7.206296277 CORE 7 Si Si 0.0000 7 Si 2.432959562 16.346913785 3.544572491 CORE 8 Si Si 0.0000 8 Si -13.618273684 16.330536621 3.445214174 CORE 9 Si Si 0.0000 9 Si -3.929753597 9.145040346 7.330251922 CORE 10 Si Si 0.0000 10 Si -7.226543383 14.907271078 7.261141192 CORE 11 Si Si 0.0000 11 Si 2.411517464 7.704371166 3.490961771 CORE 12 Si Si 0.0000 12 Si -10.208060304 4.587258813 5.833427530 CORE 13 Si Si 0.0000 13 Si -0.306913991 12.052445173 9.579436237 CORE 14 Si Si 0.0000 14 Si -10.805952442 12.041004769 9.584321668 CORE 15 Si Si 0.0000 15 Si -1.230946976 4.786287899 5.728467714 CORE 16 Si Si 0.0000 16 Si -9.966754485 4.705679370 8.870790045 CORE 17 Si Si 0.0000 17 Si -0.278452632 12.004533024 5.093975152 CORE 18 Si Si 0.0000 18 Si -11.001764310 12.033990412 5.087124169 CORE 19 Si Si 0.0000 19 Si -1.206529669 4.758190542 8.860436319 CORE 20 Si Si 0.0000 20 Ti -9.040483166 7.663426526 5.018184145 CORE 21 Ti Ti 0.0000 21 Si 0.674091170 14.947729940 8.916246970 CORE 22 Si Si 0.0000 22 Si -2.268108343 16.321345638 5.108060143 CORE 23 Si Si 0.0000 23 Si -11.893519548 9.149925214 8.810469911 CORE 24 Si Si 0.0000 24 Si 0.745837395 9.121051911 5.737566859 CORE 25 Si Si 0.0000 25 Si -8.995805955 16.297607010 9.537181189 CORE 26 Si Si 0.0000 26 Si -11.829240790 14.939437428 5.726175356 CORE 27 Si Si 0.0000 27 Si -2.198461892 7.705581139 9.536682536 CORE 28 Si Si 0.0000 28 Si -12.038036386 9.207262873 5.725136818 CORE 29 Si Si 0.0000 29 Si -2.227181320 16.300202817 9.552933454 CORE 30 Si Si 0.0000 30 Si 0.621516569 14.950928571 5.771855477 CORE 31 Si Si 0.0000 31 Si -9.051849581 7.649109517 9.226955229 CORE 32 Si Si 0.0000 32 Si -2.146536217 7.752054264 5.090273252 CORE 33 Si Si 0.0000 33 Si -11.879291274 14.940588589 8.849936001 CORE 34 Si Si 0.0000 34 Si -8.943909340 16.228695323 5.059871618 CORE 35 Si Si 0.0000 35 Si 0.652111957 9.139475680 8.871212018 CORE 36 Si Si 0.0000 36 O -15.229186042 7.758771533 3.371988548 CORE 37 O O 0.0000 37 O -5.616169681 14.961328231 7.400914904 CORE 38 O O 0.0000 38 O -15.213815603 16.116493429 3.613801285 CORE 39 O O 0.0000 39 O -5.541297369 9.075556970 7.293817004 CORE 40 O O 0.0000 40 O -10.602052084 4.377334778 7.404109783 CORE 41 O O 0.0000 41 O -0.745440187 11.981329471 3.536276745 CORE 42 O O 0.0000 42 O -10.427619576 12.083038875 3.560912794 CORE 43 O O 0.0000 43 O -0.783069462 4.724760595 7.289532772 CORE 44 O O 0.0000 44 O -13.144725273 6.141107207 3.492459556 CORE 45 O O 0.0000 45 O -3.527608089 13.347145353 7.264830540 CORE 46 O O 0.0000 46 O -7.611918604 10.758106082 7.259277576 CORE 47 O O 0.0000 47 O 2.117040078 17.946122486 3.514799670 CORE 48 O O 0.0000 48 O -3.492130163 10.708429857 7.406380309 CORE 49 O O 0.0000 49 O -13.304986664 17.920050111 3.248778943 CORE 50 O O 0.0000 50 O 1.909336996 6.158049573 3.491934506 CORE 51 O O 0.0000 51 O -7.750109370 13.374011547 7.153094140 CORE 52 O O 0.0000 52 O -11.593416015 4.552974361 4.971901152 CORE 53 O O 0.0000 53 O -1.670405186 12.139615868 8.693777409 CORE 54 O O 0.0000 54 O 0.099305399 4.726644746 4.791589418 CORE 55 O O 0.0000 55 O -9.399012609 12.033856067 8.755168563 CORE 56 O O 0.0000 56 O -1.612233497 11.959723360 6.028707225 CORE 57 O O 0.0000 57 O -11.165560543 4.834807918 9.956916766 CORE 58 O O 0.0000 58 O -9.742275919 11.936965079 6.119960814 CORE 59 O O 0.0000 59 O 0.170563005 4.683929833 9.729842404 CORE 60 O O 0.0000 60 O -10.535585219 8.599406651 5.466021695 CORE 61 O O 0.0000 61 O -0.786674353 15.621618794 9.202532259 CORE 62 O O 0.0000 62 O -10.472595270 8.352450858 8.842924809 CORE 63 O O 0.0000 63 O -0.848676672 15.623243912 5.515811919 CORE 64 O O 0.0000 64 O -0.693202751 8.432051652 5.383524926 CORE 65 O O 0.0000 65 O -10.494365487 15.738759033 9.205272758 CORE 66 O O 0.0000 66 O -10.276378303 15.401507140 5.509102125 CORE 67 O O 0.0000 67 O -0.792646326 8.454213596 9.176258605 CORE 68 O O 0.0000 68 O -12.462130894 9.091829916 7.290777008 CORE 69 O O 0.0000 69 O -2.551135022 16.085620802 3.524179673 CORE 70 O O 0.0000 70 O -8.860524582 7.751922513 3.227666786 CORE 71 O O 0.0000 71 O 1.017429919 15.117715341 7.337277187 CORE 72 O O 0.0000 72 O -2.493119791 7.900325876 3.513272597 CORE 73 O O 0.0000 73 O -12.236725317 15.160883310 7.280708324 CORE 74 O O 0.0000 74 O 1.050967030 8.906780678 7.315031554 CORE 75 O O 0.0000 75 O -8.634042656 15.986962855 3.484312987 CORE 76 O O 0.0000 76 O -13.154991669 8.402015801 4.867663185 CORE 77 O O 0.0000 77 O -3.402420487 15.606784584 8.674565154 CORE 78 O O 0.0000 78 O 1.742312104 15.685923386 4.863695413 CORE 79 O O 0.0000 79 O -7.853721317 8.394259084 8.439288462 CORE 80 O O 0.0000 80 O -3.310481907 8.470628815 5.972144295 CORE 81 O O 0.0000 81 O -13.109704598 15.529288486 9.726897194 CORE 82 O O 0.0000 82 O -7.648284859 15.722303309 5.907190073 CORE 83 O O 0.0000 83 O 1.783361329 8.467038247 9.808967731 CORE 84 O O 0.0000 84 O -7.643550697 8.522483395 5.797973182 CORE 85 O O 0.0000 85 O 1.829435503 15.668071738 9.796690215 CORE 86 O O 0.0000 86 O -3.476211832 15.679250802 5.989298037 CORE 87 O O 0.0000 87 O -12.964623702 8.459690765 9.810457832 CORE 88 O O 0.0000 88 O 1.934094161 8.426206907 4.876671652 CORE 89 O O 0.0000 89 O -7.897196705 15.597692630 8.573302826 CORE 90 O O 0.0000 90 O -12.833344427 15.773543533 4.763669334 CORE 91 O O 0.0000 91 O -3.378393653 8.355466277 8.639220350 CORE 92 O O 0.0000 92 O -9.439574177 6.000326648 5.624095480 CORE 93 O O 0.0000 93 O 0.622259024 13.363642303 9.310864278 CORE 94 O O 0.0000 94 O -2.203073081 17.931619094 5.388606851 CORE 95 O O 0.0000 95 O -11.673166630 10.705408672 9.254237447 CORE 96 O O 0.0000 96 O 0.675855126 10.718165573 5.395466355 CORE 97 O O 0.0000 97 O -8.954000995 17.913060692 9.304887668 CORE 98 O O 0.0000 98 O -11.914564630 13.352394336 5.378912137 CORE 99 O O 0.0000 99 O -2.043311856 6.115094654 9.195119178 CORE 100 O O 0.0000 100 O -12.015369373 10.773683372 5.266168465 CORE 101 O O 0.0000 101 O -2.166801894 17.895943187 9.202557438 CORE 102 O O 0.0000 102 O 0.567686837 13.364117845 5.392133557 CORE 103 O O 0.0000 103 O -9.089903006 6.072813480 8.794582847 CORE 104 O O 0.0000 104 O -2.075062687 6.159196842 5.470846572 CORE 105 O O 0.0000 105 O -11.687244027 13.351556408 9.174579388 CORE 106 O O 0.0000 106 O -9.196111044 17.812472323 5.346438221 CORE 107 O O 0.0000 107 O 0.563508458 10.739385946 9.176478529 CORE 108 O O 0.0000 108 O2 12.643868060 5.752800320 4.886710059 CORE 109 O2 O2 0.0000 109 O2 13.594434291 7.471567044 2.901766535 CORE 110 O2 O2 0.0000 110 H 13.218660375 6.692556386 3.369763285 CORE 111 H H 0.0000 111 H 13.354536982 8.214650835 3.491597278 CORE 112 H H 0.0000 112 C 13.910592792 5.703337866 5.614510767 CORE 113 C C 0.0000 113 C 12.971468800 4.561108167 5.654197770 CORE 114 C C 0.0000 114 H 13.183125293 3.654588025 5.052194339 CORE 115 H H 0.0000 115 H 12.362438102 4.408990847 6.567811523 CORE 116 H H 0.0000 116 H 14.796910863 5.648388008 4.956354587 CORE 117 H H 0.0000 117 H 13.978536677 6.377568060 6.490976502 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.304812766 4.760747429 3.515004380 CORE 1 Si Si 0.0000 1 Si -2.575415885 12.039745786 7.341789256 CORE 2 Si Si 0.0000 2 Si 1.076824215 4.776390738 3.480591308 CORE 3 Si Si 0.0000 3 Si -8.630394080 12.018736157 7.315496051 CORE 4 Si Si 0.0000 4 Si -13.620158304 7.696277865 11.084568242 CORE 5 Si Si 0.0000 5 Si -4.002245742 14.901732934 7.329529617 CORE 6 Si Si 0.0000 6 Si -7.152000924 9.192168766 7.207947271 CORE 7 Si Si 0.0000 7 Si 2.433131031 16.348448667 3.544348383 CORE 8 Si Si 0.0000 8 Si -13.618717463 16.331525905 3.447416996 CORE 9 Si Si 0.0000 9 Si -3.929666419 9.147260361 7.329626609 CORE 10 Si Si 0.0000 10 Si -7.226752187 14.903997346 7.263895614 CORE 11 Si Si 0.0000 11 Si 2.413248897 7.706015743 3.491593550 CORE 12 Si Si 0.0000 12 Si -10.207410415 4.583679922 5.834268508 CORE 13 Si Si 0.0000 13 Si -0.306520440 12.054123625 9.578670571 CORE 14 Si Si 0.0000 14 Si -10.807355755 12.042278744 9.586525098 CORE 15 Si Si 0.0000 15 Si -1.231121909 4.788078354 5.727757885 CORE 16 Si Si 0.0000 16 Si -9.965412562 4.702954552 8.871253705 CORE 17 Si Si 0.0000 17 Si -0.279081737 12.006048878 5.091749585 CORE 18 Si Si 0.0000 18 Si -11.004340387 12.034116253 5.088432838 CORE 19 Si Si 0.0000 19 Si -1.206075498 4.760583677 8.859368113 CORE 20 Si Si 0.0000 20 Ti -9.041273925 7.660689599 5.016302120 CORE 21 Ti Ti 0.0000 21 Si 0.675392295 14.948161085 8.915756609 CORE 22 Si Si 0.0000 22 Si -2.267598362 16.322500980 5.107700778 CORE 23 Si Si 0.0000 23 Si -11.891976327 9.151003869 8.808784913 CORE 24 Si Si 0.0000 24 Si 0.743108324 9.122607118 5.735451216 CORE 25 Si Si 0.0000 25 Si -8.997183288 16.297142856 9.539112586 CORE 26 Si Si 0.0000 26 Si -11.830718772 14.936884578 5.727165739 CORE 27 Si Si 0.0000 27 Si -2.199916780 7.706698281 9.536491519 CORE 28 Si Si 0.0000 28 Si -12.035514964 9.205195655 5.723116874 CORE 29 Si Si 0.0000 29 Si -2.226355728 16.301443926 9.551429659 CORE 30 Si Si 0.0000 30 Si 0.622037711 14.950282359 5.770669816 CORE 31 Si Si 0.0000 31 Si -9.051282251 7.647338522 9.226040004 CORE 32 Si Si 0.0000 32 Si -2.148301328 7.752668620 5.088010562 CORE 33 Si Si 0.0000 33 Si -11.880505798 14.942146679 8.851333142 CORE 34 Si Si 0.0000 34 Si -8.945068055 16.224215365 5.061566354 CORE 35 Si Si 0.0000 35 Si 0.652436612 9.140650770 8.872000734 CORE 36 Si Si 0.0000 36 O -15.227097814 7.759818332 3.372462554 CORE 37 O O 0.0000 37 O -5.616578820 14.961032296 7.399547203 CORE 38 O O 0.0000 38 O -15.214015747 16.119355909 3.615016918 CORE 39 O O 0.0000 39 O -5.541652624 9.078183192 7.291302210 CORE 40 O O 0.0000 40 O -10.602298607 4.369287028 7.404746203 CORE 41 O O 0.0000 41 O -0.746708789 11.980089659 3.534814562 CORE 42 O O 0.0000 42 O -10.430226636 12.084681579 3.563397235 CORE 43 O O 0.0000 43 O -0.781153281 4.728384750 7.289096574 CORE 44 O O 0.0000 44 O -13.142091847 6.142473004 3.494055093 CORE 45 O O 0.0000 45 O -3.528546646 13.346961565 7.262375387 CORE 46 O O 0.0000 46 O -7.616176271 10.755728515 7.265304850 CORE 47 O O 0.0000 47 O 2.118606778 17.948313959 3.513397736 CORE 48 O O 0.0000 48 O -3.490340034 10.710221321 7.405344511 CORE 49 O O 0.0000 49 O -13.305874416 17.921194065 3.252225012 CORE 50 O O 0.0000 50 O 1.910167398 6.159899705 3.492591313 CORE 51 O O 0.0000 51 O -7.748621189 13.370306382 7.154450963 CORE 52 O O 0.0000 52 O -11.594166745 4.549958509 4.972293152 CORE 53 O O 0.0000 53 O -1.667556029 12.141550038 8.692299555 CORE 54 O O 0.0000 54 O 0.099783626 4.725780727 4.790658294 CORE 55 O O 0.0000 55 O -9.401399512 12.035536537 8.757300105 CORE 56 O O 0.0000 56 O -1.610483204 11.963382831 6.027223057 CORE 57 O O 0.0000 57 O -11.165105986 4.832767655 9.958688563 CORE 58 O O 0.0000 58 O -9.742837283 11.935129938 6.119278674 CORE 59 O O 0.0000 59 O 0.171128795 4.685702702 9.729968075 CORE 60 O O 0.0000 60 O -10.534671103 8.596889549 5.460489194 CORE 61 O O 0.0000 61 O -0.785128053 15.622419677 9.202363835 CORE 62 O O 0.0000 62 O -10.470748369 8.358840336 8.844856890 CORE 63 O O 0.0000 63 O -0.847407109 15.624556518 5.515317069 CORE 64 O O 0.0000 64 O -0.693754877 8.432915095 5.381042082 CORE 65 O O 0.0000 65 O -10.498307927 15.743809238 9.207573789 CORE 66 O O 0.0000 66 O -10.277497567 15.397379623 5.509093149 CORE 67 O O 0.0000 67 O -0.792160785 8.456375663 9.176651061 CORE 68 O O 0.0000 68 O -12.462790597 9.091287057 7.289484694 CORE 69 O O 0.0000 69 O -2.550066564 16.089602009 3.523269241 CORE 70 O O 0.0000 70 O -8.860435479 7.750889841 3.230315314 CORE 71 O O 0.0000 71 O 1.018089045 15.116357329 7.336837033 CORE 72 O O 0.0000 72 O -2.496043617 7.902004616 3.511768726 CORE 73 O O 0.0000 73 O -12.238261033 15.161969461 7.282481490 CORE 74 O O 0.0000 74 O 1.047968150 8.910133259 7.314298979 CORE 75 O O 0.0000 75 O -8.636164561 15.983843505 3.484634240 CORE 76 O O 0.0000 76 O -13.154541731 8.403073698 4.866176203 CORE 77 O O 0.0000 77 O -3.400721962 15.606177723 8.674017891 CORE 78 O O 0.0000 78 O 1.743414047 15.687437510 4.863273973 CORE 79 O O 0.0000 79 O -7.848132697 8.387387721 8.439443877 CORE 80 O O 0.0000 80 O -3.311085993 8.470041990 5.971085751 CORE 81 O O 0.0000 81 O -13.113793875 15.530865170 9.726983764 CORE 82 O O 0.0000 82 O -7.650639046 15.720383698 5.910361598 CORE 83 O O 0.0000 83 O 1.785369692 8.469614882 9.808653629 CORE 84 O O 0.0000 84 O -7.641530403 8.522134126 5.799253249 CORE 85 O O 0.0000 85 O 1.831816632 15.670907262 9.794992436 CORE 86 O O 0.0000 86 O -3.475574452 15.679973990 5.988046878 CORE 87 O O 0.0000 87 O -12.962192729 8.457460084 9.808285896 CORE 88 O O 0.0000 88 O 1.933812228 8.428332649 4.876769861 CORE 89 O O 0.0000 89 O -7.901942606 15.591395839 8.576341605 CORE 90 O O 0.0000 90 O -12.834252001 15.772297091 4.763050335 CORE 91 O O 0.0000 91 O -3.379597400 8.356547383 8.639728360 CORE 92 O O 0.0000 92 O -9.438678343 5.998960131 5.625938176 CORE 93 O O 0.0000 93 O 0.624299525 13.365829740 9.313905491 CORE 94 O O 0.0000 94 O -2.203190280 17.931559417 5.392226973 CORE 95 O O 0.0000 95 O -11.675479442 10.706313773 9.253172665 CORE 96 O O 0.0000 96 O 0.675520848 10.719283581 5.394490120 CORE 97 O O 0.0000 97 O -8.951866581 17.912426011 9.307363056 CORE 98 O O 0.0000 98 O -11.916934405 13.350513357 5.378921038 CORE 99 O O 0.0000 99 O -2.043802785 6.115742308 9.194721396 CORE 100 O O 0.0000 100 O -12.015039328 10.771901854 5.266776434 CORE 101 O O 0.0000 101 O -2.164847032 17.895836518 9.199912561 CORE 102 O O 0.0000 102 O 0.568475864 13.365136247 5.388854009 CORE 103 O O 0.0000 103 O -9.092220628 6.073852927 8.791966801 CORE 104 O O 0.0000 104 O -2.075549960 6.159622798 5.468355665 CORE 105 O O 0.0000 105 O -11.690241752 13.352928691 9.175862269 CORE 106 O O 0.0000 106 O -9.196619870 17.809464687 5.344954890 CORE 107 O O 0.0000 107 O 0.564032873 10.739466669 9.177638021 CORE 108 O O 0.0000 108 O2 12.645853522 5.758799302 4.890409068 CORE 109 O2 O2 0.0000 109 O2 13.581511761 7.468912858 2.887886026 CORE 110 O2 O2 0.0000 110 H 13.226019110 6.690742579 3.378110760 CORE 111 H H 0.0000 111 H 13.361317803 8.209033410 3.484932367 CORE 112 H H 0.0000 112 C 13.907391267 5.696944351 5.618296879 CORE 113 C C 0.0000 113 C 12.964701065 4.558374844 5.646216430 CORE 114 C C 0.0000 114 H 13.171630901 3.654986448 5.039846608 CORE 115 H H 0.0000 115 H 12.347273003 4.406150566 6.557224940 CORE 116 H H 0.0000 116 H 14.796814448 5.643946970 4.963714418 CORE 117 H H 0.0000 117 H 13.980749609 6.362220109 6.503821440 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.305168213 4.760670022 3.514652774 CORE 1 Si Si 0.0000 1 Si -2.575718602 12.039251360 7.342055965 CORE 2 Si Si 0.0000 2 Si 1.076770522 4.775984963 3.480620520 CORE 3 Si Si 0.0000 3 Si -8.629787491 12.018892989 7.314903905 CORE 4 Si Si 0.0000 4 Si -13.620507977 7.696141213 11.084814260 CORE 5 Si Si 0.0000 5 Si -4.002412207 14.901729331 7.329842426 CORE 6 Si Si 0.0000 6 Si -7.152106576 9.192305994 7.207570181 CORE 7 Si Si 0.0000 7 Si 2.433091772 16.348098100 3.544399579 CORE 8 Si Si 0.0000 8 Si -13.618616044 16.331300026 3.446913930 CORE 9 Si Si 0.0000 9 Si -3.929686434 9.146753394 7.329769396 CORE 10 Si Si 0.0000 10 Si -7.226704460 14.904745039 7.263266573 CORE 11 Si Si 0.0000 11 Si 2.412853614 7.705640239 3.491449241 CORE 12 Si Si 0.0000 12 Si -10.207558791 4.584497382 5.834076426 CORE 13 Si Si 0.0000 13 Si -0.306610312 12.053740337 9.578845461 CORE 14 Si Si 0.0000 14 Si -10.807035333 12.041987711 9.586021881 CORE 15 Si Si 0.0000 15 Si -1.231081880 4.787669408 5.727919995 CORE 16 Si Si 0.0000 16 Si -9.965719128 4.703576836 8.871147813 CORE 17 Si Si 0.0000 17 Si -0.278937980 12.005702780 5.092257899 CORE 18 Si Si 0.0000 18 Si -11.003752081 12.034087423 5.088133951 CORE 19 Si Si 0.0000 19 Si -1.206179226 4.760037214 8.859612077 CORE 20 Si Si 0.0000 20 Ti -9.041093218 7.661314767 5.016731927 CORE 21 Ti Ti 0.0000 21 Si 0.675095159 14.948062633 8.915868587 CORE 22 Si Si 0.0000 22 Si -2.267714791 16.322237190 5.107782860 CORE 23 Si Si 0.0000 23 Si -11.892328694 9.150757521 8.809169762 CORE 24 Si Si 0.0000 24 Si 0.743731655 9.122251938 5.735934426 CORE 25 Si Si 0.0000 25 Si -8.996868832 16.297248948 9.538671519 CORE 26 Si Si 0.0000 26 Si -11.830381222 14.937467654 5.726939577 CORE 27 Si Si 0.0000 27 Si -2.199584619 7.706443141 9.536535109 CORE 28 Si Si 0.0000 28 Si -12.036090761 9.205667738 5.723578176 CORE 29 Si Si 0.0000 29 Si -2.226544325 16.301160532 9.551773125 CORE 30 Si Si 0.0000 30 Si 0.621918588 14.950429966 5.770940633 CORE 31 Si Si 0.0000 31 Si -9.051411767 7.647743000 9.226249051 CORE 32 Si Si 0.0000 32 Si -2.147898347 7.752528365 5.088527320 CORE 33 Si Si 0.0000 33 Si -11.880228484 14.941790923 8.851014096 CORE 34 Si Si 0.0000 34 Si -8.944803442 16.225238524 5.061179299 CORE 35 Si Si 0.0000 35 Si 0.652362521 9.140382367 8.871820595 CORE 36 Si Si 0.0000 36 O -15.227574887 7.759579191 3.372354303 CORE 37 O O 0.0000 37 O -5.616485292 14.961099901 7.399859555 CORE 38 O O 0.0000 38 O -15.213970137 16.118702056 3.614739255 CORE 39 O O 0.0000 39 O -5.541571412 9.077583395 7.291876555 CORE 40 O O 0.0000 40 O -10.602242221 4.371125052 7.404600905 CORE 41 O O 0.0000 41 O -0.746418966 11.980372909 3.535148519 CORE 42 O O 0.0000 42 O -10.429631402 12.084306363 3.562829812 CORE 43 O O 0.0000 43 O -0.781590903 4.727557055 7.289196152 CORE 44 O O 0.0000 44 O -13.142693240 6.142161069 3.493690708 CORE 45 O O 0.0000 45 O -3.528332262 13.347003512 7.262936115 CORE 46 O O 0.0000 46 O -7.615203843 10.756271518 7.263928325 CORE 47 O O 0.0000 47 O 2.118248829 17.947813479 3.513717924 CORE 48 O O 0.0000 48 O -3.490748981 10.709812231 7.405581095 CORE 49 O O 0.0000 49 O -13.305671770 17.920932726 3.251438045 CORE 50 O O 0.0000 50 O 1.909977839 6.159477209 3.492441298 CORE 51 O O 0.0000 51 O -7.748961047 13.371152527 7.154141121 CORE 52 O O 0.0000 52 O -11.593995276 4.550647389 4.972203615 CORE 53 O O 0.0000 53 O -1.668206880 12.141108226 8.692637087 CORE 54 O O 0.0000 54 O 0.099674317 4.725978064 4.790870916 CORE 55 O O 0.0000 55 O -9.400854313 12.035152673 8.756813319 CORE 56 O O 0.0000 56 O -1.610882914 11.962547064 6.027562034 CORE 57 O O 0.0000 57 O -11.165209907 4.833233540 9.958283859 CORE 58 O O 0.0000 58 O -9.742709114 11.935548975 6.119434470 CORE 59 O O 0.0000 59 O 0.170999664 4.685297791 9.729939320 CORE 60 O O 0.0000 60 O -10.534879906 8.597464409 5.461752677 CORE 61 O O 0.0000 61 O -0.785481191 15.622236754 9.202402251 CORE 62 O O 0.0000 62 O -10.471170210 8.357381132 8.844415672 CORE 63 O O 0.0000 63 O -0.847697124 15.624256692 5.515430113 CORE 64 O O 0.0000 64 O -0.693628825 8.432717902 5.381609124 CORE 65 O O 0.0000 65 O -10.497407474 15.742655915 9.207048283 CORE 66 O O 0.0000 66 O -10.277241999 15.398322347 5.509095203 CORE 67 O O 0.0000 67 O -0.792271634 8.455881958 9.176561448 CORE 68 O O 0.0000 68 O -12.462639913 9.091411167 7.289779854 CORE 69 O O 0.0000 69 O -2.550310585 16.088692727 3.523477222 CORE 70 O O 0.0000 70 O -8.860455878 7.751125666 3.229710464 CORE 71 O O 0.0000 71 O 1.017938552 15.116667390 7.336937601 CORE 72 O O 0.0000 72 O -2.495375831 7.901621184 3.512112192 CORE 73 O O 0.0000 73 O -12.237910204 15.161721383 7.282076482 CORE 74 O O 0.0000 74 O 1.048653064 8.909367548 7.314466262 CORE 75 O O 0.0000 75 O -8.635679791 15.984555882 3.484560906 CORE 76 O O 0.0000 76 O -13.154644497 8.402832107 4.866515789 CORE 77 O O 0.0000 77 O -3.401109933 15.606316249 8.674142877 CORE 78 O O 0.0000 78 O 1.743162328 15.687091701 4.863370205 CORE 79 O O 0.0000 79 O -7.849409188 8.388957054 8.439408428 CORE 80 O O 0.0000 80 O -3.310948010 8.470176048 5.971327508 CORE 81 O O 0.0000 81 O -13.112859936 15.530505090 9.726963985 CORE 82 O O 0.0000 82 O -7.650101353 15.720822051 5.909637315 CORE 83 O O 0.0000 83 O 1.784911094 8.469026328 9.808725365 CORE 84 O O 0.0000 84 O -7.641991695 8.522213983 5.798960904 CORE 85 O O 0.0000 85 O 1.831272781 15.670259608 9.795380176 CORE 86 O O 0.0000 86 O -3.475720134 15.679808797 5.988332605 CORE 87 O O 0.0000 87 O -12.962747934 8.457969501 9.808781962 CORE 88 O O 0.0000 88 O 1.933876698 8.427847161 4.876747420 CORE 89 O O 0.0000 89 O -7.900858752 15.592833853 8.575647598 CORE 90 O O 0.0000 90 O -12.834044737 15.772581782 4.763191753 CORE 91 O O 0.0000 91 O -3.379322395 8.356300459 8.639612350 CORE 92 O O 0.0000 92 O -9.438882913 5.999272210 5.625517345 CORE 93 O O 0.0000 93 O 0.623833421 13.365330125 9.313210952 CORE 94 O O 0.0000 94 O -2.203163530 17.931573111 5.391400221 CORE 95 O O 0.0000 95 O -11.674951178 10.706107066 9.253415868 CORE 96 O O 0.0000 96 O 0.675597249 10.719028296 5.394713012 CORE 97 O O 0.0000 97 O -8.952354046 17.912570879 9.306797688 CORE 98 O O 0.0000 98 O -11.916393248 13.350942916 5.378918984 CORE 99 O O 0.0000 99 O -2.043690589 6.115594413 9.194812227 CORE 100 O O 0.0000 100 O -12.015114767 10.772308782 5.266637602 CORE 101 O O 0.0000 101 O -2.165293506 17.895860879 9.200516650 CORE 102 O O 0.0000 102 O 0.568295543 13.364903593 5.389603016 CORE 103 O O 0.0000 103 O -9.091691210 6.073615516 8.792564272 CORE 104 O O 0.0000 104 O -2.075438726 6.159525498 5.468924533 CORE 105 O O 0.0000 105 O -11.689557223 13.352615314 9.175569315 CORE 106 O O 0.0000 106 O -9.196503633 17.810151549 5.345293639 CORE 107 O O 0.0000 107 O 0.563913171 10.739448218 9.177373214 CORE 108 O O 0.0000 108 O2 12.645400120 5.757429325 4.889564287 CORE 109 O2 O2 0.0000 109 O2 13.584463107 7.469518998 2.891056106 CORE 110 O2 O2 0.0000 110 H 13.224338482 6.691156859 3.376204316 CORE 111 H H 0.0000 111 H 13.359769194 8.210316322 3.486454495 CORE 112 H H 0.0000 112 C 13.908122560 5.698404420 5.617432166 CORE 113 C C 0.0000 113 C 12.966246788 4.558999146 5.648039272 CORE 114 C C 0.0000 114 H 13.174256052 3.654895491 5.042666604 CORE 115 H H 0.0000 115 H 12.350736447 4.406799229 6.559642742 CORE 116 H H 0.0000 116 H 14.796836579 5.644961192 4.962033603 CORE 117 H H 0.0000 117 H 13.980244247 6.365725341 6.500887869 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.305407615 4.759575943 3.517306476 CORE 1 Si Si 0.0000 1 Si -2.574590870 12.041909727 7.341256370 CORE 2 Si Si 0.0000 2 Si 1.076850387 4.778029118 3.480540644 CORE 3 Si Si 0.0000 3 Si -8.631204468 12.017012010 7.315443029 CORE 4 Si Si 0.0000 4 Si -13.618849866 7.696011913 11.084420130 CORE 5 Si Si 0.0000 5 Si -4.002220916 14.901490334 7.328891676 CORE 6 Si Si 0.0000 6 Si -7.151982834 9.191575311 7.208875732 CORE 7 Si Si 0.0000 7 Si 2.432442653 16.350012378 3.543509687 CORE 8 Si Si 0.0000 8 Si -13.618449194 16.332739194 3.447502196 CORE 9 Si Si 0.0000 9 Si -3.931044522 9.146463081 7.329956001 CORE 10 Si Si 0.0000 10 Si -7.227107634 14.901684357 7.265829596 CORE 11 Si Si 0.0000 11 Si 2.413536411 7.707023334 3.491254496 CORE 12 Si Si 0.0000 12 Si -10.208133818 4.582397298 5.833301707 CORE 13 Si Si 0.0000 13 Si -0.304864830 12.055251146 9.578063667 CORE 14 Si Si 0.0000 14 Si -10.808126885 12.042664627 9.588028436 CORE 15 Si Si 0.0000 15 Si -1.230001875 4.789162775 5.727868950 CORE 16 Si Si 0.0000 16 Si -9.965368107 4.701362300 8.871647987 CORE 17 Si Si 0.0000 17 Si -0.278479960 12.007151029 5.090761788 CORE 18 Si Si 0.0000 18 Si -11.006126860 12.032066044 5.089456085 CORE 19 Si Si 0.0000 19 Si -1.205103070 4.762099676 8.859484352 CORE 20 Si Si 0.0000 20 Ti -9.040193727 7.660378097 5.017076839 CORE 21 Ti Ti 0.0000 21 Si 0.676752693 14.948420118 8.914750251 CORE 22 Si Si 0.0000 22 Si -2.266550111 16.323541292 5.107782860 CORE 23 Si Si 0.0000 23 Si -11.893555920 9.152401522 8.807047881 CORE 24 Si Si 0.0000 24 Si 0.742353167 9.122527981 5.734770141 CORE 25 Si Si 0.0000 25 Si -8.998770387 16.295404294 9.539797844 CORE 26 Si Si 0.0000 26 Si -11.833413588 14.935721885 5.728257375 CORE 27 Si Si 0.0000 27 Si -2.199601362 7.705899416 9.536066352 CORE 28 Si Si 0.0000 28 Si -12.033564720 9.203386749 5.722809923 CORE 29 Si Si 0.0000 29 Si -2.224728408 16.301599749 9.549768091 CORE 30 Si Si 0.0000 30 Si 0.622921422 14.950338000 5.771577889 CORE 31 Si Si 0.0000 31 Si -9.050012110 7.648302580 9.226736597 CORE 32 Si Si 0.0000 32 Si -2.148554971 7.752168573 5.085959504 CORE 33 Si Si 0.0000 33 Si -11.882120609 14.943199243 8.852209646 CORE 34 Si Si 0.0000 34 Si -8.946602424 16.223323381 5.061736299 CORE 35 Si Si 0.0000 35 Si 0.652301131 9.140680464 8.871705498 CORE 36 Si Si 0.0000 36 O -15.226802410 7.760247747 3.371913845 CORE 37 O O 0.0000 37 O -5.616350772 14.962019417 7.399905731 CORE 38 O O 0.0000 38 O -15.213525588 16.120334237 3.615397279 CORE 39 O O 0.0000 39 O -5.540549910 9.079860203 7.290494856 CORE 40 O O 0.0000 40 O -10.602248379 4.364635103 7.404919952 CORE 41 O O 0.0000 41 O -0.747460096 11.980050884 3.534146496 CORE 42 O O 0.0000 42 O -10.431973850 12.085506967 3.565134038 CORE 43 O O 0.0000 43 O -0.780712196 4.729924965 7.288844775 CORE 44 O O 0.0000 44 O -13.141147517 6.141172218 3.493425368 CORE 45 O O 0.0000 45 O -3.529400720 13.347576209 7.261465564 CORE 46 O O 0.0000 46 O -7.617856129 10.754329996 7.267954901 CORE 47 O O 0.0000 47 O 2.118614861 17.950675958 3.513312991 CORE 48 O O 0.0000 48 O -3.489034483 10.710568140 7.405188943 CORE 49 O O 0.0000 49 O -13.306295679 17.921827593 3.254759661 CORE 50 O O 0.0000 50 O 1.910530351 6.161063263 3.492655746 CORE 51 O O 0.0000 51 O -7.747318524 13.368216100 7.155546554 CORE 52 O O 0.0000 52 O -11.593835161 4.548194145 4.973868227 CORE 53 O O 0.0000 53 O -1.666501812 12.142883114 8.690609459 CORE 54 O O 0.0000 54 O 0.099090629 4.725279526 4.790608239 CORE 55 O O 0.0000 55 O -9.401761694 12.037806427 8.757944740 CORE 56 O O 0.0000 56 O -1.610849043 11.965332424 6.026680510 CORE 57 O O 0.0000 57 O -11.164442818 4.831055760 9.958646419 CORE 58 O O 0.0000 58 O -9.743446373 11.934982619 6.119255929 CORE 59 O O 0.0000 59 O 0.171103584 4.687359964 9.729854423 CORE 60 O O 0.0000 60 O -10.536940229 8.595323387 5.457894905 CORE 61 O O 0.0000 61 O -0.783125271 15.622739828 9.202678165 CORE 62 O O 0.0000 62 O -10.468150353 8.361494955 8.844051666 CORE 63 O O 0.0000 63 O -0.846411780 15.624498571 5.514747669 CORE 64 O O 0.0000 64 O -0.696288616 8.433708194 5.379787576 CORE 65 O O 0.0000 65 O -10.499840179 15.744814234 9.209155330 CORE 66 O O 0.0000 66 O -10.279078122 15.396051161 5.509288654 CORE 67 O O 0.0000 67 O -0.794378529 8.456897044 9.176798489 CORE 68 O O 0.0000 68 O -12.462500967 9.092795127 7.288447678 CORE 69 O O 0.0000 69 O -2.551083254 16.090498895 3.522861570 CORE 70 O O 0.0000 70 O -8.860639472 7.749059602 3.229860631 CORE 71 O O 0.0000 71 O 1.018011874 15.114911386 7.336295780 CORE 72 O O 0.0000 72 O -2.497231007 7.903211130 3.510862479 CORE 73 O O 0.0000 73 O -12.238976738 15.163131145 7.282602217 CORE 74 O O 0.0000 74 O 1.046964931 8.911995067 7.313252378 CORE 75 O O 0.0000 75 O -8.637053468 15.981810882 3.485336082 CORE 76 O O 0.0000 76 O -13.155434679 8.403992926 4.866304232 CORE 77 O O 0.0000 77 O -3.401060282 15.605561781 8.672433916 CORE 78 O O 0.0000 78 O 1.743049363 15.687533657 4.863853947 CORE 79 O O 0.0000 79 O -7.846281947 8.383001892 8.440779933 CORE 80 O O 0.0000 80 O -3.310990540 8.469002543 5.970819879 CORE 81 O O 0.0000 81 O -13.115426006 15.531342731 9.726539274 CORE 82 O O 0.0000 82 O -7.651849721 15.718547837 5.910896918 CORE 83 O O 0.0000 83 O 1.786776469 8.471185079 9.808861153 CORE 84 O O 0.0000 84 O -7.642387748 8.521344054 5.798443232 CORE 85 O O 0.0000 85 O 1.832641454 15.671414949 9.793067886 CORE 86 O O 0.0000 86 O -3.476327107 15.679957990 5.988237819 CORE 87 O O 0.0000 87 O -12.960014629 8.455718639 9.806454382 CORE 88 O O 0.0000 88 O 1.933172347 8.428604655 4.876396879 CORE 89 O O 0.0000 89 O -7.903638437 15.588837943 8.578007433 CORE 90 O O 0.0000 90 O -12.833451812 15.771708248 4.764071680 CORE 91 O O 0.0000 91 O -3.380531724 8.356075877 8.640490907 CORE 92 O O 0.0000 92 O -9.437330839 5.996888444 5.626643898 CORE 93 O O 0.0000 93 O 0.625231154 13.366784717 9.315815891 CORE 94 O O 0.0000 94 O -2.203294008 17.933188283 5.394528309 CORE 95 O O 0.0000 95 O -11.677263412 10.707652759 9.252339675 CORE 96 O O 0.0000 96 O 0.674838436 10.719896207 5.393491673 CORE 97 O O 0.0000 97 O -8.950199232 17.913010240 9.308605010 CORE 98 O O 0.0000 98 O -11.918224753 13.350011292 5.379211558 CORE 99 O O 0.0000 99 O -2.044359337 6.116325529 9.195161093 CORE 100 O O 0.0000 100 O -12.014778372 10.770601644 5.266607249 CORE 101 O O 0.0000 101 O -2.163538979 17.897184872 9.198918983 CORE 102 O O 0.0000 102 O 0.568850748 13.365570851 5.387516432 CORE 103 O O 0.0000 103 O -9.093422066 6.073571119 8.790802669 CORE 104 O O 0.0000 104 O -2.075628285 6.160061006 5.466582803 CORE 105 O O 0.0000 105 O -11.690882018 13.354259892 9.176710321 CORE 106 O O 0.0000 106 O -9.197760688 17.808504377 5.345085810 CORE 107 O O 0.0000 107 O 0.564157770 10.740226181 9.178241654 CORE 108 O O 0.0000 108 O2 12.644057427 5.763146356 4.891785518 CORE 109 O2 O2 0.0000 109 O2 13.575065218 7.464367458 2.879543648 CORE 110 O2 O2 0.0000 110 H 13.229000477 6.690104871 3.378552283 CORE 111 H H 0.0000 111 H 13.366516529 8.208760107 3.481387403 CORE 112 H H 0.0000 112 C 13.906974430 5.692342734 5.622173973 CORE 113 C C 0.0000 113 C 12.960646236 4.556632390 5.643807681 CORE 114 C C 0.0000 114 H 13.166591136 3.653825485 5.032178914 CORE 115 H H 0.0000 115 H 12.339989514 4.404824122 6.549942703 CORE 116 H H 0.0000 116 H 14.798716388 5.641445148 4.968048934 CORE 117 H H 0.0000 117 H 13.979978094 6.354163278 6.508860232 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.305363545 4.759777173 3.516818321 CORE 1 Si Si 0.0000 1 Si -2.574798327 12.041420779 7.341403417 CORE 2 Si Si 0.0000 2 Si 1.076835761 4.777653037 3.480555326 CORE 3 Si Si 0.0000 3 Si -8.630943704 12.017358107 7.315343907 CORE 4 Si Si 0.0000 4 Si -13.619154892 7.696035698 11.084492627 CORE 5 Si Si 0.0000 5 Si -4.002256134 14.901534299 7.329066565 CORE 6 Si Si 0.0000 6 Si -7.152005542 9.191709656 7.208635572 CORE 7 Si Si 0.0000 7 Si 2.432562161 16.349660226 3.543673394 CORE 8 Si Si 0.0000 8 Si -13.618479793 16.332474395 3.447393946 CORE 9 Si Si 0.0000 9 Si -3.930794535 9.146516416 7.329921693 CORE 10 Si Si 0.0000 10 Si -7.227033350 14.902247396 7.265358101 CORE 11 Si Si 0.0000 11 Si 2.413410744 7.706768914 3.491290326 CORE 12 Si Si 0.0000 12 Si -10.208028165 4.582783613 5.833444266 CORE 13 Si Si 0.0000 13 Si -0.305186022 12.054973230 9.578207519 CORE 14 Si Si 0.0000 14 Si -10.807926164 12.042540083 9.587659258 CORE 15 Si Si 0.0000 15 Si -1.230200672 4.788888030 5.727878307 CORE 16 Si Si 0.0000 16 Si -9.965432577 4.701769660 8.871555940 CORE 17 Si Si 0.0000 17 Si -0.278564058 12.006884645 5.091037017 CORE 18 Si Si 0.0000 18 Si -11.005690008 12.032437800 5.089212882 CORE 19 Si Si 0.0000 19 Si -1.205300904 4.761720280 8.859507858 CORE 20 Si Si 0.0000 20 Ti -9.040359231 7.660550497 5.017013395 CORE 21 Ti Ti 0.0000 21 Si 0.676447859 14.948354387 8.914955950 CORE 22 Si Si 0.0000 22 Si -2.266764303 16.323301430 5.107782860 CORE 23 Si Si 0.0000 23 Si -11.893330181 9.152099101 8.807438207 CORE 24 Si Si 0.0000 24 Si 0.742606811 9.122477241 5.734984361 CORE 25 Si Si 0.0000 25 Si -8.998420714 16.295743617 9.539590623 CORE 26 Si Si 0.0000 26 Si -11.832855688 14.936043045 5.728014933 CORE 27 Si Si 0.0000 27 Si -2.199598283 7.705999455 9.536152618 CORE 28 Si Si 0.0000 28 Si -12.034029284 9.203806363 5.722951265 CORE 29 Si Si 0.0000 29 Si -2.225062494 16.301519027 9.550136965 CORE 30 Si Si 0.0000 30 Si 0.622737059 14.950355009 5.771460662 CORE 31 Si Si 0.0000 31 Si -9.050269602 7.648199515 9.226646908 CORE 32 Si Si 0.0000 32 Si -2.148434116 7.752234737 5.086431836 CORE 33 Si Si 0.0000 33 Si -11.881772668 14.942940210 8.851989721 CORE 34 Si Si 0.0000 34 Si -8.946271417 16.223675678 5.061633830 CORE 35 Si Si 0.0000 35 Si 0.652312485 9.140625544 8.871726646 CORE 36 Si Si 0.0000 36 O -15.226944435 7.760124789 3.371994862 CORE 37 O O 0.0000 37 O -5.616375598 14.961850188 7.399897211 CORE 38 O O 0.0000 38 O -15.213607377 16.120033978 3.615276248 CORE 39 O O 0.0000 39 O -5.540737930 9.079441311 7.290749013 CORE 40 O O 0.0000 40 O -10.602247224 4.365828932 7.404861224 CORE 41 O O 0.0000 41 O -0.747268613 11.980110128 3.534330819 CORE 42 O O 0.0000 42 O -10.431542964 12.085285989 3.564710164 CORE 43 O O 0.0000 43 O -0.780873850 4.729489351 7.288909436 CORE 44 O O 0.0000 44 O -13.141431759 6.141354132 3.493474130 CORE 45 O O 0.0000 45 O -3.529204040 13.347470838 7.261736077 CORE 46 O O 0.0000 46 O -7.617368279 10.754687049 7.267214186 CORE 47 O O 0.0000 47 O 2.118547505 17.950149388 3.513387466 CORE 48 O O 0.0000 48 O -3.489349901 10.710429038 7.405261060 CORE 49 O O 0.0000 49 O -13.306180789 17.921662977 3.254148573 CORE 50 O O 0.0000 50 O 1.910428739 6.160771509 3.492616264 CORE 51 O O 0.0000 51 O -7.747620856 13.368756365 7.155288061 CORE 52 O O 0.0000 52 O -11.593864605 4.548645470 4.973561960 CORE 53 O O 0.0000 53 O -1.666815498 12.142556620 8.690982441 CORE 54 O O 0.0000 54 O 0.099198014 4.725408106 4.790656545 CORE 55 O O 0.0000 55 O -9.401594844 12.037318343 8.757736607 CORE 56 O O 0.0000 56 O -1.610855202 11.964820124 6.026842696 CORE 57 O O 0.0000 57 O -11.164583881 4.831456346 9.958579704 CORE 58 O O 0.0000 58 O -9.743310699 11.935086838 6.119288716 CORE 59 O O 0.0000 59 O 0.171084340 4.686980568 9.729870094 CORE 60 O O 0.0000 60 O -10.536561111 8.595717198 5.458604582 CORE 61 O O 0.0000 61 O -0.783558659 15.622647286 9.202627425 CORE 62 O O 0.0000 62 O -10.468705944 8.360738037 8.844118610 CORE 63 O O 0.0000 63 O -0.846648103 15.624454173 5.514873188 CORE 64 O O 0.0000 64 O -0.695799227 8.433525992 5.380122674 CORE 65 O O 0.0000 65 O -10.499392551 15.744417252 9.208767742 CORE 66 O O 0.0000 66 O -10.278740380 15.396468900 5.509253052 CORE 67 O O 0.0000 67 O -0.793990943 8.456710229 9.176754899 CORE 68 O O 0.0000 68 O -12.462526562 9.092540418 7.288692783 CORE 69 O O 0.0000 69 O -2.550941037 16.090166635 3.522974842 CORE 70 O O 0.0000 70 O -8.860605794 7.749439718 3.229833017 CORE 71 O O 0.0000 71 O 1.017998403 15.115234420 7.336413844 CORE 72 O O 0.0000 72 O -2.496889608 7.902918655 3.511092369 CORE 73 O O 0.0000 73 O -12.238780636 15.162871824 7.282505529 CORE 74 O O 0.0000 74 O 1.047275538 8.911511740 7.313475726 CORE 75 O O 0.0000 75 O -8.636800787 15.982315831 3.485193446 CORE 76 O O 0.0000 76 O -13.155289382 8.403779444 4.866343105 CORE 77 O O 0.0000 77 O -3.401069327 15.605700595 8.672748322 CORE 78 O O 0.0000 78 O 1.743070147 15.687452358 4.863764943 CORE 79 O O 0.0000 79 O -7.846857360 8.384097413 8.440527677 CORE 80 O O 0.0000 80 O -3.310982842 8.469218332 5.970913219 CORE 81 O O 0.0000 81 O -13.114953937 15.531188637 9.726617400 CORE 82 O O 0.0000 82 O -7.651528144 15.718966153 5.910665202 CORE 83 O O 0.0000 83 O 1.786433339 8.470787953 9.808836202 CORE 84 O O 0.0000 84 O -7.642314811 8.521504057 5.798538475 CORE 85 O O 0.0000 85 O 1.832389735 15.671202476 9.793493206 CORE 86 O O 0.0000 86 O -3.476215489 15.679930602 5.988255240 CORE 87 O O 0.0000 87 O -12.960517490 8.456132774 9.806882592 CORE 88 O O 0.0000 88 O 1.933301862 8.428465265 4.876461388 CORE 89 O O 0.0000 89 O -7.903127109 15.589573095 8.577573365 CORE 90 O O 0.0000 90 O -12.833560736 15.771868973 4.763909798 CORE 91 O O 0.0000 91 O -3.380309257 8.356117247 8.640329254 CORE 92 O O 0.0000 92 O -9.437616428 5.997326941 5.626436677 CORE 93 O O 0.0000 93 O 0.624974047 13.366517179 9.315336713 CORE 94 O O 0.0000 94 O -2.203269953 17.932891051 5.393952899 CORE 95 O O 0.0000 95 O -11.676837915 10.707368500 9.252537691 CORE 96 O O 0.0000 96 O 0.674977959 10.719736492 5.393716390 CORE 97 O O 0.0000 97 O -8.950595670 17.912929373 9.308272499 CORE 98 O O 0.0000 98 O -11.917887781 13.350182683 5.379157774 CORE 99 O O 0.0000 99 O -2.044236365 6.116191039 9.195096965 CORE 100 O O 0.0000 100 O -12.014840340 10.770915597 5.266612879 CORE 101 O O 0.0000 101 O -2.163861710 17.896941408 9.199212849 CORE 102 O O 0.0000 102 O 0.568748560 13.365448182 5.387900216 CORE 103 O O 0.0000 103 O -9.093103569 6.073579335 8.791126736 CORE 104 O O 0.0000 104 O -2.075593452 6.159962409 5.467013600 CORE 105 O O 0.0000 105 O -11.690638190 13.353957327 9.176500438 CORE 106 O O 0.0000 106 O -9.197529560 17.808807375 5.345124075 CORE 107 O O 0.0000 107 O 0.564112737 10.740083043 9.178081902 CORE 108 O O 0.0000 108 O2 12.644304335 5.762094656 4.891376859 CORE 109 O2 O2 0.0000 109 O2 13.576793957 7.465315227 2.881661497 CORE 110 O2 O2 0.0000 110 H 13.228142747 6.690298317 3.378120346 CORE 111 H H 0.0000 111 H 13.365275255 8.209046384 3.482319516 CORE 112 H H 0.0000 112 C 13.907185542 5.693457858 5.621301653 CORE 113 C C 0.0000 113 C 12.961676590 4.557067715 5.644586128 CORE 114 C C 0.0000 114 H 13.168001185 3.654022390 5.034108256 CORE 115 H H 0.0000 115 H 12.341966508 4.405187517 6.551727128 CORE 116 H H 0.0000 116 H 14.798370563 5.642091937 4.966942388 CORE 117 H H 0.0000 117 H 13.980027168 6.356290173 6.507393637 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.304083205 4.758398547 3.517916727 CORE 1 Si Si 0.0000 1 Si -2.574996931 12.042292006 7.340548975 CORE 2 Si Si 0.0000 2 Si 1.076531120 4.779912404 3.480695071 CORE 3 Si Si 0.0000 3 Si -8.631963089 12.016460934 7.315091347 CORE 4 Si Si 0.0000 4 Si -13.617707509 7.695324907 11.084071719 CORE 5 Si Si 0.0000 5 Si -4.003524928 14.901762773 7.328128063 CORE 6 Si Si 0.0000 6 Si -7.152559978 9.189321566 7.209533376 CORE 7 Si Si 0.0000 7 Si 2.432213642 16.351239360 3.543151844 CORE 8 Si Si 0.0000 8 Si -13.617715207 16.332650687 3.447892447 CORE 9 Si Si 0.0000 9 Si -3.929019995 9.145925988 7.329937211 CORE 10 Si Si 0.0000 10 Si -7.227636282 14.901074325 7.266351908 CORE 11 Si Si 0.0000 11 Si 2.414005209 7.708063357 3.490903956 CORE 12 Si Si 0.0000 12 Si -10.208050874 4.581841321 5.834592043 CORE 13 Si Si 0.0000 13 Si -0.304324250 12.055883809 9.578075078 CORE 14 Si Si 0.0000 14 Si -10.809180332 12.043603603 9.588778128 CORE 15 Si Si 0.0000 15 Si -1.229699736 4.790124959 5.728501719 CORE 16 Si Si 0.0000 16 Si -9.965589420 4.700832846 8.870936560 CORE 17 Si Si 0.0000 17 Si -0.278659704 12.007656122 5.090149407 CORE 18 Si Si 0.0000 18 Si -11.007250357 12.031014345 5.090917432 CORE 19 Si Si 0.0000 19 Si -1.204540166 4.763087950 8.859264655 CORE 20 Si Si 0.0000 20 Ti -9.038892218 7.659397030 5.016595454 CORE 21 Ti Ti 0.0000 21 Si 0.677995699 14.948372261 8.914465436 CORE 22 Si Si 0.0000 22 Si -2.266554922 16.324339724 5.108234653 CORE 23 Si Si 0.0000 23 Si -11.892825397 9.153223018 8.805909841 CORE 24 Si Si 0.0000 24 Si 0.741053005 9.122704273 5.733797939 CORE 25 Si Si 0.0000 25 Si -8.999702979 16.295346346 9.540570281 CORE 26 Si Si 0.0000 26 Si -11.834286521 14.935192287 5.729322233 CORE 27 Si Si 0.0000 27 Si -2.200433497 7.705868136 9.535455264 CORE 28 Si Si 0.0000 28 Si -12.034333348 9.202725113 5.722693608 CORE 29 Si Si 0.0000 29 Si -2.224376040 16.301409619 9.548630051 CORE 30 Si Si 0.0000 30 Si 0.623243576 14.950427803 5.771345260 CORE 31 Si Si 0.0000 31 Si -9.050426061 7.647611681 9.227721123 CORE 32 Si Si 0.0000 32 Si -2.149705411 7.752204466 5.084903774 CORE 33 Si Si 0.0000 33 Si -11.883571842 14.943976486 8.852290587 CORE 34 Si Si 0.0000 34 Si -8.948310763 16.222657709 5.062105249 CORE 35 Si Si 0.0000 35 Si 0.651147612 9.140733510 8.871355794 CORE 36 Si Si 0.0000 36 O -15.226412900 7.760438166 3.371074085 CORE 37 O O 0.0000 37 O -5.616588250 14.963331159 7.401000638 CORE 38 O O 0.0000 38 O -15.214422962 16.121098507 3.615528960 CORE 39 O O 0.0000 39 O -5.541841220 9.081292884 7.290215443 CORE 40 O O 0.0000 40 O -10.601355816 4.361100608 7.404561348 CORE 41 O O 0.0000 41 O -0.747883284 11.980640447 3.533143485 CORE 42 O O 0.0000 42 O -10.433406608 12.085762973 3.565503140 CORE 43 O O 0.0000 43 O -0.780407939 4.731409395 7.289148987 CORE 44 O O 0.0000 44 O -13.141221608 6.140431588 3.492401969 CORE 45 O O 0.0000 45 O -3.530101414 13.347783926 7.260958923 CORE 46 O O 0.0000 46 O -7.618562019 10.752110126 7.269617534 CORE 47 O O 0.0000 47 O 2.118445509 17.952083558 3.513590503 CORE 48 O O 0.0000 48 O -3.487638483 10.709847547 7.405283805 CORE 49 O O 0.0000 49 O -13.307152254 17.922080572 3.256948333 CORE 50 O O 0.0000 50 O 1.910492247 6.161977013 3.492543996 CORE 51 O O 0.0000 51 O -7.746223509 13.365284286 7.156472277 CORE 52 O O 0.0000 52 O -11.594567224 4.546722544 4.975364718 CORE 53 O O 0.0000 53 O -1.664774420 12.144630468 8.689511433 CORE 54 O O 0.0000 54 O 0.099109104 4.725053935 4.789941010 CORE 55 O O 0.0000 55 O -9.401917190 12.040198265 8.758498318 CORE 56 O O 0.0000 56 O -1.611040142 11.967175061 6.025608197 CORE 57 O O 0.0000 57 O -11.165486258 4.829045192 9.960042420 CORE 58 O O 0.0000 58 O -9.743954429 11.935079487 6.119928179 CORE 59 O O 0.0000 59 O 0.171409188 4.689425597 9.730075033 CORE 60 O O 0.0000 60 O -10.538010804 8.593208745 5.455741986 CORE 61 O O 0.0000 61 O -0.781330524 15.623257750 9.203060275 CORE 62 O O 0.0000 62 O -10.466459141 8.364410624 8.841914799 CORE 63 O O 0.0000 63 O -0.845852726 15.624362640 5.514215620 CORE 64 O O 0.0000 64 O -0.697408072 8.435214535 5.379179531 CORE 65 O O 0.0000 65 O -10.501763096 15.744426621 9.210369214 CORE 66 O O 0.0000 66 O -10.281441354 15.395282711 5.509755585 CORE 67 O O 0.0000 67 O -0.794706841 8.457813389 9.176353771 CORE 68 O O 0.0000 68 O -12.461987522 9.094749189 7.287099299 CORE 69 O O 0.0000 69 O -2.552078583 16.090884201 3.521943075 CORE 70 O O 0.0000 70 O -8.860960278 7.746957356 3.229691066 CORE 71 O O 0.0000 71 O 1.018160827 15.113388324 7.336217045 CORE 72 O O 0.0000 72 O -2.498281375 7.904196666 3.509756237 CORE 73 O O 0.0000 73 O -12.239849479 15.164247423 7.283302309 CORE 74 O O 0.0000 74 O 1.046255577 8.913343854 7.312936603 CORE 75 O O 0.0000 75 O -8.637808239 15.979858838 3.486180026 CORE 76 O O 0.0000 76 O -13.156837030 8.404523101 4.866507117 CORE 77 O O 0.0000 77 O -3.400051482 15.606094983 8.672224337 CORE 78 O O 0.0000 78 O 1.743176954 15.688223979 4.863245066 CORE 79 O O 0.0000 79 O -7.843098897 8.381207113 8.440346550 CORE 80 O O 0.0000 80 O -3.311258425 8.468024215 5.971540663 CORE 81 O O 0.0000 81 O -13.116895906 15.532104982 9.726595263 CORE 82 O O 0.0000 82 O -7.652876034 15.716032032 5.911801188 CORE 83 O O 0.0000 83 O 1.787247769 8.472937624 9.808193088 CORE 84 O O 0.0000 84 O -7.643316490 8.521625429 5.798802673 CORE 85 O O 0.0000 85 O 1.833767069 15.672155723 9.791831181 CORE 86 O O 0.0000 86 O -3.476011304 15.680629572 5.987401406 CORE 87 O O 0.0000 87 O -12.958937511 8.453325504 9.806023129 CORE 88 O O 0.0000 88 O 1.932315194 8.428247025 4.875848551 CORE 89 O O 0.0000 89 O -7.904145146 15.586627731 8.578939545 CORE 90 O O 0.0000 90 O -12.833804757 15.772352876 4.763665606 CORE 91 O O 0.0000 91 O -3.381694288 8.355247750 8.640855521 CORE 92 O O 0.0000 92 O -9.436086678 5.995198028 5.626696464 CORE 93 O O 0.0000 93 O 0.626475315 13.367721098 9.317149132 CORE 94 O O 0.0000 94 O -2.203363674 17.934491375 5.396266177 CORE 95 O O 0.0000 95 O -11.678691359 10.709615902 9.251639659 CORE 96 O O 0.0000 96 O 0.674144285 10.719758546 5.392579492 CORE 97 O O 0.0000 97 O -8.948139102 17.911533450 9.309818133 CORE 98 O O 0.0000 98 O -11.919638843 13.348887518 5.379902293 CORE 99 O O 0.0000 99 O -2.044674948 6.115859356 9.195669636 CORE 100 O O 0.0000 100 O -12.015266991 10.768311863 5.266402996 CORE 101 O O 0.0000 101 O -2.162248054 17.898132930 9.198567301 CORE 102 O O 0.0000 102 O 0.569591664 13.366274435 5.387011085 CORE 103 O O 0.0000 103 O -9.094999158 6.073052188 8.790280281 CORE 104 O O 0.0000 104 O -2.075204520 6.159640816 5.464754180 CORE 105 O O 0.0000 105 O -11.690501361 13.354937241 9.177815422 CORE 106 O O 0.0000 106 O -9.198693087 17.807489579 5.345208667 CORE 107 O O 0.0000 107 O 0.564583652 10.740384023 9.178346557 CORE 108 O O 0.0000 108 O2 12.642718005 5.766406682 4.893386153 CORE 109 O2 O2 0.0000 109 O2 13.570846233 7.463845644 2.873900310 CORE 110 O2 O2 0.0000 110 H 13.230183055 6.687528957 3.377604881 CORE 111 H H 0.0000 111 H 13.373180151 8.206867451 3.475202964 CORE 112 H H 0.0000 112 C 13.907466705 5.688000581 5.624966354 CORE 113 C C 0.0000 113 C 12.957264582 4.555128644 5.639762011 CORE 114 C C 0.0000 114 H 13.162161230 3.653763646 5.025847656 CORE 115 H H 0.0000 115 H 12.333431353 4.403011035 6.543911093 CORE 116 H H 0.0000 116 H 14.800069473 5.638926893 4.972853500 CORE 117 H H 0.0000 117 H 13.978258400 6.347328528 6.513058275 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.304188857 4.758512279 3.517826125 CORE 1 Si Si 0.0000 1 Si -2.574980573 12.042220220 7.340619418 CORE 2 Si Si 0.0000 2 Si 1.076556138 4.779726021 3.480683584 CORE 3 Si Si 0.0000 3 Si -8.631878990 12.016534882 7.315112191 CORE 4 Si Si 0.0000 4 Si -13.617826825 7.695383575 11.084106484 CORE 5 Si Si 0.0000 5 Si -4.003420237 14.901743890 7.328205429 CORE 6 Si Si 0.0000 6 Si -7.152514176 9.189518615 7.209459282 CORE 7 Si Si 0.0000 7 Si 2.432242509 16.351109195 3.543194824 CORE 8 Si Si 0.0000 8 Si -13.617778136 16.332636128 3.447851292 CORE 9 Si Si 0.0000 9 Si -3.929166446 9.145974710 7.329935918 CORE 10 Si Si 0.0000 10 Si -7.227586631 14.901171048 7.266269978 CORE 11 Si Si 0.0000 11 Si 2.413956135 7.707956688 3.490935830 CORE 12 Si Si 0.0000 12 Si -10.208048950 4.581919017 5.834497409 CORE 13 Si Si 0.0000 13 Si -0.304395263 12.055808708 9.578086032 CORE 14 Si Si 0.0000 14 Si -10.809076989 12.043515961 9.588685852 CORE 15 Si Si 0.0000 15 Si -1.229740919 4.790022903 5.728450294 CORE 16 Si Si 0.0000 16 Si -9.965576526 4.700910109 8.870987681 CORE 17 Si Si 0.0000 17 Si -0.278651813 12.007592409 5.090222664 CORE 18 Si Si 0.0000 18 Si -11.007121804 12.031131681 5.090776850 CORE 19 Si Si 0.0000 19 Si -1.204602904 4.762975083 8.859284738 CORE 20 Si Si 0.0000 20 Ti -9.039013266 7.659492167 5.016629915 CORE 21 Ti Ti 0.0000 21 Si 0.677867915 14.948370820 8.914505907 CORE 22 Si Si 0.0000 22 Si -2.266572049 16.324254100 5.108197377 CORE 23 Si Si 0.0000 23 Si -11.892866965 9.153130332 8.806035893 CORE 24 Si Si 0.0000 24 Si 0.741181173 9.122685534 5.733895768 CORE 25 Si Si 0.0000 25 Si -8.999597134 16.295379068 9.540489492 CORE 26 Si Si 0.0000 26 Si -11.834168552 14.935262487 5.729214439 CORE 27 Si Si 0.0000 27 Si -2.200364601 7.705879092 9.535512775 CORE 28 Si Si 0.0000 28 Si -12.034308137 9.202814340 5.722714833 CORE 29 Si Si 0.0000 29 Si -2.224432619 16.301418700 9.548754353 CORE 30 Si Si 0.0000 30 Si 0.623201815 14.950421893 5.771354769 CORE 31 Si Si 0.0000 31 Si -9.050413167 7.647660259 9.227632499 CORE 32 Si Si 0.0000 32 Si -2.149600528 7.752206916 5.085029826 CORE 33 Si Si 0.0000 33 Si -11.883423466 14.943891007 8.852265711 CORE 34 Si Si 0.0000 34 Si -8.948142566 16.222741602 5.062066376 CORE 35 Si Si 0.0000 35 Si 0.651243642 9.140724573 8.871386375 CORE 36 Si Si 0.0000 36 O -15.226456778 7.760412363 3.371150081 CORE 37 O O 0.0000 37 O -5.616570545 14.963208922 7.400909655 CORE 38 O O 0.0000 38 O -15.214355798 16.121010721 3.615508116 CORE 39 O O 0.0000 39 O -5.541750194 9.081140232 7.290259489 CORE 40 O O 0.0000 40 O -10.601429330 4.361490527 7.404586071 CORE 41 O O 0.0000 41 O -0.747832479 11.980596626 3.533241466 CORE 42 O O 0.0000 42 O -10.433252844 12.085723620 3.565437794 CORE 43 O O 0.0000 43 O -0.780446236 4.731251121 7.289129209 CORE 44 O O 0.0000 44 O -13.141238928 6.140507698 3.492490441 CORE 45 O O 0.0000 45 O -3.530027515 13.347758123 7.261022976 CORE 46 O O 0.0000 46 O -7.618463487 10.752322744 7.269419366 CORE 47 O O 0.0000 47 O 2.118453976 17.951923987 3.513573767 CORE 48 O O 0.0000 48 O -3.487779545 10.709895404 7.405281903 CORE 49 O O 0.0000 49 O -13.307072005 17.922046120 3.256717454 CORE 50 O O 0.0000 50 O 1.910487051 6.161877552 3.492549929 CORE 51 O O 0.0000 51 O -7.746338784 13.365570707 7.156374600 CORE 52 O O 0.0000 52 O -11.594509298 4.546881106 4.975216073 CORE 53 O O 0.0000 53 O -1.664942618 12.144459365 8.689632692 CORE 54 O O 0.0000 54 O 0.099116417 4.725083197 4.789999966 CORE 55 O O 0.0000 55 O -9.401890633 12.039960710 8.758435558 CORE 56 O O 0.0000 56 O -1.611024746 11.966980750 6.025709981 CORE 57 O O 0.0000 57 O -11.165411782 4.829244116 9.959921769 CORE 58 O O 0.0000 58 O -9.743901314 11.935080063 6.119875461 CORE 59 O O 0.0000 59 O 0.171382438 4.689223934 9.730058145 CORE 60 O O 0.0000 60 O -10.537891295 8.593415596 5.455978038 CORE 61 O O 0.0000 61 O -0.781514309 15.623207443 9.203024522 CORE 62 O O 0.0000 62 O -10.466644466 8.364107626 8.842096536 CORE 63 O O 0.0000 63 O -0.845918350 15.624370136 5.514269860 CORE 64 O O 0.0000 64 O -0.697275285 8.435075288 5.379257277 CORE 65 O O 0.0000 65 O -10.501567764 15.744425901 9.210237076 CORE 66 O O 0.0000 66 O -10.281218502 15.395380587 5.509714202 CORE 67 O O 0.0000 67 O -0.794647760 8.457722432 9.176386862 CORE 68 O O 0.0000 68 O -12.462031977 9.094566987 7.287230676 CORE 69 O O 0.0000 69 O -2.551984670 16.090825100 3.522028200 CORE 70 O O 0.0000 70 O -8.860931027 7.747162045 3.229702781 CORE 71 O O 0.0000 71 O 1.018147356 15.113540688 7.336233325 CORE 72 O O 0.0000 72 O -2.498166485 7.904091294 3.509866466 CORE 73 O O 0.0000 73 O -12.239761339 15.164133979 7.283236582 CORE 74 O O 0.0000 74 O 1.046339675 8.913192787 7.312981029 CORE 75 O O 0.0000 75 O -8.637725103 15.980061510 3.486098629 CORE 76 O O 0.0000 76 O -13.156709438 8.404461838 4.866493652 CORE 77 O O 0.0000 77 O -3.400135388 15.606062405 8.672267546 CORE 78 O O 0.0000 78 O 1.743168102 15.688160410 4.863287894 CORE 79 O O 0.0000 79 O -7.843408734 8.381445533 8.440361460 CORE 80 O O 0.0000 80 O -3.311235716 8.468122812 5.971488934 CORE 81 O O 0.0000 81 O -13.116735791 15.532029449 9.726597089 CORE 82 O O 0.0000 82 O -7.652764992 15.716274056 5.911707467 CORE 83 O O 0.0000 83 O 1.787180605 8.472760322 9.808246186 CORE 84 O O 0.0000 84 O -7.643233931 8.521615339 5.798780841 CORE 85 O O 0.0000 85 O 1.833653526 15.672077162 9.791968263 CORE 86 O O 0.0000 86 O -3.476028239 15.680571913 5.987471773 CORE 87 O O 0.0000 87 O -12.959067797 8.453557004 9.806094028 CORE 88 O O 0.0000 88 O 1.932396406 8.428265044 4.875899139 CORE 89 O O 0.0000 89 O -7.904061047 15.586870619 8.578826883 CORE 90 O O 0.0000 90 O -12.833784550 15.772312947 4.763685765 CORE 91 O O 0.0000 91 O -3.381580167 8.355319391 8.640812084 CORE 92 O O 0.0000 92 O -9.436212730 5.995373599 5.626675087 CORE 93 O O 0.0000 93 O 0.626351380 13.367621781 9.316999650 CORE 94 O O 0.0000 94 O -2.203355976 17.934359480 5.396075388 CORE 95 O O 0.0000 95 O -11.678538557 10.709430529 9.251713753 CORE 96 O O 0.0000 96 O 0.674212988 10.719756672 5.392673213 CORE 97 O O 0.0000 97 O -8.948341747 17.911648479 9.309690636 CORE 98 O O 0.0000 98 O -11.919494317 13.348994332 5.379840903 CORE 99 O O 0.0000 99 O -2.044638768 6.115886744 9.195622395 CORE 100 O O 0.0000 100 O -12.015231774 10.768526642 5.266420340 CORE 101 O O 0.0000 101 O -2.162381034 17.898034621 9.198620552 CORE 102 O O 0.0000 102 O 0.569522191 13.366206253 5.387084419 CORE 103 O O 0.0000 103 O -9.094842892 6.073095720 8.790350116 CORE 104 O O 0.0000 104 O -2.075236658 6.159667339 5.464940557 CORE 105 O O 0.0000 105 O -11.690512715 13.354856374 9.177706943 CORE 106 O O 0.0000 106 O -9.198597249 17.807598266 5.345201668 CORE 107 O O 0.0000 107 O 0.564544778 10.740359229 9.178324725 CORE 108 O O 0.0000 108 O2 12.642848868 5.766051070 4.893220468 CORE 109 O2 O2 0.0000 109 O2 13.571336777 7.463966872 2.874540381 CORE 110 O2 O2 0.0000 110 H 13.230014858 6.687757430 3.377647405 CORE 111 H H 0.0000 111 H 13.372528338 8.207047203 3.475789937 CORE 112 H H 0.0000 112 C 13.907443612 5.688450753 5.624664119 CORE 113 C C 0.0000 113 C 12.957628496 4.555288504 5.640159868 CORE 114 C C 0.0000 114 H 13.162642921 3.653784980 5.026528882 CORE 115 H H 0.0000 115 H 12.334135319 4.403190643 6.544555729 CORE 116 H H 0.0000 116 H 14.799929373 5.639187944 4.972365953 CORE 117 H H 0.0000 117 H 13.978404274 6.348067572 6.512591116 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.303824173 4.757540149 3.518842221 CORE 1 Si Si 0.0000 1 Si -2.575134144 12.042176832 7.340103344 CORE 2 Si Si 0.0000 2 Si 1.076651783 4.781276182 3.480741551 CORE 3 Si Si 0.0000 3 Si -8.631828569 12.014980396 7.315941454 CORE 4 Si Si 0.0000 4 Si -13.617585306 7.694098500 11.084035357 CORE 5 Si Si 0.0000 5 Si -4.004276043 14.902855554 7.327675510 CORE 6 Si Si 0.0000 6 Si -7.152782638 9.187794468 7.209599483 CORE 7 Si Si 0.0000 7 Si 2.432051026 16.352585121 3.542688868 CORE 8 Si Si 0.0000 8 Si -13.618960907 16.332420628 3.448496840 CORE 9 Si Si 0.0000 9 Si -3.928860842 9.145830130 7.330003318 CORE 10 Si Si 0.0000 10 Si -7.228565025 14.899580814 7.266683659 CORE 11 Si Si 0.0000 11 Si 2.414552909 7.709132355 3.489828828 CORE 12 Si Si 0.0000 12 Si -10.207802619 4.581602469 5.835513505 CORE 13 Si Si 0.0000 13 Si -0.303551581 12.056496580 9.577845416 CORE 14 Si Si 0.0000 14 Si -10.809326206 12.044908569 9.588764739 CORE 15 Si Si 0.0000 15 Si -1.228937266 4.790431993 5.728952066 CORE 16 Si Si 0.0000 16 Si -9.966020113 4.699153817 8.871212246 CORE 17 Si Si 0.0000 17 Si -0.278798649 12.008371237 5.089353996 CORE 18 Si Si 0.0000 18 Si -11.008136377 12.030212885 5.091763887 CORE 19 Si Si 0.0000 19 Si -1.203760184 4.763303307 8.859432699 CORE 20 Si Si 0.0000 20 Ti -9.037523930 7.657305451 5.016300674 CORE 21 Ti Ti 0.0000 21 Si 0.679301250 14.948439146 8.914919968 CORE 22 Si Si 0.0000 22 Si -2.266322255 16.325294268 5.107457423 CORE 23 Si Si 0.0000 23 Si -11.891865863 9.154320701 8.805776867 CORE 24 Si Si 0.0000 24 Si 0.740304584 9.123050083 5.733146990 CORE 25 Si Si 0.0000 25 Si -9.000323038 16.294215222 9.541317614 CORE 26 Si Si 0.0000 26 Si -11.835687140 14.934708240 5.729755388 CORE 27 Si Si 0.0000 27 Si -2.200947904 7.705888317 9.534595953 CORE 28 Si Si 0.0000 28 Si -12.035980682 9.201670098 5.721588964 CORE 29 Si Si 0.0000 29 Si -2.223408616 16.301777627 9.548408149 CORE 30 Si Si 0.0000 30 Si 0.623786080 14.950974555 5.770290748 CORE 31 Si Si 0.0000 31 Si -9.050177806 7.647310558 9.226990070 CORE 32 Si Si 0.0000 32 Si -2.150532735 7.752416218 5.084211289 CORE 33 Si Si 0.0000 33 Si -11.885253432 14.943865493 8.852669122 CORE 34 Si Si 0.0000 34 Si -8.949863992 16.221128016 5.063058586 CORE 35 Si Si 0.0000 35 Si 0.650561230 9.141476734 8.870919977 CORE 36 Si Si 0.0000 36 O -15.225554400 7.760518600 3.370092069 CORE 37 O O 0.0000 37 O -5.617692888 14.965006152 7.402365068 CORE 38 O O 0.0000 38 O -15.214584423 16.121865227 3.615445737 CORE 39 O O 0.0000 39 O -5.540927874 9.082525489 7.290198783 CORE 40 O O 0.0000 40 O -10.600025247 4.357770803 7.405280154 CORE 41 O O 0.0000 41 O -0.748219679 11.981638235 3.532745779 CORE 42 O O 0.0000 42 O -10.434987933 12.085562752 3.566280142 CORE 43 O O 0.0000 43 O -0.779954345 4.733223922 7.289369064 CORE 44 O O 0.0000 44 O -13.141241815 6.139236750 3.491322125 CORE 45 O O 0.0000 45 O -3.531022844 13.347876036 7.260605492 CORE 46 O O 0.0000 46 O -7.619811376 10.750102585 7.270678512 CORE 47 O O 0.0000 47 O 2.117900503 17.953227944 3.514048990 CORE 48 O O 0.0000 48 O -3.485796008 10.708535950 7.405576150 CORE 49 O O 0.0000 49 O -13.308089272 17.922238557 3.258997489 CORE 50 O O 0.0000 50 O 1.910422966 6.163508868 3.492322702 CORE 51 O O 0.0000 51 O -7.744066578 13.363570229 7.157084429 CORE 52 O O 0.0000 52 O -11.595405325 4.545361936 4.977511855 CORE 53 O O 0.0000 53 O -1.663303751 12.146743237 8.687741234 CORE 54 O O 0.0000 54 O 0.098703814 4.725138406 4.789794419 CORE 55 O O 0.0000 55 O -9.402381754 12.042780377 8.759114122 CORE 56 O O 0.0000 56 O -1.611654813 11.969076365 6.024457225 CORE 57 O O 0.0000 57 O -11.165020155 4.826494360 9.959939114 CORE 58 O O 0.0000 58 O -9.745139317 11.935184858 6.120480234 CORE 59 O O 0.0000 59 O 0.171609716 4.692127928 9.730160614 CORE 60 O O 0.0000 60 O -10.538209023 8.590427565 5.453440042 CORE 61 O O 0.0000 61 O -0.780238780 15.624285521 9.203592020 CORE 62 O O 0.0000 62 O -10.464437308 8.367395341 8.838784201 CORE 63 O O 0.0000 63 O -0.846261095 15.624619078 5.513575777 CORE 64 O O 0.0000 64 O -0.699070418 8.436702857 5.378597579 CORE 65 O O 0.0000 65 O -10.502852531 15.744018252 9.211671569 CORE 66 O O 0.0000 66 O -10.283062131 15.395328838 5.510242827 CORE 67 O O 0.0000 67 O -0.795548598 8.458267742 9.175770678 CORE 68 O O 0.0000 68 O -12.461401525 9.096906932 7.287248705 CORE 69 O O 0.0000 69 O -2.552900711 16.091328895 3.521670660 CORE 70 O O 0.0000 70 O -8.861359988 7.744468218 3.229510547 CORE 71 O O 0.0000 71 O 1.018497222 15.111751098 7.335832272 CORE 72 O O 0.0000 72 O -2.499587311 7.905204112 3.509066947 CORE 73 O O 0.0000 73 O -12.241168693 15.165436783 7.283897497 CORE 74 O O 0.0000 74 O 1.045373791 8.914460131 7.312315245 CORE 75 O O 0.0000 75 O -8.638779127 15.977798539 3.487033100 CORE 76 O O 0.0000 76 O -13.158872335 8.404485046 4.866494793 CORE 77 O O 0.0000 77 O -3.399236475 15.606510848 8.671246962 CORE 78 O O 0.0000 78 O 1.743165985 15.689095782 4.862318659 CORE 79 O O 0.0000 79 O -7.841711941 8.378346940 8.441658490 CORE 80 O O 0.0000 80 O -3.311450100 8.466568614 5.972185374 CORE 81 O O 0.0000 81 O -13.118101000 15.532726834 9.726380588 CORE 82 O O 0.0000 82 O -7.654935971 15.713619869 5.911956907 CORE 83 O O 0.0000 83 O 1.787237376 8.474713808 9.807229938 CORE 84 O O 0.0000 84 O -7.644805827 8.522083386 5.799095171 CORE 85 O O 0.0000 85 O 1.835365329 15.673398562 9.791077154 CORE 86 O O 0.0000 86 O -3.475933941 15.681176900 5.986832386 CORE 87 O O 0.0000 87 O -12.956978800 8.451367117 9.804974626 CORE 88 O O 0.0000 88 O 1.930906107 8.427791087 4.875546544 CORE 89 O O 0.0000 89 O -7.904725947 15.584813636 8.580173816 CORE 90 O O 0.0000 90 O -12.833780509 15.772742650 4.763871153 CORE 91 O O 0.0000 91 O -3.383152640 8.354127580 8.640970543 CORE 92 O O 0.0000 92 O -9.434755917 5.993746463 5.626467030 CORE 93 O O 0.0000 93 O 0.627899027 13.367923769 9.318411778 CORE 94 O O 0.0000 94 O -2.203614238 17.935025874 5.397697399 CORE 95 O O 0.0000 95 O -11.680331380 10.710776865 9.250641896 CORE 96 O O 0.0000 96 O 0.673182634 10.719629967 5.391503299 CORE 97 O O 0.0000 97 O -8.946942090 17.911186775 9.310368972 CORE 98 O O 0.0000 98 O -11.921470926 13.347796755 5.381187076 CORE 99 O O 0.0000 99 O -2.045261907 6.115836292 9.196366533 CORE 100 O O 0.0000 100 O -12.015798334 10.766842424 5.265776922 CORE 101 O O 0.0000 101 O -2.160994078 17.898136390 9.198638200 CORE 102 O O 0.0000 102 O 0.570306215 13.366129134 5.386672183 CORE 103 O O 0.0000 103 O -9.097049858 6.072534410 8.790048185 CORE 104 O O 0.0000 104 O -2.074914504 6.159861794 5.462461745 CORE 105 O O 0.0000 105 O -11.690248487 13.356454392 9.178789069 CORE 106 O O 0.0000 106 O -9.199483461 17.806357589 5.345420984 CORE 107 O O 0.0000 107 O 0.564924281 10.740523846 9.178241958 CORE 108 O O 0.0000 108 O2 12.642903715 5.768874197 4.895374603 CORE 109 O2 O2 0.0000 109 O2 13.567905856 7.459622846 2.867179790 CORE 110 O2 O2 0.0000 110 H 13.231257094 6.685865207 3.374468425 CORE 111 H H 0.0000 111 H 13.380562364 8.207220036 3.469613105 CORE 112 H H 0.0000 112 C 13.906689995 5.683436730 5.627506632 CORE 113 C C 0.0000 113 C 12.953448578 4.554412376 5.634766808 CORE 114 C C 0.0000 114 H 13.157376840 3.654286324 5.019101728 CORE 115 H H 0.0000 115 H 12.326693447 4.400391877 6.537538147 CORE 116 H H 0.0000 116 H 14.801546493 5.635961925 4.978050522 CORE 117 H H 0.0000 117 H 13.975937699 6.340238349 6.517792626 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.303240678 4.755984943 3.520467883 CORE 1 Si Si 0.0000 1 Si -2.575380090 12.042107641 7.339277657 CORE 2 Si Si 0.0000 2 Si 1.076804585 4.783756527 3.480834359 CORE 3 Si Si 0.0000 3 Si -8.631747742 12.012493132 7.317268228 CORE 4 Si Si 0.0000 4 Si -13.617198875 7.692042526 11.083921629 CORE 5 Si Si 0.0000 5 Si -4.005644908 14.904634333 7.326827609 CORE 6 Si Si 0.0000 6 Si -7.153212176 9.185035775 7.209823819 CORE 7 Si Si 0.0000 7 Si 2.431744845 16.354946399 3.541879232 CORE 8 Si Si 0.0000 8 Si -13.620853225 16.332075683 3.449529596 CORE 9 Si Si 0.0000 9 Si -3.928372030 9.145598774 7.330111036 CORE 10 Si Si 0.0000 10 Si -7.230130762 14.897036179 7.267345562 CORE 11 Si Si 0.0000 11 Si 2.415507631 7.711013478 3.488057716 CORE 12 Si Si 0.0000 12 Si -10.207408298 4.581096079 5.837139243 CORE 13 Si Si 0.0000 13 Si -0.302201383 12.057597289 9.577460415 CORE 14 Si Si 0.0000 14 Si -10.809725146 12.047136944 9.588890867 CORE 15 Si Si 0.0000 15 Si -1.227651537 4.791086567 5.729754855 CORE 16 Si Si 0.0000 16 Si -9.966729852 4.696343952 8.871571535 CORE 17 Si Si 0.0000 17 Si -0.279033626 12.009617247 5.087964158 CORE 18 Si Si 0.0000 18 Si -11.009759656 12.028742582 5.093343145 CORE 19 Si Si 0.0000 19 Si -1.202411718 4.763828436 8.859669435 CORE 20 Si Si 0.0000 20 Ti -9.035140876 7.653806705 5.015773875 CORE 21 Ti Ti 0.0000 21 Si 0.681594817 14.948548554 8.915582404 CORE 22 Si Si 0.0000 22 Si -2.265922353 16.326958450 5.106273360 CORE 23 Si Si 0.0000 23 Si -11.890263753 9.156225321 8.805362502 CORE 24 Si Si 0.0000 24 Si 0.738902040 9.123633303 5.731948929 CORE 25 Si Si 0.0000 25 Si -9.001484255 16.292352981 9.542642563 CORE 26 Si Si 0.0000 26 Si -11.838116959 14.933821733 5.730620861 CORE 27 Si Si 0.0000 27 Si -2.201881458 7.705903020 9.533129129 CORE 28 Si Si 0.0000 28 Si -12.038656446 9.199839570 5.719787575 CORE 29 Si Si 0.0000 29 Si -2.221770326 16.302352055 9.547854191 CORE 30 Si Si 0.0000 30 Si 0.624720788 14.951858899 5.768588253 CORE 31 Si Si 0.0000 31 Si -9.049801382 7.646750977 9.225962183 CORE 32 Si Si 0.0000 32 Si -2.152024188 7.752751217 5.082901707 CORE 33 Si Si 0.0000 33 Si -11.888181107 14.943824699 8.853314594 CORE 34 Si Si 0.0000 34 Si -8.952618273 16.218546192 5.064646136 CORE 35 Si Si 0.0000 35 Si 0.649469101 9.142680077 8.870173709 CORE 36 Si Si 0.0000 36 O -15.224110674 7.760688838 3.368399311 CORE 37 O O 0.0000 37 O -5.619488598 14.967881748 7.404693637 CORE 38 O O 0.0000 38 O -15.214950455 16.123232321 3.615346007 CORE 39 O O 0.0000 39 O -5.539611930 9.084742043 7.290101639 CORE 40 O O 0.0000 40 O -10.597778445 4.351819101 7.406390731 CORE 41 O O 0.0000 41 O -0.748838969 11.983304579 3.531952803 CORE 42 O O 0.0000 42 O -10.437764154 12.085305449 3.567627988 CORE 43 O O 0.0000 43 O -0.779167050 4.736380318 7.289752924 CORE 44 O O 0.0000 44 O -13.141246626 6.137203263 3.489452803 CORE 45 O O 0.0000 45 O -3.532615523 13.348065013 7.259937578 CORE 46 O O 0.0000 46 O -7.621967729 10.746550505 7.272693132 CORE 47 O O 0.0000 47 O 2.117014676 17.955314189 3.514809407 CORE 48 O O 0.0000 48 O -3.482622195 10.706360765 7.406046885 CORE 49 O O 0.0000 49 O -13.309716785 17.922546600 3.262645530 CORE 50 O O 0.0000 50 O 1.910320393 6.166119089 3.491959001 CORE 51 O O 0.0000 51 O -7.740431281 13.360369580 7.158220035 CORE 52 O O 0.0000 52 O -11.596839045 4.542931179 4.981185228 CORE 53 O O 0.0000 53 O -1.660681294 12.150397230 8.684714931 CORE 54 O O 0.0000 54 O 0.098043533 4.725226912 4.789465483 CORE 55 O O 0.0000 55 O -9.403167509 12.047291759 8.760199976 CORE 56 O O 0.0000 56 O -1.612663036 11.972429234 6.022452875 CORE 57 O O 0.0000 57 O -11.164393745 4.822094693 9.959966956 CORE 58 O O 0.0000 58 O -9.747119967 11.935352502 6.121447872 CORE 59 O O 0.0000 59 O 0.171973631 4.696774376 9.730324702 CORE 60 O O 0.0000 60 O -10.538717657 8.585646772 5.449379158 CORE 61 O O 0.0000 61 O -0.778197702 15.626010389 9.204499865 CORE 62 O O 0.0000 62 O -10.460905738 8.372655424 8.833484481 CORE 63 O O 0.0000 63 O -0.846809180 15.625017502 5.512465276 CORE 64 O O 0.0000 64 O -0.701942476 8.439307024 5.377542154 CORE 65 O O 0.0000 65 O -10.504908042 15.743366129 9.213966666 CORE 66 O O 0.0000 66 O -10.286011745 15.395246098 5.511088750 CORE 67 O O 0.0000 67 O -0.796989823 8.459140122 9.174784706 CORE 68 O O 0.0000 68 O -12.460392918 9.100650584 7.287277460 CORE 69 O O 0.0000 69 O -2.554365992 16.092134968 3.521098750 CORE 70 O O 0.0000 70 O -8.862046441 7.740157922 3.229202987 CORE 71 O O 0.0000 71 O 1.019057046 15.108888042 7.335190756 CORE 72 O O 0.0000 72 O -2.501860478 7.906984621 3.507787641 CORE 73 O O 0.0000 73 O -12.243420884 15.167521299 7.284955053 CORE 74 O O 0.0000 74 O 1.043828260 8.916487997 7.311250007 CORE 75 O O 0.0000 75 O -8.640465721 15.974177845 3.488528298 CORE 76 O O 0.0000 76 O -13.162333084 8.404522380 4.866496771 CORE 77 O O 0.0000 77 O -3.397797944 15.607228414 8.669613997 CORE 78 O O 0.0000 78 O 1.743162328 15.690592465 4.860767928 CORE 79 O O 0.0000 79 O -7.838996919 8.373389422 8.443733663 CORE 80 O O 0.0000 80 O -3.311793038 8.464082072 5.973299680 CORE 81 O O 0.0000 81 O -13.120285450 15.533842967 9.726034307 CORE 82 O O 0.0000 82 O -7.658409615 15.709373142 5.912356058 CORE 83 O O 0.0000 83 O 1.787328403 8.477839356 9.805604047 CORE 84 O O 0.0000 84 O -7.647320706 8.522832087 5.799598008 CORE 85 O O 0.0000 85 O 1.838104600 15.675512772 9.789651333 CORE 86 O O 0.0000 86 O -3.475783063 15.682144994 5.985809291 CORE 87 O O 0.0000 87 O -12.953636405 8.447863470 9.803183507 CORE 88 O O 0.0000 88 O 1.928521321 8.427032872 4.874982469 CORE 89 O O 0.0000 89 O -7.905789786 15.581522462 8.582328865 CORE 90 O O 0.0000 90 O -12.833773966 15.773430233 4.764167835 CORE 91 O O 0.0000 91 O -3.385668867 8.352220510 8.641224091 CORE 92 O O 0.0000 92 O -9.432425015 5.991143161 5.626134290 CORE 93 O O 0.0000 93 O 0.630375033 13.368406952 9.320671121 CORE 94 O O 0.0000 94 O -2.204027419 17.936092132 5.400292601 CORE 95 O O 0.0000 95 O -11.683200359 10.712931004 9.248926849 CORE 96 O O 0.0000 96 O 0.671533953 10.719427152 5.389631467 CORE 97 O O 0.0000 97 O -8.944702986 17.910448020 9.311454217 CORE 98 O O 0.0000 98 O -11.924633192 13.345880603 5.383340983 CORE 99 O O 0.0000 99 O -2.046259160 6.115755570 9.197557139 CORE 100 O O 0.0000 100 O -12.016704560 10.764147732 5.264747589 CORE 101 O O 0.0000 101 O -2.158774603 17.898299276 9.198666499 CORE 102 O O 0.0000 102 O 0.571560575 13.366005600 5.386012638 CORE 103 O O 0.0000 103 O -9.100581043 6.071636372 8.789565051 CORE 104 O O 0.0000 104 O -2.074398942 6.160173153 5.458495647 CORE 105 O O 0.0000 105 O -11.689825684 13.359010991 9.180520396 CORE 106 O O 0.0000 106 O -9.200901207 17.804372680 5.345771829 CORE 107 O O 0.0000 107 O 0.565531062 10.740787059 9.178109517 CORE 108 O O 0.0000 108 O2 12.642991663 5.773391200 4.898821205 CORE 109 O2 O2 0.0000 109 O2 13.562416345 7.452672634 2.855402829 CORE 110 O2 O2 0.0000 110 H 13.233244673 6.682837535 3.369382011 CORE 111 H H 0.0000 111 H 13.393416961 8.207496511 3.459730113 CORE 112 H H 0.0000 112 C 13.905484131 5.675414494 5.632054683 CORE 113 C C 0.0000 113 C 12.946760900 4.553010398 5.626138018 CORE 114 C C 0.0000 114 H 13.148951186 3.655088361 5.007218190 CORE 115 H H 0.0000 115 H 12.314786260 4.395913794 6.526310123 CORE 116 H H 0.0000 116 H 14.804134117 5.630800438 4.987145863 CORE 117 H H 0.0000 117 H 13.971991217 6.327711507 6.526115074 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.303617871 4.756990515 3.519416870 CORE 1 Si Si 0.0000 1 Si -2.575221130 12.042152327 7.339811531 CORE 2 Si Si 0.0000 2 Si 1.076705668 4.782153031 3.480774338 CORE 3 Si Si 0.0000 3 Si -8.631800087 12.014101241 7.316410362 CORE 4 Si Si 0.0000 4 Si -13.617448669 7.693371853 11.083995191 CORE 5 Si Si 0.0000 5 Si -4.004759851 14.903484325 7.327375785 CORE 6 Si Si 0.0000 6 Si -7.152934477 9.186819311 7.209678826 CORE 7 Si Si 0.0000 7 Si 2.431942871 16.353419734 3.542402685 CORE 8 Si Si 0.0000 8 Si -13.619629848 16.332298679 3.448861834 CORE 9 Si Si 0.0000 9 Si -3.928688026 9.145748254 7.330041354 CORE 10 Si Si 0.0000 10 Si -7.229118498 14.898681334 7.266917580 CORE 11 Si Si 0.0000 11 Si 2.414890458 7.709797307 3.489202830 CORE 12 Si Si 0.0000 12 Si -10.207663289 4.581423438 5.836088154 CORE 13 Si Si 0.0000 13 Si -0.303074316 12.056885634 9.577709323 CORE 14 Si Si 0.0000 14 Si -10.809467268 12.045696191 9.588809317 CORE 15 Si Si 0.0000 15 Si -1.228482902 4.790663350 5.729235815 CORE 16 Si Si 0.0000 16 Si -9.966271062 4.698160641 8.871339210 CORE 17 Si Si 0.0000 17 Si -0.278881786 12.008811608 5.088862722 CORE 18 Si Si 0.0000 18 Si -11.008710057 12.029693090 5.092322104 CORE 19 Si Si 0.0000 19 Si -1.203283497 4.763488968 8.859516378 CORE 20 Si Si 0.0000 20 Ti -9.036681595 7.656068810 5.016114450 CORE 21 Ti Ti 0.0000 21 Si 0.680112023 14.948477777 8.915154118 CORE 22 Si Si 0.0000 22 Si -2.266180807 16.325882534 5.107038874 CORE 23 Si Si 0.0000 23 Si -11.891299495 9.154993869 8.805630428 CORE 24 Si Si 0.0000 24 Si 0.739808844 9.123256213 5.732723496 CORE 25 Si Si 0.0000 25 Si -9.000733525 16.293556900 9.541785914 CORE 26 Si Si 0.0000 26 Si -11.836546025 14.934394864 5.730061274 CORE 27 Si Si 0.0000 27 Si -2.201277948 7.705893506 9.534077445 CORE 28 Si Si 0.0000 28 Si -12.036926360 9.201023164 5.720952240 CORE 29 Si Si 0.0000 29 Si -2.222829547 16.301980731 9.548212339 CORE 30 Si Si 0.0000 30 Si 0.624116509 14.951287066 5.769688941 CORE 31 Si Si 0.0000 31 Si -9.050044826 7.647112787 9.226626749 CORE 32 Si Si 0.0000 32 Si -2.151059844 7.752534707 5.083748390 CORE 33 Si Si 0.0000 33 Si -11.886288212 14.943851078 8.852897262 CORE 34 Si Si 0.0000 34 Si -8.950837574 16.220215419 5.063619770 CORE 35 Si Si 0.0000 35 Si 0.650175184 9.141901969 8.870656158 CORE 36 Si Si 0.0000 36 O -15.225044227 7.760578854 3.369493761 CORE 37 O O 0.0000 37 O -5.618327573 14.966022679 7.403188093 CORE 38 O O 0.0000 38 O -15.214713747 16.122348409 3.615410516 CORE 39 O O 0.0000 39 O -5.540462733 9.083309074 7.290164475 CORE 40 O O 0.0000 40 O -10.599231024 4.355666972 7.405672686 CORE 41 O O 0.0000 41 O -0.748438682 11.982227221 3.532465529 CORE 42 O O 0.0000 42 O -10.435969213 12.085471795 3.566756582 CORE 43 O O 0.0000 43 O -0.779676069 4.734339623 7.289504777 CORE 44 O O 0.0000 44 O -13.141243547 6.138517887 3.490661362 CORE 45 O O 0.0000 45 O -3.531585747 13.347942920 7.260369440 CORE 46 O O 0.0000 46 O -7.620573461 10.748847061 7.271390624 CORE 47 O O 0.0000 47 O 2.117587394 17.953965402 3.514317753 CORE 48 O O 0.0000 48 O -3.484674243 10.707767068 7.405742520 CORE 49 O O 0.0000 49 O -13.308664492 17.922347389 3.260286912 CORE 50 O O 0.0000 50 O 1.910386594 6.164431555 3.492194140 CORE 51 O O 0.0000 51 O -7.742781619 13.362438960 7.157485786 CORE 52 O O 0.0000 52 O -11.595912227 4.544502818 4.978810331 CORE 53 O O 0.0000 53 O -1.662376740 12.148034798 8.686671583 CORE 54 O O 0.0000 54 O 0.098470377 4.725169686 4.789678181 CORE 55 O O 0.0000 55 O -9.402659453 12.044374936 8.759497906 CORE 56 O O 0.0000 56 O -1.612011222 11.970261401 6.023748765 CORE 57 O O 0.0000 57 O -11.164798843 4.824939153 9.959948927 CORE 58 O O 0.0000 58 O -9.745839434 11.935244103 6.120822255 CORE 59 O O 0.0000 59 O 0.171738462 4.693770344 9.730218657 CORE 60 O O 0.0000 60 O -10.538388960 8.588737725 5.452004637 CORE 61 O O 0.0000 61 O -0.779517301 15.624895120 9.203912892 CORE 62 O O 0.0000 62 O -10.463189105 8.369254554 8.836910924 CORE 63 O O 0.0000 63 O -0.846454888 15.624759910 5.513183245 CORE 64 O O 0.0000 64 O -0.700085568 8.437623382 5.378224521 CORE 65 O O 0.0000 65 O -10.503579013 15.743787760 9.212482803 CORE 66 O O 0.0000 66 O -10.284104609 15.395299576 5.510541867 CORE 67 O O 0.0000 67 O -0.796058001 8.458576073 9.175422191 CORE 68 O O 0.0000 68 O -12.461045116 9.098230205 7.287258898 CORE 69 O O 0.0000 69 O -2.553418582 16.091613731 3.521468537 CORE 70 O O 0.0000 70 O -8.861602662 7.742944724 3.229401840 CORE 71 O O 0.0000 71 O 1.018695248 15.110739183 7.335605501 CORE 72 O O 0.0000 72 O -2.500390771 7.905833460 3.508614774 CORE 73 O O 0.0000 73 O -12.241964841 15.166173664 7.284271316 CORE 74 O O 0.0000 74 O 1.044827438 8.915176976 7.311938764 CORE 75 O O 0.0000 75 O -8.639375324 15.976518799 3.487561649 CORE 76 O O 0.0000 76 O -13.160095519 8.404498307 4.866495478 CORE 77 O O 0.0000 77 O -3.398728033 15.606764547 8.670669726 CORE 78 O O 0.0000 78 O 1.743164638 15.689624803 4.861770559 CORE 79 O O 0.0000 79 O -7.840752215 8.376594684 8.442391978 CORE 80 O O 0.0000 80 O -3.311571341 8.465689748 5.972579276 CORE 81 O O 0.0000 81 O -13.118873092 15.533121365 9.726258188 CORE 82 O O 0.0000 82 O -7.656163774 15.712118862 5.912098021 CORE 83 O O 0.0000 83 O 1.787269707 8.475818554 9.806655213 CORE 84 O O 0.0000 84 O -7.645694733 8.522348040 5.799272876 CORE 85 O O 0.0000 85 O 1.836333523 15.674145966 9.790573176 CORE 86 O O 0.0000 86 O -3.475880633 15.681519106 5.986470739 CORE 87 O O 0.0000 87 O -12.955797376 8.450128746 9.804341554 CORE 88 O O 0.0000 88 O 1.930063195 8.427523117 4.875347159 CORE 89 O O 0.0000 89 O -7.905101986 15.583650366 8.580935527 CORE 90 O O 0.0000 90 O -12.833778199 15.772985683 4.763975981 CORE 91 O O 0.0000 91 O -3.384042124 8.353453547 8.641060156 CORE 92 O O 0.0000 92 O -9.433932057 5.992826226 5.626349422 CORE 93 O O 0.0000 93 O 0.628774078 13.368094584 9.319210384 CORE 94 O O 0.0000 94 O -2.203760304 17.935402675 5.398614677 CORE 95 O O 0.0000 95 O -11.681345569 10.711538252 9.250035677 CORE 96 O O 0.0000 96 O 0.672599909 10.719558326 5.390841699 CORE 97 O O 0.0000 97 O -8.946150754 17.910925724 9.310752528 CORE 98 O O 0.0000 98 O -11.922588650 13.347119550 5.381948406 CORE 99 O O 0.0000 99 O -2.045614468 6.115807751 9.196787364 CORE 100 O O 0.0000 100 O -12.016118563 10.765889898 5.265413068 CORE 101 O O 0.0000 101 O -2.160209478 17.898193904 9.198648242 CORE 102 O O 0.0000 102 O 0.570749609 13.366085457 5.386439022 CORE 103 O O 0.0000 103 O -9.098298061 6.072216998 8.789877403 CORE 104 O O 0.0000 104 O -2.074732258 6.159971923 5.461059887 CORE 105 O O 0.0000 105 O -11.690099150 13.357358053 9.179400994 CORE 106 O O 0.0000 106 O -9.199984589 17.805656024 5.345544982 CORE 107 O O 0.0000 107 O 0.565138665 10.740616821 9.178195098 CORE 108 O O 0.0000 108 O2 12.642934892 5.770470774 4.896592823 CORE 109 O2 O2 0.0000 109 O2 13.565965427 7.457166141 2.863017045 CORE 110 O2 O2 0.0000 110 H 13.231959713 6.684795057 3.372670535 CORE 111 H H 0.0000 111 H 13.385106005 8.207317768 3.466119795 CORE 112 H H 0.0000 112 C 13.906263728 5.680601206 5.629114265 CORE 113 C C 0.0000 113 C 12.951084768 4.553916797 5.631716846 CORE 114 C C 0.0000 114 H 13.154398744 3.654569718 5.014901327 CORE 115 H H 0.0000 115 H 12.322484661 4.398808994 6.533569462 CORE 116 H H 0.0000 116 H 14.802461187 5.634137595 4.981265408 CORE 117 H H 0.0000 117 H 13.974542853 6.335810429 6.520734337 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.303064398 4.755158113 3.521134352 CORE 1 Si Si 0.0000 1 Si -2.575312926 12.043093033 7.338774287 CORE 2 Si Si 0.0000 2 Si 1.076996838 4.784371892 3.481168392 CORE 3 Si Si 0.0000 3 Si -8.631168288 12.012735012 7.318000955 CORE 4 Si Si 0.0000 4 Si -13.616621731 7.691544064 11.082016097 CORE 5 Si Si 0.0000 5 Si -4.005444572 14.905030595 7.326719283 CORE 6 Si Si 0.0000 6 Si -7.151619881 9.184289380 7.210646692 CORE 7 Si Si 0.0000 7 Si 2.432563508 16.355823104 3.541737053 CORE 8 Si Si 0.0000 8 Si -13.621301623 16.332432736 3.449600571 CORE 9 Si Si 0.0000 9 Si -3.929647367 9.144619292 7.330193499 CORE 10 Si Si 0.0000 10 Si -7.230808940 14.897097010 7.268001381 CORE 11 Si Si 0.0000 11 Si 2.415194330 7.712535819 3.486895181 CORE 12 Si Si 0.0000 12 Si -10.207110007 4.579614532 5.837024983 CORE 13 Si Si 0.0000 13 Si -0.302562411 12.057494080 9.576906837 CORE 14 Si Si 0.0000 14 Si -10.810171235 12.046691529 9.589073896 CORE 15 Si Si 0.0000 15 Si -1.228772148 4.791336807 5.729065946 CORE 16 Si Si 0.0000 16 Si -9.965034407 4.694342321 8.873080198 CORE 17 Si Si 0.0000 17 Si -0.279534754 12.009718439 5.088257949 CORE 18 Si Si 0.0000 18 Si -11.010754022 12.028998155 5.092585542 CORE 19 Si Si 0.0000 19 Si -1.203459007 4.764330645 8.860406346 CORE 20 Si Si 0.0000 20 Ti -9.038155151 7.652885459 5.014953056 CORE 21 Ti Ti 0.0000 21 Si 0.681456063 14.948833389 8.915826596 CORE 22 Si Si 0.0000 22 Si -2.266872072 16.327048398 5.105432610 CORE 23 Si Si 0.0000 23 Si -11.889547278 9.156290764 8.806230561 CORE 24 Si Si 0.0000 24 Si 0.738101274 9.123750639 5.732091869 CORE 25 Si Si 0.0000 25 Si -9.001338574 16.291429573 9.543199107 CORE 26 Si Si 0.0000 26 Si -11.839026456 14.933393760 5.730708877 CORE 27 Si Si 0.0000 27 Si -2.202209000 7.705950156 9.533700507 CORE 28 Si Si 0.0000 28 Si -12.036678490 9.198139351 5.719747333 CORE 29 Si Si 0.0000 29 Si -2.222199673 16.302255476 9.548921712 CORE 30 Si Si 0.0000 30 Si 0.623681967 14.951721671 5.767841985 CORE 31 Si Si 0.0000 31 Si -9.050871765 7.645384027 9.224724336 CORE 32 Si Si 0.0000 32 Si -2.151704536 7.753131622 5.082371940 CORE 33 Si Si 0.0000 33 Si -11.887773892 14.944990996 8.853528281 CORE 34 Si Si 0.0000 34 Si -8.952808795 16.218023946 5.064387110 CORE 35 Si Si 0.0000 35 Si 0.649162343 9.143256090 8.869103906 CORE 36 Si Si 0.0000 36 O -15.225192795 7.760556511 3.367810436 CORE 37 O O 0.0000 37 O -5.619833460 14.969146354 7.404961107 CORE 38 O O 0.0000 38 O -15.216425743 16.123346918 3.615351636 CORE 39 O O 0.0000 39 O -5.539909259 9.084917615 7.290230201 CORE 40 O O 0.0000 40 O -10.596849510 4.351022254 7.406887863 CORE 41 O O 0.0000 41 O -0.748832426 11.984408892 3.531430568 CORE 42 O O 0.0000 42 O -10.438519888 12.084640929 3.567213699 CORE 43 O O 0.0000 43 O -0.778507924 4.737464451 7.289876390 CORE 44 O O 0.0000 44 O -13.141358052 6.136760442 3.489408073 CORE 45 O O 0.0000 45 O -3.533498656 13.347965407 7.260156438 CORE 46 O O 0.0000 46 O -7.623271163 10.745989051 7.272395918 CORE 47 O O 0.0000 47 O 2.116495265 17.955173646 3.515155611 CORE 48 O O 0.0000 48 O -3.480659058 10.706002992 7.406657668 CORE 49 O O 0.0000 49 O -13.310514664 17.921863053 3.263062862 CORE 50 O O 0.0000 50 O 1.910020947 6.166805231 3.491596060 CORE 51 O O 0.0000 51 O -7.739244661 13.358334219 7.157833740 CORE 52 O O 0.0000 52 O -11.597947531 4.543201743 4.982190446 CORE 53 O O 0.0000 53 O -1.659572038 12.151639492 8.683764181 CORE 54 O O 0.0000 54 O 0.098640499 4.725646093 4.789335095 CORE 55 O O 0.0000 55 O -9.402569196 12.048268790 8.759997852 CORE 56 O O 0.0000 56 O -1.613482277 11.973084672 6.021834256 CORE 57 O O 0.0000 57 O -11.164789028 4.820197713 9.960597747 CORE 58 O O 0.0000 58 O -9.746767407 11.935308681 6.123483716 CORE 59 O O 0.0000 59 O 0.172578295 4.698655499 9.730689011 CORE 60 O O 0.0000 60 O -10.540003193 8.584566819 5.448313311 CORE 61 O O 0.0000 61 O -0.777178125 15.626537392 9.204862121 CORE 62 O O 0.0000 62 O -10.458733220 8.373873181 8.830799058 CORE 63 O O 0.0000 63 O -0.846560925 15.625139306 5.512227779 CORE 64 O O 0.0000 64 O -0.702283682 8.440239225 5.377616781 CORE 65 O O 0.0000 65 O -10.504665946 15.742909614 9.214194579 CORE 66 O O 0.0000 66 O -10.286959540 15.395414029 5.511801470 CORE 67 O O 0.0000 67 O -0.796989053 8.459154104 9.174037297 CORE 68 O O 0.0000 68 O -12.460070379 9.101530892 7.287605027 CORE 69 O O 0.0000 69 O -2.554209918 16.092542761 3.520985630 CORE 70 O O 0.0000 70 O -8.862587983 7.738633852 3.228314008 CORE 71 O O 0.0000 71 O 1.019151922 15.108295596 7.334737518 CORE 72 O O 0.0000 72 O -2.502803847 7.907582977 3.507908596 CORE 73 O O 0.0000 73 O -12.244792252 15.167756259 7.284370590 CORE 74 O O 0.0000 74 O 1.043176254 8.916557044 7.310871015 CORE 75 O O 0.0000 75 O -8.641473173 15.973187552 3.488935893 CORE 76 O O 0.0000 76 O -13.164942647 8.402770412 4.865852516 CORE 77 O O 0.0000 77 O -3.396664632 15.607987206 8.669162889 CORE 78 O O 0.0000 78 O 1.742926582 15.691225416 4.860025616 CORE 79 O O 0.0000 79 O -7.838128219 8.373023864 8.443855835 CORE 80 O O 0.0000 80 O -3.312448123 8.463261152 5.973847856 CORE 81 O O 0.0000 81 O -13.121316574 15.534221066 9.726644254 CORE 82 O O 0.0000 82 O -7.660009607 15.708082879 5.912376902 CORE 83 O O 0.0000 83 O 1.787604755 8.477802599 9.805816973 CORE 84 O O 0.0000 84 O -7.647696360 8.523783460 5.800295894 CORE 85 O O 0.0000 85 O 1.839082994 15.676605553 9.789496450 CORE 86 O O 0.0000 86 O -3.476013228 15.682270546 5.985703095 CORE 87 O O 0.0000 87 O -12.952223854 8.446897538 9.804116989 CORE 88 O O 0.0000 88 O 1.928124498 8.426196384 4.873955951 CORE 89 O O 0.0000 89 O -7.906004940 15.580850447 8.582539737 CORE 90 O O 0.0000 90 O -12.834156163 15.773227130 4.764442531 CORE 91 O O 0.0000 91 O -3.386827774 8.351642767 8.640546744 CORE 92 O O 0.0000 92 O -9.431944286 5.990166995 5.626057229 CORE 93 O O 0.0000 93 O 0.631736200 13.368234263 9.320955023 CORE 94 O O 0.0000 94 O -2.203925615 17.935566283 5.400276702 CORE 95 O O 0.0000 95 O -11.682693265 10.714655007 9.248865079 CORE 96 O O 0.0000 96 O 0.670712402 10.720123816 5.388902315 CORE 97 O O 0.0000 97 O -8.945335362 17.910094282 9.310996111 CORE 98 O O 0.0000 98 O -11.925932970 13.345824242 5.384648283 CORE 99 O O 0.0000 99 O -2.046248961 6.115040310 9.197647969 CORE 100 O O 0.0000 100 O -12.016939729 10.765315038 5.263492550 CORE 101 O O 0.0000 101 O -2.157976724 17.897629567 9.199158610 CORE 102 O O 0.0000 102 O 0.572276473 13.366024339 5.386159533 CORE 103 O O 0.0000 103 O -9.102486447 6.071512261 8.789752569 CORE 104 O O 0.0000 104 O -2.073800821 6.159635627 5.457116915 CORE 105 O O 0.0000 105 O -11.690072592 13.358870159 9.180893682 CORE 106 O O 0.0000 106 O -9.200982227 17.803701097 5.345993732 CORE 107 O O 0.0000 107 O 0.565153483 10.742076890 9.177999136 CORE 108 O O 0.0000 108 O2 12.644986169 5.774517280 4.897797578 CORE 109 O2 O2 0.0000 109 O2 13.563951292 7.454034971 2.851847064 CORE 110 O2 O2 0.0000 110 H 13.231652763 6.680425516 3.367105324 CORE 111 H H 0.0000 111 H 13.399313495 8.205013427 3.453927784 CORE 112 H H 0.0000 112 C 13.904901213 5.675585453 5.633875470 CORE 113 C C 0.0000 113 C 12.942085627 4.551366685 5.625727761 CORE 114 C C 0.0000 114 H 13.146162264 3.656089753 5.002733431 CORE 115 H H 0.0000 115 H 12.312530220 4.393273590 6.521735675 CORE 116 H H 0.0000 116 H 14.804444147 5.628538621 4.990137934 CORE 117 H H 0.0000 117 H 13.970203782 6.323445609 6.529134911 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.303127712 4.755367703 3.520937857 CORE 1 Si Si 0.0000 1 Si -2.575302342 12.042985499 7.338892960 CORE 2 Si Si 0.0000 2 Si 1.076963545 4.784118048 3.481123281 CORE 3 Si Si 0.0000 3 Si -8.631240648 12.012891412 7.317818991 CORE 4 Si Si 0.0000 4 Si -13.616716221 7.691753222 11.082242564 CORE 5 Si Si 0.0000 5 Si -4.005366247 14.904853726 7.326794366 CORE 6 Si Si 0.0000 6 Si -7.151770374 9.184578828 7.210535931 CORE 7 Si Si 0.0000 7 Si 2.432492496 16.355548071 3.541813202 CORE 8 Si Si 0.0000 8 Si -13.621110332 16.332417457 3.449516055 CORE 9 Si Si 0.0000 9 Si -3.929537673 9.144748448 7.330176078 CORE 10 Si Si 0.0000 10 Si -7.230615533 14.897278203 7.267877383 CORE 11 Si Si 0.0000 11 Si 2.415159497 7.712222443 3.487159227 CORE 12 Si Si 0.0000 12 Si -10.207173322 4.579821528 5.836917797 CORE 13 Si Si 0.0000 13 Si -0.302620914 12.057424457 9.576998656 CORE 14 Si Si 0.0000 14 Si -10.810090600 12.046577652 9.589043620 CORE 15 Si Si 0.0000 15 Si -1.228739047 4.791259688 5.729085344 CORE 16 Si Si 0.0000 16 Si -9.965175854 4.694779231 8.872880965 CORE 17 Si Si 0.0000 17 Si -0.279460085 12.009614653 5.088327174 CORE 18 Si Si 0.0000 18 Si -11.010520008 12.029077724 5.092555418 CORE 19 Si Si 0.0000 19 Si -1.203438993 4.764234210 8.860304486 CORE 20 Si Si 0.0000 20 Ti -9.037986569 7.653249719 5.015085954 CORE 21 Ti Ti 0.0000 21 Si 0.681302299 14.948792739 8.915749611 CORE 22 Si Si 0.0000 22 Si -2.266792977 16.326915062 5.105616401 CORE 23 Si Si 0.0000 23 Si -11.889747614 9.156142436 8.806161868 CORE 24 Si Si 0.0000 24 Si 0.738296606 9.123693989 5.732164137 CORE 25 Si Si 0.0000 25 Si -9.001269293 16.291673038 9.543037377 CORE 26 Si Si 0.0000 26 Si -11.838742792 14.933508357 5.730634782 CORE 27 Si Si 0.0000 27 Si -2.202102578 7.705943670 9.533743640 CORE 28 Si Si 0.0000 28 Si -12.036706972 9.198469305 5.719885176 CORE 29 Si Si 0.0000 29 Si -2.222271647 16.302224052 9.548840543 CORE 30 Si Si 0.0000 30 Si 0.623731810 14.951671940 5.768053313 CORE 31 Si Si 0.0000 31 Si -9.050777081 7.645581798 9.224941979 CORE 32 Si Si 0.0000 32 Si -2.151630830 7.753063296 5.082529486 CORE 33 Si Si 0.0000 33 Si -11.887603770 14.944860542 8.853456088 CORE 34 Si Si 0.0000 34 Si -8.952583248 16.218274762 5.064299323 CORE 35 Si Si 0.0000 35 Si 0.649278195 9.143101131 8.869281534 CORE 36 Si Si 0.0000 36 O -15.225175860 7.760559105 3.368003051 CORE 37 O O 0.0000 37 O -5.619661029 14.968788868 7.404758222 CORE 38 O O 0.0000 38 O -15.216229833 16.123232609 3.615358330 CORE 39 O O 0.0000 39 O -5.539972574 9.084733539 7.290222670 CORE 40 O O 0.0000 40 O -10.597122013 4.351553726 7.406748879 CORE 41 O O 0.0000 41 O -0.748787394 11.984159229 3.531549012 CORE 42 O O 0.0000 42 O -10.438227948 12.084735922 3.567161362 CORE 43 O O 0.0000 43 O -0.778641674 4.737106965 7.289833865 CORE 44 O O 0.0000 44 O -13.141344966 6.136961528 3.489551469 CORE 45 O O 0.0000 45 O -3.533279846 13.347962813 7.260180781 CORE 46 O O 0.0000 46 O -7.622962480 10.746315977 7.272280897 CORE 47 O O 0.0000 47 O 2.116620162 17.955035408 3.515059761 CORE 48 O O 0.0000 48 O -3.481118425 10.706204798 7.406552917 CORE 49 O O 0.0000 49 O -13.310302974 17.921918406 3.262745261 CORE 50 O O 0.0000 50 O 1.910062708 6.166533657 3.491664449 CORE 51 O O 0.0000 51 O -7.739649374 13.358803851 7.157793954 CORE 52 O O 0.0000 52 O -11.597714672 4.543350648 4.981803695 CORE 53 O O 0.0000 53 O -1.659893037 12.151226942 8.684096845 CORE 54 O O 0.0000 54 O 0.098621062 4.725591605 4.789374348 CORE 55 O O 0.0000 55 O -9.402579588 12.047823230 8.759940646 CORE 56 O O 0.0000 56 O -1.613313887 11.972761638 6.022053268 CORE 57 O O 0.0000 57 O -11.164790183 4.820740139 9.960523500 CORE 58 O O 0.0000 58 O -9.746661177 11.935301185 6.123179199 CORE 59 O O 0.0000 59 O 0.172482265 4.698096640 9.730635152 CORE 60 O O 0.0000 60 O -10.539818446 8.585044091 5.448735663 CORE 61 O O 0.0000 61 O -0.777445817 15.626349424 9.204753490 CORE 62 O O 0.0000 62 O -10.459243008 8.373344737 8.831498389 CORE 63 O O 0.0000 63 O -0.846548801 15.625095918 5.512337094 CORE 64 O O 0.0000 64 O -0.702032155 8.439939831 5.377686310 CORE 65 O O 0.0000 65 O -10.504541626 15.743010085 9.213998769 CORE 66 O O 0.0000 66 O -10.286632960 15.395400912 5.511657313 CORE 67 O O 0.0000 67 O -0.796882438 8.459087940 9.174195756 CORE 68 O O 0.0000 68 O -12.460181805 9.101153226 7.287565469 CORE 69 O O 0.0000 69 O -2.554119276 16.092436380 3.521040935 CORE 70 O O 0.0000 70 O -8.862475210 7.739127124 3.228438462 CORE 71 O O 0.0000 71 O 1.019099577 15.108575242 7.334836868 CORE 72 O O 0.0000 72 O -2.502527687 7.907382756 3.507989385 CORE 73 O O 0.0000 73 O -12.244468751 15.167575210 7.284359255 CORE 74 O O 0.0000 74 O 1.043365236 8.916399058 7.310993187 CORE 75 O O 0.0000 75 O -8.641233194 15.973568822 3.488778652 CORE 76 O O 0.0000 76 O -13.164388018 8.402968182 4.865926077 CORE 77 O O 0.0000 77 O -3.396900762 15.607847383 8.669335268 CORE 78 O O 0.0000 78 O 1.742953717 15.691042349 4.860225305 CORE 79 O O 0.0000 79 O -7.838428627 8.373432378 8.443688324 CORE 80 O O 0.0000 80 O -3.312347859 8.463538924 5.973702710 CORE 81 O O 0.0000 81 O -13.121037143 15.534095225 9.726600056 CORE 82 O O 0.0000 82 O -7.659569677 15.708544727 5.912344951 CORE 83 O O 0.0000 83 O 1.787566458 8.477575567 9.805912824 CORE 84 O O 0.0000 84 O -7.647467350 8.523619132 5.800178895 CORE 85 O O 0.0000 85 O 1.838768537 15.676324177 9.789619687 CORE 86 O O 0.0000 86 O -3.475998025 15.682184635 5.985790882 CORE 87 O O 0.0000 87 O -12.952632801 8.447267276 9.804142701 CORE 88 O O 0.0000 88 O 1.928346388 8.426348172 4.874115094 CORE 89 O O 0.0000 89 O -7.905901597 15.581170742 8.582356175 CORE 90 O O 0.0000 90 O -12.834112862 15.773199598 4.764389205 CORE 91 O O 0.0000 91 O -3.386508892 8.351849907 8.640605472 CORE 92 O O 0.0000 92 O -9.432171757 5.990471290 5.626090701 CORE 93 O O 0.0000 93 O 0.631397304 13.368218263 9.320755409 CORE 94 O O 0.0000 94 O -2.203906563 17.935547543 5.400086522 CORE 95 O O 0.0000 95 O -11.682538924 10.714298387 9.248999042 CORE 96 O O 0.0000 96 O 0.670928326 10.720059094 5.389124218 CORE 97 O O 0.0000 97 O -8.945428506 17.910189419 9.310968268 CORE 98 O O 0.0000 98 O -11.925550195 13.345972425 5.384339354 CORE 99 O O 0.0000 99 O -2.046176216 6.115128096 9.197549531 CORE 100 O O 0.0000 100 O -12.016845815 10.765380769 5.263712323 CORE 101 O O 0.0000 101 O -2.158232291 17.897694145 9.199100187 CORE 102 O O 0.0000 102 O 0.572101732 13.366031258 5.386191559 CORE 103 O O 0.0000 103 O -9.102007257 6.071592984 8.789766870 CORE 104 O O 0.0000 104 O -2.073907436 6.159674114 5.457568023 CORE 105 O O 0.0000 105 O -11.690075479 13.358697182 9.180722900 CORE 106 O O 0.0000 106 O -9.200868107 17.803924814 5.345942383 CORE 107 O O 0.0000 107 O 0.565151751 10.741909823 9.178021577 CORE 108 O O 0.0000 108 O2 12.644751386 5.774054279 4.897659735 CORE 109 O2 O2 0.0000 109 O2 13.564181841 7.454393322 2.853125152 CORE 110 O2 O2 0.0000 110 H 13.231687980 6.680925564 3.367742124 CORE 111 H H 0.0000 111 H 13.397687907 8.205277073 3.455322796 CORE 112 H H 0.0000 112 C 13.905057094 5.676159304 5.633330717 CORE 113 C C 0.0000 113 C 12.943115403 4.551658439 5.626413019 CORE 114 C C 0.0000 114 H 13.147104670 3.655915911 5.004125704 CORE 115 H H 0.0000 115 H 12.313669305 4.393906973 6.523089760 CORE 116 H H 0.0000 116 H 14.804217254 5.629179357 4.989122751 CORE 117 H H 0.0000 117 H 13.970700292 6.324860415 6.528173739 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.303439474 4.753312017 3.522333934 CORE 1 Si Si 0.0000 1 Si -2.575184758 12.044954408 7.338017369 CORE 2 Si Si 0.0000 2 Si 1.077747569 4.786115355 3.481676934 CORE 3 Si Si 0.0000 3 Si -8.631082650 12.012446284 7.318655861 CORE 4 Si Si 0.0000 4 Si -13.617515448 7.689948352 11.079690571 CORE 5 Si Si 0.0000 5 Si -4.005699178 14.905219716 7.326603196 CORE 6 Si Si 0.0000 6 Si -7.151321975 9.183630915 7.212158170 CORE 7 Si Si 0.0000 7 Si 2.432043136 16.357284470 3.541518194 CORE 8 Si Si 0.0000 8 Si -13.622353531 16.332504522 3.450525304 CORE 9 Si Si 0.0000 9 Si -3.929825764 9.143998017 7.330132413 CORE 10 Si Si 0.0000 10 Si -7.231464987 14.895489766 7.268818015 CORE 11 Si Si 0.0000 11 Si 2.414630272 7.713595014 3.485738808 CORE 12 Si Si 0.0000 12 Si -10.207721215 4.576693962 5.837654480 CORE 13 Si Si 0.0000 13 Si -0.302541627 12.059310193 9.576414879 CORE 14 Si Si 0.0000 14 Si -10.810044220 12.047439221 9.589148903 CORE 15 Si Si 0.0000 15 Si -1.228890694 4.791479224 5.728533745 CORE 16 Si Si 0.0000 16 Si -9.964299649 4.692175353 8.874501530 CORE 17 Si Si 0.0000 17 Si -0.280404993 12.011140741 5.087855603 CORE 18 Si Si 0.0000 18 Si -11.011029412 12.029791110 5.093415109 CORE 19 Si Si 0.0000 19 Si -1.203197473 4.764879414 8.861014467 CORE 20 Si Si 0.0000 20 Ti -9.038596236 7.652393772 5.014067500 CORE 21 Ti Ti 0.0000 21 Si 0.682928657 14.949293940 8.915600585 CORE 22 Si Si 0.0000 22 Si -2.267390328 16.326710228 5.105610695 CORE 23 Si Si 0.0000 23 Si -11.887963066 9.157428375 8.806492402 CORE 24 Si Si 0.0000 24 Si 0.737592640 9.124273750 5.730696857 CORE 25 Si Si 0.0000 25 Si -9.001577976 16.290045758 9.544210562 CORE 26 Si Si 0.0000 26 Si -11.840970734 14.932644914 5.731358609 CORE 27 Si Si 0.0000 27 Si -2.203225690 7.705876785 9.533788371 CORE 28 Si Si 0.0000 28 Si -12.036599780 9.196659822 5.718797344 CORE 29 Si Si 0.0000 29 Si -2.221321928 16.301589803 9.549149244 CORE 30 Si Si 0.0000 30 Si 0.623402728 14.951767365 5.767132612 CORE 31 Si Si 0.0000 31 Si -9.051091345 7.643931454 9.223283605 CORE 32 Si Si 0.0000 32 Si -2.151875620 7.753468927 5.081894664 CORE 33 Si Si 0.0000 33 Si -11.888670688 14.946618852 8.853433951 CORE 34 Si Si 0.0000 34 Si -8.954702652 16.216666798 5.064392816 CORE 35 Si Si 0.0000 35 Si 0.648934102 9.144367466 8.868440252 CORE 36 Si Si 0.0000 36 O -15.225316730 7.760444508 3.366273474 CORE 37 O O 0.0000 37 O -5.619816525 14.971741439 7.405188335 CORE 38 O O 0.0000 38 O -15.216728460 16.123623249 3.615617965 CORE 39 O O 0.0000 39 O -5.540744858 9.085442600 7.290322172 CORE 40 O O 0.0000 40 O -10.594713363 4.348842024 7.407524207 CORE 41 O O 0.0000 41 O -0.749046233 11.986365838 3.530486892 CORE 42 O O 0.0000 42 O -10.439830057 12.083909093 3.566874417 CORE 43 O O 0.0000 43 O -0.777996019 4.739749043 7.289881943 CORE 44 O O 0.0000 44 O -13.141028200 6.135335257 3.489123943 CORE 45 O O 0.0000 45 O -3.535607475 13.348449166 7.260412041 CORE 46 O O 0.0000 46 O -7.625018762 10.743442254 7.272688796 CORE 47 O O 0.0000 47 O 2.115570756 17.956143902 3.515693366 CORE 48 O O 0.0000 48 O -3.477136148 10.704612401 7.407675590 CORE 49 O O 0.0000 49 O -13.311603906 17.921776421 3.264255902 CORE 50 O O 0.0000 50 O 1.909654531 6.168536009 3.490926093 CORE 51 O O 0.0000 51 O -7.735807005 13.356119682 7.157448130 CORE 52 O O 0.0000 52 O -11.599524238 4.543484416 4.984600032 CORE 53 O O 0.0000 53 O -1.657777290 12.154292958 8.681431276 CORE 54 O O 0.0000 54 O 0.098804463 4.726294612 4.789811459 CORE 55 O O 0.0000 55 O -9.402243193 12.050451326 8.761104398 CORE 56 O O 0.0000 56 O -1.614985469 11.974725358 6.020413228 CORE 57 O O 0.0000 57 O -11.165406009 4.816194018 9.962291798 CORE 58 O O 0.0000 58 O -9.748170720 11.935308681 6.125453072 CORE 59 O O 0.0000 59 O 0.172554432 4.702318718 9.730780526 CORE 60 O O 0.0000 60 O -10.542749392 8.582336859 5.445592742 CORE 61 O O 0.0000 61 O -0.776207622 15.627943694 9.206081786 CORE 62 O O 0.0000 62 O -10.455750120 8.377386918 8.825729228 CORE 63 O O 0.0000 63 O -0.847383630 15.625869989 5.511250860 CORE 64 O O 0.0000 64 O -0.703570566 8.441908164 5.377467147 CORE 65 O O 0.0000 65 O -10.504124596 15.742695267 9.214837845 CORE 66 O O 0.0000 66 O -10.288816640 15.395407399 5.512990098 CORE 67 O O 0.0000 67 O -0.797469205 8.459292918 9.172797473 CORE 68 O O 0.0000 68 O -12.458994223 9.103162064 7.287276775 CORE 69 O O 0.0000 69 O -2.554568444 16.093186523 3.520671757 CORE 70 O O 0.0000 70 O -8.864116386 7.735380012 3.226758560 CORE 71 O O 0.0000 71 O 1.018846511 15.107009225 7.334046478 CORE 72 O O 0.0000 72 O -2.504813364 7.909066686 3.507632530 CORE 73 O O 0.0000 73 O -12.247305399 15.168335155 7.284846346 CORE 74 O O 0.0000 74 O 1.041980590 8.917075110 7.310112119 CORE 75 O O 0.0000 75 O -8.643388777 15.971067144 3.489125541 CORE 76 O O 0.0000 76 O -13.167487740 8.401261477 4.866752982 CORE 77 O O 0.0000 77 O -3.394803105 15.609126114 8.668146488 CORE 78 O O 0.0000 78 O 1.741790576 15.691927702 4.859335185 CORE 79 O O 0.0000 79 O -7.835865251 8.371368043 8.444210636 CORE 80 O O 0.0000 80 O -3.313398805 8.461319198 5.974305354 CORE 81 O O 0.0000 81 O -13.122744135 15.534617183 9.727085929 CORE 82 O O 0.0000 82 O -7.662488884 15.705163173 5.913369568 CORE 83 O O 0.0000 83 O 1.786898672 8.479464474 9.804093939 CORE 84 O O 0.0000 84 O -7.650265509 8.524041917 5.800424989 CORE 85 O O 0.0000 85 O 1.840194175 15.678181805 9.787896044 CORE 86 O O 0.0000 86 O -3.476572475 15.682563454 5.985168688 CORE 87 O O 0.0000 87 O -12.948227143 8.445495272 9.804551817 CORE 88 O O 0.0000 88 O 1.926239301 8.425902756 4.873215389 CORE 89 O O 0.0000 89 O -7.907002578 15.579328538 8.583665605 CORE 90 O O 0.0000 90 O -12.835458250 15.773066549 4.764224204 CORE 91 O O 0.0000 91 O -3.388296327 8.349783987 8.640490299 CORE 92 O O 0.0000 92 O -9.431144097 5.987515259 5.626108730 CORE 93 O O 0.0000 93 O 0.634202391 13.368294517 9.321764431 CORE 94 O O 0.0000 94 O -2.203919841 17.935118417 5.400475403 CORE 95 O O 0.0000 95 O -11.682736758 10.715701806 9.248314468 CORE 96 O O 0.0000 96 O 0.669469011 10.720353443 5.387886295 CORE 97 O O 0.0000 97 O -8.944279990 17.906464074 9.311561783 CORE 98 O O 0.0000 98 O -11.928256943 13.345066026 5.386543469 CORE 99 O O 0.0000 99 O -2.047229856 6.115406445 9.198385412 CORE 100 O O 0.0000 100 O -12.017868471 10.763759255 5.261891535 CORE 101 O O 0.0000 101 O -2.156428306 17.897226964 9.199855735 CORE 102 O O 0.0000 102 O 0.573300476 13.365675358 5.385969961 CORE 103 O O 0.0000 103 O -9.106130212 6.070123689 8.789569311 CORE 104 O O 0.0000 104 O -2.073308546 6.159802694 5.453812796 CORE 105 O O 0.0000 105 O -11.690799459 13.359395144 9.181615987 CORE 106 O O 0.0000 106 O -9.200845398 17.801944228 5.346006968 CORE 107 O O 0.0000 107 O 0.564971622 10.742854133 9.177370856 CORE 108 O O 0.0000 108 O2 12.647959069 5.777777462 4.896146279 CORE 109 O2 O2 0.0000 109 O2 13.564885615 7.447702864 2.842934068 CORE 110 O2 O2 0.0000 110 H 13.230797342 6.680058949 3.360236083 CORE 111 H H 0.0000 111 H 13.410684529 8.203652243 3.445167998 CORE 112 H H 0.0000 112 C 13.901893481 5.671395809 5.636767050 CORE 113 C C 0.0000 113 C 12.937798323 4.550561189 5.620056428 CORE 114 C C 0.0000 114 H 13.139573312 3.658178737 4.993090599 CORE 115 H H 0.0000 115 H 12.304069926 4.387529315 6.514815162 CORE 116 H H 0.0000 116 H 14.805195647 5.623580239 4.997264375 CORE 117 H H 0.0000 117 H 13.966732063 6.314815071 6.537211417 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.303938293 4.750023006 3.524567641 CORE 1 Si Si 0.0000 1 Si -2.574996546 12.048104750 7.336616348 CORE 2 Si Si 0.0000 2 Si 1.079002122 4.789311103 3.482562718 CORE 3 Si Si 0.0000 3 Si -8.630829969 12.011733908 7.319994883 CORE 4 Si Si 0.0000 4 Si -13.618794057 7.687060359 11.075607397 CORE 5 Si Si 0.0000 5 Si -4.006231867 14.905805531 7.326297310 CORE 6 Si Si 0.0000 6 Si -7.150604346 9.182114195 7.214753752 CORE 7 Si Si 0.0000 7 Si 2.431324159 16.360062623 3.541046166 CORE 8 Si Si 0.0000 8 Si -13.624342648 16.332644056 3.452140012 CORE 9 Si Si 0.0000 9 Si -3.930286479 9.142797269 7.330062502 CORE 10 Si Si 0.0000 10 Si -7.232824038 14.892628296 7.270322951 CORE 11 Si Si 0.0000 11 Si 2.413783511 7.715791244 3.483466228 CORE 12 Si Si 0.0000 12 Si -10.208598189 4.571689884 5.838833143 CORE 13 Si Si 0.0000 13 Si -0.302414997 12.062327487 9.575480941 CORE 14 Si Si 0.0000 14 Si -10.809970129 12.048817703 9.589317327 CORE 15 Si Si 0.0000 15 Si -1.229133561 4.791830511 5.727651080 CORE 16 Si Si 0.0000 16 Si -9.962897875 4.688008916 8.877094450 CORE 17 Si Si 0.0000 17 Si -0.281916653 12.013582598 5.087101195 CORE 18 Si Si 0.0000 18 Si -11.011844227 12.030932613 5.094790570 CORE 19 Si Si 0.0000 19 Si -1.202811043 4.765911654 8.862150377 CORE 20 Si Si 0.0000 20 Ti -9.039571551 7.651024083 5.012438034 CORE 21 Ti Ti 0.0000 21 Si 0.685530522 14.950095832 8.915362099 CORE 22 Si Si 0.0000 22 Si -2.268346205 16.326382437 5.105601567 CORE 23 Si Si 0.0000 23 Si -11.885107558 9.159485791 8.807021179 CORE 24 Si Si 0.0000 24 Si 0.736466256 9.125201338 5.728349194 CORE 25 Si Si 0.0000 25 Si -9.002071599 16.287442167 9.546087643 CORE 26 Si Si 0.0000 26 Si -11.844535789 14.931263694 5.732516656 CORE 27 Si Si 0.0000 27 Si -2.205022555 7.705769828 9.533859879 CORE 28 Si Si 0.0000 28 Si -12.036428696 9.193764910 5.717056813 CORE 29 Si Si 0.0000 29 Si -2.219802378 16.300575005 9.549643104 CORE 30 Si Si 0.0000 30 Si 0.622876197 14.951920162 5.765659550 CORE 31 Si Si 0.0000 31 Si -9.051594013 7.641290818 9.220630284 CORE 32 Si Si 0.0000 32 Si -2.152267440 7.754118022 5.080879024 CORE 33 Si Si 0.0000 33 Si -11.890377488 14.949432033 8.853398654 CORE 34 Si Si 0.0000 34 Si -8.958093544 16.214094343 5.064542373 CORE 35 Si Si 0.0000 35 Si 0.648383323 9.146393314 8.867094231 CORE 36 Si Si 0.0000 36 O -15.225542276 7.760261297 3.363506197 CORE 37 O O 0.0000 37 O -5.620065357 14.976465727 7.405876483 CORE 38 O O 0.0000 38 O -15.217526339 16.124247983 3.616033395 CORE 39 O O 0.0000 39 O -5.541980551 9.086577328 7.290481468 CORE 40 O O 0.0000 40 O -10.590859640 4.344503187 7.408764792 CORE 41 O O 0.0000 41 O -0.749460184 11.989896440 3.528787516 CORE 42 O O 0.0000 42 O -10.442393433 12.082586108 3.566415322 CORE 43 O O 0.0000 43 O -0.776963163 4.743976454 7.289958928 CORE 44 O O 0.0000 44 O -13.140521299 6.132733252 3.488439826 CORE 45 O O 0.0000 45 O -3.539331875 13.349227130 7.260782056 CORE 46 O O 0.0000 46 O -7.628308812 10.738844240 7.273341419 CORE 47 O O 0.0000 47 O 2.113891861 17.957917492 3.516707179 CORE 48 O O 0.0000 48 O -3.470764659 10.702064452 7.409471806 CORE 49 O O 0.0000 49 O -13.313685206 17.921549388 3.266672943 CORE 50 O O 0.0000 50 O 1.909001370 6.171739973 3.489744616 CORE 51 O O 0.0000 51 O -7.729659138 13.351824954 7.156894857 CORE 52 O O 0.0000 52 O -11.602419583 4.543698475 4.989074140 CORE 53 O O 0.0000 53 O -1.654392364 12.159198726 8.677166290 CORE 54 O O 0.0000 54 O 0.099097750 4.727419394 4.790510943 CORE 55 O O 0.0000 55 O -9.401704923 12.054656106 8.762966493 CORE 56 O O 0.0000 56 O -1.617660078 11.977867195 6.017789043 CORE 57 O O 0.0000 57 O -11.166391330 4.808920340 9.965121074 CORE 58 O O 0.0000 58 O -9.750586105 11.935320645 6.129091224 CORE 59 O O 0.0000 59 O 0.172669899 4.709074186 9.731013003 CORE 60 O O 0.0000 60 O -10.547438907 8.578005229 5.440563991 CORE 61 O O 0.0000 61 O -0.774226394 15.630494382 9.208207090 CORE 62 O O 0.0000 62 O -10.450161115 8.383854524 8.816498631 CORE 63 O O 0.0000 63 O -0.848719203 15.627108360 5.509512839 CORE 64 O O 0.0000 64 O -0.706031753 8.445057352 5.377116454 CORE 65 O O 0.0000 65 O -10.503457195 15.742191616 9.216180367 CORE 66 O O 0.0000 66 O -10.292310490 15.395417921 5.515122553 CORE 67 O O 0.0000 67 O -0.798407955 8.459620998 9.170560267 CORE 68 O O 0.0000 68 O -12.457094015 9.106376263 7.286814941 CORE 69 O O 0.0000 69 O -2.555287229 16.094386694 3.520081056 CORE 70 O O 0.0000 70 O -8.866742499 7.729384489 3.224070778 CORE 71 O O 0.0000 71 O 1.018441413 15.104503510 7.332781854 CORE 72 O O 0.0000 72 O -2.508470023 7.911760801 3.507061533 CORE 73 O O 0.0000 73 O -12.251844036 15.169551038 7.285625629 CORE 74 O O 0.0000 74 O 1.039765348 8.918156792 7.308702426 CORE 75 O O 0.0000 75 O -8.646837787 15.967064747 3.489680639 CORE 76 O O 0.0000 76 O -13.172447256 8.398530749 4.868076029 CORE 77 O O 0.0000 77 O -3.391447046 15.611172143 8.666244380 CORE 78 O O 0.0000 78 O 1.739929242 15.693344383 4.857910961 CORE 79 O O 0.0000 79 O -7.831763850 8.368065194 8.445046288 CORE 80 O O 0.0000 80 O -3.315080202 8.457767694 5.975269568 CORE 81 O O 0.0000 81 O -13.125475516 15.535452373 9.727863234 CORE 82 O O 0.0000 82 O -7.667159732 15.699752888 5.915008923 CORE 83 O O 0.0000 83 O 1.785830022 8.482486813 9.801183570 CORE 84 O O 0.0000 84 O -7.654742756 8.524718400 5.800818662 CORE 85 O O 0.0000 85 O 1.842475232 15.681154125 9.785138199 CORE 86 O O 0.0000 86 O -3.477491403 15.683169882 5.984173131 CORE 87 O O 0.0000 87 O -12.941178053 8.442660037 9.805206418 CORE 88 O O 0.0000 88 O 1.922867846 8.425189947 4.871775799 CORE 89 O O 0.0000 89 O -7.908764033 15.576380868 8.585760709 CORE 90 O O 0.0000 90 O -12.837610946 15.772853644 4.763960234 CORE 91 O O 0.0000 91 O -3.391156068 8.346478398 8.640305976 CORE 92 O O 0.0000 92 O -9.429500227 5.982785927 5.626137637 CORE 93 O O 0.0000 93 O 0.638690800 13.368416321 9.323378910 CORE 94 O O 0.0000 94 O -2.203941010 17.934431698 5.401097673 CORE 95 O O 0.0000 95 O -11.683053331 10.717947190 9.247219257 CORE 96 O O 0.0000 96 O 0.667134069 10.720824372 5.385905604 CORE 97 O O 0.0000 97 O -8.942441942 17.900503434 9.312511468 CORE 98 O O 0.0000 98 O -11.932587546 13.343615759 5.390070175 CORE 99 O O 0.0000 99 O -2.048915295 6.115852004 9.199722837 CORE 100 O O 0.0000 100 O -12.019504836 10.761164746 5.258978276 CORE 101 O O 0.0000 101 O -2.153542007 17.896479559 9.201064598 CORE 102 O O 0.0000 102 O 0.575218581 13.365105832 5.385615389 CORE 103 O O 0.0000 103 O -9.112726670 6.067772789 8.789253307 CORE 104 O O 0.0000 104 O -2.072350551 6.160008392 5.447804388 CORE 105 O O 0.0000 105 O -11.691957597 13.360511998 9.183044927 CORE 106 O O 0.0000 106 O -9.200808834 17.798775292 5.346110350 CORE 107 O O 0.0000 107 O 0.564683339 10.744365086 9.176329732 CORE 108 O O 0.0000 108 O2 12.653091016 5.783734354 4.893724674 CORE 109 O2 O2 0.0000 109 O2 13.566011614 7.436998333 2.826628379 CORE 110 O2 O2 0.0000 110 H 13.229372475 6.678672540 3.348226417 CORE 111 H H 0.0000 111 H 13.431479047 8.201052256 3.428920200 CORE 112 H H 0.0000 112 C 13.896831776 5.663774303 5.642265166 CORE 113 C C 0.0000 113 C 12.929291265 4.548805474 5.609885807 CORE 114 C C 0.0000 114 H 13.127523137 3.661799287 4.975434400 CORE 115 H H 0.0000 115 H 12.288711227 4.377325120 6.501575941 CORE 116 H H 0.0000 116 H 14.806761000 5.614621621 5.010291125 CORE 117 H H 0.0000 117 H 13.960382705 6.298742490 6.551671824 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.303481235 4.753037416 3.522520463 CORE 1 Si Si 0.0000 1 Si -2.575168977 12.045217477 7.337900370 CORE 2 Si Si 0.0000 2 Si 1.077852452 4.786382316 3.481750876 CORE 3 Si Si 0.0000 3 Si -8.631061481 12.012386752 7.318767687 CORE 4 Si Si 0.0000 4 Si -13.617622255 7.689707050 11.079349615 CORE 5 Si Si 0.0000 5 Si -4.005743633 14.905268726 7.326577636 CORE 6 Si Si 0.0000 6 Si -7.151261932 9.183504209 7.212374900 CORE 7 Si Si 0.0000 7 Si 2.431983093 16.357516548 3.541478788 CORE 8 Si Si 0.0000 8 Si -13.622519611 16.332516198 3.450660104 CORE 9 Si Si 0.0000 9 Si -3.929864061 9.143897690 7.330126555 CORE 10 Si Si 0.0000 10 Si -7.231578338 14.895250769 7.268943687 CORE 11 Si Si 0.0000 11 Si 2.414559644 7.713778514 3.485549084 CORE 12 Si Si 0.0000 12 Si -10.207794536 4.576276078 5.837752918 CORE 13 Si Si 0.0000 13 Si -0.302531042 12.059562163 9.576336905 CORE 14 Si Si 0.0000 14 Si -10.810038062 12.047554251 9.589162977 CORE 15 Si Si 0.0000 15 Si -1.228911094 4.791508630 5.728460031 CORE 16 Si Si 0.0000 16 Si -9.964182642 4.691827381 8.874718032 CORE 17 Si Si 0.0000 17 Si -0.280531237 12.011344710 5.087792615 CORE 18 Si Si 0.0000 18 Si -11.011097538 12.029886391 5.093529978 CORE 19 Si Si 0.0000 19 Si -1.203165143 4.764965614 8.861109329 CORE 20 Si Si 0.0000 20 Ti -9.038677641 7.652279319 5.013931407 CORE 21 Ti Ti 0.0000 21 Si 0.683145928 14.949360824 8.915580654 CORE 22 Si Si 0.0000 22 Si -2.267470193 16.326682840 5.105609934 CORE 23 Si Si 0.0000 23 Si -11.887724626 9.157600199 8.806536524 CORE 24 Si Si 0.0000 24 Si 0.737498534 9.124351157 5.730500819 CORE 25 Si Si 0.0000 25 Si -9.001619160 16.289828384 9.544367347 CORE 26 Si Si 0.0000 26 Si -11.841268448 14.932529596 5.731455297 CORE 27 Si Si 0.0000 27 Si -2.203375798 7.705867848 9.533794304 CORE 28 Si Si 0.0000 28 Si -12.036585539 9.196418087 5.718651970 CORE 29 Si Si 0.0000 29 Si -2.221195107 16.301505045 9.549190475 CORE 30 Si Si 0.0000 30 Si 0.623358658 14.951780194 5.767009603 CORE 31 Si Si 0.0000 31 Si -9.051133298 7.643710908 9.223062083 CORE 32 Si Si 0.0000 32 Si -2.151908336 7.753523126 5.081809843 CORE 33 Si Si 0.0000 33 Si -11.888813098 14.946853812 8.853431061 CORE 34 Si Si 0.0000 34 Si -8.954985739 16.216452018 5.064405291 CORE 35 Si Si 0.0000 35 Si 0.648888108 9.144536551 8.868327893 CORE 36 Si Si 0.0000 36 O -15.225335590 7.760429228 3.366042367 CORE 37 O O 0.0000 37 O -5.619837309 14.972135971 7.405245769 CORE 38 O O 0.0000 38 O -15.216795239 16.123675286 3.615652653 CORE 39 O O 0.0000 39 O -5.540848009 9.085537449 7.290335485 CORE 40 O O 0.0000 40 O -10.594391594 4.348479638 7.407627817 CORE 41 O O 0.0000 41 O -0.749080873 11.986660619 3.530345018 CORE 42 O O 0.0000 42 O -10.440044057 12.083798676 3.566836077 CORE 43 O O 0.0000 43 O -0.777909803 4.740102060 7.289888409 CORE 44 O O 0.0000 44 O -13.140985862 6.135118026 3.489066813 CORE 45 O O 0.0000 45 O -3.535918467 13.348514032 7.260442926 CORE 46 O O 0.0000 46 O -7.625293574 10.743058245 7.272743263 CORE 47 O O 0.0000 47 O 2.115430656 17.956292086 3.515778034 CORE 48 O O 0.0000 48 O -3.476604229 10.704399640 7.407825605 CORE 49 O O 0.0000 49 O -13.311777685 17.921757537 3.264457721 CORE 50 O O 0.0000 50 O 1.909599876 6.168803546 3.490827427 CORE 51 O O 0.0000 51 O -7.735293560 13.355761043 7.157401955 CORE 52 O O 0.0000 52 O -11.599766143 4.543502291 4.984973622 CORE 53 O O 0.0000 53 O -1.657494780 12.154702625 8.681075106 CORE 54 O O 0.0000 54 O 0.098828903 4.726388452 4.789869882 CORE 55 O O 0.0000 55 O -9.402198161 12.050802469 8.761259890 CORE 56 O O 0.0000 56 O -1.615208899 11.974987706 6.020194064 CORE 57 O O 0.0000 57 O -11.165488183 4.815586581 9.962528078 CORE 58 O O 0.0000 58 O -9.748372403 11.935309690 6.125756904 CORE 59 O O 0.0000 59 O 0.172564054 4.702882911 9.730799924 CORE 60 O O 0.0000 60 O -10.543141019 8.581975049 5.445172747 CORE 61 O O 0.0000 61 O -0.776042118 15.628156600 9.206259262 CORE 62 O O 0.0000 62 O -10.455283247 8.377927039 8.824958389 CORE 63 O O 0.0000 63 O -0.847495056 15.625973343 5.511105714 CORE 64 O O 0.0000 64 O -0.703776098 8.442171089 5.377437859 CORE 65 O O 0.0000 65 O -10.504068787 15.742653176 9.214949975 CORE 66 O O 0.0000 66 O -10.289108388 15.395408263 5.513168183 CORE 67 O O 0.0000 67 O -0.797547530 8.459320306 9.172610640 CORE 68 O O 0.0000 68 O -12.458835455 9.103430467 7.287238207 CORE 69 O O 0.0000 69 O -2.554628487 16.093286705 3.520622386 CORE 70 O O 0.0000 70 O -8.864335774 7.734879244 3.226534147 CORE 71 O O 0.0000 71 O 1.018812640 15.106799923 7.333940890 CORE 72 O O 0.0000 72 O -2.505118583 7.909291556 3.507584833 CORE 73 O O 0.0000 73 O -12.247684517 15.168436635 7.284911387 CORE 74 O O 0.0000 74 O 1.041795650 8.917165490 7.309994360 CORE 75 O O 0.0000 75 O -8.643676868 15.970733010 3.489171945 CORE 76 O O 0.0000 76 O -13.167901883 8.401033436 4.866863439 CORE 77 O O 0.0000 77 O -3.394522904 15.609296929 8.667987650 CORE 78 O O 0.0000 78 O 1.741635080 15.692046047 4.859216208 CORE 79 O O 0.0000 79 O -7.835522698 8.371092289 8.444280394 CORE 80 O O 0.0000 80 O -3.313539097 8.461022687 5.974385838 CORE 81 O O 0.0000 81 O -13.122972183 15.534686950 9.727150818 CORE 82 O O 0.0000 82 O -7.662878971 15.704711415 5.913506497 CORE 83 O O 0.0000 83 O 1.786809377 8.479716876 9.803850888 CORE 84 O O 0.0000 84 O -7.650639431 8.524098422 5.800457852 CORE 85 O O 0.0000 85 O 1.840384696 15.678430027 9.787665697 CORE 86 O O 0.0000 86 O -3.476649068 15.682614194 5.985085541 CORE 87 O O 0.0000 87 O -12.947638452 8.445258438 9.804606513 CORE 88 O O 0.0000 88 O 1.925957753 8.425843223 4.873095195 CORE 89 O O 0.0000 89 O -7.907149607 15.579082335 8.583840571 CORE 90 O O 0.0000 90 O -12.835637994 15.773048675 4.764202143 CORE 91 O O 0.0000 91 O -3.388535152 8.349507944 8.640474856 CORE 92 O O 0.0000 92 O -9.431006884 5.987120439 5.626111164 CORE 93 O O 0.0000 93 O 0.634577275 13.368304607 9.321899231 CORE 94 O O 0.0000 94 O -2.203921573 17.935061046 5.400527360 CORE 95 O O 0.0000 95 O -11.682763315 10.715889197 9.248223030 CORE 96 O O 0.0000 96 O 0.669274064 10.720392795 5.387720914 CORE 97 O O 0.0000 97 O -8.944126419 17.905966333 9.311641127 CORE 98 O O 0.0000 98 O -11.928618548 13.344944942 5.386838021 CORE 99 O O 0.0000 99 O -2.047370534 6.115443779 9.198497086 CORE 100 O O 0.0000 100 O -12.018005108 10.763542601 5.261648257 CORE 101 O O 0.0000 101 O -2.156187172 17.897164548 9.199956683 CORE 102 O O 0.0000 102 O 0.573460783 13.365627789 5.385940369 CORE 103 O O 0.0000 103 O -9.106680991 6.069927360 8.789542914 CORE 104 O O 0.0000 104 O -2.073228681 6.159819847 5.453311024 CORE 105 O O 0.0000 105 O -11.690896067 13.359488407 9.181735344 CORE 106 O O 0.0000 106 O -9.200842319 17.801679574 5.346015640 CORE 107 O O 0.0000 107 O 0.564947567 10.742980262 9.177283905 CORE 108 O O 0.0000 108 O2 12.648387646 5.778274915 4.895944003 CORE 109 O2 O2 0.0000 109 O2 13.564979528 7.446809006 2.841572376 CORE 110 O2 O2 0.0000 110 H 13.230678410 6.679943199 3.359233147 CORE 111 H H 0.0000 111 H 13.412420965 8.203435157 3.443811099 CORE 112 H H 0.0000 112 C 13.901470678 5.670759398 5.637226221 CORE 113 C C 0.0000 113 C 12.937088007 4.550414591 5.619207082 CORE 114 C C 0.0000 114 H 13.138567013 3.658481014 4.991616092 CORE 115 H H 0.0000 115 H 12.302787468 4.386677116 6.513709529 CORE 116 H H 0.0000 116 H 14.805326318 5.622831969 4.998352283 CORE 117 H H 0.0000 117 H 13.966201683 6.313472770 6.538418987 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.304538339 4.751390532 3.524549079 CORE 1 Si Si 0.0000 1 Si -2.575681267 12.047001302 7.337257636 CORE 2 Si Si 0.0000 2 Si 1.077261451 4.788556491 3.482115186 CORE 3 Si Si 0.0000 3 Si -8.630986427 12.011876326 7.319534114 CORE 4 Si Si 0.0000 4 Si -13.617799305 7.688449075 11.079202188 CORE 5 Si Si 0.0000 5 Si -4.006179907 14.906465438 7.326959899 CORE 6 Si Si 0.0000 6 Si -7.153006452 9.182555142 7.212427542 CORE 7 Si Si 0.0000 7 Si 2.430763180 16.358206149 3.541232315 CORE 8 Si Si 0.0000 8 Si -13.623320570 16.332574577 3.451158681 CORE 9 Si Si 0.0000 9 Si -3.929259397 9.143379192 7.330268810 CORE 10 Si Si 0.0000 10 Si -7.230875527 14.894111140 7.270383809 CORE 11 Si Si 0.0000 11 Si 2.413340309 7.715177609 3.484084999 CORE 12 Si Si 0.0000 12 Si -10.208563164 4.573655334 5.838228673 CORE 13 Si Si 0.0000 13 Si -0.301599990 12.061949100 9.575574129 CORE 14 Si Si 0.0000 14 Si -10.810308256 12.049029023 9.588763598 CORE 15 Si Si 0.0000 15 Si -1.229078906 4.791478359 5.728358475 CORE 16 Si Si 0.0000 16 Si -9.964947998 4.687946356 8.876730901 CORE 17 Si Si 0.0000 17 Si -0.281498469 12.012550791 5.086663932 CORE 18 Si Si 0.0000 18 Si -11.012070735 12.029211205 5.094543640 CORE 19 Si Si 0.0000 19 Si -1.203058335 4.766038359 8.861021314 CORE 20 Si Si 0.0000 20 Ti -9.037627658 7.652015385 5.015836938 CORE 21 Ti Ti 0.0000 21 Si 0.684136831 14.949757662 8.914846330 CORE 22 Si Si 0.0000 22 Si -2.268519984 16.326114755 5.106037916 CORE 23 Si Si 0.0000 23 Si -11.885665265 9.159121098 8.804421793 CORE 24 Si Si 0.0000 24 Si 0.736695459 9.125406604 5.729539876 CORE 25 Si Si 0.0000 25 Si -9.001457505 16.287011743 9.545153020 CORE 26 Si Si 0.0000 26 Si -11.843859728 14.932402602 5.732375846 CORE 27 Si Si 0.0000 27 Si -2.204015679 7.706182090 9.533943710 CORE 28 Si Si 0.0000 28 Si -12.039814776 9.195749531 5.717255513 CORE 29 Si Si 0.0000 29 Si -2.219807959 16.301440611 9.549295226 CORE 30 Si Si 0.0000 30 Si 0.622356786 14.951755113 5.766693599 CORE 31 Si Si 0.0000 31 Si -9.050599454 7.643152193 9.221022969 CORE 32 Si Si 0.0000 32 Si -2.152420049 7.753875134 5.081271100 CORE 33 Si Si 0.0000 33 Si -11.889539195 14.947948468 8.854056830 CORE 34 Si Si 0.0000 34 Si -8.956650009 16.214122885 5.064422256 CORE 35 Si Si 0.0000 35 Si 0.647346426 9.145933628 8.867043111 CORE 36 Si Si 0.0000 36 O -15.226644990 7.760254810 3.363685879 CORE 37 O O 0.0000 37 O -5.619641400 14.975360837 7.404568955 CORE 38 O O 0.0000 38 O -15.217743418 16.123756008 3.616410789 CORE 39 O O 0.0000 39 O -5.540882841 9.085841600 7.290374282 CORE 40 O O 0.0000 40 O -10.591720834 4.346141134 7.409104149 CORE 41 O O 0.0000 41 O -0.749500790 11.989420177 3.529601945 CORE 42 O O 0.0000 42 O -10.440872535 12.083436866 3.567870354 CORE 43 O O 0.0000 43 O -0.778204052 4.742773977 7.289490019 CORE 44 O O 0.0000 44 O -13.140578455 6.133699184 3.488964344 CORE 45 O O 0.0000 45 O -3.538566327 13.348288442 7.260966379 CORE 46 O O 0.0000 46 O -7.628034000 10.741703981 7.273132144 CORE 47 O O 0.0000 47 O 2.114688970 17.957625593 3.516255006 CORE 48 O O 0.0000 48 O -3.471868912 10.703130566 7.409102856 CORE 49 O O 0.0000 49 O -13.313347464 17.921382610 3.265247503 CORE 50 O O 0.0000 50 O 1.909304857 6.170611443 3.489971235 CORE 51 O O 0.0000 51 O -7.730755693 13.352768687 7.156682996 CORE 52 O O 0.0000 52 O -11.602128027 4.544296110 4.987649841 CORE 53 O O 0.0000 53 O -1.655756611 12.158373627 8.678227116 CORE 54 O O 0.0000 54 O 0.099836164 4.727338528 4.790424981 CORE 55 O O 0.0000 55 O -9.400717484 12.052938445 8.762664943 CORE 56 O O 0.0000 56 O -1.617128351 11.977053771 6.018135780 CORE 57 O O 0.0000 57 O -11.165063263 4.810031861 9.964360504 CORE 58 O O 0.0000 58 O -9.750656540 11.935568579 6.127763612 CORE 59 O O 0.0000 59 O 0.172821354 4.707172882 9.731797154 CORE 60 O O 0.0000 60 O -10.545325084 8.579250663 5.440928985 CORE 61 O O 0.0000 61 O -0.773436405 15.628721946 9.207643396 CORE 62 O O 0.0000 62 O -10.451381990 8.382004104 8.818955610 CORE 63 O O 0.0000 63 O -0.847375548 15.626005055 5.510317606 CORE 64 O O 0.0000 64 O -0.705084728 8.443861650 5.377245244 CORE 65 O O 0.0000 65 O -10.504505253 15.742121704 9.214592512 CORE 66 O O 0.0000 66 O -10.291953503 15.394747203 5.514766992 CORE 67 O O 0.0000 67 O -0.798453372 8.459220268 9.171359100 CORE 68 O O 0.0000 68 O -12.457008762 9.104616368 7.287139313 CORE 69 O O 0.0000 69 O -2.555070150 16.093689597 3.520941661 CORE 70 O O 0.0000 70 O -8.866866434 7.731058041 3.224549957 CORE 71 O O 0.0000 71 O 1.017759193 15.105827937 7.333095576 CORE 72 O O 0.0000 72 O -2.507696969 7.911598491 3.507647440 CORE 73 O O 0.0000 73 O -12.251075409 15.168794841 7.285526583 CORE 74 O O 0.0000 74 O 1.040514347 8.917681249 7.308383912 CORE 75 O O 0.0000 75 O -8.646123622 15.967990605 3.490049361 CORE 76 O O 0.0000 76 O -13.170107309 8.398564479 4.867655882 CORE 77 O O 0.0000 77 O -3.392842277 15.609872942 8.666035486 CORE 78 O O 0.0000 78 O 1.739692341 15.692601880 4.858535818 CORE 79 O O 0.0000 79 O -7.833547629 8.368355074 8.445522272 CORE 80 O O 0.0000 80 O -3.315002646 8.458786096 5.974453390 CORE 81 O O 0.0000 81 O -13.123917669 15.534889910 9.727576062 CORE 82 O O 0.0000 82 O -7.666056633 15.701521289 5.914945022 CORE 83 O O 0.0000 83 O 1.786670239 8.480967355 9.802514680 CORE 84 O O 0.0000 84 O -7.654160993 8.524279904 5.801386084 CORE 85 O O 0.0000 85 O 1.841414665 15.680579553 9.785583145 CORE 86 O O 0.0000 86 O -3.478097799 15.682121930 5.984898784 CORE 87 O O 0.0000 87 O -12.941927051 8.444051636 9.805604047 CORE 88 O O 0.0000 88 O 1.924217083 8.425854323 4.871625785 CORE 89 O O 0.0000 89 O -7.907827400 15.576551971 8.584396583 CORE 90 O O 0.0000 90 O -12.837344986 15.771867387 4.764609738 CORE 91 O O 0.0000 91 O -3.390267932 8.347353373 8.640308334 CORE 92 O O 0.0000 92 O -9.430626996 5.984204625 5.625910486 CORE 93 O O 0.0000 93 O 0.637830760 13.369591987 9.322223754 CORE 94 O O 0.0000 94 O -2.203574402 17.934666947 5.400163735 CORE 95 O O 0.0000 95 O -11.681971594 10.716157744 9.247967047 CORE 96 O O 0.0000 96 O 0.667524541 10.721383520 5.386700482 CORE 97 O O 0.0000 97 O -8.942862051 17.902536057 9.312378418 CORE 98 O O 0.0000 98 O -11.931036050 13.344053391 5.388521041 CORE 99 O O 0.0000 99 O -2.048855252 6.115823896 9.199370851 CORE 100 O O 0.0000 100 O -12.017865200 10.762390575 5.259499446 CORE 101 O O 0.0000 101 O -2.154199209 17.897139178 9.200746312 CORE 102 O O 0.0000 102 O 0.574561572 13.365653159 5.385769739 CORE 103 O O 0.0000 103 O -9.110510659 6.068234205 8.789086176 CORE 104 O O 0.0000 104 O -2.072833205 6.159862515 5.448938091 CORE 105 O O 0.0000 105 O -11.692447563 13.360869339 9.181908941 CORE 106 O O 0.0000 106 O -9.200175880 17.799446874 5.345546579 CORE 107 O O 0.0000 107 O 0.564037299 10.744544261 9.176426268 CORE 108 O O 0.0000 108 O2 12.651750633 5.783080357 4.891580047 CORE 109 O2 O2 0.0000 109 O2 13.568764741 7.442131855 2.829694544 CORE 110 O2 O2 0.0000 110 H 13.227675297 6.678320964 3.351083460 CORE 111 H H 0.0000 111 H 13.427911297 8.198987345 3.430748518 CORE 112 H H 0.0000 112 C 13.899398616 5.666831525 5.641721478 CORE 113 C C 0.0000 113 C 12.931240354 4.548746085 5.612957449 CORE 114 C C 0.0000 114 H 13.130242201 3.661430126 4.978602730 CORE 115 H H 0.0000 115 H 12.292212390 4.378991320 6.504485778 CORE 116 H H 0.0000 116 H 14.805276282 5.616040032 5.008374182 CORE 117 H H 0.0000 117 H 13.961476758 6.302051106 6.548765106 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.306229935 4.748755517 3.527794926 CORE 1 Si Si 0.0000 1 Si -2.576500701 12.049855276 7.336229217 CORE 2 Si Si 0.0000 2 Si 1.076316158 4.792035201 3.482698127 CORE 3 Si Si 0.0000 3 Si -8.630866534 12.011059875 7.320760473 CORE 4 Si Si 0.0000 4 Si -13.618082778 7.686436201 11.078966440 CORE 5 Si Si 0.0000 5 Si -4.006878100 14.908380292 7.327571595 CORE 6 Si Si 0.0000 6 Si -7.155797491 9.181036549 7.212511829 CORE 7 Si Si 0.0000 7 Si 2.428811589 16.359309453 3.540838033 CORE 8 Si Si 0.0000 8 Si -13.624601873 16.332667841 3.451956450 CORE 9 Si Si 0.0000 9 Si -3.928291588 9.142549623 7.330496494 CORE 10 Si Si 0.0000 10 Si -7.229750682 14.892287531 7.272688035 CORE 11 Si Si 0.0000 11 Si 2.411389680 7.717416074 3.481742584 CORE 12 Si Si 0.0000 12 Si -10.209792892 4.569462374 5.838989851 CORE 13 Si Si 0.0000 13 Si -0.300110076 12.065768285 9.574353627 CORE 14 Si Si 0.0000 14 Si -10.810740681 12.051388572 9.588124592 CORE 15 Si Si 0.0000 15 Si -1.229347368 4.791430070 5.728196061 CORE 16 Si Si 0.0000 16 Si -9.966172722 4.681736918 8.879951341 CORE 17 Si Si 0.0000 17 Si -0.283046309 12.014480637 5.084858055 CORE 18 Si Si 0.0000 18 Si -11.013628197 12.028130676 5.096165498 CORE 19 Si Si 0.0000 19 Si -1.202887251 4.767754579 8.860880428 CORE 20 Si Si 0.0000 20 Ti -9.035947800 7.651593177 5.018885683 CORE 21 Ti Ti 0.0000 21 Si 0.685722582 14.950392631 8.913671319 CORE 22 Si Si 0.0000 22 Si -2.270199842 16.325206050 5.106722642 CORE 23 Si Si 0.0000 23 Si -11.882370596 9.161554595 8.801038179 CORE 24 Si Si 0.0000 24 Si 0.735410499 9.127095435 5.728002381 CORE 25 Si Si 0.0000 25 Si -9.001199051 16.282505263 9.546410113 CORE 26 Si Si 0.0000 26 Si -11.848005776 14.932199499 5.733848679 CORE 27 Si Si 0.0000 27 Si -2.205039490 7.706684732 9.534182805 CORE 28 Si Si 0.0000 28 Si -12.044981363 9.194679813 5.715021122 CORE 29 Si Si 0.0000 29 Si -2.217588483 16.301337689 9.549462813 CORE 30 Si Si 0.0000 30 Si 0.620753714 14.951715040 5.766188100 CORE 31 Si Si 0.0000 31 Si -9.049745380 7.642258335 9.217760386 CORE 32 Si Si 0.0000 32 Si -2.153238713 7.754438174 5.080409050 CORE 33 Si Si 0.0000 33 Si -11.890700989 14.949700003 8.855058016 CORE 34 Si Si 0.0000 34 Si -8.959312494 16.210396386 5.064449489 CORE 35 Si Si 0.0000 35 Si 0.644879466 9.148168778 8.864987564 CORE 36 Si Si 0.0000 36 O -15.228740338 7.759975885 3.359915438 CORE 37 O O 0.0000 37 O -5.619327713 14.980520593 7.403485915 CORE 38 O O 0.0000 38 O -15.219260659 16.123885020 3.617623836 CORE 39 O O 0.0000 39 O -5.540938266 9.086328242 7.290436357 CORE 40 O O 0.0000 40 O -10.587447772 4.342399644 7.411466190 CORE 41 O O 0.0000 41 O -0.750172810 11.993835412 3.528413165 CORE 42 O O 0.0000 42 O -10.442197908 12.082857970 3.569525152 CORE 43 O O 0.0000 43 O -0.778674967 4.747049100 7.288852686 CORE 44 O O 0.0000 44 O -13.139926834 6.131429150 3.488800408 CORE 45 O O 0.0000 45 O -3.542803017 13.347927497 7.261803781 CORE 46 O O 0.0000 46 O -7.632418873 10.739537157 7.273754339 CORE 47 O O 0.0000 47 O 2.113502351 17.959759263 3.517018086 CORE 48 O O 0.0000 48 O -3.464292713 10.701100106 7.411146535 CORE 49 O O 0.0000 49 O -13.315859071 17.920782813 3.266510985 CORE 50 O O 0.0000 50 O 1.908832788 6.173503905 3.488601403 CORE 51 O O 0.0000 51 O -7.723495105 13.347980831 7.155532709 CORE 52 O O 0.0000 52 O -11.605907274 4.545566481 4.991931791 CORE 53 O O 0.0000 53 O -1.652975387 12.164247057 8.673670241 CORE 54 O O 0.0000 54 O 0.101447896 4.728858706 4.791313200 CORE 55 O O 0.0000 55 O -9.398348286 12.056356036 8.764913027 CORE 56 O O 0.0000 56 O -1.620199591 11.980359359 6.014842615 CORE 57 O O 0.0000 57 O -11.164383545 4.801144164 9.967292250 CORE 58 O O 0.0000 58 O -9.754311275 11.935982714 6.130974390 CORE 59 O O 0.0000 59 O 0.173233187 4.714037037 9.733392616 CORE 60 O O 0.0000 60 O -10.548819319 8.574891501 5.434139011 CORE 61 O O 0.0000 61 O -0.769267263 15.629626327 9.209858009 CORE 62 O O 0.0000 62 O -10.445140017 8.388527495 8.809351118 CORE 63 O O 0.0000 63 O -0.847184257 15.626055939 5.509056710 CORE 64 O O 0.0000 64 O -0.707178921 8.446566432 5.376937152 CORE 65 O O 0.0000 65 O -10.505203639 15.741271235 9.214020602 CORE 66 O O 0.0000 66 O -10.296505419 15.393689450 5.517325146 CORE 67 O O 0.0000 67 O -0.799902487 8.459060264 9.169356653 CORE 68 O O 0.0000 68 O -12.454085705 9.106513636 7.286981007 CORE 69 O O 0.0000 69 O -2.555776618 16.094334080 3.521452561 CORE 70 O O 0.0000 70 O -8.870915297 7.724944028 3.221375237 CORE 71 O O 0.0000 71 O 1.016073562 15.104272875 7.331743089 CORE 72 O O 0.0000 72 O -2.511822425 7.915289674 3.507747627 CORE 73 O O 0.0000 73 O -12.256500643 15.169367827 7.286510957 CORE 74 O O 0.0000 74 O 1.038464031 8.918506493 7.305807195 CORE 75 O O 0.0000 75 O -8.650038543 15.963602902 3.491453273 CORE 76 O O 0.0000 76 O -13.173635992 8.394614119 4.868923777 CORE 77 O O 0.0000 77 O -3.390153042 15.610794477 8.662911962 CORE 78 O O 0.0000 78 O 1.736583960 15.693491125 4.857447149 CORE 79 O O 0.0000 79 O -7.830387287 8.363975587 8.447509201 CORE 80 O O 0.0000 80 O -3.317344325 8.455207636 5.974561336 CORE 81 O O 0.0000 81 O -13.125430099 15.535214674 9.728256451 CORE 82 O O 0.0000 82 O -7.671141046 15.696417029 5.917246662 CORE 83 O O 0.0000 83 O 1.786447772 8.482968121 9.800376748 CORE 84 O O 0.0000 84 O -7.659795608 8.524570217 5.802871393 CORE 85 O O 0.0000 85 O 1.843062576 15.684018766 9.782251032 CORE 86 O O 0.0000 86 O -3.480415614 15.681334309 5.984599896 CORE 87 O O 0.0000 87 O -12.932788772 8.442120781 9.807200194 CORE 88 O O 0.0000 88 O 1.921432010 8.425871909 4.869274774 CORE 89 O O 0.0000 89 O -7.908911831 15.572503303 8.585286247 CORE 90 O O 0.0000 90 O -12.840076175 15.769977182 4.765261829 CORE 91 O O 0.0000 91 O -3.393040111 8.343905943 8.640041930 CORE 92 O O 0.0000 92 O -9.430019253 5.979539439 5.625589309 CORE 93 O O 0.0000 93 O 0.643036414 13.371651566 9.322742871 CORE 94 O O 0.0000 94 O -2.203019004 17.934036590 5.399582011 CORE 95 O O 0.0000 95 O -11.680704917 10.716587303 9.247557474 CORE 96 O O 0.0000 96 O 0.664725227 10.722968853 5.385067745 CORE 97 O O 0.0000 97 O -8.940839255 17.897047500 9.313558221 CORE 98 O O 0.0000 98 O -11.934904014 13.342627052 5.391213920 CORE 99 O O 0.0000 99 O -2.051230800 6.116432054 9.200768982 CORE 100 O O 0.0000 100 O -12.017641193 10.760547218 5.256061440 CORE 101 O O 0.0000 101 O -2.151018275 17.897098672 9.202009719 CORE 102 O O 0.0000 102 O 0.576323027 13.365693809 5.385496792 CORE 103 O O 0.0000 103 O -9.116637935 6.065525243 8.788355275 CORE 104 O O 0.0000 104 O -2.072200829 6.159930553 5.441941354 CORE 105 O O 0.0000 105 O -11.694929727 13.363078831 9.182186681 CORE 106 O O 0.0000 106 O -9.199109539 17.795874757 5.344796127 CORE 107 O O 0.0000 107 O 0.562580870 10.747046516 9.175054078 CORE 108 O O 0.0000 108 O2 12.657131219 5.790768891 4.884597763 CORE 109 O2 O2 0.0000 109 O2 13.574821005 7.434648442 2.810689966 CORE 110 O2 O2 0.0000 110 H 13.222870507 6.675725590 3.338044005 CORE 111 H H 0.0000 111 H 13.452695598 8.191870931 3.409848374 CORE 112 H H 0.0000 112 C 13.896082970 5.660546842 5.648914025 CORE 113 C C 0.0000 113 C 12.921884226 4.546076763 5.602958143 CORE 114 C C 0.0000 114 H 13.116922656 3.666148503 4.957781321 CORE 115 H H 0.0000 115 H 12.275292187 4.366693960 6.489727777 CORE 116 H H 0.0000 116 H 14.805196417 5.605172614 5.024409131 CORE 117 H H 0.0000 117 H 13.953916533 6.283776530 6.565318867 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.304556813 4.751361991 3.524584301 CORE 1 Si Si 0.0000 1 Si -2.575690120 12.047032149 7.337246454 CORE 2 Si Si 0.0000 2 Si 1.077251252 4.788594258 3.482121500 CORE 3 Si Si 0.0000 3 Si -8.630985273 12.011867533 7.319547427 CORE 4 Si Si 0.0000 4 Si -13.617802384 7.688427309 11.079199677 CORE 5 Si Si 0.0000 5 Si -4.006187605 14.906486195 7.326966593 CORE 6 Si Si 0.0000 6 Si -7.153036666 9.182538710 7.212428454 CORE 7 Si Si 0.0000 7 Si 2.430742011 16.358218113 3.541228055 CORE 8 Si Si 0.0000 8 Si -13.623334426 16.332575586 3.451167354 CORE 9 Si Si 0.0000 9 Si -3.929248812 9.143370255 7.330271320 CORE 10 Si Si 0.0000 10 Si -7.230863210 14.894091392 7.270408761 CORE 11 Si Si 0.0000 11 Si 2.413319140 7.715201825 3.484059591 CORE 12 Si Si 0.0000 12 Si -10.208576443 4.573609928 5.838236889 CORE 13 Si Si 0.0000 13 Si -0.301583825 12.061990614 9.575560892 CORE 14 Si Si 0.0000 14 Si -10.810313067 12.049054681 9.588756675 CORE 15 Si Si 0.0000 15 Si -1.229081793 4.791477783 5.728356725 CORE 16 Si Si 0.0000 16 Si -9.964961277 4.687879039 8.876765819 CORE 17 Si Si 0.0000 17 Si -0.281515404 12.012571837 5.086644382 CORE 18 Si Si 0.0000 18 Si -11.012087670 12.029199385 5.094561212 CORE 19 Si Si 0.0000 19 Si -1.203056411 4.766056954 8.861019792 CORE 20 Si Si 0.0000 20 Ti -9.037609375 7.652010772 5.015869954 CORE 21 Ti Ti 0.0000 21 Si 0.684154151 14.949764581 8.914833550 CORE 22 Si Si 0.0000 22 Si -2.268538266 16.326104953 5.106045295 CORE 23 Si Si 0.0000 23 Si -11.885629470 9.159147477 8.804385051 CORE 24 Si Si 0.0000 24 Si 0.736681603 9.125424911 5.729523216 CORE 25 Si Si 0.0000 25 Si -9.001454811 16.286962877 9.545166637 CORE 26 Si Si 0.0000 26 Si -11.843904760 14.932400440 5.732391821 CORE 27 Si Si 0.0000 27 Si -2.204026649 7.706187423 9.533946373 CORE 28 Si Si 0.0000 28 Si -12.039870778 9.195738000 5.717231246 CORE 29 Si Si 0.0000 29 Si -2.219783903 16.301439602 9.549297052 CORE 30 Si Si 0.0000 30 Si 0.622339274 14.951754680 5.766688122 CORE 31 Si Si 0.0000 31 Si -9.050590217 7.643142535 9.220987519 CORE 32 Si Si 0.0000 32 Si -2.152428902 7.753881188 5.081261743 CORE 33 Si Si 0.0000 33 Si -11.889551897 14.947967495 8.854067633 CORE 34 Si Si 0.0000 34 Si -8.956678876 16.214082523 5.064422560 CORE 35 Si Si 0.0000 35 Si 0.647319676 9.145957845 8.867020821 CORE 36 Si Si 0.0000 36 O -15.226667891 7.760251783 3.363644953 CORE 37 O O 0.0000 37 O -5.619637936 14.975416766 7.404557164 CORE 38 O O 0.0000 38 O -15.217759968 16.123757450 3.616423949 CORE 39 O O 0.0000 39 O -5.540883419 9.085846933 7.290374967 CORE 40 O O 0.0000 40 O -10.591674455 4.346100629 7.409129786 CORE 41 O O 0.0000 41 O -0.749508103 11.989468034 3.529589089 CORE 42 O O 0.0000 42 O -10.440886776 12.083430523 3.567888307 CORE 43 O O 0.0000 43 O -0.778209248 4.742820392 7.289483096 CORE 44 O O 0.0000 44 O -13.140571527 6.133674534 3.488962594 CORE 45 O O 0.0000 45 O -3.538612321 13.348284550 7.260975431 CORE 46 O O 0.0000 46 O -7.628081534 10.741680485 7.273138915 CORE 47 O O 0.0000 47 O 2.114676077 17.957648801 3.516263298 CORE 48 O O 0.0000 48 O -3.471786738 10.703108512 7.409125069 CORE 49 O O 0.0000 49 O -13.313374598 17.921376123 3.265261196 CORE 50 O O 0.0000 50 O 1.909299661 6.170642723 3.489956401 CORE 51 O O 0.0000 51 O -7.730676983 13.352716650 7.156670521 CORE 52 O O 0.0000 52 O -11.602169018 4.544309949 4.987696321 CORE 53 O O 0.0000 53 O -1.655726397 12.158437340 8.678177669 CORE 54 O O 0.0000 54 O 0.099853676 4.727355105 4.790434642 CORE 55 O O 0.0000 55 O -9.400691697 12.052975491 8.762689362 CORE 56 O O 0.0000 56 O -1.617161644 11.977089664 6.018100102 CORE 57 O O 0.0000 57 O -11.165055950 4.809935426 9.964392303 CORE 58 O O 0.0000 58 O -9.750696184 11.935573047 6.127798453 CORE 59 O O 0.0000 59 O 0.172825780 4.707247406 9.731814423 CORE 60 O O 0.0000 60 O -10.545362996 8.579203383 5.440855347 CORE 61 O O 0.0000 61 O -0.773391180 15.628731748 9.207667434 CORE 62 O O 0.0000 62 O -10.451314249 8.382074880 8.818851391 CORE 63 O O 0.0000 63 O -0.847373431 15.626005632 5.510303913 CORE 64 O O 0.0000 64 O -0.705107436 8.443890911 5.377241897 CORE 65 O O 0.0000 65 O -10.504512951 15.742112479 9.214586350 CORE 66 O O 0.0000 66 O -10.292002770 15.394735816 5.514794758 CORE 67 O O 0.0000 67 O -0.798468960 8.459218538 9.171337420 CORE 68 O O 0.0000 68 O -12.456977008 9.104636981 7.287137563 CORE 69 O O 0.0000 69 O -2.555077848 16.093696517 3.520947214 CORE 70 O O 0.0000 70 O -8.866910312 7.730991733 3.224515496 CORE 71 O O 0.0000 71 O 1.017740911 15.105811072 7.333080894 CORE 72 O O 0.0000 72 O -2.507741809 7.911638564 3.507648505 CORE 73 O O 0.0000 73 O -12.251134297 15.168801039 7.285537309 CORE 74 O O 0.0000 74 O 1.040492023 8.917690187 7.308355993 CORE 75 O O 0.0000 75 O -8.646166152 15.967943037 3.490064576 CORE 76 O O 0.0000 76 O -13.170145606 8.398521523 4.867669651 CORE 77 O O 0.0000 77 O -3.392813025 15.609882888 8.666001558 CORE 78 O O 0.0000 78 O 1.739658663 15.692611537 4.858524027 CORE 79 O O 0.0000 79 O -7.833513181 8.368307505 8.445543800 CORE 80 O O 0.0000 80 O -3.315028049 8.458747320 5.974454531 CORE 81 O O 0.0000 81 O -13.123934027 15.534893514 9.727583441 CORE 82 O O 0.0000 82 O -7.666111865 15.701465936 5.914969974 CORE 83 O O 0.0000 83 O 1.786667930 8.480989121 9.802491478 CORE 84 O O 0.0000 84 O -7.654222191 8.524283075 5.801402212 CORE 85 O O 0.0000 85 O 1.841432562 15.680616887 9.785547011 CORE 86 O O 0.0000 86 O -3.478123009 15.682113426 5.984895513 CORE 87 O O 0.0000 87 O -12.941827942 8.444030734 9.805621392 CORE 88 O O 0.0000 88 O 1.924186869 8.425854467 4.871600300 CORE 89 O O 0.0000 89 O -7.907839140 15.576508006 8.584406244 CORE 90 O O 0.0000 90 O -12.837374623 15.771846918 4.764616813 CORE 91 O O 0.0000 91 O -3.390297953 8.347315895 8.640305444 CORE 92 O O 0.0000 92 O -9.430620453 5.984154030 5.625906987 CORE 93 O O 0.0000 93 O 0.637887339 13.369614330 9.322229384 CORE 94 O O 0.0000 94 O -2.203568436 17.934660172 5.400157421 CORE 95 O O 0.0000 95 O -11.681957738 10.716162357 9.247962635 CORE 96 O O 0.0000 96 O 0.667494134 10.721400818 5.386682757 CORE 97 O O 0.0000 97 O -8.942840112 17.902476524 9.312391274 CORE 98 O O 0.0000 98 O -11.931078003 13.344037967 5.388550253 CORE 99 O O 0.0000 99 O -2.048881039 6.115830382 9.199386066 CORE 100 O O 0.0000 100 O -12.017862698 10.762370539 5.259462171 CORE 101 O O 0.0000 101 O -2.154164761 17.897138745 9.200760005 CORE 102 O O 0.0000 102 O 0.574580816 13.365653592 5.385766772 CORE 103 O O 0.0000 103 O -9.110577053 6.068204799 8.789078265 CORE 104 O O 0.0000 104 O -2.072826469 6.159863236 5.448862171 CORE 105 O O 0.0000 105 O -11.692474313 13.360893268 9.181911908 CORE 106 O O 0.0000 106 O -9.200164333 17.799408243 5.345538440 CORE 107 O O 0.0000 107 O 0.564021518 10.744571361 9.176411434 CORE 108 O O 0.0000 108 O2 12.651808944 5.783163674 4.891504356 CORE 109 O2 O2 0.0000 109 O2 13.568830365 7.442050700 2.829488312 CORE 110 O2 O2 0.0000 110 H 13.227623336 6.678292855 3.350942041 CORE 111 H H 0.0000 111 H 13.428180144 8.198910082 3.430521747 CORE 112 H H 0.0000 112 C 13.899362628 5.666763199 5.641799528 CORE 113 C C 0.0000 113 C 12.931138935 4.548717111 5.612848970 CORE 114 C C 0.0000 114 H 13.130097867 3.661481298 4.978376796 CORE 115 H H 0.0000 115 H 12.292028797 4.378857840 6.504325646 CORE 116 H H 0.0000 116 H 14.805275512 5.615922119 5.008548160 CORE 117 H H 0.0000 117 H 13.961394584 6.301852903 6.548944712 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.305118177 4.750763779 3.525923551 CORE 1 Si Si 0.0000 1 Si -2.576251099 12.047704597 7.336397793 CORE 2 Si Si 0.0000 2 Si 1.076643316 4.789944343 3.482539136 CORE 3 Si Si 0.0000 3 Si -8.631805668 12.012754472 7.319553588 CORE 4 Si Si 0.0000 4 Si -13.617423651 7.688398479 11.079825599 CORE 5 Si Si 0.0000 5 Si -4.006776296 14.906847861 7.327207742 CORE 6 Si Si 0.0000 6 Si -7.154578732 9.181939489 7.211976738 CORE 7 Si Si 0.0000 7 Si 2.429323687 16.358228492 3.541017639 CORE 8 Si Si 0.0000 8 Si -13.624391145 16.331682737 3.451005928 CORE 9 Si Si 0.0000 9 Si -3.928617013 9.143358290 7.330525097 CORE 10 Si Si 0.0000 10 Si -7.229267066 14.892955799 7.270740283 CORE 11 Si Si 0.0000 11 Si 2.411962976 7.716137342 3.482713189 CORE 12 Si Si 0.0000 12 Si -10.208176733 4.572983175 5.838725044 CORE 13 Si Si 0.0000 13 Si -0.300435694 12.065094540 9.574515433 CORE 14 Si Si 0.0000 14 Si -10.810760118 12.050864020 9.589179865 CORE 15 Si Si 0.0000 15 Si -1.228962092 4.792006083 5.727397531 CORE 16 Si Si 0.0000 16 Si -9.965562285 4.684192902 8.878800521 CORE 17 Si Si 0.0000 17 Si -0.282410469 12.013709304 5.085766813 CORE 18 Si Si 0.0000 18 Si -11.013997116 12.028345744 5.094951311 CORE 19 Si Si 0.0000 19 Si -1.202730600 4.768390989 8.860771340 CORE 20 Si Si 0.0000 20 Ti -9.040836303 7.648075115 5.012799909 CORE 21 Ti Ti 0.0000 21 Si 0.685591335 14.950462110 8.913721146 CORE 22 Si Si 0.0000 22 Si -2.269218177 16.325262412 5.106835685 CORE 23 Si Si 0.0000 23 Si -11.882502422 9.158962103 8.802074206 CORE 24 Si Si 0.0000 24 Si 0.735473622 9.126901557 5.728603351 CORE 25 Si Si 0.0000 25 Si -9.001532944 16.283609720 9.545126091 CORE 26 Si Si 0.0000 26 Si -11.846440616 14.931768498 5.733985761 CORE 27 Si Si 0.0000 27 Si -2.204952120 7.706995225 9.534744294 CORE 28 Si Si 0.0000 28 Si -12.042953179 9.195979302 5.715541227 CORE 29 Si Si 0.0000 29 Si -2.217906404 16.301813088 9.549500241 CORE 30 Si Si 0.0000 30 Si 0.621529463 14.951177082 5.766642935 CORE 31 Si Si 0.0000 31 Si -9.051213163 7.641836848 9.220415761 CORE 32 Si Si 0.0000 32 Si -2.153404024 7.754435147 5.080592841 CORE 33 Si Si 0.0000 33 Si -11.890695216 14.947963459 8.854205551 CORE 34 Si Si 0.0000 34 Si -8.958255198 16.210651959 5.065977703 CORE 35 Si Si 0.0000 35 Si 0.645563225 9.146708997 8.865604053 CORE 36 Si Si 0.0000 36 O -15.226693294 7.760169187 3.361324067 CORE 37 O O 0.0000 37 O -5.619217442 14.978510314 7.403021799 CORE 38 O O 0.0000 38 O -15.219394024 16.123498417 3.617585419 CORE 39 O O 0.0000 39 O -5.541345673 9.086133210 7.289894951 CORE 40 O O 0.0000 40 O -10.590147591 4.343539274 7.409486032 CORE 41 O O 0.0000 41 O -0.750042332 11.992519346 3.527927825 CORE 42 O O 0.0000 42 O -10.440708572 12.084219875 3.569049016 CORE 43 O O 0.0000 43 O -0.779856583 4.744844798 7.289353241 CORE 44 O O 0.0000 44 O -13.140808427 6.133835691 3.489222761 CORE 45 O O 0.0000 45 O -3.541657580 13.348089518 7.261728546 CORE 46 O O 0.0000 46 O -7.630493839 10.741185482 7.273469676 CORE 47 O O 0.0000 47 O 2.114252889 17.958850558 3.516330014 CORE 48 O O 0.0000 48 O -3.467575258 10.701574062 7.410127396 CORE 49 O O 0.0000 49 O -13.315052147 17.920950168 3.265118788 CORE 50 O O 0.0000 50 O 1.908910344 6.171284323 3.489312070 CORE 51 O O 0.0000 51 O -7.726022108 13.350069960 7.156055934 CORE 52 O O 0.0000 52 O -11.604890584 4.545120345 4.990176426 CORE 53 O O 0.0000 53 O -1.653676467 12.162699923 8.676888474 CORE 54 O O 0.0000 54 O 0.100668299 4.728382299 4.792159122 CORE 55 O O 0.0000 55 O -9.398636377 12.054443200 8.764609347 CORE 56 O O 0.0000 56 O -1.618899813 11.979265713 6.015925275 CORE 57 O O 0.0000 57 O -11.164941445 4.803876334 9.967623848 CORE 58 O O 0.0000 58 O -9.752537696 11.936105384 6.129987354 CORE 59 O O 0.0000 59 O 0.171460763 4.710600707 9.732119396 CORE 60 O O 0.0000 60 O -10.547706791 8.577825189 5.435867371 CORE 61 O O 0.0000 61 O -0.771733454 15.628566843 9.209159286 CORE 62 O O 0.0000 62 O -10.447845802 8.385692980 8.813858166 CORE 63 O O 0.0000 63 O -0.847877638 15.625489152 5.510115863 CORE 64 O O 0.0000 64 O -0.706011353 8.444762427 5.376967048 CORE 65 O O 0.0000 65 O -10.505588337 15.741577259 9.212814553 CORE 66 O O 0.0000 66 O -10.294034995 15.393799002 5.515902521 CORE 67 O O 0.0000 67 O -0.799240282 8.459179042 9.170643185 CORE 68 O O 0.0000 68 O -12.455987838 9.104644620 7.285129867 CORE 69 O O 0.0000 69 O -2.555487757 16.093309481 3.520971329 CORE 70 O O 0.0000 70 O -8.869834523 7.728142803 3.226263178 CORE 71 O O 0.0000 71 O 1.016053932 15.106038248 7.332600270 CORE 72 O O 0.0000 72 O -2.509897200 7.914648795 3.507377460 CORE 73 O O 0.0000 73 O -12.254530769 15.168613503 7.286793793 CORE 74 O O 0.0000 74 O 1.039707807 8.918306417 7.307690894 CORE 75 O O 0.0000 75 O -8.648246489 15.964503680 3.490936287 CORE 76 O O 0.0000 76 O -13.171853368 8.395678648 4.868474647 CORE 77 O O 0.0000 77 O -3.390775219 15.610301204 8.665338893 CORE 78 O O 0.0000 78 O 1.737335075 15.692700476 4.857879391 CORE 79 O O 0.0000 79 O -7.830787189 8.366180178 8.445800087 CORE 80 O O 0.0000 80 O -3.316627465 8.457355577 5.974055380 CORE 81 O O 0.0000 81 O -13.123823370 15.535003354 9.728220393 CORE 82 O O 0.0000 82 O -7.668877309 15.699120802 5.916733859 CORE 83 O O 0.0000 83 O 1.785957998 8.482229077 9.800749882 CORE 84 O O 0.0000 84 O -7.655623580 8.525586168 5.804480548 CORE 85 O O 0.0000 85 O 1.841800326 15.682748395 9.783454874 CORE 86 O O 0.0000 86 O -3.479712418 15.681086375 5.984441057 CORE 87 O O 0.0000 87 O -12.936227775 8.442943863 9.808085217 CORE 88 O O 0.0000 88 O 1.923072031 8.427225309 4.870302585 CORE 89 O O 0.0000 89 O -7.907396130 15.573048612 8.584577102 CORE 90 O O 0.0000 90 O -12.839778269 15.770093221 4.765038937 CORE 91 O O 0.0000 91 O -3.391355442 8.345722345 8.640145692 CORE 92 O O 0.0000 92 O -9.430925287 5.982946074 5.625217468 CORE 93 O O 0.0000 93 O 0.640722063 13.371055516 9.321880517 CORE 94 O O 0.0000 94 O -2.202765168 17.934438329 5.399295371 CORE 95 O O 0.0000 95 O -11.679707279 10.716698153 9.248337594 CORE 96 O O 0.0000 96 O 0.665933400 10.722821679 5.386268088 CORE 97 O O 0.0000 97 O -8.941798404 17.901005788 9.313128338 CORE 98 O O 0.0000 98 O -11.932366619 13.343070450 5.388964542 CORE 99 O O 0.0000 99 O -2.050222770 6.115310875 9.199915528 CORE 100 O O 0.0000 100 O -12.017260343 10.761128565 5.257733963 CORE 101 O O 0.0000 101 O -2.152215672 17.897631297 9.201004729 CORE 102 O O 0.0000 102 O 0.574941267 13.365730422 5.385563203 CORE 103 O O 0.0000 103 O -9.113147549 6.066902715 8.788468775 CORE 104 O O 0.0000 104 O -2.072502006 6.158522521 5.444713271 CORE 105 O O 0.0000 105 O -11.694104905 13.361249024 9.181442543 CORE 106 O O 0.0000 106 O -9.199918773 17.798177801 5.344579017 CORE 107 O O 0.0000 107 O 0.562448083 10.745927356 9.175352281 CORE 108 O O 0.0000 108 O2 12.655407869 5.787393824 4.886981941 CORE 109 O2 O2 0.0000 109 O2 13.575137193 7.434214270 2.816884447 CORE 110 O2 O2 0.0000 110 H 13.223843320 6.678257828 3.341527045 CORE 111 H H 0.0000 111 H 13.443919501 8.195164844 3.418251306 CORE 112 H H 0.0000 112 C 13.896505966 5.662814137 5.647422554 CORE 113 C C 0.0000 113 C 12.925031674 4.548569793 5.607137244 CORE 114 C C 0.0000 114 H 13.122458161 3.664590125 4.964757671 CORE 115 H H 0.0000 115 H 12.282262759 4.371792598 6.493491296 CORE 116 H H 0.0000 116 H 14.805717367 5.608881095 5.018831900 CORE 117 H H 0.0000 117 H 13.956219337 6.290491637 6.559007083 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.304968454 4.750923206 3.525566544 CORE 1 Si Si 0.0000 1 Si -2.576101568 12.047525277 7.336624031 CORE 2 Si Si 0.0000 2 Si 1.076805355 4.789584406 3.482427766 CORE 3 Si Si 0.0000 3 Si -8.631587050 12.012518070 7.319551915 CORE 4 Si Si 0.0000 4 Si -13.617524685 7.688406119 11.079658773 CORE 5 Si Si 0.0000 5 Si -4.006619260 14.906751426 7.327143461 CORE 6 Si Si 0.0000 6 Si -7.154167669 9.182099204 7.212097160 CORE 7 Si Si 0.0000 7 Si 2.429701842 16.358225753 3.541073704 CORE 8 Si Si 0.0000 8 Si -13.624109404 16.331920725 3.451048985 CORE 9 Si Si 0.0000 9 Si -3.928785403 9.143361462 7.330457469 CORE 10 Si Si 0.0000 10 Si -7.229692563 14.893258508 7.270651963 CORE 11 Si Si 0.0000 11 Si 2.412324581 7.715887967 3.483072174 CORE 12 Si Si 0.0000 12 Si -10.208283156 4.573150242 5.838594884 CORE 13 Si Si 0.0000 13 Si -0.300741683 12.064267134 9.574794085 CORE 14 Si Si 0.0000 14 Si -10.810640994 12.050381702 9.589067050 CORE 15 Si Si 0.0000 15 Si -1.228994038 4.791865251 5.727653210 CORE 16 Si Si 0.0000 16 Si -9.965402170 4.685175554 8.878258050 CORE 17 Si Si 0.0000 17 Si -0.282171836 12.013406018 5.086000735 CORE 18 Si Si 0.0000 18 Si -11.013488097 12.028573353 5.094847320 CORE 19 Si Si 0.0000 19 Si -1.202817393 4.767768705 8.860837523 CORE 20 Si Si 0.0000 20 Ti -9.039976071 7.649124364 5.013618370 CORE 21 Ti Ti 0.0000 21 Si 0.685208175 14.950276160 8.914017676 CORE 22 Si Si 0.0000 22 Si -2.269036893 16.325486993 5.106624965 CORE 23 Si Si 0.0000 23 Si -11.883336096 9.159011546 8.802690239 CORE 24 Si Si 0.0000 24 Si 0.735795775 9.126507891 5.728848532 CORE 25 Si Si 0.0000 25 Si -9.001511967 16.284503578 9.545136893 CORE 26 Si Si 0.0000 26 Si -11.845764555 14.931937006 5.733560822 CORE 27 Si Si 0.0000 27 Si -2.204705404 7.706779869 9.534531596 CORE 28 Si Si 0.0000 28 Si -12.042131436 9.195914868 5.715991726 CORE 29 Si Si 0.0000 29 Si -2.218406955 16.301713482 9.549446077 CORE 30 Si Si 0.0000 30 Si 0.621745387 14.951331031 5.766655031 CORE 31 Si Si 0.0000 31 Si -9.051047083 7.642184820 9.220568209 CORE 32 Si Si 0.0000 32 Si -2.153144030 7.754287396 5.080771154 CORE 33 Si Si 0.0000 33 Si -11.890390382 14.947964468 8.854168809 CORE 34 Si Si 0.0000 34 Si -8.957834897 16.211566430 5.065563110 CORE 35 Si Si 0.0000 35 Si 0.646031445 9.146508776 8.865981752 CORE 36 Si Si 0.0000 36 O -15.226686366 7.760191241 3.361942762 CORE 37 O O 0.0000 37 O -5.619329638 14.977685646 7.403431067 CORE 38 O O 0.0000 38 O -15.218958520 16.123567464 3.617275805 CORE 39 O O 0.0000 39 O -5.541222508 9.086056956 7.290022905 CORE 40 O O 0.0000 40 O -10.590554614 4.344222100 7.409391094 CORE 41 O O 0.0000 41 O -0.749899922 11.991705923 3.528370717 CORE 42 O O 0.0000 42 O -10.440756106 12.084009419 3.568739555 CORE 43 O O 0.0000 43 O -0.779417422 4.744305110 7.289387854 CORE 44 O O 0.0000 44 O -13.140745305 6.133792735 3.489153383 CORE 45 O O 0.0000 45 O -3.540845652 13.348141555 7.261527791 CORE 46 O O 0.0000 46 O -7.629850686 10.741317521 7.273381509 CORE 47 O O 0.0000 47 O 2.114365662 17.958530262 3.516312213 CORE 48 O O 0.0000 48 O -3.468697986 10.701983153 7.409860155 CORE 49 O O 0.0000 49 O -13.314604903 17.921063756 3.265156748 CORE 50 O O 0.0000 50 O 1.909014264 6.171113220 3.489483841 CORE 51 O O 0.0000 51 O -7.727263190 13.350775561 7.156219793 CORE 52 O O 0.0000 52 O -11.604165064 4.544904268 4.989515283 CORE 53 O O 0.0000 53 O -1.654222820 12.161563609 8.677232168 CORE 54 O O 0.0000 54 O 0.100451220 4.728108419 4.791699342 CORE 55 O O 0.0000 55 O -9.399184270 12.054051840 8.764097458 CORE 56 O O 0.0000 56 O -1.618436596 11.978685664 6.016505021 CORE 57 O O 0.0000 57 O -11.164972044 4.805491650 9.966762331 CORE 58 O O 0.0000 58 O -9.752046767 11.935963398 6.129403804 CORE 59 O O 0.0000 59 O 0.171824678 4.709706705 9.732038075 CORE 60 O O 0.0000 60 O -10.547081920 8.578192621 5.437197113 CORE 61 O O 0.0000 61 O -0.772175501 15.628610808 9.208761580 CORE 62 O O 0.0000 62 O -10.448770503 8.384728490 8.815189353 CORE 63 O O 0.0000 63 O -0.847743311 15.625626813 5.510165995 CORE 64 O O 0.0000 64 O -0.705770411 8.444530205 5.377040306 CORE 65 O O 0.0000 65 O -10.505301593 15.741719965 9.213286886 CORE 66 O O 0.0000 66 O -10.293493261 15.394048665 5.515607209 CORE 67 O O 0.0000 67 O -0.799034750 8.459189564 9.170828269 CORE 68 O O 0.0000 68 O -12.456251488 9.104642602 7.285665110 CORE 69 O O 0.0000 69 O -2.555378448 16.093412690 3.520964939 CORE 70 O O 0.0000 70 O -8.869054926 7.728902316 3.225797312 CORE 71 O O 0.0000 71 O 1.016503678 15.105977706 7.332728375 CORE 72 O O 0.0000 72 O -2.509322557 7.913846326 3.507449729 CORE 73 O O 0.0000 73 O -12.253625313 15.168663523 7.286458771 CORE 74 O O 0.0000 74 O 1.039916803 8.918142089 7.307868142 CORE 75 O O 0.0000 75 O -8.647691861 15.965420601 3.490703886 CORE 76 O O 0.0000 76 O -13.171398042 8.396436575 4.868260048 CORE 77 O O 0.0000 77 O -3.391318493 15.610189634 8.665515532 CORE 78 O O 0.0000 78 O 1.737954558 15.692676692 4.858051238 CORE 79 O O 0.0000 79 O -7.831514056 8.366747254 8.445731775 CORE 80 O O 0.0000 80 O -3.316201198 8.457726612 5.974161805 CORE 81 O O 0.0000 81 O -13.123852815 15.534974092 9.728050600 CORE 82 O O 0.0000 82 O -7.668140050 15.699745969 5.916263657 CORE 83 O O 0.0000 83 O 1.786147172 8.481898547 9.801214227 CORE 84 O O 0.0000 84 O -7.655250043 8.525238773 5.803659881 CORE 85 O O 0.0000 85 O 1.841702371 15.682180166 9.784012636 CORE 86 O O 0.0000 86 O -3.479288652 15.681360256 5.984562240 CORE 87 O O 0.0000 87 O -12.937720768 8.443233599 9.807428410 CORE 88 O O 0.0000 88 O 1.923369167 8.426859895 4.870648485 CORE 89 O O 0.0000 89 O -7.907514291 15.573970868 8.584531535 CORE 90 O O 0.0000 90 O -12.839137425 15.770560691 4.764926350 CORE 91 O O 0.0000 91 O -3.391073509 8.346147147 8.640188292 CORE 92 O O 0.0000 92 O -9.430844075 5.983268100 5.625401259 CORE 93 O O 0.0000 93 O 0.639966329 13.370671363 9.321973553 CORE 94 O O 0.0000 94 O -2.202979167 17.934497430 5.399525185 CORE 95 O O 0.0000 95 O -11.680307325 10.716555303 9.248237635 CORE 96 O O 0.0000 96 O 0.666349468 10.722442859 5.386378621 CORE 97 O O 0.0000 97 O -8.942076103 17.901397869 9.312931843 CORE 98 O O 0.0000 98 O -11.932023103 13.343328473 5.388854085 CORE 99 O O 0.0000 99 O -2.049865014 6.115449401 9.199774414 CORE 100 O O 0.0000 100 O -12.017420843 10.761459671 5.258194732 CORE 101 O O 0.0000 101 O -2.152735275 17.897499979 9.200939536 CORE 102 O O 0.0000 102 O 0.574845044 13.365709953 5.385617519 CORE 103 O O 0.0000 103 O -9.112462250 6.067249822 8.788631265 CORE 104 O O 0.0000 104 O -2.072588607 6.158879862 5.445819361 CORE 105 O O 0.0000 105 O -11.693670363 13.361154175 9.181567681 CORE 106 O O 0.0000 106 O -9.199984204 17.798505880 5.344834772 CORE 107 O O 0.0000 107 O 0.562867614 10.745565834 9.175634585 CORE 108 O O 0.0000 108 O2 12.654448335 5.786266159 4.888187609 CORE 109 O2 O2 0.0000 109 O2 13.573455795 7.436303398 2.820244554 CORE 110 O2 O2 0.0000 110 H 13.224851157 6.678267197 3.344036970 CORE 111 H H 0.0000 111 H 13.439723609 8.196163209 3.421522485 CORE 112 H H 0.0000 112 C 13.897267473 5.663866989 5.645923476 CORE 113 C C 0.0000 113 C 12.926659764 4.548609001 5.608659980 CORE 114 C C 0.0000 114 H 13.124494813 3.663761422 4.968388444 CORE 115 H H 0.0000 115 H 12.284866356 4.373676173 6.496379680 CORE 116 H H 0.0000 116 H 14.805599590 5.610758182 5.016090335 CORE 117 H H 0.0000 117 H 13.957598979 6.293520462 6.556324550 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.306197797 4.750989226 3.526535932 CORE 1 Si Si 0.0000 1 Si -2.575827334 12.048065398 7.336526583 CORE 2 Si Si 0.0000 2 Si 1.076179907 4.789411574 3.482596114 CORE 3 Si Si 0.0000 3 Si -8.631947308 12.013442775 7.319643658 CORE 4 Si Si 0.0000 4 Si -13.617563752 7.688862490 11.079362319 CORE 5 Si Si 0.0000 5 Si -4.006275745 14.906610162 7.327569693 CORE 6 Si Si 0.0000 6 Si -7.154004667 9.182932376 7.212226559 CORE 7 Si Si 0.0000 7 Si 2.428497133 16.358517219 3.540922016 CORE 8 Si Si 0.0000 8 Si -13.625670523 16.331201861 3.451039324 CORE 9 Si Si 0.0000 9 Si -3.930002237 9.143032950 7.330554385 CORE 10 Si Si 0.0000 10 Si -7.228532886 14.891480162 7.269839589 CORE 11 Si Si 0.0000 11 Si 2.412194295 7.716296048 3.481962433 CORE 12 Si Si 0.0000 12 Si -10.207964466 4.572948435 5.838471267 CORE 13 Si Si 0.0000 13 Si -0.299908201 12.066592088 9.573857713 CORE 14 Si Si 0.0000 14 Si -10.809629308 12.051421870 9.590106576 CORE 15 Si Si 0.0000 15 Si -1.228977102 4.791991956 5.726944521 CORE 16 Si Si 0.0000 16 Si -9.965590959 4.683487012 8.879040300 CORE 17 Si Si 0.0000 17 Si -0.283170051 12.014532097 5.084954743 CORE 18 Si Si 0.0000 18 Si -11.013951891 12.028583299 5.094768509 CORE 19 Si Si 0.0000 19 Si -1.203177267 4.769274181 8.860527453 CORE 20 Si Si 0.0000 20 Ti -9.039304244 7.651051327 5.011571420 CORE 21 Ti Ti 0.0000 21 Si 0.685926767 14.951237191 8.913539486 CORE 22 Si Si 0.0000 22 Si -2.269371748 16.325086263 5.106719980 CORE 23 Si Si 0.0000 23 Si -11.881825783 9.158571464 8.802075043 CORE 24 Si Si 0.0000 24 Si 0.734853177 9.127553968 5.728426483 CORE 25 Si Si 0.0000 25 Si -9.001616080 16.282521840 9.544754250 CORE 26 Si Si 0.0000 26 Si -11.847439986 14.930840765 5.734763827 CORE 27 Si Si 0.0000 27 Si -2.205663014 7.706677236 9.534929377 CORE 28 Si Si 0.0000 28 Si -12.042077552 9.195451146 5.713977563 CORE 29 Si Si 0.0000 29 Si -2.217091011 16.302561357 9.549876798 CORE 30 Si Si 0.0000 30 Si 0.621000237 14.950841362 5.766567472 CORE 31 Si Si 0.0000 31 Si -9.050516510 7.641276835 9.220701412 CORE 32 Si Si 0.0000 32 Si -2.154142630 7.754089049 5.080334195 CORE 33 Si Si 0.0000 33 Si -11.891617415 14.947154360 8.853921118 CORE 34 Si Si 0.0000 34 Si -8.959006121 16.209724803 5.067064090 CORE 35 Si Si 0.0000 35 Si 0.644996665 9.147129763 8.865380401 CORE 36 Si Si 0.0000 36 O -15.226166570 7.760359894 3.360645351 CORE 37 O O 0.0000 37 O -5.619033656 14.979845263 7.402039023 CORE 38 O O 0.0000 38 O -15.220091447 16.122989288 3.618146908 CORE 39 O O 0.0000 39 O -5.541010433 9.086640321 7.289409078 CORE 40 O O 0.0000 40 O -10.590391612 4.342266020 7.409221681 CORE 41 O O 0.0000 41 O -0.750069274 11.994073400 3.527089433 CORE 42 O O 0.0000 42 O -10.440182425 12.085555977 3.569245511 CORE 43 O O 0.0000 43 O -0.781454459 4.745323079 7.289016089 CORE 44 O O 0.0000 44 O -13.140996447 6.134318153 3.489484753 CORE 45 O O 0.0000 45 O -3.542948698 13.347322798 7.262183761 CORE 46 O O 0.0000 46 O -7.631307114 10.741548590 7.273729006 CORE 47 O O 0.0000 47 O 2.114202660 17.958784683 3.516020172 CORE 48 O O 0.0000 48 O -3.466241610 10.700714511 7.410290267 CORE 49 O O 0.0000 49 O -13.315642185 17.920793912 3.264573275 CORE 50 O O 0.0000 50 O 1.908807578 6.171202736 3.489289933 CORE 51 O O 0.0000 51 O -7.723886154 13.349734673 7.155891313 CORE 52 O O 0.0000 52 O -11.605624572 4.545437037 4.991642337 CORE 53 O O 0.0000 53 O -1.653351811 12.165101851 8.676479890 CORE 54 O O 0.0000 54 O 0.101594732 4.728859139 4.793158026 CORE 55 O O 0.0000 55 O -9.398191251 12.055081196 8.766196441 CORE 56 O O 0.0000 56 O -1.619680372 11.980341917 6.015201524 CORE 57 O O 0.0000 57 O -11.164402212 4.801128884 9.969279255 CORE 58 O O 0.0000 58 O -9.753966797 11.936664964 6.130286241 CORE 59 O O 0.0000 59 O 0.170513161 4.711380256 9.732488422 CORE 60 O O 0.0000 60 O -10.549781932 8.578164512 5.432750314 CORE 61 O O 0.0000 61 O -0.771662441 15.627935478 9.209782773 CORE 62 O O 0.0000 62 O -10.446107441 8.386298832 8.812909241 CORE 63 O O 0.0000 63 O -0.848709003 15.624694467 5.510668375 CORE 64 O O 0.0000 64 O -0.706354099 8.444442131 5.376703686 CORE 65 O O 0.0000 65 O -10.505916457 15.741552178 9.211104223 CORE 66 O O 0.0000 66 O -10.295069005 15.392792997 5.516304182 CORE 67 O O 0.0000 67 O -0.799681752 8.459157564 9.170871174 CORE 68 O O 0.0000 68 O -12.456468952 9.103850080 7.284311786 CORE 69 O O 0.0000 69 O -2.555511813 16.092587302 3.520907352 CORE 70 O O 0.0000 70 O -8.871332519 7.727535222 3.225900846 CORE 71 O O 0.0000 71 O 1.015316096 15.107086344 7.332204923 CORE 72 O O 0.0000 72 O -2.510501286 7.916589307 3.507299106 CORE 73 O O 0.0000 73 O -12.256097854 15.168071653 7.287177197 CORE 74 O O 0.0000 74 O 1.039692989 8.918795941 7.307494856 CORE 75 O O 0.0000 75 O -8.649109993 15.962337144 3.491040734 CORE 76 O O 0.0000 76 O -13.172503257 8.394923316 4.869638627 CORE 77 O O 0.0000 77 O -3.389742555 15.610230572 8.665848652 CORE 78 O O 0.0000 78 O 1.736361108 15.692489156 4.857298428 CORE 79 O O 0.0000 79 O -7.830500445 8.364621944 8.446981869 CORE 80 O O 0.0000 80 O -3.317187096 8.457548590 5.973646873 CORE 81 O O 0.0000 81 O -13.123251807 15.534883712 9.728600830 CORE 82 O O 0.0000 82 O -7.669481588 15.698778308 5.917647942 CORE 83 O O 0.0000 83 O 1.785184174 8.482677520 9.799843330 CORE 84 O O 0.0000 84 O -7.657857488 8.524507080 5.804063140 CORE 85 O O 0.0000 85 O 1.841915216 15.683819699 9.782871705 CORE 86 O O 0.0000 86 O -3.480105392 15.680532849 5.983728185 CORE 87 O O 0.0000 87 O -12.933224276 8.442933773 9.809179592 CORE 88 O O 0.0000 88 O 1.922966763 8.428975691 4.869882363 CORE 89 O O 0.0000 89 O -7.906797239 15.571220391 8.585245396 CORE 90 O O 0.0000 90 O -12.841258753 15.768841589 4.765262209 CORE 91 O O 0.0000 91 O -3.391266340 8.345701299 8.639976888 CORE 92 O O 0.0000 92 O -9.431732596 5.982880631 5.624780282 CORE 93 O O 0.0000 93 O 0.641934663 13.371566519 9.321307009 CORE 94 O O 0.0000 94 O -2.202046768 17.934179873 5.398678882 CORE 95 O O 0.0000 95 O -11.678140387 10.716191907 9.248465472 CORE 96 O O 0.0000 96 O 0.665543890 10.723496721 5.386570627 CORE 97 O O 0.0000 97 O -8.941205094 17.900357845 9.313667765 CORE 98 O O 0.0000 98 O -11.932456876 13.343073333 5.388441622 CORE 99 O O 0.0000 99 O -2.051132461 6.116144912 9.200341989 CORE 100 O O 0.0000 100 O -12.017623103 10.760515362 5.257293277 CORE 101 O O 0.0000 101 O -2.151232082 17.898106407 9.200633345 CORE 102 O O 0.0000 102 O 0.574570617 13.365523859 5.385483328 CORE 103 O O 0.0000 103 O -9.113767416 6.066404253 8.788504072 CORE 104 O O 0.0000 104 O -2.072876890 6.158455060 5.442622276 CORE 105 O O 0.0000 105 O -11.694850632 13.360329363 9.180899311 CORE 106 O O 0.0000 106 O -9.200492645 17.798099240 5.343759036 CORE 107 O O 0.0000 107 O 0.561394443 10.745871282 9.174656449 CORE 108 O O 0.0000 108 O2 12.657062131 5.788796667 4.886483897 CORE 109 O2 O2 0.0000 109 O2 13.579376577 7.430614189 2.812105973 CORE 110 O2 O2 0.0000 110 H 13.221557066 6.678259846 3.336742638 CORE 111 H H 0.0000 111 H 13.451570753 8.192497684 3.411757786 CORE 112 H H 0.0000 112 C 13.894988532 5.660365360 5.649512866 CORE 113 C C 0.0000 113 C 12.922531613 4.548341896 5.602518141 CORE 114 C C 0.0000 114 H 13.119570900 3.667034577 4.959079340 CORE 115 H H 0.0000 115 H 12.277715654 4.369531214 6.487743206 CORE 116 H H 0.0000 116 H 14.806311447 5.605719366 5.023963424 CORE 117 H H 0.0000 117 H 13.953364599 6.285967138 6.563743488 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.308164784 4.751094742 3.528087044 CORE 1 Si Si 0.0000 1 Si -2.575388750 12.048929417 7.336370635 CORE 2 Si Si 0.0000 2 Si 1.075179190 4.789135099 3.482865410 CORE 3 Si Si 0.0000 3 Si -8.632523683 12.014922449 7.319790477 CORE 4 Si Si 0.0000 4 Si -13.617626489 7.689592885 11.078888009 CORE 5 Si Si 0.0000 5 Si -4.005726120 14.906384139 7.328251680 CORE 6 Si Si 0.0000 6 Si -7.153743711 9.184265451 7.212433551 CORE 7 Si Si 0.0000 7 Si 2.426569405 16.358983824 3.540679270 CORE 8 Si Si 0.0000 8 Si -13.628168467 16.330051709 3.451023958 CORE 9 Si Si 0.0000 9 Si -3.931949017 9.142507388 7.330709420 CORE 10 Si Si 0.0000 10 Si -7.226677518 14.888634692 7.268539819 CORE 11 Si Si 0.0000 11 Si 2.411986262 7.716948892 3.480186909 CORE 12 Si Si 0.0000 12 Si -10.207454293 4.572625401 5.838273327 CORE 13 Si Si 0.0000 13 Si -0.298574360 12.070312100 9.572359547 CORE 14 Si Si 0.0000 14 Si -10.808010648 12.053086196 9.591769818 CORE 15 Si Si 0.0000 15 Si -1.228949968 4.792194772 5.725810666 CORE 16 Si Si 0.0000 16 Si -9.965892906 4.680785545 8.880291764 CORE 17 Si Si 0.0000 17 Si -0.284767158 12.016333796 5.083281155 CORE 18 Si Si 0.0000 18 Si -11.014693769 12.028599011 5.094642534 CORE 19 Si Si 0.0000 19 Si -1.203752871 4.771683028 8.860031234 CORE 20 Si Si 0.0000 20 Ti -9.038229435 7.654134352 5.008296361 CORE 21 Ti Ti 0.0000 21 Si 0.687076630 14.952775100 8.912774352 CORE 22 Si Si 0.0000 22 Si -2.269907324 16.324445240 5.106871972 CORE 23 Si Si 0.0000 23 Si -11.879409051 9.157867448 8.801090745 CORE 24 Si Si 0.0000 24 Si 0.733345173 9.129227376 5.727751191 CORE 25 Si Si 0.0000 25 Si -9.001782546 16.279351029 9.544142021 CORE 26 Si Si 0.0000 26 Si -11.850120753 14.929086923 5.736688682 CORE 27 Si Si 0.0000 27 Si -2.207194881 7.706513052 9.535565873 CORE 28 Si Si 0.0000 28 Si -12.041991144 9.194709220 5.710754842 CORE 29 Si Si 0.0000 29 Si -2.214985656 16.303917928 9.550565936 CORE 30 Si Si 0.0000 30 Si 0.619807844 14.950057921 5.766427347 CORE 31 Si Si 0.0000 31 Si -9.049667825 7.639823973 9.220914566 CORE 32 Si Si 0.0000 32 Si -2.155740506 7.753771636 5.079635168 CORE 33 Si Si 0.0000 33 Si -11.893580746 14.945858042 8.853524782 CORE 34 Si Si 0.0000 34 Si -8.960880348 16.206777997 5.069465612 CORE 35 Si Si 0.0000 35 Si 0.643340863 9.148123371 8.864418316 CORE 36 Si Si 0.0000 36 O -15.225334435 7.760630026 3.358569570 CORE 37 O O 0.0000 37 O -5.618560433 14.983300620 7.399811630 CORE 38 O O 0.0000 38 O -15.221904285 16.122064438 3.619540778 CORE 39 O O 0.0000 39 O -5.540670959 9.087573819 7.288426987 CORE 40 O O 0.0000 40 O -10.590131041 4.339136291 7.408950712 CORE 41 O O 0.0000 41 O -0.750340622 11.997861161 3.525039288 CORE 42 O O 0.0000 42 O -10.439264460 12.088030267 3.570054995 CORE 43 O O 0.0000 43 O -0.784713910 4.746951657 7.288421205 CORE 44 O O 0.0000 44 O -13.141398273 6.135158964 3.490014900 CORE 45 O O 0.0000 45 O -3.546313417 13.346012931 7.263233253 CORE 46 O O 0.0000 46 O -7.633637438 10.741918328 7.274285018 CORE 47 O O 0.0000 47 O 2.113941897 17.959191755 3.515552936 CORE 48 O O 0.0000 48 O -3.462311486 10.698684628 7.410978416 CORE 49 O O 0.0000 49 O -13.317301644 17.920362190 3.263639793 CORE 50 O O 0.0000 50 O 1.908476764 6.171345874 3.488979710 CORE 51 O O 0.0000 51 O -7.718483051 13.348069338 7.155365655 CORE 52 O O 0.0000 52 O -11.607959514 4.546289525 4.995045654 CORE 53 O O 0.0000 53 O -1.651957927 12.170763097 8.675276200 CORE 54 O O 0.0000 54 O 0.103424312 4.730060175 4.795491844 CORE 55 O O 0.0000 55 O -9.396602227 12.056728225 8.769554799 CORE 56 O O 0.0000 56 O -1.621670260 11.982991923 6.013116005 CORE 57 O O 0.0000 57 O -11.163490405 4.794148402 9.973306211 CORE 58 O O 0.0000 58 O -9.757038999 11.937787440 6.131698065 CORE 59 O O 0.0000 59 O 0.168414927 4.714058083 9.733209054 CORE 60 O O 0.0000 60 O -10.554101951 8.578119538 5.425635360 CORE 61 O O 0.0000 61 O -0.770841661 15.626854949 9.211416727 CORE 62 O O 0.0000 62 O -10.441846502 8.388811465 8.809261048 CORE 63 O O 0.0000 63 O -0.850254149 15.623202830 5.511472154 CORE 64 O O 0.0000 64 O -0.707288037 8.444301443 5.376165171 CORE 65 O O 0.0000 65 O -10.506900432 15.741283775 9.207611902 CORE 66 O O 0.0000 66 O -10.297590235 15.390784014 5.517419324 CORE 67 O O 0.0000 67 O -0.800716917 8.459106103 9.170939791 CORE 68 O O 0.0000 68 O -12.456816701 9.102581871 7.282146392 CORE 69 O O 0.0000 69 O -2.555725235 16.091266624 3.520815153 CORE 70 O O 0.0000 70 O -8.874976669 7.725347929 3.226066455 CORE 71 O O 0.0000 71 O 1.013415888 15.108860222 7.331367444 CORE 72 O O 0.0000 72 O -2.512387253 7.920978163 3.507058185 CORE 73 O O 0.0000 73 O -12.260053766 15.167124749 7.288326723 CORE 74 O O 0.0000 74 O 1.039335040 8.919841875 7.306897614 CORE 75 O O 0.0000 75 O -8.651379119 15.957403699 3.491579629 CORE 76 O O 0.0000 76 O -13.174271832 8.392502216 4.871844340 CORE 77 O O 0.0000 77 O -3.387221326 15.610296015 8.666381538 CORE 78 O O 0.0000 78 O 1.733811588 15.692189041 4.856094054 CORE 79 O O 0.0000 79 O -7.828878706 8.361221363 8.448982110 CORE 80 O O 0.0000 80 O -3.318764381 8.457263755 5.972823011 CORE 81 O O 0.0000 81 O -13.122290156 15.534739132 9.729481213 CORE 82 O O 0.0000 82 O -7.671628126 15.697230165 5.919862708 CORE 83 O O 0.0000 83 O 1.783643262 8.483923963 9.797649865 CORE 84 O O 0.0000 84 O -7.662029709 8.523336171 5.804708384 CORE 85 O O 0.0000 85 O 1.842256037 15.686442893 9.781046277 CORE 86 O O 0.0000 86 O -3.481412290 15.679209144 5.982393727 CORE 87 O O 0.0000 87 O -12.926030082 8.442454194 9.811981406 CORE 88 O O 0.0000 88 O 1.922322840 8.432360848 4.868656612 CORE 89 O O 0.0000 89 O -7.905649686 15.566819426 8.586387543 CORE 90 O O 0.0000 90 O -12.844653108 15.766090824 4.765799507 CORE 91 O O 0.0000 91 O -3.391574830 8.344988058 8.639638595 CORE 92 O O 0.0000 92 O -9.433154577 5.982260798 5.623786627 CORE 93 O O 0.0000 93 O 0.645083843 13.372998767 9.320240553 CORE 94 O O 0.0000 94 O -2.200554545 17.933671609 5.397324722 CORE 95 O O 0.0000 95 O -11.674673287 10.715610416 9.248830009 CORE 96 O O 0.0000 96 O 0.664255275 10.725182813 5.386877807 CORE 97 O O 0.0000 97 O -8.939811403 17.898693808 9.314845210 CORE 98 O O 0.0000 98 O -11.933150642 13.342665395 5.387781696 CORE 99 O O 0.0000 99 O -2.053160452 6.117257730 9.201250214 CORE 100 O O 0.0000 100 O -12.017946604 10.759004409 5.255850873 CORE 101 O O 0.0000 101 O -2.148827090 17.899076663 9.200143516 CORE 102 O O 0.0000 102 O 0.574131648 13.365226051 5.385268652 CORE 103 O O 0.0000 103 O -9.115855643 6.065051286 8.788300579 CORE 104 O O 0.0000 104 O -2.073338375 6.157775405 5.437507031 CORE 105 O O 0.0000 105 O -11.696739293 13.359009694 9.179829965 CORE 106 O O 0.0000 106 O -9.201306305 17.797448847 5.342037827 CORE 107 O O 0.0000 107 O 0.559037177 10.746360230 9.173091416 CORE 108 O O 0.0000 108 O2 12.661243975 5.792845623 4.883758003 CORE 109 O2 O2 0.0000 109 O2 13.588849905 7.421511424 2.799084243 CORE 110 O2 O2 0.0000 110 H 13.216286558 6.678248026 3.325071646 CORE 111 H H 0.0000 111 H 13.470526453 8.186632614 3.396134311 CORE 112 H H 0.0000 112 C 13.891341880 5.654762639 5.655255858 CORE 113 C C 0.0000 113 C 12.915926302 4.547914499 5.592691139 CORE 114 C C 0.0000 114 H 13.111692754 3.672271597 4.944184866 CORE 115 H H 0.0000 115 H 12.266274570 4.362899568 6.473924925 CORE 116 H H 0.0000 116 H 14.807450147 5.597657201 5.036560291 CORE 117 H H 0.0000 117 H 13.946589358 6.273881819 6.575613790 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.306424113 4.751001334 3.526714397 CORE 1 Si Si 0.0000 1 Si -2.575776913 12.048164715 7.336508630 CORE 2 Si Si 0.0000 2 Si 1.076064824 4.789379717 3.482627076 CORE 3 Si Si 0.0000 3 Si -8.632013510 12.013613014 7.319660546 CORE 4 Si Si 0.0000 4 Si -13.617571065 7.688946528 11.079307776 CORE 5 Si Si 0.0000 5 Si -4.006212623 14.906584215 7.327648124 CORE 6 Si Si 0.0000 6 Si -7.153974646 9.183085749 7.212250369 CORE 7 Si Si 0.0000 7 Si 2.428275435 16.358570986 3.540894098 CORE 8 Si Si 0.0000 8 Si -13.625957844 16.331069678 3.451037574 CORE 9 Si Si 0.0000 9 Si -3.930226051 9.142972552 7.330572186 CORE 10 Si Si 0.0000 10 Si -7.228319464 14.891152803 7.269690107 CORE 11 Si Si 0.0000 11 Si 2.412170432 7.716371149 3.481758179 CORE 12 Si Si 0.0000 12 Si -10.207905770 4.572911245 5.838448446 CORE 13 Si Si 0.0000 13 Si -0.299754629 12.067019917 9.573685409 CORE 14 Si Si 0.0000 14 Si -10.809443020 12.051613298 9.590297898 CORE 15 Si Si 0.0000 15 Si -1.228974023 4.792015308 5.726814134 CORE 16 Si Si 0.0000 16 Si -9.965625599 4.683176374 8.879184229 CORE 17 Si Si 0.0000 17 Si -0.283353645 12.014739381 5.084762280 CORE 18 Si Si 0.0000 18 Si -11.014037144 12.028585028 5.094754055 CORE 19 Si Si 0.0000 19 Si -1.203243468 4.769551232 8.860470323 CORE 20 Si Si 0.0000 20 Ti -9.039180694 7.651405930 5.011194710 CORE 21 Ti Ti 0.0000 21 Si 0.686058977 14.951414204 8.913451470 CORE 22 Si Si 0.0000 22 Si -2.269433331 16.325012604 5.106737476 CORE 23 Si Si 0.0000 23 Si -11.881547699 9.158490453 8.801961848 CORE 24 Si Si 0.0000 24 Si 0.734679783 9.127746405 5.728348814 CORE 25 Si Si 0.0000 25 Si -9.001635133 16.282157147 9.544683883 CORE 26 Si Si 0.0000 26 Si -11.847748284 14.930639103 5.734985274 CORE 27 Si Si 0.0000 27 Si -2.205839102 7.706658353 9.535002635 CORE 28 Si Si 0.0000 28 Si -12.042067544 9.195365811 5.713606864 CORE 29 Si Si 0.0000 29 Si -2.216848915 16.302717468 9.549956065 CORE 30 Si Si 0.0000 30 Si 0.620863023 14.950751270 5.766551344 CORE 31 Si Si 0.0000 31 Si -9.050418940 7.641109768 9.220725907 CORE 32 Si Si 0.0000 32 Si -2.154326415 7.754052580 5.080253787 CORE 33 Si Si 0.0000 33 Si -11.891843347 14.947005167 8.853875550 CORE 34 Si Si 0.0000 34 Si -8.959221852 16.209385768 5.067340308 CORE 35 Si Si 0.0000 35 Si 0.644806144 9.147244072 8.865269792 CORE 36 Si Si 0.0000 36 O -15.226070732 7.760391029 3.360406636 CORE 37 O O 0.0000 37 O -5.618979387 14.980242677 7.401782812 CORE 38 O O 0.0000 38 O -15.220299866 16.122882907 3.618307268 CORE 39 O O 0.0000 39 O -5.540971366 9.086747710 7.289296111 CORE 40 O O 0.0000 40 O -10.590361783 4.341906084 7.409190567 CORE 41 O O 0.0000 41 O -0.750100643 11.994509013 3.526853609 CORE 42 O O 0.0000 42 O -10.440076773 12.085840524 3.569338623 CORE 43 O O 0.0000 43 O -0.781829535 4.745510327 7.288947624 CORE 44 O O 0.0000 44 O -13.141042634 6.134414875 3.489545763 CORE 45 O O 0.0000 45 O -3.543335706 13.347172164 7.262304488 CORE 46 O O 0.0000 46 O -7.631575191 10.741591113 7.273792983 CORE 47 O O 0.0000 47 O 2.114172639 17.958831530 3.515966465 CORE 48 O O 0.0000 48 O -3.465789555 10.700480993 7.410369382 CORE 49 O O 0.0000 49 O -13.315833091 17.920744181 3.264465937 CORE 50 O O 0.0000 50 O 1.908769473 6.171219169 3.489254255 CORE 51 O O 0.0000 51 O -7.723264747 13.349543101 7.155830836 CORE 52 O O 0.0000 52 O -11.605893033 4.545535057 4.992033804 CORE 53 O O 0.0000 53 O -1.653191504 12.165752965 8.676341439 CORE 54 O O 0.0000 54 O 0.101805075 4.728997232 4.793426409 CORE 55 O O 0.0000 55 O -9.398008427 12.055270750 8.766582735 CORE 56 O O 0.0000 56 O -1.619909190 11.980646789 6.014961668 CORE 57 O O 0.0000 57 O -11.164297330 4.800325839 9.969742382 CORE 58 O O 0.0000 58 O -9.754320127 11.936794120 6.130448579 CORE 59 O O 0.0000 59 O 0.170271834 4.711688299 9.732571341 CORE 60 O O 0.0000 60 O -10.550278827 8.578159323 5.431931930 CORE 61 O O 0.0000 61 O -0.771567950 15.627811222 9.209970747 CORE 62 O O 0.0000 62 O -10.445617282 8.386587847 8.812489627 CORE 63 O O 0.0000 63 O -0.848886631 15.624522932 5.510760803 CORE 64 O O 0.0000 64 O -0.706461484 8.444425987 5.376641764 CORE 65 O O 0.0000 65 O -10.506029615 15.741521330 9.210702486 CORE 66 O O 0.0000 66 O -10.295359021 15.392561929 5.516432440 CORE 67 O O 0.0000 67 O -0.799800684 8.459151509 9.170879009 CORE 68 O O 0.0000 68 O -12.456508980 9.103704203 7.284062650 CORE 69 O O 0.0000 69 O -2.555536446 16.092435371 3.520896702 CORE 70 O O 0.0000 70 O -8.871751666 7.727283685 3.225919864 CORE 71 O O 0.0000 71 O 1.015097478 15.107290312 7.332108615 CORE 72 O O 0.0000 72 O -2.510718173 7.917094111 3.507271416 CORE 73 O O 0.0000 73 O -12.256552795 15.167962678 7.287309410 CORE 74 O O 0.0000 74 O 1.039651998 8.918916160 7.307426163 CORE 75 O O 0.0000 75 O -8.649371141 15.961769780 3.491102732 CORE 76 O O 0.0000 76 O -13.172706672 8.394644823 4.869892328 CORE 77 O O 0.0000 77 O -3.389452540 15.610238068 8.665909967 CORE 78 O O 0.0000 78 O 1.736067821 15.692454705 4.857159901 CORE 79 O O 0.0000 79 O -7.830313965 8.364230872 8.447211987 CORE 80 O O 0.0000 80 O -3.317368380 8.457515869 5.973552087 CORE 81 O O 0.0000 81 O -13.123141151 15.534867135 9.728702082 CORE 82 O O 0.0000 82 O -7.669728496 15.698600286 5.917902632 CORE 83 O O 0.0000 83 O 1.785006932 8.482820802 9.799590999 CORE 84 O O 0.0000 84 O -7.658337448 8.524372447 5.804137386 CORE 85 O O 0.0000 85 O 1.841954475 15.684121399 9.782661746 CORE 86 O O 0.0000 86 O -3.480255692 15.680380630 5.983574671 CORE 87 O O 0.0000 87 O -12.932396760 8.442878708 9.809501833 CORE 88 O O 0.0000 88 O 1.922892672 8.429365033 4.869741401 CORE 89 O O 0.0000 89 O -7.906665221 15.570714145 8.585376772 CORE 90 O O 0.0000 90 O -12.841649225 15.768525185 4.765323980 CORE 91 O O 0.0000 91 O -3.391301750 8.345619280 8.639937939 CORE 92 O O 0.0000 92 O -9.431896175 5.982809423 5.624665945 CORE 93 O O 0.0000 93 O 0.642296846 13.371731135 9.321184304 CORE 94 O O 0.0000 94 O -2.201875107 17.934121349 5.398523086 CORE 95 O O 0.0000 95 O -11.677741640 10.716125023 9.248507387 CORE 96 O O 0.0000 96 O 0.665395707 10.723690744 5.386606001 CORE 97 O O 0.0000 97 O -8.941044787 17.900166418 9.313803174 CORE 98 O O 0.0000 98 O -11.932536741 13.343026485 5.388365702 CORE 99 O O 0.0000 99 O -2.051365705 6.116272915 9.200446436 CORE 100 O O 0.0000 100 O -12.017660245 10.760341520 5.257127364 CORE 101 O O 0.0000 101 O -2.150955538 17.898217977 9.200577052 CORE 102 O O 0.0000 102 O 0.574520196 13.365489552 5.385458604 CORE 103 O O 0.0000 103 O -9.114007588 6.066248718 8.788480642 CORE 104 O O 0.0000 104 O -2.072930005 6.158376932 5.442033933 CORE 105 O O 0.0000 105 O -11.695067903 13.360177576 9.180776303 CORE 106 O O 0.0000 106 O -9.200586366 17.798024428 5.343561020 CORE 107 O O 0.0000 107 O 0.561123287 10.745927644 9.174476462 CORE 108 O O 0.0000 108 O2 12.657543053 5.789262407 4.886170327 CORE 109 O2 O2 0.0000 109 O2 13.580466204 7.429567246 2.810608188 CORE 110 O2 O2 0.0000 110 H 13.220950862 6.678258404 3.335400193 CORE 111 H H 0.0000 111 H 13.453751162 8.191823074 3.409960733 CORE 112 H H 0.0000 112 C 13.894569001 5.659720877 5.650173400 CORE 113 C C 0.0000 113 C 12.921771838 4.548292741 5.601387785 CORE 114 C C 0.0000 114 H 13.118664673 3.667636969 4.957366195 CORE 115 H H 0.0000 115 H 12.276399711 4.368768530 6.486153830 CORE 116 H H 0.0000 116 H 14.806442310 5.604792065 5.025412295 CORE 117 H H 0.0000 117 H 13.952585194 6.284576980 6.565108831 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.307980421 4.750689687 3.528758685 CORE 1 Si Si 0.0000 1 Si -2.575110858 12.048662312 7.336889523 CORE 2 Si Si 0.0000 2 Si 1.075682050 4.788997006 3.482624337 CORE 3 Si Si 0.0000 3 Si -8.633104099 12.015326350 7.320736511 CORE 4 Si Si 0.0000 4 Si -13.616922523 7.689927739 11.079046163 CORE 5 Si Si 0.0000 5 Si -4.004930550 14.906652685 7.328460422 CORE 6 Si Si 0.0000 6 Si -7.154274861 9.183448568 7.213724192 CORE 7 Si Si 0.0000 7 Si 2.427490642 16.359005014 3.540917680 CORE 8 Si Si 0.0000 8 Si -13.627390602 16.330903476 3.451659312 CORE 9 Si Si 0.0000 9 Si -3.930218546 9.142133758 7.330375996 CORE 10 Si Si 0.0000 10 Si -7.227492140 14.890392281 7.269625065 CORE 11 Si Si 0.0000 11 Si 2.412492201 7.717212105 3.480781260 CORE 12 Si Si 0.0000 12 Si -10.208540840 4.572888902 5.837896846 CORE 13 Si Si 0.0000 13 Si -0.298855908 12.068588241 9.572342735 CORE 14 Si Si 0.0000 14 Si -10.808408625 12.051466412 9.591414333 CORE 15 Si Si 0.0000 15 Si -1.229424346 4.792122986 5.725982665 CORE 16 Si Si 0.0000 16 Si -9.966162330 4.681665277 8.878935625 CORE 17 Si Si 0.0000 17 Si -0.284792176 12.015437343 5.083270201 CORE 18 Si Si 0.0000 18 Si -11.014835409 12.028692130 5.094158715 CORE 19 Si Si 0.0000 19 Si -1.204573267 4.771112637 8.860135149 CORE 20 Si Si 0.0000 20 Ti -9.040912897 7.651247367 5.012854757 CORE 21 Ti Ti 0.0000 21 Si 0.686247574 14.952778848 8.913239381 CORE 22 Si Si 0.0000 22 Si -2.269930033 16.324567333 5.106099459 CORE 23 Si Si 0.0000 23 Si -11.880446140 9.158603465 8.800628759 CORE 24 Si Si 0.0000 24 Si 0.733711974 9.128516585 5.728227555 CORE 25 Si Si 0.0000 25 Si -9.001678433 16.280760070 9.544400667 CORE 26 Si Si 0.0000 26 Si -11.849906369 14.929807228 5.735495870 CORE 27 Si Si 0.0000 27 Si -2.206701835 7.707069461 9.535277331 CORE 28 Si Si 0.0000 28 Si -12.041592974 9.193964410 5.712210255 CORE 29 Si Si 0.0000 29 Si -2.215995419 16.303823656 9.550657374 CORE 30 Si Si 0.0000 30 Si 0.619643303 14.950427659 5.766093846 CORE 31 Si Si 0.0000 31 Si -9.049893371 7.639542886 9.220195532 CORE 32 Si Si 0.0000 32 Si -2.155312892 7.754045516 5.079676551 CORE 33 Si Si 0.0000 33 Si -11.892605046 14.945683191 8.853800771 CORE 34 Si Si 0.0000 34 Si -8.961005631 16.209128177 5.067416532 CORE 35 Si Si 0.0000 35 Si 0.643462874 9.147811148 8.864687003 CORE 36 Si Si 0.0000 36 O -15.226396735 7.761024701 3.359257642 CORE 37 O O 0.0000 37 O -5.617868398 14.982501899 7.400228277 CORE 38 O O 0.0000 38 O -15.222179289 16.121786666 3.619018847 CORE 39 O O 0.0000 39 O -5.542315599 9.087975126 7.288273777 CORE 40 O O 0.0000 40 O -10.590598876 4.339804991 7.409662747 CORE 41 O O 0.0000 41 O -0.749944954 11.997402484 3.525514359 CORE 42 O O 0.0000 42 O -10.438849739 12.088416294 3.570174048 CORE 43 O O 0.0000 43 O -0.784722185 4.746440942 7.288343459 CORE 44 O O 0.0000 44 O -13.141331880 6.134868363 3.489706047 CORE 45 O O 0.0000 45 O -3.545474739 13.345425818 7.263169352 CORE 46 O O 0.0000 46 O -7.632526257 10.741592987 7.274159651 CORE 47 O O 0.0000 47 O 2.113834319 17.958714915 3.515289955 CORE 48 O O 0.0000 48 O -3.463624927 10.699164638 7.410571049 CORE 49 O O 0.0000 49 O -13.317092648 17.920126077 3.263705900 CORE 50 O O 0.0000 50 O 1.908641305 6.171223061 3.489289096 CORE 51 O O 0.0000 51 O -7.720457736 13.346949312 7.155304493 CORE 52 O O 0.0000 52 O -11.607784581 4.546049664 4.993742918 CORE 53 O O 0.0000 53 O -1.652899949 12.170304275 8.675349154 CORE 54 O O 0.0000 54 O 0.103910045 4.729654688 4.794914532 CORE 55 O O 0.0000 55 O -9.395839758 12.056780550 8.767930810 CORE 56 O O 0.0000 56 O -1.621382361 11.982672204 6.013919784 CORE 57 O O 0.0000 57 O -11.162741984 4.795851071 9.972044859 CORE 58 O O 0.0000 58 O -9.755535806 11.937977714 6.131929172 CORE 59 O O 0.0000 59 O 0.168918942 4.712840902 9.733660542 CORE 60 O O 0.0000 60 O -10.551364990 8.577711601 5.425117537 CORE 61 O O 0.0000 61 O -0.771484429 15.626747559 9.210993157 CORE 62 O O 0.0000 62 O -10.442619556 8.387184329 8.811508296 CORE 63 O O 0.0000 63 O -0.850506638 15.622862209 5.511928206 CORE 64 O O 0.0000 64 O -0.707319406 8.443522759 5.376181299 CORE 65 O O 0.0000 65 O -10.506590979 15.741215161 9.207369916 CORE 66 O O 0.0000 66 O -10.297192065 15.390571541 5.517447851 CORE 67 O O 0.0000 67 O -0.800796012 8.458924766 9.171462406 CORE 68 O O 0.0000 68 O -12.456859039 9.102196709 7.284237464 CORE 69 O O 0.0000 69 O -2.555360166 16.091330913 3.520826411 CORE 70 O O 0.0000 70 O -8.873577397 7.726725114 3.223114399 CORE 71 O O 0.0000 71 O 1.014212613 15.109438541 7.331425183 CORE 72 O O 0.0000 72 O -2.511907294 7.920632642 3.507282446 CORE 73 O O 0.0000 73 O -12.259649823 15.166631044 7.287117480 CORE 74 O O 0.0000 74 O 1.039490921 8.919931967 7.306726832 CORE 75 O O 0.0000 75 O -8.651365455 15.957760752 3.491898371 CORE 76 O O 0.0000 76 O -13.174767380 8.393388866 4.871214767 CORE 77 O O 0.0000 77 O -3.387860822 15.609817734 8.666382831 CORE 78 O O 0.0000 78 O 1.734341391 15.692031777 4.855876031 CORE 79 O O 0.0000 79 O -7.828093913 8.362893473 8.447654651 CORE 80 O O 0.0000 80 O -3.318634095 8.458175343 5.973195461 CORE 81 O O 0.0000 81 O -13.122776466 15.534672680 9.729715211 CORE 82 O O 0.0000 82 O -7.670686682 15.698331018 5.919037096 CORE 83 O O 0.0000 83 O 1.784422859 8.482791108 9.799083750 CORE 84 O O 0.0000 84 O -7.660476288 8.523943464 5.804904726 CORE 85 O O 0.0000 85 O 1.842294141 15.686061191 9.781697759 CORE 86 O O 0.0000 86 O -3.480617105 15.679460537 5.982417538 CORE 87 O O 0.0000 87 O -12.927505947 8.442590269 9.811374882 CORE 88 O O 0.0000 88 O 1.923232146 8.432184700 4.867943435 CORE 89 O O 0.0000 89 O -7.905351588 15.567052513 8.586405801 CORE 90 O O 0.0000 90 O -12.844369636 15.766027399 4.765770295 CORE 91 O O 0.0000 91 O -3.391709350 8.346147724 8.639022562 CORE 92 O O 0.0000 92 O -9.432460233 5.985492294 5.623087067 CORE 93 O O 0.0000 93 O 0.644842131 13.372823916 9.320035158 CORE 94 O O 0.0000 94 O -2.200550504 17.933468361 5.397339936 CORE 95 O O 0.0000 95 O -11.674594961 10.715367384 9.248739864 CORE 96 O O 0.0000 96 O 0.664249886 10.725421666 5.387020974 CORE 97 O O 0.0000 97 O -8.939839308 17.898283564 9.314667810 CORE 98 O O 0.0000 98 O -11.932896037 13.342614800 5.387388555 CORE 99 O O 0.0000 99 O -2.052963196 6.117169656 9.201148962 CORE 100 O O 0.0000 100 O -12.018108258 10.760934542 5.255969393 CORE 101 O O 0.0000 101 O -2.149475824 17.898589445 9.200048350 CORE 102 O O 0.0000 102 O 0.574029075 13.365519102 5.385498542 CORE 103 O O 0.0000 103 O -9.114943066 6.065503765 8.789003790 CORE 104 O O 0.0000 104 O -2.073745590 6.158011086 5.438176542 CORE 105 O O 0.0000 105 O -11.696196789 13.358049239 9.179875684 CORE 106 O O 0.0000 106 O -9.201530312 17.796823103 5.341740156 CORE 107 O O 0.0000 107 O 0.558877640 10.746607875 9.173469951 CORE 108 O O 0.0000 108 O2 12.659908402 5.792682592 4.885535505 CORE 109 O2 O2 0.0000 109 O2 13.588341271 7.423164506 2.802014391 CORE 110 O2 O2 0.0000 110 H 13.216615832 6.676999277 3.327125823 CORE 111 H H 0.0000 111 H 13.468109914 8.187130355 3.397785382 CORE 112 H H 0.0000 112 C 13.893360827 5.655897944 5.654275744 CORE 113 C C 0.0000 113 C 12.915956709 4.547079020 5.593848577 CORE 114 C C 0.0000 114 H 13.114022500 3.671271502 4.946314658 CORE 115 H H 0.0000 115 H 12.268011777 4.365168448 6.474791995 CORE 116 H H 0.0000 116 H 14.807639129 5.599353528 5.035056876 CORE 117 H H 0.0000 117 H 13.947033523 6.275959271 6.573188761 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.307833777 4.750718949 3.528566146 CORE 1 Si Si 0.0000 1 Si -2.575173596 12.048615464 7.336853693 CORE 2 Si Si 0.0000 2 Si 1.075718037 4.789033043 3.482624565 CORE 3 Si Si 0.0000 3 Si -8.633001333 12.015165049 7.320635183 CORE 4 Si Si 0.0000 4 Si -13.616983721 7.689835341 11.079070811 CORE 5 Si Si 0.0000 5 Si -4.005051406 14.906646199 7.328383894 CORE 6 Si Si 0.0000 6 Si -7.154246571 9.183414405 7.213585360 CORE 7 Si Si 0.0000 7 Si 2.427564541 16.358964220 3.540915474 CORE 8 Si Si 0.0000 8 Si -13.627255698 16.330919188 3.451600737 CORE 9 Si Si 0.0000 9 Si -3.930219316 9.142212751 7.330394481 CORE 10 Si Si 0.0000 10 Si -7.227570081 14.890463922 7.269631151 CORE 11 Si Si 0.0000 11 Si 2.412461795 7.717132968 3.480873308 CORE 12 Si Si 0.0000 12 Si -10.208480990 4.572891065 5.837948804 CORE 13 Si Si 0.0000 13 Si -0.298940392 12.068440634 9.572469167 CORE 14 Si Si 0.0000 14 Si -10.808506003 12.051480250 9.591309201 CORE 15 Si Si 0.0000 15 Si -1.229381816 4.792112752 5.726061019 CORE 16 Si Si 0.0000 16 Si -9.966111717 4.681807550 8.878959055 CORE 17 Si Si 0.0000 17 Si -0.284656694 12.015371612 5.083410706 CORE 18 Si Si 0.0000 18 Si -11.014760355 12.028682040 5.094214780 CORE 19 Si Si 0.0000 19 Si -1.204447985 4.770965606 8.860166719 CORE 20 Si Si 0.0000 20 Ti -9.040749703 7.651262359 5.012698429 CORE 21 Ti Ti 0.0000 21 Si 0.686229869 14.952650268 8.913259388 CORE 22 Si Si 0.0000 22 Si -2.269883269 16.324609280 5.106159556 CORE 23 Si Si 0.0000 23 Si -11.880549868 9.158592942 8.800754278 CORE 24 Si Si 0.0000 24 Si 0.733803194 9.128444079 5.728238965 CORE 25 Si Si 0.0000 25 Si -9.001674391 16.280891677 9.544427368 CORE 26 Si Si 0.0000 26 Si -11.849703146 14.929885500 5.735447792 CORE 27 Si Si 0.0000 27 Si -2.206620623 7.707030685 9.535251467 CORE 28 Si Si 0.0000 28 Si -12.041637621 9.194096305 5.712341784 CORE 29 Si Si 0.0000 29 Si -2.216075668 16.303719581 9.550591344 CORE 30 Si Si 0.0000 30 Si 0.619758193 14.950458218 5.766136979 CORE 31 Si Si 0.0000 31 Si -9.049942830 7.639690349 9.220245435 CORE 32 Si Si 0.0000 32 Si -2.155219940 7.754046093 5.079730943 CORE 33 Si Si 0.0000 33 Si -11.892533264 14.945807591 8.853807770 CORE 34 Si Si 0.0000 34 Si -8.960837625 16.209152394 5.067409381 CORE 35 Si Si 0.0000 35 Si 0.643589310 9.147757813 8.864741851 CORE 36 Si Si 0.0000 36 O -15.226366136 7.760965024 3.359365817 CORE 37 O O 0.0000 37 O -5.617972896 14.982289138 7.400374640 CORE 38 O O 0.0000 38 O -15.222002239 16.121890020 3.618951827 CORE 39 O O 0.0000 39 O -5.542189162 9.087859519 7.288370085 CORE 40 O O 0.0000 40 O -10.590576553 4.340002761 7.409618245 CORE 41 O O 0.0000 41 O -0.749959580 11.997129901 3.525640487 CORE 42 O O 0.0000 42 O -10.438965399 12.088173694 3.570095389 CORE 43 O O 0.0000 43 O -0.784449682 4.746353301 7.288400361 CORE 44 O O 0.0000 44 O -13.141304552 6.134825551 3.489690985 CORE 45 O O 0.0000 45 O -3.545273249 13.345590290 7.263087879 CORE 46 O O 0.0000 46 O -7.632436770 10.741592699 7.274125114 CORE 47 O O 0.0000 47 O 2.113866265 17.958725870 3.515353627 CORE 48 O O 0.0000 48 O -3.463828919 10.699288605 7.410552031 CORE 49 O O 0.0000 49 O -13.316974101 17.920184312 3.263777484 CORE 50 O O 0.0000 50 O 1.908653236 6.171222772 3.489285825 CORE 51 O O 0.0000 51 O -7.720721964 13.347193498 7.155354092 CORE 52 O O 0.0000 52 O -11.607606377 4.546001230 4.993581949 CORE 53 O O 0.0000 53 O -1.652927468 12.169875725 8.675442646 CORE 54 O O 0.0000 54 O 0.103711826 4.729592705 4.794774407 CORE 55 O O 0.0000 55 O -9.396043943 12.056638421 8.767803846 CORE 56 O O 0.0000 56 O -1.621243608 11.982481353 6.014017841 CORE 57 O O 0.0000 57 O -11.162888435 4.796272414 9.971827977 CORE 58 O O 0.0000 58 O -9.755421301 11.937866288 6.131789732 CORE 59 O O 0.0000 59 O 0.169046341 4.712732359 9.733557997 CORE 60 O O 0.0000 60 O -10.551262801 8.577753692 5.425759282 CORE 61 O O 0.0000 61 O -0.771492319 15.626847741 9.210896850 CORE 62 O O 0.0000 62 O -10.442901874 8.387128112 8.811600648 CORE 63 O O 0.0000 63 O -0.850354028 15.623018609 5.511818282 CORE 64 O O 0.0000 64 O -0.707238579 8.443607806 5.376224660 CORE 65 O O 0.0000 65 O -10.506538056 15.741243991 9.207683714 CORE 66 O O 0.0000 66 O -10.297019442 15.390758933 5.517352228 CORE 67 O O 0.0000 67 O -0.800702291 8.458946099 9.171407482 CORE 68 O O 0.0000 68 O -12.456826131 9.102338694 7.284221032 CORE 69 O O 0.0000 69 O -2.555376716 16.091434988 3.520833030 CORE 70 O O 0.0000 70 O -8.873405544 7.726777727 3.223378597 CORE 71 O O 0.0000 71 O 1.014295942 15.109236302 7.331489540 CORE 72 O O 0.0000 72 O -2.511795483 7.920299517 3.507281457 CORE 73 O O 0.0000 73 O -12.259358268 15.166756452 7.287135509 CORE 74 O O 0.0000 74 O 1.039506124 8.919836253 7.306792710 CORE 75 O O 0.0000 75 O -8.651177628 15.958138274 3.491823440 CORE 76 O O 0.0000 76 O -13.174573202 8.393507211 4.871090237 CORE 77 O O 0.0000 77 O -3.388010737 15.609857374 8.666338329 CORE 78 O O 0.0000 78 O 1.734504008 15.692071705 4.855996986 CORE 79 O O 0.0000 79 O -7.828303101 8.363019458 8.447612963 CORE 80 O O 0.0000 80 O -3.318514971 8.458113216 5.973229008 CORE 81 O O 0.0000 81 O -13.122810722 15.534690987 9.729619817 CORE 82 O O 0.0000 82 O -7.670596618 15.698356388 5.918930215 CORE 83 O O 0.0000 83 O 1.784477899 8.482793847 9.799131523 CORE 84 O O 0.0000 84 O -7.660274797 8.523983969 5.804832458 CORE 85 O O 0.0000 85 O 1.842262195 15.685878556 9.781788590 CORE 86 O O 0.0000 86 O -3.480583042 15.679547169 5.982526549 CORE 87 O O 0.0000 87 O -12.927966469 8.442617513 9.811198471 CORE 88 O O 0.0000 88 O 1.923200200 8.431919181 4.868112772 CORE 89 O O 0.0000 89 O -7.905475330 15.567397457 8.586308885 CORE 90 O O 0.0000 90 O -12.844113491 15.766262648 4.765728227 CORE 91 O O 0.0000 91 O -3.391670860 8.346097993 8.639108752 CORE 92 O O 0.0000 92 O -9.432407118 5.985239748 5.623235788 CORE 93 O O 0.0000 93 O 0.644602537 13.372720995 9.320143333 CORE 94 O O 0.0000 94 O -2.200675208 17.933529912 5.397451382 CORE 95 O O 0.0000 95 O -11.674891135 10.715438737 9.248717955 CORE 96 O O 0.0000 96 O 0.664357656 10.725258635 5.386981949 CORE 97 O O 0.0000 97 O -8.939952851 17.898460865 9.314586413 CORE 98 O O 0.0000 98 O -11.932862166 13.342653575 5.387480602 CORE 99 O O 0.0000 99 O -2.052812703 6.117085185 9.201082779 CORE 100 O O 0.0000 100 O -12.018066113 10.760878757 5.256078405 CORE 101 O O 0.0000 101 O -2.149615154 17.898554417 9.200098177 CORE 102 O O 0.0000 102 O 0.574075454 13.365516364 5.385494814 CORE 103 O O 0.0000 103 O -9.114854926 6.065573964 8.788954496 CORE 104 O O 0.0000 104 O -2.073668804 6.158045537 5.438539863 CORE 105 O O 0.0000 105 O -11.696090559 13.358249748 9.179960505 CORE 106 O O 0.0000 106 O -9.201441402 17.796936259 5.341911623 CORE 107 O O 0.0000 107 O 0.559089137 10.746543874 9.173564737 CORE 108 O O 0.0000 108 O2 12.659685742 5.792360567 4.885595298 CORE 109 O2 O2 0.0000 109 O2 13.587599585 7.423767475 2.802823723 CORE 110 O2 O2 0.0000 110 H 13.217024010 6.677117766 3.327905106 CORE 111 H H 0.0000 111 H 13.466757791 8.187572311 3.398932018 CORE 112 H H 0.0000 112 C 13.893474755 5.656257880 5.653889450 CORE 113 C C 0.0000 113 C 12.916504217 4.547193329 5.594558558 CORE 114 C C 0.0000 114 H 13.114459544 3.670929152 4.947355402 CORE 115 H H 0.0000 115 H 12.268801574 4.365507483 6.475862027 CORE 116 H H 0.0000 116 H 14.807526356 5.599865683 5.034148575 CORE 117 H H 0.0000 117 H 13.947556205 6.276770821 6.572427887 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.308636275 4.749898606 3.529096217 CORE 1 Si Si 0.0000 1 Si -2.575529043 12.048372288 7.336927559 CORE 2 Si Si 0.0000 2 Si 1.076319045 4.789445737 3.482599918 CORE 3 Si Si 0.0000 3 Si -8.633286730 12.015183067 7.321648388 CORE 4 Si Si 0.0000 4 Si -13.616735658 7.690647900 11.078887173 CORE 5 Si Si 0.0000 5 Si -4.003526275 14.906222550 7.328564185 CORE 6 Si Si 0.0000 6 Si -7.155874276 9.183491956 7.214829749 CORE 7 Si Si 0.0000 7 Si 2.426949100 16.358971139 3.540966138 CORE 8 Si Si 0.0000 8 Si -13.628455211 16.330491503 3.452602988 CORE 9 Si Si 0.0000 9 Si -3.930519531 9.142484469 7.329554645 CORE 10 Si Si 0.0000 10 Si -7.226931161 14.890075733 7.270186630 CORE 11 Si Si 0.0000 11 Si 2.412222777 7.717310125 3.480819144 CORE 12 Si Si 0.0000 12 Si -10.209093352 4.573595369 5.837590351 CORE 13 Si Si 0.0000 13 Si -0.298824732 12.070049463 9.571106791 CORE 14 Si Si 0.0000 14 Si -10.806918326 12.050410820 9.591592494 CORE 15 Si Si 0.0000 15 Si -1.229683378 4.792393407 5.724564832 CORE 16 Si Si 0.0000 16 Si -9.965704310 4.680564279 8.879181642 CORE 17 Si Si 0.0000 17 Si -0.286211077 12.016025320 5.082717536 CORE 18 Si Si 0.0000 18 Si -11.014551167 12.029300144 5.094342125 CORE 19 Si Si 0.0000 19 Si -1.205511632 4.772148768 8.860328448 CORE 20 Si Si 0.0000 20 Ti -9.041081864 7.653953303 5.013368320 CORE 21 Ti Ti 0.0000 21 Si 0.686353996 14.953930153 8.912879560 CORE 22 Si Si 0.0000 22 Si -2.270232365 16.323723494 5.105531124 CORE 23 Si Si 0.0000 23 Si -11.877949928 9.158687503 8.799947837 CORE 24 Si Si 0.0000 24 Si 0.733287439 9.128866863 5.727175705 CORE 25 Si Si 0.0000 25 Si -9.001320099 16.279207314 9.544491269 CORE 26 Si Si 0.0000 26 Si -11.851428036 14.929114888 5.734875654 CORE 27 Si Si 0.0000 27 Si -2.208063195 7.708613712 9.535563591 CORE 28 Si Si 0.0000 28 Si -12.042058692 9.193791577 5.712501535 CORE 29 Si Si 0.0000 29 Si -2.215985027 16.303818899 9.550928420 CORE 30 Si Si 0.0000 30 Si 0.618635273 14.950578582 5.765696293 CORE 31 Si Si 0.0000 31 Si -9.048685390 7.639096894 9.218615132 CORE 32 Si Si 0.0000 32 Si -2.156482383 7.754857210 5.079226737 CORE 33 Si Si 0.0000 33 Si -11.892806922 14.944141102 8.853571110 CORE 34 Si Si 0.0000 34 Si -8.962482843 16.208100117 5.066452013 CORE 35 Si Si 0.0000 35 Si 0.642770647 9.147582674 8.864752273 CORE 36 Si Si 0.0000 36 O -15.225869434 7.762045842 3.358656292 CORE 37 O O 0.0000 37 O -5.616631743 14.983956347 7.399328952 CORE 38 O O 0.0000 38 O -15.222654630 16.120666929 3.619125728 CORE 39 O O 0.0000 39 O -5.542584638 9.089351589 7.287377191 CORE 40 O O 0.0000 40 O -10.590941429 4.338632496 7.408994758 CORE 41 O O 0.0000 41 O -0.749526962 11.999617021 3.524126194 CORE 42 O O 0.0000 42 O -10.437335000 12.090701463 3.570602714 CORE 43 O O 0.0000 43 O -0.787306922 4.747200455 7.288197705 CORE 44 O O 0.0000 44 O -13.141367482 6.134628502 3.489536026 CORE 45 O O 0.0000 45 O -3.547046058 13.344498950 7.263958753 CORE 46 O O 0.0000 46 O -7.633302775 10.741736702 7.274479687 CORE 47 O O 0.0000 47 O 2.113402664 17.958699347 3.514495761 CORE 48 O O 0.0000 48 O -3.462216995 10.698710574 7.410533241 CORE 49 O O 0.0000 49 O -13.317918624 17.920038291 3.263528652 CORE 50 O O 0.0000 50 O 1.908878783 6.171703216 3.489535874 CORE 51 O O 0.0000 51 O -7.718612567 13.345737897 7.154672029 CORE 52 O O 0.0000 52 O -11.609342236 4.546295435 4.994757340 CORE 53 O O 0.0000 53 O -1.652315491 12.174099100 8.675356989 CORE 54 O O 0.0000 54 O 0.105380329 4.729870189 4.796482836 CORE 55 O O 0.0000 55 O -9.394355810 12.058523581 8.769235524 CORE 56 O O 0.0000 56 O -1.622150797 11.984206942 6.013289070 CORE 57 O O 0.0000 57 O -11.161794189 4.793236669 9.974131594 CORE 58 O O 0.0000 58 O -9.756201283 11.939188985 6.133034577 CORE 59 O O 0.0000 59 O 0.167275264 4.713054961 9.734243788 CORE 60 O O 0.0000 60 O -10.551748149 8.577223230 5.418983457 CORE 61 O O 0.0000 61 O -0.772351781 15.626203114 9.211700476 CORE 62 O O 0.0000 62 O -10.442773705 8.387367685 8.811463794 CORE 63 O O 0.0000 63 O -0.852547523 15.621285669 5.513050651 CORE 64 O O 0.0000 64 O -0.707286305 8.442489799 5.376139687 CORE 65 O O 0.0000 65 O -10.506367550 15.740910866 9.204359132 CORE 66 O O 0.0000 66 O -10.297670485 15.389518977 5.518182023 CORE 67 O O 0.0000 67 O -0.800963055 8.458894206 9.172060866 CORE 68 O O 0.0000 68 O -12.456857692 9.100515230 7.284243854 CORE 69 O O 0.0000 69 O -2.554985089 16.090686142 3.520447724 CORE 70 O O 0.0000 70 O -8.873756949 7.727049013 3.222975491 CORE 71 O O 0.0000 71 O 1.014134672 15.111858920 7.331056537 CORE 72 O O 0.0000 72 O -2.512830263 7.923574691 3.507026235 CORE 73 O O 0.0000 73 O -12.262376585 15.164808156 7.286848565 CORE 74 O O 0.0000 74 O 1.039263835 8.920922404 7.306596596 CORE 75 O O 0.0000 75 O -8.653593398 15.954548139 3.491882548 CORE 76 O O 0.0000 76 O -13.176895443 8.393363208 4.872311727 CORE 77 O O 0.0000 77 O -3.386740212 15.609343056 8.666875322 CORE 78 O O 0.0000 78 O 1.732953473 15.691534324 4.854584401 CORE 79 O O 0.0000 79 O -7.826044944 8.362128194 8.447733386 CORE 80 O O 0.0000 80 O -3.318978765 8.458612542 5.972236038 CORE 81 O O 0.0000 81 O -13.122894435 15.534421143 9.730923161 CORE 82 O O 0.0000 82 O -7.671909289 15.699484486 5.918782179 CORE 83 O O 0.0000 83 O 1.783762771 8.482477011 9.798767365 CORE 84 O O 0.0000 84 O -7.661167168 8.524349095 5.806789262 CORE 85 O O 0.0000 85 O 1.842463686 15.687434916 9.781072827 CORE 86 O O 0.0000 86 O -3.480300531 15.678827009 5.981834368 CORE 87 O O 0.0000 87 O -12.924622535 8.442249505 9.812514291 CORE 88 O O 0.0000 88 O 1.923622041 8.434905194 4.866223291 CORE 89 O O 0.0000 89 O -7.904795612 15.564495193 8.588561686 CORE 90 O O 0.0000 90 O -12.847107175 15.764213880 4.765775696 CORE 91 O O 0.0000 91 O -3.391650654 8.346748386 8.638692409 CORE 92 O O 0.0000 92 O -9.434053298 5.985886393 5.622602183 CORE 93 O O 0.0000 93 O 0.646803152 13.373025290 9.318973723 CORE 94 O O 0.0000 94 O -2.199466073 17.932799085 5.396126585 CORE 95 O O 0.0000 95 O -11.671987516 10.714332838 9.248725334 CORE 96 O O 0.0000 96 O 0.663085205 10.726167629 5.387517650 CORE 97 O O 0.0000 97 O -8.939274865 17.897299470 9.314662485 CORE 98 O O 0.0000 98 O -11.933651193 13.342382578 5.386367819 CORE 99 O O 0.0000 99 O -2.054295881 6.117425518 9.201624413 CORE 100 O O 0.0000 100 O -12.019034307 10.760819080 5.255553583 CORE 101 O O 0.0000 101 O -2.149124418 17.898233401 9.199791683 CORE 102 O O 0.0000 102 O 0.573466941 13.365537265 5.385673128 CORE 103 O O 0.0000 103 O -9.115395891 6.063430060 8.789295679 CORE 104 O O 0.0000 104 O -2.074740341 6.157364152 5.435046096 CORE 105 O O 0.0000 105 O -11.696840904 13.355977553 9.179098455 CORE 106 O O 0.0000 106 O -9.203540022 17.797650365 5.340227537 CORE 107 O O 0.0000 107 O 0.557084624 10.746654291 9.172676442 CORE 108 O O 0.0000 108 O2 12.661246669 5.796286998 4.885981896 CORE 109 O2 O2 0.0000 109 O2 13.595036069 7.415173983 2.795240088 CORE 110 O2 O2 0.0000 110 H 13.213395255 6.675452142 3.320417094 CORE 111 H H 0.0000 111 H 13.479775967 8.184956757 3.388717579 CORE 112 H H 0.0000 112 C 13.891793358 5.652354080 5.658161511 CORE 113 C C 0.0000 113 C 12.912115302 4.547441119 5.588031718 CORE 114 C C 0.0000 114 H 13.111595376 3.672748725 4.936380241 CORE 115 H H 0.0000 115 H 12.260624175 4.363227071 6.465256349 CORE 116 H H 0.0000 116 H 14.809833779 5.595426231 5.042720311 CORE 117 H H 0.0000 117 H 13.942147521 6.268956302 6.578860474 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.308607024 4.749928445 3.529076819 CORE 1 Si Si 0.0000 1 Si -2.575515957 12.048381225 7.336924821 CORE 2 Si Si 0.0000 2 Si 1.076297106 4.789430745 3.482600831 CORE 3 Si Si 0.0000 3 Si -8.633276338 12.015182491 7.321611417 CORE 4 Si Si 0.0000 4 Si -13.616744703 7.690618205 11.078893867 CORE 5 Si Si 0.0000 5 Si -4.003582084 14.906238118 7.328557643 CORE 6 Si Si 0.0000 6 Si -7.155814811 9.183489073 7.214784257 CORE 7 Si Si 0.0000 7 Si 2.426971616 16.358970851 3.540964312 CORE 8 Si Si 0.0000 8 Si -13.628411334 16.330507215 3.452566397 CORE 9 Si Si 0.0000 9 Si -3.930508561 9.142474523 7.329585302 CORE 10 Si Si 0.0000 10 Si -7.226954447 14.890089860 7.270166319 CORE 11 Si Si 0.0000 11 Si 2.412231437 7.717303639 3.480821122 CORE 12 Si Si 0.0000 12 Si -10.209070836 4.573569711 5.837603436 CORE 13 Si Si 0.0000 13 Si -0.298828966 12.069990651 9.571156542 CORE 14 Si Si 0.0000 14 Si -10.806976445 12.050449884 9.591582148 CORE 15 Si Si 0.0000 15 Si -1.229672408 4.792383173 5.724619528 CORE 16 Si Si 0.0000 16 Si -9.965719320 4.680609685 8.879173503 CORE 17 Si Si 0.0000 17 Si -0.286154306 12.016001536 5.082742868 CORE 18 Si Si 0.0000 18 Si -11.014558864 12.029277657 5.094337484 CORE 19 Si Si 0.0000 19 Si -1.205472758 4.772105524 8.860322515 CORE 20 Si Si 0.0000 20 Ti -9.041069740 7.653855138 5.013343901 CORE 21 Ti Ti 0.0000 21 Si 0.686349570 14.953883449 8.912893481 CORE 22 Si Si 0.0000 22 Si -2.270219663 16.323755783 5.105554097 CORE 23 Si Si 0.0000 23 Si -11.878044996 9.158684043 8.799977277 CORE 24 Si Si 0.0000 24 Si 0.733306299 9.128851439 5.727214577 CORE 25 Si Si 0.0000 25 Si -9.001332993 16.279268865 9.544488910 CORE 26 Si Si 0.0000 26 Si -11.851365107 14.929142997 5.734896497 CORE 27 Si Si 0.0000 27 Si -2.208010465 7.708555909 9.535552180 CORE 28 Si Si 0.0000 28 Si -12.042043296 9.193802676 5.712495678 CORE 29 Si Si 0.0000 29 Si -2.215988298 16.303815295 9.550916096 CORE 30 Si Si 0.0000 30 Si 0.618676264 14.950574113 5.765712344 CORE 31 Si Si 0.0000 31 Si -9.048731192 7.639118660 9.218674697 CORE 32 Si Si 0.0000 32 Si -2.156436197 7.754827516 5.079245146 CORE 33 Si Si 0.0000 33 Si -11.892796915 14.944201933 8.853579782 CORE 34 Si Si 0.0000 34 Si -8.962422800 16.208138605 5.066486930 CORE 35 Si Si 0.0000 35 Si 0.642800476 9.147589161 8.864751893 CORE 36 Si Si 0.0000 36 O -15.225887524 7.762006489 3.358682233 CORE 37 O O 0.0000 37 O -5.616680816 14.983895372 7.399367216 CORE 38 O O 0.0000 38 O -15.222630767 16.120711615 3.619119414 CORE 39 O O 0.0000 39 O -5.542570204 9.089297102 7.287413401 CORE 40 O O 0.0000 40 O -10.590928151 4.338682659 7.409017579 CORE 41 O O 0.0000 41 O -0.749542743 11.999526208 3.524181498 CORE 42 O O 0.0000 42 O -10.437394658 12.090609208 3.570584229 CORE 43 O O 0.0000 43 O -0.787202617 4.747169608 7.288205084 CORE 44 O O 0.0000 44 O -13.141365173 6.134635709 3.489541731 CORE 45 O O 0.0000 45 O -3.546981396 13.344538735 7.263926955 CORE 46 O O 0.0000 46 O -7.633271022 10.741731369 7.274466754 CORE 47 O O 0.0000 47 O 2.113419599 17.958700212 3.514527103 CORE 48 O O 0.0000 48 O -3.462275691 10.698731764 7.410533926 CORE 49 O O 0.0000 49 O -13.317884176 17.920043625 3.263537781 CORE 50 O O 0.0000 50 O 1.908870700 6.171685630 3.489526745 CORE 51 O O 0.0000 51 O -7.718689545 13.345791088 7.154696904 CORE 52 O O 0.0000 52 O -11.609278729 4.546284624 4.994714359 CORE 53 O O 0.0000 53 O -1.652337815 12.173944862 8.675360108 CORE 54 O O 0.0000 54 O 0.105319517 4.729859954 4.796420457 CORE 55 O O 0.0000 55 O -9.394417392 12.058454678 8.769183262 CORE 56 O O 0.0000 56 O -1.622117696 11.984143950 6.013315695 CORE 57 O O 0.0000 57 O -11.161834026 4.793347519 9.974047458 CORE 58 O O 0.0000 58 O -9.756172801 11.939140696 6.132989086 CORE 59 O O 0.0000 59 O 0.167340118 4.713043141 9.734218760 CORE 60 O O 0.0000 60 O -10.551730251 8.577242689 5.419230920 CORE 61 O O 0.0000 61 O -0.772320413 15.626226610 9.211671113 CORE 62 O O 0.0000 62 O -10.442778516 8.387358892 8.811468815 CORE 63 O O 0.0000 63 O -0.852467274 15.621348950 5.513005617 CORE 64 O O 0.0000 64 O -0.707284573 8.442530736 5.376142806 CORE 65 O O 0.0000 65 O -10.506373708 15.740923119 9.204480543 CORE 66 O O 0.0000 66 O -10.297646622 15.389564239 5.518151747 CORE 67 O O 0.0000 67 O -0.800953625 8.458896080 9.172037056 CORE 68 O O 0.0000 68 O -12.456856537 9.100581826 7.284243017 CORE 69 O O 0.0000 69 O -2.554999330 16.090713386 3.520461797 CORE 70 O O 0.0000 70 O -8.873744055 7.727039211 3.222990173 CORE 71 O O 0.0000 71 O 1.014140446 15.111763062 7.331072360 CORE 72 O O 0.0000 72 O -2.512792544 7.923455048 3.507035592 CORE 73 O O 0.0000 73 O -12.262266313 15.164879365 7.286859063 CORE 74 O O 0.0000 74 O 1.039272688 8.920882763 7.306603747 CORE 75 O O 0.0000 75 O -8.653505258 15.954679313 3.491880342 CORE 76 O O 0.0000 76 O -13.176810575 8.393368397 4.872267073 CORE 77 O O 0.0000 77 O -3.386786591 15.609361795 8.666855696 CORE 78 O O 0.0000 78 O 1.733010052 15.691553928 4.854635978 CORE 79 O O 0.0000 79 O -7.826127311 8.362160771 8.447728973 CORE 80 O O 0.0000 80 O -3.318961830 8.458594380 5.972272325 CORE 81 O O 0.0000 81 O -13.122891356 15.534431089 9.730875540 CORE 82 O O 0.0000 82 O -7.671861370 15.699443260 5.918787580 CORE 83 O O 0.0000 83 O 1.783788944 8.482488687 9.798780602 CORE 84 O O 0.0000 84 O -7.661134644 8.524335689 5.806717831 CORE 85 O O 0.0000 85 O 1.842456373 15.687377977 9.781098995 CORE 86 O O 0.0000 86 O -3.480310924 15.678853244 5.981859624 CORE 87 O O 0.0000 87 O -12.924744738 8.442262911 9.812466214 CORE 88 O O 0.0000 88 O 1.923606645 8.434796219 4.866292365 CORE 89 O O 0.0000 89 O -7.904820438 15.564601286 8.588479452 CORE 90 O O 0.0000 90 O -12.846997866 15.764288693 4.765773947 CORE 91 O O 0.0000 91 O -3.391651423 8.346724746 8.638707624 CORE 92 O O 0.0000 92 O -9.433993255 5.985862753 5.622625309 CORE 93 O O 0.0000 93 O 0.646722710 13.373014191 9.319016476 CORE 94 O O 0.0000 94 O -2.199510335 17.932825752 5.396174967 CORE 95 O O 0.0000 95 O -11.672093553 10.714373199 9.248725030 CORE 96 O O 0.0000 96 O 0.663131585 10.726134475 5.387498099 CORE 97 O O 0.0000 97 O -8.939299690 17.897341849 9.314659746 CORE 98 O O 0.0000 98 O -11.933622326 13.342392524 5.386408441 CORE 99 O O 0.0000 99 O -2.054241612 6.117413121 9.201604635 CORE 100 O O 0.0000 100 O -12.018998897 10.760821242 5.255572753 CORE 101 O O 0.0000 101 O -2.149142315 17.898245077 9.199802865 CORE 102 O O 0.0000 102 O 0.573489265 13.365536544 5.385666661 CORE 103 O O 0.0000 103 O -9.115376069 6.063508332 8.789283203 CORE 104 O O 0.0000 104 O -2.074701082 6.157389090 5.435173669 CORE 105 O O 0.0000 105 O -11.696813385 13.356060438 9.179129949 CORE 106 O O 0.0000 106 O -9.203463236 17.797624274 5.340289004 CORE 107 O O 0.0000 107 O 0.557157753 10.746650255 9.172708849 CORE 108 O O 0.0000 108 O2 12.661189705 5.796143572 4.885967823 CORE 109 O2 O2 0.0000 109 O2 13.594764528 7.415487792 2.795516991 CORE 110 O2 O2 0.0000 110 H 13.213527850 6.675512973 3.320690574 CORE 111 H H 0.0000 111 H 13.479300434 8.185052182 3.389090637 CORE 112 H H 0.0000 112 C 13.891854748 5.652496786 5.658005487 CORE 113 C C 0.0000 113 C 12.912275609 4.547432181 5.588270128 CORE 114 C C 0.0000 114 H 13.111700067 3.672682273 4.936781066 CORE 115 H H 0.0000 115 H 12.260922850 4.363310388 6.465643708 CORE 116 H H 0.0000 116 H 14.809749487 5.595588397 5.042407198 CORE 117 H H 0.0000 117 H 13.942344970 6.269241714 6.578625563 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.308471542 4.749165329 3.528479652 CORE 1 Si Si 0.0000 1 Si -2.575897384 12.048681195 7.336982255 CORE 2 Si Si 0.0000 2 Si 1.076547285 4.790394371 3.482542255 CORE 3 Si Si 0.0000 3 Si -8.632329698 12.014740967 7.321972303 CORE 4 Si Si 0.0000 4 Si -13.616516655 7.690144105 11.078976634 CORE 5 Si Si 0.0000 5 Si -4.002353319 14.905944057 7.328144190 CORE 6 Si Si 0.0000 6 Si -7.155800762 9.184533421 7.214560833 CORE 7 Si Si 0.0000 7 Si 2.426839406 16.358630663 3.540601981 CORE 8 Si Si 0.0000 8 Si -13.629287923 16.330331067 3.452654108 CORE 9 Si Si 0.0000 9 Si -3.931537183 9.143409463 7.328448936 CORE 10 Si Si 0.0000 10 Si -7.226225848 14.890503995 7.269987321 CORE 11 Si Si 0.0000 11 Si 2.412540697 7.717563681 3.480768861 CORE 12 Si Si 0.0000 12 Si -10.210514370 4.574662636 5.837285074 CORE 13 Si Si 0.0000 13 Si -0.298332841 12.071748385 9.570066808 CORE 14 Si Si 0.0000 14 Si -10.805387806 12.050097588 9.591731173 CORE 15 Si Si 0.0000 15 Si -1.229754968 4.792591898 5.723363652 CORE 16 Si Si 0.0000 16 Si -9.966212943 4.677957949 8.879679687 CORE 17 Si Si 0.0000 17 Si -0.286996640 12.016857772 5.082288489 CORE 18 Si Si 0.0000 18 Si -11.014147416 12.029804371 5.094935259 CORE 19 Si Si 0.0000 19 Si -1.206652257 4.772416162 8.860709646 CORE 20 Si Si 0.0000 20 Ti -9.040036307 7.651808966 5.011394552 CORE 21 Ti Ti 0.0000 21 Si 0.686202157 14.954634746 8.912348652 CORE 22 Si Si 0.0000 22 Si -2.270474269 16.323111588 5.104936696 CORE 23 Si Si 0.0000 23 Si -11.876799488 9.157922801 8.800722328 CORE 24 Si Si 0.0000 24 Si 0.733341132 9.129325972 5.726311449 CORE 25 Si Si 0.0000 25 Si -9.001602994 16.277848292 9.544531206 CORE 26 Si Si 0.0000 26 Si -11.852381027 14.928851098 5.734216640 CORE 27 Si Si 0.0000 27 Si -2.208832785 7.709580365 9.535771724 CORE 28 Si Si 0.0000 28 Si -12.043902321 9.194281102 5.712507393 CORE 29 Si Si 0.0000 29 Si -2.216314301 16.303435611 9.550732990 CORE 30 Si Si 0.0000 30 Si 0.617609345 14.950925256 5.765889973 CORE 31 Si Si 0.0000 31 Si -9.047966798 7.638275254 9.218102939 CORE 32 Si Si 0.0000 32 Si -2.156823782 7.755165686 5.078301090 CORE 33 Si Si 0.0000 33 Si -11.893552841 14.942825757 8.853263169 CORE 34 Si Si 0.0000 34 Si -8.964113820 16.207995755 5.065942406 CORE 35 Si Si 0.0000 35 Si 0.642791816 9.147244505 8.864908602 CORE 36 Si Si 0.0000 36 O -15.225660053 7.763473334 3.358326139 CORE 37 O O 0.0000 37 O -5.616239539 14.985039326 7.398848936 CORE 38 O O 0.0000 38 O -15.222910968 16.119497606 3.618963695 CORE 39 O O 0.0000 39 O -5.542607154 9.091129359 7.286621261 CORE 40 O O 0.0000 40 O -10.590935271 4.338318399 7.408788754 CORE 41 O O 0.0000 41 O -0.749011016 12.001579588 3.523299670 CORE 42 O O 0.0000 42 O -10.435571236 12.092399952 3.570811685 CORE 43 O O 0.0000 43 O -0.790053313 4.748201415 7.287901252 CORE 44 O O 0.0000 44 O -13.141393847 6.134443128 3.489018127 CORE 45 O O 0.0000 45 O -3.548332364 13.343824341 7.264728147 CORE 46 O O 0.0000 46 O -7.634197840 10.741416839 7.275053499 CORE 47 O O 0.0000 47 O 2.113116882 17.958829368 3.513632038 CORE 48 O O 0.0000 48 O -3.461247261 10.698556336 7.410423773 CORE 49 O O 0.0000 49 O -13.318947631 17.919609453 3.263980825 CORE 50 O O 0.0000 50 O 1.909441494 6.172407376 3.490003185 CORE 51 O O 0.0000 51 O -7.717124000 13.345900928 7.153956494 CORE 52 O O 0.0000 52 O -11.611176435 4.546365635 4.995377100 CORE 53 O O 0.0000 53 O -1.652655158 12.177692839 8.674732132 CORE 54 O O 0.0000 54 O 0.107135433 4.729939379 4.797678767 CORE 55 O O 0.0000 55 O -9.392836837 12.060484418 8.770805654 CORE 56 O O 0.0000 56 O -1.623275641 11.985454105 6.013345591 CORE 57 O O 0.0000 57 O -11.160492872 4.791655228 9.975587463 CORE 58 O O 0.0000 58 O -9.756552111 11.940319822 6.134245646 CORE 59 O O 0.0000 59 O 0.166064204 4.712964436 9.735301343 CORE 60 O O 0.0000 60 O -10.554156798 8.577686808 5.413691345 CORE 61 O O 0.0000 61 O -0.772808840 15.625533982 9.211937365 CORE 62 O O 0.0000 62 O -10.442167887 8.385941202 8.811618069 CORE 63 O O 0.0000 63 O -0.854376334 15.619266164 5.514199797 CORE 64 O O 0.0000 64 O -0.706824436 8.441159750 5.376356873 CORE 65 O O 0.0000 65 O -10.505605465 15.740238707 9.201391252 CORE 66 O O 0.0000 66 O -10.298314216 15.388785266 5.518826735 CORE 67 O O 0.0000 67 O -0.801127981 8.458710707 9.172749471 CORE 68 O O 0.0000 68 O -12.456020168 9.098616376 7.284181551 CORE 69 O O 0.0000 69 O -2.554688915 16.090267250 3.520202544 CORE 70 O O 0.0000 70 O -8.872399438 7.728081108 3.224013039 CORE 71 O O 0.0000 71 O 1.014556706 15.114790302 7.330534454 CORE 72 O O 0.0000 72 O -2.514047482 7.926715951 3.506853932 CORE 73 O O 0.0000 73 O -12.265056197 15.162056814 7.286603841 CORE 74 O O 0.0000 74 O 1.038721908 8.921934030 7.306130654 CORE 75 O O 0.0000 75 O -8.656356340 15.951423455 3.490811452 CORE 76 O O 0.0000 76 O -13.178773328 8.394642661 4.873955723 CORE 77 O O 0.0000 77 O -3.386522940 15.608274924 8.666622839 CORE 78 O O 0.0000 78 O 1.731358292 15.690921409 4.853300760 CORE 79 O O 0.0000 79 O -7.824798474 8.360704162 8.449023341 CORE 80 O O 0.0000 80 O -3.319315160 8.459258611 5.971214161 CORE 81 O O 0.0000 81 O -13.122363670 15.533491824 9.731716290 CORE 82 O O 0.0000 82 O -7.673106493 15.700963150 5.919094455 CORE 83 O O 0.0000 83 O 1.783018199 8.481777608 9.798622068 CORE 84 O O 0.0000 84 O -7.661007438 8.525635178 5.809691644 CORE 85 O O 0.0000 85 O 1.842321468 15.688424920 9.780361780 CORE 86 O O 0.0000 86 O -3.479864257 15.678049478 5.982083277 CORE 87 O O 0.0000 87 O -12.922128632 8.442451600 9.812374547 CORE 88 O O 0.0000 88 O 1.923792932 8.437939065 4.864844559 CORE 89 O O 0.0000 89 O -7.904025060 15.561934847 8.591283016 CORE 90 O O 0.0000 90 O -12.849746951 15.762483535 4.766320905 CORE 91 O O 0.0000 91 O -3.392123877 8.348110435 8.637864059 CORE 92 O O 0.0000 92 O -9.436032793 5.986255122 5.622725953 CORE 93 O O 0.0000 93 O 0.648639853 13.373169582 9.317692592 CORE 94 O O 0.0000 94 O -2.198492298 17.931878271 5.394542991 CORE 95 O O 0.0000 95 O -11.669419907 10.713410294 9.248437249 CORE 96 O O 0.0000 96 O 0.661362047 10.726145718 5.387867962 CORE 97 O O 0.0000 97 O -8.938878619 17.896170363 9.314093922 CORE 98 O O 0.0000 98 O -11.934977336 13.341888729 5.385204143 CORE 99 O O 0.0000 99 O -2.056025198 6.118637797 9.202421650 CORE 100 O O 0.0000 100 O -12.019488286 10.760440405 5.255837104 CORE 101 O O 0.0000 101 O -2.149680971 17.897479366 9.199828578 CORE 102 O O 0.0000 102 O 0.572770481 13.365675502 5.386087873 CORE 103 O O 0.0000 103 O -9.114690578 6.062697935 8.789477492 CORE 104 O O 0.0000 104 O -2.076154624 6.157341665 5.431508816 CORE 105 O O 0.0000 105 O -11.696931161 13.353804531 9.178406731 CORE 106 O O 0.0000 106 O -9.206086654 17.798263424 5.337852640 CORE 107 O O 0.0000 107 O 0.555366662 10.746118207 9.172018266 CORE 108 O O 0.0000 108 O2 12.662212938 5.801235291 4.886438482 CORE 109 O2 O2 0.0000 109 O2 13.601983933 7.408493327 2.789560236 CORE 110 O2 O2 0.0000 110 H 13.210066908 6.672313477 3.314740817 CORE 111 H H 0.0000 111 H 13.492212187 8.180984631 3.377710164 CORE 112 H H 0.0000 112 C 13.890843254 5.648864703 5.661617241 CORE 113 C C 0.0000 113 C 12.909073699 4.546659407 5.581479546 CORE 114 C C 0.0000 114 H 13.109862788 3.674367500 4.926321675 CORE 115 H H 0.0000 115 H 12.252146176 4.361684550 6.455586968 CORE 116 H H 0.0000 116 H 14.812100018 5.592216934 5.050718539 CORE 117 H H 0.0000 117 H 13.937070229 6.261912827 6.584628113 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.308254848 4.747944400 3.527524110 CORE 1 Si Si 0.0000 1 Si -2.576507821 12.049161351 7.337074150 CORE 2 Si Si 0.0000 2 Si 1.076947572 4.791936316 3.482448458 CORE 3 Si Si 0.0000 3 Si -8.630815151 12.014034645 7.322549615 CORE 4 Si Si 0.0000 4 Si -13.616151586 7.689385313 11.079108999 CORE 5 Si Si 0.0000 5 Si -4.000387294 14.905473704 7.327482743 CORE 6 Si Si 0.0000 6 Si -7.155778246 9.186204378 7.214203370 CORE 7 Si Si 0.0000 7 Si 2.426628101 16.358086362 3.540022158 CORE 8 Si Si 0.0000 8 Si -13.630690082 16.330049403 3.452794461 CORE 9 Si Si 0.0000 9 Si -3.933183363 9.144905280 7.326630659 CORE 10 Si Si 0.0000 10 Si -7.225060013 14.891166497 7.269700909 CORE 11 Si Si 0.0000 11 Si 2.413035475 7.717979546 3.480685257 CORE 12 Si Si 0.0000 12 Si -10.212823910 4.576411433 5.836775619 CORE 13 Si Si 0.0000 13 Si -0.297539195 12.074560845 9.568323158 CORE 14 Si Si 0.0000 14 Si -10.802845985 12.049534260 9.591969583 CORE 15 Si Si 0.0000 15 Si -1.229887178 4.792925888 5.721354206 CORE 16 Si Si 0.0000 16 Si -9.967002740 4.673715115 8.880489627 CORE 17 Si Si 0.0000 17 Si -0.288344144 12.018227749 5.081561620 CORE 18 Si Si 0.0000 18 Si -11.013488867 12.030647057 5.095891715 CORE 19 Si Si 0.0000 19 Si -1.208539379 4.772913326 8.861328949 CORE 20 Si Si 0.0000 20 Ti -9.038383007 7.648535090 5.008275669 CORE 21 Ti Ti 0.0000 21 Si 0.685966603 14.955836791 8.911476941 CORE 22 Si Si 0.0000 22 Si -2.270881869 16.322080790 5.103948823 CORE 23 Si Si 0.0000 23 Si -11.874806522 9.156704899 8.801914379 CORE 24 Si Si 0.0000 24 Si 0.733396941 9.130085341 5.724866458 CORE 25 Si Si 0.0000 25 Si -9.002034842 16.275575376 9.544598911 CORE 26 Si Si 0.0000 26 Si -11.854006423 14.928384061 5.733128732 CORE 27 Si Si 0.0000 27 Si -2.210148729 7.711219465 9.536123102 CORE 28 Si Si 0.0000 28 Si -12.046876760 9.195046524 5.712526106 CORE 29 Si Si 0.0000 29 Si -2.216836021 16.302828174 9.550440036 CORE 30 Si Si 0.0000 30 Si 0.615902160 14.951486999 5.766174026 CORE 31 Si Si 0.0000 31 Si -9.046743806 7.636925890 9.217188247 CORE 32 Si Si 0.0000 32 Si -2.157443649 7.755706671 5.076790525 CORE 33 Si Si 0.0000 33 Si -11.894762169 14.940623906 8.852756681 CORE 34 Si Si 0.0000 34 Si -8.966819220 16.207767425 5.065071151 CORE 35 Si Si 0.0000 35 Si 0.642777960 9.146692997 8.865159335 CORE 36 Si Si 0.0000 36 O -15.225296138 7.765820197 3.357756434 CORE 37 O O 0.0000 37 O -5.615533648 14.986869710 7.398019826 CORE 38 O O 0.0000 38 O -15.223359173 16.117555363 3.618714634 CORE 39 O O 0.0000 39 O -5.542666427 9.094061029 7.285353823 CORE 40 O O 0.0000 40 O -10.590946625 4.337735466 7.408422771 CORE 41 O O 0.0000 41 O -0.748160021 12.004865140 3.521888759 CORE 42 O O 0.0000 42 O -10.432653953 12.095265314 3.571175690 CORE 43 O O 0.0000 43 O -0.794614852 4.749852479 7.287415075 CORE 44 O O 0.0000 44 O -13.141440034 6.134134797 3.488180268 CORE 45 O O 0.0000 45 O -3.550493913 13.342681107 7.266010116 CORE 46 O O 0.0000 46 O -7.635680441 10.740913476 7.275992382 CORE 47 O O 0.0000 47 O 2.112632689 17.959035931 3.512199979 CORE 48 O O 0.0000 48 O -3.459601467 10.698275537 7.410247514 CORE 49 O O 0.0000 49 O -13.320648850 17.918914806 3.264689741 CORE 50 O O 0.0000 50 O 1.910354840 6.173562285 3.490765504 CORE 51 O O 0.0000 51 O -7.714619128 13.346076500 7.152771822 CORE 52 O O 0.0000 52 O -11.614213034 4.546495223 4.996437546 CORE 53 O O 0.0000 53 O -1.653163022 12.183689516 8.673727295 CORE 54 O O 0.0000 54 O 0.110040785 4.730066373 4.799692093 CORE 55 O O 0.0000 55 O -9.390307909 12.063732059 8.773401540 CORE 56 O O 0.0000 56 O -1.625128315 11.987550297 6.013393365 CORE 57 O O 0.0000 57 O -11.158346719 4.788947563 9.978051441 CORE 58 O O 0.0000 58 O -9.757158700 11.942206423 6.136256081 CORE 59 O O 0.0000 59 O 0.164022933 4.712838596 9.737033354 CORE 60 O O 0.0000 60 O -10.558039003 8.578397454 5.404827948 CORE 61 O O 0.0000 61 O -0.773590169 15.624425632 9.212363445 CORE 62 O O 0.0000 62 O -10.441191225 8.383672898 8.811856783 CORE 63 O O 0.0000 63 O -0.857430831 15.615933476 5.516110426 CORE 64 O O 0.0000 64 O -0.706088139 8.438966259 5.376699426 CORE 65 O O 0.0000 65 O -10.504376122 15.739143907 9.196448387 CORE 66 O O 0.0000 66 O -10.299382481 15.387538824 5.519906732 CORE 67 O O 0.0000 67 O -0.801406835 8.458414195 9.173889337 CORE 68 O O 0.0000 68 O -12.454682094 9.095471512 7.284083113 CORE 69 O O 0.0000 69 O -2.554192406 16.089553287 3.519787722 CORE 70 O O 0.0000 70 O -8.870248281 7.729748173 3.225649732 CORE 71 O O 0.0000 71 O 1.015222567 15.119633943 7.329673850 CORE 72 O O 0.0000 72 O -2.516055267 7.931933366 3.506563260 CORE 73 O O 0.0000 73 O -12.269519781 15.157540964 7.286195562 CORE 74 O O 0.0000 74 O 1.037840508 8.923616087 7.305373736 CORE 75 O O 0.0000 75 O -8.660917878 15.946214256 3.489101121 CORE 76 O O 0.0000 76 O -13.181913655 8.396681337 4.876657578 CORE 77 O O 0.0000 77 O -3.386100907 15.606535786 8.666250237 CORE 78 O O 0.0000 78 O 1.728715629 15.689909350 4.851164425 CORE 79 O O 0.0000 79 O -7.822671950 8.358373731 8.451094254 CORE 80 O O 0.0000 80 O -3.319880758 8.460321410 5.969521099 CORE 81 O O 0.0000 81 O -13.121519219 15.531989088 9.733061474 CORE 82 O O 0.0000 82 O -7.675098690 15.703395061 5.919585501 CORE 83 O O 0.0000 83 O 1.781785200 8.480639852 9.798368443 CORE 84 O O 0.0000 84 O -7.660804215 8.527714216 5.814449806 CORE 85 O O 0.0000 85 O 1.842105544 15.690099913 9.779182205 CORE 86 O O 0.0000 86 O -3.479149707 15.676763250 5.982441120 CORE 87 O O 0.0000 87 O -12.917943132 8.442753300 9.812227803 CORE 88 O O 0.0000 88 O 1.924091031 8.442967503 4.862528162 CORE 89 O O 0.0000 89 O -7.902752225 15.557668516 8.595768763 CORE 90 O O 0.0000 90 O -12.854145296 15.759595109 4.767196040 CORE 91 O O 0.0000 91 O -3.392879804 8.350327422 8.636514311 CORE 92 O O 0.0000 92 O -9.439296286 5.986883028 5.622887074 CORE 93 O O 0.0000 93 O 0.651707436 13.373418092 9.315574438 CORE 94 O O 0.0000 94 O -2.196863438 17.930362273 5.391931813 CORE 95 O O 0.0000 95 O -11.665141841 10.711869647 9.247976708 CORE 96 O O 0.0000 96 O 0.658530595 10.726163881 5.388459651 CORE 97 O O 0.0000 97 O -8.938204867 17.894295870 9.313188739 CORE 98 O O 0.0000 98 O -11.937145236 13.341082657 5.383277235 CORE 99 O O 0.0000 99 O -2.058879166 6.120597193 9.203728950 CORE 100 O O 0.0000 100 O -12.020271347 10.759830950 5.256260141 CORE 101 O O 0.0000 101 O -2.150542742 17.896254257 9.199869885 CORE 102 O O 0.0000 102 O 0.571620810 13.365897922 5.386761873 CORE 103 O O 0.0000 103 O -9.113593830 6.061401329 8.789788323 CORE 104 O O 0.0000 104 O -2.078480329 6.157265844 5.425645021 CORE 105 O O 0.0000 105 O -11.697119565 13.350195079 9.177249597 CORE 106 O O 0.0000 106 O -9.210284086 17.799286150 5.333954398 CORE 107 O O 0.0000 107 O 0.552500954 10.745266728 9.170913394 CORE 108 O O 0.0000 108 O2 12.663850073 5.809381926 4.887191672 CORE 109 O2 O2 0.0000 109 O2 13.613534903 7.397302155 2.780029382 CORE 110 O2 O2 0.0000 110 H 13.204529286 6.667194514 3.305221146 CORE 111 H H 0.0000 111 H 13.512870838 8.174476519 3.359501378 CORE 112 H H 0.0000 112 C 13.889224594 5.643053256 5.667395987 CORE 113 C C 0.0000 113 C 12.903950797 4.545422911 5.570614690 CORE 114 C C 0.0000 114 H 13.106923374 3.677063633 4.909586710 CORE 115 H H 0.0000 115 H 12.238103805 4.359083265 6.439496182 CORE 116 H H 0.0000 116 H 14.815860983 5.586822505 5.064016715 CORE 117 H H 0.0000 117 H 13.928630334 6.250186579 6.594232225 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.308469233 4.749152355 3.528469534 CORE 1 Si Si 0.0000 1 Si -2.575903927 12.048686385 7.336983244 CORE 2 Si Si 0.0000 2 Si 1.076551519 4.790410804 3.482541266 CORE 3 Si Si 0.0000 3 Si -8.632313532 12.014733471 7.321978389 CORE 4 Si Si 0.0000 4 Si -13.616512806 7.690136032 11.078978003 CORE 5 Si Si 0.0000 5 Si -4.002332342 14.905939156 7.328137192 CORE 6 Si Si 0.0000 6 Si -7.155800570 9.184551152 7.214557030 CORE 7 Si Si 0.0000 7 Si 2.426837289 16.358624897 3.540595819 CORE 8 Si Si 0.0000 8 Si -13.629302742 16.330328040 3.452655629 CORE 9 Si Si 0.0000 9 Si -3.931554696 9.143425319 7.328429613 CORE 10 Si Si 0.0000 10 Si -7.226213339 14.890511058 7.269984278 CORE 11 Si Si 0.0000 11 Si 2.412545893 7.717568005 3.480767948 CORE 12 Si Si 0.0000 12 Si -10.210538811 4.574681231 5.837279597 CORE 13 Si Si 0.0000 13 Si -0.298324373 12.071778223 9.570048323 CORE 14 Si Si 0.0000 14 Si -10.805360864 12.050091678 9.591733684 CORE 15 Si Si 0.0000 15 Si -1.229756507 4.792595502 5.723342352 CORE 16 Si Si 0.0000 16 Si -9.966221219 4.677912975 8.879688283 CORE 17 Si Si 0.0000 17 Si -0.287010881 12.016872331 5.082280806 CORE 18 Si Si 0.0000 18 Si -11.014140295 12.029813309 5.094945453 CORE 19 Si Si 0.0000 19 Si -1.206672271 4.772421495 8.860716188 CORE 20 Si Si 0.0000 20 Ti -9.040018794 7.651774226 5.011361461 CORE 21 Ti Ti 0.0000 21 Si 0.686199655 14.954647575 8.912339371 CORE 22 Si Si 0.0000 22 Si -2.270478695 16.323100633 5.104926198 CORE 23 Si Si 0.0000 23 Si -11.876778319 9.157909971 8.800734956 CORE 24 Si Si 0.0000 24 Si 0.733341709 9.129334045 5.726296082 CORE 25 Si Si 0.0000 25 Si -9.001607613 16.277824220 9.544531967 CORE 26 Si Si 0.0000 26 Si -11.852398155 14.928846053 5.734205077 CORE 27 Si Si 0.0000 27 Si -2.208846834 7.709597807 9.535775452 CORE 28 Si Si 0.0000 28 Si -12.043933882 9.194289174 5.712507545 CORE 29 Si Si 0.0000 29 Si -2.216319882 16.303429124 9.550729871 CORE 30 Si Si 0.0000 30 Si 0.617591256 14.950931310 5.765892940 CORE 31 Si Si 0.0000 31 Si -9.047953904 7.638260983 9.218093277 CORE 32 Si Si 0.0000 32 Si -2.156830325 7.755171452 5.078285039 CORE 33 Si Si 0.0000 33 Si -11.893565542 14.942802405 8.853257844 CORE 34 Si Si 0.0000 34 Si -8.964142494 16.207993304 5.065933125 CORE 35 Si Si 0.0000 35 Si 0.642791623 9.147238594 8.864911264 CORE 36 Si Si 0.0000 36 O -15.225656204 7.763498127 3.358320129 CORE 37 O O 0.0000 37 O -5.616232033 14.985058786 7.398840188 CORE 38 O O 0.0000 38 O -15.222915586 16.119476992 3.618961108 CORE 39 O O 0.0000 39 O -5.542607731 9.091160495 7.286607797 CORE 40 O O 0.0000 40 O -10.590935464 4.338312200 7.408784875 CORE 41 O O 0.0000 41 O -0.749001971 12.001614471 3.523284684 CORE 42 O O 0.0000 42 O -10.435540252 12.092430367 3.570815564 CORE 43 O O 0.0000 43 O -0.790101810 4.748219001 7.287896079 CORE 44 O O 0.0000 44 O -13.141394424 6.134439813 3.489009226 CORE 45 O O 0.0000 45 O -3.548355265 13.343812232 7.264741764 CORE 46 O O 0.0000 46 O -7.634213428 10.741411505 7.275063464 CORE 47 O O 0.0000 47 O 2.113111686 17.958831530 3.513616824 CORE 48 O O 0.0000 48 O -3.461229749 10.698553309 7.410421948 CORE 49 O O 0.0000 49 O -13.318965528 17.919602101 3.263988356 CORE 50 O O 0.0000 50 O 1.909451116 6.172419628 3.490011249 CORE 51 O O 0.0000 51 O -7.717097443 13.345902802 7.153943942 CORE 52 O O 0.0000 52 O -11.611208766 4.546367076 4.995388359 CORE 53 O O 0.0000 53 O -1.652660546 12.177756408 8.674721482 CORE 54 O O 0.0000 54 O 0.107166225 4.729940677 4.797700143 CORE 55 O O 0.0000 55 O -9.392810087 12.060518869 8.770833192 CORE 56 O O 0.0000 56 O -1.623295271 11.985476304 6.013346124 CORE 57 O O 0.0000 57 O -11.160469971 4.791626543 9.975613632 CORE 58 O O 0.0000 58 O -9.756558462 11.940339858 6.134266946 CORE 59 O O 0.0000 59 O 0.166042650 4.712963139 9.735319676 CORE 60 O O 0.0000 60 O -10.554197982 8.577694303 5.413597319 CORE 61 O O 0.0000 61 O -0.772817115 15.625522162 9.211941930 CORE 62 O O 0.0000 62 O -10.442157687 8.385917130 8.811620579 CORE 63 O O 0.0000 63 O -0.854408665 15.619230848 5.514220109 CORE 64 O O 0.0000 64 O -0.706816546 8.441136399 5.376360525 CORE 65 O O 0.0000 65 O -10.505592379 15.740227175 9.201338838 CORE 66 O O 0.0000 66 O -10.298325570 15.388772005 5.518838222 CORE 67 O O 0.0000 67 O -0.801130868 8.458707535 9.172761567 CORE 68 O O 0.0000 68 O -12.456005927 9.098582934 7.284180486 CORE 69 O O 0.0000 69 O -2.554683719 16.090259610 3.520198131 CORE 70 O O 0.0000 70 O -8.872376729 7.728098838 3.224030460 CORE 71 O O 0.0000 71 O 1.014563826 15.114841763 7.330525325 CORE 72 O O 0.0000 72 O -2.514068651 7.926771304 3.506850813 CORE 73 O O 0.0000 73 O -12.265103539 15.162008957 7.286599505 CORE 74 O O 0.0000 74 O 1.038712479 8.921951905 7.306122666 CORE 75 O O 0.0000 75 O -8.656404643 15.951368247 3.490793271 CORE 76 O O 0.0000 76 O -13.178806621 8.394664283 4.873984402 CORE 77 O O 0.0000 77 O -3.386518322 15.608256473 8.666618883 CORE 78 O O 0.0000 78 O 1.731330387 15.690910742 4.853278090 CORE 79 O O 0.0000 79 O -7.824775765 8.360679513 8.449045326 CORE 80 O O 0.0000 80 O -3.319321126 8.459269854 5.971196208 CORE 81 O O 0.0000 81 O -13.122354625 15.533475968 9.731730591 CORE 82 O O 0.0000 82 O -7.673127662 15.700988953 5.919099704 CORE 83 O O 0.0000 83 O 1.783005113 8.481765499 9.798619405 CORE 84 O O 0.0000 84 O -7.661005321 8.525657232 5.809742156 CORE 85 O O 0.0000 85 O 1.842319159 15.688442650 9.780349228 CORE 86 O O 0.0000 86 O -3.479856752 15.678035784 5.982087080 CORE 87 O O 0.0000 87 O -12.922084369 8.442454771 9.812372949 CORE 88 O O 0.0000 88 O 1.923796204 8.437992399 4.864819988 CORE 89 O O 0.0000 89 O -7.904011589 15.561889585 8.591330637 CORE 90 O O 0.0000 90 O -12.849793523 15.762452832 4.766330186 CORE 91 O O 0.0000 91 O -3.392131960 8.348133931 8.637849682 CORE 92 O O 0.0000 92 O -9.436067434 5.986261897 5.622727702 CORE 93 O O 0.0000 93 O 0.648672569 13.373172177 9.317670150 CORE 94 O O 0.0000 94 O -2.198474978 17.931862127 5.394515300 CORE 95 O O 0.0000 95 O -11.669374489 10.713394006 9.248432380 CORE 96 O O 0.0000 96 O 0.661332026 10.726146006 5.387874200 CORE 97 O O 0.0000 97 O -8.938871499 17.896150471 9.314084336 CORE 98 O O 0.0000 98 O -11.935000237 13.341880224 5.385183679 CORE 99 O O 0.0000 99 O -2.056055604 6.118658554 9.202435571 CORE 100 O O 0.0000 100 O -12.019496754 10.760433918 5.255841592 CORE 101 O O 0.0000 101 O -2.149690208 17.897466392 9.199829034 CORE 102 O O 0.0000 102 O 0.572758356 13.365677809 5.386095024 CORE 103 O O 0.0000 103 O -9.114679031 6.062684241 8.789480763 CORE 104 O O 0.0000 104 O -2.076179449 6.157340944 5.431446589 CORE 105 O O 0.0000 105 O -11.696933086 13.353766187 9.178394483 CORE 106 O O 0.0000 106 O -9.206131302 17.798274235 5.337811257 CORE 107 O O 0.0000 107 O 0.555336255 10.746109125 9.172006551 CORE 108 O O 0.0000 108 O2 12.662230258 5.801321779 4.886446469 CORE 109 O2 O2 0.0000 109 O2 13.602106520 7.408374694 2.789459136 CORE 110 O2 O2 0.0000 110 H 13.210008020 6.672259277 3.314639793 CORE 111 H H 0.0000 111 H 13.492431382 8.180915584 3.377516941 CORE 112 H H 0.0000 112 C 13.890825934 5.648803008 5.661678555 CORE 113 C C 0.0000 113 C 12.909019429 4.546646290 5.581364297 CORE 114 C C 0.0000 114 H 13.109831612 3.674396041 4.926144122 CORE 115 H H 0.0000 115 H 12.251997223 4.361657017 6.455416262 CORE 116 H H 0.0000 116 H 14.812140047 5.592159707 5.050859653 CORE 117 H H 0.0000 117 H 13.936980549 6.261788428 6.584729974 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.308477315 4.748649281 3.527944332 CORE 1 Si Si 0.0000 1 Si -2.576306523 12.049647992 7.337050111 CORE 2 Si Si 0.0000 2 Si 1.076617336 4.791090459 3.482725056 CORE 3 Si Si 0.0000 3 Si -8.631043969 12.016150729 7.322404621 CORE 4 Si Si 0.0000 4 Si -13.615433764 7.690505482 11.079876567 CORE 5 Si Si 0.0000 5 Si -4.003236644 14.905242924 7.327583082 CORE 6 Si Si 0.0000 6 Si -7.154294683 9.184963125 7.215573506 CORE 7 Si Si 0.0000 7 Si 2.426697189 16.358511597 3.539880969 CORE 8 Si Si 0.0000 8 Si -13.629428409 16.329519085 3.451848732 CORE 9 Si Si 0.0000 9 Si -3.931844519 9.144264113 7.327175640 CORE 10 Si Si 0.0000 10 Si -7.226063039 14.891903090 7.269751269 CORE 11 Si Si 0.0000 11 Si 2.413377066 7.719012218 3.480664718 CORE 12 Si Si 0.0000 12 Si -10.213138943 4.574854496 5.837070170 CORE 13 Si Si 0.0000 13 Si -0.298006453 12.072488870 9.569037476 CORE 14 Si Si 0.0000 14 Si -10.803987765 12.050329089 9.592457510 CORE 15 Si Si 0.0000 15 Si -1.230208369 4.793209426 5.722267604 CORE 16 Si Si 0.0000 16 Si -9.965814966 4.676499034 8.879371899 CORE 17 Si Si 0.0000 17 Si -0.287603998 12.017397748 5.082428234 CORE 18 Si Si 0.0000 18 Si -11.014250759 12.029139275 5.095006843 CORE 19 Si Si 0.0000 19 Si -1.208791675 4.772742223 8.861492200 CORE 20 Si Si 0.0000 20 Ti -9.039384494 7.650226515 5.009854851 CORE 21 Ti Ti 0.0000 21 Si 0.686166170 14.954855147 8.911416083 CORE 22 Si Si 0.0000 22 Si -2.270759666 16.322440582 5.104611563 CORE 23 Si Si 0.0000 23 Si -11.876269493 9.156995356 8.800819928 CORE 24 Si Si 0.0000 24 Si 0.733053041 9.129753658 5.726605011 CORE 25 Si Si 0.0000 25 Si -9.002335635 16.276424692 9.543312074 CORE 26 Si Si 0.0000 26 Si -11.853092883 14.927954069 5.734348321 CORE 27 Si Si 0.0000 27 Si -2.209708798 7.710837474 9.535423846 CORE 28 Si Si 0.0000 28 Si -12.044985020 9.194904828 5.712231555 CORE 29 Si Si 0.0000 29 Si -2.217117954 16.302167114 9.550004599 CORE 30 Si Si 0.0000 30 Si 0.616874396 14.951079206 5.766488433 CORE 31 Si Si 0.0000 31 Si -9.047620011 7.637105209 9.219375322 CORE 32 Si Si 0.0000 32 Si -2.156343630 7.755769663 5.077125091 CORE 33 Si Si 0.0000 33 Si -11.893719499 14.940908597 8.852571141 CORE 34 Si Si 0.0000 34 Si -8.965434381 16.208976390 5.065532453 CORE 35 Si Si 0.0000 35 Si 0.642705793 9.146860496 8.864300252 CORE 36 Si Si 0.0000 36 O -15.225467992 7.765105370 3.358147445 CORE 37 O O 0.0000 37 O -5.615997057 14.985887057 7.398642705 CORE 38 O O 0.0000 38 O -15.223472331 16.118356967 3.618505284 CORE 39 O O 0.0000 39 O -5.542914682 9.093472764 7.286169469 CORE 40 O O 0.0000 40 O -10.590719732 4.338844825 7.409345983 CORE 41 O O 0.0000 41 O -0.748380564 12.003378115 3.523002228 CORE 42 O O 0.0000 42 O -10.434022049 12.092990380 3.571765706 CORE 43 O O 0.0000 43 O -0.792985607 4.749507246 7.287764398 CORE 44 O O 0.0000 44 O -13.141064380 6.133709418 3.488016332 CORE 45 O O 0.0000 45 O -3.549585185 13.343711473 7.265250915 CORE 46 O O 0.0000 46 O -7.634859083 10.740920539 7.276115390 CORE 47 O O 0.0000 47 O 2.113128236 17.959012580 3.512759566 CORE 48 O O 0.0000 48 O -3.460758257 10.699147917 7.410253296 CORE 49 O O 0.0000 49 O -13.319737235 17.919485198 3.264887985 CORE 50 O O 0.0000 50 O 1.910225324 6.172877873 3.490696583 CORE 51 O O 0.0000 51 O -7.716395786 13.346718244 7.153084859 CORE 52 O O 0.0000 52 O -11.613611257 4.546368085 4.995307570 CORE 53 O O 0.0000 53 O -1.652996364 12.181056807 8.674182207 CORE 54 O O 0.0000 54 O 0.108891884 4.730060607 4.798633777 CORE 55 O O 0.0000 55 O -9.389943609 12.062480139 8.771331008 CORE 56 O O 0.0000 56 O -1.623968061 11.986432722 6.013158302 CORE 57 O O 0.0000 57 O -11.159183472 4.791084693 9.976345903 CORE 58 O O 0.0000 58 O -9.756303087 11.941282005 6.135786792 CORE 59 O O 0.0000 59 O 0.164965532 4.712890489 9.736404618 CORE 60 O O 0.0000 60 O -10.556203072 8.576983080 5.409024165 CORE 61 O O 0.0000 61 O -0.772682980 15.624683368 9.211525434 CORE 62 O O 0.0000 62 O -10.440661037 8.382698030 8.812096867 CORE 63 O O 0.0000 63 O -0.855904160 15.616928670 5.515230956 CORE 64 O O 0.0000 64 O -0.705993263 8.439316105 5.376702089 CORE 65 O O 0.0000 65 O -10.506065795 15.738634058 9.198316035 CORE 66 O O 0.0000 66 O -10.299491790 15.388547423 5.519361827 CORE 67 O O 0.0000 67 O -0.800948429 8.458309689 9.173402323 CORE 68 O O 0.0000 68 O -12.454138243 9.096658854 7.285674771 CORE 69 O O 0.0000 69 O -2.554680833 16.089948251 3.519902895 CORE 70 O O 0.0000 70 O -8.869121319 7.729313424 3.223260990 CORE 71 O O 0.0000 71 O 1.015466011 15.118147351 7.330271929 CORE 72 O O 0.0000 72 O -2.515661523 7.930129362 3.506493502 CORE 73 O O 0.0000 73 O -12.267501026 15.158405128 7.286291565 CORE 74 O O 0.0000 74 O 1.037926531 8.922832501 7.305548778 CORE 75 O O 0.0000 75 O -8.659706818 15.948651645 3.491112850 CORE 76 O O 0.0000 76 O -13.182339922 8.395491689 4.873559235 CORE 77 O O 0.0000 77 O -3.386921495 15.606988264 8.666124414 CORE 78 O O 0.0000 78 O 1.729633979 15.690396424 4.851840478 CORE 79 O O 0.0000 79 O -7.823139015 8.359931964 8.450342052 CORE 80 O O 0.0000 80 O -3.319705440 8.460116576 5.970250631 CORE 81 O O 0.0000 81 O -13.121307336 15.532229237 9.732274659 CORE 82 O O 0.0000 82 O -7.674532130 15.702950222 5.920192480 CORE 83 O O 0.0000 83 O 1.782660635 8.480426658 9.798825865 CORE 84 O O 0.0000 84 O -7.662704038 8.525729450 5.810501356 CORE 85 O O 0.0000 85 O 1.841728351 15.688794802 9.779335719 CORE 86 O O 0.0000 86 O -3.479007105 15.677758300 5.982362918 CORE 87 O O 0.0000 87 O -12.922188675 8.441449487 9.813500947 CORE 88 O O 0.0000 88 O 1.924382586 8.440624099 4.863299153 CORE 89 O O 0.0000 89 O -7.902257255 15.559122387 8.593371881 CORE 90 O O 0.0000 90 O -12.852382879 15.761387006 4.767037886 CORE 91 O O 0.0000 91 O -3.392770495 8.350106733 8.636705252 CORE 92 O O 0.0000 92 O -9.438215896 5.986169355 5.623538099 CORE 93 O O 0.0000 93 O 0.650560845 13.373832372 9.316048596 CORE 94 O O 0.0000 94 O -2.197362835 17.931439342 5.392732473 CORE 95 O O 0.0000 95 O -11.666868078 10.712843795 9.247838713 CORE 96 O O 0.0000 96 O 0.658752100 10.726287127 5.387646516 CORE 97 O O 0.0000 97 O -8.938438496 17.894310717 9.313271201 CORE 98 O O 0.0000 98 O -11.936796524 13.341626957 5.384067092 CORE 99 O O 0.0000 99 O -2.057423123 6.118885154 9.203263540 CORE 100 O O 0.0000 100 O -12.018781818 10.761979467 5.256556670 CORE 101 O O 0.0000 101 O -2.150963236 17.897161376 9.199970528 CORE 102 O O 0.0000 102 O 0.572223165 13.366404600 5.387046078 CORE 103 O O 0.0000 103 O -9.113943504 6.061163630 8.789977058 CORE 104 O O 0.0000 104 O -2.077320459 6.156473898 5.427562801 CORE 105 O O 0.0000 105 O -11.696920962 13.353254176 9.177627675 CORE 106 O O 0.0000 106 O -9.209331095 17.798505736 5.334109585 CORE 107 O O 0.0000 107 O 0.553513988 10.745973771 9.171868708 CORE 108 O O 0.0000 108 O2 12.663885675 5.806842481 4.886608199 CORE 109 O2 O2 0.0000 109 O2 13.608740890 7.398407333 2.783449359 CORE 110 O2 O2 0.0000 110 H 13.207771417 6.669527251 3.309370807 CORE 111 H H 0.0000 111 H 13.505323314 8.177097119 3.366386137 CORE 112 H H 0.0000 112 C 13.889815979 5.645843662 5.664592880 CORE 113 C C 0.0000 113 C 12.905538281 4.545248348 5.575048329 CORE 114 C C 0.0000 114 H 13.108537223 3.676648489 4.915855514 CORE 115 H H 0.0000 115 H 12.243225745 4.360180804 6.444419953 CORE 116 H H 0.0000 116 H 14.814131474 5.589983369 5.059081685 CORE 117 H H 0.0000 117 H 13.931952330 6.254394098 6.591134566 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.308490209 4.747844073 3.527104039 CORE 1 Si Si 0.0000 1 Si -2.576950831 12.051186622 7.337157069 CORE 2 Si Si 0.0000 2 Si 1.076722411 4.792178051 3.483019151 CORE 3 Si Si 0.0000 3 Si -8.629012513 12.018418456 7.323086608 CORE 4 Si Si 0.0000 4 Si -13.613707334 7.691096486 11.081314179 CORE 5 Si Si 0.0000 5 Si -4.004683450 14.904129097 7.326696537 CORE 6 Si Si 0.0000 6 Si -7.151885649 9.185622311 7.217199853 CORE 7 Si Si 0.0000 7 Si 2.426473375 16.358330260 3.538737147 CORE 8 Si Si 0.0000 8 Si -13.629629514 16.328224785 3.450557711 CORE 9 Si Si 0.0000 9 Si -3.932308120 9.145606269 7.325169312 CORE 10 Si Si 0.0000 10 Si -7.225822290 14.894130312 7.269378439 CORE 11 Si Si 0.0000 11 Si 2.414706673 7.721322757 3.480499489 CORE 12 Si Si 0.0000 12 Si -10.217299040 4.575131836 5.836734920 CORE 13 Si Si 0.0000 13 Si -0.297497820 12.073625905 9.567420181 CORE 14 Si Si 0.0000 14 Si -10.801790613 12.050708773 9.593615633 CORE 15 Si Si 0.0000 15 Si -1.230931195 4.794191934 5.720548069 CORE 16 Si Si 0.0000 16 Si -9.965164885 4.674236784 8.878865715 CORE 17 Si Si 0.0000 17 Si -0.288553333 12.018238560 5.082664210 CORE 18 Si Si 0.0000 18 Si -11.014427616 12.028060764 5.095105128 CORE 19 Si Si 0.0000 19 Si -1.212182567 4.773255388 8.862733850 CORE 20 Si Si 0.0000 20 Ti -9.038369536 7.647750063 5.007444276 CORE 21 Ti Ti 0.0000 21 Si 0.686112477 14.955187263 8.909938838 CORE 22 Si Si 0.0000 22 Si -2.271209411 16.321384558 5.104108270 CORE 23 Si Si 0.0000 23 Si -11.875455448 9.155531972 8.800955793 CORE 24 Si Si 0.0000 24 Si 0.732591364 9.130425096 5.727099328 CORE 25 Si Si 0.0000 25 Si -9.003500700 16.274185651 9.541360290 CORE 26 Si Si 0.0000 26 Si -11.854204449 14.926526721 5.734577527 CORE 27 Si Si 0.0000 27 Si -2.211088056 7.712821087 9.534861140 CORE 28 Si Si 0.0000 28 Si -12.046666802 9.195889787 5.711789956 CORE 29 Si Si 0.0000 29 Si -2.218395023 16.300147897 9.548844042 CORE 30 Si Si 0.0000 30 Si 0.615727612 14.951315751 5.767441313 CORE 31 Si Si 0.0000 31 Si -9.047085782 7.635256230 9.221426532 CORE 32 Si Si 0.0000 32 Si -2.155564803 7.756726658 5.075269082 CORE 33 Si Si 0.0000 33 Si -11.893965829 14.937878474 8.851472507 CORE 34 Si Si 0.0000 34 Si -8.967501440 16.210549326 5.064891393 CORE 35 Si Si 0.0000 35 Si 0.642568386 9.146255509 8.863322725 CORE 36 Si Si 0.0000 36 O -15.225166623 7.767677104 3.357871303 CORE 37 O O 0.0000 37 O -5.615621018 14.987212348 7.398326853 CORE 38 O O 0.0000 38 O -15.224362777 16.116564782 3.617775980 CORE 39 O O 0.0000 39 O -5.543405611 9.097172595 7.285468236 CORE 40 O O 0.0000 40 O -10.590374870 4.339696880 7.410243711 CORE 41 O O 0.0000 41 O -0.747386582 12.006200089 3.522550359 CORE 42 O O 0.0000 42 O -10.431593000 12.093886256 3.573286008 CORE 43 O O 0.0000 43 O -0.797599876 4.751568554 7.287553678 CORE 44 O O 0.0000 44 O -13.140536502 6.132540959 3.486427793 CORE 45 O O 0.0000 45 O -3.551552941 13.343550460 7.266065496 CORE 46 O O 0.0000 46 O -7.635891939 10.740135080 7.277798563 CORE 47 O O 0.0000 47 O 2.113154602 17.959302172 3.511387985 CORE 48 O O 0.0000 48 O -3.460003870 10.700099290 7.409983544 CORE 49 O O 0.0000 49 O -13.320971774 17.919298238 3.266327499 CORE 50 O O 0.0000 50 O 1.911463904 6.173610863 3.491793087 CORE 51 O O 0.0000 51 O -7.715273059 13.348023066 7.151710235 CORE 52 O O 0.0000 52 O -11.617455166 4.546369671 4.995178247 CORE 53 O O 0.0000 53 O -1.653533480 12.186337359 8.673319396 CORE 54 O O 0.0000 54 O 0.111652709 4.730252323 4.800127682 CORE 55 O O 0.0000 55 O -9.385357438 12.065617940 8.772127408 CORE 56 O O 0.0000 56 O -1.625044601 11.987963135 6.012857893 CORE 57 O O 0.0000 57 O -11.157125074 4.790217790 9.977517643 CORE 58 O O 0.0000 58 O -9.755894525 11.942789499 6.138218591 CORE 59 O O 0.0000 59 O 0.163242181 4.712774306 9.738140508 CORE 60 O O 0.0000 60 O -10.559411333 8.575845036 5.401707087 CORE 61 O O 0.0000 61 O -0.772468403 15.623341355 9.210859042 CORE 62 O O 0.0000 62 O -10.438266629 8.377547354 8.812859034 CORE 63 O O 0.0000 63 O -0.858297029 15.613245415 5.516848250 CORE 64 O O 0.0000 64 O -0.704675973 8.436403318 5.377248515 CORE 65 O O 0.0000 65 O -10.506823453 15.736085099 9.193479594 CORE 66 O O 0.0000 66 O -10.301357743 15.388187920 5.520199686 CORE 67 O O 0.0000 67 O -0.800656682 8.457673134 9.174427471 CORE 68 O O 0.0000 68 O -12.451149755 9.093580298 7.288065568 CORE 69 O O 0.0000 69 O -2.554676406 16.089449934 3.519430487 CORE 70 O O 0.0000 70 O -8.863912971 7.731256676 3.222029838 CORE 71 O O 0.0000 71 O 1.016909353 15.123436264 7.329866540 CORE 72 O O 0.0000 72 O -2.518210080 7.935502168 3.505921819 CORE 73 O O 0.0000 73 O -12.271337237 15.152638799 7.285798921 CORE 74 O O 0.0000 74 O 1.036668899 8.924241542 7.304630587 CORE 75 O O 0.0000 75 O -8.664990219 15.944304880 3.491624131 CORE 76 O O 0.0000 76 O -13.187993012 8.396815827 4.872878845 CORE 77 O O 0.0000 77 O -3.387566188 15.604958957 8.665333187 CORE 78 O O 0.0000 78 O 1.726919726 15.689573487 4.849540360 CORE 79 O O 0.0000 79 O -7.820520023 8.358736117 8.452416769 CORE 80 O O 0.0000 80 O -3.320320111 8.461471274 5.968737784 CORE 81 O O 0.0000 81 O -13.119631328 15.530234669 9.733145153 CORE 82 O O 0.0000 82 O -7.676779125 15.706088167 5.921940923 CORE 83 O O 0.0000 83 O 1.782109278 8.478284483 9.799156246 CORE 84 O O 0.0000 84 O -7.665421948 8.525844912 5.811716153 CORE 85 O O 0.0000 85 O 1.840783058 15.689358130 9.777714012 CORE 86 O O 0.0000 86 O -3.477647861 15.677314470 5.982804212 CORE 87 O O 0.0000 87 O -12.922355910 8.439841090 9.815305759 CORE 88 O O 0.0000 88 O 1.925320951 8.444834933 4.860865757 CORE 89 O O 0.0000 89 O -7.899450435 15.554694755 8.596637888 CORE 90 O O 0.0000 90 O -12.856525848 15.759681742 4.768170144 CORE 91 O O 0.0000 91 O -3.393791996 8.353263273 8.634874119 CORE 92 O O 0.0000 92 O -9.441653360 5.986021315 5.624834825 CORE 93 O O 0.0000 93 O 0.653582434 13.374888540 9.313454079 CORE 94 O O 0.0000 94 O -2.195583290 17.930762714 5.389879919 CORE 95 O O 0.0000 95 O -11.662857896 10.711963631 9.246888876 CORE 96 O O 0.0000 96 O 0.654624142 10.726513150 5.387282282 CORE 97 O O 0.0000 97 O -8.937745499 17.891367227 9.311970215 CORE 98 O O 0.0000 98 O -11.939670314 13.341221615 5.382280461 CORE 99 O O 0.0000 99 O -2.059611229 6.119247829 9.204588337 CORE 100 O O 0.0000 100 O -12.017637921 10.764452460 5.257700796 CORE 101 O O 0.0000 101 O -2.153000273 17.896673582 9.200196919 CORE 102 O O 0.0000 102 O 0.571366782 13.367567293 5.388567826 CORE 103 O O 0.0000 103 O -9.112766891 6.058730710 8.790771175 CORE 104 O O 0.0000 104 O -2.079146383 6.155086911 5.421348617 CORE 105 O O 0.0000 105 O -11.696901140 13.352434986 9.176400707 CORE 106 O O 0.0000 106 O -9.214451110 17.798876195 5.328186986 CORE 107 O O 0.0000 107 O 0.550598437 10.745757117 9.171648099 CORE 108 O O 0.0000 108 O2 12.666534304 5.815675546 4.886866920 CORE 109 O2 O2 0.0000 109 O2 13.619355805 7.382459584 2.773833760 CORE 110 O2 O2 0.0000 110 H 13.204192506 6.665155981 3.300940489 CORE 111 H H 0.0000 111 H 13.525950404 8.170987719 3.348576882 CORE 112 H H 0.0000 112 C 13.888200206 5.641108852 5.669255876 CORE 113 C C 0.0000 113 C 12.899968520 4.543011901 5.564942826 CORE 114 C C 0.0000 114 H 13.106466123 3.680252318 4.899393648 CORE 115 H H 0.0000 115 H 12.229191071 4.357819093 6.426825754 CORE 116 H H 0.0000 116 H 14.817317988 5.586501345 5.072236921 CORE 117 H H 0.0000 117 H 13.923906949 6.242563055 6.601381868 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.308477700 4.748626506 3.527920674 CORE 1 Si Si 0.0000 1 Si -2.576324805 12.049691236 7.337053154 CORE 2 Si Si 0.0000 2 Si 1.076620222 4.791121018 3.482733348 CORE 3 Si Si 0.0000 3 Si -8.630986812 12.016214586 7.322423791 CORE 4 Si Si 0.0000 4 Si -13.615385268 7.690522059 11.079917038 CORE 5 Si Si 0.0000 5 Si -4.003277442 14.905211644 7.327558130 CORE 6 Si Si 0.0000 6 Si -7.154226942 9.184981720 7.215619302 CORE 7 Si Si 0.0000 7 Si 2.426691031 16.358506552 3.539848714 CORE 8 Si Si 0.0000 8 Si -13.629433990 16.329482759 3.451812369 CORE 9 Si Si 0.0000 9 Si -3.931857605 9.144301879 7.327119194 CORE 10 Si Si 0.0000 10 Si -7.226056304 14.891965650 7.269740771 CORE 11 Si Si 0.0000 11 Si 2.413414401 7.719077229 3.480660077 CORE 12 Si Si 0.0000 12 Si -10.213256143 4.574862425 5.837060737 CORE 13 Si Si 0.0000 13 Si -0.297992212 12.072520871 9.568991984 CORE 14 Si Si 0.0000 14 Si -10.803925797 12.050339756 9.592490145 CORE 15 Si Si 0.0000 15 Si -1.230228576 4.793237102 5.722219222 CORE 16 Si Si 0.0000 16 Si -9.965796684 4.676435320 8.879357673 CORE 17 Si Si 0.0000 17 Si -0.287630748 12.017421388 5.082434928 CORE 18 Si Si 0.0000 18 Si -11.014255763 12.029108860 5.095009582 CORE 19 Si Si 0.0000 19 Si -1.208887128 4.772756638 8.861527194 CORE 20 Si Si 0.0000 20 Ti -9.039355819 7.650156748 5.009786995 CORE 21 Ti Ti 0.0000 21 Si 0.686164630 14.954864517 8.911374548 CORE 22 Si Si 0.0000 22 Si -2.270772367 16.322410888 5.104597414 CORE 23 Si Si 0.0000 23 Si -11.876246592 9.156954130 8.800823732 CORE 24 Si Si 0.0000 24 Si 0.733040147 9.129772541 5.726618932 CORE 25 Si Si 0.0000 25 Si -9.002368543 16.276361700 9.543257150 CORE 26 Si Si 0.0000 26 Si -11.853124252 14.927913852 5.734354787 CORE 27 Si Si 0.0000 27 Si -2.209747672 7.710893403 9.535407947 CORE 28 Si Si 0.0000 28 Si -12.045032362 9.194932504 5.712219155 CORE 29 Si Si 0.0000 29 Si -2.217153941 16.302110319 9.549971888 CORE 30 Si Si 0.0000 30 Si 0.616842065 14.951085836 5.766515286 CORE 31 Si Si 0.0000 31 Si -9.047605000 7.637053172 9.219433060 CORE 32 Si Si 0.0000 32 Si -2.156321691 7.755796475 5.077072829 CORE 33 Si Si 0.0000 33 Si -11.893726427 14.940823261 8.852540256 CORE 34 Si Si 0.0000 34 Si -8.965492500 16.209020787 5.065514424 CORE 35 Si Si 0.0000 35 Si 0.642701944 9.146843486 8.864272790 CORE 36 Si Si 0.0000 36 O -15.225459525 7.765177877 3.358139686 CORE 37 O O 0.0000 37 O -5.615986473 14.985924391 7.398633880 CORE 38 O O 0.0000 38 O -15.223497349 16.118306516 3.618484744 CORE 39 O O 0.0000 39 O -5.542928538 9.093576982 7.286149766 CORE 40 O O 0.0000 40 O -10.590710110 4.338868753 7.409371239 CORE 41 O O 0.0000 41 O -0.748352659 12.003457540 3.522989524 CORE 42 O O 0.0000 42 O -10.433953731 12.093015605 3.571808534 CORE 43 O O 0.0000 43 O -0.793115508 4.749565338 7.287758464 CORE 44 O O 0.0000 44 O -13.141049562 6.133676552 3.487971678 CORE 45 O O 0.0000 45 O -3.549640609 13.343707005 7.265273813 CORE 46 O O 0.0000 46 O -7.634888142 10.740898485 7.276162783 CORE 47 O O 0.0000 47 O 2.113129006 17.959020796 3.512720998 CORE 48 O O 0.0000 48 O -3.460737088 10.699174729 7.410245765 CORE 49 O O 0.0000 49 O -13.319771875 17.919480008 3.264928532 CORE 50 O O 0.0000 50 O 1.910260157 6.172898486 3.490727468 CORE 51 O O 0.0000 51 O -7.716364225 13.346755002 7.153046138 CORE 52 O O 0.0000 52 O -11.613719411 4.546368085 4.995303919 CORE 53 O O 0.0000 53 O -1.653011375 12.181205423 8.674157940 CORE 54 O O 0.0000 54 O 0.108969440 4.730065941 4.798675845 CORE 55 O O 0.0000 55 O -9.389814671 12.062568357 8.771353373 CORE 56 O O 0.0000 56 O -1.623998467 11.986475822 6.013149858 CORE 57 O O 0.0000 57 O -11.159125546 4.791060332 9.976378918 CORE 58 O O 0.0000 58 O -9.756291540 11.941324385 6.135855257 CORE 59 O O 0.0000 59 O 0.164917035 4.712887173 9.736453456 CORE 60 O O 0.0000 60 O -10.556293329 8.576951079 5.408818237 CORE 61 O O 0.0000 61 O -0.772677014 15.624645601 9.211506645 CORE 62 O O 0.0000 62 O -10.440593681 8.382553017 8.812118319 CORE 63 O O 0.0000 63 O -0.855971516 15.616825028 5.515276447 CORE 64 O O 0.0000 64 O -0.705956314 8.439234085 5.376717455 CORE 65 O O 0.0000 65 O -10.506087156 15.738562272 9.198179865 CORE 66 O O 0.0000 66 O -10.299544328 15.388537333 5.519385409 CORE 67 O O 0.0000 67 O -0.800940346 8.458291814 9.173431154 CORE 68 O O 0.0000 68 O -12.454054144 9.096572221 7.285742019 CORE 69 O O 0.0000 69 O -2.554680833 16.089934269 3.519889583 CORE 70 O O 0.0000 70 O -8.868974868 7.729368056 3.223226301 CORE 71 O O 0.0000 71 O 1.015506617 15.118296111 7.330260518 CORE 72 O O 0.0000 72 O -2.515733305 7.930280572 3.506477450 CORE 73 O O 0.0000 73 O -12.267609181 15.158242818 7.286277720 CORE 74 O O 0.0000 74 O 1.037891121 8.922872142 7.305522914 CORE 75 O O 0.0000 75 O -8.659855386 15.948529264 3.491127228 CORE 76 O O 0.0000 76 O -13.182498882 8.395529023 4.873540065 CORE 77 O O 0.0000 77 O -3.386939585 15.606931038 8.666102125 CORE 78 O O 0.0000 78 O 1.729557578 15.690373217 4.851775741 CORE 79 O O 0.0000 79 O -7.823065309 8.359898378 8.450400400 CORE 80 O O 0.0000 80 O -3.319722760 8.460154775 5.970208030 CORE 81 O O 0.0000 81 O -13.121260187 15.532173164 9.732299155 CORE 82 O O 0.0000 82 O -7.674595253 15.703038440 5.920241699 CORE 83 O O 0.0000 83 O 1.782645047 8.480366405 9.798835146 CORE 84 O O 0.0000 84 O -7.662780632 8.525732622 5.810535588 CORE 85 O O 0.0000 85 O 1.841701793 15.688810659 9.779290075 CORE 86 O O 0.0000 86 O -3.478968808 15.677745759 5.982375318 CORE 87 O O 0.0000 87 O -12.922193486 8.441404224 9.813551763 CORE 88 O O 0.0000 88 O 1.924408951 8.440742588 4.863230688 CORE 89 O O 0.0000 89 O -7.902178352 15.558997699 8.593463777 CORE 90 O O 0.0000 90 O -12.852499501 15.761339005 4.767069760 CORE 91 O O 0.0000 91 O -3.392799169 8.350195527 8.636653675 CORE 92 O O 0.0000 92 O -9.438312696 5.986165174 5.623574614 CORE 93 O O 0.0000 93 O 0.650645906 13.373862066 9.315975567 CORE 94 O O 0.0000 94 O -2.197312799 17.931420315 5.392652141 CORE 95 O O 0.0000 95 O -11.666755305 10.712819146 9.247811936 CORE 96 O O 0.0000 96 O 0.658635863 10.726293469 5.387636322 CORE 97 O O 0.0000 97 O -8.938418867 17.894227833 9.313234610 CORE 98 O O 0.0000 98 O -11.936877351 13.341615426 5.384016808 CORE 99 O O 0.0000 99 O -2.057484705 6.118895389 9.203300816 CORE 100 O O 0.0000 100 O -12.018749487 10.762049090 5.256588849 CORE 101 O O 0.0000 101 O -2.151020585 17.897147682 9.199976918 CORE 102 O O 0.0000 102 O 0.572199110 13.366437321 5.387088907 CORE 103 O O 0.0000 103 O -9.113910403 6.061095160 8.789999423 CORE 104 O O 0.0000 104 O -2.077371842 6.156434978 5.427387835 CORE 105 O O 0.0000 105 O -11.696920384 13.353231112 9.177593139 CORE 106 O O 0.0000 106 O -9.209475237 17.798516259 5.333942911 CORE 107 O O 0.0000 107 O 0.553432006 10.745967573 9.171862470 CORE 108 O O 0.0000 108 O2 12.663960152 5.807090991 4.886615501 CORE 109 O2 O2 0.0000 109 O2 13.609039566 7.397958458 2.783178694 CORE 110 O2 O2 0.0000 110 H 13.207670576 6.669404149 3.309133537 CORE 111 H H 0.0000 111 H 13.505903922 8.176925295 3.365884898 CORE 112 H H 0.0000 112 C 13.889770562 5.645710470 5.664724181 CORE 113 C C 0.0000 113 C 12.905381438 4.545185500 5.574763895 CORE 114 C C 0.0000 114 H 13.108478912 3.676749824 4.915392158 CORE 115 H H 0.0000 115 H 12.242830654 4.360114352 6.443924724 CORE 116 H H 0.0000 116 H 14.814221154 5.589885349 5.059451928 CORE 117 H H 0.0000 117 H 13.931725822 6.254060974 6.591423032 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.309145486 4.748179793 3.527045540 CORE 1 Si Si 0.0000 1 Si -2.576589803 12.051092061 7.336813679 CORE 2 Si Si 0.0000 2 Si 1.077152142 4.791432088 3.482962021 CORE 3 Si Si 0.0000 3 Si -8.629498438 12.018253695 7.322506938 CORE 4 Si Si 0.0000 4 Si -13.615774585 7.689640454 11.080419114 CORE 5 Si Si 0.0000 5 Si -4.004840871 14.904836140 7.326859560 CORE 6 Si Si 0.0000 6 Si -7.154470386 9.184187900 7.217325220 CORE 7 Si Si 0.0000 7 Si 2.425830991 16.358645654 3.538806982 CORE 8 Si Si 0.0000 8 Si -13.629560041 16.328348463 3.451235134 CORE 9 Si Si 0.0000 9 Si -3.931264103 9.145509114 7.325593719 CORE 10 Si Si 0.0000 10 Si -7.226235278 14.893119982 7.269463868 CORE 11 Si Si 0.0000 11 Si 2.414551754 7.719758181 3.480835119 CORE 12 Si Si 0.0000 12 Si -10.216454589 4.574085758 5.836738876 CORE 13 Si Si 0.0000 13 Si -0.298032818 12.073646230 9.568544224 CORE 14 Si Si 0.0000 14 Si -10.801719793 12.051171054 9.592883286 CORE 15 Si Si 0.0000 15 Si -1.230174114 4.793446548 5.721319973 CORE 16 Si Si 0.0000 16 Si -9.964276748 4.676640010 8.879374181 CORE 17 Si Si 0.0000 17 Si -0.288270630 12.018783725 5.082749867 CORE 18 Si Si 0.0000 18 Si -11.013368973 12.030105351 5.095777226 CORE 19 Si Si 0.0000 19 Si -1.210570642 4.772618689 8.862392286 CORE 20 Si Si 0.0000 20 Ti -9.038188444 7.650719355 5.009868012 CORE 21 Ti Ti 0.0000 21 Si 0.686608794 14.955277499 8.910153057 CORE 22 Si Si 0.0000 22 Si -2.270440783 16.321947165 5.104341127 CORE 23 Si Si 0.0000 23 Si -11.874736279 9.155094340 8.802398122 CORE 24 Si Si 0.0000 24 Si 0.732988186 9.130064728 5.726351082 CORE 25 Si Si 0.0000 25 Si -9.003209338 16.274011665 9.542098418 CORE 26 Si Si 0.0000 26 Si -11.854422683 14.926788205 5.734382402 CORE 27 Si Si 0.0000 27 Si -2.211014156 7.711762468 9.534621741 CORE 28 Si Si 0.0000 28 Si -12.045270224 9.194745689 5.711379699 CORE 29 Si Si 0.0000 29 Si -2.217547877 16.300655872 9.549030571 CORE 30 Si Si 0.0000 30 Si 0.616807617 14.951703508 5.767106367 CORE 31 Si Si 0.0000 31 Si -9.045650908 7.635287366 9.220015545 CORE 32 Si Si 0.0000 32 Si -2.156049958 7.756084914 5.076040149 CORE 33 Si Si 0.0000 33 Si -11.894161162 14.939251046 8.851115044 CORE 34 Si Si 0.0000 34 Si -8.967135408 16.209512186 5.065405260 CORE 35 Si Si 0.0000 35 Si 0.642744667 9.146472163 8.864181960 CORE 36 Si Si 0.0000 36 O -15.224219020 7.766742597 3.358046421 CORE 37 O O 0.0000 37 O -5.616883846 14.986651038 7.398434647 CORE 38 O O 0.0000 38 O -15.223688640 16.117304547 3.617627943 CORE 39 O O 0.0000 39 O -5.541936481 9.096051993 7.285927027 CORE 40 O O 0.0000 40 O -10.590762455 4.339557490 7.409447159 CORE 41 O O 0.0000 41 O -0.747580760 12.005069685 3.522638070 CORE 42 O O 0.0000 42 O -10.432776156 12.092428349 3.572679256 CORE 43 O O 0.0000 43 O -0.796184823 4.751177915 7.288054309 CORE 44 O O 0.0000 44 O -13.140748769 6.133703364 3.486811349 CORE 45 O O 0.0000 45 O -3.550968484 13.343799403 7.265347071 CORE 46 O O 0.0000 46 O -7.635287467 10.740732571 7.277474648 CORE 47 O O 0.0000 47 O 2.113439229 17.959179070 3.511916230 CORE 48 O O 0.0000 48 O -3.460793667 10.700227437 7.410010321 CORE 49 O O 0.0000 49 O -13.320223160 17.919211462 3.265794918 CORE 50 O O 0.0000 50 O 1.911308408 6.173718108 3.491541593 CORE 51 O O 0.0000 51 O -7.715749169 13.348718722 7.151925519 CORE 52 O O 0.0000 52 O -11.616077255 4.546328156 4.995653090 CORE 53 O O 0.0000 53 O -1.652820084 12.184056371 8.674081563 CORE 54 O O 0.0000 54 O 0.109798881 4.730410309 4.800095428 CORE 55 O O 0.0000 55 O -9.387429885 12.064628223 8.772501683 CORE 56 O O 0.0000 56 O -1.624518455 11.987187046 6.012893875 CORE 57 O O 0.0000 57 O -11.157874072 4.791151001 9.976494092 CORE 58 O O 0.0000 58 O -9.756508619 11.942097736 6.136740432 CORE 59 O O 0.0000 59 O 0.163126714 4.713108872 9.736851542 CORE 60 O O 0.0000 60 O -10.557926615 8.574888618 5.405050839 CORE 61 O O 0.0000 61 O -0.773197195 15.624041047 9.210703246 CORE 62 O O 0.0000 62 O -10.441300919 8.379467109 8.812625797 CORE 63 O O 0.0000 63 O -0.857441415 15.614681844 5.516007272 CORE 64 O O 0.0000 64 O -0.704871306 8.437088451 5.377179594 CORE 65 O O 0.0000 65 O -10.506610993 15.736771673 9.195444995 CORE 66 O O 0.0000 66 O -10.300546392 15.389108733 5.519863827 CORE 67 O O 0.0000 67 O -0.800588941 8.457688125 9.173781923 CORE 68 O O 0.0000 68 O -12.451880663 9.094853696 7.285777241 CORE 69 O O 0.0000 69 O -2.554995866 16.089556026 3.519323530 CORE 70 O O 0.0000 70 O -8.864145253 7.730341051 3.222308718 CORE 71 O O 0.0000 71 O 1.016797927 15.121638025 7.330002862 CORE 72 O O 0.0000 72 O -2.517504959 7.933765480 3.505630843 CORE 73 O O 0.0000 73 O -12.269729931 15.154256566 7.286347554 CORE 74 O O 0.0000 74 O 1.037260669 8.923505670 7.305538660 CORE 75 O O 0.0000 75 O -8.663516856 15.946481938 3.491207636 CORE 76 O O 0.0000 76 O -13.185498339 8.397661684 4.874312806 CORE 77 O O 0.0000 77 O -3.387935491 15.605571151 8.665498492 CORE 78 O O 0.0000 78 O 1.727879645 15.690071660 4.850122997 CORE 79 O O 0.0000 79 O -7.821341766 8.359570875 8.451542623 CORE 80 O O 0.0000 80 O -3.319662139 8.460774321 5.968936941 CORE 81 O O 0.0000 81 O -13.119786824 15.530771907 9.732295275 CORE 82 O O 0.0000 82 O -7.676401547 15.705824522 5.921687375 CORE 83 O O 0.0000 83 O 1.781660495 8.479633703 9.797693531 CORE 84 O O 0.0000 84 O -7.665790481 8.525007272 5.810278236 CORE 85 O O 0.0000 85 O 1.841176417 15.688899742 9.778448793 CORE 86 O O 0.0000 86 O -3.478531764 15.677675704 5.982964725 CORE 87 O O 0.0000 87 O -12.922876860 8.440733651 9.813968335 CORE 88 O O 0.0000 88 O 1.924568681 8.443584022 4.862719864 CORE 89 O O 0.0000 89 O -7.900224259 15.556744820 8.595466985 CORE 90 O O 0.0000 90 O -12.854549816 15.760711098 4.768048200 CORE 91 O O 0.0000 91 O -3.392956782 8.352055173 8.635971764 CORE 92 O O 0.0000 92 O -9.440463084 5.985628946 5.624715392 CORE 93 O O 0.0000 93 O 0.651916047 13.373390127 9.314387408 CORE 94 O O 0.0000 94 O -2.196146578 17.931369575 5.390822681 CORE 95 O O 0.0000 95 O -11.664355893 10.712374739 9.246956580 CORE 96 O O 0.0000 96 O 0.655927961 10.725888992 5.387211231 CORE 97 O O 0.0000 97 O -8.938083434 17.892075712 9.312207940 CORE 98 O O 0.0000 98 O -11.938318384 13.340465562 5.382722212 CORE 99 O O 0.0000 99 O -2.058971540 6.119463906 9.204417783 CORE 100 O O 0.0000 100 O -12.018548189 10.762668636 5.258107097 CORE 101 O O 0.0000 101 O -2.152960436 17.896662626 9.200220730 CORE 102 O O 0.0000 102 O 0.571714147 13.366520062 5.388410509 CORE 103 O O 0.0000 103 O -9.113012067 6.059154504 8.791053783 CORE 104 O O 0.0000 104 O -2.078451270 6.156015077 5.422932896 CORE 105 O O 0.0000 105 O -11.696307637 13.352375021 9.177393677 CORE 106 O O 0.0000 106 O -9.213504278 17.799698844 5.329426963 CORE 107 O O 0.0000 107 O 0.551991743 10.745389542 9.171887954 CORE 108 O O 0.0000 108 O2 12.666800649 5.811731817 4.886487928 CORE 109 O2 O2 0.0000 109 O2 13.615938934 7.388701311 2.776056589 CORE 110 O2 O2 0.0000 110 H 13.205705513 6.665749868 3.305693478 CORE 111 H H 0.0000 111 H 13.519228471 8.171471478 3.353677673 CORE 112 H H 0.0000 112 C 13.887161384 5.643155169 5.668104828 CORE 113 C C 0.0000 113 C 12.902243227 4.545589257 5.568223362 CORE 114 C C 0.0000 114 H 13.107243219 3.679475796 4.904819344 CORE 115 H H 0.0000 115 H 12.233850564 4.358180614 6.432149132 CORE 116 H H 0.0000 116 H 14.816233942 5.588549247 5.067346013 CORE 117 H H 0.0000 117 H 13.927013983 6.246070883 6.598280253 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.310213944 4.747465110 3.525645355 CORE 1 Si Si 0.0000 1 Si -2.577013761 12.053333121 7.336430656 CORE 2 Si Si 0.0000 2 Si 1.078003521 4.791929829 3.483327852 CORE 3 Si Si 0.0000 3 Si -8.627117116 12.021516328 7.322639912 CORE 4 Si Si 0.0000 4 Si -13.616397724 7.688229827 11.081222512 CORE 5 Si Si 0.0000 5 Si -4.007342279 14.904235478 7.325741907 CORE 6 Si Si 0.0000 6 Si -7.154860088 9.182917961 7.220054765 CORE 7 Si Si 0.0000 7 Si 2.424455198 16.358868362 3.537140164 CORE 8 Si Si 0.0000 8 Si -13.629761532 16.326533648 3.450311466 CORE 9 Si Si 0.0000 9 Si -3.930314576 9.147440545 7.323153019 CORE 10 Si Si 0.0000 10 Si -7.226521637 14.894966943 7.269020748 CORE 11 Si Si 0.0000 11 Si 2.416371327 7.720847935 3.481115293 CORE 12 Si Si 0.0000 12 Si -10.221572103 4.572843352 5.836223943 CORE 13 Si Si 0.0000 13 Si -0.298098057 12.075446631 9.567827852 CORE 14 Si Si 0.0000 14 Si -10.798190148 12.052501102 9.593512403 CORE 15 Si Si 0.0000 15 Si -1.230086936 4.793781691 5.719881296 CORE 16 Si Si 0.0000 16 Si -9.961844813 4.676967368 8.879400578 CORE 17 Si Si 0.0000 17 Si -0.289294248 12.020963234 5.083253693 CORE 18 Si Si 0.0000 18 Si -11.011950264 12.031699622 5.097005487 CORE 19 Si Si 0.0000 19 Si -1.213264496 4.772397855 8.863776419 CORE 20 Si Si 0.0000 20 Ti -9.036320760 7.651619556 5.009997639 CORE 21 Ti Ti 0.0000 21 Si 0.687319496 14.955938415 8.908198687 CORE 22 Si Si 0.0000 22 Si -2.269910018 16.321205239 5.103931098 CORE 23 Si Si 0.0000 23 Si -11.872319932 9.152118705 8.804917175 CORE 24 Si Si 0.0000 24 Si 0.732905050 9.130532054 5.725922492 CORE 25 Si Si 0.0000 25 Si -9.004554917 16.270251724 9.540244388 CORE 26 Si Si 0.0000 26 Si -11.856500133 14.924987227 5.734426600 CORE 27 Si Si 0.0000 27 Si -2.213040609 7.713153202 9.533363736 CORE 28 Si Si 0.0000 28 Si -12.045651074 9.194446583 5.710036569 CORE 29 Si Si 0.0000 29 Si -2.218178137 16.298328756 9.547524494 CORE 30 Si Si 0.0000 30 Si 0.616752578 14.952691638 5.768052172 CORE 31 Si Si 0.0000 31 Si -9.042524244 7.632462077 9.220947505 CORE 32 Si Si 0.0000 32 Si -2.155615224 7.756546186 5.074387786 CORE 33 Si Si 0.0000 33 Si -11.894856660 14.936735385 8.848834704 CORE 34 Si Si 0.0000 34 Si -8.969764215 16.210298365 5.065230598 CORE 35 Si Si 0.0000 35 Si 0.642812985 9.145878275 8.864036738 CORE 36 Si Si 0.0000 36 O -15.222234521 7.769246149 3.357897244 CORE 37 O O 0.0000 37 O -5.618319683 14.987813731 7.398115981 CORE 38 O O 0.0000 38 O -15.223994629 16.115701195 3.616257123 CORE 39 O O 0.0000 39 O -5.540348997 9.100012011 7.285570629 CORE 40 O O 0.0000 40 O -10.590846361 4.340659497 7.409568494 CORE 41 O O 0.0000 41 O -0.746345836 12.007648915 3.522075669 CORE 42 O O 0.0000 42 O -10.430892113 12.091488940 3.574072366 CORE 43 O O 0.0000 43 O -0.801095458 4.753758297 7.288527706 CORE 44 O O 0.0000 44 O -13.140267655 6.133746320 3.484954884 CORE 45 O O 0.0000 45 O -3.553093083 13.343947298 7.265464222 CORE 46 O O 0.0000 46 O -7.635926386 10.740467052 7.279573631 CORE 47 O O 0.0000 47 O 2.113935546 17.959432481 3.510628709 CORE 48 O O 0.0000 48 O -3.460884501 10.701911656 7.409633764 CORE 49 O O 0.0000 49 O -13.320945409 17.918781902 3.267181181 CORE 50 O O 0.0000 50 O 1.912985764 6.175029561 3.492844177 CORE 51 O O 0.0000 51 O -7.714765002 13.351860847 7.150132574 CORE 52 O O 0.0000 52 O -11.619849766 4.546264155 4.996211688 CORE 53 O O 0.0000 53 O -1.652514095 12.188618060 8.673959467 CORE 54 O O 0.0000 54 O 0.111125985 4.730961096 4.802366790 CORE 55 O O 0.0000 55 O -9.383614073 12.067923866 8.774338902 CORE 56 O O 0.0000 56 O -1.625350397 11.988325089 6.012484226 CORE 57 O O 0.0000 57 O -11.155871868 4.791296013 9.976678414 CORE 58 O O 0.0000 58 O -9.756855983 11.943334953 6.138156668 CORE 59 O O 0.0000 59 O 0.160262353 4.713463619 9.737488342 CORE 60 O O 0.0000 60 O -10.560539834 8.571588796 5.399023033 CORE 61 O O 0.0000 61 O -0.774029330 15.623073530 9.209417703 CORE 62 O O 0.0000 62 O -10.442432692 8.374529484 8.813437639 CORE 63 O O 0.0000 63 O -0.859793101 15.611252721 5.517176501 CORE 64 O O 0.0000 64 O -0.703135639 8.433655292 5.377919091 CORE 65 O O 0.0000 65 O -10.507448902 15.733906599 9.191069095 CORE 66 O O 0.0000 66 O -10.302149849 15.390023060 5.520629265 CORE 67 O O 0.0000 67 O -0.800026615 8.456722193 9.174343183 CORE 68 O O 0.0000 68 O -12.448402979 9.092103940 7.285833610 CORE 69 O O 0.0000 69 O -2.555500074 16.088950895 3.518417890 CORE 70 O O 0.0000 70 O -8.856417792 7.731897987 3.220840602 CORE 71 O O 0.0000 71 O 1.018863831 15.126984885 7.329590551 CORE 72 O O 0.0000 72 O -2.520339491 7.939341390 3.504276378 CORE 73 O O 0.0000 73 O -12.273123325 15.147878475 7.286459228 CORE 74 O O 0.0000 74 O 1.036252061 8.924519314 7.305563764 CORE 75 O O 0.0000 75 O -8.669374900 15.943206332 3.491336198 CORE 76 O O 0.0000 76 O -13.190297548 8.401074086 4.875549207 CORE 77 O O 0.0000 77 O -3.389528748 15.603395246 8.664532604 CORE 78 O O 0.0000 78 O 1.725194836 15.689589199 4.847478652 CORE 79 O O 0.0000 79 O -7.818584405 8.359046899 8.453370181 CORE 80 O O 0.0000 80 O -3.319565339 8.461765623 5.966903227 CORE 81 O O 0.0000 81 O -13.117429557 15.528529982 9.732289037 CORE 82 O O 0.0000 82 O -7.679291503 15.710282136 5.924000501 CORE 83 O O 0.0000 83 O 1.780085135 8.478461641 9.795866810 CORE 84 O O 0.0000 84 O -7.670606432 8.523846453 5.809866610 CORE 85 O O 0.0000 85 O 1.840335622 15.689042303 9.777102848 CORE 86 O O 0.0000 86 O -3.477832417 15.677563413 5.983907868 CORE 87 O O 0.0000 87 O -12.923970144 8.439660617 9.814634879 CORE 88 O O 0.0000 88 O 1.924824056 8.448130143 4.861902544 CORE 89 O O 0.0000 89 O -7.897097595 15.553139981 8.598672134 CORE 90 O O 0.0000 90 O -12.857830437 15.759706535 4.769613613 CORE 91 O O 0.0000 91 O -3.393208886 8.355030520 8.634880661 CORE 92 O O 0.0000 92 O -9.443903819 5.984771125 5.626540668 CORE 93 O O 0.0000 93 O 0.653948080 13.372635228 9.311846293 CORE 94 O O 0.0000 94 O -2.194280626 17.931288420 5.387895576 CORE 95 O O 0.0000 95 O -11.660517180 10.711663660 9.245587890 CORE 96 O O 0.0000 96 O 0.651595433 10.725241626 5.386531146 CORE 97 O O 0.0000 97 O -8.937546703 17.888632318 9.310565314 CORE 98 O O 0.0000 98 O -11.940624075 13.338625664 5.380650767 CORE 99 O O 0.0000 99 O -2.061350360 6.120373620 9.206205023 CORE 100 O O 0.0000 100 O -12.018226035 10.763659937 5.260536234 CORE 101 O O 0.0000 101 O -2.156064199 17.895886393 9.200610828 CORE 102 O O 0.0000 102 O 0.570938206 13.366652533 5.390525011 CORE 103 O O 0.0000 103 O -9.111574883 6.056049424 8.792740683 CORE 104 O O 0.0000 104 O -2.080178276 6.155343205 5.415805010 CORE 105 O O 0.0000 105 O -11.695327512 13.351005332 9.177074555 CORE 106 O O 0.0000 106 O -9.219950629 17.801591067 5.322201476 CORE 107 O O 0.0000 107 O 0.549687592 10.744464548 9.171928729 CORE 108 O O 0.0000 108 O2 12.671345252 5.819156994 4.886283903 CORE 109 O2 O2 0.0000 109 O2 13.626977999 7.373890020 2.764661130 CORE 110 O2 O2 0.0000 110 H 13.202561337 6.659902961 3.300189428 CORE 111 H H 0.0000 111 H 13.540548173 8.162745515 3.334146143 CORE 112 H H 0.0000 112 C 13.882986662 5.639066572 5.673513939 CORE 113 C C 0.0000 113 C 12.897222129 4.546235181 5.557758418 CORE 114 C C 0.0000 114 H 13.105266225 3.683837408 4.887902947 CORE 115 H H 0.0000 115 H 12.219482190 4.355086490 6.413308109 CORE 116 H H 0.0000 116 H 14.819454135 5.586411397 5.079976504 CORE 117 H H 0.0000 117 H 13.919475119 6.233286737 6.609251914 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.309235359 4.748119683 3.526927704 CORE 1 Si Si 0.0000 1 Si -2.576625405 12.051280606 7.336781501 CORE 2 Si Si 0.0000 2 Si 1.077223924 4.791474035 3.482992754 CORE 3 Si Si 0.0000 3 Si -8.629297910 12.018528440 7.322518121 CORE 4 Si Si 0.0000 4 Si -13.615827123 7.689521676 11.080486742 CORE 5 Si Si 0.0000 5 Si -4.005051406 14.904785688 7.326765534 CORE 6 Si Si 0.0000 6 Si -7.154503294 9.184081087 7.217555034 CORE 7 Si Si 0.0000 7 Si 2.425715139 16.358664394 3.538666705 CORE 8 Si Si 0.0000 8 Si -13.629576977 16.328195667 3.451157388 CORE 9 Si Si 0.0000 9 Si -3.931184045 9.145671712 7.325388248 CORE 10 Si Si 0.0000 10 Si -7.226259334 14.893275518 7.269426517 CORE 11 Si Si 0.0000 11 Si 2.414704941 7.719850003 3.480858702 CORE 12 Si Si 0.0000 12 Si -10.216885282 4.573981251 5.836695515 CORE 13 Si Si 0.0000 13 Si -0.298038399 12.073797729 9.568483898 CORE 14 Si Si 0.0000 14 Si -10.801422657 12.051283056 9.592936233 CORE 15 Si Si 0.0000 15 Si -1.230166801 4.793474801 5.721198866 CORE 16 Si Si 0.0000 16 Si -9.964071986 4.676667542 8.879376387 CORE 17 Si Si 0.0000 17 Si -0.288356846 12.018967225 5.082792239 CORE 18 Si Si 0.0000 18 Si -11.013249657 12.030239552 5.095880608 CORE 19 Si Si 0.0000 19 Si -1.210797535 4.772600094 8.862508829 CORE 20 Si Si 0.0000 20 Ti -9.038031216 7.650795177 5.009878890 CORE 21 Ti Ti 0.0000 21 Si 0.686668645 14.955333140 8.909988513 CORE 22 Si Si 0.0000 22 Si -2.270396136 16.321884749 5.104306666 CORE 23 Si Si 0.0000 23 Si -11.874532864 9.154843812 8.802610211 CORE 24 Si Si 0.0000 24 Si 0.732981258 9.130104080 5.726314948 CORE 25 Si Si 0.0000 25 Si -9.003322688 16.273695261 9.541942318 CORE 26 Si Si 0.0000 26 Si -11.854597423 14.926636706 5.734386129 CORE 27 Si Si 0.0000 27 Si -2.211184856 7.711879660 9.534515849 CORE 28 Si Si 0.0000 28 Si -12.045302363 9.194720463 5.711266580 CORE 29 Si Si 0.0000 29 Si -2.217600992 16.300459976 9.548903835 CORE 30 Si Si 0.0000 30 Si 0.616802998 14.951786681 5.767186015 CORE 31 Si Si 0.0000 31 Si -9.045387642 7.635049523 9.220093975 CORE 32 Si Si 0.0000 32 Si -2.156013394 7.756123690 5.075901013 CORE 33 Si Si 0.0000 33 Si -11.894219665 14.939039293 8.850923037 CORE 34 Si Si 0.0000 34 Si -8.967356721 16.209578349 5.065390578 CORE 35 Si Si 0.0000 35 Si 0.642750440 9.146422144 8.864169789 CORE 36 Si Si 0.0000 36 O -15.224051978 7.766953340 3.358033869 CORE 37 O O 0.0000 37 O -5.617004702 14.986748915 7.398407870 CORE 38 O O 0.0000 38 O -15.223714428 16.117169481 3.617512542 CORE 39 O O 0.0000 39 O -5.541802731 9.096385262 7.285897054 CORE 40 O O 0.0000 40 O -10.590769575 4.339650321 7.409457353 CORE 41 O O 0.0000 41 O -0.747476839 12.005286771 3.522590677 CORE 42 O O 0.0000 42 O -10.432617581 12.092349356 3.572796484 CORE 43 O O 0.0000 43 O -0.796598196 4.751395145 7.288094171 CORE 44 O O 0.0000 44 O -13.140708356 6.133706967 3.486655097 CORE 45 O O 0.0000 45 O -3.551147266 13.343811800 7.265356884 CORE 46 O O 0.0000 46 O -7.635341159 10.740710228 7.277651364 CORE 47 O O 0.0000 47 O 2.113480989 17.959200404 3.511807903 CORE 48 O O 0.0000 48 O -3.460801365 10.700369134 7.409978675 CORE 49 O O 0.0000 49 O -13.320283973 17.919175281 3.265911613 CORE 50 O O 0.0000 50 O 1.911449663 6.173828525 3.491651213 CORE 51 O O 0.0000 51 O -7.715666225 13.348983232 7.151774592 CORE 52 O O 0.0000 52 O -11.616394790 4.546322679 4.995700103 CORE 53 O O 0.0000 53 O -1.652794488 12.184440379 8.674071293 CORE 54 O O 0.0000 54 O 0.109910691 4.730456580 4.800286673 CORE 55 O O 0.0000 55 O -9.387108501 12.064905707 8.772656337 CORE 56 O O 0.0000 56 O -1.624588505 11.987282904 6.012859338 CORE 57 O O 0.0000 57 O -11.157705682 4.791163109 9.976509610 CORE 58 O O 0.0000 58 O -9.756537870 11.942201810 6.136859638 CORE 59 O O 0.0000 59 O 0.162885579 4.713138711 9.736905096 CORE 60 O O 0.0000 60 O -10.558146581 8.574610846 5.404543438 CORE 61 O O 0.0000 61 O -0.773267245 15.623959604 9.210594996 CORE 62 O O 0.0000 62 O -10.441396180 8.379051388 8.812694109 CORE 63 O O 0.0000 63 O -0.857639442 15.614393117 5.516105634 CORE 64 O O 0.0000 64 O -0.704725239 8.436799435 5.377241897 CORE 65 O O 0.0000 65 O -10.506681428 15.736530515 9.195076653 CORE 66 O O 0.0000 66 O -10.300681489 15.389185708 5.519928260 CORE 67 O O 0.0000 67 O -0.800541599 8.457606826 9.173829164 CORE 68 O O 0.0000 68 O -12.451587954 9.094622195 7.285782033 CORE 69 O O 0.0000 69 O -2.555038396 16.089504998 3.519247305 CORE 70 O O 0.0000 70 O -8.863494595 7.730472081 3.222185177 CORE 71 O O 0.0000 71 O 1.016971706 15.122088053 7.329968173 CORE 72 O O 0.0000 72 O -2.517743592 7.934234824 3.505516887 CORE 73 O O 0.0000 73 O -12.270015713 15.153719616 7.286356911 CORE 74 O O 0.0000 74 O 1.037175800 8.923591005 7.305540790 CORE 75 O O 0.0000 75 O -8.664009902 15.946206184 3.491218438 CORE 76 O O 0.0000 76 O -13.185902475 8.397948970 4.874416873 CORE 77 O O 0.0000 77 O -3.388069626 15.605387940 8.665417171 CORE 78 O O 0.0000 78 O 1.727653521 15.690031011 4.849900410 CORE 79 O O 0.0000 79 O -7.821109676 8.359526766 8.451696441 CORE 80 O O 0.0000 80 O -3.319654057 8.460857782 5.968765778 CORE 81 O O 0.0000 81 O -13.119588412 15.530583218 9.732294743 CORE 82 O O 0.0000 82 O -7.676644798 15.706199737 5.921882119 CORE 83 O O 0.0000 83 O 1.781527900 8.479535106 9.797539713 CORE 84 O O 0.0000 84 O -7.666195964 8.524909540 5.810243624 CORE 85 O O 0.0000 85 O 1.841105597 15.688911706 9.778335522 CORE 86 O O 0.0000 86 O -3.478472876 15.677666190 5.983044144 CORE 87 O O 0.0000 87 O -12.922968849 8.440643270 9.814024476 CORE 88 O O 0.0000 88 O 1.924590235 8.443966589 4.862651018 CORE 89 O O 0.0000 89 O -7.899960994 15.556441245 8.595736813 CORE 90 O O 0.0000 90 O -12.854825976 15.760626628 4.768179957 CORE 91 O O 0.0000 91 O -3.392977951 8.352305557 8.635879869 CORE 92 O O 0.0000 92 O -9.440752714 5.985556728 5.624869058 CORE 93 O O 0.0000 93 O 0.652087131 13.373326703 9.314173493 CORE 94 O O 0.0000 94 O -2.195989543 17.931362656 5.390576283 CORE 95 O O 0.0000 95 O -11.664032777 10.712314918 9.246841331 CORE 96 O O 0.0000 96 O 0.655563276 10.725834504 5.387154025 CORE 97 O O 0.0000 97 O -8.938038209 17.891785831 9.312069717 CORE 98 O O 0.0000 98 O -11.938512562 13.340310603 5.382547779 CORE 99 O O 0.0000 99 O -2.059171683 6.119540448 9.204568254 CORE 100 O O 0.0000 100 O -12.018521054 10.762752097 5.258311579 CORE 101 O O 0.0000 101 O -2.153221778 17.896597183 9.200253593 CORE 102 O O 0.0000 102 O 0.571648715 13.366531161 5.388588517 CORE 103 O O 0.0000 103 O -9.112891211 6.058893164 8.791195810 CORE 104 O O 0.0000 104 O -2.078596566 6.155958427 5.422332915 CORE 105 O O 0.0000 105 O -11.696225271 13.352259703 9.177366824 CORE 106 O O 0.0000 106 O -9.214046975 17.799858127 5.328818766 CORE 107 O O 0.0000 107 O 0.551797758 10.745311702 9.171891377 CORE 108 O O 0.0000 108 O2 12.667183231 5.812356840 4.886470812 CORE 109 O2 O2 0.0000 109 O2 13.616868253 7.387454580 2.775097319 CORE 110 O2 O2 0.0000 110 H 13.205440901 6.665257749 3.305230198 CORE 111 H H 0.0000 111 H 13.521023219 8.170736903 3.352033525 CORE 112 H H 0.0000 112 C 13.886809979 5.642810945 5.668560196 CORE 113 C C 0.0000 113 C 12.901820616 4.545643600 5.567342370 CORE 114 C C 0.0000 114 H 13.107076946 3.679842939 4.903395349 CORE 115 H H 0.0000 115 H 12.232641044 4.357920140 6.430563103 CORE 116 H H 0.0000 116 H 14.816504906 5.588369351 5.068409198 CORE 117 H H 0.0000 117 H 13.926379298 6.244994678 6.599203846 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.309368338 4.748001050 3.525741510 CORE 1 Si Si 0.0000 1 Si -2.576419874 12.052661538 7.336694778 CORE 2 Si Si 0.0000 2 Si 1.077224694 4.792222160 3.482979518 CORE 3 Si Si 0.0000 3 Si -8.628418626 12.020059574 7.322478639 CORE 4 Si Si 0.0000 4 Si -13.616116561 7.688923176 11.081171924 CORE 5 Si Si 0.0000 5 Si -4.006517649 14.905321340 7.326104315 CORE 6 Si Si 0.0000 6 Si -7.155655273 9.183020018 7.217265427 CORE 7 Si Si 0.0000 7 Si 2.425202079 16.358515057 3.537444909 CORE 8 Si Si 0.0000 8 Si -13.629665886 16.326981369 3.450997484 CORE 9 Si Si 0.0000 9 Si -3.928944556 9.147205008 7.323817510 CORE 10 Si Si 0.0000 10 Si -7.226943478 14.894963051 7.269209102 CORE 11 Si Si 0.0000 11 Si 2.415300945 7.721043832 3.480759276 CORE 12 Si Si 0.0000 12 Si -10.219724240 4.574077830 5.836237560 CORE 13 Si Si 0.0000 13 Si -0.298042248 12.074134313 9.568748554 CORE 14 Si Si 0.0000 14 Si -10.799128128 12.050870218 9.593021205 CORE 15 Si Si 0.0000 15 Si -1.230510509 4.794085553 5.721198258 CORE 16 Si Si 0.0000 16 Si -9.962531267 4.675808567 8.879797066 CORE 17 Si Si 0.0000 17 Si -0.289104112 12.020159180 5.082499513 CORE 18 Si Si 0.0000 18 Si -11.012252596 12.031197556 5.096918917 CORE 19 Si Si 0.0000 19 Si -1.213204453 4.772495731 8.863204661 CORE 20 Si Si 0.0000 20 Ti -9.040611912 7.649501598 5.009488107 CORE 21 Ti Ti 0.0000 21 Si 0.686634390 14.955004484 8.909069333 CORE 22 Si Si 0.0000 22 Si -2.270357262 16.321911273 5.103556442 CORE 23 Si Si 0.0000 23 Si -11.873572368 9.153374661 8.804401026 CORE 24 Si Si 0.0000 24 Si 0.732646596 9.130415150 5.726204567 CORE 25 Si Si 0.0000 25 Si -9.004117873 16.270670328 9.541787283 CORE 26 Si Si 0.0000 26 Si -11.856327702 14.925095626 5.733573678 CORE 27 Si Si 0.0000 27 Si -2.211938473 7.712469800 9.534042528 CORE 28 Si Si 0.0000 28 Si -12.044781028 9.193849236 5.710791128 CORE 29 Si Si 0.0000 29 Si -2.218581695 16.299597974 9.547923797 CORE 30 Si Si 0.0000 30 Si 0.617000640 14.952385614 5.767154369 CORE 31 Si Si 0.0000 31 Si -9.043237832 7.633350890 9.219576533 CORE 32 Si Si 0.0000 32 Si -2.156200451 7.756169096 5.073861290 CORE 33 Si Si 0.0000 33 Si -11.894593779 14.937146638 8.849688995 CORE 34 Si Si 0.0000 34 Si -8.969850431 16.210259446 5.065043537 CORE 35 Si Si 0.0000 35 Si 0.641650613 9.146588778 8.864399907 CORE 36 Si Si 0.0000 36 O -15.224321786 7.768169944 3.357888039 CORE 37 O O 0.0000 37 O -5.618969380 14.987499490 7.397841360 CORE 38 O O 0.0000 38 O -15.224530397 16.116445572 3.616031645 CORE 39 O O 0.0000 39 O -5.541730372 9.098756055 7.285488927 CORE 40 O O 0.0000 40 O -10.591228751 4.340103664 7.409817022 CORE 41 O O 0.0000 41 O -0.746616222 12.007135461 3.522536438 CORE 42 O O 0.0000 42 O -10.431621482 12.090624056 3.573249722 CORE 43 O O 0.0000 43 O -0.800007370 4.753388127 7.288628654 CORE 44 O O 0.0000 44 O -13.140526110 6.134141572 3.485582860 CORE 45 O O 0.0000 45 O -3.552922769 13.343991840 7.264647435 CORE 46 O O 0.0000 46 O -7.635553234 10.740818915 7.278998982 CORE 47 O O 0.0000 47 O 2.114084884 17.959615404 3.511005799 CORE 48 O O 0.0000 48 O -3.461082143 10.702565364 7.409590022 CORE 49 O O 0.0000 49 O -13.320751616 17.917583749 3.266194373 CORE 50 O O 0.0000 50 O 1.912508884 6.174058729 3.492621742 CORE 51 O O 0.0000 51 O -7.715370244 13.351011819 7.149962401 CORE 52 O O 0.0000 52 O -11.620165185 4.546281597 4.995898575 CORE 53 O O 0.0000 53 O -1.652597809 12.186886417 8.673765027 CORE 54 O O 0.0000 54 O 0.111174482 4.731061135 4.801194442 CORE 55 O O 0.0000 55 O -9.384527228 12.067464035 8.774134268 CORE 56 O O 0.0000 56 O -1.625451239 11.987992109 6.012770029 CORE 57 O O 0.0000 57 O -11.157126229 4.791865251 9.976523684 CORE 58 O O 0.0000 58 O -9.755984397 11.943174517 6.138053362 CORE 59 O O 0.0000 59 O 0.161560976 4.713856276 9.737939374 CORE 60 O O 0.0000 60 O -10.558807246 8.570644198 5.401590621 CORE 61 O O 0.0000 61 O -0.773715066 15.623111008 9.208970931 CORE 62 O O 0.0000 62 O -10.441278788 8.374265262 8.813933781 CORE 63 O O 0.0000 63 O -0.858226209 15.612316529 5.516681196 CORE 64 O O 0.0000 64 O -0.703770132 8.433924992 5.377711338 CORE 65 O O 0.0000 65 O -10.506611186 15.734743231 9.192575096 CORE 66 O O 0.0000 66 O -10.303006810 15.389952140 5.521050477 CORE 67 O O 0.0000 67 O -0.800782734 8.456306184 9.173764274 CORE 68 O O 0.0000 68 O -12.448471297 9.093128972 7.284789063 CORE 69 O O 0.0000 69 O -2.555520473 16.088835001 3.518719669 CORE 70 O O 0.0000 70 O -8.856506510 7.730850612 3.222564777 CORE 71 O O 0.0000 71 O 1.018989305 15.125565033 7.329226089 CORE 72 O O 0.0000 72 O -2.519554505 7.937963197 3.504568115 CORE 73 O O 0.0000 73 O -12.272225566 15.149480674 7.285504674 CORE 74 O O 0.0000 74 O 1.036947752 8.923913319 7.305482976 CORE 75 O O 0.0000 75 O -8.668098216 15.944831594 3.490396326 CORE 76 O O 0.0000 76 O -13.188489137 8.400759700 4.875778260 CORE 77 O O 0.0000 77 O -3.389474479 15.604157930 8.665169937 CORE 78 O O 0.0000 78 O 1.726152253 15.690323197 4.847670658 CORE 79 O O 0.0000 79 O -7.819659021 8.358798101 8.453101266 CORE 80 O O 0.0000 80 O -3.318984346 8.461232854 5.967195040 CORE 81 O O 0.0000 81 O -13.118418920 15.529740820 9.732331790 CORE 82 O O 0.0000 82 O -7.679187967 15.710452230 5.923687312 CORE 83 O O 0.0000 83 O 1.781697445 8.478248158 9.796777926 CORE 84 O O 0.0000 84 O -7.667385085 8.525844192 5.813022007 CORE 85 O O 0.0000 85 O 1.841044784 15.689104143 9.777892097 CORE 86 O O 0.0000 86 O -3.478600082 15.678154417 5.983539754 CORE 87 O O 0.0000 87 O -12.923838704 8.440681614 9.813372081 CORE 88 O O 0.0000 88 O 1.925378684 8.446199865 4.862031791 CORE 89 O O 0.0000 89 O -7.898252846 15.555048060 8.598203377 CORE 90 O O 0.0000 90 O -12.856206966 15.760371487 4.769420999 CORE 91 O O 0.0000 91 O -3.392828228 8.354268557 8.635131471 CORE 92 O O 0.0000 92 O -9.442536108 5.985789382 5.625774088 CORE 93 O O 0.0000 93 O 0.653000093 13.373012029 9.312248183 CORE 94 O O 0.0000 94 O -2.194781754 17.931083731 5.388695095 CORE 95 O O 0.0000 95 O -11.660963462 10.712261872 9.245759432 CORE 96 O O 0.0000 96 O 0.652598459 10.725458135 5.386445412 CORE 97 O O 0.0000 97 O -8.938303592 17.889537997 9.310664816 CORE 98 O O 0.0000 98 O -11.939702453 13.339644354 5.381305292 CORE 99 O O 0.0000 99 O -2.060768405 6.119845320 9.205955810 CORE 100 O O 0.0000 100 O -12.018220069 10.762568597 5.260610100 CORE 101 O O 0.0000 101 O -2.155693741 17.895602134 9.200505620 CORE 102 O O 0.0000 102 O 0.571885231 13.366969946 5.390825876 CORE 103 O O 0.0000 103 O -9.110066495 6.058601554 8.792923789 CORE 104 O O 0.0000 104 O -2.079225671 6.155370738 5.417068949 CORE 105 O O 0.0000 105 O -11.694843511 13.350813616 9.178012525 CORE 106 O O 0.0000 106 O -9.218904494 17.801067379 5.322397057 CORE 107 O O 0.0000 107 O 0.550480275 10.745075733 9.172348495 CORE 108 O O 0.0000 108 O2 12.670505035 5.816730272 4.884753711 CORE 109 O2 O2 0.0000 109 O2 13.622998416 7.376289210 2.765475559 CORE 110 O2 O2 0.0000 110 H 13.205071020 6.662253573 3.302608599 CORE 111 H H 0.0000 111 H 13.535777639 8.163743880 3.338265147 CORE 112 H H 0.0000 112 C 13.885745177 5.641573727 5.672653183 CORE 113 C C 0.0000 113 C 12.898079474 4.546058457 5.559308769 CORE 114 C C 0.0000 114 H 13.105472719 3.684404917 4.892306080 CORE 115 H H 0.0000 115 H 12.222768391 4.354968145 6.416947250 CORE 116 H H 0.0000 116 H 14.816943489 5.588192194 5.077259586 CORE 117 H H 0.0000 117 H 13.921656682 6.235778325 6.607606245 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.309581183 4.747811352 3.523843586 CORE 1 Si Si 0.0000 1 Si -2.576090792 12.054871029 7.336556099 CORE 2 Si Si 0.0000 2 Si 1.077225849 4.793419160 3.482958294 CORE 3 Si Si 0.0000 3 Si -8.627011656 12.022509359 7.322415500 CORE 4 Si Si 0.0000 4 Si -13.616579585 7.687965605 11.082268124 CORE 5 Si Si 0.0000 5 Si -4.008863561 14.906178585 7.325046532 CORE 6 Si Si 0.0000 6 Si -7.157498710 9.181322250 7.216802072 CORE 7 Si Si 0.0000 7 Si 2.424380914 16.358276060 3.535490083 CORE 8 Si Si 0.0000 8 Si -13.629807911 16.325038551 3.450741654 CORE 9 Si Si 0.0000 9 Si -3.925361219 9.149658397 7.321304237 CORE 10 Si Si 0.0000 10 Si -7.228038108 14.897663221 7.268861148 CORE 11 Si Si 0.0000 11 Si 2.416254898 7.722953929 3.480600209 CORE 12 Si Si 0.0000 12 Si -10.224266341 4.574232212 5.835504757 CORE 13 Si Si 0.0000 13 Si -0.298048406 12.074672992 9.569171971 CORE 14 Si Si 0.0000 14 Si -10.795456843 12.050209735 9.593157146 CORE 15 Si Si 0.0000 15 Si -1.231060519 4.795062729 5.721197193 CORE 16 Si Si 0.0000 16 Si -9.960065846 4.674434266 8.880470077 CORE 17 Si Si 0.0000 17 Si -0.290299969 12.022066250 5.082031061 CORE 18 Si Si 0.0000 18 Si -11.010657222 12.032730276 5.098580181 CORE 19 Si Si 0.0000 19 Si -1.217055674 4.772328952 8.864318053 CORE 20 Si Si 0.0000 20 Ti -9.044740832 7.647431786 5.008862794 CORE 21 Ti Ti 0.0000 21 Si 0.686579543 14.954478634 8.907598554 CORE 22 Si Si 0.0000 22 Si -2.270294910 16.321953796 5.102356100 CORE 23 Si Si 0.0000 23 Si -11.872035690 9.151024194 8.807266284 CORE 24 Si Si 0.0000 24 Si 0.732111404 9.130913035 5.726027928 CORE 25 Si Si 0.0000 25 Si -9.005390324 16.265830290 9.541539212 CORE 26 Si Si 0.0000 26 Si -11.859096224 14.922630129 5.732273757 CORE 27 Si Si 0.0000 27 Si -2.213144529 7.713414109 9.533285305 CORE 28 Si Si 0.0000 28 Si -12.043946968 9.192455475 5.710030331 CORE 29 Si Si 0.0000 29 Si -2.220151089 16.298218916 9.546355721 CORE 30 Si Si 0.0000 30 Si 0.617316828 14.953344194 5.767103857 CORE 31 Si Si 0.0000 31 Si -9.039798059 7.630632990 9.218748563 CORE 32 Si Si 0.0000 32 Si -2.156499896 7.756241746 5.070597718 CORE 33 Si Si 0.0000 33 Si -11.895192478 14.934118677 8.847714541 CORE 34 Si Si 0.0000 34 Si -8.973840213 16.211349344 5.064488362 CORE 35 Si Si 0.0000 35 Si 0.639890891 9.146855307 8.864768172 CORE 36 Si Si 0.0000 36 O -15.224753249 7.770116655 3.357654802 CORE 37 O O 0.0000 37 O -5.622112594 14.988700382 7.396935037 CORE 38 O O 0.0000 38 O -15.225835948 16.115287348 3.613662149 CORE 39 O O 0.0000 39 O -5.541614519 9.102549294 7.284835924 CORE 40 O O 0.0000 40 O -10.591963700 4.340829014 7.410392508 CORE 41 O O 0.0000 41 O -0.745239082 12.010093222 3.522449639 CORE 42 O O 0.0000 42 O -10.430027840 12.087863777 3.573974842 CORE 43 O O 0.0000 43 O -0.805462241 4.756576956 7.289483781 CORE 44 O O 0.0000 44 O -13.140234747 6.134836795 3.483867432 CORE 45 O O 0.0000 45 O -3.555763651 13.344279702 7.263512362 CORE 46 O O 0.0000 46 O -7.635892516 10.740993046 7.281155324 CORE 47 O O 0.0000 47 O 2.115051345 17.960279347 3.509722537 CORE 48 O O 0.0000 48 O -3.461531119 10.706079245 7.408968285 CORE 49 O O 0.0000 49 O -13.321499652 17.915037097 3.266646622 CORE 50 O O 0.0000 50 O 1.914203753 6.174427169 3.494174603 CORE 51 O O 0.0000 51 O -7.714896443 13.354257442 7.147062834 CORE 52 O O 0.0000 52 O -11.626197970 4.546215721 4.996216176 CORE 53 O O 0.0000 53 O -1.652283353 12.190800019 8.673274970 CORE 54 O O 0.0000 54 O 0.113196700 4.732028508 4.802646888 CORE 55 O O 0.0000 55 O -9.380396960 12.071557389 8.776499047 CORE 56 O O 0.0000 56 O -1.626831844 11.989126837 6.012627014 CORE 57 O O 0.0000 57 O -11.156199218 4.792988592 9.976546201 CORE 58 O O 0.0000 58 O -9.755098570 11.944730732 6.139963382 CORE 59 O O 0.0000 59 O 0.159441765 4.715004410 9.739594172 CORE 60 O O 0.0000 60 O -10.559864350 8.564297387 5.396866235 CORE 61 O O 0.0000 61 O -0.774431733 15.621753428 9.206372458 CORE 62 O O 0.0000 62 O -10.441090961 8.366607431 8.815917287 CORE 63 O O 0.0000 63 O -0.859165343 15.608993931 5.517601973 CORE 64 O O 0.0000 64 O -0.702242114 8.429326113 5.378462475 CORE 65 O O 0.0000 65 O -10.506498990 15.731883490 9.188572635 CORE 66 O O 0.0000 66 O -10.306727553 15.391178546 5.522846008 CORE 67 O O 0.0000 67 O -0.801168779 8.454224983 9.173660436 CORE 68 O O 0.0000 68 O -12.443484646 9.090740017 7.283200448 CORE 69 O O 0.0000 69 O -2.556291987 16.087762977 3.517875496 CORE 70 O O 0.0000 70 O -8.845325612 7.731456320 3.223172137 CORE 71 O O 0.0000 71 O 1.022217580 15.131128114 7.328038830 CORE 72 O O 0.0000 72 O -2.522452159 7.943928737 3.503050095 CORE 73 O O 0.0000 73 O -12.275761177 15.142698394 7.284140928 CORE 74 O O 0.0000 74 O 1.036583068 8.924429078 7.305390472 CORE 75 O O 0.0000 75 O -8.674639635 15.942632193 3.489080886 CORE 76 O O 0.0000 76 O -13.192627872 8.405256811 4.877956511 CORE 77 O O 0.0000 77 O -3.391722436 15.602189741 8.664774361 CORE 78 O O 0.0000 78 O 1.723750147 15.690790667 4.844103102 CORE 79 O O 0.0000 79 O -7.817337743 8.357632236 8.455348818 CORE 80 O O 0.0000 80 O -3.317912809 8.461833228 5.964681768 CORE 81 O O 0.0000 81 O -13.116547964 15.528393186 9.732391050 CORE 82 O O 0.0000 82 O -7.683257037 15.717256276 5.926575620 CORE 83 O O 0.0000 83 O 1.781968793 8.476189157 9.795559022 CORE 84 O O 0.0000 84 O -7.669287603 8.527339577 5.817467437 CORE 85 O O 0.0000 85 O 1.840947792 15.689412042 9.777182648 CORE 86 O O 0.0000 86 O -3.478803305 15.678935408 5.984332731 CORE 87 O O 0.0000 87 O -12.925230278 8.440743020 9.812328219 CORE 88 O O 0.0000 88 O 1.926640550 8.449772847 4.861040951 CORE 89 O O 0.0000 89 O -7.895519926 15.552818821 8.602149925 CORE 90 O O 0.0000 90 O -12.858416626 15.759963406 4.771406710 CORE 91 O O 0.0000 91 O -3.392588634 8.357409385 8.633934095 CORE 92 O O 0.0000 92 O -9.445389691 5.986161715 5.627222122 CORE 93 O O 0.0000 93 O 0.654461140 13.372508810 9.309167716 CORE 94 O O 0.0000 94 O -2.192849600 17.930637306 5.385685147 CORE 95 O O 0.0000 95 O -11.656052635 10.712177113 9.244028334 CORE 96 O O 0.0000 96 O 0.647854867 10.724855887 5.385311709 CORE 97 O O 0.0000 97 O -8.938728127 17.885941375 9.308417112 CORE 98 O O 0.0000 98 O -11.941606317 13.338578096 5.379317298 CORE 99 O O 0.0000 99 O -2.063323120 6.120332971 9.208175901 CORE 100 O O 0.0000 100 O -12.017738570 10.762274825 5.264287657 CORE 101 O O 0.0000 101 O -2.159648691 17.894009882 9.200909031 CORE 102 O O 0.0000 102 O 0.572263579 13.367672088 5.394405756 CORE 103 O O 0.0000 103 O -9.105547102 6.058135093 8.795688632 CORE 104 O O 0.0000 104 O -2.080232354 6.154430464 5.408646543 CORE 105 O O 0.0000 105 O -11.692632504 13.348499762 9.179045661 CORE 106 O O 0.0000 106 O -9.226676603 17.803002126 5.312122370 CORE 107 O O 0.0000 107 O 0.548372226 10.744698211 9.173079777 CORE 108 O O 0.0000 108 O2 12.675819997 5.823727620 4.882006289 CORE 109 O2 O2 0.0000 109 O2 13.632806406 7.358424589 2.750080834 CORE 110 O2 O2 0.0000 110 H 13.204479250 6.657446834 3.298413980 CORE 111 H H 0.0000 111 H 13.559384750 8.152555014 3.316235863 CORE 112 H H 0.0000 112 C 13.884041456 5.639594295 5.679201932 CORE 113 C C 0.0000 113 C 12.892093838 4.546722255 5.546454930 CORE 114 C C 0.0000 114 H 13.102906265 3.691704109 4.874563312 CORE 115 H H 0.0000 115 H 12.206972263 4.350245011 6.395161854 CORE 116 H H 0.0000 116 H 14.817645338 5.587908944 5.091420193 CORE 117 H H 0.0000 117 H 13.914100690 6.221032045 6.621050099 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.309389123 4.747982599 3.525557264 CORE 1 Si Si 0.0000 1 Si -2.576387928 12.052876029 7.336681314 CORE 2 Si Si 0.0000 2 Si 1.077224694 4.792338343 3.482977464 CORE 3 Si Si 0.0000 3 Si -8.628281989 12.020297273 7.322472554 CORE 4 Si Si 0.0000 4 Si -13.616161401 7.688830201 11.081278273 CORE 5 Si Si 0.0000 5 Si -4.006745312 14.905404513 7.326001694 CORE 6 Si Si 0.0000 6 Si -7.155834248 9.182855257 7.217220469 CORE 7 Si Si 0.0000 7 Si 2.425122407 16.358491849 3.537255185 CORE 8 Si Si 0.0000 8 Si -13.629679550 16.326792825 3.450972685 CORE 9 Si Si 0.0000 9 Si -3.928596807 9.147443140 7.323573546 CORE 10 Si Si 0.0000 10 Si -7.227049708 14.895225111 7.269175326 CORE 11 Si Si 0.0000 11 Si 2.415393704 7.721229205 3.480743833 CORE 12 Si Si 0.0000 12 Si -10.220165133 4.574092821 5.836166433 CORE 13 Si Si 0.0000 13 Si -0.298042826 12.074186638 9.568789633 CORE 14 Si Si 0.0000 14 Si -10.798771719 12.050806072 9.593034442 CORE 15 Si Si 0.0000 15 Si -1.230563817 4.794180402 5.721198182 CORE 16 Si Si 0.0000 16 Si -9.962291864 4.675675231 8.879862336 CORE 17 Si Si 0.0000 17 Si -0.289220157 12.020344265 5.082454022 CORE 18 Si Si 0.0000 18 Si -11.012097677 12.031346316 5.097080190 CORE 19 Si Si 0.0000 19 Si -1.213578375 4.772479586 8.863312760 CORE 20 Si Si 0.0000 20 Ti -9.041012584 7.649300657 5.009427402 CORE 21 Ti Ti 0.0000 21 Si 0.686629001 14.954953455 8.908926546 CORE 22 Si Si 0.0000 22 Si -2.270351104 16.321915453 5.103439900 CORE 23 Si Si 0.0000 23 Si -11.873423223 9.153146620 8.804679146 CORE 24 Si Si 0.0000 24 Si 0.732594635 9.130463584 5.726187451 CORE 25 Si Si 0.0000 25 Si -9.004241423 16.270200407 9.541763168 CORE 26 Si Si 0.0000 26 Si -11.856596548 14.924856341 5.733447475 CORE 27 Si Si 0.0000 27 Si -2.212055672 7.712561477 9.533969042 CORE 28 Si Si 0.0000 28 Si -12.044700200 9.193714026 5.710717262 CORE 29 Si Si 0.0000 29 Si -2.218734112 16.299464205 9.547771577 CORE 30 Si Si 0.0000 30 Si 0.617031239 14.952478733 5.767149500 CORE 31 Si Si 0.0000 31 Si -9.042903939 7.633087100 9.219496124 CORE 32 Si Si 0.0000 32 Si -2.156229510 7.756176159 5.073544526 CORE 33 Si Si 0.0000 33 Si -11.894651898 14.936852721 8.849497369 CORE 34 Si Si 0.0000 34 Si -8.970237631 16.210365250 5.064989678 CORE 35 Si Si 0.0000 35 Si 0.641479914 9.146614725 8.864435661 CORE 36 Si Si 0.0000 36 O -15.224363739 7.768358922 3.357865446 CORE 37 O O 0.0000 37 O -5.619274406 14.987616105 7.397753421 CORE 38 O O 0.0000 38 O -15.224657027 16.116333137 3.615801679 CORE 39 O O 0.0000 39 O -5.541719210 9.099124207 7.285425559 CORE 40 O O 0.0000 40 O -10.591300148 4.340174008 7.409872859 CORE 41 O O 0.0000 41 O -0.746482473 12.007422459 3.522527994 CORE 42 O O 0.0000 42 O -10.431466756 12.090356086 3.573320088 CORE 43 O O 0.0000 43 O -0.800536788 4.753697756 7.288711649 CORE 44 O O 0.0000 44 O -13.140497820 6.134209033 3.485416338 CORE 45 O O 0.0000 45 O -3.553198544 13.344019660 7.264537282 CORE 46 O O 0.0000 46 O -7.635586143 10.740835781 7.279208333 CORE 47 O O 0.0000 47 O 2.114178797 17.959679838 3.510881268 CORE 48 O O 0.0000 48 O -3.461125636 10.702906417 7.409529697 CORE 49 O O 0.0000 49 O -13.320824168 17.917336536 3.266238267 CORE 50 O O 0.0000 50 O 1.912673425 6.174094477 3.492772517 CORE 51 O O 0.0000 51 O -7.715324249 13.351326781 7.149680934 CORE 52 O O 0.0000 52 O -11.620750797 4.546275110 4.995929460 CORE 53 O O 0.0000 53 O -1.652567210 12.187266245 8.673717482 CORE 54 O O 0.0000 54 O 0.111370776 4.731155119 4.801335404 CORE 55 O O 0.0000 55 O -9.384126363 12.067861306 8.774363853 CORE 56 O O 0.0000 56 O -1.625585373 11.988102237 6.012756108 CORE 57 O O 0.0000 57 O -11.157036164 4.791974226 9.976525890 CORE 58 O O 0.0000 58 O -9.755898374 11.943325583 6.138238750 CORE 59 O O 0.0000 59 O 0.161355252 4.713967702 9.738099962 CORE 60 O O 0.0000 60 O -10.558909820 8.570028112 5.401132058 CORE 61 O O 0.0000 61 O -0.773784731 15.622979257 9.208718752 CORE 62 O O 0.0000 62 O -10.441260698 8.373521894 8.814126320 CORE 63 O O 0.0000 63 O -0.858317428 15.611994071 5.516770580 CORE 64 O O 0.0000 64 O -0.703621756 8.433478712 5.377784215 CORE 65 O O 0.0000 65 O -10.506600409 15.734465603 9.192186596 CORE 66 O O 0.0000 66 O -10.303368030 15.390071206 5.521224758 CORE 67 O O 0.0000 67 O -0.800820260 8.456104089 9.173754233 CORE 68 O O 0.0000 68 O -12.447987296 9.092897183 7.284634865 CORE 69 O O 0.0000 69 O -2.555595334 16.088730927 3.518637739 CORE 70 O O 0.0000 70 O -8.855421309 7.730909425 3.222623733 CORE 71 O O 0.0000 71 O 1.019302799 15.126105009 7.329110839 CORE 72 O O 0.0000 72 O -2.519835668 7.938542237 3.504420763 CORE 73 O O 0.0000 73 O -12.272568696 15.148822352 7.285372309 CORE 74 O O 0.0000 74 O 1.036912342 8.923963338 7.305473999 CORE 75 O O 0.0000 75 O -8.668733287 15.944618112 3.490268601 CORE 76 O O 0.0000 76 O -13.188890771 8.401196178 4.875989741 CORE 77 O O 0.0000 77 O -3.389692712 15.603966790 8.665131520 CORE 78 O O 0.0000 78 O 1.725919009 15.690368604 4.847324378 CORE 79 O O 0.0000 79 O -7.819433668 8.358684945 8.453319365 CORE 80 O O 0.0000 80 O -3.318880425 8.461291234 5.966951077 CORE 81 O O 0.0000 81 O -13.118237444 15.529610079 9.732337495 CORE 82 O O 0.0000 82 O -7.679582866 15.711112713 5.923967638 CORE 83 O O 0.0000 83 O 1.781723810 8.478048370 9.796659634 CORE 84 O O 0.0000 84 O -7.667569641 8.525989348 5.813453489 CORE 85 O O 0.0000 85 O 1.841035354 15.689133981 9.777823252 CORE 86 O O 0.0000 86 O -3.478619712 15.678230239 5.983616739 CORE 87 O O 0.0000 87 O -12.923973800 8.440687668 9.813270753 CORE 88 O O 0.0000 88 O 1.925501272 8.446546683 4.861935560 CORE 89 O O 0.0000 89 O -7.897987656 15.554831695 8.598586477 CORE 90 O O 0.0000 90 O -12.856421542 15.760331847 4.769613765 CORE 91 O O 0.0000 91 O -3.392804942 8.354573428 8.635015309 CORE 92 O O 0.0000 92 O -9.442813229 5.985825563 5.625914670 CORE 93 O O 0.0000 93 O 0.653141926 13.372963163 9.311949143 CORE 94 O O 0.0000 94 O -2.194594312 17.931040342 5.388402901 CORE 95 O O 0.0000 95 O -11.660486774 10.712253656 9.245591389 CORE 96 O O 0.0000 96 O 0.652137937 10.725399611 5.386335412 CORE 97 O O 0.0000 97 O -8.938344775 17.889188872 9.310446641 CORE 98 O O 0.0000 98 O -11.939887201 13.339540856 5.381112373 CORE 99 O O 0.0000 99 O -2.061016467 6.119892600 9.206171323 CORE 100 O O 0.0000 100 O -12.018173305 10.762540056 5.260967030 CORE 101 O O 0.0000 101 O -2.156077670 17.895447464 9.200544797 CORE 102 O O 0.0000 102 O 0.571921988 13.367038128 5.391173374 CORE 103 O O 0.0000 103 O -9.109627911 6.058556292 8.793192172 CORE 104 O O 0.0000 104 O -2.079323433 6.155279492 5.416251401 CORE 105 O O 0.0000 105 O -11.694628742 13.350589034 9.178112788 CORE 106 O O 0.0000 106 O -9.219658881 17.801255204 5.321399751 CORE 107 O O 0.0000 107 O 0.550275706 10.745038975 9.172419470 CORE 108 O O 0.0000 108 O2 12.671020981 5.817409495 4.884487002 CORE 109 O2 O2 0.0000 109 O2 13.623950444 7.374555117 2.763981273 CORE 110 O2 O2 0.0000 110 H 13.205013479 6.661786968 3.302201385 CORE 111 H H 0.0000 111 H 13.538069089 8.162657873 3.336126910 CORE 112 H H 0.0000 112 C 13.885579866 5.641381579 5.673288842 CORE 113 C C 0.0000 113 C 12.897498481 4.546122890 5.558061109 CORE 114 C C 0.0000 114 H 13.105223695 3.685113401 4.890583882 CORE 115 H H 0.0000 115 H 12.221235177 4.354509756 6.414832596 CORE 116 H H 0.0000 116 H 14.817011615 5.588164806 5.078634134 CORE 117 H H 0.0000 117 H 13.920923272 6.234346941 6.608911187 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.310129846 4.747135733 3.524159894 CORE 1 Si Si 0.0000 1 Si -2.576550352 12.054950166 7.336836881 CORE 2 Si Si 0.0000 2 Si 1.077438501 4.793171803 3.483135009 CORE 3 Si Si 0.0000 3 Si -8.626689887 12.020588163 7.323388310 CORE 4 Si Si 0.0000 4 Si -13.616495679 7.690432544 11.082428789 CORE 5 Si Si 0.0000 5 Si -4.008528898 14.905937138 7.325378891 CORE 6 Si Si 0.0000 6 Si -7.155404709 9.183559562 7.217053871 CORE 7 Si Si 0.0000 7 Si 2.425115478 16.359089196 3.536026392 CORE 8 Si Si 0.0000 8 Si -13.630560566 16.325255348 3.451235514 CORE 9 Si Si 0.0000 9 Si -3.928564091 9.149424878 7.321926279 CORE 10 Si Si 0.0000 10 Si -7.228935097 14.897360223 7.269187954 CORE 11 Si Si 0.0000 11 Si 2.414416850 7.721868355 3.480720403 CORE 12 Si Si 0.0000 12 Si -10.223088959 4.575343444 5.835510995 CORE 13 Si Si 0.0000 13 Si -0.298142127 12.074560557 9.568714549 CORE 14 Si Si 0.0000 14 Si -10.796117509 12.049375121 9.593292478 CORE 15 Si Si 0.0000 15 Si -1.230738557 4.795141866 5.720613643 CORE 16 Si Si 0.0000 16 Si -9.960688407 4.674583026 8.880291611 CORE 17 Si Si 0.0000 17 Si -0.289858691 12.021630204 5.082804259 CORE 18 Si Si 0.0000 18 Si -11.011704896 12.030308743 5.097562184 CORE 19 Si Si 0.0000 19 Si -1.216188514 4.772357638 8.864862578 CORE 20 Si Si 0.0000 20 Ti -9.041065891 7.650703499 5.008567178 CORE 21 Ti Ti 0.0000 21 Si 0.686793735 14.954814209 8.907786376 CORE 22 Si Si 0.0000 22 Si -2.270470805 16.321457352 5.102670354 CORE 23 Si Si 0.0000 23 Si -11.872067828 9.152616734 8.804120548 CORE 24 Si Si 0.0000 24 Si 0.732130456 9.130153811 5.726142340 CORE 25 Si Si 0.0000 25 Si -9.005074521 16.268038773 9.541393762 CORE 26 Si Si 0.0000 26 Si -11.858513499 14.923482760 5.732475424 CORE 27 Si Si 0.0000 27 Si -2.213096995 7.712846889 9.533994146 CORE 28 Si Si 0.0000 28 Si -12.043407543 9.193029181 5.710739323 CORE 29 Si Si 0.0000 29 Si -2.220101246 16.298333369 9.547071941 CORE 30 Si Si 0.0000 30 Si 0.617724235 14.953382249 5.766739471 CORE 31 Si Si 0.0000 31 Si -9.040232217 7.632902447 9.220472587 CORE 32 Si Si 0.0000 32 Si -2.156319959 7.756057238 5.070726052 CORE 33 Si Si 0.0000 33 Si -11.894759860 14.934232842 8.848698915 CORE 34 Si Si 0.0000 34 Si -8.973996671 16.211040725 5.063922994 CORE 35 Si Si 0.0000 35 Si 0.640479967 9.146193670 8.864752273 CORE 36 Si Si 0.0000 36 O -15.224721111 7.769147985 3.357660811 CORE 37 O O 0.0000 37 O -5.620140411 14.988730365 7.396626716 CORE 38 O O 0.0000 38 O -15.224996116 16.115712583 3.613951528 CORE 39 O O 0.0000 39 O -5.540970981 9.101277914 7.284773164 CORE 40 O O 0.0000 40 O -10.591807627 4.340456249 7.410359949 CORE 41 O O 0.0000 41 O -0.745917067 12.009718439 3.522549674 CORE 42 O O 0.0000 42 O -10.430658292 12.087841722 3.574148134 CORE 43 O O 0.0000 43 O -0.804259841 4.755941554 7.289468338 CORE 44 O O 0.0000 44 O -13.140293443 6.134479742 3.484604800 CORE 45 O O 0.0000 45 O -3.555269066 13.344512644 7.263201987 CORE 46 O O 0.0000 46 O -7.636181954 10.741634501 7.280563482 CORE 47 O O 0.0000 47 O 2.114706675 17.960470054 3.509955622 CORE 48 O O 0.0000 48 O -3.461411418 10.705457826 7.408976424 CORE 49 O O 0.0000 49 O -13.320360759 17.916087499 3.265686363 CORE 50 O O 0.0000 50 O 1.913874286 6.174371961 3.493775452 CORE 51 O O 0.0000 51 O -7.715746860 13.352687821 7.147197634 CORE 52 O O 0.0000 52 O -11.625260567 4.546575802 4.996699691 CORE 53 O O 0.0000 53 O -1.652048377 12.189290219 8.673517488 CORE 54 O O 0.0000 54 O 0.112355136 4.731959894 4.802590138 CORE 55 O O 0.0000 55 O -9.380825729 12.070953124 8.775606036 CORE 56 O O 0.0000 56 O -1.626171563 11.989014691 6.012098008 CORE 57 O O 0.0000 57 O -11.156755001 4.793119189 9.976323918 CORE 58 O O 0.0000 58 O -9.755293517 11.944738372 6.139217266 CORE 59 O O 0.0000 59 O 0.159300703 4.715164270 9.738879474 CORE 60 O O 0.0000 60 O -10.561037306 8.565517451 5.399041899 CORE 61 O O 0.0000 61 O -0.774853189 15.622074444 9.206582189 CORE 62 O O 0.0000 62 O -10.441181410 8.367722699 8.816251701 CORE 63 O O 0.0000 63 O -0.859186897 15.610653500 5.516874419 CORE 64 O O 0.0000 64 O -0.702998232 8.429955893 5.378078767 CORE 65 O O 0.0000 65 O -10.506603873 15.732421593 9.189602500 CORE 66 O O 0.0000 66 O -10.306312640 15.390945460 5.522791540 CORE 67 O O 0.0000 67 O -0.801109314 8.454538072 9.173242571 CORE 68 O O 0.0000 68 O -12.443464632 9.091446916 7.285664197 CORE 69 O O 0.0000 69 O -2.556064324 16.087721030 3.518027108 CORE 70 O O 0.0000 70 O -8.847256996 7.730329664 3.223793723 CORE 71 O O 0.0000 71 O 1.021928142 15.129579250 7.328458140 CORE 72 O O 0.0000 72 O -2.521624450 7.942529066 3.503095206 CORE 73 O O 0.0000 73 O -12.275015642 15.144398324 7.284245375 CORE 74 O O 0.0000 74 O 1.036854609 8.924295021 7.305708225 CORE 75 O O 0.0000 75 O -8.672817560 15.943373976 3.490851314 CORE 76 O O 0.0000 76 O -13.191695473 8.403058851 4.875911234 CORE 77 O O 0.0000 77 O -3.391235164 15.603214053 8.665632379 CORE 78 O O 0.0000 78 O 1.724291112 15.690862165 4.845008665 CORE 79 O O 0.0000 79 O -7.817789605 8.357930766 8.454611299 CORE 80 O O 0.0000 80 O -3.317677255 8.461664143 5.965397835 CORE 81 O O 0.0000 81 O -13.117391261 15.529224052 9.732494280 CORE 82 O O 0.0000 82 O -7.683223359 15.716933530 5.925846621 CORE 83 O O 0.0000 83 O 1.782017482 8.477082150 9.795390217 CORE 84 O O 0.0000 84 O -7.670106844 8.526019331 5.815928345 CORE 85 O O 0.0000 85 O 1.840590805 15.688801721 9.776708794 CORE 86 O O 0.0000 86 O -3.478884902 15.679745660 5.983308875 CORE 87 O O 0.0000 87 O -12.925603622 8.440914844 9.812987688 CORE 88 O O 0.0000 88 O 1.926620921 8.448470619 4.861342273 CORE 89 O O 0.0000 89 O -7.896450593 15.554004433 8.601303014 CORE 90 O O 0.0000 90 O -12.857938784 15.760563636 4.770251631 CORE 91 O O 0.0000 91 O -3.391920847 8.356512211 8.634197153 CORE 92 O O 0.0000 92 O -9.444806581 5.985403067 5.626759527 CORE 93 O O 0.0000 93 O 0.653643631 13.372430394 9.310009226 CORE 94 O O 0.0000 94 O -2.193193501 17.930833202 5.386761873 CORE 95 O O 0.0000 95 O -11.657093380 10.711036187 9.243827656 CORE 96 O O 0.0000 96 O 0.648994530 10.725320763 5.385398203 CORE 97 O O 0.0000 97 O -8.939157858 17.886402790 9.309139341 CORE 98 O O 0.0000 98 O -11.940856357 13.338976951 5.379684955 CORE 99 O O 0.0000 99 O -2.062884152 6.119675082 9.207800332 CORE 100 O O 0.0000 100 O -12.016489021 10.762594400 5.263484335 CORE 101 O O 0.0000 101 O -2.158459762 17.895101366 9.200405813 CORE 102 O O 0.0000 102 O 0.572649047 13.366787023 5.393786909 CORE 103 O O 0.0000 103 O -9.105729540 6.056544859 8.795049170 CORE 104 O O 0.0000 104 O -2.079670413 6.154246244 5.410351016 CORE 105 O O 0.0000 105 O -11.692983332 13.349344321 9.179331768 CORE 106 O O 0.0000 106 O -9.225587745 17.802407518 5.312628858 CORE 107 O O 0.0000 107 O 0.549038280 10.745084958 9.173396313 CORE 108 O O 0.0000 108 O2 12.674689764 5.822040663 4.881660160 CORE 109 O2 O2 0.0000 109 O2 13.628808541 7.361468117 2.751024813 CORE 110 O2 O2 0.0000 110 H 13.206578254 6.659418194 3.299561148 CORE 111 H H 0.0000 111 H 13.555038173 8.154219195 3.319944762 CORE 112 H H 0.0000 112 C 13.883467391 5.639389894 5.678169784 CORE 113 C C 0.0000 113 C 12.893990005 4.548180739 5.549055001 CORE 114 C C 0.0000 114 H 13.103411627 3.690635256 4.877788087 CORE 115 H H 0.0000 115 H 12.210271936 4.350568910 6.398978243 CORE 116 H H 0.0000 116 H 14.817414596 5.588902552 5.088129082 CORE 117 H H 0.0000 117 H 13.915795174 6.224339652 6.619776955 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.311315311 4.745780747 3.521923981 CORE 1 Si Si 0.0000 1 Si -2.576810538 12.058268872 7.337085789 CORE 2 Si Si 0.0000 2 Si 1.077780477 4.794505311 3.483387036 CORE 3 Si Si 0.0000 3 Si -8.624142292 12.021053615 7.324853537 CORE 4 Si Si 0.0000 4 Si -13.617030485 7.692996349 11.084269583 CORE 5 Si Si 0.0000 5 Si -4.011382482 14.906789337 7.324382422 CORE 6 Si Si 0.0000 6 Si -7.154717486 9.184686650 7.216787466 CORE 7 Si Si 0.0000 7 Si 2.425104509 16.360044893 3.534060383 CORE 8 Si Si 0.0000 8 Si -13.631970038 16.322795329 3.451656117 CORE 9 Si Si 0.0000 9 Si -3.928511746 9.152595545 7.319290683 CORE 10 Si Si 0.0000 10 Si -7.231951682 14.900776372 7.269208266 CORE 11 Si Si 0.0000 11 Si 2.412854191 7.722890937 3.480682899 CORE 12 Si Si 0.0000 12 Si -10.227767119 4.577344355 5.834462340 CORE 13 Si Si 0.0000 13 Si -0.298301088 12.075158768 9.568594431 CORE 14 Si Si 0.0000 14 Si -10.791871004 12.047085772 9.593705398 CORE 15 Si Si 0.0000 15 Si -1.231017796 4.796680207 5.719678488 CORE 16 Si Si 0.0000 16 Si -9.958122530 4.672835671 8.880978467 CORE 17 Si Si 0.0000 17 Si -0.290880385 12.023687764 5.083364682 CORE 18 Si Si 0.0000 18 Si -11.011076561 12.028648886 5.098333327 CORE 19 Si Si 0.0000 19 Si -1.220365161 4.772162462 8.867342302 CORE 20 Si Si 0.0000 20 Ti -9.041151144 7.652948163 5.007190880 CORE 21 Ti Ti 0.0000 21 Si 0.687057193 14.954591645 8.905962013 CORE 22 Si Si 0.0000 22 Si -2.270662481 16.320724507 5.101439050 CORE 23 Si Si 0.0000 23 Si -11.869898966 9.151769003 8.803226852 CORE 24 Si Si 0.0000 24 Si 0.731387616 9.129658232 5.726070224 CORE 25 Si Si 0.0000 25 Si -9.006407399 16.264580244 9.540802681 CORE 26 Si Si 0.0000 26 Si -11.861580697 14.921284801 5.730920053 CORE 27 Si Si 0.0000 27 Si -2.214763189 7.713303836 9.534034236 CORE 28 Si Si 0.0000 28 Si -12.041339523 9.191933661 5.710774545 CORE 29 Si Si 0.0000 29 Si -2.222288583 16.296524031 9.545952539 CORE 30 Si Si 0.0000 30 Si 0.618832915 14.954827903 5.766083348 CORE 31 Si Si 0.0000 31 Si -9.035957615 7.632606945 9.222034805 CORE 32 Si Si 0.0000 32 Si -2.156464486 7.755867107 5.066216494 CORE 33 Si Si 0.0000 33 Si -11.894932291 14.930041035 8.847421435 CORE 34 Si Si 0.0000 34 Si -8.980010982 16.212121542 5.062216239 CORE 35 Si Si 0.0000 35 Si 0.638880166 9.145519925 8.865258838 CORE 36 Si Si 0.0000 36 O -15.225293059 7.770410572 3.357333473 CORE 37 O O 0.0000 37 O -5.621526212 14.990513324 7.394824110 CORE 38 O O 0.0000 38 O -15.225538427 16.114719551 3.610991255 CORE 39 O O 0.0000 39 O -5.539773777 9.104723902 7.283729378 CORE 40 O O 0.0000 40 O -10.592619555 4.340907719 7.411139384 CORE 41 O O 0.0000 41 O -0.745012381 12.013391891 3.522584363 CORE 42 O O 0.0000 42 O -10.429364480 12.083818712 3.575473007 CORE 43 O O 0.0000 43 O -0.810216417 4.759531690 7.290678951 CORE 44 O O 0.0000 44 O -13.139966093 6.134912761 3.483306324 CORE 45 O O 0.0000 45 O -3.558582017 13.345301275 7.261065577 CORE 46 O O 0.0000 46 O -7.637135137 10.742912368 7.282731691 CORE 47 O O 0.0000 47 O 2.115551319 17.961734515 3.508474497 CORE 48 O O 0.0000 48 O -3.461868668 10.709539937 7.408091096 CORE 49 O O 0.0000 49 O -13.319619458 17.914088895 3.264803241 CORE 50 O O 0.0000 50 O 1.915795470 6.174815791 3.495380271 CORE 51 O O 0.0000 51 O -7.716422921 13.354865456 7.143224384 CORE 52 O O 0.0000 52 O -11.632475930 4.547056677 4.997932136 CORE 53 O O 0.0000 53 O -1.651218359 12.192528346 8.673197604 CORE 54 O O 0.0000 54 O 0.113930110 4.733247707 4.804597683 CORE 55 O O 0.0000 55 O -9.375545021 12.075900118 8.777593573 CORE 56 O O 0.0000 56 O -1.627109543 11.990474471 6.011045093 CORE 57 O O 0.0000 57 O -11.156305256 4.794951303 9.976000840 CORE 58 O O 0.0000 58 O -9.754325901 11.946999036 6.140782831 CORE 59 O O 0.0000 59 O 0.156013154 4.717078692 9.740126525 CORE 60 O O 0.0000 60 O -10.564441476 8.558300278 5.395697614 CORE 61 O O 0.0000 61 O -0.776562684 15.620626627 9.203163734 CORE 62 O O 0.0000 62 O -10.441054781 8.358443930 8.819652279 CORE 63 O O 0.0000 63 O -0.860578086 15.608508443 5.517040637 CORE 64 O O 0.0000 64 O -0.702000209 8.424319585 5.378550034 CORE 65 O O 0.0000 65 O -10.506609454 15.729151176 9.185467978 CORE 66 O O 0.0000 66 O -10.311023901 15.392344410 5.525298499 CORE 67 O O 0.0000 67 O -0.801571761 8.452032357 9.172423959 CORE 68 O O 0.0000 68 O -12.436228677 9.089126575 7.287311084 CORE 69 O O 0.0000 69 O -2.556814862 16.086105281 3.517050037 CORE 70 O O 0.0000 70 O -8.834193981 7.729402219 3.225665707 CORE 71 O O 0.0000 71 O 1.026128653 15.135138295 7.327413745 CORE 72 O O 0.0000 72 O -2.524486501 7.948907733 3.500974314 CORE 73 O O 0.0000 73 O -12.278930563 15.137319821 7.282442313 CORE 74 O O 0.0000 74 O 1.036762235 8.924825628 7.306082957 CORE 75 O O 0.0000 75 O -8.679352435 15.941383444 3.491783502 CORE 76 O O 0.0000 76 O -13.196182727 8.406038955 4.875785715 CORE 77 O O 0.0000 77 O -3.393703279 15.602009557 8.666433800 CORE 78 O O 0.0000 78 O 1.721686168 15.691651948 4.841303494 CORE 79 O O 0.0000 79 O -7.815159258 8.356723964 8.456678256 CORE 80 O O 0.0000 80 O -3.315752030 8.462260769 5.962912633 CORE 81 O O 0.0000 81 O -13.116037598 15.528606524 9.732745166 CORE 82 O O 0.0000 82 O -7.689048110 15.726246894 5.928852917 CORE 83 O O 0.0000 83 O 1.782487241 8.475536313 9.793359243 CORE 84 O O 0.0000 84 O -7.674166291 8.526067332 5.819888129 CORE 85 O O 0.0000 85 O 1.839879141 15.688269962 9.774925587 CORE 86 O O 0.0000 86 O -3.479309052 15.682170364 5.982816384 CORE 87 O O 0.0000 87 O -12.928211453 8.441278528 9.812534755 CORE 88 O O 0.0000 88 O 1.928412397 8.451549175 4.860393044 CORE 89 O O 0.0000 89 O -7.893991331 15.552681016 8.605649549 CORE 90 O O 0.0000 90 O -12.860366485 15.760934527 4.771272139 CORE 91 O O 0.0000 91 O -3.390506372 8.359614263 8.632888103 CORE 92 O O 0.0000 92 O -9.447996175 5.984727160 5.628111406 CORE 93 O O 0.0000 93 O 0.654446322 13.371578050 9.306905406 CORE 94 O O 0.0000 94 O -2.190952279 17.930501519 5.384136166 CORE 95 O O 0.0000 95 O -11.651663527 10.709088179 9.241005682 CORE 96 O O 0.0000 96 O 0.643964964 10.725194345 5.383898668 CORE 97 O O 0.0000 97 O -8.940458983 17.881945176 9.307047661 CORE 98 O O 0.0000 98 O -11.942407276 13.338074733 5.377401040 CORE 99 O O 0.0000 99 O -2.065872640 6.119327110 9.210406641 CORE 100 O O 0.0000 100 O -12.013794205 10.762681465 5.267512052 CORE 101 O O 0.0000 101 O -2.162271340 17.894547551 9.200183378 CORE 102 O O 0.0000 102 O 0.573812381 13.366385284 5.397968444 CORE 103 O O 0.0000 103 O -9.099492186 6.053326480 8.798020320 CORE 104 O O 0.0000 104 O -2.080225426 6.152592873 5.400910459 CORE 105 O O 0.0000 105 O -11.690350676 13.347352925 9.181282106 CORE 106 O O 0.0000 106 O -9.235074159 17.804251452 5.298595521 CORE 107 O O 0.0000 107 O 0.547058400 10.745158473 9.174959292 CORE 108 O O 0.0000 108 O2 12.680559740 5.829450561 4.877137289 CORE 109 O2 O2 0.0000 109 O2 13.636581804 7.340528688 2.730294538 CORE 110 O2 O2 0.0000 110 H 13.209081587 6.655628270 3.295336784 CORE 111 H H 0.0000 111 H 13.582188785 8.140717196 3.294053447 CORE 112 H H 0.0000 112 C 13.880087468 5.636203083 5.685979277 CORE 113 C C 0.0000 113 C 12.888376366 4.551473210 5.534645182 CORE 114 C C 0.0000 114 H 13.100512241 3.699470051 4.857314784 CORE 115 H H 0.0000 115 H 12.192731096 4.344263614 6.373611369 CORE 116 H H 0.0000 116 H 14.818059096 5.590083264 5.103321075 CORE 117 H H 0.0000 117 H 13.907590256 6.208328046 6.637162261 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.310445072 4.746775653 3.523565618 CORE 1 Si Si 0.0000 1 Si -2.576619632 12.055832349 7.336903064 CORE 2 Si Si 0.0000 2 Si 1.077529335 4.793526262 3.483201953 CORE 3 Si Si 0.0000 3 Si -8.626012671 12.020711841 7.323777724 CORE 4 Si Si 0.0000 4 Si -13.616637704 7.691114072 11.082918085 CORE 5 Si Si 0.0000 5 Si -4.009287326 14.906163593 7.325114008 CORE 6 Si Si 0.0000 6 Si -7.155222078 9.183859244 7.216983047 CORE 7 Si Si 0.0000 7 Si 2.425112592 16.359343184 3.535503852 CORE 8 Si Si 0.0000 8 Si -13.630935258 16.324601496 3.451347264 CORE 9 Si Si 0.0000 9 Si -3.928550235 9.150267564 7.321225731 CORE 10 Si Si 0.0000 10 Si -7.229736826 14.898268207 7.269193355 CORE 11 Si Si 0.0000 11 Si 2.414001552 7.722140073 3.480710437 CORE 12 Si Si 0.0000 12 Si -10.224332350 4.575875204 5.835232266 CORE 13 Si Si 0.0000 13 Si -0.298184273 12.074719551 9.568682599 CORE 14 Si Si 0.0000 14 Si -10.794988815 12.048766675 9.593402251 CORE 15 Si Si 0.0000 15 Si -1.230812649 4.795550668 5.720365115 CORE 16 Si Si 0.0000 16 Si -9.960006380 4.674118583 8.880474185 CORE 17 Si Si 0.0000 17 Si -0.290130232 12.022177100 5.082953208 CORE 18 Si Si 0.0000 18 Si -11.011537853 12.029867652 5.097767122 CORE 19 Si Si 0.0000 19 Si -1.217298733 4.772305745 8.865521667 CORE 20 Si Si 0.0000 20 Ti -9.041088600 7.651300125 5.008201346 CORE 21 Ti Ti 0.0000 21 Si 0.686863785 14.954755109 8.907301416 CORE 22 Si Si 0.0000 22 Si -2.270521803 16.321262609 5.102343091 CORE 23 Si Si 0.0000 23 Si -11.871491261 9.152391432 8.803882974 CORE 24 Si Si 0.0000 24 Si 0.731933007 9.130022060 5.726123170 CORE 25 Si Si 0.0000 25 Si -9.005428813 16.267119545 9.541236673 CORE 26 Si Si 0.0000 26 Si -11.859328699 14.922898531 5.732061972 CORE 27 Si Si 0.0000 27 Si -2.213539813 7.712968405 9.534004796 CORE 28 Si Si 0.0000 28 Si -12.042857919 9.192738004 5.710748680 CORE 29 Si Si 0.0000 29 Si -2.220682624 16.297852349 9.546774423 CORE 30 Si Si 0.0000 30 Si 0.618018870 14.953766546 5.766565037 CORE 31 Si Si 0.0000 31 Si -9.039096018 7.632823887 9.220887789 CORE 32 Si Si 0.0000 32 Si -2.156358449 7.756006786 5.069527383 CORE 33 Si Si 0.0000 33 Si -11.894805662 14.933118727 8.848359405 CORE 34 Si Si 0.0000 34 Si -8.975595317 16.211328010 5.063469376 CORE 35 Si Si 0.0000 35 Si 0.640054662 9.146014639 8.864886921 CORE 36 Si Si 0.0000 36 O -15.224873143 7.769483560 3.357573785 CORE 37 O O 0.0000 37 O -5.620508752 14.989204322 7.396147614 CORE 38 O O 0.0000 38 O -15.225140258 16.115448649 3.613164713 CORE 39 O O 0.0000 39 O -5.540652676 9.102193826 7.284495729 CORE 40 O O 0.0000 40 O -10.592023359 4.340576180 7.410567169 CORE 41 O O 0.0000 41 O -0.745676703 12.010694749 3.522558955 CORE 42 O O 0.0000 42 O -10.430314392 12.086772437 3.574500272 CORE 43 O O 0.0000 43 O -0.805843091 4.756895810 7.289790124 CORE 44 O O 0.0000 44 O -13.140206458 6.134594771 3.484259660 CORE 45 O O 0.0000 45 O -3.556149697 13.344722235 7.262634185 CORE 46 O O 0.0000 46 O -7.636435213 10.741974113 7.281139805 CORE 47 O O 0.0000 47 O 2.114931259 17.960806206 3.509561949 CORE 48 O O 0.0000 48 O -3.461533043 10.706542824 7.408741057 CORE 49 O O 0.0000 49 O -13.320163695 17.915556172 3.265451604 CORE 50 O O 0.0000 50 O 1.914384844 6.174489873 3.494202065 CORE 51 O O 0.0000 51 O -7.715926411 13.353266572 7.146141600 CORE 52 O O 0.0000 52 O -11.627178288 4.546703516 4.997027258 CORE 53 O O 0.0000 53 O -1.651827834 12.190150923 8.673432439 CORE 54 O O 0.0000 54 O 0.112773705 4.732302244 4.803123785 CORE 55 O O 0.0000 55 O -9.379422223 12.072268036 8.776134357 CORE 56 O O 0.0000 56 O -1.626420780 11.989402735 6.011818138 CORE 57 O O 0.0000 57 O -11.156635492 4.793606263 9.976238109 CORE 58 O O 0.0000 58 O -9.755036410 11.945339323 6.139633381 CORE 59 O O 0.0000 59 O 0.158426807 4.715673110 9.739210920 CORE 60 O O 0.0000 60 O -10.561942185 8.563599137 5.398152995 CORE 61 O O 0.0000 61 O -0.775307553 15.621689570 9.205673583 CORE 62 O O 0.0000 62 O -10.441147732 8.365256481 8.817155590 CORE 63 O O 0.0000 63 O -0.859556585 15.610083253 5.516918617 CORE 64 O O 0.0000 64 O -0.702732850 8.428457913 5.378204058 CORE 65 O O 0.0000 65 O -10.506605220 15.731552384 9.188503561 CORE 66 O O 0.0000 66 O -10.307564884 15.391317360 5.523457857 CORE 67 O O 0.0000 67 O -0.801232286 8.453872111 9.173025005 CORE 68 O O 0.0000 68 O -12.441541523 9.090830109 7.286101917 CORE 69 O O 0.0000 69 O -2.556263890 16.087291615 3.517767397 CORE 70 O O 0.0000 70 O -8.843784893 7.730083172 3.224291311 CORE 71 O O 0.0000 71 O 1.023044712 15.131056905 7.328180553 CORE 72 O O 0.0000 72 O -2.522385188 7.944224384 3.502531511 CORE 73 O O 0.0000 73 O -12.276056196 15.142516912 7.283766121 CORE 74 O O 0.0000 74 O 1.036830168 8.924435997 7.305807804 CORE 75 O O 0.0000 75 O -8.674554381 15.942844955 3.491099081 CORE 76 O O 0.0000 76 O -13.192888058 8.403850941 4.875877839 CORE 77 O O 0.0000 77 O -3.391891211 15.602893901 8.665845381 CORE 78 O O 0.0000 78 O 1.723598692 15.691072187 4.844023835 CORE 79 O O 0.0000 79 O -7.817090450 8.357610038 8.455160692 CORE 80 O O 0.0000 80 O -3.317165543 8.461822705 5.964737224 CORE 81 O O 0.0000 81 O -13.117031580 15.529060012 9.732560995 CORE 82 O O 0.0000 82 O -7.684771584 15.719408973 5.926645683 CORE 83 O O 0.0000 83 O 1.782142379 8.476671330 9.794850409 CORE 84 O O 0.0000 84 O -7.671185886 8.526032016 5.816980803 CORE 85 O O 0.0000 85 O 1.840401631 15.688660457 9.776234789 CORE 86 O O 0.0000 86 O -3.478997482 15.680390143 5.983177955 CORE 87 O O 0.0000 87 O -12.926296811 8.441011567 9.812867266 CORE 88 O O 0.0000 88 O 1.927097031 8.449288944 4.861090017 CORE 89 O O 0.0000 89 O -7.895796855 15.553652714 8.602458322 CORE 90 O O 0.0000 90 O -12.858584054 15.760662232 4.770522828 CORE 91 O O 0.0000 91 O -3.391544809 8.357336734 8.633849198 CORE 92 O O 0.0000 92 O -9.445654496 5.985223459 5.627118892 CORE 93 O O 0.0000 93 O 0.653857053 13.372203938 9.309184224 CORE 94 O O 0.0000 94 O -2.192597689 17.930744984 5.386063910 CORE 95 O O 0.0000 95 O -11.655650038 10.710518409 9.243077584 CORE 96 O O 0.0000 96 O 0.647657803 10.725287176 5.384999585 CORE 97 O O 0.0000 97 O -8.939503683 17.885218043 9.308583406 CORE 98 O O 0.0000 98 O -11.941268575 13.338737090 5.379077899 CORE 99 O O 0.0000 99 O -2.063678375 6.119582539 9.208493046 CORE 100 O O 0.0000 100 O -12.015772739 10.762617608 5.264554898 CORE 101 O O 0.0000 101 O -2.159472988 17.894954191 9.200346705 CORE 102 O O 0.0000 102 O 0.572958307 13.366680210 5.394898324 CORE 103 O O 0.0000 103 O -9.104071621 6.055689344 8.795838875 CORE 104 O O 0.0000 104 O -2.079817826 6.153806738 5.407841775 CORE 105 O O 0.0000 105 O -11.692283600 13.348815012 9.179850200 CORE 106 O O 0.0000 106 O -9.228109168 17.802897619 5.308898888 CORE 107 O O 0.0000 107 O 0.548511942 10.745104562 9.173811743 CORE 108 O O 0.0000 108 O2 12.676249921 5.824010149 4.880457992 CORE 109 O2 O2 0.0000 109 O2 13.630874637 7.355902442 2.745514830 CORE 110 O2 O2 0.0000 110 H 13.207243539 6.658410891 3.298438323 CORE 111 H H 0.0000 111 H 13.562254691 8.150630357 3.313062969 CORE 112 H H 0.0000 112 C 13.882569055 5.638542884 5.680245490 CORE 113 C C 0.0000 113 C 12.892497974 4.549055858 5.545224919 CORE 114 C C 0.0000 114 H 13.102640882 3.692983561 4.872346340 CORE 115 H H 0.0000 115 H 12.205609748 4.348892908 6.392235814 CORE 116 H H 0.0000 116 H 14.817585873 5.589216361 5.092167069 CORE 117 H H 0.0000 117 H 13.913614380 6.220083843 6.624397883 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.312140517 4.746325769 3.522357668 CORE 1 Si Si 0.0000 1 Si -2.576718934 12.059360501 7.336707559 CORE 2 Si Si 0.0000 2 Si 1.077330924 4.794516698 3.483565274 CORE 3 Si Si 0.0000 3 Si -8.624737526 12.022186613 7.324736081 CORE 4 Si Si 0.0000 4 Si -13.617859541 7.692409093 11.082631597 CORE 5 Si Si 0.0000 5 Si -4.010542264 14.907600166 7.323976805 CORE 6 Si Si 0.0000 6 Si -7.153180423 9.186254542 7.219096865 CORE 7 Si Si 0.0000 7 Si 2.424974993 16.360762027 3.533174902 CORE 8 Si Si 0.0000 8 Si -13.631495659 16.323846307 3.450926357 CORE 9 Si Si 0.0000 9 Si -3.928400127 9.152597563 7.319246409 CORE 10 Si Si 0.0000 10 Si -7.232416631 14.901176670 7.268368429 CORE 11 Si Si 0.0000 11 Si 2.413332419 7.722272256 3.480360125 CORE 12 Si Si 0.0000 12 Si -10.229219314 4.577051447 5.833994648 CORE 13 Si Si 0.0000 13 Si -0.298241622 12.075863649 9.568545593 CORE 14 Si Si 0.0000 14 Si -10.791493618 12.047217090 9.594051983 CORE 15 Si Si 0.0000 15 Si -1.230743368 4.795961920 5.719418549 CORE 16 Si Si 0.0000 16 Si -9.959133062 4.673634104 8.880780679 CORE 17 Si Si 0.0000 17 Si -0.290647333 12.024076386 5.083690423 CORE 18 Si Si 0.0000 18 Si -11.010903552 12.028885288 5.098501903 CORE 19 Si Si 0.0000 19 Si -1.220318590 4.772133633 8.867408257 CORE 20 Si Si 0.0000 20 Ti -9.038780599 7.649716666 5.008384072 CORE 21 Ti Ti 0.0000 21 Si 0.686580120 14.954954753 8.905050364 CORE 22 Si Si 0.0000 22 Si -2.270521996 16.320853519 5.101399720 CORE 23 Si Si 0.0000 23 Si -11.869195385 9.149597855 8.804530653 CORE 24 Si Si 0.0000 24 Si 0.731286390 9.129336351 5.726023439 CORE 25 Si Si 0.0000 25 Si -9.007255314 16.265774938 9.541467400 CORE 26 Si Si 0.0000 26 Si -11.862035061 14.921865282 5.731340580 CORE 27 Si Si 0.0000 27 Si -2.215023761 7.712491566 9.533302726 CORE 28 Si Si 0.0000 28 Si -12.043311513 9.191348423 5.710809005 CORE 29 Si Si 0.0000 29 Si -2.221852116 16.296776865 9.546319207 CORE 30 Si Si 0.0000 30 Si 0.618402029 14.954722099 5.766565646 CORE 31 Si Si 0.0000 31 Si -9.035557713 7.630751624 9.224181866 CORE 32 Si Si 0.0000 32 Si -2.156223159 7.755274085 5.066527020 CORE 33 Si Si 0.0000 33 Si -11.895582565 14.930465838 8.847351829 CORE 34 Si Si 0.0000 34 Si -8.982264712 16.212882208 5.062465223 CORE 35 Si Si 0.0000 35 Si 0.639477517 9.145215918 8.865146783 CORE 36 Si Si 0.0000 36 O -15.226145593 7.770049338 3.357424303 CORE 37 O O 0.0000 37 O -5.622230178 14.991206673 7.393871534 CORE 38 O O 0.0000 38 O -15.226004723 16.114576845 3.611004796 CORE 39 O O 0.0000 39 O -5.540457536 9.104634818 7.283121485 CORE 40 O O 0.0000 40 O -10.592088213 4.340659785 7.410651001 CORE 41 O O 0.0000 41 O -0.745489453 12.014287335 3.522588623 CORE 42 O O 0.0000 42 O -10.429295200 12.082774076 3.575356008 CORE 43 O O 0.0000 43 O -0.810948288 4.760049611 7.290626081 CORE 44 O O 0.0000 44 O -13.140367342 6.136022119 3.483697639 CORE 45 O O 0.0000 45 O -3.558721733 13.345726366 7.260546004 CORE 46 O O 0.0000 46 O -7.636125760 10.741630033 7.282595903 CORE 47 O O 0.0000 47 O 2.115397748 17.962056252 3.508142442 CORE 48 O O 0.0000 48 O -3.462444658 10.708659772 7.407857327 CORE 49 O O 0.0000 49 O -13.319278060 17.913305166 3.263543106 CORE 50 O O 0.0000 50 O 1.915491214 6.174459458 3.495312338 CORE 51 O O 0.0000 51 O -7.716823208 13.354780553 7.142722840 CORE 52 O O 0.0000 52 O -11.632866403 4.547687178 4.998990909 CORE 53 O O 0.0000 53 O -1.651675032 12.192276377 8.672711503 CORE 54 O O 0.0000 54 O 0.114413341 4.733466522 4.804700608 CORE 55 O O 0.0000 55 O -9.375006173 12.076166791 8.778274495 CORE 56 O O 0.0000 56 O -1.627822361 11.991049764 6.011369617 CORE 57 O O 0.0000 57 O -11.155835881 4.795116928 9.975455706 CORE 58 O O 0.0000 58 O -9.754454454 11.947163508 6.140723876 CORE 59 O O 0.0000 59 O 0.155633844 4.717710201 9.740733504 CORE 60 O O 0.0000 60 O -10.566348805 8.558382010 5.396204255 CORE 61 O O 0.0000 61 O -0.777346707 15.620406514 9.202699541 CORE 62 O O 0.0000 62 O -10.442136133 8.358371136 8.820939192 CORE 63 O O 0.0000 63 O -0.860344265 15.608970579 5.516593865 CORE 64 O O 0.0000 64 O -0.701699802 8.423779609 5.378197592 CORE 65 O O 0.0000 65 O -10.506759754 15.728537685 9.185098647 CORE 66 O O 0.0000 66 O -10.310926524 15.392420952 5.525614122 CORE 67 O O 0.0000 67 O -0.801389707 8.451762513 9.172169878 CORE 68 O O 0.0000 68 O -12.435198901 9.089073961 7.286242118 CORE 69 O O 0.0000 69 O -2.556726144 16.085611865 3.517011012 CORE 70 O O 0.0000 70 O -8.832765457 7.728679176 3.225502304 CORE 71 O O 0.0000 71 O 1.026708491 15.135168277 7.327131137 CORE 72 O O 0.0000 72 O -2.524788833 7.949518486 3.500791816 CORE 73 O O 0.0000 73 O -12.279360295 15.136800891 7.283942760 CORE 74 O O 0.0000 74 O 1.036691992 8.925104409 7.305940017 CORE 75 O O 0.0000 75 O -8.679116689 15.940628832 3.491688792 CORE 76 O O 0.0000 76 O -13.194307345 8.407053464 4.877325036 CORE 77 O O 0.0000 77 O -3.394669356 15.601967754 8.666306911 CORE 78 O O 0.0000 78 O 1.721955399 15.692088859 4.840708990 CORE 79 O O 0.0000 79 O -7.813153013 8.358576258 8.454811064 CORE 80 O O 0.0000 80 O -3.316017989 8.462955271 5.963941357 CORE 81 O O 0.0000 81 O -13.115869593 15.528384105 9.732512918 CORE 82 O O 0.0000 82 O -7.690194701 15.727507896 5.930026254 CORE 83 O O 0.0000 83 O 1.781983034 8.476183391 9.792526861 CORE 84 O O 0.0000 84 O -7.675070786 8.525711576 5.819651925 CORE 85 O O 0.0000 85 O 1.840016547 15.688364234 9.775082904 CORE 86 O O 0.0000 86 O -3.480183140 15.682591851 5.982871689 CORE 87 O O 0.0000 87 O -12.927240565 8.443261564 9.811478721 CORE 88 O O 0.0000 88 O 1.927839486 8.451865723 4.861149582 CORE 89 O O 0.0000 89 O -7.893630688 15.552605194 8.605816908 CORE 90 O O 0.0000 90 O -12.860983850 15.761082134 4.770766107 CORE 91 O O 0.0000 91 O -3.390499059 8.360444697 8.631510968 CORE 92 O O 0.0000 92 O -9.447099186 5.987159071 5.626995199 CORE 93 O O 0.0000 93 O 0.654222508 13.371879607 9.306824389 CORE 94 O O 0.0000 94 O -2.190499454 17.930427572 5.384306263 CORE 95 O O 0.0000 95 O -11.650597379 10.708540274 9.239902636 CORE 96 O O 0.0000 96 O 0.644133931 10.723969957 5.384069374 CORE 97 O O 0.0000 97 O -8.940686261 17.881263359 9.307605498 CORE 98 O O 0.0000 98 O -11.941680601 13.336386911 5.376402136 CORE 99 O O 0.0000 99 O -2.066951105 6.119654469 9.211229285 CORE 100 O O 0.0000 100 O -12.013020959 10.761133033 5.267872101 CORE 101 O O 0.0000 101 O -2.162278460 17.894521317 9.200061358 CORE 102 O O 0.0000 102 O 0.574651059 13.366187946 5.398319137 CORE 103 O O 0.0000 103 O -9.098134289 6.052334169 8.798831402 CORE 104 O O 0.0000 104 O -2.080658428 6.153039009 5.399682046 CORE 105 O O 0.0000 105 O -11.689731001 13.346090770 9.182255982 CORE 106 O O 0.0000 106 O -9.237415260 17.804633010 5.295441340 CORE 107 O O 0.0000 107 O 0.547256426 10.744060358 9.175331513 CORE 108 O O 0.0000 108 O2 12.680690603 5.831831443 4.876360364 CORE 109 O2 O2 0.0000 109 O2 13.636410143 7.339039645 2.725076064 CORE 110 O2 O2 0.0000 110 H 13.210982949 6.654212166 3.295220470 CORE 111 H H 0.0000 111 H 13.586594442 8.137676983 3.288329244 CORE 112 H H 0.0000 112 C 13.879182397 5.636123658 5.688226525 CORE 113 C C 0.0000 113 C 12.887297901 4.550860295 5.532962694 CORE 114 C C 0.0000 114 H 13.100354051 3.700875920 4.854059656 CORE 115 H H 0.0000 115 H 12.190916911 4.343307773 6.369436680 CORE 116 H H 0.0000 116 H 14.818728615 5.590915859 5.104967125 CORE 117 H H 0.0000 117 H 13.906134020 6.206380037 6.639955403 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.312064117 4.746345949 3.522412060 CORE 1 Si Si 0.0000 1 Si -2.576714508 12.059201650 7.336716383 CORE 2 Si Si 0.0000 2 Si 1.077339777 4.794472157 3.483548918 CORE 3 Si Si 0.0000 3 Si -8.624794875 12.022120305 7.324692948 CORE 4 Si Si 0.0000 4 Si -13.617804501 7.692350857 11.082644453 CORE 5 Si Si 0.0000 5 Si -4.010485878 14.907535444 7.324027925 CORE 6 Si Si 0.0000 6 Si -7.153272219 9.186146719 7.219001775 CORE 7 Si Si 0.0000 7 Si 2.424981151 16.360698169 3.533279730 CORE 8 Si Si 0.0000 8 Si -13.631470449 16.323880182 3.450945299 CORE 9 Si Si 0.0000 9 Si -3.928406863 9.152492768 7.319335490 CORE 10 Si Si 0.0000 10 Si -7.232295968 14.901045784 7.268405552 CORE 11 Si Si 0.0000 11 Si 2.413362440 7.722266202 3.480375948 CORE 12 Si Si 0.0000 12 Si -10.228999348 4.576998545 5.834050333 CORE 13 Si Si 0.0000 13 Si -0.298238928 12.075812189 9.568551755 CORE 14 Si Si 0.0000 14 Si -10.791651039 12.047286858 9.594022771 CORE 15 Si Si 0.0000 15 Si -1.230746640 4.795943469 5.719461150 CORE 16 Si Si 0.0000 16 Si -9.959172321 4.673656014 8.880766834 CORE 17 Si Si 0.0000 17 Si -0.290624047 12.023990906 5.083657256 CORE 18 Si Si 0.0000 18 Si -11.010932034 12.028929397 5.098468888 CORE 19 Si Si 0.0000 19 Si -1.220182531 4.772141417 8.867323360 CORE 20 Si Si 0.0000 20 Ti -9.038884520 7.649787875 5.008375856 CORE 21 Ti Ti 0.0000 21 Si 0.686592821 14.954945672 8.905151692 CORE 22 Si Si 0.0000 22 Si -2.270521996 16.320871970 5.101442168 CORE 23 Si Si 0.0000 23 Si -11.869298728 9.149723696 8.804501517 CORE 24 Si Si 0.0000 24 Si 0.731315449 9.129367199 5.726027928 CORE 25 Si Si 0.0000 25 Si -9.007173140 16.265835480 9.541456978 CORE 26 Si Si 0.0000 26 Si -11.861913243 14.921911698 5.731373063 CORE 27 Si Si 0.0000 27 Si -2.214956982 7.712513044 9.533334372 CORE 28 Si Si 0.0000 28 Si -12.043291114 9.191410983 5.710806267 CORE 29 Si Si 0.0000 29 Si -2.221799386 16.296825299 9.546339746 CORE 30 Si Si 0.0000 30 Si 0.618384709 14.954679143 5.766565646 CORE 31 Si Si 0.0000 31 Si -9.035717058 7.630844887 9.224033601 CORE 32 Si Si 0.0000 32 Si -2.156229318 7.755306950 5.066662124 CORE 33 Si Si 0.0000 33 Si -11.895547732 14.930585192 8.847397168 CORE 34 Si Si 0.0000 34 Si -8.981964497 16.212812152 5.062510410 CORE 35 Si Si 0.0000 35 Si 0.639503498 9.145251811 8.865135068 CORE 36 Si Si 0.0000 36 O -15.226088245 7.770023968 3.357431074 CORE 37 O O 0.0000 37 O -5.622152815 14.991116581 7.393974003 CORE 38 O O 0.0000 38 O -15.225965849 16.114616054 3.611102016 CORE 39 O O 0.0000 39 O -5.540466389 9.104524834 7.283183408 CORE 40 O O 0.0000 40 O -10.592085326 4.340656037 7.410647197 CORE 41 O O 0.0000 41 O -0.745497921 12.014125602 3.522587254 CORE 42 O O 0.0000 42 O -10.429341002 12.082954116 3.575317439 CORE 43 O O 0.0000 43 O -0.810718508 4.759907770 7.290588425 CORE 44 O O 0.0000 44 O -13.140360029 6.135957829 3.483722895 CORE 45 O O 0.0000 45 O -3.558605880 13.345681103 7.260639953 CORE 46 O O 0.0000 46 O -7.636139809 10.741645457 7.282530328 CORE 47 O O 0.0000 47 O 2.115376771 17.962000035 3.508206343 CORE 48 O O 0.0000 48 O -3.462403667 10.708564491 7.407897112 CORE 49 O O 0.0000 49 O -13.319317896 17.913406501 3.263628991 CORE 50 O O 0.0000 50 O 1.915441370 6.174460756 3.495262359 CORE 51 O O 0.0000 51 O -7.716782987 13.354712371 7.142876658 CORE 52 O O 0.0000 52 O -11.632610257 4.547642925 4.998902513 CORE 53 O O 0.0000 53 O -1.651681960 12.192180663 8.672743986 CORE 54 O O 0.0000 54 O 0.114339635 4.733414053 4.804629633 CORE 55 O O 0.0000 55 O -9.375204970 12.075991364 8.778178188 CORE 56 O O 0.0000 56 O -1.627759239 11.990975672 6.011389852 CORE 57 O O 0.0000 57 O -11.155871868 4.795049035 9.975490928 CORE 58 O O 0.0000 58 O -9.754480627 11.947081488 6.140674809 CORE 59 O O 0.0000 59 O 0.155759511 4.717618524 9.740664963 CORE 60 O O 0.0000 60 O -10.566150586 8.558616826 5.396291966 CORE 61 O O 0.0000 61 O -0.777254911 15.620464317 9.202833428 CORE 62 O O 0.0000 62 O -10.442091678 8.358681053 8.820768866 CORE 63 O O 0.0000 63 O -0.860308855 15.609020599 5.516608471 CORE 64 O O 0.0000 64 O -0.701746374 8.423990208 5.378197896 CORE 65 O O 0.0000 65 O -10.506752826 15.728673472 9.185251933 CORE 66 O O 0.0000 66 O -10.310775261 15.392371366 5.525517054 CORE 67 O O 0.0000 67 O -0.801382586 8.451857506 9.172208370 CORE 68 O O 0.0000 68 O -12.435484297 9.089153098 7.286235804 CORE 69 O O 0.0000 69 O -2.556705360 16.085687542 3.517045016 CORE 70 O O 0.0000 70 O -8.833261389 7.728742312 3.225447760 CORE 71 O O 0.0000 71 O 1.026543565 15.134983192 7.327178378 CORE 72 O O 0.0000 72 O -2.524680679 7.949280210 3.500870095 CORE 73 O O 0.0000 73 O -12.279211534 15.137058194 7.283934773 CORE 74 O O 0.0000 74 O 1.036698343 8.925074282 7.305934084 CORE 75 O O 0.0000 75 O -8.678911350 15.940728582 3.491662243 CORE 76 O O 0.0000 76 O -13.194243453 8.406909317 4.877259918 CORE 77 O O 0.0000 77 O -3.394544266 15.602009557 8.666286144 CORE 78 O O 0.0000 78 O 1.722029298 15.692043020 4.840858167 CORE 79 O O 0.0000 79 O -7.813330255 8.358532725 8.454826811 CORE 80 O O 0.0000 80 O -3.316069757 8.462904387 5.963977187 CORE 81 O O 0.0000 81 O -13.115921939 15.528414520 9.732515124 CORE 82 O O 0.0000 82 O -7.689950488 15.727143347 5.929874109 CORE 83 O O 0.0000 83 O 1.781990154 8.476205445 9.792631460 CORE 84 O O 0.0000 84 O -7.674896045 8.525725991 5.819531655 CORE 85 O O 0.0000 85 O 1.840033867 15.688377496 9.775134709 CORE 86 O O 0.0000 86 O -3.480129832 15.682492678 5.982885458 CORE 87 O O 0.0000 87 O -12.927198034 8.443160228 9.811541252 CORE 88 O O 0.0000 88 O 1.927806193 8.451749684 4.861146919 CORE 89 O O 0.0000 89 O -7.893728065 15.552652330 8.605665753 CORE 90 O O 0.0000 90 O -12.860875888 15.761063251 4.770755152 CORE 91 O O 0.0000 91 O -3.390546208 8.360304874 8.631616252 CORE 92 O O 0.0000 92 O -9.447034332 5.987071861 5.627000828 CORE 93 O O 0.0000 93 O 0.654206150 13.371894166 9.306930586 CORE 94 O O 0.0000 94 O -2.190593753 17.930441842 5.384385378 CORE 95 O O 0.0000 95 O -11.650824850 10.708629213 9.240045576 CORE 96 O O 0.0000 96 O 0.644292507 10.724029202 5.384111290 CORE 97 O O 0.0000 97 O -8.940632953 17.881441381 9.307649468 CORE 98 O O 0.0000 98 O -11.941662127 13.336492715 5.376522558 CORE 99 O O 0.0000 99 O -2.066803884 6.119651154 9.211106125 CORE 100 O O 0.0000 100 O -12.013144894 10.761199918 5.267722772 CORE 101 O O 0.0000 101 O -2.162152024 17.894540777 9.200074139 CORE 102 O O 0.0000 102 O 0.574574851 13.366210145 5.398165167 CORE 103 O O 0.0000 103 O -9.098401596 6.052485235 8.798696754 CORE 104 O O 0.0000 104 O -2.080620709 6.153073460 5.400049322 CORE 105 O O 0.0000 105 O -11.689845891 13.346213440 9.182147656 CORE 106 O O 0.0000 106 O -9.236996306 17.804554882 5.296047103 CORE 107 O O 0.0000 107 O 0.547313005 10.744107350 9.175263124 CORE 108 O O 0.0000 108 O2 12.680490845 5.831479435 4.876544839 CORE 109 O2 O2 0.0000 109 O2 13.636160926 7.339798726 2.725996080 CORE 110 O2 O2 0.0000 110 H 13.210814559 6.654401143 3.295365311 CORE 111 H H 0.0000 111 H 13.585498849 8.138260059 3.289442561 CORE 112 H H 0.0000 112 C 13.879334814 5.636232489 5.687867313 CORE 113 C C 0.0000 113 C 12.887532107 4.550779140 5.533514674 CORE 114 C C 0.0000 114 H 13.100457009 3.700520597 4.854882756 CORE 115 H H 0.0000 115 H 12.191578154 4.343559166 6.370462894 CORE 116 H H 0.0000 116 H 14.818677232 5.590839317 5.104390954 CORE 117 H H 0.0000 117 H 13.906470799 6.206996988 6.639255158 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.313198199 4.749309044 3.522839433 CORE 1 Si Si 0.0000 1 Si -2.578961888 12.059883611 7.335569062 CORE 2 Si Si 0.0000 2 Si 1.075943969 4.794781209 3.483920683 CORE 3 Si Si 0.0000 3 Si -8.625983996 12.024397114 7.323690850 CORE 4 Si Si 0.0000 4 Si -13.618249436 7.694251873 11.080142516 CORE 5 Si Si 0.0000 5 Si -4.011751400 14.909866452 7.322685860 CORE 6 Si Si 0.0000 6 Si -7.152012855 9.187581418 7.221000799 CORE 7 Si Si 0.0000 7 Si 2.423756043 16.361821798 3.530383130 CORE 8 Si Si 0.0000 8 Si -13.631319956 16.324266353 3.447348683 CORE 9 Si Si 0.0000 9 Si -3.927004704 9.153595351 7.317927850 CORE 10 Si Si 0.0000 10 Si -7.233296492 14.902380156 7.266695830 CORE 11 Si Si 0.0000 11 Si 2.412967542 7.723327847 3.479662087 CORE 12 Si Si 0.0000 12 Si -10.231571576 4.578963130 5.832172035 CORE 13 Si Si 0.0000 13 Si -0.298218721 12.075861487 9.568247542 CORE 14 Si Si 0.0000 14 Si -10.789206402 12.045459645 9.595069220 CORE 15 Si Si 0.0000 15 Si -1.230926192 4.795835071 5.718799246 CORE 16 Si Si 0.0000 16 Si -9.959053389 4.674615892 8.880157648 CORE 17 Si Si 0.0000 17 Si -0.290468166 12.023771946 5.084153322 CORE 18 Si Si 0.0000 18 Si -11.008850543 12.027139086 5.099127901 CORE 19 Si Si 0.0000 19 Si -1.222143551 4.773557953 8.867329674 CORE 20 Si Si 0.0000 20 Ti -9.035446287 7.644408005 5.011793627 CORE 21 Ti Ti 0.0000 21 Si 0.685429873 14.956019570 8.902993753 CORE 22 Si Si 0.0000 22 Si -2.271111072 16.321244879 5.101175840 CORE 23 Si Si 0.0000 23 Si -11.865733481 9.145495564 8.806607575 CORE 24 Si Si 0.0000 24 Si 0.730074560 9.128371140 5.726678345 CORE 25 Si Si 0.0000 25 Si -9.008745998 16.264063620 9.542735599 CORE 26 Si Si 0.0000 26 Si -11.864847269 14.919358847 5.732607714 CORE 27 Si Si 0.0000 27 Si -2.216811580 7.713612889 9.530338346 CORE 28 Si Si 0.0000 28 Si -12.045075084 9.190098376 5.711734956 CORE 29 Si Si 0.0000 29 Si -2.222893247 16.296896364 9.545760000 CORE 30 Si Si 0.0000 30 Si 0.618297339 14.954889742 5.766370673 CORE 31 Si Si 0.0000 31 Si -9.030419415 7.627191471 9.226028898 CORE 32 Si Si 0.0000 32 Si -2.157379180 7.756270720 5.067163516 CORE 33 Si Si 0.0000 33 Si -11.896119103 14.927606097 8.848693438 CORE 34 Si Si 0.0000 34 Si -8.986545087 16.214647581 5.062542208 CORE 35 Si Si 0.0000 35 Si 0.638860344 9.144893604 8.863456688 CORE 36 Si Si 0.0000 36 O -15.227170174 7.769482118 3.357413957 CORE 37 O O 0.0000 37 O -5.624536446 14.993947636 7.389973901 CORE 38 O O 0.0000 38 O -15.226533949 16.114212297 3.610484234 CORE 39 O O 0.0000 39 O -5.539271302 9.105343015 7.280890821 CORE 40 O O 0.0000 40 O -10.590184541 4.340089682 7.408626188 CORE 41 O O 0.0000 41 O -0.746288680 12.018497449 3.523102034 CORE 42 O O 0.0000 42 O -10.428138217 12.079041235 3.575723208 CORE 43 O O 0.0000 43 O -0.814933644 4.762757709 7.290443660 CORE 44 O O 0.0000 44 O -13.141293775 6.137897909 3.484121970 CORE 45 O O 0.0000 45 O -3.559602364 13.347800935 7.258819165 CORE 46 O O 0.0000 46 O -7.634964736 10.742896512 7.282789506 CORE 47 O O 0.0000 47 O 2.114982835 17.963820761 3.506375286 CORE 48 O O 0.0000 48 O -3.462752571 10.710181392 7.406918064 CORE 49 O O 0.0000 49 O -13.317973664 17.912647709 3.259407138 CORE 50 O O 0.0000 50 O 1.914915032 6.173604664 3.495311882 CORE 51 O O 0.0000 51 O -7.716612672 13.357622707 7.140423103 CORE 52 O O 0.0000 52 O -11.638258151 4.550262948 4.999746457 CORE 53 O O 0.0000 53 O -1.652477531 12.193090665 8.671648699 CORE 54 O O 0.0000 54 O 0.116720572 4.734092266 4.805956332 CORE 55 O O 0.0000 55 O -9.371806188 12.077848847 8.781255840 CORE 56 O O 0.0000 56 O -1.629282446 11.993881107 6.011320854 CORE 57 O O 0.0000 57 O -11.156947639 4.795841125 9.976647073 CORE 58 O O 0.0000 58 O -9.754199079 11.948242019 6.141817033 CORE 59 O O 0.0000 59 O 0.153867578 4.719855403 9.743468831 CORE 60 O O 0.0000 60 O -10.567327198 8.553845835 5.394612901 CORE 61 O O 0.0000 61 O -0.778711339 15.618844677 9.200360931 CORE 62 O O 0.0000 62 O -10.440293081 8.352854615 8.826986853 CORE 63 O O 0.0000 63 O -0.859360291 15.609004598 5.515888067 CORE 64 O O 0.0000 64 O -0.699901975 8.420869993 5.377250949 CORE 65 O O 0.0000 65 O -10.507474689 15.726088909 9.182705493 CORE 66 O O 0.0000 66 O -10.313772409 15.392111324 5.527828583 CORE 67 O O 0.0000 67 O -0.801033875 8.449866110 9.171630146 CORE 68 O O 0.0000 68 O -12.431588044 9.087534467 7.285161741 CORE 69 O O 0.0000 69 O -2.556392251 16.083904150 3.517234207 CORE 70 O O 0.0000 70 O -8.824587866 7.726333033 3.225274468 CORE 71 O O 0.0000 71 O 1.029189500 15.137069149 7.325782073 CORE 72 O O 0.0000 72 O -2.526478506 7.952969375 3.500136074 CORE 73 O O 0.0000 73 O -12.282065695 15.133403048 7.285511521 CORE 74 O O 0.0000 74 O 1.036211840 8.926153081 7.304929551 CORE 75 O O 0.0000 75 O -8.680518656 15.937094338 3.491121827 CORE 76 O O 0.0000 76 O -13.195235318 8.407019734 4.875906670 CORE 77 O O 0.0000 77 O -3.396922701 15.602297131 8.666786470 CORE 78 O O 0.0000 78 O 1.720923121 15.692964122 4.838633665 CORE 79 O O 0.0000 79 O -7.812221768 8.359655057 8.455344634 CORE 80 O O 0.0000 80 O -3.315154101 8.463877382 5.964573593 CORE 81 O O 0.0000 81 O -13.115555715 15.527543149 9.732489107 CORE 82 O O 0.0000 82 O -7.696651444 15.734185092 5.933142778 CORE 83 O O 0.0000 83 O 1.782864050 8.475427338 9.792740548 CORE 84 O O 0.0000 84 O -7.675470688 8.527306711 5.823874387 CORE 85 O O 0.0000 85 O 1.839408996 15.688752855 9.774317085 CORE 86 O O 0.0000 86 O -3.481695955 15.684704475 5.982168097 CORE 87 O O 0.0000 87 O -12.928321917 8.446730904 9.812204982 CORE 88 O O 0.0000 88 O 1.927632800 8.452299030 4.860704103 CORE 89 O O 0.0000 89 O -7.892871490 15.552049074 8.608352013 CORE 90 O O 0.0000 90 O -12.863099790 15.760768181 4.771086675 CORE 91 O O 0.0000 91 O -3.389531250 8.362600565 8.628316774 CORE 92 O O 0.0000 92 O -9.447643999 5.986873370 5.625869635 CORE 93 O O 0.0000 93 O 0.654481539 13.374375807 9.305261486 CORE 94 O O 0.0000 94 O -2.188627344 17.929373133 5.383725756 CORE 95 O O 0.0000 95 O -11.644762428 10.707350626 9.235281936 CORE 96 O O 0.0000 96 O 0.642255085 10.721842630 5.383956103 CORE 97 O O 0.0000 97 O -8.943031980 17.882468431 9.308095555 CORE 98 O O 0.0000 98 O -11.941334392 13.336436642 5.373747750 CORE 99 O O 0.0000 99 O -2.070714571 6.118037567 9.214019841 CORE 100 O O 0.0000 100 O -12.010791284 10.758229905 5.269211504 CORE 101 O O 0.0000 101 O -2.163154858 17.893403742 9.200214720 CORE 102 O O 0.0000 102 O 0.577711522 13.366815564 5.400565624 CORE 103 O O 0.0000 103 O -9.092861665 6.049376985 8.802030237 CORE 104 O O 0.0000 104 O -2.081741512 6.151145633 5.394318578 CORE 105 O O 0.0000 105 O -11.688756264 13.345273599 9.184565914 CORE 106 O O 0.0000 106 O -9.247931451 17.807875029 5.283776206 CORE 107 O O 0.0000 107 O 0.546227035 10.742462773 9.177227536 CORE 108 O O 0.0000 108 O2 12.682969544 5.841601611 4.876088254 CORE 109 O2 O2 0.0000 109 O2 13.638755285 7.322189822 2.709542963 CORE 110 O2 O2 0.0000 110 H 13.218913248 6.649573646 3.290307197 CORE 111 H H 0.0000 111 H 13.608493790 8.126751330 3.262696651 CORE 112 H H 0.0000 112 C 13.876386547 5.634462215 5.695179370 CORE 113 C C 0.0000 113 C 12.883005209 4.550461151 5.521584047 CORE 114 C C 0.0000 114 H 13.099493049 3.707299706 4.836937179 CORE 115 H H 0.0000 115 H 12.178988747 4.338941115 6.349737107 CORE 116 H H 0.0000 116 H 14.819467991 5.593489899 5.116816810 CORE 117 H H 0.0000 117 H 13.898077092 6.195453808 6.653095349 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.312825431 4.748335039 3.522698928 CORE 1 Si Si 0.0000 1 Si -2.578223089 12.059659462 7.335946152 CORE 2 Si Si 0.0000 2 Si 1.076402759 4.794679585 3.483798435 CORE 3 Si Si 0.0000 3 Si -8.625593139 12.023648700 7.324020242 CORE 4 Si Si 0.0000 4 Si -13.618103177 7.693626994 11.080964932 CORE 5 Si Si 0.0000 5 Si -4.011335333 14.909100164 7.323127003 CORE 6 Si Si 0.0000 6 Si -7.152426806 9.187109768 7.220343688 CORE 7 Si Si 0.0000 7 Si 2.424158639 16.361452493 3.531335249 CORE 8 Si Si 0.0000 8 Si -13.631369415 16.324139359 3.448530920 CORE 9 Si Si 0.0000 9 Si -3.927465611 9.153232965 7.318390521 CORE 10 Si Si 0.0000 10 Si -7.232967603 14.901941516 7.267257775 CORE 11 Si Si 0.0000 11 Si 2.413097443 7.722978866 3.479896693 CORE 12 Si Si 0.0000 12 Si -10.230726163 4.578317350 5.832789437 CORE 13 Si Si 0.0000 13 Si -0.298225264 12.075845342 9.568347501 CORE 14 Si Si 0.0000 14 Si -10.790009863 12.046060307 9.594725298 CORE 15 Si Si 0.0000 15 Si -1.230867111 4.795870675 5.719016812 CORE 16 Si Si 0.0000 16 Si -9.959092456 4.674300353 8.880357870 CORE 17 Si Si 0.0000 17 Si -0.290519357 12.023843876 5.083990224 CORE 18 Si Si 0.0000 18 Si -11.009534687 12.027727496 5.098911247 CORE 19 Si Si 0.0000 19 Si -1.221498859 4.773092357 8.867327544 CORE 20 Si Si 0.0000 20 Ti -9.036576327 7.646176406 5.010670193 CORE 21 Ti Ti 0.0000 21 Si 0.685812070 14.955666553 8.903703050 CORE 22 Si Si 0.0000 22 Si -2.270917471 16.321122210 5.101263399 CORE 23 Si Si 0.0000 23 Si -11.866905282 9.146885433 8.805915318 CORE 24 Si Si 0.0000 24 Si 0.730482545 9.128698499 5.726464506 CORE 25 Si Si 0.0000 25 Si -9.008228897 16.264646119 9.542315300 CORE 26 Si Si 0.0000 26 Si -11.863882924 14.920197929 5.732201869 CORE 27 Si Si 0.0000 27 Si -2.216201913 7.713251367 9.531323176 CORE 28 Si Si 0.0000 28 Si -12.044488703 9.190529810 5.711429678 CORE 29 Si Si 0.0000 29 Si -2.222533758 16.296873012 9.545950561 CORE 30 Si Si 0.0000 30 Si 0.618326205 14.954820407 5.766434726 CORE 31 Si Si 0.0000 31 Si -9.032160855 7.628392363 9.225373004 CORE 32 Si Si 0.0000 32 Si -2.157001217 7.755953884 5.066998744 CORE 33 Si Si 0.0000 33 Si -11.895931276 14.928585290 8.848267358 CORE 34 Si Si 0.0000 34 Si -8.985039393 16.214044324 5.062531710 CORE 35 Si Si 0.0000 35 Si 0.639071650 9.145011373 8.864008363 CORE 36 Si Si 0.0000 36 O -15.226814534 7.769660140 3.357419587 CORE 37 O O 0.0000 37 O -5.623753000 14.993017021 7.391288732 CORE 38 O O 0.0000 38 O -15.226347276 16.114345056 3.610687271 CORE 39 O O 0.0000 39 O -5.539664083 9.105074036 7.281644392 CORE 40 O O 0.0000 40 O -10.590809412 4.340275776 7.409290526 CORE 41 O O 0.0000 41 O -0.746028686 12.017060443 3.522932850 CORE 42 O O 0.0000 42 O -10.428533500 12.080327462 3.575589854 CORE 43 O O 0.0000 43 O -0.813548228 4.761820895 7.290491205 CORE 44 O O 0.0000 44 O -13.140986825 6.137260201 3.483990821 CORE 45 O O 0.0000 45 O -3.559274821 13.347104127 7.259417625 CORE 46 O O 0.0000 46 O -7.635350974 10.742485260 7.282704305 CORE 47 O O 0.0000 47 O 2.115112351 17.963222261 3.506977169 CORE 48 O O 0.0000 48 O -3.462637873 10.709649921 7.407239925 CORE 49 O O 0.0000 49 O -13.318415519 17.912897084 3.260794846 CORE 50 O O 0.0000 50 O 1.915088040 6.173886040 3.495295602 CORE 51 O O 0.0000 51 O -7.716668674 13.356666001 7.141229620 CORE 52 O O 0.0000 52 O -11.636401628 4.549401812 4.999469022 CORE 53 O O 0.0000 53 O -1.652215997 12.192791560 8.672008749 CORE 54 O O 0.0000 54 O 0.115937896 4.733869414 4.805520210 CORE 55 O O 0.0000 55 O -9.372923335 12.077238239 8.780244156 CORE 56 O O 0.0000 56 O -1.628781703 11.992925986 6.011343524 CORE 57 O O 0.0000 57 O -11.156594117 4.795580795 9.976267016 CORE 58 O O 0.0000 58 O -9.754291645 11.947860605 6.141441616 CORE 59 O O 0.0000 59 O 0.154489370 4.719120107 9.742547141 CORE 60 O O 0.0000 60 O -10.566940383 8.555414015 5.395164804 CORE 61 O O 0.0000 61 O -0.778232534 15.619377013 9.201173610 CORE 62 O O 0.0000 62 O -10.440884274 8.354769757 8.824943022 CORE 63 O O 0.0000 63 O -0.859672052 15.609009788 5.516124880 CORE 64 O O 0.0000 64 O -0.700508179 8.421895602 5.377562161 CORE 65 O O 0.0000 65 O -10.507237404 15.726938513 9.183542515 CORE 66 O O 0.0000 66 O -10.312787280 15.392196803 5.527068774 CORE 67 O O 0.0000 67 O -0.801148573 8.450520683 9.171820250 CORE 68 O O 0.0000 68 O -12.432868769 9.088066515 7.285514792 CORE 69 O O 0.0000 69 O -2.556495210 16.084490254 3.517172056 CORE 70 O O 0.0000 70 O -8.827438755 7.727124978 3.225331446 CORE 71 O O 0.0000 71 O 1.028319838 15.136383584 7.326241017 CORE 72 O O 0.0000 72 O -2.525887505 7.951756807 3.500377299 CORE 73 O O 0.0000 73 O -12.281127523 15.134604517 7.284993241 CORE 74 O O 0.0000 74 O 1.036371763 8.925798478 7.305259780 CORE 75 O O 0.0000 75 O -8.679990393 15.938288887 3.491299455 CORE 76 O O 0.0000 76 O -13.194909315 8.406983553 4.876351464 CORE 77 O O 0.0000 77 O -3.396140795 15.602202570 8.666622002 CORE 78 O O 0.0000 78 O 1.721286651 15.692661412 4.839364871 CORE 79 O O 0.0000 79 O -7.812586260 8.359286184 8.455174461 CORE 80 O O 0.0000 80 O -3.315455086 8.463557519 5.964377555 CORE 81 O O 0.0000 81 O -13.115675993 15.527829570 9.732497627 CORE 82 O O 0.0000 82 O -7.694448904 15.731870517 5.932068335 CORE 83 O O 0.0000 83 O 1.782576921 8.475683199 9.792704718 CORE 84 O O 0.0000 84 O -7.675281706 8.526787204 5.822446969 CORE 85 O O 0.0000 85 O 1.839614336 15.688629465 9.774585848 CORE 86 O O 0.0000 86 O -3.481181163 15.683977540 5.982403921 CORE 87 O O 0.0000 87 O -12.927952613 8.445557256 9.811986807 CORE 88 O O 0.0000 88 O 1.927689764 8.452118413 4.860849629 CORE 89 O O 0.0000 89 O -7.893153038 15.552247420 8.607469043 CORE 90 O O 0.0000 90 O -12.862368882 15.760865192 4.770977739 CORE 91 O O 0.0000 91 O -3.389864758 8.361845954 8.629401335 CORE 92 O O 0.0000 92 O -9.447443471 5.986938669 5.626241476 CORE 93 O O 0.0000 93 O 0.654391090 13.373560077 9.305810119 CORE 94 O O 0.0000 94 O -2.189273768 17.929724421 5.383942562 CORE 95 O O 0.0000 95 O -11.646755010 10.707770959 9.236847730 CORE 96 O O 0.0000 96 O 0.642924796 10.722561349 5.384007071 CORE 97 O O 0.0000 97 O -8.942243531 17.882130838 9.307948888 CORE 98 O O 0.0000 98 O -11.941442161 13.336455092 5.374659855 CORE 99 O O 0.0000 99 O -2.069429034 6.118568030 9.213062092 CORE 100 O O 0.0000 100 O -12.011564915 10.759206071 5.268722208 CORE 101 O O 0.0000 101 O -2.162825198 17.893777516 9.200168544 CORE 102 O O 0.0000 102 O 0.576680398 13.366616497 5.399776604 CORE 103 O O 0.0000 103 O -9.094682585 6.050398702 8.800934493 CORE 104 O O 0.0000 104 O -2.081373171 6.151779305 5.396202277 CORE 105 O O 0.0000 105 O -11.689114405 13.345582506 9.183771036 CORE 106 O O 0.0000 106 O -9.244336951 17.806783689 5.287809704 CORE 107 O O 0.0000 107 O 0.546584022 10.743003325 9.176581835 CORE 108 O O 0.0000 108 O2 12.682154730 5.838274400 4.876238269 CORE 109 O2 O2 0.0000 109 O2 13.637902559 7.327977917 2.714951162 CORE 110 O2 O2 0.0000 110 H 13.216251148 6.651160565 3.291969830 CORE 111 H H 0.0000 111 H 13.600935296 8.130534334 3.271488083 CORE 112 H H 0.0000 112 C 13.877355703 5.635044138 5.692775869 CORE 113 C C 0.0000 113 C 12.884493199 4.550565658 5.525505643 CORE 114 C C 0.0000 114 H 13.099810007 3.705071475 4.842835892 CORE 115 H H 0.0000 115 H 12.183126905 4.340458988 6.356549751 CORE 116 H H 0.0000 116 H 14.819208189 5.592618672 5.112732420 CORE 117 H H 0.0000 117 H 13.900835992 6.199248056 6.648546005 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.314232786 4.750385392 3.522962442 CORE 1 Si Si 0.0000 1 Si -2.579939319 12.060326000 7.335249179 CORE 2 Si Si 0.0000 2 Si 1.076131026 4.794923771 3.484246576 CORE 3 Si Si 0.0000 3 Si -8.625487102 12.024966208 7.324308175 CORE 4 Si Si 0.0000 4 Si -13.619005554 7.694592926 11.079921526 CORE 5 Si Si 0.0000 5 Si -4.012756351 14.910721823 7.322537976 CORE 6 Si Si 0.0000 6 Si -7.152127168 9.188114187 7.221411437 CORE 7 Si Si 0.0000 7 Si 2.423669827 16.362216042 3.530399942 CORE 8 Si Si 0.0000 8 Si -13.631579373 16.324729066 3.447074290 CORE 9 Si Si 0.0000 9 Si -3.927620338 9.154544994 7.317383249 CORE 10 Si Si 0.0000 10 Si -7.234076667 14.903716403 7.267011301 CORE 11 Si Si 0.0000 11 Si 2.412643463 7.722241985 3.480168727 CORE 12 Si Si 0.0000 12 Si -10.233470437 4.579658641 5.830878047 CORE 13 Si Si 0.0000 13 Si -0.298279341 12.076854230 9.567795978 CORE 14 Si Si 0.0000 14 Si -10.789043401 12.045443933 9.595029510 CORE 15 Si Si 0.0000 15 Si -1.230435070 4.795744114 5.717796767 CORE 16 Si Si 0.0000 16 Si -9.960560431 4.674998315 8.880326833 CORE 17 Si Si 0.0000 17 Si -0.289774015 12.024193289 5.084686436 CORE 18 Si Si 0.0000 18 Si -11.009315684 12.026506855 5.098798356 CORE 19 Si Si 0.0000 19 Si -1.221841027 4.773706137 8.867506542 CORE 20 Si Si 0.0000 20 Ti -9.033918846 7.646721427 5.011698460 CORE 21 Ti Ti 0.0000 21 Si 0.685587293 14.957328140 8.902229304 CORE 22 Si Si 0.0000 22 Si -2.270528924 16.320714849 5.101292839 CORE 23 Si Si 0.0000 23 Si -11.863633707 9.144828162 8.806046162 CORE 24 Si Si 0.0000 24 Si 0.730598012 9.127463300 5.725743874 CORE 25 Si Si 0.0000 25 Si -9.009171303 16.264485972 9.542313094 CORE 26 Si Si 0.0000 26 Si -11.866526164 14.919563537 5.733461016 CORE 27 Si Si 0.0000 27 Si -2.216950141 7.713681503 9.530661348 CORE 28 Si Si 0.0000 28 Si -12.044227554 9.188074114 5.710778729 CORE 29 Si Si 0.0000 29 Si -2.223007752 16.296541040 9.545876695 CORE 30 Si Si 0.0000 30 Si 0.619180856 14.955404493 5.765648672 CORE 31 Si Si 0.0000 31 Si -9.028012113 7.625954398 9.226475137 CORE 32 Si Si 0.0000 32 Si -2.157326257 7.756155979 5.067091476 CORE 33 Si Si 0.0000 33 Si -11.896310394 14.926947920 8.849536850 CORE 34 Si Si 0.0000 34 Si -8.988305003 16.215286731 5.061750144 CORE 35 Si Si 0.0000 35 Si 0.639662073 9.144125875 8.863464600 CORE 36 Si Si 0.0000 36 O -15.226599957 7.768955404 3.357235644 CORE 37 O O 0.0000 37 O -5.624175996 14.995478338 7.387620304 CORE 38 O O 0.0000 38 O -15.226601112 16.114611729 3.610646496 CORE 39 O O 0.0000 39 O -5.537712492 9.104881166 7.280017056 CORE 40 O O 0.0000 40 O -10.588461383 4.339992094 7.407705487 CORE 41 O O 0.0000 41 O -0.746665104 12.020186712 3.523178867 CORE 42 O O 0.0000 42 O -10.427462733 12.077878686 3.576343957 CORE 43 O O 0.0000 43 O -0.815767126 4.763697838 7.290288929 CORE 44 O O 0.0000 44 O -13.142250807 6.139131811 3.484250532 CORE 45 O O 0.0000 45 O -3.559203616 13.348933357 7.258419102 CORE 46 O O 0.0000 46 O -7.634854849 10.745429759 7.282418883 CORE 47 O O 0.0000 47 O 2.114633546 17.964010459 3.505454964 CORE 48 O O 0.0000 48 O -3.463124376 10.709594568 7.406559003 CORE 49 O O 0.0000 49 O -13.316866332 17.914306414 3.257062517 CORE 50 O O 0.0000 50 O 1.914400432 6.174450521 3.494779224 CORE 51 O O 0.0000 51 O -7.716788375 13.357741196 7.139918668 CORE 52 O O 0.0000 52 O -11.639371641 4.552457448 5.000446245 CORE 53 O O 0.0000 53 O -1.652827974 12.192566401 8.671293746 CORE 54 O O 0.0000 54 O 0.116554491 4.733939470 4.807678530 CORE 55 O O 0.0000 55 O -9.370562027 12.077618932 8.781668227 CORE 56 O O 0.0000 56 O -1.629131954 11.995313212 6.010799684 CORE 57 O O 0.0000 57 O -11.157029621 4.796144411 9.976648518 CORE 58 O O 0.0000 58 O -9.754567227 11.948318850 6.141902157 CORE 59 O O 0.0000 59 O 0.151852865 4.720675170 9.743327413 CORE 60 O O 0.0000 60 O -10.565678902 8.551928675 5.394113639 CORE 61 O O 0.0000 61 O -0.779804430 15.618645465 9.199971821 CORE 62 O O 0.0000 62 O -10.438467735 8.350976951 8.830067548 CORE 63 O O 0.0000 63 O -0.859613741 15.609929736 5.515414518 CORE 64 O O 0.0000 64 O -0.700311114 8.420120283 5.376637047 CORE 65 O O 0.0000 65 O -10.507404831 15.725786343 9.182576398 CORE 66 O O 0.0000 66 O -10.314097065 15.391655386 5.528592956 CORE 67 O O 0.0000 67 O -0.800829690 8.449172617 9.171312012 CORE 68 O O 0.0000 68 O -12.431357109 9.086547922 7.287597343 CORE 69 O O 0.0000 69 O -2.555919797 16.083418518 3.517227970 CORE 70 O O 0.0000 70 O -8.822607023 7.724704455 3.227315256 CORE 71 O O 0.0000 71 O 1.029448339 15.136953110 7.325587405 CORE 72 O O 0.0000 72 O -2.526572612 7.953383942 3.499906869 CORE 73 O O 0.0000 73 O -12.282810844 15.132881667 7.286445383 CORE 74 O O 0.0000 74 O 1.036038447 8.926552081 7.304975346 CORE 75 O O 0.0000 75 O -8.679776393 15.935320460 3.492270668 CORE 76 O O 0.0000 76 O -13.195535533 8.405775309 4.874246167 CORE 77 O O 0.0000 77 O -3.397671315 15.602994084 8.666722722 CORE 78 O O 0.0000 78 O 1.720504359 15.693161604 4.838364217 CORE 79 O O 0.0000 79 O -7.813133383 8.359936289 8.456220073 CORE 80 O O 0.0000 80 O -3.314828676 8.463908518 5.964987654 CORE 81 O O 0.0000 81 O -13.115764710 15.526604029 9.731769616 CORE 82 O O 0.0000 82 O -7.698671546 15.735986935 5.934384505 CORE 83 O O 0.0000 83 O 1.782152579 8.476201842 9.792016112 CORE 84 O O 0.0000 84 O -7.674682623 8.527998186 5.825563950 CORE 85 O O 0.0000 85 O 1.838368443 15.688950626 9.773152496 CORE 86 O O 0.0000 86 O -3.482272137 15.685539521 5.981618628 CORE 87 O O 0.0000 87 O -12.928776281 8.448732391 9.812742964 CORE 88 O O 0.0000 88 O 1.926775839 8.451776496 4.860690410 CORE 89 O O 0.0000 89 O -7.892883229 15.551767986 8.608178036 CORE 90 O O 0.0000 90 O -12.863783742 15.760233106 4.770931944 CORE 91 O O 0.0000 91 O -3.389224492 8.362541609 8.627472525 CORE 92 O O 0.0000 92 O -9.447454440 5.984243545 5.625860278 CORE 93 O O 0.0000 93 O 0.653706753 13.374292923 9.305384343 CORE 94 O O 0.0000 94 O -2.188141226 17.929149272 5.384132742 CORE 95 O O 0.0000 95 O -11.642313942 10.706199320 9.232251221 CORE 96 O O 0.0000 96 O 0.641822467 10.721617904 5.384103987 CORE 97 O O 0.0000 97 O -8.944149320 17.882912261 9.309389619 CORE 98 O O 0.0000 98 O -11.940357538 13.335395897 5.372618459 CORE 99 O O 0.0000 99 O -2.072800104 6.118079370 9.215030231 CORE 100 O O 0.0000 100 O -12.009851764 10.758175128 5.268480831 CORE 101 O O 0.0000 101 O -2.162098524 17.893934493 9.200106469 CORE 102 O O 0.0000 102 O 0.578588881 13.365271890 5.400427401 CORE 103 O O 0.0000 103 O -9.091240503 6.048425035 8.802557493 CORE 104 O O 0.0000 104 O -2.082580575 6.151076586 5.393730235 CORE 105 O O 0.0000 105 O -11.688775701 13.344494626 9.185714832 CORE 106 O O 0.0000 106 O -9.251035021 17.807963247 5.280125502 CORE 107 O O 0.0000 107 O 0.545745344 10.742174478 9.178119406 CORE 108 O O 0.0000 108 O2 12.683443538 5.844971345 4.878486201 CORE 109 O2 O2 0.0000 109 O2 13.640844282 7.316797700 2.703662889 CORE 110 O2 O2 0.0000 110 H 13.222052421 6.644680274 3.290124091 CORE 111 H H 0.0000 111 H 13.616020915 8.124369582 3.252792739 CORE 112 H H 0.0000 112 C 13.874256559 5.633469183 5.697161430 CORE 113 C C 0.0000 113 C 12.882364173 4.552105296 5.517525444 CORE 114 C C 0.0000 114 H 13.099901804 3.708858083 4.829936182 CORE 115 H H 0.0000 115 H 12.175272622 4.337510885 6.343528097 CORE 116 H H 0.0000 116 H 14.819437392 5.594893895 5.121405027 CORE 117 H H 0.0000 117 H 13.894481245 6.192093011 6.657096973 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.316484592 4.753665899 3.523384034 CORE 1 Si Si 0.0000 1 Si -2.582684940 12.061392402 7.334134037 CORE 2 Si Si 0.0000 2 Si 1.075696099 4.795314698 3.484963556 CORE 3 Si Si 0.0000 3 Si -8.625317749 12.027074219 7.324768792 CORE 4 Si Si 0.0000 4 Si -13.620449089 7.696138475 11.078252122 CORE 5 Si Si 0.0000 5 Si -4.015029711 14.913316476 7.321595442 CORE 6 Si Si 0.0000 6 Si -7.151647786 9.189721143 7.223119865 CORE 7 Si Si 0.0000 7 Si 2.422887536 16.363437691 3.528903450 CORE 8 Si Si 0.0000 8 Si -13.631915576 16.325672511 3.444743743 CORE 9 Si Si 0.0000 9 Si -3.927867630 9.156644501 7.315771584 CORE 10 Si Si 0.0000 10 Si -7.235851208 14.906556107 7.266616943 CORE 11 Si Si 0.0000 11 Si 2.411917366 7.721062715 3.480603860 CORE 12 Si Si 0.0000 12 Si -10.237861276 4.581804852 5.827819870 CORE 13 Si Si 0.0000 13 Si -0.298365942 12.078468537 9.566913541 CORE 14 Si Si 0.0000 14 Si -10.787496715 12.044457676 9.595516220 CORE 15 Si Si 0.0000 15 Si -1.229743806 4.795541586 5.715844603 CORE 16 Si Si 0.0000 16 Si -9.962909230 4.676114881 8.880277158 CORE 17 Si Si 0.0000 17 Si -0.288581622 12.024752005 5.085800361 CORE 18 Si Si 0.0000 18 Si -11.008965048 12.024553658 5.098617761 CORE 19 Si Si 0.0000 19 Si -1.222388535 4.774688069 8.867792878 CORE 20 Si Si 0.0000 20 Ti -9.029666953 7.647593231 5.013343749 CORE 21 Ti Ti 0.0000 21 Si 0.685227612 14.959986362 8.899871295 CORE 22 Si Si 0.0000 22 Si -2.269906939 16.320063015 5.101339851 CORE 23 Si Si 0.0000 23 Si -11.858399186 9.141536700 8.806255437 CORE 24 Si Si 0.0000 24 Si 0.730783145 9.125486750 5.724590772 CORE 25 Si Si 0.0000 25 Si -9.010679306 16.264229677 9.542309519 CORE 26 Si Si 0.0000 26 Si -11.870755542 14.918548306 5.735475711 CORE 27 Si Si 0.0000 27 Si -2.218147153 7.714369662 9.529602500 CORE 28 Si Si 0.0000 28 Si -12.043809562 9.184144800 5.709737149 CORE 29 Si Si 0.0000 29 Si -2.223766180 16.296010001 9.545758631 CORE 30 Si Si 0.0000 30 Si 0.620548375 14.956339000 5.764390971 CORE 31 Si Si 0.0000 31 Si -9.021374279 7.622053481 9.228238490 CORE 32 Si Si 0.0000 32 Si -2.157846630 7.756479301 5.067239969 CORE 33 Si Si 0.0000 33 Si -11.896916983 14.924328185 8.851568053 CORE 34 Si Si 0.0000 34 Si -8.993530286 16.217274668 5.060499670 CORE 35 Si Si 0.0000 35 Si 0.640606788 9.142709195 8.862594638 CORE 36 Si Si 0.0000 36 O -15.226256442 7.767827883 3.356941321 CORE 37 O O 0.0000 37 O -5.624853019 14.999416301 7.381750803 CORE 38 O O 0.0000 38 O -15.227007365 16.115038550 3.610581226 CORE 39 O O 0.0000 39 O -5.534590062 9.104572403 7.277413258 CORE 40 O O 0.0000 40 O -10.584704460 4.339538318 7.405169469 CORE 41 O O 0.0000 41 O -0.747683526 12.025188627 3.523572541 CORE 42 O O 0.0000 42 O -10.425749389 12.073960615 3.577550462 CORE 43 O O 0.0000 43 O -0.819317555 4.766701005 7.289965242 CORE 44 O O 0.0000 44 O -13.144273218 6.142126474 3.484666190 CORE 45 O O 0.0000 45 O -3.559089881 13.351859982 7.256821358 CORE 46 O O 0.0000 46 O -7.634060819 10.750140784 7.281962221 CORE 47 O O 0.0000 47 O 2.113867420 17.965271460 3.503019438 CORE 48 O O 0.0000 48 O -3.463902434 10.709506062 7.405469573 CORE 49 O O 0.0000 49 O -13.314387632 17.916561456 3.251090700 CORE 50 O O 0.0000 50 O 1.913300220 6.175353893 3.493953081 CORE 51 O O 0.0000 51 O -7.716980051 13.359461452 7.137821206 CORE 52 O O 0.0000 52 O -11.644123893 4.557346496 5.002009757 CORE 53 O O 0.0000 53 O -1.653807137 12.192206033 8.670149773 CORE 54 O O 0.0000 54 O 0.117541160 4.734051473 4.811131750 CORE 55 O O 0.0000 55 O -9.366784127 12.078228099 8.783946665 CORE 56 O O 0.0000 56 O -1.629692355 11.999132541 6.009929418 CORE 57 O O 0.0000 57 O -11.157726659 4.797046197 9.977258997 CORE 58 O O 0.0000 58 O -9.755008120 11.949052127 6.142638992 CORE 59 O O 0.0000 59 O 0.147634457 4.723163154 9.744575834 CORE 60 O O 0.0000 60 O -10.563660340 8.546352332 5.392431836 CORE 61 O O 0.0000 61 O -0.782319309 15.617474988 9.198048945 CORE 62 O O 0.0000 62 O -10.434601503 8.344908489 8.838266834 CORE 63 O O 0.0000 63 O -0.859520213 15.611401481 5.514278000 CORE 64 O O 0.0000 64 O -0.699995696 8.417279570 5.375156911 CORE 65 O O 0.0000 65 O -10.507672523 15.723942842 9.181030612 CORE 66 O O 0.0000 66 O -10.316192990 15.390789204 5.531031602 CORE 67 O O 0.0000 67 O -0.800319709 8.447015595 9.170498876 CORE 68 O O 0.0000 68 O -12.428938645 9.084118173 7.290929457 CORE 69 O O 0.0000 69 O -2.554999138 16.081703596 3.517317506 CORE 70 O O 0.0000 70 O -8.814875905 7.720831503 3.230489443 CORE 71 O O 0.0000 71 O 1.031254249 15.137864410 7.324541641 CORE 72 O O 0.0000 72 O -2.527668782 7.955987389 3.499154059 CORE 73 O O 0.0000 73 O -12.285504313 15.130124992 7.288768855 CORE 74 O O 0.0000 74 O 1.035505372 8.927758018 7.304520358 CORE 75 O O 0.0000 75 O -8.679434032 15.930570947 3.493824519 CORE 76 O O 0.0000 76 O -13.196537597 8.403842148 4.870877615 CORE 77 O O 0.0000 77 O -3.400119800 15.604260419 8.666883843 CORE 78 O O 0.0000 78 O 1.719252693 15.693961910 4.836763050 CORE 79 O O 0.0000 79 O -7.814009203 8.360976600 8.457893128 CORE 80 O O 0.0000 80 O -3.313826804 8.464469972 5.965963888 CORE 81 O O 0.0000 81 O -13.115906350 15.524643336 9.730604723 CORE 82 O O 0.0000 82 O -7.705427734 15.742573174 5.938090360 CORE 83 O O 0.0000 83 O 1.781473630 8.477031698 9.790914435 CORE 84 O O 0.0000 84 O -7.673724051 8.529935960 5.830551089 CORE 85 O O 0.0000 85 O 1.836374707 15.689464655 9.770859149 CORE 86 O O 0.0000 86 O -3.484017618 15.688038749 5.980362144 CORE 87 O O 0.0000 87 O -12.930094341 8.453812578 9.813952892 CORE 88 O O 0.0000 88 O 1.925313830 8.451229456 4.860435645 CORE 89 O O 0.0000 89 O -7.892451573 15.551000978 8.609312424 CORE 90 O O 0.0000 90 O -12.866047864 15.759221623 4.770858686 CORE 91 O O 0.0000 91 O -3.388199719 8.363654571 8.624386505 CORE 92 O O 0.0000 92 O -9.447471760 5.979931375 5.625250484 CORE 93 O O 0.0000 93 O 0.652611930 13.375465418 9.304703040 CORE 94 O O 0.0000 94 O -2.186329350 17.928229035 5.384436955 CORE 95 O O 0.0000 95 O -11.635208081 10.703684669 9.224896792 CORE 96 O O 0.0000 96 O 0.640058511 10.720108536 5.384259022 CORE 97 O O 0.0000 97 O -8.947199005 17.884162595 9.311694681 CORE 98 O O 0.0000 98 O -11.938622063 13.333701445 5.369352224 CORE 99 O O 0.0000 99 O -2.078193585 6.117297659 9.218179163 CORE 100 O O 0.0000 100 O -12.007110954 10.756525506 5.268094612 CORE 101 O O 0.0000 101 O -2.160935767 17.894185741 9.200007119 CORE 102 O O 0.0000 102 O 0.581642223 13.363120489 5.401468601 CORE 103 O O 0.0000 103 O -9.085732902 6.045267198 8.805154292 CORE 104 O O 0.0000 104 O -2.084512344 6.149952236 5.389774939 CORE 105 O O 0.0000 105 O -11.688233582 13.342754046 9.188824966 CORE 106 O O 0.0000 106 O -9.261751740 17.809850425 5.267830870 CORE 107 O O 0.0000 107 O 0.544403613 10.740848177 9.180579428 CORE 108 O O 0.0000 108 O2 12.685505400 5.855686398 4.882082893 CORE 109 O2 O2 0.0000 109 O2 13.645551309 7.298909151 2.685601606 CORE 110 O2 O2 0.0000 110 H 13.231334458 6.634311895 3.287171046 CORE 111 H H 0.0000 111 H 13.640157829 8.114506007 3.222880096 CORE 112 H H 0.0000 112 C 13.869298005 5.630949487 5.704178403 CORE 113 C C 0.0000 113 C 12.878957886 4.554568631 5.504757187 CORE 114 C C 0.0000 114 H 13.100048832 3.714916599 4.809296661 CORE 115 H H 0.0000 115 H 12.162705732 4.332793949 6.322693375 CORE 116 H H 0.0000 116 H 14.819804578 5.598534338 5.135281276 CORE 117 H H 0.0000 117 H 13.884313574 6.180644968 6.670778477 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.314352487 4.750559666 3.522984807 CORE 1 Si Si 0.0000 1 Si -2.580085193 12.060382650 7.335189995 CORE 2 Si Si 0.0000 2 Si 1.076107932 4.794944528 3.484284688 CORE 3 Si Si 0.0000 3 Si -8.625478249 12.025078210 7.324332670 CORE 4 Si Si 0.0000 4 Si -13.619082148 7.694675090 11.079832826 CORE 5 Si Si 0.0000 5 Si -4.012877014 14.910859628 7.322487920 CORE 6 Si Si 0.0000 6 Si -7.152101765 9.188199523 7.221502191 CORE 7 Si Si 0.0000 7 Si 2.423628259 16.362280908 3.530320446 CORE 8 Si Si 0.0000 8 Si -13.631597271 16.324779229 3.446950521 CORE 9 Si Si 0.0000 9 Si -3.927633424 9.154656564 7.317297668 CORE 10 Si Si 0.0000 10 Si -7.234170965 14.903867181 7.266990382 CORE 11 Si Si 0.0000 11 Si 2.412604974 7.722179281 3.480191777 CORE 12 Si Si 0.0000 12 Si -10.233703681 4.579772662 5.830715633 CORE 13 Si Si 0.0000 13 Si -0.298283960 12.076939998 9.567749117 CORE 14 Si Si 0.0000 14 Si -10.788961226 12.045391463 9.595055375 CORE 15 Si Si 0.0000 15 Si -1.230398313 4.795733303 5.717693080 CORE 16 Si Si 0.0000 16 Si -9.960685136 4.675057559 8.880324246 CORE 17 Si Si 0.0000 17 Si -0.289710700 12.024222840 5.084745620 CORE 18 Si Si 0.0000 18 Si -11.009297017 12.026403069 5.098788771 CORE 19 Si Si 0.0000 19 Si -1.221870086 4.773758318 8.867521757 CORE 20 Si Si 0.0000 20 Ti -9.033693107 7.646767698 5.011785867 CORE 21 Ti Ti 0.0000 21 Si 0.685568241 14.957469260 8.902104013 CORE 22 Si Si 0.0000 22 Si -2.270495823 16.320680254 5.101295273 CORE 23 Si Si 0.0000 23 Si -11.863355815 9.144653311 8.806057269 CORE 24 Si Si 0.0000 24 Si 0.730607827 9.127358216 5.725682636 CORE 25 Si Si 0.0000 25 Si -9.009251552 16.264472278 9.542312942 CORE 26 Si Si 0.0000 26 Si -11.866750748 14.919509625 5.733568049 CORE 27 Si Si 0.0000 27 Si -2.217013648 7.713717972 9.530605131 CORE 28 Si Si 0.0000 28 Si -12.044205230 9.187865389 5.710723424 CORE 29 Si Si 0.0000 29 Si -2.223047973 16.296512787 9.545870457 CORE 30 Si Si 0.0000 30 Si 0.619253408 14.955454224 5.765581881 CORE 31 Si Si 0.0000 31 Si -9.027659552 7.625747114 9.226568782 CORE 32 Si Si 0.0000 32 Si -2.157353970 7.756173132 5.067099387 CORE 33 Si Si 0.0000 33 Si -11.896342533 14.926808818 8.849644721 CORE 34 Si Si 0.0000 34 Si -8.988582702 16.215392247 5.061683733 CORE 35 Si Si 0.0000 35 Si 0.639712301 9.144050630 8.863418424 CORE 36 Si Si 0.0000 36 O -15.226581675 7.768895582 3.357219973 CORE 37 O O 0.0000 37 O -5.624211983 14.995687495 7.387308560 CORE 38 O O 0.0000 38 O -15.226622666 16.114634360 3.610642997 CORE 39 O O 0.0000 39 O -5.537546604 9.104864734 7.279878757 CORE 40 O O 0.0000 40 O -10.588261817 4.339968022 7.407570763 CORE 41 O O 0.0000 41 O -0.746719373 12.020452376 3.523199787 CORE 42 O O 0.0000 42 O -10.427371706 12.077670537 3.576408010 CORE 43 O O 0.0000 43 O -0.815955723 4.763857409 7.290271737 CORE 44 O O 0.0000 44 O -13.142358192 6.139290950 3.484272669 CORE 45 O O 0.0000 45 O -3.559197651 13.349088748 7.258334205 CORE 46 O O 0.0000 46 O -7.634812704 10.745679999 7.282394616 CORE 47 O O 0.0000 47 O 2.114592940 17.964077487 3.505325566 CORE 48 O O 0.0000 48 O -3.463165559 10.709589956 7.406501112 CORE 49 O O 0.0000 49 O -13.316734699 17.914426200 3.256745296 CORE 50 O O 0.0000 50 O 1.914341929 6.174498522 3.494735407 CORE 51 O O 0.0000 51 O -7.716798575 13.357832586 7.139807298 CORE 52 O O 0.0000 52 O -11.639624130 4.552717058 5.000529316 CORE 53 O O 0.0000 53 O -1.652879934 12.192547230 8.671232965 CORE 54 O O 0.0000 54 O 0.116606836 4.733945380 4.807861940 CORE 55 O O 0.0000 55 O -9.370361499 12.077651365 8.781789258 CORE 56 O O 0.0000 56 O -1.629161783 11.995516027 6.010753432 CORE 57 O O 0.0000 57 O -11.157066763 4.796192268 9.976681001 CORE 58 O O 0.0000 58 O -9.754590706 11.948357769 6.141941259 CORE 59 O O 0.0000 59 O 0.151628858 4.720807209 9.743393748 CORE 60 O O 0.0000 60 O -10.565571517 8.551632596 5.394024330 CORE 61 O O 0.0000 61 O -0.779937987 15.618583338 9.199869733 CORE 62 O O 0.0000 62 O -10.438262395 8.350654637 8.830503061 CORE 63 O O 0.0000 63 O -0.859608738 15.610007864 5.515354193 CORE 64 O O 0.0000 64 O -0.700294372 8.419969360 5.376558465 CORE 65 O O 0.0000 65 O -10.507419072 15.725688323 9.182494316 CORE 66 O O 0.0000 66 O -10.314208491 15.391609403 5.528722431 CORE 67 O O 0.0000 67 O -0.800802748 8.449058020 9.171268803 CORE 68 O O 0.0000 68 O -12.431228748 9.086418910 7.287774363 CORE 69 O O 0.0000 69 O -2.555870916 16.083327417 3.517232762 CORE 70 O O 0.0000 70 O -8.822196344 7.724498757 3.227483908 CORE 71 O O 0.0000 71 O 1.029544370 15.137001544 7.325531872 CORE 72 O O 0.0000 72 O -2.526630923 7.953522180 3.499866855 CORE 73 O O 0.0000 73 O -12.282954024 15.132735213 7.286568848 CORE 74 O O 0.0000 74 O 1.036010157 8.926616227 7.304951155 CORE 75 O O 0.0000 75 O -8.679758111 15.935068202 3.492353131 CORE 76 O O 0.0000 76 O -13.195588840 8.405672532 4.874067245 CORE 77 O O 0.0000 77 O -3.397801408 15.603061400 8.666731318 CORE 78 O O 0.0000 78 O 1.720437966 15.693204127 4.838279169 CORE 79 O O 0.0000 79 O -7.813179955 8.359991497 8.456308925 CORE 80 O O 0.0000 80 O -3.314775561 8.463938357 5.965039535 CORE 81 O O 0.0000 81 O -13.115772216 15.526499954 9.731707694 CORE 82 O O 0.0000 82 O -7.699030264 15.736336636 5.934581379 CORE 83 O O 0.0000 83 O 1.782116399 8.476245951 9.791957613 CORE 84 O O 0.0000 84 O -7.674631625 8.528101108 5.825828833 CORE 85 O O 0.0000 85 O 1.838262406 15.688978014 9.773030705 CORE 86 O O 0.0000 86 O -3.482364703 15.685672281 5.981551912 CORE 87 O O 0.0000 87 O -12.928846331 8.449002234 9.812807245 CORE 88 O O 0.0000 88 O 1.926698284 8.451747522 4.860676869 CORE 89 O O 0.0000 89 O -7.892860328 15.551727192 8.608238285 CORE 90 O O 0.0000 90 O -12.863904020 15.760179339 4.770928064 CORE 91 O O 0.0000 91 O -3.389170030 8.362600709 8.627308665 CORE 92 O O 0.0000 92 O -9.447455402 5.984014495 5.625827871 CORE 93 O O 0.0000 93 O 0.653648635 13.374355194 9.305348132 CORE 94 O O 0.0000 94 O -2.188045003 17.929100406 5.384148870 CORE 95 O O 0.0000 95 O -11.641936557 10.706065696 9.231860590 CORE 96 O O 0.0000 96 O 0.641728746 10.721537758 5.384112203 CORE 97 O O 0.0000 97 O -8.944311359 17.882978713 9.309512019 CORE 98 O O 0.0000 98 O -11.940265356 13.335305949 5.372444938 CORE 99 O O 0.0000 99 O -2.073086463 6.118037856 9.215197438 CORE 100 O O 0.0000 100 O -12.009706276 10.758087487 5.268460291 CORE 101 O O 0.0000 101 O -2.162036749 17.893947898 9.200101144 CORE 102 O O 0.0000 102 O 0.578750920 13.365157581 5.400482706 CORE 103 O O 0.0000 103 O -9.090947986 6.048257248 8.802695412 CORE 104 O O 0.0000 104 O -2.082683149 6.151016909 5.393520124 CORE 105 O O 0.0000 105 O -11.688746834 13.344402227 9.185880061 CORE 106 O O 0.0000 106 O -9.251604083 17.808063430 5.279472499 CORE 107 O O 0.0000 107 O 0.545674139 10.742103990 9.178250022 CORE 108 O O 0.0000 108 O2 12.683553039 5.845540439 4.878677218 CORE 109 O2 O2 0.0000 109 O2 13.641094269 7.315847480 2.702703543 CORE 110 O2 O2 0.0000 110 H 13.222545467 6.644129631 3.289967306 CORE 111 H H 0.0000 111 H 13.617302796 8.123845750 3.251203895 CORE 112 H H 0.0000 112 C 13.873993293 5.633335415 5.697534107 CORE 113 C C 0.0000 113 C 12.882183274 4.552236038 5.516847337 CORE 114 C C 0.0000 114 H 13.099909694 3.709179820 4.828839982 CORE 115 H H 0.0000 115 H 12.174605221 4.337260357 6.342421475 CORE 116 H H 0.0000 116 H 14.819457021 5.595087341 5.122142091 CORE 117 H H 0.0000 117 H 13.893941243 6.191484997 6.657823614 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.315386690 4.753253637 3.522657240 CORE 1 Si Si 0.0000 1 Si -2.580410811 12.061851512 7.334572593 CORE 2 Si Si 0.0000 2 Si 1.074572794 4.795922424 3.484498679 CORE 3 Si Si 0.0000 3 Si -8.624952488 12.027176997 7.325592349 CORE 4 Si Si 0.0000 4 Si -13.620130784 7.695392512 11.077976361 CORE 5 Si Si 0.0000 5 Si -4.013633518 14.912641145 7.321878582 CORE 6 Si Si 0.0000 6 Si -7.150616855 9.191838812 7.223747765 CORE 7 Si Si 0.0000 7 Si 2.423416954 16.362201771 3.529846060 CORE 8 Si Si 0.0000 8 Si -13.631251061 16.326346688 3.447272687 CORE 9 Si Si 0.0000 9 Si -3.927266815 9.155133404 7.316604803 CORE 10 Si Si 0.0000 10 Si -7.235784237 14.906418158 7.266790007 CORE 11 Si Si 0.0000 11 Si 2.412513178 7.721928897 3.479665890 CORE 12 Si Si 0.0000 12 Si -10.236736624 4.579814897 5.828432936 CORE 13 Si Si 0.0000 13 Si -0.299454991 12.077949895 9.567579933 CORE 14 Si Si 0.0000 14 Si -10.787173984 12.044531336 9.595033390 CORE 15 Si Si 0.0000 15 Si -1.231857436 4.796486617 5.717399366 CORE 16 Si Si 0.0000 16 Si -9.962786642 4.675214248 8.880331473 CORE 17 Si Si 0.0000 17 Si -0.289726289 12.024669552 5.084468870 CORE 18 Si Si 0.0000 18 Si -11.009180202 12.025939203 5.098411301 CORE 19 Si Si 0.0000 19 Si -1.224082441 4.775299398 8.867164522 CORE 20 Si Si 0.0000 20 Ti -9.033870927 7.648295805 5.011759850 CORE 21 Ti Ti 0.0000 21 Si 0.684002888 14.957694563 8.900954106 CORE 22 Si Si 0.0000 22 Si -2.270425195 16.320038077 5.101118177 CORE 23 Si Si 0.0000 23 Si -11.858938226 9.142971831 8.806536295 CORE 24 Si Si 0.0000 24 Si 0.729938501 9.126660975 5.724628808 CORE 25 Si Si 0.0000 25 Si -9.008797381 16.265856237 9.542880745 CORE 26 Si Si 0.0000 26 Si -11.867887910 14.919259097 5.734396323 CORE 27 Si Si 0.0000 27 Si -2.217145089 7.713277602 9.532032016 CORE 28 Si Si 0.0000 28 Si -12.041946304 9.184021266 5.709755178 CORE 29 Si Si 0.0000 29 Si -2.224130672 16.296669908 9.546066039 CORE 30 Si Si 0.0000 30 Si 0.619188362 14.954360289 5.764390438 CORE 31 Si Si 0.0000 31 Si -9.024361804 7.622543870 9.229965633 CORE 32 Si Si 0.0000 32 Si -2.157699987 7.755090873 5.065402674 CORE 33 Si Si 0.0000 33 Si -11.895532144 14.925491743 8.850347323 CORE 34 Si Si 0.0000 34 Si -8.992199717 16.216113849 5.060326606 CORE 35 Si Si 0.0000 35 Si 0.639204822 9.143946988 8.863943094 CORE 36 Si Si 0.0000 36 O -15.228148567 7.767918984 3.356767040 CORE 37 O O 0.0000 37 O -5.625001395 14.999043247 7.382450211 CORE 38 O O 0.0000 38 O -15.227065483 16.116050753 3.610680120 CORE 39 O O 0.0000 39 O -5.539161223 9.104146447 7.278574728 CORE 40 O O 0.0000 40 O -10.585197505 4.339781927 7.407224939 CORE 41 O O 0.0000 41 O -0.746811555 12.023795154 3.523304462 CORE 42 O O 0.0000 42 O -10.426011308 12.075403675 3.576294586 CORE 43 O O 0.0000 43 O -0.817211045 4.765978538 7.289931085 CORE 44 O O 0.0000 44 O -13.144037665 6.140293351 3.483971043 CORE 45 O O 0.0000 45 O -3.558624355 13.351304582 7.257708588 CORE 46 O O 0.0000 46 O -7.632808768 10.747534743 7.281718106 CORE 47 O O 0.0000 47 O 2.114235376 17.963877987 3.503508886 CORE 48 O O 0.0000 48 O -3.463602026 10.710212096 7.405749215 CORE 49 O O 0.0000 49 O -13.315950290 17.915273354 3.252411237 CORE 50 O O 0.0000 50 O 1.912812948 6.175113455 3.493708509 CORE 51 O O 0.0000 51 O -7.716839373 13.358847239 7.138974460 CORE 52 O O 0.0000 52 O -11.643748432 4.557703405 5.000825389 CORE 53 O O 0.0000 53 O -1.653685319 12.191216173 8.670355396 CORE 54 O O 0.0000 54 O 0.118853254 4.733487135 4.809389393 CORE 55 O O 0.0000 55 O -9.368625062 12.077409054 8.782901965 CORE 56 O O 0.0000 56 O -1.629095389 11.998360055 6.010258050 CORE 57 O O 0.0000 57 O -11.157916026 4.797483540 9.976875670 CORE 58 O O 0.0000 58 O -9.755298713 11.948317264 6.142527471 CORE 59 O O 0.0000 59 O 0.150041952 4.722498923 9.745208298 CORE 60 O O 0.0000 60 O -10.564393942 8.548964427 5.393737006 CORE 61 O O 0.0000 61 O -0.780954677 15.617935539 9.198855615 CORE 62 O O 0.0000 62 O -10.435720959 8.346995022 8.836452361 CORE 63 O O 0.0000 63 O -0.857935616 15.610681897 5.515079344 CORE 64 O O 0.0000 64 O -0.700406567 8.418870957 5.375756283 CORE 65 O O 0.0000 65 O -10.507585345 15.725093427 9.182534102 CORE 66 O O 0.0000 66 O -10.316530347 15.390396546 5.530446987 CORE 67 O O 0.0000 67 O -0.800008717 8.447579788 9.170507625 CORE 68 O O 0.0000 68 O -12.430477632 9.083475420 7.287828222 CORE 69 O O 0.0000 69 O -2.554813812 16.082577994 3.516940949 CORE 70 O O 0.0000 70 O -8.817879981 7.721054787 3.230793200 CORE 71 O O 0.0000 71 O 1.029966980 15.136964210 7.324175810 CORE 72 O O 0.0000 72 O -2.526689234 7.954341081 3.499980431 CORE 73 O O 0.0000 73 O -12.284649470 15.131519186 7.287981812 CORE 74 O O 0.0000 74 O 1.035996494 8.927093643 7.304181533 CORE 75 O O 0.0000 75 O -8.678561291 15.931766794 3.492192542 CORE 76 O O 0.0000 76 O -13.194301571 8.404973129 4.874357536 CORE 77 O O 0.0000 77 O -3.399376768 15.604702230 8.666470619 CORE 78 O O 0.0000 78 O 1.720633106 15.694357883 4.836696259 CORE 79 O O 0.0000 79 O -7.812778706 8.362252738 8.456693622 CORE 80 O O 0.0000 80 O -3.313796012 8.463648909 5.965005835 CORE 81 O O 0.0000 81 O -13.117707256 15.525376613 9.731597921 CORE 82 O O 0.0000 82 O -7.702380935 15.739880933 5.937093206 CORE 83 O O 0.0000 83 O 1.782606365 8.476298853 9.792656488 CORE 84 O O 0.0000 84 O -7.673527564 8.529020047 5.828181898 CORE 85 O O 0.0000 85 O 1.837671213 15.691014384 9.772411173 CORE 86 O O 0.0000 86 O -3.483226282 15.687116206 5.980596598 CORE 87 O O 0.0000 87 O -12.929138078 8.453372351 9.813187454 CORE 88 O O 0.0000 88 O 1.926280677 8.449654501 4.859741638 CORE 89 O O 0.0000 89 O -7.893609134 15.551934332 8.608865424 CORE 90 O O 0.0000 90 O -12.866075769 15.759682462 4.769792003 CORE 91 O O 0.0000 91 O -3.388619635 8.362426579 8.626083143 CORE 92 O O 0.0000 92 O -9.445281344 5.983102186 5.624751526 CORE 93 O O 0.0000 93 O 0.652538993 13.375627439 9.305012274 CORE 94 O O 0.0000 94 O -2.187078926 17.928654414 5.384818533 CORE 95 O O 0.0000 95 O -11.636044064 10.704512507 9.225214013 CORE 96 O O 0.0000 96 O 0.640966662 10.720800156 5.384338670 CORE 97 O O 0.0000 97 O -8.946689024 17.881939842 9.312400327 CORE 98 O O 0.0000 98 O -11.939256556 13.334772892 5.370929124 CORE 99 O O 0.0000 99 O -2.076624576 6.117583359 9.216818612 CORE 100 O O 0.0000 100 O -12.008961511 10.754947524 5.267484818 CORE 101 O O 0.0000 101 O -2.159824971 17.894011323 9.200120923 CORE 102 O O 0.0000 102 O 0.581438038 13.364716490 5.400727658 CORE 103 O O 0.0000 103 O -9.088099598 6.046196084 8.803194445 CORE 104 O O 0.0000 104 O -2.084159784 6.150930565 5.392779409 CORE 105 O O 0.0000 105 O -11.689192731 13.342774371 9.188159639 CORE 106 O O 0.0000 106 O -9.257337999 17.807224348 5.272588195 CORE 107 O O 0.0000 107 O 0.544461346 10.741853173 9.179967427 CORE 108 O O 0.0000 108 O2 12.684000668 5.852583914 4.881904276 CORE 109 O2 O2 0.0000 109 O2 13.645706228 7.301782729 2.692127761 CORE 110 O2 O2 0.0000 110 H 13.229782576 6.635443164 3.289155921 CORE 111 H H 0.0000 111 H 13.632867989 8.119193105 3.230935531 CORE 112 H H 0.0000 112 C 13.871850796 5.633310621 5.703423539 CORE 113 C C 0.0000 113 C 12.879154180 4.552501558 5.508426148 CORE 114 C C 0.0000 114 H 13.100369254 3.714530860 4.814939314 CORE 115 H H 0.0000 115 H 12.167722211 4.334106844 6.328749785 CORE 116 H H 0.0000 116 H 14.818764025 5.598141104 5.132039612 CORE 117 H H 0.0000 117 H 13.886307118 6.183793724 6.665730327 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.315257174 4.752916188 3.522698243 CORE 1 Si Si 0.0000 1 Si -2.580370012 12.061667580 7.334649882 CORE 2 Si Si 0.0000 2 Si 1.074765047 4.795799899 3.484471902 CORE 3 Si Si 0.0000 3 Si -8.625018304 12.026914216 7.325434652 CORE 4 Si Si 0.0000 4 Si -13.619999536 7.695302708 11.078208837 CORE 5 Si Si 0.0000 5 Si -4.013538835 14.912418005 7.321954883 CORE 6 Si Si 0.0000 6 Si -7.150802757 9.191383018 7.223466602 CORE 7 Si Si 0.0000 7 Si 2.423443319 16.362211573 3.529905473 CORE 8 Si Si 0.0000 8 Si -13.631294361 16.326150360 3.447232368 CORE 9 Si Si 0.0000 9 Si -3.927312810 9.155073727 7.316691601 CORE 10 Si Si 0.0000 10 Si -7.235582169 14.906098727 7.266815111 CORE 11 Si Si 0.0000 11 Si 2.412524724 7.721960177 3.479731769 CORE 12 Si Si 0.0000 12 Si -10.236356929 4.579809564 5.828718739 CORE 13 Si Si 0.0000 13 Si -0.299308348 12.077823333 9.567601157 CORE 14 Si Si 0.0000 14 Si -10.787397798 12.044639014 9.595036129 CORE 15 Si Si 0.0000 15 Si -1.231674805 4.796392344 5.717436109 CORE 16 Si Si 0.0000 16 Si -9.962523569 4.675194499 8.880330560 CORE 17 Si Si 0.0000 17 Si -0.289724364 12.024613623 5.084503559 CORE 18 Si Si 0.0000 18 Si -11.009194828 12.025997294 5.098458542 CORE 19 Si Si 0.0000 19 Si -1.223805512 4.775106385 8.867209252 CORE 20 Si Si 0.0000 20 Ti -9.033848796 7.648104521 5.011763122 CORE 21 Ti Ti 0.0000 21 Si 0.684198991 14.957666310 8.901098111 CORE 22 Si Si 0.0000 22 Si -2.270434048 16.320118511 5.101140314 CORE 23 Si Si 0.0000 23 Si -11.859491315 9.143182431 8.806476275 CORE 24 Si Si 0.0000 24 Si 0.730022215 9.126748184 5.724760794 CORE 25 Si Si 0.0000 25 Si -9.008854345 16.265682972 9.542809617 CORE 26 Si Si 0.0000 26 Si -11.867745500 14.919290521 5.734292560 CORE 27 Si Si 0.0000 27 Si -2.217128538 7.713332666 9.531853323 CORE 28 Si Si 0.0000 28 Si -12.042229199 9.184502718 5.709876437 CORE 29 Si Si 0.0000 29 Si -2.223994998 16.296650304 9.546041543 CORE 30 Si Si 0.0000 30 Si 0.619196444 14.954497229 5.764539616 CORE 31 Si Si 0.0000 31 Si -9.024774793 7.622944888 9.229540237 CORE 32 Si Si 0.0000 32 Si -2.157656687 7.755226372 5.065615143 CORE 33 Si Si 0.0000 33 Si -11.895633755 14.925656648 8.850259308 CORE 34 Si Si 0.0000 34 Si -8.991746700 16.216023468 5.060496551 CORE 35 Si Si 0.0000 35 Si 0.639268329 9.143959962 8.863877367 CORE 36 Si Si 0.0000 36 O -15.227952273 7.768041365 3.356823789 CORE 37 O O 0.0000 37 O -5.624902478 14.998623057 7.383058560 CORE 38 O O 0.0000 38 O -15.227010059 16.115873451 3.610675480 CORE 39 O O 0.0000 39 O -5.538958963 9.104236395 7.278738055 CORE 40 O O 0.0000 40 O -10.585581242 4.339805279 7.407268224 CORE 41 O O 0.0000 41 O -0.746800008 12.023376550 3.523291378 CORE 42 O O 0.0000 42 O -10.426181815 12.075687645 3.576308736 CORE 43 O O 0.0000 43 O -0.817053817 4.765713019 7.289973762 CORE 44 O O 0.0000 44 O -13.143827514 6.140167799 3.484008774 CORE 45 O O 0.0000 45 O -3.558696137 13.351027098 7.257786942 CORE 46 O O 0.0000 46 O -7.633059717 10.747302378 7.281802850 CORE 47 O O 0.0000 47 O 2.114280023 17.963903069 3.503736418 CORE 48 O O 0.0000 48 O -3.463547371 10.710134112 7.405843392 CORE 49 O O 0.0000 49 O -13.316048438 17.915167262 3.252954012 CORE 50 O O 0.0000 50 O 1.913004432 6.175036480 3.493837147 CORE 51 O O 0.0000 51 O -7.716834370 13.358720246 7.139078755 CORE 52 O O 0.0000 52 O -11.643231908 4.557078959 5.000788342 CORE 53 O O 0.0000 53 O -1.653584478 12.191382951 8.670465320 CORE 54 O O 0.0000 54 O 0.118571899 4.733544506 4.809198147 CORE 55 O O 0.0000 55 O -9.368842525 12.077439325 8.782762601 CORE 56 O O 0.0000 56 O -1.629103664 11.998003867 6.010320125 CORE 57 O O 0.0000 57 O -11.157809603 4.797321807 9.976851326 CORE 58 O O 0.0000 58 O -9.755209996 11.948322309 6.142454061 CORE 59 O O 0.0000 59 O 0.150240748 4.722287170 9.744981070 CORE 60 O O 0.0000 60 O -10.564541356 8.549298417 5.393772988 CORE 61 O O 0.0000 61 O -0.780827278 15.618016694 9.198982655 CORE 62 O O 0.0000 62 O -10.436039071 8.347453267 8.835707386 CORE 63 O O 0.0000 63 O -0.858144997 15.610597571 5.515113805 CORE 64 O O 0.0000 64 O -0.700392519 8.419008474 5.375856775 CORE 65 O O 0.0000 65 O -10.507564561 15.725167951 9.182529158 CORE 66 O O 0.0000 66 O -10.316239562 15.390548333 5.530231094 CORE 67 O O 0.0000 67 O -0.800108019 8.447764873 9.170602943 CORE 68 O O 0.0000 68 O -12.430571738 9.083844005 7.287821452 CORE 69 O O 0.0000 69 O -2.554946215 16.082671834 3.516977464 CORE 70 O O 0.0000 70 O -8.818420561 7.721486076 3.230378835 CORE 71 O O 0.0000 71 O 1.029914058 15.136968967 7.324345603 CORE 72 O O 0.0000 72 O -2.526681921 7.954238448 3.499966205 CORE 73 O O 0.0000 73 O -12.284437202 15.131671405 7.287804868 CORE 74 O O 0.0000 74 O 1.035998226 8.927033822 7.304277916 CORE 75 O O 0.0000 75 O -8.678711207 15.932180208 3.492212625 CORE 76 O O 0.0000 76 O -13.194462648 8.405060770 4.874321174 CORE 77 O O 0.0000 77 O -3.399179511 15.604496820 8.666503253 CORE 78 O O 0.0000 78 O 1.720608665 15.694213448 4.836894427 CORE 79 O O 0.0000 79 O -7.812828934 8.361969632 8.456645468 CORE 80 O O 0.0000 80 O -3.313918600 8.463685234 5.965010019 CORE 81 O O 0.0000 81 O -13.117464967 15.525517301 9.731611614 CORE 82 O O 0.0000 82 O -7.701961403 15.739437103 5.936778648 CORE 83 O O 0.0000 83 O 1.782544975 8.476292222 9.792569005 CORE 84 O O 0.0000 84 O -7.673665740 8.528904874 5.827887270 CORE 85 O O 0.0000 85 O 1.837745112 15.690759243 9.772488691 CORE 86 O O 0.0000 86 O -3.483118320 15.686935301 5.980716260 CORE 87 O O 0.0000 87 O -12.929101514 8.452825168 9.813139833 CORE 88 O O 0.0000 88 O 1.926333022 8.449916561 4.859858789 CORE 89 O O 0.0000 89 O -7.893515413 15.551908386 8.608786918 CORE 90 O O 0.0000 90 O -12.865803843 15.759744734 4.769934257 CORE 91 O O 0.0000 91 O -3.388688531 8.362448346 8.626236580 CORE 92 O O 0.0000 92 O -9.445553655 5.983216495 5.624886326 CORE 93 O O 0.0000 93 O 0.652677939 13.375468012 9.305054342 CORE 94 O O 0.0000 94 O -2.187199974 17.928710199 5.384734625 CORE 95 O O 0.0000 95 O -11.636781901 10.704706962 9.226046318 CORE 96 O O 0.0000 96 O 0.641062115 10.720892554 5.384310295 CORE 97 O O 0.0000 97 O -8.946391311 17.882069863 9.312038604 CORE 98 O O 0.0000 98 O -11.939382801 13.334839632 5.371119000 CORE 99 O O 0.0000 99 O -2.076181566 6.117640297 9.216615575 CORE 100 O O 0.0000 100 O -12.009054847 10.755340758 5.267606990 CORE 101 O O 0.0000 101 O -2.160101901 17.894003395 9.200118489 CORE 102 O O 0.0000 102 O 0.581101451 13.364771698 5.400697001 CORE 103 O O 0.0000 103 O -9.088456200 6.046454108 8.803131990 CORE 104 O O 0.0000 104 O -2.083974843 6.150941376 5.392872141 CORE 105 O O 0.0000 105 O -11.689136922 13.342978195 9.187874216 CORE 106 O O 0.0000 106 O -9.256619985 17.807329431 5.273450321 CORE 107 O O 0.0000 107 O 0.544613186 10.741884597 9.179752371 CORE 108 O O 0.0000 108 O2 12.683944666 5.851701876 4.881500181 CORE 109 O2 O2 0.0000 109 O2 13.645128699 7.303543922 2.693452102 CORE 110 O2 O2 0.0000 110 H 13.228876157 6.636531044 3.289257553 CORE 111 H H 0.0000 111 H 13.630918707 8.119775748 3.233473679 CORE 112 H H 0.0000 112 C 13.872119066 5.633313793 5.702686019 CORE 113 C C 0.0000 113 C 12.879533490 4.552468259 5.509480736 CORE 114 C C 0.0000 114 H 13.100311713 3.713860719 4.816679997 CORE 115 H H 0.0000 115 H 12.168584175 4.334501663 6.330461865 CORE 116 H H 0.0000 116 H 14.818850818 5.597758681 5.130800169 CORE 117 H H 0.0000 117 H 13.887262996 6.184756917 6.664740172 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.317112735 4.754090990 3.520842234 CORE 1 Si Si 0.0000 1 Si -2.579860801 12.063000799 7.333772314 CORE 2 Si Si 0.0000 2 Si 1.074698653 4.795541154 3.484366237 CORE 3 Si Si 0.0000 3 Si -8.624680562 12.027698666 7.325730192 CORE 4 Si Si 0.0000 4 Si -13.620831286 7.697256049 11.077367707 CORE 5 Si Si 0.0000 5 Si -4.013894667 14.914078583 7.321087888 CORE 6 Si Si 0.0000 6 Si -7.151318896 9.194145603 7.224337020 CORE 7 Si Si 0.0000 7 Si 2.423752386 16.362667800 3.529175788 CORE 8 Si Si 0.0000 8 Si -13.632265827 16.327408622 3.446892250 CORE 9 Si Si 0.0000 9 Si -3.928003304 9.154195581 7.316172941 CORE 10 Si Si 0.0000 10 Si -7.236742039 14.907781360 7.266591915 CORE 11 Si Si 0.0000 11 Si 2.411725113 7.721384020 3.478715597 CORE 12 Si Si 0.0000 12 Si -10.236970061 4.580668250 5.826975697 CORE 13 Si Si 0.0000 13 Si -0.300405288 12.078365616 9.567668709 CORE 14 Si Si 0.0000 14 Si -10.785793764 12.043663136 9.594756031 CORE 15 Si Si 0.0000 15 Si -1.231970786 4.797158632 5.717467679 CORE 16 Si Si 0.0000 16 Si -9.962341900 4.674722993 8.881253620 CORE 17 Si Si 0.0000 17 Si -0.289364106 12.025236772 5.083755161 CORE 18 Si Si 0.0000 18 Si -11.009683255 12.024427529 5.098273687 CORE 19 Si Si 0.0000 19 Si -1.224716549 4.776938642 8.867057945 CORE 20 Si Si 0.0000 20 Ti -9.034965750 7.647504724 5.013219295 CORE 21 Ti Ti 0.0000 21 Si 0.684109503 14.958147906 8.900677279 CORE 22 Si Si 0.0000 22 Si -2.269496068 16.319811189 5.101009242 CORE 23 Si Si 0.0000 23 Si -11.856675451 9.141713424 8.805208760 CORE 24 Si Si 0.0000 24 Si 0.729815336 9.126095197 5.723971164 CORE 25 Si Si 0.0000 25 Si -9.008607052 16.265553816 9.544255293 CORE 26 Si Si 0.0000 26 Si -11.869411886 14.918874224 5.734152816 CORE 27 Si Si 0.0000 27 Si -2.216823127 7.712897197 9.532491416 CORE 28 Si Si 0.0000 28 Si -12.040131926 9.182478600 5.710850389 CORE 29 Si Si 0.0000 29 Si -2.224168006 16.297353599 9.545579405 CORE 30 Si Si 0.0000 30 Si 0.620493720 14.953695769 5.763089452 CORE 31 Si Si 0.0000 31 Si -9.021280943 7.621087837 9.232890684 CORE 32 Si Si 0.0000 32 Si -2.157503500 7.754375037 5.064903792 CORE 33 Si Si 0.0000 33 Si -11.895938974 14.925218295 8.851662383 CORE 34 Si Si 0.0000 34 Si -8.993713301 16.213711055 5.059216485 CORE 35 Si Si 0.0000 35 Si 0.639484446 9.144493307 8.864332203 CORE 36 Si Si 0.0000 36 O -15.228343707 7.767245671 3.356207681 CORE 37 O O 0.0000 37 O -5.626155106 15.001958773 7.378429721 CORE 38 O O 0.0000 38 O -15.226324183 16.118181828 3.610782133 CORE 39 O O 0.0000 39 O -5.538434933 9.103549533 7.278705420 CORE 40 O O 0.0000 40 O -10.583404297 4.339310133 7.406631043 CORE 41 O O 0.0000 41 O -0.746657791 12.025977402 3.523140603 CORE 42 O O 0.0000 42 O -10.424945352 12.074147718 3.575458629 CORE 43 O O 0.0000 43 O -0.817480662 4.767885753 7.290147967 CORE 44 O O 0.0000 44 O -13.145718292 6.140488815 3.482707712 CORE 45 O O 0.0000 45 O -3.557877089 13.352820580 7.257740995 CORE 46 O O 0.0000 46 O -7.631048468 10.750126658 7.281412067 CORE 47 O O 0.0000 47 O 2.113217339 17.964420558 3.502235058 CORE 48 O O 0.0000 48 O -3.463678427 10.711906837 7.405076356 CORE 49 O O 0.0000 49 O -13.315537302 17.916084760 3.249868068 CORE 50 O O 0.0000 50 O 1.911161765 6.175585105 3.492639695 CORE 51 O O 0.0000 51 O -7.716201224 13.360950638 7.139039806 CORE 52 O O 0.0000 52 O -11.647049644 4.562456234 5.001091565 CORE 53 O O 0.0000 53 O -1.654183561 12.189543054 8.670213445 CORE 54 O O 0.0000 54 O 0.119245073 4.733071414 4.811665852 CORE 55 O O 0.0000 55 O -9.367482127 12.077174382 8.783376960 CORE 56 O O 0.0000 56 O -1.628963949 12.000623458 6.010257974 CORE 57 O O 0.0000 57 O -11.158730840 4.799383547 9.976669666 CORE 58 O O 0.0000 58 O -9.755164386 11.947971743 6.144049675 CORE 59 O O 0.0000 59 O 0.147808236 4.724002380 9.745557849 CORE 60 O O 0.0000 60 O -10.564513451 8.548510075 5.394272021 CORE 61 O O 0.0000 61 O -0.782404563 15.617941161 9.198539306 CORE 62 O O 0.0000 62 O -10.434537226 8.344470281 8.840933468 CORE 63 O O 0.0000 63 O -0.857255898 15.611120106 5.514875090 CORE 64 O O 0.0000 64 O -0.701399972 8.418449038 5.375112637 CORE 65 O O 0.0000 65 O -10.506679119 15.725610483 9.183728587 CORE 66 O O 0.0000 66 O -10.317244321 15.390028105 5.531103110 CORE 67 O O 0.0000 67 O -0.800521585 8.445786738 9.170458634 CORE 68 O O 0.0000 68 O -12.429098182 9.079606792 7.286366115 CORE 69 O O 0.0000 69 O -2.554037679 16.082440189 3.516900098 CORE 70 O O 0.0000 70 O -8.815168423 7.717979114 3.230956298 CORE 71 O O 0.0000 71 O 1.029326136 15.136241455 7.323297252 CORE 72 O O 0.0000 72 O -2.526669989 7.954392974 3.499953121 CORE 73 O O 0.0000 73 O -12.285479295 15.131006741 7.287543332 CORE 74 O O 0.0000 74 O 1.035926828 8.927314333 7.304272439 CORE 75 O O 0.0000 75 O -8.677252854 15.929493012 3.491537485 CORE 76 O O 0.0000 76 O -13.193086662 8.403375111 4.874580960 CORE 77 O O 0.0000 77 O -3.400574357 15.606599643 8.666046136 CORE 78 O O 0.0000 78 O 1.720084251 15.694115427 4.836974379 CORE 79 O O 0.0000 79 O -7.813019648 8.364268495 8.458159305 CORE 80 O O 0.0000 80 O -3.312921540 8.462892279 5.964137623 CORE 81 O O 0.0000 81 O -13.119467172 15.524554685 9.731895972 CORE 82 O O 0.0000 82 O -7.704724922 15.742430612 5.937353830 CORE 83 O O 0.0000 83 O 1.782736074 8.476883082 9.792924795 CORE 84 O O 0.0000 84 O -7.673847409 8.529127581 5.828806678 CORE 85 O O 0.0000 85 O 1.836366624 15.692444615 9.771172642 CORE 86 O O 0.0000 86 O -3.483397944 15.687658200 5.979927543 CORE 87 O O 0.0000 87 O -12.929040893 8.456678805 9.813559447 CORE 88 O O 0.0000 88 O 1.925659655 8.447741089 4.859769557 CORE 89 O O 0.0000 89 O -7.894644684 15.552783072 8.609321857 CORE 90 O O 0.0000 90 O -12.866289383 15.758625430 4.770650477 CORE 91 O O 0.0000 91 O -3.387825412 8.361517297 8.626679701 CORE 92 O O 0.0000 92 O -9.442930044 5.983081861 5.623352255 CORE 93 O O 0.0000 93 O 0.651104889 13.375703549 9.304904708 CORE 94 O O 0.0000 94 O -2.187040245 17.927983408 5.385327304 CORE 95 O O 0.0000 95 O -11.630069783 10.704287926 9.219376235 CORE 96 O O 0.0000 96 O 0.640187642 10.721313176 5.384060550 CORE 97 O O 0.0000 97 O -8.949239506 17.882112387 9.314683101 CORE 98 O O 0.0000 98 O -11.939373178 13.335812051 5.370794476 CORE 99 O O 0.0000 99 O -2.079125022 6.117566061 9.217610980 CORE 100 O O 0.0000 100 O -12.008298151 10.751903131 5.266109205 CORE 101 O O 0.0000 101 O -2.158091421 17.892976201 9.200371124 CORE 102 O O 0.0000 102 O 0.583370962 13.363864434 5.400135056 CORE 103 O O 0.0000 103 O -9.087216658 6.044253553 8.802707659 CORE 104 O O 0.0000 104 O -2.085594851 6.151122425 5.393550553 CORE 105 O O 0.0000 105 O -11.689905934 13.341621047 9.189611629 CORE 106 O O 0.0000 106 O -9.261012171 17.806219929 5.269520737 CORE 107 O O 0.0000 107 O 0.542992024 10.742570162 9.181270620 CORE 108 O O 0.0000 108 O2 12.684227369 5.856722242 4.883777553 CORE 109 O2 O2 0.0000 109 O2 13.650751960 7.290941258 2.687570734 CORE 110 O2 O2 0.0000 110 H 13.236435806 6.629468542 3.289392961 CORE 111 H H 0.0000 111 H 13.643521393 8.113844515 3.214612801 CORE 112 H H 0.0000 112 C 13.868663705 5.632344401 5.707229125 CORE 113 C C 0.0000 113 C 12.877882692 4.553793983 5.502589663 CORE 114 C C 0.0000 114 H 13.100841708 3.719936100 4.804627579 CORE 115 H H 0.0000 115 H 12.163665458 4.331224905 6.319328779 CORE 116 H H 0.0000 116 H 14.818134150 5.601084594 5.139303820 CORE 117 H H 0.0000 117 H 13.880122878 6.178968966 6.672577584 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.320081593 4.755970528 3.517872605 CORE 1 Si Si 0.0000 1 Si -2.579045794 12.065133748 7.332368174 CORE 2 Si Si 0.0000 2 Si 1.074592423 4.795127163 3.484197129 CORE 3 Si Si 0.0000 3 Si -8.624140367 12.028953902 7.326203057 CORE 4 Si Si 0.0000 4 Si -13.622162240 7.700381165 11.076021914 CORE 5 Si Si 0.0000 5 Si -4.014464113 14.916735509 7.319700636 CORE 6 Si Si 0.0000 6 Si -7.152144873 9.198565595 7.225729749 CORE 7 Si Si 0.0000 7 Si 2.424246971 16.363397474 3.528008385 CORE 8 Si Si 0.0000 8 Si -13.633820210 16.329421929 3.446348182 CORE 9 Si Si 0.0000 9 Si -3.929108135 9.152790864 7.315343146 CORE 10 Si Si 0.0000 10 Si -7.238597984 14.910473745 7.266234833 CORE 11 Si Si 0.0000 11 Si 2.410445542 7.720462197 3.477089706 CORE 12 Si Si 0.0000 12 Si -10.237951148 4.582042263 5.824186739 CORE 13 Si Si 0.0000 13 Si -0.302160584 12.079233095 9.567776732 CORE 14 Si Si 0.0000 14 Si -10.783227310 12.042101731 9.594307966 CORE 15 Si Si 0.0000 15 Si -1.232444780 4.798384750 5.717518190 CORE 16 Si Si 0.0000 16 Si -9.962051307 4.673968526 8.882730561 CORE 17 Si Si 0.0000 17 Si -0.288787924 12.026233840 5.082557633 CORE 18 Si Si 0.0000 18 Si -11.010464969 12.021915760 5.097977842 CORE 19 Si Si 0.0000 19 Si -1.226174517 4.779870312 8.866815883 CORE 20 Si Si 0.0000 20 Ti -9.036753185 7.646544991 5.015549157 CORE 21 Ti Ti 0.0000 21 Si 0.683966516 14.958918662 8.900004041 CORE 22 Si Si 0.0000 22 Si -2.267995570 16.319319502 5.100799511 CORE 23 Si Si 0.0000 23 Si -11.852169914 9.139363101 8.803180676 CORE 24 Si Si 0.0000 24 Si 0.729484137 9.125050128 5.722707682 CORE 25 Si Si 0.0000 25 Si -9.008211769 16.265347252 9.546568267 CORE 26 Si Si 0.0000 26 Si -11.872078028 14.918208263 5.733929164 CORE 27 Si Si 0.0000 27 Si -2.216334508 7.712200388 9.533512229 CORE 28 Si Si 0.0000 28 Si -12.036776445 9.179239896 5.712408727 CORE 29 Si Si 0.0000 29 Si -2.224444936 16.298479102 9.544840059 CORE 30 Si Si 0.0000 30 Si 0.622569246 14.952413578 5.760769251 CORE 31 Si Si 0.0000 31 Si -9.015690975 7.618116383 9.238251337 CORE 32 Si Si 0.0000 32 Si -2.157258132 7.753012844 5.063765601 CORE 33 Si Si 0.0000 33 Si -11.896427593 14.924516874 8.853907273 CORE 34 Si Si 0.0000 34 Si -8.996859787 16.210011080 5.057168318 CORE 35 Si Si 0.0000 35 Si 0.639830078 9.145346660 8.865059985 CORE 36 Si Si 0.0000 36 O -15.228969925 7.765972705 3.355221938 CORE 37 O O 0.0000 37 O -5.628159427 15.007295975 7.371023638 CORE 38 O O 0.0000 38 O -15.225226858 16.121875461 3.610952763 CORE 39 O O 0.0000 39 O -5.537596448 9.102450553 7.278653158 CORE 40 O O 0.0000 40 O -10.579921416 4.338518043 7.405611448 CORE 41 O O 0.0000 41 O -0.746430320 12.030138649 3.522899378 CORE 42 O O 0.0000 42 O -10.422967011 12.071684095 3.574098307 CORE 43 O O 0.0000 43 O -0.818163651 4.771362300 7.290426620 CORE 44 O O 0.0000 44 O -13.148743537 6.141002412 3.480625997 CORE 45 O O 0.0000 45 O -3.556566149 13.355690123 7.257667357 CORE 46 O O 0.0000 46 O -7.627830585 10.754645391 7.280786754 CORE 47 O O 0.0000 47 O 2.111516889 17.965248541 3.499833003 CORE 48 O O 0.0000 48 O -3.463888385 10.714743081 7.403849236 CORE 49 O O 0.0000 49 O -13.314719601 17.917552902 3.244930680 CORE 50 O O 0.0000 50 O 1.908213691 6.176462675 3.490723817 CORE 51 O O 0.0000 51 O -7.715187998 13.364519440 7.138977427 CORE 52 O O 0.0000 52 O -11.653158060 4.571059672 5.001576754 CORE 53 O O 0.0000 53 O -1.655142132 12.186599275 8.669810567 CORE 54 O O 0.0000 54 O 0.120321999 4.732314640 4.815614302 CORE 55 O O 0.0000 55 O -9.365305375 12.076750300 8.784359965 CORE 56 O O 0.0000 56 O -1.628740519 12.004814544 6.010158624 CORE 57 O O 0.0000 57 O -11.160204589 4.802682505 9.976379070 CORE 58 O O 0.0000 58 O -9.755091449 11.947410721 6.146602581 CORE 59 O O 0.0000 59 O 0.143916216 4.726746803 9.746480833 CORE 60 O O 0.0000 60 O -10.564468996 8.547248496 5.395070323 CORE 61 O O 0.0000 61 O -0.784928102 15.617820510 9.197829933 CORE 62 O O 0.0000 62 O -10.432134350 8.339697560 8.849295321 CORE 63 O O 0.0000 63 O -0.855833147 15.611956016 5.514493284 CORE 64 O O 0.0000 64 O -0.703012088 8.417554026 5.373922107 CORE 65 O O 0.0000 65 O -10.505262527 15.726318680 9.185647660 CORE 66 O O 0.0000 66 O -10.318852011 15.389195654 5.532498349 CORE 67 O O 0.0000 67 O -0.801182828 8.442621549 9.170227831 CORE 68 O O 0.0000 68 O -12.426740724 9.072827251 7.284037546 CORE 69 O O 0.0000 69 O -2.552584138 16.082069731 3.516776329 CORE 70 O O 0.0000 70 O -8.809965078 7.712367887 3.231880347 CORE 71 O O 0.0000 71 O 1.028385655 15.135077608 7.321619937 CORE 72 O O 0.0000 72 O -2.526650937 7.954639899 3.499932125 CORE 73 O O 0.0000 73 O -12.287146644 15.129943222 7.287124783 CORE 74 O O 0.0000 74 O 1.035812708 8.927763208 7.304263615 CORE 75 O O 0.0000 75 O -8.674919451 15.925193528 3.490457108 CORE 76 O O 0.0000 76 O -13.190885085 8.400677968 4.874996543 CORE 77 O O 0.0000 77 O -3.402805956 15.609964188 8.665314702 CORE 78 O O 0.0000 78 O 1.719244995 15.693958451 4.837102256 CORE 79 O O 0.0000 79 O -7.813325059 8.367946704 8.460581519 CORE 80 O O 0.0000 80 O -3.311326165 8.461623493 5.962741851 CORE 81 O O 0.0000 81 O -13.122670814 15.523014470 9.732350884 CORE 82 O O 0.0000 82 O -7.709146745 15.747220342 5.938274151 CORE 83 O O 0.0000 83 O 1.783042062 8.477828689 9.793494043 CORE 84 O O 0.0000 84 O -7.674137809 8.529484058 5.830277914 CORE 85 O O 0.0000 85 O 1.834160812 15.695141180 9.769066965 CORE 86 O O 0.0000 86 O -3.483845380 15.688814839 5.978665658 CORE 87 O O 0.0000 87 O -12.928943708 8.462844566 9.814230784 CORE 88 O O 0.0000 88 O 1.924582344 8.444260073 4.859626845 CORE 89 O O 0.0000 89 O -7.896451171 15.554182744 8.610177745 CORE 90 O O 0.0000 90 O -12.867066094 15.756834830 4.771796352 CORE 91 O O 0.0000 91 O -3.386444615 8.360027390 8.627388617 CORE 92 O O 0.0000 92 O -9.438732420 5.982866505 5.620897710 CORE 93 O O 0.0000 93 O 0.648588085 13.376080351 9.304665233 CORE 94 O O 0.0000 94 O -2.186784869 17.926820571 5.386275543 CORE 95 O O 0.0000 95 O -11.619330356 10.703617208 9.208704070 CORE 96 O O 0.0000 96 O 0.638788755 10.721986056 5.383660867 CORE 97 O O 0.0000 97 O -8.953796810 17.882180424 9.318914235 CORE 98 O O 0.0000 98 O -11.939357783 13.337367690 5.370275284 CORE 99 O O 0.0000 99 O -2.083834551 6.117447284 9.219203703 CORE 100 O O 0.0000 100 O -12.007087476 10.746402898 5.263712703 CORE 101 O O 0.0000 101 O -2.154874693 17.891332920 9.200775372 CORE 102 O O 0.0000 102 O 0.587002218 13.362412870 5.399235883 CORE 103 O O 0.0000 103 O -9.085233121 6.040732465 8.802028791 CORE 104 O O 0.0000 104 O -2.088186708 6.151412017 5.394635951 CORE 105 O O 0.0000 105 O -11.691136431 13.339449611 9.192391610 CORE 106 O O 0.0000 106 O -9.268039515 17.804444897 5.263233372 CORE 107 O O 0.0000 107 O 0.540398242 10.743667124 9.183699908 CORE 108 O O 0.0000 108 O2 12.684679616 5.864754856 4.887421334 CORE 109 O2 O2 0.0000 109 O2 13.659748984 7.270776765 2.678160607 CORE 110 O2 O2 0.0000 110 H 13.248531205 6.618168538 3.289609615 CORE 111 H H 0.0000 111 H 13.663685652 8.104354570 3.184435352 CORE 112 H H 0.0000 112 C 13.863134935 5.630793519 5.714498125 CORE 113 C C 0.0000 113 C 12.875241183 4.555915112 5.491563991 CORE 114 C C 0.0000 114 H 13.101689623 3.729656536 4.785343588 CORE 115 H H 0.0000 115 H 12.155795587 4.325981975 6.301515796 CORE 116 H H 0.0000 116 H 14.816987559 5.606405940 5.152909556 CORE 117 H H 0.0000 117 H 13.868698537 6.169708216 6.685117472 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.317126206 4.754099494 3.520828770 CORE 1 Si Si 0.0000 1 Si -2.579856952 12.063010313 7.333766000 CORE 2 Si Si 0.0000 2 Si 1.074698268 4.795539280 3.484365477 CORE 3 Si Si 0.0000 3 Si -8.624678060 12.027704432 7.325732322 CORE 4 Si Si 0.0000 4 Si -13.620837252 7.697270176 11.077361621 CORE 5 Si Si 0.0000 5 Si -4.013897169 14.914090548 7.321081574 CORE 6 Si Si 0.0000 6 Si -7.151322745 9.194165496 7.224343334 CORE 7 Si Si 0.0000 7 Si 2.423754696 16.362670971 3.529170540 CORE 8 Si Si 0.0000 8 Si -13.632272947 16.327417704 3.446889815 CORE 9 Si Si 0.0000 9 Si -3.928008308 9.154189238 7.316169214 CORE 10 Si Si 0.0000 10 Si -7.236750506 14.907793612 7.266590318 CORE 11 Si Si 0.0000 11 Si 2.411719147 7.721379839 3.478708218 CORE 12 Si Si 0.0000 12 Si -10.236974487 4.580674448 5.826963069 CORE 13 Si Si 0.0000 13 Si -0.300413178 12.078369508 9.567669166 CORE 14 Si Si 0.0000 14 Si -10.785782025 12.043656073 9.594753977 CORE 15 Si Si 0.0000 15 Si -1.231973096 4.797164110 5.717467907 CORE 16 Si Si 0.0000 16 Si -9.962340553 4.674719534 8.881260314 CORE 17 Si Si 0.0000 17 Si -0.289361604 12.025241241 5.083749684 CORE 18 Si Si 0.0000 18 Si -11.009686911 12.024416141 5.098272317 CORE 19 Si Si 0.0000 19 Si -1.224723285 4.776951904 8.867056804 CORE 20 Si Si 0.0000 20 Ti -9.034973833 7.647500400 5.013229793 CORE 21 Ti Ti 0.0000 21 Si 0.684108926 14.958151510 8.900674237 CORE 22 Si Si 0.0000 22 Si -2.269489332 16.319809027 5.101008329 CORE 23 Si Si 0.0000 23 Si -11.856655052 9.141702757 8.805199555 CORE 24 Si Si 0.0000 24 Si 0.729813796 9.126090440 5.723965383 CORE 25 Si Si 0.0000 25 Si -9.008605320 16.265552951 9.544265715 CORE 26 Si Si 0.0000 26 Si -11.869424010 14.918871197 5.734151827 CORE 27 Si Si 0.0000 27 Si -2.216821010 7.712894025 9.532495981 CORE 28 Si Si 0.0000 28 Si -12.040116916 9.182463897 5.710857463 CORE 29 Si Si 0.0000 29 Si -2.224169353 16.297358788 9.545576058 CORE 30 Si Si 0.0000 30 Si 0.620503150 14.953690003 5.763078954 CORE 31 Si Si 0.0000 31 Si -9.021255732 7.621074432 9.232914951 CORE 32 Si Si 0.0000 32 Si -2.157502345 7.754368839 5.064898619 CORE 33 Si Si 0.0000 33 Si -11.895941283 14.925215124 8.851672576 CORE 34 Si Si 0.0000 34 Si -8.993727542 16.213694334 5.059207204 CORE 35 Si Si 0.0000 35 Si 0.639485985 9.144497199 8.864335550 CORE 36 Si Si 0.0000 36 O -15.228346594 7.767239905 3.356203269 CORE 37 O O 0.0000 37 O -5.626164151 15.001982845 7.378396249 CORE 38 O O 0.0000 38 O -15.226319179 16.118198549 3.610782894 CORE 39 O O 0.0000 39 O -5.538431084 9.103544487 7.278705115 CORE 40 O O 0.0000 40 O -10.583388517 4.339306529 7.406626403 CORE 41 O O 0.0000 41 O -0.746656828 12.025996141 3.523139538 CORE 42 O O 0.0000 42 O -10.424936307 12.074136619 3.575452467 CORE 43 O O 0.0000 43 O -0.817483741 4.767901465 7.290149184 CORE 44 O O 0.0000 44 O -13.145731956 6.140491121 3.482698279 CORE 45 O O 0.0000 45 O -3.557871123 13.352833554 7.257740614 CORE 46 O O 0.0000 46 O -7.631033842 10.750147127 7.281409177 CORE 47 O O 0.0000 47 O 2.113209641 17.964424306 3.502224255 CORE 48 O O 0.0000 48 O -3.463679389 10.711919666 7.405070803 CORE 49 O O 0.0000 49 O -13.315533646 17.916091391 3.249845779 CORE 50 O O 0.0000 50 O 1.911148486 6.175588997 3.492631022 CORE 51 O O 0.0000 51 O -7.716196605 13.360966783 7.139039502 CORE 52 O O 0.0000 52 O -11.647077356 4.562495153 5.001093772 CORE 53 O O 0.0000 53 O -1.654187795 12.189529792 8.670211620 CORE 54 O O 0.0000 54 O 0.119249884 4.733067955 4.811683729 CORE 55 O O 0.0000 55 O -9.367472313 12.077172364 8.783381448 CORE 56 O O 0.0000 56 O -1.628962986 12.000642341 6.010257594 CORE 57 O O 0.0000 57 O -11.158737383 4.799398539 9.976668373 CORE 58 O O 0.0000 58 O -9.755164194 11.947969148 6.144061238 CORE 59 O O 0.0000 59 O 0.147790723 4.724014777 9.745562033 CORE 60 O O 0.0000 60 O -10.564513259 8.548504309 5.394275597 CORE 61 O O 0.0000 61 O -0.782415917 15.617940584 9.198536111 CORE 62 O O 0.0000 62 O -10.434526449 8.344448803 8.840971352 CORE 63 O O 0.0000 63 O -0.857249355 15.611123853 5.514873417 CORE 64 O O 0.0000 64 O -0.701407285 8.418445002 5.375107236 CORE 65 O O 0.0000 65 O -10.506672768 15.725613655 9.183737260 CORE 66 O O 0.0000 66 O -10.317251634 15.390024358 5.531109424 CORE 67 O O 0.0000 67 O -0.800524472 8.445772323 9.170457645 CORE 68 O O 0.0000 68 O -12.429087598 9.079576089 7.286355617 CORE 69 O O 0.0000 69 O -2.554031136 16.082438604 3.516899566 CORE 70 O O 0.0000 70 O -8.815144944 7.717953744 3.230960482 CORE 71 O O 0.0000 71 O 1.029321903 15.136236265 7.323289721 CORE 72 O O 0.0000 72 O -2.526669797 7.954393983 3.499952969 CORE 73 O O 0.0000 73 O -12.285486800 15.131001985 7.287541430 CORE 74 O O 0.0000 74 O 1.035926251 8.927316351 7.304272363 CORE 75 O O 0.0000 75 O -8.677242269 15.929473553 3.491532540 CORE 76 O O 0.0000 76 O -13.193076655 8.403362858 4.874582862 CORE 77 O O 0.0000 77 O -3.400584364 15.606614922 8.666042789 CORE 78 O O 0.0000 78 O 1.720080402 15.694114707 4.836974987 CORE 79 O O 0.0000 79 O -7.813021187 8.364285072 8.458170259 CORE 80 O O 0.0000 80 O -3.312914227 8.462886513 5.964131309 CORE 81 O O 0.0000 81 O -13.119481605 15.524547766 9.731898026 CORE 82 O O 0.0000 82 O -7.704744937 15.742452378 5.937358013 CORE 83 O O 0.0000 83 O 1.782737613 8.476887407 9.792927381 CORE 84 O O 0.0000 84 O -7.673848564 8.529129311 5.828813373 CORE 85 O O 0.0000 85 O 1.836356617 15.692456867 9.771163133 CORE 86 O O 0.0000 86 O -3.483400060 15.687663533 5.979921838 CORE 87 O O 0.0000 87 O -12.929040508 8.456706625 9.813562490 CORE 88 O O 0.0000 88 O 1.925654844 8.447725233 4.859768872 CORE 89 O O 0.0000 89 O -7.894652766 15.552789415 8.609325737 CORE 90 O O 0.0000 90 O -12.866292848 15.758617357 4.770655650 CORE 91 O O 0.0000 91 O -3.387819254 8.361510522 8.626682896 CORE 92 O O 0.0000 92 O -9.442910992 5.983080852 5.623341148 CORE 93 O O 0.0000 93 O 0.651093534 13.375705279 9.304903567 CORE 94 O O 0.0000 94 O -2.187039090 17.927978219 5.385331564 CORE 95 O O 0.0000 95 O -11.630021094 10.704284899 9.219327929 CORE 96 O O 0.0000 96 O 0.640181291 10.721316203 5.384058724 CORE 97 O O 0.0000 97 O -8.949260098 17.882112675 9.314702195 CORE 98 O O 0.0000 98 O -11.939373178 13.335819114 5.370792118 CORE 99 O O 0.0000 99 O -2.079146383 6.117565485 9.217618207 CORE 100 O O 0.0000 100 O -12.008292570 10.751878193 5.266098326 CORE 101 O O 0.0000 101 O -2.158076988 17.892968849 9.200372950 CORE 102 O O 0.0000 102 O 0.583387320 13.363857948 5.400130948 CORE 103 O O 0.0000 103 O -9.087207613 6.044237553 8.802704616 CORE 104 O O 0.0000 104 O -2.085606590 6.151123722 5.393555422 CORE 105 O O 0.0000 105 O -11.689911515 13.341611245 9.189624257 CORE 106 O O 0.0000 106 O -9.261043925 17.806212001 5.269492286 CORE 107 O O 0.0000 107 O 0.542980285 10.742575063 9.181281650 CORE 108 O O 0.0000 108 O2 12.684229293 5.856758567 4.883793985 CORE 109 O2 O2 0.0000 109 O2 13.650792566 7.290850013 2.687528210 CORE 110 O2 O2 0.0000 110 H 13.236490653 6.629417370 3.289393950 CORE 111 H H 0.0000 111 H 13.643612612 8.113801703 3.214476252 CORE 112 H H 0.0000 112 C 13.868638687 5.632337482 5.707262064 CORE 113 C C 0.0000 113 C 12.877870760 4.553803641 5.502539760 CORE 114 C C 0.0000 114 H 13.100845557 3.719980065 4.804540324 CORE 115 H H 0.0000 115 H 12.163629855 4.331201120 6.319248218 CORE 116 H H 0.0000 116 H 14.818128954 5.601108667 5.139365362 CORE 117 H H 0.0000 117 H 13.880071303 6.178927019 6.672634333 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.318637096 4.755376064 3.518699434 CORE 1 Si Si 0.0000 1 Si -2.579781706 12.064098193 7.333055790 CORE 2 Si Si 0.0000 2 Si 1.073298226 4.795178623 3.484430823 CORE 3 Si Si 0.0000 3 Si -8.623823024 12.029426561 7.325658989 CORE 4 Si Si 0.0000 4 Si -13.620304755 7.699018396 11.077466601 CORE 5 Si Si 0.0000 5 Si -4.014617300 14.915757901 7.320124814 CORE 6 Si Si 0.0000 6 Si -7.152600199 9.194574153 7.223629853 CORE 7 Si Si 0.0000 7 Si 2.423394630 16.363328571 3.528588283 CORE 8 Si Si 0.0000 8 Si -13.631576486 16.328135125 3.446761253 CORE 9 Si Si 0.0000 9 Si -3.926799365 9.153683425 7.316048791 CORE 10 Si Si 0.0000 10 Si -7.237494116 14.910204910 7.266087253 CORE 11 Si Si 0.0000 11 Si 2.411207627 7.720666454 3.477990781 CORE 12 Si Si 0.0000 12 Si -10.237097652 4.581472592 5.825589662 CORE 13 Si Si 0.0000 13 Si -0.302019907 12.078980981 9.567671676 CORE 14 Si Si 0.0000 14 Si -10.784119103 12.043726272 9.593782535 CORE 15 Si Si 0.0000 15 Si -1.232207687 4.797101982 5.718049250 CORE 16 Si Si 0.0000 16 Si -9.961696437 4.674246442 8.881963145 CORE 17 Si Si 0.0000 17 Si -0.289393358 12.026261228 5.083188803 CORE 18 Si Si 0.0000 18 Si -11.010357777 12.022917441 5.098345423 CORE 19 Si Si 0.0000 19 Si -1.225714187 4.778108110 8.867012149 CORE 20 Si Si 0.0000 20 Ti -9.030933437 7.646185487 5.016348143 CORE 21 Ti Ti 0.0000 21 Si 0.683045856 14.958484058 8.899821163 CORE 22 Si Si 0.0000 22 Si -2.268345436 16.319693276 5.100691640 CORE 23 Si Si 0.0000 23 Si -11.854893982 9.139976880 8.803076077 CORE 24 Si Si 0.0000 24 Si 0.729202396 9.125842650 5.723721648 CORE 25 Si Si 0.0000 25 Si -9.008648620 16.264839421 9.545712835 CORE 26 Si Si 0.0000 26 Si -11.870260956 14.918870332 5.734289822 CORE 27 Si Si 0.0000 27 Si -2.216984012 7.712454376 9.532390545 CORE 28 Si Si 0.0000 28 Si -12.040246817 9.181024009 5.711421158 CORE 29 Si Si 0.0000 29 Si -2.224475534 16.297613353 9.545171886 CORE 30 Si Si 0.0000 30 Si 0.620853786 14.952792397 5.762541961 CORE 31 Si Si 0.0000 31 Si -9.018405805 7.618919284 9.233873764 CORE 32 Si Si 0.0000 32 Si -2.157604149 7.753976470 5.065010750 CORE 33 Si Si 0.0000 33 Si -11.896488214 14.925478914 8.852591756 CORE 34 Si Si 0.0000 34 Si -8.994724603 16.210971101 5.057878832 CORE 35 Si Si 0.0000 35 Si 0.638746417 9.145403021 8.864440073 CORE 36 Si Si 0.0000 36 O -15.228727829 7.766854311 3.355464608 CORE 37 O O 0.0000 37 O -5.626865808 15.005447861 7.373711648 CORE 38 O O 0.0000 38 O -15.226923266 16.121247411 3.611100799 CORE 39 O O 0.0000 39 O -5.538155695 9.103041557 7.279729275 CORE 40 O O 0.0000 40 O -10.581619941 4.338810950 7.405395327 CORE 41 O O 0.0000 41 O -0.746750934 12.028061773 3.523099524 CORE 42 O O 0.0000 42 O -10.424228107 12.072943655 3.576025823 CORE 43 O O 0.0000 43 O -0.817483548 4.770427360 7.290782789 CORE 44 O O 0.0000 44 O -13.148761820 6.141890216 3.480048077 CORE 45 O O 0.0000 45 O -3.557009352 13.354587683 7.258190125 CORE 46 O O 0.0000 46 O -7.628582085 10.753687531 7.281278409 CORE 47 O O 0.0000 47 O 2.112391362 17.964421423 3.501036997 CORE 48 O O 0.0000 48 O -3.464436855 10.712210123 7.403993165 CORE 49 O O 0.0000 49 O -13.316029578 17.915499522 3.247763227 CORE 50 O O 0.0000 50 O 1.908932667 6.175632242 3.491236619 CORE 51 O O 0.0000 51 O -7.716246256 13.362292939 7.139496848 CORE 52 O O 0.0000 52 O -11.649505058 4.568469487 5.001729583 CORE 53 O O 0.0000 53 O -1.654498402 12.187424519 8.670730812 CORE 54 O O 0.0000 54 O 0.120065854 4.732773606 4.813494095 CORE 55 O O 0.0000 55 O -9.365430272 12.077350530 8.783374830 CORE 56 O O 0.0000 56 O -1.627759431 12.003407954 6.009567087 CORE 57 O O 0.0000 57 O -11.159420565 4.802149160 9.975681869 CORE 58 O O 0.0000 58 O -9.756027890 11.947323656 6.145083191 CORE 59 O O 0.0000 59 O 0.145828548 4.725910892 9.746513696 CORE 60 O O 0.0000 60 O -10.564251533 8.548622221 5.395134908 CORE 61 O O 0.0000 61 O -0.782510408 15.617304894 9.198001248 CORE 62 O O 0.0000 62 O -10.434015698 8.341693137 8.845736056 CORE 63 O O 0.0000 63 O -0.856045415 15.610851271 5.514700352 CORE 64 O O 0.0000 64 O -0.701439808 8.418874993 5.374705651 CORE 65 O O 0.0000 65 O -10.507481425 15.725648827 9.185426442 CORE 66 O O 0.0000 66 O -10.318120910 15.389379586 5.531249168 CORE 67 O O 0.0000 67 O -0.799484111 8.444299858 9.170579209 CORE 68 O O 0.0000 68 O -12.426682413 9.073820571 7.286477257 CORE 69 O O 0.0000 69 O -2.553213627 16.082605094 3.516758224 CORE 70 O O 0.0000 70 O -8.812052151 7.714232578 3.232310155 CORE 71 O O 0.0000 71 O 1.028124891 15.134871189 7.323145640 CORE 72 O O 0.0000 72 O -2.526710980 7.954127743 3.499843273 CORE 73 O O 0.0000 73 O -12.285763922 15.130527019 7.288144683 CORE 74 O O 0.0000 74 O 1.035635081 8.927706413 7.304729176 CORE 75 O O 0.0000 75 O -8.675455989 15.926786933 3.491789816 CORE 76 O O 0.0000 76 O -13.191456263 8.401079996 4.874795484 CORE 77 O O 0.0000 77 O -3.402111420 15.609136781 8.665377157 CORE 78 O O 0.0000 78 O 1.721089587 15.694393920 4.835985973 CORE 79 O O 0.0000 79 O -7.813285800 8.367288383 8.460291608 CORE 80 O O 0.0000 80 O -3.312855146 8.462460125 5.963788072 CORE 81 O O 0.0000 81 O -13.121354486 15.523624646 9.732453429 CORE 82 O O 0.0000 82 O -7.706365136 15.744688681 5.937077079 CORE 83 O O 0.0000 83 O 1.782431817 8.478419838 9.792397082 CORE 84 O O 0.0000 84 O -7.675559790 8.529193889 5.829475277 CORE 85 O O 0.0000 85 O 1.835413248 15.694446102 9.770387425 CORE 86 O O 0.0000 86 O -3.482835040 15.687979360 5.978824269 CORE 87 O O 0.0000 87 O -12.928766658 8.460721995 9.813805997 CORE 88 O O 0.0000 88 O 1.924688574 8.445639275 4.860475278 CORE 89 O O 0.0000 89 O -7.895288414 15.553860286 8.609089533 CORE 90 O O 0.0000 90 O -12.867428469 15.758674872 4.770398526 CORE 91 O O 0.0000 91 O -3.387681271 8.361164713 8.626954778 CORE 92 O O 0.0000 92 O -9.440362435 5.982215391 5.621799926 CORE 93 O O 0.0000 93 O 0.649622673 13.376000925 9.304651844 CORE 94 O O 0.0000 94 O -2.186932475 17.928164313 5.386106815 CORE 95 O O 0.0000 95 O -11.622834405 10.702829010 9.212044703 CORE 96 O O 0.0000 96 O 0.639481944 10.721187912 5.383504158 CORE 97 O O 0.0000 97 O -8.951618711 17.881736883 9.317540523 CORE 98 O O 0.0000 98 O -11.939375103 13.334509823 5.370606654 CORE 99 O O 0.0000 99 O -2.081633743 6.116941615 9.218059653 CORE 100 O O 0.0000 100 O -12.006970661 10.749859697 5.264100443 CORE 101 O O 0.0000 101 O -2.155933144 17.893140240 9.200189540 CORE 102 O O 0.0000 102 O 0.585737658 13.362835510 5.398914250 CORE 103 O O 0.0000 103 O -9.086298692 6.043816210 8.801975312 CORE 104 O O 0.0000 104 O -2.087166554 6.150564575 5.395138788 CORE 105 O O 0.0000 105 O -11.690841990 13.341201434 9.190861418 CORE 106 O O 0.0000 106 O -9.264978475 17.804289218 5.267147894 CORE 107 O O 0.0000 107 O 0.541564463 10.742516395 9.182392532 CORE 108 O O 0.0000 108 O2 12.684174254 5.861125657 4.884107478 CORE 109 O2 O2 0.0000 109 O2 13.658750961 7.276860795 2.681122477 CORE 110 O2 O2 0.0000 110 H 13.244512171 6.622953656 3.291601413 CORE 111 H H 0.0000 111 H 13.655125863 8.107330782 3.196330529 CORE 112 H H 0.0000 112 C 13.865402136 5.631914554 5.712184010 CORE 113 C C 0.0000 113 C 12.876108728 4.554695769 5.496356309 CORE 114 C C 0.0000 114 H 13.101451761 3.727286176 4.792692921 CORE 115 H H 0.0000 115 H 12.159632183 4.327138470 6.308765093 CORE 116 H H 0.0000 116 H 14.817288737 5.604852319 5.147877382 CORE 117 H H 0.0000 117 H 13.872492410 6.173504482 6.681192757 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.321054598 4.757418777 3.515292465 CORE 1 Si Si 0.0000 1 Si -2.579661235 12.065838629 7.331919500 CORE 2 Si Si 0.0000 2 Si 1.071058352 4.794601601 3.484535498 CORE 3 Si Si 0.0000 3 Si -8.622454929 12.032181939 7.325541685 CORE 4 Si Si 0.0000 4 Si -13.619452605 7.701815720 11.077634644 CORE 5 Si Si 0.0000 5 Si -4.015769472 14.918425493 7.318594014 CORE 6 Si Si 0.0000 6 Si -7.154644356 9.195227862 7.222488314 CORE 7 Si Si 0.0000 7 Si 2.422818640 16.364380559 3.527656551 CORE 8 Si Si 0.0000 8 Si -13.630462419 16.329282827 3.446555630 CORE 9 Si Si 0.0000 9 Si -3.924865286 9.152873893 7.315856177 CORE 10 Si Si 0.0000 10 Si -7.238684007 14.914063160 7.265282333 CORE 11 Si Si 0.0000 11 Si 2.410389156 7.719524950 3.476842776 CORE 12 Si Si 0.0000 12 Si -10.237294524 4.582749594 5.823392318 CORE 13 Si Si 0.0000 13 Si -0.304590403 12.079959165 9.567675632 CORE 14 Si Si 0.0000 14 Si -10.781458350 12.043838563 9.592228229 CORE 15 Si Si 0.0000 15 Si -1.232583341 4.797002376 5.718979309 CORE 16 Si Si 0.0000 16 Si -9.960665699 4.673489236 8.883087720 CORE 17 Si Si 0.0000 17 Si -0.289443971 12.027893265 5.082291380 CORE 18 Si Si 0.0000 18 Si -11.011431238 12.020519404 5.098462269 CORE 19 Si Si 0.0000 19 Si -1.227299939 4.779957810 8.866940717 CORE 20 Si Si 0.0000 20 Ti -9.024468612 7.644081800 5.021337413 CORE 21 Ti Ti 0.0000 21 Si 0.681345022 14.959016250 8.898456276 CORE 22 Si Si 0.0000 22 Si -2.266515085 16.319508335 5.100185000 CORE 23 Si Si 0.0000 23 Si -11.852076193 9.137215304 8.799678389 CORE 24 Si Si 0.0000 24 Si 0.728224388 9.125446389 5.723331702 CORE 25 Si Si 0.0000 25 Si -9.008717708 16.263697774 9.548028168 CORE 26 Si Si 0.0000 26 Si -11.871600185 14.918868746 5.734510735 CORE 27 Si Si 0.0000 27 Si -2.217244776 7.711750936 9.532221740 CORE 28 Si Si 0.0000 28 Si -12.040454850 9.178720101 5.712323070 CORE 29 Si Si 0.0000 29 Si -2.224965501 16.298020857 9.544525121 CORE 30 Si Si 0.0000 30 Si 0.621414765 14.951356113 5.761682726 CORE 31 Si Si 0.0000 31 Si -9.013845999 7.615471278 9.235407988 CORE 32 Si Si 0.0000 32 Si -2.157767150 7.753348419 5.065190052 CORE 33 Si Si 0.0000 33 Si -11.897363264 14.925900977 8.854062384 CORE 34 Si Si 0.0000 34 Si -8.996320170 16.206613958 5.055753375 CORE 35 Si Si 0.0000 35 Si 0.637563261 9.146852424 8.864607356 CORE 36 Si Si 0.0000 36 O -15.229337689 7.766237216 3.354282751 CORE 37 O O 0.0000 37 O -5.627988343 15.010991626 7.366216258 CORE 38 O O 0.0000 38 O -15.227889536 16.126125648 3.611609342 CORE 39 O O 0.0000 39 O -5.537715187 9.102236638 7.281367946 CORE 40 O O 0.0000 40 O -10.578790221 4.338017851 7.403425514 CORE 41 O O 0.0000 41 O -0.746901812 12.031366929 3.523035547 CORE 42 O O 0.0000 42 O -10.423094987 12.071034999 3.576943254 CORE 43 O O 0.0000 43 O -0.817482971 4.774468677 7.291796527 CORE 44 O O 0.0000 44 O -13.153609909 6.144128825 3.475807662 CORE 45 O O 0.0000 45 O -3.555630479 13.357394234 7.258909311 CORE 46 O O 0.0000 46 O -7.624659081 10.759352380 7.281069058 CORE 47 O O 0.0000 47 O 2.111082155 17.964416810 3.499137399 CORE 48 O O 0.0000 48 O -3.465648493 10.712674854 7.402268837 CORE 49 O O 0.0000 49 O -13.316823031 17.914552617 3.244431114 CORE 50 O O 0.0000 50 O 1.905387627 6.175701288 3.489005575 CORE 51 O O 0.0000 51 O -7.716325928 13.364414645 7.140228510 CORE 52 O O 0.0000 52 O -11.653389187 4.578028622 5.002746896 CORE 53 O O 0.0000 53 O -1.654995104 12.184056227 8.671561596 CORE 54 O O 0.0000 54 O 0.121371212 4.732302388 4.816390771 CORE 55 O O 0.0000 55 O -9.362163123 12.077635653 8.783364256 CORE 56 O O 0.0000 56 O -1.625833436 12.007832991 6.008462366 CORE 57 O O 0.0000 57 O -11.160513656 4.806550268 9.974103371 CORE 58 O O 0.0000 58 O -9.757409649 11.946290984 6.146718286 CORE 59 O O 0.0000 59 O 0.142689375 4.728944762 9.748036357 CORE 60 O O 0.0000 60 O -10.563832771 8.548810766 5.396509760 CORE 61 O O 0.0000 61 O -0.782661285 15.616287646 9.197145588 CORE 62 O O 0.0000 62 O -10.433198766 8.337284244 8.853359705 CORE 63 O O 0.0000 63 O -0.854119227 15.610415369 5.514423450 CORE 64 O O 0.0000 64 O -0.701491768 8.419563009 5.374062993 CORE 65 O O 0.0000 65 O -10.508775237 15.725704900 9.188129058 CORE 66 O O 0.0000 66 O -10.319511715 15.388347923 5.531472820 CORE 67 O O 0.0000 67 O -0.797819648 8.441943912 9.170773801 CORE 68 O O 0.0000 68 O -12.422834463 9.064611425 7.286671925 CORE 69 O O 0.0000 69 O -2.551905574 16.082871478 3.516532213 CORE 70 O O 0.0000 70 O -8.807103797 7.708278858 3.234469539 CORE 71 O O 0.0000 71 O 1.026209865 15.132687212 7.322915218 CORE 72 O O 0.0000 72 O -2.526776796 7.953701788 3.499667698 CORE 73 O O 0.0000 73 O -12.286207124 15.129767218 7.289109962 CORE 74 O O 0.0000 74 O 1.035168978 8.928330428 7.305460002 CORE 75 O O 0.0000 75 O -8.672597787 15.922488169 3.492201443 CORE 76 O O 0.0000 76 O -13.188863636 8.397427156 4.875135755 CORE 77 O O 0.0000 77 O -3.404554709 15.613171900 8.664312147 CORE 78 O O 0.0000 78 O 1.722704205 15.694840921 4.834403596 CORE 79 O O 0.0000 79 O -7.813709373 8.372093393 8.463685720 CORE 80 O O 0.0000 80 O -3.312760463 8.461777875 5.963238831 CORE 81 O O 0.0000 81 O -13.124351056 15.522147711 9.733341952 CORE 82 O O 0.0000 82 O -7.708957571 15.748266997 5.936627569 CORE 83 O O 0.0000 83 O 1.781942620 8.480871497 9.791548573 CORE 84 O O 0.0000 84 O -7.678297714 8.529297387 5.830534353 CORE 85 O O 0.0000 85 O 1.833904090 15.697628876 9.769146384 CORE 86 O O 0.0000 86 O -3.481931123 15.688484741 5.977068067 CORE 87 O O 0.0000 87 O -12.928328460 8.467146357 9.814195638 CORE 88 O O 0.0000 88 O 1.923142659 8.442301830 4.861605558 CORE 89 O O 0.0000 89 O -7.896305489 15.555573478 8.608711606 CORE 90 O O 0.0000 90 O -12.869245733 15.758766838 4.769987204 CORE 91 O O 0.0000 91 O -3.387460728 8.360611475 8.627389834 CORE 92 O O 0.0000 92 O -9.436284512 5.980830711 5.619334047 CORE 93 O O 0.0000 93 O 0.647269255 13.376474017 9.304248966 CORE 94 O O 0.0000 94 O -2.186761968 17.928461978 5.387347248 CORE 95 O O 0.0000 95 O -11.611335588 10.700499732 9.200391512 CORE 96 O O 0.0000 96 O 0.638362872 10.720982935 5.382616928 CORE 97 O O 0.0000 97 O -8.955392377 17.881135500 9.322081880 CORE 98 O O 0.0000 98 O -11.939378182 13.332415073 5.370309973 CORE 99 O O 0.0000 99 O -2.085613518 6.115943394 9.218765984 CORE 100 O O 0.0000 100 O -12.004855299 10.746629930 5.260903814 CORE 101 O O 0.0000 101 O -2.152502993 17.893414553 9.199896130 CORE 102 O O 0.0000 102 O 0.589498238 13.361199581 5.396967487 CORE 103 O O 0.0000 103 O -9.084844188 6.043142033 8.800808365 CORE 104 O O 0.0000 104 O -2.089662573 6.149669996 5.397672067 CORE 105 O O 0.0000 105 O -11.692330556 13.340545708 9.192840968 CORE 106 O O 0.0000 106 O -9.271273948 17.801212968 5.263396928 CORE 107 O O 0.0000 107 O 0.539298993 10.742422267 9.184169958 CORE 108 O O 0.0000 108 O2 12.684086114 5.868113058 4.884609098 CORE 109 O2 O2 0.0000 109 O2 13.671484318 7.254478162 2.670873349 CORE 110 O2 O2 0.0000 110 H 13.257346753 6.612611800 3.295133443 CORE 111 H H 0.0000 111 H 13.673547142 8.096977394 3.167297357 CORE 112 H H 0.0000 112 C 13.860224002 5.631237926 5.720059153 CORE 113 C C 0.0000 113 C 12.873289400 4.556123405 5.486462819 CORE 114 C C 0.0000 114 H 13.102421879 3.738976099 4.773737029 CORE 115 H H 0.0000 115 H 12.153235676 4.320638286 6.291992168 CORE 116 H H 0.0000 116 H 14.815944504 5.610842076 5.161496582 CORE 117 H H 0.0000 117 H 13.860366220 6.164828393 6.694886280 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.318695407 4.755425362 3.518617352 CORE 1 Si Si 0.0000 1 Si -2.579778819 12.064140140 7.333028404 CORE 2 Si Si 0.0000 2 Si 1.073244341 4.795164785 3.484433333 CORE 3 Si Si 0.0000 3 Si -8.623790116 12.029492869 7.325656174 CORE 4 Si Si 0.0000 4 Si -13.620284163 7.699085857 11.077470709 CORE 5 Si Si 0.0000 5 Si -4.014645012 14.915822191 7.320087919 CORE 6 Si Si 0.0000 6 Si -7.152649465 9.194589866 7.223602391 CORE 7 Si Si 0.0000 7 Si 2.423380774 16.363353941 3.528565766 CORE 8 Si Si 0.0000 8 Si -13.631549737 16.328162802 3.446756309 CORE 9 Si Si 0.0000 9 Si -3.926752793 9.153663821 7.316044151 CORE 10 Si Si 0.0000 10 Si -7.237522790 14.910297885 7.266067854 CORE 11 Si Si 0.0000 11 Si 2.411187997 7.720638922 3.477963091 CORE 12 Si Si 0.0000 12 Si -10.237102271 4.581503440 5.825536716 CORE 13 Si Si 0.0000 13 Si -0.302081682 12.079004477 9.567671752 CORE 14 Si Si 0.0000 14 Si -10.784055018 12.043729011 9.593745108 CORE 15 Si Si 0.0000 15 Si -1.232216732 4.797099532 5.718071616 CORE 16 Si Si 0.0000 16 Si -9.961671612 4.674228135 8.881990227 CORE 17 Si Si 0.0000 17 Si -0.289394512 12.026300580 5.083167199 CORE 18 Si Si 0.0000 18 Si -11.010383564 12.022859637 5.098348237 CORE 19 Si Si 0.0000 19 Si -1.225752484 4.778152652 8.867010476 CORE 20 Si Si 0.0000 20 Ti -9.030777556 7.646134891 5.016468337 CORE 21 Ti Ti 0.0000 21 Si 0.683004866 14.958496887 8.899788300 CORE 22 Si Si 0.0000 22 Si -2.268301173 16.319688952 5.100679469 CORE 23 Si Si 0.0000 23 Si -11.854826049 9.139910284 8.802994147 CORE 24 Si Si 0.0000 24 Si 0.729178918 9.125833137 5.723712291 CORE 25 Si Si 0.0000 25 Si -9.008650160 16.264811889 9.545768596 CORE 26 Si Si 0.0000 26 Si -11.870293287 14.918870187 5.734295147 CORE 27 Si Si 0.0000 27 Si -2.216990362 7.712437511 9.532386437 CORE 28 Si Si 0.0000 28 Si -12.040251820 9.180968512 5.711442915 CORE 29 Si Si 0.0000 29 Si -2.224487274 16.297623155 9.545156291 CORE 30 Si Si 0.0000 30 Si 0.620867257 14.952757658 5.762521269 CORE 31 Si Si 0.0000 31 Si -9.018295919 7.618836255 9.233910735 CORE 32 Si Si 0.0000 32 Si -2.157608190 7.753961334 5.065015010 CORE 33 Si Si 0.0000 33 Si -11.896509383 14.925489148 8.852627130 CORE 34 Si Si 0.0000 34 Si -8.994763092 16.210866162 5.057827635 CORE 35 Si Si 0.0000 35 Si 0.638717935 9.145437905 8.864444105 CORE 36 Si Si 0.0000 36 O -15.228742454 7.766839464 3.355436081 CORE 37 O O 0.0000 37 O -5.626892943 15.005581341 7.373531053 CORE 38 O O 0.0000 38 O -15.226946552 16.121365035 3.611113047 CORE 39 O O 0.0000 39 O -5.538145110 9.103022097 7.279768756 CORE 40 O O 0.0000 40 O -10.581551816 4.338791779 7.405347858 CORE 41 O O 0.0000 41 O -0.746754591 12.028141487 3.523098002 CORE 42 O O 0.0000 42 O -10.424200780 12.072897672 3.576047960 CORE 43 O O 0.0000 43 O -0.817483548 4.770524659 7.290807209 CORE 44 O O 0.0000 44 O -13.148878634 6.141944127 3.479945912 CORE 45 O O 0.0000 45 O -3.556976059 13.354655289 7.258207469 CORE 46 O O 0.0000 46 O -7.628487594 10.753824039 7.281273312 CORE 47 O O 0.0000 47 O 2.112359801 17.964421279 3.500991202 CORE 48 O O 0.0000 48 O -3.464465914 10.712221367 7.403951553 CORE 49 O O 0.0000 49 O -13.316048630 17.915476746 3.247682895 CORE 50 O O 0.0000 50 O 1.908847221 6.175633827 3.491182912 CORE 51 O O 0.0000 51 O -7.716248180 13.362343967 7.139514421 CORE 52 O O 0.0000 52 O -11.649598586 4.568699834 5.001754078 CORE 53 O O 0.0000 53 O -1.654510334 12.187343364 8.670750895 CORE 54 O O 0.0000 54 O 0.120097222 4.732762218 4.813563929 CORE 55 O O 0.0000 55 O -9.365351562 12.077357449 8.783374602 CORE 56 O O 0.0000 56 O -1.627712860 12.003514623 6.009540461 CORE 57 O O 0.0000 57 O -11.159446930 4.802255252 9.975643833 CORE 58 O O 0.0000 58 O -9.756061183 11.947298863 6.145122597 CORE 59 O O 0.0000 59 O 0.145752917 4.725984119 9.746550363 CORE 60 O O 0.0000 60 O -10.564241525 8.548626690 5.395167999 CORE 61 O O 0.0000 61 O -0.782514064 15.617280389 9.197980632 CORE 62 O O 0.0000 62 O -10.433996069 8.341586900 8.845919771 CORE 63 O O 0.0000 63 O -0.855999036 15.610840748 5.514693658 CORE 64 O O 0.0000 64 O -0.701440963 8.418891570 5.374690132 CORE 65 O O 0.0000 65 O -10.507512601 15.725650124 9.185491560 CORE 66 O O 0.0000 66 O -10.318154396 15.389354649 5.531254569 CORE 67 O O 0.0000 67 O -0.799444082 8.444243064 9.170583925 CORE 68 O O 0.0000 68 O -12.426589846 9.073598584 7.286481973 CORE 69 O O 0.0000 69 O -2.553182066 16.082611437 3.516752823 CORE 70 O O 0.0000 70 O -8.811933027 7.714089152 3.232362188 CORE 71 O O 0.0000 71 O 1.028078896 15.134818576 7.323140087 CORE 72 O O 0.0000 72 O -2.526712520 7.954117509 3.499839089 CORE 73 O O 0.0000 73 O -12.285774507 15.130508712 7.288167961 CORE 74 O O 0.0000 74 O 1.035623727 8.927721405 7.304746749 CORE 75 O O 0.0000 75 O -8.675387094 15.926683291 3.491799782 CORE 76 O O 0.0000 76 O -13.191393911 8.400991921 4.874803700 CORE 77 O O 0.0000 77 O -3.402170308 15.609234081 8.665351521 CORE 78 O O 0.0000 78 O 1.721128461 15.694404731 4.835947861 CORE 79 O O 0.0000 79 O -7.813296000 8.367404133 8.460373385 CORE 80 O O 0.0000 80 O -3.312852836 8.462443692 5.963774835 CORE 81 O O 0.0000 81 O -13.121426653 15.523589041 9.732474805 CORE 82 O O 0.0000 82 O -7.706427681 15.744775026 5.937066277 CORE 83 O O 0.0000 83 O 1.782420078 8.478478794 9.792376618 CORE 84 O O 0.0000 84 O -7.675625799 8.529196340 5.829500837 CORE 85 O O 0.0000 85 O 1.835376876 15.694522788 9.770357529 CORE 86 O O 0.0000 86 O -3.482813294 15.687991613 5.978781973 CORE 87 O O 0.0000 87 O -12.928756074 8.460876810 9.813815430 CORE 88 O O 0.0000 88 O 1.924651432 8.445558841 4.860502512 CORE 89 O O 0.0000 89 O -7.895313047 15.553901512 8.609080404 CORE 90 O O 0.0000 90 O -12.867472347 15.758677034 4.770388637 CORE 91 O O 0.0000 91 O -3.387676075 8.361151451 8.626965276 CORE 92 O O 0.0000 92 O -9.440264095 5.982182093 5.621740514 CORE 93 O O 0.0000 93 O 0.649565901 13.376012313 9.304642107 CORE 94 O O 0.0000 94 O -2.186928434 17.928171520 5.386136711 CORE 95 O O 0.0000 95 O -11.622557284 10.702772936 9.211763921 CORE 96 O O 0.0000 96 O 0.639455001 10.721183011 5.383482782 CORE 97 O O 0.0000 97 O -8.951709738 17.881722324 9.317649991 CORE 98 O O 0.0000 98 O -11.939375103 13.334459372 5.370599579 CORE 99 O O 0.0000 99 O -2.081729581 6.116917542 9.218076694 CORE 100 O O 0.0000 100 O -12.006919663 10.749781857 5.264023458 CORE 101 O O 0.0000 101 O -2.155850392 17.893146871 9.200182465 CORE 102 O O 0.0000 102 O 0.585828300 13.362796014 5.398867313 CORE 103 O O 0.0000 103 O -9.086263474 6.043799922 8.801947166 CORE 104 O O 0.0000 104 O -2.087226789 6.150543097 5.395199798 CORE 105 O O 0.0000 105 O -11.690877785 13.341185578 9.190909116 CORE 106 O O 0.0000 106 O -9.265130122 17.804215126 5.267057520 CORE 107 O O 0.0000 107 O 0.541509808 10.742514089 9.182435361 CORE 108 O O 0.0000 108 O2 12.684172137 5.861294021 4.884119574 CORE 109 O2 O2 0.0000 109 O2 13.659057912 7.276321540 2.680875546 CORE 110 O2 O2 0.0000 110 H 13.244821431 6.622704425 3.291686537 CORE 111 H H 0.0000 111 H 13.655569835 8.107081263 3.195630969 CORE 112 H H 0.0000 112 C 13.865277432 5.631898265 5.712373734 CORE 113 C C 0.0000 113 C 12.876040795 4.554730221 5.496117899 CORE 114 C C 0.0000 114 H 13.101475239 3.727567841 4.792236107 CORE 115 H H 0.0000 115 H 12.159478034 4.326981926 6.308360922 CORE 116 H H 0.0000 116 H 14.817256406 5.604996610 5.148205557 CORE 117 H H 0.0000 117 H 13.872200278 6.173295468 6.681522758 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.320244979 4.757712549 3.517632826 CORE 1 Si Si 0.0000 1 Si -2.580159284 12.064080175 7.332603541 CORE 2 Si Si 0.0000 2 Si 1.071144183 4.794840598 3.484776343 CORE 3 Si Si 0.0000 3 Si -8.623531662 12.031394894 7.324810099 CORE 4 Si Si 0.0000 4 Si -13.619573654 7.700779445 11.076521632 CORE 5 Si Si 0.0000 5 Si -4.015338201 14.917503670 7.318963725 CORE 6 Si Si 0.0000 6 Si -7.152527647 9.195254385 7.223289354 CORE 7 Si Si 0.0000 7 Si 2.422695475 16.364240592 3.527695424 CORE 8 Si Si 0.0000 8 Si -13.631802033 16.327638826 3.446816862 CORE 9 Si Si 0.0000 9 Si -3.925316956 9.153854816 7.316226876 CORE 10 Si Si 0.0000 10 Si -7.238089735 14.912347373 7.264784213 CORE 11 Si Si 0.0000 11 Si 2.410768081 7.720595101 3.477364251 CORE 12 Si Si 0.0000 12 Si -10.237676913 4.581673245 5.824180578 CORE 13 Si Si 0.0000 13 Si -0.302501405 12.079174139 9.567963108 CORE 14 Si Si 0.0000 14 Si -10.782360150 12.044306610 9.592947339 CORE 15 Si Si 0.0000 15 Si -1.231812981 4.796771452 5.719361800 CORE 16 Si Si 0.0000 16 Si -9.961875989 4.674772436 8.880863066 CORE 17 Si Si 0.0000 17 Si -0.288509455 12.026693094 5.082442307 CORE 18 Si Si 0.0000 18 Si -11.010075844 12.021828119 5.098621793 CORE 19 Si Si 0.0000 19 Si -1.226125059 4.778871227 8.867136831 CORE 20 Si Si 0.0000 20 Ti -9.032348490 7.644265299 5.015005470 CORE 21 Ti Ti 0.0000 21 Si 0.682475448 14.958361533 8.899745243 CORE 22 Si Si 0.0000 22 Si -2.266865721 16.320124133 5.100354184 CORE 23 Si Si 0.0000 23 Si -11.853019369 9.137886022 8.802610971 CORE 24 Si Si 0.0000 24 Si 0.729155055 9.126227812 5.724594652 CORE 25 Si Si 0.0000 25 Si -9.009690136 16.263693449 9.546716456 CORE 26 Si Si 0.0000 26 Si -11.870878514 14.917846597 5.734535155 CORE 27 Si Si 0.0000 27 Si -2.216763277 7.711963410 9.531843434 CORE 28 Si Si 0.0000 28 Si -12.040792207 9.179824270 5.710761917 CORE 29 Si Si 0.0000 29 Si -2.224237094 16.297644633 9.544665398 CORE 30 Si Si 0.0000 30 Si 0.621896841 14.952010542 5.762090548 CORE 31 Si Si 0.0000 31 Si -9.017986659 7.617787294 9.234233586 CORE 32 Si Si 0.0000 32 Si -2.157366094 7.753694806 5.065536941 CORE 33 Si Si 0.0000 33 Si -11.897803580 14.925504572 8.853245369 CORE 34 Si Si 0.0000 34 Si -8.995798450 16.210162579 5.057166796 CORE 35 Si Si 0.0000 35 Si 0.637772064 9.146249743 8.864105432 CORE 36 Si Si 0.0000 36 O -15.228776902 7.767156876 3.354896197 CORE 37 O O 0.0000 37 O -5.626898908 15.008971256 7.368893465 CORE 38 O O 0.0000 38 O -15.227289490 16.124899818 3.611464120 CORE 39 O O 0.0000 39 O -5.539041907 9.102590087 7.281431922 CORE 40 O O 0.0000 40 O -10.579712805 4.338517322 7.404914018 CORE 41 O O 0.0000 41 O -0.747533611 12.029661521 3.523259047 CORE 42 O O 0.0000 42 O -10.424265826 12.072103852 3.576561828 CORE 43 O O 0.0000 43 O -0.817188914 4.773189801 7.291421796 CORE 44 O O 0.0000 44 O -13.152215449 6.142491455 3.475971597 CORE 45 O O 0.0000 45 O -3.556341950 13.356433491 7.259161262 CORE 46 O O 0.0000 46 O -7.624860764 10.755431283 7.280970697 CORE 47 O O 0.0000 47 O 2.111290573 17.964874190 3.500228426 CORE 48 O O 0.0000 48 O -3.464994947 10.712105472 7.402502530 CORE 49 O O 0.0000 49 O -13.316277640 17.915316887 3.246722864 CORE 50 O O 0.0000 50 O 1.906414901 6.175277495 3.489717610 CORE 51 O O 0.0000 51 O -7.716312842 13.364620776 7.140094014 CORE 52 O O 0.0000 52 O -11.650433415 4.575075474 5.001474665 CORE 53 O O 0.0000 53 O -1.656193463 12.185216613 8.670696352 CORE 54 O O 0.0000 54 O 0.120671095 4.732654252 4.814835019 CORE 55 O O 0.0000 55 O -9.362686383 12.078678127 8.783352237 CORE 56 O O 0.0000 56 O -1.627015437 12.006522979 6.009737716 CORE 57 O O 0.0000 57 O -11.159814886 4.805395648 9.973763405 CORE 58 O O 0.0000 58 O -9.757465651 11.946564143 6.145732011 CORE 59 O O 0.0000 59 O 0.144148690 4.727824016 9.747894558 CORE 60 O O 0.0000 60 O -10.561452219 8.548205347 5.395870070 CORE 61 O O 0.0000 61 O -0.783013653 15.616748485 9.197613204 CORE 62 O O 0.0000 62 O -10.433461840 8.338375007 8.850136755 CORE 63 O O 0.0000 63 O -0.855264086 15.610057163 5.514340455 CORE 64 O O 0.0000 64 O -0.701786787 8.419596451 5.374496985 CORE 65 O O 0.0000 65 O -10.509463807 15.725461723 9.187749686 CORE 66 O O 0.0000 66 O -10.319110658 15.388145829 5.530601338 CORE 67 O O 0.0000 67 O -0.798535739 8.442692614 9.171204978 CORE 68 O O 0.0000 68 O -12.424292046 9.066414133 7.286666068 CORE 69 O O 0.0000 69 O -2.552463474 16.083148241 3.516269384 CORE 70 O O 0.0000 70 O -8.808570618 7.710095403 3.235128629 CORE 71 O O 0.0000 71 O 1.026540486 15.132945957 7.322926933 CORE 72 O O 0.0000 72 O -2.526777566 7.953474467 3.499970465 CORE 73 O O 0.0000 73 O -12.285218146 15.130286149 7.289287439 CORE 74 O O 0.0000 74 O 1.034875113 8.928442286 7.304711756 CORE 75 O O 0.0000 75 O -8.673208802 15.923699872 3.492143400 CORE 76 O O 0.0000 76 O -13.190110299 8.398648805 4.875534449 CORE 77 O O 0.0000 77 O -3.403929453 15.611948088 8.664440557 CORE 78 O O 0.0000 78 O 1.722205964 15.694008758 4.835430570 CORE 79 O O 0.0000 79 O -7.812981351 8.371277951 8.462019967 CORE 80 O O 0.0000 80 O -3.313795243 8.462515045 5.964099739 CORE 81 O O 0.0000 81 O -13.122559388 15.522364653 9.732590359 CORE 82 O O 0.0000 82 O -7.706093018 15.745785787 5.936620494 CORE 83 O O 0.0000 83 O 1.782311731 8.480336854 9.792014363 CORE 84 O O 0.0000 84 O -7.676005302 8.530686247 5.831500926 CORE 85 O O 0.0000 85 O 1.834122516 15.696015723 9.769319524 CORE 86 O O 0.0000 86 O -3.481413829 15.687838096 5.977440364 CORE 87 O O 0.0000 87 O -12.928934663 8.464770664 9.814666525 CORE 88 O O 0.0000 88 O 1.923606260 8.443512813 4.861557633 CORE 89 O O 0.0000 89 O -7.895378286 15.555257218 8.608205879 CORE 90 O O 0.0000 90 O -12.868365487 15.759380474 4.770245849 CORE 91 O O 0.0000 91 O -3.388333469 8.361773303 8.626782398 CORE 92 O O 0.0000 92 O -9.437673969 5.979749029 5.620846742 CORE 93 O O 0.0000 93 O 0.648306922 13.376596110 9.304154408 CORE 94 O O 0.0000 94 O -2.186962112 17.928407490 5.386936230 CORE 95 O O 0.0000 95 O -11.615157558 10.700634654 9.204796851 CORE 96 O O 0.0000 96 O 0.638595732 10.720731541 5.382553484 CORE 97 O O 0.0000 97 O -8.952782622 17.880019655 9.320620305 CORE 98 O O 0.0000 98 O -11.939809260 13.332590500 5.370874580 CORE 99 O O 0.0000 99 O -2.083999284 6.116174606 9.218011348 CORE 100 O O 0.0000 100 O -12.006197415 10.748338077 5.262305292 CORE 101 O O 0.0000 101 O -2.154401277 17.893418445 9.199739421 CORE 102 O O 0.0000 102 O 0.588464228 13.362618136 5.397373940 CORE 103 O O 0.0000 103 O -9.085283926 6.043753938 8.800627846 CORE 104 O O 0.0000 104 O -2.088680524 6.149816594 5.397157743 CORE 105 O O 0.0000 105 O -11.691598108 13.341898531 9.191572769 CORE 106 O O 0.0000 106 O -9.268714422 17.800854762 5.265731735 CORE 107 O O 0.0000 107 O 0.540008732 10.742630848 9.183249105 CORE 108 O O 0.0000 108 O2 12.684010675 5.865193785 4.882863242 CORE 109 O2 O2 0.0000 109 O2 13.669428998 7.260957444 2.673415301 CORE 110 O2 O2 0.0000 110 H 13.253536330 6.617129235 3.295866399 CORE 111 H H 0.0000 111 H 13.666476690 8.099464946 3.177609928 CORE 112 H H 0.0000 112 C 13.862475039 5.632623038 5.718002998 CORE 113 C C 0.0000 113 C 12.874304936 4.555775289 5.490190051 CORE 114 C C 0.0000 114 H 13.102331045 3.735328305 4.780118800 CORE 115 H H 0.0000 115 H 12.155624310 4.321845521 6.298473213 CORE 116 H H 0.0000 116 H 14.816224512 5.609207877 5.157132854 CORE 117 H H 0.0000 117 H 13.863918573 6.167686981 6.690484059 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.322724449 4.761372164 3.516057523 CORE 1 Si Si 0.0000 1 Si -2.580768182 12.063984173 7.331923836 CORE 2 Si Si 0.0000 2 Si 1.067783890 4.794322099 3.485325127 CORE 3 Si Si 0.0000 3 Si -8.623118096 12.034438278 7.323456319 CORE 4 Si Si 0.0000 4 Si -13.618436878 7.703489128 11.075003232 CORE 5 Si Si 0.0000 5 Si -4.016447265 14.920194326 7.317164998 CORE 6 Si Si 0.0000 6 Si -7.152332507 9.196317472 7.222788571 CORE 7 Si Si 0.0000 7 Si 2.421599112 16.365659291 3.526302847 CORE 8 Si Si 0.0000 8 Si -13.632205976 16.326800609 3.446913626 CORE 9 Si Si 0.0000 9 Si -3.923019733 9.154160553 7.316519298 CORE 10 Si Si 0.0000 10 Si -7.238996731 14.915626294 7.262730492 CORE 11 Si Si 0.0000 11 Si 2.410096446 7.720524757 3.476406122 CORE 12 Si Si 0.0000 12 Si -10.238596419 4.581944963 5.822010695 CORE 13 Si Si 0.0000 13 Si -0.303173041 12.079445424 9.568429279 CORE 14 Si Si 0.0000 14 Si -10.779648591 12.045231027 9.591671000 CORE 15 Si Si 0.0000 15 Si -1.231166749 4.796246467 5.721426018 CORE 16 Si Si 0.0000 16 Si -9.962202954 4.675643230 8.879059471 CORE 17 Si Si 0.0000 17 Si -0.287093248 12.027321288 5.081282435 CORE 18 Si Si 0.0000 18 Si -11.009583376 12.020177775 5.099059588 CORE 19 Si Si 0.0000 19 Si -1.226721255 4.780020802 8.867339031 CORE 20 Si Si 0.0000 20 Ti -9.034862022 7.641274096 5.012664957 CORE 21 Ti Ti 0.0000 21 Si 0.681628302 14.958145023 8.899676322 CORE 22 Si Si 0.0000 22 Si -2.264568883 16.320820509 5.099833699 CORE 23 Si Si 0.0000 23 Si -11.850128644 9.134647318 8.801997754 CORE 24 Si Si 0.0000 24 Si 0.729116951 9.126859178 5.726006475 CORE 25 Si Si 0.0000 25 Si -9.011353828 16.261904003 9.548233106 CORE 26 Si Si 0.0000 26 Si -11.871815147 14.916208650 5.734919091 CORE 27 Si Si 0.0000 27 Si -2.216400132 7.711204762 9.530974689 CORE 28 Si Si 0.0000 28 Si -12.041656673 9.177993309 5.709672411 CORE 29 Si Si 0.0000 29 Si -2.223836615 16.297678940 9.543880029 CORE 30 Si Si 0.0000 30 Si 0.623543983 14.950815127 5.761401411 CORE 31 Si Si 0.0000 31 Si -9.017491881 7.616108842 9.234750116 CORE 32 Si Si 0.0000 32 Si -2.156978701 7.753268562 5.066371985 CORE 33 Si Si 0.0000 33 Si -11.899874294 14.925529510 8.854234459 CORE 34 Si Si 0.0000 34 Si -8.997455021 16.209036931 5.056109545 CORE 35 Si Si 0.0000 35 Si 0.636258672 9.147548656 8.863563493 CORE 36 Si Si 0.0000 36 O -15.228832327 7.767664708 3.354032321 CORE 37 O O 0.0000 37 O -5.626908531 15.014394946 7.361473386 CORE 38 O O 0.0000 38 O -15.227838345 16.130555586 3.612025913 CORE 39 O O 0.0000 39 O -5.540476973 9.101898901 7.284092851 CORE 40 O O 0.0000 40 O -10.576770504 4.338078249 7.404219860 CORE 41 O O 0.0000 41 O -0.748779888 12.032093721 3.523516856 CORE 42 O O 0.0000 42 O -10.424369939 12.070833481 3.577384092 CORE 43 O O 0.0000 43 O -0.816717615 4.777453969 7.292405181 CORE 44 O O 0.0000 44 O -13.157554082 6.143366862 3.469612725 CORE 45 O O 0.0000 45 O -3.555327377 13.359278673 7.260687498 CORE 46 O O 0.0000 46 O -7.619058144 10.758002584 7.280486421 CORE 47 O O 0.0000 47 O 2.109579732 17.965598963 3.499008076 CORE 48 O O 0.0000 48 O -3.465841323 10.711920243 7.400183927 CORE 49 O O 0.0000 49 O -13.316643672 17.915061169 3.245186739 CORE 50 O O 0.0000 50 O 1.902523074 6.174707104 3.487373142 CORE 51 O O 0.0000 51 O -7.716416378 13.368263669 7.141021258 CORE 52 O O 0.0000 52 O -11.651769180 4.585276642 5.001027513 CORE 53 O O 0.0000 53 O -1.658886547 12.181813725 8.670609021 CORE 54 O O 0.0000 54 O 0.121589253 4.732481707 4.816868808 CORE 55 O O 0.0000 55 O -9.358421981 12.080791184 8.783316483 CORE 56 O O 0.0000 56 O -1.625899445 12.011336205 6.010053340 CORE 57 O O 0.0000 57 O -11.160403385 4.810420194 9.970754903 CORE 58 O O 0.0000 58 O -9.759712838 11.945388477 6.146707180 CORE 59 O O 0.0000 59 O 0.141582043 4.730767795 9.750045194 CORE 60 O O 0.0000 60 O -10.556989213 8.547531314 5.396993351 CORE 61 O O 0.0000 61 O -0.783813072 15.615897439 9.197025318 CORE 62 O O 0.0000 62 O -10.432606804 8.333235864 8.856883824 CORE 63 O O 0.0000 63 O -0.854087858 15.608803368 5.513775391 CORE 64 O O 0.0000 64 O -0.702339876 8.420724116 5.374187904 CORE 65 O O 0.0000 65 O -10.512585660 15.725160311 9.191362734 CORE 66 O O 0.0000 66 O -10.320640793 15.386211514 5.529556182 CORE 67 O O 0.0000 67 O -0.797082389 8.440211981 9.172198557 CORE 68 O O 0.0000 68 O -12.420615950 9.054918809 7.286960772 CORE 69 O O 0.0000 69 O -2.551313612 16.084007072 3.515495958 CORE 70 O O 0.0000 70 O -8.803190800 7.703705637 3.239554888 CORE 71 O O 0.0000 71 O 1.024078914 15.129949564 7.322585901 CORE 72 O O 0.0000 72 O -2.526881294 7.952445543 3.500180729 CORE 73 O O 0.0000 73 O -12.284327701 15.129929816 7.291078558 CORE 74 O O 0.0000 74 O 1.033677332 8.929595754 7.304655767 CORE 75 O O 0.0000 75 O -8.669723612 15.918926431 3.492693173 CORE 76 O O 0.0000 76 O -13.188056904 8.394899964 4.876703754 CORE 77 O O 0.0000 77 O -3.406744163 15.616290529 8.662983014 CORE 78 O O 0.0000 78 O 1.723929699 15.693375230 4.834602981 CORE 79 O O 0.0000 79 O -7.812478106 8.377476145 8.464654499 CORE 80 O O 0.0000 80 O -3.315302862 8.462629354 5.964619617 CORE 81 O O 0.0000 81 O -13.124371840 15.520405546 9.732775214 CORE 82 O O 0.0000 82 O -7.705557827 15.747403121 5.935907241 CORE 83 O O 0.0000 83 O 1.782138722 8.483309462 9.791434769 CORE 84 O O 0.0000 84 O -7.676612468 8.533070157 5.834701130 CORE 85 O O 0.0000 85 O 1.832115500 15.698404389 9.767658716 CORE 86 O O 0.0000 86 O -3.479174532 15.687592613 5.975293911 CORE 87 O O 0.0000 87 O -12.929220445 8.471000859 9.816028293 CORE 88 O O 0.0000 88 O 1.921933908 8.440239081 4.863245827 CORE 89 O O 0.0000 89 O -7.895482592 15.557426204 8.606806531 CORE 90 O O 0.0000 90 O -12.869794395 15.760505832 4.770017480 CORE 91 O O 0.0000 91 O -3.389385376 8.362768497 8.626489825 CORE 92 O O 0.0000 92 O -9.433529461 5.975856328 5.619416661 CORE 93 O O 0.0000 93 O 0.646292401 13.377530185 9.303374136 CORE 94 O O 0.0000 94 O -2.187015996 17.928785156 5.388215460 CORE 95 O O 0.0000 95 O -11.603318111 10.697213459 9.193649539 CORE 96 O O 0.0000 96 O 0.637220708 10.720009075 5.381066501 CORE 97 O O 0.0000 97 O -8.954499429 17.877295413 9.325372762 CORE 98 O O 0.0000 98 O -11.940503989 13.329600307 5.371314582 CORE 99 O O 0.0000 99 O -2.087630540 6.114986111 9.217906748 CORE 100 O O 0.0000 100 O -12.005041971 10.746028115 5.259556348 CORE 101 O O 0.0000 101 O -2.152082307 17.893852905 9.199030504 CORE 102 O O 0.0000 102 O 0.592681673 13.362333300 5.394984589 CORE 103 O O 0.0000 103 O -9.083716264 6.043680279 8.798516996 CORE 104 O O 0.0000 104 O -2.091006614 6.148654189 5.400290471 CORE 105 O O 0.0000 105 O -11.692750665 13.343039170 9.192634585 CORE 106 O O 0.0000 106 O -9.274449108 17.795478352 5.263610538 CORE 107 O O 0.0000 107 O 0.537606819 10.742817663 9.184551232 CORE 108 O O 0.0000 108 O2 12.683752221 5.871433494 4.880853035 CORE 109 O2 O2 0.0000 109 O2 13.686023006 7.236375121 2.661478969 CORE 110 O2 O2 0.0000 110 H 13.267480169 6.608208817 3.302554284 CORE 111 H H 0.0000 111 H 13.683927851 8.087278868 3.148776218 CORE 112 H H 0.0000 112 C 13.857991441 5.633782848 5.727009867 CORE 113 C C 0.0000 113 C 12.871527753 4.557447255 5.480705449 CORE 114 C C 0.0000 114 H 13.103700488 3.747745018 4.760730970 CORE 115 H H 0.0000 115 H 12.149458353 4.313627245 6.282652940 CORE 116 H H 0.0000 116 H 14.814573137 5.615945759 5.171416622 CORE 117 H H 0.0000 117 H 13.850667731 6.158713516 6.704822142 CORE 118 H H 0.0000 118 end end 0.000000 !DATE PBC 19.2446 14.4147 7.6072 90.0000 90.0000 90.0000 Si -12.320416448 4.757965816 3.517523814 CORE 1 Si Si 0.0000 1 Si -2.580201430 12.064073544 7.332556528 CORE 2 Si Si 0.0000 2 Si 1.070911708 4.794804849 3.484814303 CORE 3 Si Si 0.0000 3 Si -8.623502987 12.031605493 7.324716454 CORE 4 Si Si 0.0000 4 Si -13.619494944 7.700966836 11.076416653 CORE 5 Si Si 0.0000 5 Si -4.015414795 14.917689909 7.318839271 CORE 6 Si Si 0.0000 6 Si -7.152514176 9.195327900 7.223254741 CORE 7 Si Si 0.0000 7 Si 2.422619651 16.364338756 3.527599117 CORE 8 Si Si 0.0000 8 Si -13.631829937 16.327580879 3.446823557 CORE 9 Si Si 0.0000 9 Si -3.925157996 9.153876006 7.316247112 CORE 10 Si Si 0.0000 10 Si -7.238152472 14.912574117 7.264642186 CORE 11 Si Si 0.0000 11 Si 2.410721702 7.720590200 3.477297992 CORE 12 Si Si 0.0000 12 Si -10.237740613 4.581691985 5.824030487 CORE 13 Si Si 0.0000 13 Si -0.302547977 12.079192878 9.567995363 CORE 14 Si Si 0.0000 14 Si -10.782172708 12.044370611 9.592859095 CORE 15 Si Si 0.0000 15 Si -1.231768334 4.796735127 5.719504587 CORE 16 Si Si 0.0000 16 Si -9.961898505 4.674832689 8.880738307 CORE 17 Si Si 0.0000 17 Si -0.288411500 12.026736626 5.082362051 CORE 18 Si Si 0.0000 18 Si -11.010041781 12.021713954 5.098652069 CORE 19 Si Si 0.0000 19 Si -1.226166242 4.778950652 8.867150829 CORE 20 Si Si 0.0000 20 Ti -9.032522461 7.644058448 5.014843588 CORE 21 Ti Ti 0.0000 21 Si 0.682416944 14.958346541 8.899740451 CORE 22 Si Si 0.0000 22 Si -2.266706761 16.320172278 5.100318126 CORE 23 Si Si 0.0000 23 Si -11.852819418 9.137662017 8.802568523 CORE 24 Si Si 0.0000 24 Si 0.729152361 9.126271489 5.724692329 CORE 25 Si Si 0.0000 25 Si -9.009805219 16.263569771 9.546821435 CORE 26 Si Si 0.0000 26 Si -11.870943368 14.917733297 5.734561704 CORE 27 Si Si 0.0000 27 Si -2.216738259 7.711910940 9.531783336 CORE 28 Si Si 0.0000 28 Si -12.040851866 9.179697564 5.710686605 CORE 29 Si Si 0.0000 29 Si -2.224209382 16.297647083 9.544611082 CORE 30 Si Si 0.0000 30 Si 0.622010769 14.951927801 5.762042851 CORE 31 Si Si 0.0000 31 Si -9.017952403 7.617671111 9.234269340 CORE 32 Si Si 0.0000 32 Si -2.157339344 7.753665400 5.065594756 CORE 33 Si Si 0.0000 33 Si -11.897946759 14.925506302 8.853313757 CORE 34 Si Si 0.0000 34 Si -8.995912955 16.210084739 5.057093691 CORE 35 Si Si 0.0000 35 Si 0.637667374 9.146339547 8.864067928 CORE 36 Si Si 0.0000 36 O -15.228780751 7.767192048 3.354836404 CORE 37 O O 0.0000 37 O -5.626899678 15.009346327 7.368380206 CORE 38 O O 0.0000 38 O -15.227327402 16.125291034 3.611502993 CORE 39 O O 0.0000 39 O -5.539141209 9.102542230 7.281615941 CORE 40 O O 0.0000 40 O -10.579509198 4.338487051 7.404866017 CORE 41 O O 0.0000 41 O -0.747619826 12.029829741 3.523276924 CORE 42 O O 0.0000 42 O -10.424272947 12.072015922 3.576618730 CORE 43 O O 0.0000 43 O -0.817156391 4.773484726 7.291489804 CORE 44 O O 0.0000 44 O -13.152584752 6.142551997 3.475531748 CORE 45 O O 0.0000 45 O -3.556271708 13.356630396 7.259266850 CORE 46 O O 0.0000 46 O -7.624459322 10.755609160 7.280937225 CORE 47 O O 0.0000 47 O 2.111172219 17.964924353 3.500144062 CORE 48 O O 0.0000 48 O -3.465053451 10.712092787 7.402342094 CORE 49 O O 0.0000 49 O -13.316302851 17.915299301 3.246616591 CORE 50 O O 0.0000 50 O 1.906145670 6.175237999 3.489555424 CORE 51 O O 0.0000 51 O -7.716319963 13.364872745 7.140158143 CORE 52 O O 0.0000 52 O -11.650525789 4.575781220 5.001443703 CORE 53 O O 0.0000 53 O -1.656379750 12.184981220 8.670690266 CORE 54 O O 0.0000 54 O 0.120734602 4.732642288 4.814975753 CORE 55 O O 0.0000 55 O -9.362391364 12.078824293 8.783349802 CORE 56 O O 0.0000 56 O -1.626938266 12.006855960 6.009759549 CORE 57 O O 0.0000 57 O -11.159855492 4.805743187 9.973555348 CORE 58 O O 0.0000 58 O -9.757620954 11.946482700 6.145799487 CORE 59 O O 0.0000 59 O 0.143971255 4.728027552 9.748043355 CORE 60 O O 0.0000 60 O -10.561143536 8.548158787 5.395947739 CORE 61 O O 0.0000 61 O -0.783068885 15.616689673 9.197572581 CORE 62 O O 0.0000 62 O -10.433402566 8.338019540 8.850603458 CORE 63 O O 0.0000 63 O -0.855182681 15.609970530 5.514301430 CORE 64 O O 0.0000 64 O -0.701825084 8.419674435 5.374475608 CORE 65 O O 0.0000 65 O -10.509679731 15.725440822 9.187999583 CORE 66 O O 0.0000 66 O -10.319216503 15.388012060 5.530529069 CORE 67 O O 0.0000 67 O -0.798435282 8.442521079 9.171273671 CORE 68 O O 0.0000 68 O -12.424037825 9.065618871 7.286686455 CORE 69 O O 0.0000 69 O -2.552383994 16.083207630 3.516215905 CORE 70 O O 0.0000 70 O -8.808198428 7.709653447 3.235434743 CORE 71 O O 0.0000 71 O 1.026370172 15.132738673 7.322903350 CORE 72 O O 0.0000 72 O -2.526784687 7.953403258 3.499984995 CORE 73 O O 0.0000 73 O -12.285156564 15.130261499 7.289411284 CORE 74 O O 0.0000 74 O 1.034792361 8.928522144 7.304707876 CORE 75 O O 0.0000 75 O -8.672967667 15.923369775 3.492181360 CORE 76 O O 0.0000 76 O -13.189968274 8.398389484 4.875615314 CORE 77 O O 0.0000 77 O -3.404124208 15.612248492 8.664339761 CORE 78 O O 0.0000 78 O 1.722325087 15.693964938 4.835373364 CORE 79 O O 0.0000 79 O -7.812946519 8.371706790 8.462202236 CORE 80 O O 0.0000 80 O -3.313899548 8.462522973 5.964135722 CORE 81 O O 0.0000 81 O -13.122684862 15.522229155 9.732603139 CORE 82 O O 0.0000 82 O -7.706056069 15.745897646 5.936571123 CORE 83 O O 0.0000 83 O 1.782299799 8.480542409 9.791974273 CORE 84 O O 0.0000 84 O -7.676047255 8.530851152 5.831722296 CORE 85 O O 0.0000 85 O 1.833983762 15.696180916 9.769204655 CORE 86 O O 0.0000 86 O -3.481258911 15.687821087 5.977291947 CORE 87 O O 0.0000 87 O -12.928954485 8.465201520 9.814760702 CORE 88 O O 0.0000 88 O 1.923490600 8.443286357 4.861674404 CORE 89 O O 0.0000 89 O -7.895385407 15.555407276 8.608109039 CORE 90 O O 0.0000 90 O -12.868464211 15.759458313 4.770230102 CORE 91 O O 0.0000 91 O -3.388406213 8.361842206 8.626762163 CORE 92 O O 0.0000 92 O -9.437387226 5.979479762 5.620747772 CORE 93 O O 0.0000 93 O 0.648167591 13.376660688 9.304100473 CORE 94 O O 0.0000 94 O -2.186965768 17.928433580 5.387024702 CORE 95 O O 0.0000 95 O -11.614338701 10.700397964 9.204025783 CORE 96 O O 0.0000 96 O 0.638500471 10.720681522 5.382450558 CORE 97 O O 0.0000 97 O -8.952901361 17.879831254 9.320949013 CORE 98 O O 0.0000 98 O -11.939857372 13.332383649 5.370905009 CORE 99 O O 0.0000 99 O -2.084250426 6.116092442 9.218004121 CORE 100 O O 0.0000 100 O -12.006117550 10.748178361 5.262115188 CORE 101 O O 0.0000 101 O -2.154240777 17.893448427 9.199690354 CORE 102 O O 0.0000 102 O 0.588755975 13.362598388 5.397208711 CORE 103 O O 0.0000 103 O -9.085175387 6.043748893 8.800481864 CORE 104 O O 0.0000 104 O -2.088841408 6.149736159 5.397374397 CORE 105 O O 0.0000 105 O -11.691677781 13.341977380 9.191646255 CORE 106 O O 0.0000 106 O -9.269111052 17.800482862 5.265585068 CORE 107 O O 0.0000 107 O 0.539842459 10.742643822 9.183339174 CORE 108 O O 0.0000 108 O2 12.683992778 5.865625362 4.882724182 CORE 109 O2 O2 0.0000 109 O2 13.670576936 7.259257081 2.672589613 CORE 110 O2 O2 0.0000 110 H 13.254500868 6.616512140 3.296329070 CORE 111 H H 0.0000 111 H 13.667683902 8.098621972 3.175615392 CORE 112 H H 0.0000 112 C 13.862165009 5.632703328 5.718626029 CORE 113 C C 0.0000 113 C 12.874112875 4.555890896 5.489534005 CORE 114 C C 0.0000 114 H 13.102425728 3.736187279 4.778777647 CORE 115 H H 0.0000 115 H 12.155197851 4.321277004 6.297378915 CORE 116 H H 0.0000 116 H 14.816110200 5.609673906 5.158120956 CORE 117 H H 0.0000 117 H 13.863001955 6.167066282 6.691475812 CORE 118 H H 0.0000 118 end end gdis-0.90/models/al2o3_BFDH.gmf0000644000175000017500000000106407717054764014531 0ustar seansean title: GDIS morphology file name: al2o3_morph space: R -3 c cell: 4.760200 4.760200 12.993300 90.000003 90.000003 120.000003 miller: -1 1 -2 0.0000 1 1 0.0000 0.0000 0.0000 0.0000 -1 miller: -1 0 2 0.0000 1 1 0.0000 0.0000 0.0000 0.0000 -1 miller: -1 1 4 0.0000 1 1 0.0000 0.0000 0.0000 0.0000 -1 miller: 0 -1 4 0.0000 1 1 0.0000 0.0000 0.0000 0.0000 -1 miller: 0 0 -6 0.0000 1 1 0.0000 0.0000 0.0000 0.0000 -1 gdis-0.90/models/gibb_001.gin0000644000175000017500000001052707717054773014321 0ustar seanseansingle conv mole comp name gibb_001 svectors 5.078000 0.000000 0.000001 8.684000 cartesian region 1 O1 core 3.20676 0.45189 -8.29234 O1 shel 3.20676 0.45189 -8.29234 H1 core 3.10251 0.49391 -9.26409 Al core 2.38920 1.45982 -2.44869 Al core 4.95816 2.90578 -2.44966 O1 core 3.96947 1.63081 -3.50852 O1 shel 3.96947 1.63081 -3.50852 H1 core 4.38460 0.76769 -3.64475 O1 core 4.41024 4.40856 -3.43961 O1 shel 4.41024 4.40856 -3.43961 H1 core 4.51449 4.45058 -4.41136 O1 core 1.43301 2.66109 -3.44738 O1 shel 1.43301 2.66109 -3.44738 H1 core 1.43835 2.72714 -4.42493 O1 core 1.74785 5.89017 -3.41923 O1 shel 1.74785 5.89017 -3.41923 H1 core 2.27478 5.06919 -3.42123 O1 core 1.88241 8.58828 -3.46291 O1 shel 1.88241 8.58828 -3.46291 H1 core 0.94073 8.34699 -3.52367 O1 core 4.32087 7.19389 -3.41147 O1 shel 4.32087 7.19389 -3.41147 H1 core 4.25886 7.15450 -4.39134 Al core 4.92820 3.26751 -7.25677 Al core 0.14980 6.18714 -7.30141 Al core 2.41916 1.82155 -7.25580 Al core 2.65884 7.63311 -7.30238 O1 core 1.43047 3.09652 -6.19693 O1 shel 1.43047 3.09652 -6.19693 H1 core 1.84560 3.95964 -6.06071 O1 core 3.64753 6.35814 -8.36125 O1 shel 3.64753 6.35814 -8.36125 H1 core 3.23240 5.49502 -8.49747 O1 core 1.87124 0.31877 -6.26584 O1 shel 1.87124 0.31877 -6.26584 H1 core 1.97549 0.27675 -5.29409 O1 core 3.97201 2.06624 -6.25808 O1 shel 3.97201 2.06624 -6.25808 H1 core 3.97735 2.00018 -5.28052 O1 core 1.10599 7.38842 -8.30010 O1 shel 1.10599 7.38842 -8.30010 H1 core 1.10065 7.45447 -9.27765 O1 core 4.28685 7.52116 -6.28622 O1 shel 4.28685 7.52116 -6.28622 H1 core 4.81378 8.34214 -6.28422 O1 core 0.79115 1.93350 -8.27196 O1 shel 0.79115 1.93350 -8.27196 H1 core 0.26422 1.11252 -8.27396 O1 core 4.42141 4.82304 -6.24255 O1 shel 4.42141 4.82304 -6.24255 H1 core 3.47972 5.06434 -6.18178 O1 core 0.65659 4.63161 -8.31563 O1 shel 0.65659 4.63161 -8.31563 H1 core 1.59828 4.39031 -8.37640 O1 core 1.78187 6.21744 -6.29399 O1 shel 1.78187 6.21744 -6.29399 H1 core 1.71986 6.25683 -5.31411 O1 core 3.29613 3.23722 -8.26419 O1 shel 3.29613 3.23722 -8.26419 H1 core 3.35814 3.19782 -9.24407 Al core 2.68880 7.22418 -2.40404 Al core 0.11984 5.77822 -2.40307 O1 core 3.33015 2.79383 -1.43350 O1 shel 3.33015 2.79383 -1.43350 H1 core 2.80322 3.61481 -1.43150 O1 core 3.19559 0.09572 -1.38982 O1 shel 3.19559 0.09572 -1.38982 H1 core 4.13728 0.33701 -1.32905 O1 core 0.75713 1.49011 -1.44126 O1 shel 0.75713 1.49011 -1.44126 H1 core 0.81914 1.52950 -0.46139 O1 core 1.10853 7.05319 -1.34420 O1 shel 1.10853 7.05319 -1.34420 H1 core 0.69340 7.91631 -1.20798 O1 core 0.66776 4.27544 -1.41311 O1 shel 0.66776 4.27544 -1.41311 H1 core 0.56351 4.23342 -0.44137 O1 core 3.64499 6.02291 -1.40535 O1 shel 3.64499 6.02291 -1.40535 H1 core 3.63965 5.95686 -0.42780 sbulkenergy 0.000000 elements covalent Al 0.1 end species Al core 3.000 O1 core 0.948 O1 shel -2.366 H1 core 0.418 end buck inter Al core O1 shel 1342.86 0.2944 0.0 0.0 15.0 0 0 0 buck inter Al core H1 core 560.44 0.2906 0.0 0.0 15.0 0 0 0 buck inter O1 shel O1 shel 9999.97 0.1490 17.0 0.0 15.0 0 0 0 buck inter O1 shel H1 core 235.00 0.2500 0.0 0.0 15.0 0 0 0 morse bond O1 core H1 core 5.4246 2.2682 0.95 0 0 0 spring O1 60.1 0 #--- Additional options/data title gibbsite fit end observable freq 1 168 3617 0.1 observables weights 11 3 4 5 6 49 50 51 52 95 96 97 20000 20000 20000 1000 20000 20000 20000 1000 20000 20000 20000 print 1 gdis-0.90/models/calcite_-114_0.0000.gin0000644000175000017500000007032507717054766015705 0ustar seanseansingle conv mole name calcite_-114_0.0000 svectors 4.980183 -0.000000 -4.980185 -24.270662 sfractional region 1 Ca core 0.085960 0.085960 -6.067331 2.00000000 1.00000 0.00000 C core 0.042980 0.042980 -3.033665 1.34353899 1.00000 0.00000 O core 0.201220 0.074893 -3.800132 1.01848700 1.00000 0.00000 O shel 0.201586 0.074967 -3.801902 -2.1330000 1.00000 0.00000 O core -0.209674 0.042980 -3.033665 1.01848700 1.00000 0.00000 O shel -0.210258 0.042980 -3.033665 -2.1330000 1.00000 0.00000 O core 0.137393 0.011066 -2.267197 1.01848700 1.00000 0.00000 O shel 0.137611 0.010993 -2.265427 -2.1330000 1.00000 0.00000 O core 0.051406 0.177733 -2.267198 1.01848700 1.00000 0.00000 O shel 0.051041 0.177659 -2.265427 -2.1330000 1.00000 0.00000 C core 0.209647 0.209647 -3.033665 1.34353899 1.00000 0.00000 O core 0.462301 0.209647 -3.033665 1.01848700 1.00000 0.00000 O shel 0.462884 0.209647 -3.033665 -2.1330000 1.00000 0.00000 O core 0.115233 0.241560 -3.800133 1.01848700 1.00000 0.00000 O shel 0.115015 0.241634 -3.801903 -2.1330000 1.00000 0.00000 Ca core 0.292980 0.792980 -3.033666 2.00000000 1.00000 0.00000 Ca core 0.459646 0.959647 -3.033667 2.00000000 1.00000 0.00000 Ca core 0.045606 0.545606 -9.100997 2.00000000 1.00000 0.00000 C core 0.169293 0.669293 -6.067332 1.34353899 1.00000 0.00000 O core 0.011053 0.637379 -5.300864 1.01848700 1.00000 0.00000 O shel 0.010687 0.637306 -5.299094 -2.1330000 1.00000 0.00000 O core 0.421947 0.669293 -6.067331 1.01848700 1.00000 0.00000 O shel 0.422530 0.669293 -6.067331 -2.1330000 1.00000 0.00000 O core 0.074880 0.701207 -6.833799 1.01848700 1.00000 0.00000 O shel 0.074662 0.701280 -6.835569 -2.1330000 1.00000 0.00000 O core 0.430373 0.804046 -5.300863 1.01848700 1.00000 0.00000 O shel 0.430591 0.803972 -5.299092 -2.1330000 1.00000 0.00000 C core 0.335960 0.835960 -6.067330 1.34353899 1.00000 0.00000 O core 0.083306 0.835960 -6.067330 1.01848700 1.00000 0.00000 O shel 0.082722 0.835960 -6.067330 -2.1330000 1.00000 0.00000 O core 0.494200 0.867873 -6.833798 1.01848700 1.00000 0.00000 O shel 0.494566 0.867947 -6.835568 -2.1330000 1.00000 0.00000 O core -0.069654 0.556673 -11.368194 1.01848700 1.00000 0.00000 O shel -0.070020 0.556599 -11.366424 -2.1330000 1.00000 0.00000 C core 0.088586 0.588586 -12.134662 1.34353899 1.00000 0.00000 O core 0.341240 0.588586 -12.134662 1.01848700 1.00000 0.00000 O shel 0.341824 0.588586 -12.134662 -2.1330000 1.00000 0.00000 O core -0.005827 0.620500 -12.901129 1.01848700 1.00000 0.00000 O shel -0.006045 0.620573 -12.902899 -2.1330000 1.00000 0.00000 Ca core 0.212273 0.712273 -9.100996 2.00000000 1.00000 0.00000 Ca core 0.171920 0.171919 -12.134661 2.00000000 1.00000 0.00000 Ca core 0.338586 0.338586 -12.134662 2.00000000 1.00000 0.00000 C core 0.295606 0.295606 -9.100995 1.34353899 1.00000 0.00000 O core 0.453847 0.327520 -9.867462 1.01848700 1.00000 0.00000 O shel 0.454212 0.327593 -9.869232 -2.1330000 1.00000 0.00000 O core 0.042952 0.295606 -9.100995 1.01848700 1.00000 0.00000 O shel 0.042369 0.295606 -9.100995 -2.1330000 1.00000 0.00000 O core 0.390020 0.263693 -8.334527 1.01848700 1.00000 0.00000 O shel 0.390238 0.263619 -8.332757 -2.1330000 1.00000 0.00000 C core 0.002626 0.502626 -6.067331 1.34353899 1.00000 0.00000 O core 0.160867 0.534540 -6.833798 1.01848700 1.00000 0.00000 O shel 0.161232 0.534614 -6.835568 -2.1330000 1.00000 0.00000 O core 0.097040 0.470713 -5.300863 1.01848700 1.00000 0.00000 O shel 0.097258 0.470639 -5.299093 -2.1330000 1.00000 0.00000 O core -0.250028 0.502626 -6.067331 1.01848700 1.00000 0.00000 O shel -0.250611 0.502626 -6.067331 -2.1330000 1.00000 0.00000 Ca core 0.419293 0.419293 -6.067331 2.00000000 1.00000 0.00000 C core 0.542980 0.542980 -3.033666 1.34353899 1.00000 0.00000 O core 0.384739 0.511066 -2.267199 1.01848700 1.00000 0.00000 O shel 0.384374 0.510993 -2.265428 -2.1330000 1.00000 0.00000 O core 0.795634 0.542980 -3.033666 1.01848700 1.00000 0.00000 O shel 0.796217 0.542980 -3.033666 -2.1330000 1.00000 0.00000 O core 0.448566 0.574893 -3.800133 1.01848700 1.00000 0.00000 O shel 0.448348 0.574967 -3.801903 -2.1330000 1.00000 0.00000 O core 0.804060 0.677733 -2.267197 1.01848700 1.00000 0.00000 O shel 0.804278 0.677659 -2.265427 -2.1330000 1.00000 0.00000 C core 0.709647 0.709647 -3.033665 1.34353899 1.00000 0.00000 O core 0.456993 0.709647 -3.033665 1.01848700 1.00000 0.00000 O shel 0.456409 0.709647 -3.033665 -2.1330000 1.00000 0.00000 O core 0.867887 0.741560 -3.800133 1.01848700 1.00000 0.00000 O shel 0.868253 0.741634 -3.801903 -2.1330000 1.00000 0.00000 O core 0.304032 0.430359 -8.334528 1.01848700 1.00000 0.00000 O shel 0.303667 0.430286 -8.332758 -2.1330000 1.00000 0.00000 C core 0.462273 0.462273 -9.100996 1.34353899 1.00000 0.00000 O core 0.714927 0.462273 -9.100996 1.01848700 1.00000 0.00000 O shel 0.715511 0.462273 -9.100996 -2.1330000 1.00000 0.00000 O core 0.367859 0.494186 -9.867463 1.01848700 1.00000 0.00000 O shel 0.367641 0.494260 -9.869234 -2.1330000 1.00000 0.00000 Ca core 0.585960 0.585960 -6.067330 2.00000000 1.00000 0.00000 Ca core 0.126313 0.626313 -3.033666 2.00000000 1.00000 0.00000 Ca core 0.545606 0.045606 -9.100996 2.00000000 1.00000 0.00000 Ca core 0.712273 0.212273 -9.100997 2.00000000 1.00000 0.00000 C core 0.128940 0.128939 -9.100996 1.34353899 1.00000 0.00000 O core -0.029301 0.097026 -8.334528 1.01848700 1.00000 0.00000 O shel -0.029666 0.096952 -8.332758 -2.1330000 1.00000 0.00000 O core 0.034526 0.160853 -9.867463 1.01848700 1.00000 0.00000 O shel 0.034308 0.160927 -9.869234 -2.1330000 1.00000 0.00000 O core 0.381594 0.128939 -9.100996 1.01848700 1.00000 0.00000 O shel 0.382177 0.128939 -9.100996 -2.1330000 1.00000 0.00000 C core 0.669293 0.169293 -6.067330 1.34353899 1.00000 0.00000 O core 0.827534 0.201207 -6.833797 1.01848700 1.00000 0.00000 O shel 0.827899 0.201280 -6.835567 -2.1330000 1.00000 0.00000 O core 0.416639 0.169293 -6.067330 1.01848700 1.00000 0.00000 O shel 0.416056 0.169293 -6.067330 -2.1330000 1.00000 0.00000 O core 0.763707 0.137379 -5.300862 1.01848700 1.00000 0.00000 O shel 0.763925 0.137306 -5.299092 -2.1330000 1.00000 0.00000 O core 0.683000 0.056672 -11.368193 1.01848700 1.00000 0.00000 O shel 0.683218 0.056599 -11.366423 -2.1330000 1.00000 0.00000 C core 0.588586 0.088586 -12.134661 1.34353899 1.00000 0.00000 O core 0.335932 0.088586 -12.134661 1.01848700 1.00000 0.00000 O shel 0.335349 0.088586 -12.134661 -2.1330000 1.00000 0.00000 O core 0.746827 0.120500 -12.901129 1.01848700 1.00000 0.00000 O shel 0.747192 0.120573 -12.902899 -2.1330000 1.00000 0.00000 Ca core 0.005253 0.005253 -12.134662 2.00000000 1.00000 0.00000 Ca core 0.252626 0.252626 -6.067331 2.00000000 1.00000 0.00000 C core 0.376313 0.376313 -3.033666 1.34353899 1.00000 0.00000 O core 0.534554 0.408227 -3.800133 1.01848700 1.00000 0.00000 O shel 0.534919 0.408300 -3.801903 -2.1330000 1.00000 0.00000 O core 0.470727 0.344400 -2.267198 1.01848700 1.00000 0.00000 O shel 0.470945 0.344326 -2.265428 -2.1330000 1.00000 0.00000 O core 0.123659 0.376313 -3.033666 1.01848700 1.00000 0.00000 O shel 0.123076 0.376313 -3.033666 -2.1330000 1.00000 0.00000 Ca core 0.792980 0.292980 -3.033666 2.00000000 1.00000 0.00000 O core 0.677719 0.304046 -5.300863 1.01848700 1.00000 0.00000 O shel 0.677354 0.303972 -5.299093 -2.1330000 1.00000 0.00000 C core 0.835960 0.335960 -6.067330 1.34353899 1.00000 0.00000 O core 1.088614 0.335960 -6.067330 1.01848700 1.00000 0.00000 O shel 1.089197 0.335960 -6.067330 -2.1330000 1.00000 0.00000 O core 0.741546 0.367873 -6.833798 1.01848700 1.00000 0.00000 O shel 0.741328 0.367947 -6.835568 -2.1330000 1.00000 0.00000 Ca core 0.959647 0.459647 -3.033665 2.00000000 1.00000 0.00000 C core 0.502626 0.002626 -6.067330 1.34353899 1.00000 0.00000 O core 0.344386 -0.029287 -5.300862 1.01848700 1.00000 0.00000 O shel 0.344020 -0.029361 -5.299092 -2.1330000 1.00000 0.00000 O core 0.408213 0.034540 -6.833797 1.01848700 1.00000 0.00000 O shel 0.407995 0.034614 -6.835568 -2.1330000 1.00000 0.00000 O core 0.755280 0.002626 -6.067330 1.01848700 1.00000 0.00000 O shel 0.755864 0.002626 -6.067330 -2.1330000 1.00000 0.00000 Ca core 0.626313 0.126313 -3.033665 2.00000000 1.00000 0.00000 C core 0.421919 0.921919 -12.134663 1.34353899 1.00000 0.00000 O core 0.263679 0.890006 -11.368195 1.01848700 1.00000 0.00000 O shel 0.263314 0.889932 -11.366425 -2.1330000 1.00000 0.00000 O core 0.674573 0.921919 -12.134662 1.01848700 1.00000 0.00000 O shel 0.675157 0.921919 -12.134662 -2.1330000 1.00000 0.00000 O core 0.327506 0.953833 -12.901129 1.01848700 1.00000 0.00000 O shel 0.327288 0.953907 -12.902899 -2.1330000 1.00000 0.00000 C core 0.255253 0.755253 -12.134663 1.34353899 1.00000 0.00000 O core 0.413493 0.787166 -12.901130 1.01848700 1.00000 0.00000 O shel 0.413859 0.787240 -12.902900 -2.1330000 1.00000 0.00000 O core 0.349666 0.723339 -11.368195 1.01848700 1.00000 0.00000 O shel 0.349884 0.723266 -11.366425 -2.1330000 1.00000 0.00000 O core 0.002599 0.755253 -12.134663 1.01848700 1.00000 0.00000 O shel 0.002015 0.755253 -12.134663 -2.1330000 1.00000 0.00000 Ca core 0.919293 0.919293 -6.067331 2.00000000 1.00000 0.00000 Ca core 0.671920 0.671919 -12.134663 2.00000000 1.00000 0.00000 C core 0.795606 0.795606 -9.100998 1.34353899 1.00000 0.00000 O core 0.637366 0.763693 -8.334530 1.01848700 1.00000 0.00000 O shel 0.637000 0.763619 -8.332760 -2.1330000 1.00000 0.00000 O core 1.048260 0.795606 -9.100997 1.01848700 1.00000 0.00000 O shel 1.048844 0.795606 -9.100997 -2.1330000 1.00000 0.00000 O core 0.701193 0.827520 -9.867464 1.01848700 1.00000 0.00000 O shel 0.700975 0.827593 -9.869234 -2.1330000 1.00000 0.00000 O core 1.056686 0.930359 -8.334528 1.01848700 1.00000 0.00000 O shel 1.056904 0.930286 -8.332758 -2.1330000 1.00000 0.00000 C core 0.962273 0.962273 -9.100996 1.34353899 1.00000 0.00000 O core 0.709619 0.962273 -9.100996 1.01848700 1.00000 0.00000 O shel 0.709035 0.962273 -9.100996 -2.1330000 1.00000 0.00000 O core 1.120513 0.994186 -9.867464 1.01848700 1.00000 0.00000 O shel 1.120879 0.994260 -9.869234 -2.1330000 1.00000 0.00000 Ca core 0.838586 0.838586 -12.134662 2.00000000 1.00000 0.00000 Ca core 0.378940 0.878940 -9.100997 2.00000000 1.00000 0.00000 C core 0.921920 0.421919 -12.134660 1.34353899 1.00000 0.00000 O core 1.080160 0.453833 -12.901127 1.01848700 1.00000 0.00000 O shel 1.080526 0.453907 -12.902897 -2.1330000 1.00000 0.00000 O core 0.669266 0.421919 -12.134660 1.01848700 1.00000 0.00000 O shel 0.668682 0.421919 -12.134660 -2.1330000 1.00000 0.00000 O core 1.016333 0.390006 -11.368192 1.01848700 1.00000 0.00000 O shel 1.016551 0.389932 -11.366422 -2.1330000 1.00000 0.00000 Ca core 0.505253 0.505253 -12.134662 2.00000000 1.00000 0.00000 C core 0.628940 0.628940 -9.100996 1.34353899 1.00000 0.00000 O core 0.787180 0.660853 -9.867464 1.01848700 1.00000 0.00000 O shel 0.787546 0.660927 -9.869234 -2.1330000 1.00000 0.00000 O core 0.723353 0.597026 -8.334529 1.01848700 1.00000 0.00000 O shel 0.723571 0.596952 -8.332759 -2.1330000 1.00000 0.00000 O core 0.376286 0.628940 -9.100996 1.01848700 1.00000 0.00000 O shel 0.375702 0.628940 -9.100996 -2.1330000 1.00000 0.00000 C core 0.876313 0.876313 -3.033666 1.34353899 1.00000 0.00000 O core 0.718073 0.844400 -2.267198 1.01848700 1.00000 0.00000 O shel 0.717707 0.844326 -2.265428 -2.1330000 1.00000 0.00000 O core 0.781900 0.908227 -3.800133 1.01848700 1.00000 0.00000 O shel 0.781682 0.908300 -3.801904 -2.1330000 1.00000 0.00000 O core 1.128967 0.876313 -3.033666 1.01848700 1.00000 0.00000 O shel 1.129551 0.876313 -3.033666 -2.1330000 1.00000 0.00000 Ca core 0.752626 0.752626 -6.067331 2.00000000 1.00000 0.00000 C core 0.755253 0.255253 -12.134661 1.34353899 1.00000 0.00000 O core 0.597012 0.223339 -11.368193 1.01848700 1.00000 0.00000 O shel 0.596647 0.223265 -11.366423 -2.1330000 1.00000 0.00000 O core 0.660839 0.287166 -12.901128 1.01848700 1.00000 0.00000 O shel 0.660621 0.287240 -12.902899 -2.1330000 1.00000 0.00000 O core 1.007907 0.255253 -12.134661 1.01848700 1.00000 0.00000 O shel 1.008490 0.255253 -12.134661 -2.1330000 1.00000 0.00000 Ca core 0.878940 0.378940 -9.100996 2.00000000 1.00000 0.00000 sfractional region 2 C core 0.048233 0.048232 -15.168327 1.34353899 1.00000 0.00000 O core -0.110008 0.016319 -14.401859 1.01848700 1.00000 0.00000 O shel -0.110373 0.016245 -14.400089 -2.1330000 1.00000 0.00000 O core 0.300887 0.048232 -15.168326 1.01848700 1.00000 0.00000 O shel 0.301470 0.048232 -15.168326 -2.1330000 1.00000 0.00000 O core -0.046181 0.080146 -15.934793 1.01848700 1.00000 0.00000 O shel -0.046399 0.080220 -15.936563 -2.1330000 1.00000 0.00000 O core 0.309313 0.182986 -14.401857 1.01848700 1.00000 0.00000 O shel 0.309531 0.182912 -14.400087 -2.1330000 1.00000 0.00000 C core 0.214899 0.214899 -15.168325 1.34353899 1.00000 0.00000 O core -0.037755 0.214899 -15.168325 1.01848700 1.00000 0.00000 O shel -0.038338 0.214899 -15.168325 -2.1330000 1.00000 0.00000 O core 0.373140 0.246813 -15.934793 1.01848700 1.00000 0.00000 O shel 0.373505 0.246886 -15.936563 -2.1330000 1.00000 0.00000 Ca core 0.091213 0.091212 -18.201992 2.00000000 1.00000 0.00000 Ca core 0.050859 0.550859 -21.235657 2.00000000 1.00000 0.00000 Ca core 0.217526 0.717526 -21.235657 2.00000000 1.00000 0.00000 C core 0.174546 0.674546 -18.201992 1.34353899 1.00000 0.00000 O core 0.332787 0.706459 -18.968458 1.01848700 1.00000 0.00000 O shel 0.333152 0.706533 -18.970228 -2.1330000 1.00000 0.00000 O core -0.078108 0.674546 -18.201992 1.01848700 1.00000 0.00000 O shel -0.078692 0.674546 -18.201992 -2.1330000 1.00000 0.00000 O core 0.268959 0.642632 -17.435524 1.01848700 1.00000 0.00000 O shel 0.269177 0.642559 -17.433754 -2.1330000 1.00000 0.00000 O core 0.188252 0.561925 -23.502853 1.01848700 1.00000 0.00000 O shel 0.188470 0.561852 -23.501083 -2.1330000 1.00000 0.00000 C core 0.093839 0.593839 -24.269321 1.34353899 1.00000 0.00000 O core -0.158815 0.593839 -24.269321 1.01848700 1.00000 0.00000 O shel -0.159398 0.593839 -24.269321 -2.1330000 1.00000 0.00000 O core 0.252080 0.625752 -25.035789 1.01848700 1.00000 0.00000 O shel 0.252445 0.625826 -25.037560 -2.1330000 1.00000 0.00000 Ca core 0.298233 0.798233 -15.168327 2.00000000 1.00000 0.00000 O core 0.182972 0.809299 -17.435524 1.01848700 1.00000 0.00000 O shel 0.182607 0.809225 -17.433754 -2.1330000 1.00000 0.00000 C core 0.341212 0.841212 -18.201992 1.34353899 1.00000 0.00000 O core 0.593867 0.841212 -18.201992 1.01848700 1.00000 0.00000 O shel 0.594450 0.841212 -18.201992 -2.1330000 1.00000 0.00000 O core 0.246799 0.873126 -18.968460 1.01848700 1.00000 0.00000 O shel 0.246581 0.873200 -18.970230 -2.1330000 1.00000 0.00000 Ca core 0.464899 0.964899 -15.168326 2.00000000 1.00000 0.00000 Ca core 0.424546 0.424546 -18.201992 2.00000000 1.00000 0.00000 Ca core 0.591213 0.591212 -18.201992 2.00000000 1.00000 0.00000 Ca core 0.177172 0.177172 -24.269323 2.00000000 1.00000 0.00000 C core 0.007879 0.507879 -18.201992 1.34353899 1.00000 0.00000 O core -0.150361 0.475966 -17.435524 1.01848700 1.00000 0.00000 O shel -0.150727 0.475892 -17.433754 -2.1330000 1.00000 0.00000 O core -0.086534 0.539793 -18.968460 1.01848700 1.00000 0.00000 O shel -0.086752 0.539866 -18.970230 -2.1330000 1.00000 0.00000 O core 0.260533 0.507879 -18.201992 1.01848700 1.00000 0.00000 O shel 0.261117 0.507879 -18.201992 -2.1330000 1.00000 0.00000 C core 0.300859 0.300859 -21.235659 1.34353899 1.00000 0.00000 O core 0.142619 0.268945 -20.469191 1.01848700 1.00000 0.00000 O shel 0.142253 0.268872 -20.467421 -2.1330000 1.00000 0.00000 O core 0.553513 0.300859 -21.235657 1.01848700 1.00000 0.00000 O shel 0.554097 0.300859 -21.235657 -2.1330000 1.00000 0.00000 O core 0.206446 0.332772 -22.002125 1.01848700 1.00000 0.00000 O shel 0.206228 0.332846 -22.003895 -2.1330000 1.00000 0.00000 C core 0.548233 0.548233 -15.168326 1.34353899 1.00000 0.00000 O core 0.706473 0.580146 -15.934793 1.01848700 1.00000 0.00000 O shel 0.706839 0.580220 -15.936563 -2.1330000 1.00000 0.00000 O core 0.295579 0.548233 -15.168326 1.01848700 1.00000 0.00000 O shel 0.294995 0.548233 -15.168326 -2.1330000 1.00000 0.00000 O core 0.642646 0.516319 -14.401858 1.01848700 1.00000 0.00000 O shel 0.642864 0.516245 -14.400088 -2.1330000 1.00000 0.00000 O core 0.561939 0.435612 -20.469189 1.01848700 1.00000 0.00000 O shel 0.562157 0.435538 -20.467419 -2.1330000 1.00000 0.00000 C core 0.467526 0.467526 -21.235657 1.34353899 1.00000 0.00000 O core 0.214872 0.467526 -21.235657 1.01848700 1.00000 0.00000 O shel 0.214288 0.467526 -21.235657 -2.1330000 1.00000 0.00000 O core 0.625766 0.499439 -22.002125 1.01848700 1.00000 0.00000 O shel 0.626132 0.499513 -22.003895 -2.1330000 1.00000 0.00000 Ca core 0.343839 0.343839 -24.269321 2.00000000 1.00000 0.00000 Ca core 0.131566 0.631566 -15.168327 2.00000000 1.00000 0.00000 O core 0.556659 0.682986 -14.401859 1.01848700 1.00000 0.00000 O shel 0.556293 0.682912 -14.400089 -2.1330000 1.00000 0.00000 C core 0.714899 0.714899 -15.168327 1.34353899 1.00000 0.00000 O core 0.967553 0.714899 -15.168327 1.01848700 1.00000 0.00000 O shel 0.968137 0.714899 -15.168327 -2.1330000 1.00000 0.00000 O core 0.620486 0.746813 -15.934794 1.01848700 1.00000 0.00000 O shel 0.620268 0.746886 -15.936565 -2.1330000 1.00000 0.00000 Ca core 0.010506 0.010505 -24.269321 2.00000000 1.00000 0.00000 C core 0.134192 0.134192 -21.235657 1.34353899 1.00000 0.00000 O core 0.292433 0.166106 -22.002125 1.01848700 1.00000 0.00000 O shel 0.292798 0.166179 -22.003895 -2.1330000 1.00000 0.00000 O core 0.228606 0.102279 -20.469189 1.01848700 1.00000 0.00000 O shel 0.228824 0.102205 -20.467419 -2.1330000 1.00000 0.00000 O core -0.118462 0.134192 -21.235657 1.01848700 1.00000 0.00000 O shel -0.119045 0.134192 -21.235657 -2.1330000 1.00000 0.00000 Ca core 0.798233 0.298233 -15.168325 2.00000000 1.00000 0.00000 Ca core 0.964899 0.464899 -15.168326 2.00000000 1.00000 0.00000 Ca core 0.550859 0.050859 -21.235657 2.00000000 1.00000 0.00000 C core 0.381566 0.381566 -15.168325 1.34353899 1.00000 0.00000 O core 0.223326 0.349652 -14.401857 1.01848700 1.00000 0.00000 O shel 0.222960 0.349579 -14.400087 -2.1330000 1.00000 0.00000 O core 0.287153 0.413479 -15.934793 1.01848700 1.00000 0.00000 O shel 0.286935 0.413553 -15.936563 -2.1330000 1.00000 0.00000 O core 0.634220 0.381566 -15.168325 1.01848700 1.00000 0.00000 O shel 0.634804 0.381566 -15.168325 -2.1330000 1.00000 0.00000 C core 0.674546 0.174546 -18.201992 1.34353899 1.00000 0.00000 O core 0.516305 0.142632 -17.435524 1.01848700 1.00000 0.00000 O shel 0.515940 0.142558 -17.433754 -2.1330000 1.00000 0.00000 O core 0.927200 0.174546 -18.201992 1.01848700 1.00000 0.00000 O shel 0.927783 0.174546 -18.201992 -2.1330000 1.00000 0.00000 O core 0.580132 0.206459 -18.968458 1.01848700 1.00000 0.00000 O shel 0.579914 0.206533 -18.970228 -2.1330000 1.00000 0.00000 O core 0.935626 0.309299 -17.435522 1.01848700 1.00000 0.00000 O shel 0.935844 0.309225 -17.433752 -2.1330000 1.00000 0.00000 C core 0.841213 0.341212 -18.201990 1.34353899 1.00000 0.00000 O core 0.588559 0.341212 -18.201990 1.01848700 1.00000 0.00000 O shel 0.587975 0.341212 -18.201990 -2.1330000 1.00000 0.00000 O core 0.999453 0.373126 -18.968458 1.01848700 1.00000 0.00000 O shel 0.999819 0.373200 -18.970228 -2.1330000 1.00000 0.00000 O core 0.435598 0.061925 -23.502853 1.01848700 1.00000 0.00000 O shel 0.435233 0.061851 -23.501083 -2.1330000 1.00000 0.00000 C core 0.593839 0.093839 -24.269321 1.34353899 1.00000 0.00000 O core 0.846493 0.093839 -24.269321 1.01848700 1.00000 0.00000 O shel 0.847077 0.093839 -24.269321 -2.1330000 1.00000 0.00000 O core 0.499426 0.125752 -25.035789 1.01848700 1.00000 0.00000 O shel 0.499207 0.125826 -25.037560 -2.1330000 1.00000 0.00000 Ca core 0.717526 0.217526 -21.235657 2.00000000 1.00000 0.00000 Ca core 0.257879 0.257879 -18.201992 2.00000000 1.00000 0.00000 C core 0.507879 0.007879 -18.201992 1.34353899 1.00000 0.00000 O core 0.666120 0.039793 -18.968460 1.01848700 1.00000 0.00000 O shel 0.666485 0.039866 -18.970230 -2.1330000 1.00000 0.00000 O core 0.602293 -0.024035 -17.435524 1.01848700 1.00000 0.00000 O shel 0.602511 -0.024108 -17.433754 -2.1330000 1.00000 0.00000 O core 0.255225 0.007879 -18.201992 1.01848700 1.00000 0.00000 O shel 0.254642 0.007879 -18.201992 -2.1330000 1.00000 0.00000 Ca core 0.631566 0.131566 -15.168326 2.00000000 1.00000 0.00000 C core 0.427172 0.927172 -24.269321 1.34353899 1.00000 0.00000 O core 0.585413 0.959086 -25.035789 1.01848700 1.00000 0.00000 O shel 0.585778 0.959159 -25.037560 -2.1330000 1.00000 0.00000 O core 0.174518 0.927172 -24.269321 1.01848700 1.00000 0.00000 O shel 0.173935 0.927172 -24.269321 -2.1330000 1.00000 0.00000 O core 0.521586 0.895259 -23.502853 1.01848700 1.00000 0.00000 O shel 0.521804 0.895185 -23.501083 -2.1330000 1.00000 0.00000 Ca core 0.677172 0.677172 -24.269323 2.00000000 1.00000 0.00000 Ca core 0.843839 0.843839 -24.269325 2.00000000 1.00000 0.00000 C core 0.260506 0.760505 -24.269323 1.34353899 1.00000 0.00000 O core 0.102265 0.728592 -23.502855 1.01848700 1.00000 0.00000 O shel 0.101900 0.728518 -23.501085 -2.1330000 1.00000 0.00000 O core 0.166092 0.792419 -25.035789 1.01848700 1.00000 0.00000 O shel 0.165874 0.792493 -25.037561 -2.1330000 1.00000 0.00000 O core 0.513160 0.760505 -24.269323 1.01848700 1.00000 0.00000 O shel 0.513743 0.760505 -24.269323 -2.1330000 1.00000 0.00000 C core 0.800859 0.800859 -21.235657 1.34353899 1.00000 0.00000 O core 0.959100 0.832772 -22.002125 1.01848700 1.00000 0.00000 O shel 0.959465 0.832846 -22.003895 -2.1330000 1.00000 0.00000 O core 0.548205 0.800859 -21.235657 1.01848700 1.00000 0.00000 O shel 0.547622 0.800859 -21.235657 -2.1330000 1.00000 0.00000 O core 0.895273 0.768945 -20.469189 1.01848700 1.00000 0.00000 O shel 0.895491 0.768872 -20.467419 -2.1330000 1.00000 0.00000 Ca core 0.384192 0.884192 -21.235659 2.00000000 1.00000 0.00000 Ca core 0.924546 0.924546 -18.201994 2.00000000 1.00000 0.00000 O core 0.809285 0.935612 -20.469191 1.01848700 1.00000 0.00000 O shel 0.808920 0.935538 -20.467421 -2.1330000 1.00000 0.00000 C core 0.967526 0.967526 -21.235659 1.34353899 1.00000 0.00000 O core 1.220180 0.967526 -21.235659 1.01848700 1.00000 0.00000 O shel 1.220763 0.967526 -21.235659 -2.1330000 1.00000 0.00000 O core 0.873112 0.999439 -22.002127 1.01848700 1.00000 0.00000 O shel 0.872894 0.999513 -22.003897 -2.1330000 1.00000 0.00000 C core 0.634192 0.634192 -21.235657 1.34353899 1.00000 0.00000 O core 0.475952 0.602279 -20.469189 1.01848700 1.00000 0.00000 O shel 0.475587 0.602205 -20.467419 -2.1330000 1.00000 0.00000 O core 0.539779 0.666106 -22.002125 1.01848700 1.00000 0.00000 O shel 0.539561 0.666180 -22.003895 -2.1330000 1.00000 0.00000 O core 0.886846 0.634192 -21.235657 1.01848700 1.00000 0.00000 O shel 0.887430 0.634192 -21.235657 -2.1330000 1.00000 0.00000 C core 0.927172 0.427172 -24.269323 1.34353899 1.00000 0.00000 O core 0.768932 0.395259 -23.502855 1.01848700 1.00000 0.00000 O shel 0.768566 0.395185 -23.501085 -2.1330000 1.00000 0.00000 O core 1.179826 0.427172 -24.269321 1.01848700 1.00000 0.00000 O shel 1.180410 0.427172 -24.269321 -2.1330000 1.00000 0.00000 O core 0.832759 0.459086 -25.035789 1.01848700 1.00000 0.00000 O shel 0.832541 0.459159 -25.037560 -2.1330000 1.00000 0.00000 Ca core 0.510506 0.510505 -24.269321 2.00000000 1.00000 0.00000 Ca core 0.757879 0.757879 -18.201992 2.00000000 1.00000 0.00000 C core 0.881566 0.881566 -15.168327 1.34353899 1.00000 0.00000 O core 1.039806 0.913479 -15.934794 1.01848700 1.00000 0.00000 O shel 1.040172 0.913553 -15.936564 -2.1330000 1.00000 0.00000 O core 0.975979 0.849652 -14.401859 1.01848700 1.00000 0.00000 O shel 0.976198 0.849579 -14.400089 -2.1330000 1.00000 0.00000 O core 0.628912 0.881566 -15.168327 1.01848700 1.00000 0.00000 O shel 0.628329 0.881566 -15.168327 -2.1330000 1.00000 0.00000 C core 0.760506 0.260505 -24.269323 1.34353899 1.00000 0.00000 O core 0.918746 0.292419 -25.035789 1.01848700 1.00000 0.00000 O shel 0.919112 0.292493 -25.037560 -2.1330000 1.00000 0.00000 O core 0.854919 0.228592 -23.502855 1.01848700 1.00000 0.00000 O shel 0.855137 0.228518 -23.501085 -2.1330000 1.00000 0.00000 O core 0.507852 0.260505 -24.269323 1.01848700 1.00000 0.00000 O shel 0.507268 0.260505 -24.269323 -2.1330000 1.00000 0.00000 Ca core 0.884192 0.384192 -21.235657 2.00000000 1.00000 0.00000 dhkl 3.033665 sbulkenergy -1023.043030 elements covalent 25 0.0000 covalent 26 0.0000 covalent 27 0.0000 covalent 28 0.0000 covalent 30 0.0000 covalent 48 0.0000 end species Cd core 2.000000 Mn core 2.000000 Mg core 2.000000 Zn core 2.000000 Ni core 2.000000 Co core 2.000000 Fe core 2.000000 Ca core 2.000000 C core 1.343539 O core 1.018487 O shel -2.133000 end buck intra O core O core 4030.30000 0.245497 0.0000000 0.000 2.500 buck Ca core O shel 2154.06000 0.289118 0.0000000 0.000 10.000 buck inter O shel O shel 64727.5050 0.198914 21.84357 0.000 15.000 buck Cd core O shel 4329.81000 0.256300 0.0000000 0.000 10.000 buck Mg core O shel 1039.58460 0.289329 0.0000000 0.000 10.000 buck Co core O shel 1095.59850 0.286300 0.0000000 0.000 10.000 buck Fe core O shel 2152.98610 0.265068 0.0000000 0.000 10.000 buck Mn core O shel 2000.93570 0.272681 0.0000000 0.000 10.000 buck Ni core O shel 1634.46190 0.266612 0.0000000 0.000 10.000 buck Zn core O shel 1029.39000 0.289100 0.0000000 0.000 10.000 morse intra bond C core O core 5.0000000 2.5228 1.19820 0.0000 spring O 52.739130 10000.000 three bond intra C core O core O core 1.7765 120.00 outofplane bond intra C cor O cor O cor O cor 8.8279 dump calcite_-114_0.0000.res gdis-0.90/models/gibb_best3.got0000644000175000017500000011371107717054773015054 0ustar seansean******************************************************************************** * GENERAL UTILITY LATTICE PROGRAM * * Julian Gale, Imperial College * * Version 1.4 * ******************************************************************************** * optimise - perform optimisation run * * conp - constant pressure calculation * * phonon - calculate phonons for final geometry * * bond - calculate bond lengths for final geometry * * molecule - molecule option activated, Coulomb subtract within molecule * * compare - compare initial and final structures * ******************************************************************************** * gibbsite fit * ******************************************************************************** Job Started at 10:12.47 16th May 2002 Number of CPUs = 1 Total number of configurations input = 1 ******************************************************************************** * Input for Configuration = 1 : gibbsite * ******************************************************************************** Formula = Al8O24H24 Number of irreducible atoms/shells = 20 Total number atoms/shells = 80 Dimensionality = 3 : Bulk Symmetry : Crystal family : Monoclinic Crystal class (Groth - 1921) : Monoclinic Prismatic Space group (centrosymmetric) : P 1 21/N 1 Non-standard setting of group : P 21/C Patterson group : P 2/m Cartesian lattice vectors (Angstroms) : 8.684000 0.000000 0.000000 0.000000 5.078000 0.000000 -0.770654 0.000000 9.705452 Cell parameters (Angstroms/Degrees): a = 8.6840 alpha = 90.0000 b = 5.0780 beta = 94.5400 c = 9.7360 gamma = 90.0000 Initial cell volume = 427.984711 Angs**3 Temperature of configuration = 0.0000 K Pressure of configuration = 0.000 GPa Fractional coordinates of asymmetric unit : -------------------------------------------------------------------------------- No. Atomic x y z Charge Occupancy Label (Frac) (Frac) (Frac) (e) (Frac) -------------------------------------------------------------------------------- 1 Al c 0.167900 * 0.529500 * 0.997700 * 3.000000 1.000000 2 Al c 0.334400 * 0.023600 * 0.997600 * 3.000000 1.000000 3 O1 c 0.177900 * 0.218300 * 0.888500 * 0.948000 1.000000 4 O1 c 0.669200 * 0.655800 * 0.897700 * 0.948000 1.000000 5 O1 c 0.498400 * 0.131500 * 0.895600 * 0.948000 1.000000 6 O1 c 0.979500 * 0.629300 * 0.893200 * 0.948000 1.000000 7 O1 c 0.297100 * 0.717800 * 0.894800 * 0.948000 1.000000 8 O1 c 0.819400 * 0.149100 * 0.898500 * 0.948000 1.000000 9 H1 c 0.077262 * 0.136549 * 0.874464 * 0.418000 1.000000 10 H1 c 0.574642 * 0.552033 * 0.897494 * 0.418000 1.000000 11 H1 c 0.494353 * 0.110970 * 0.795476 * 0.418000 1.000000 12 H1 c 0.951158 * 0.814745 * 0.886939 * 0.418000 1.000000 13 H1 c 0.295768 * 0.716748 * 0.794078 * 0.418000 1.000000 14 H1 c 0.805904 * 0.161311 * 0.797539 * 0.418000 1.000000 15 O1 s 0.177900 * 0.218300 * 0.888500 * -2.366000 1.000000 16 O1 s 0.669200 * 0.655800 * 0.897700 * -2.366000 1.000000 17 O1 s 0.498400 * 0.131500 * 0.895600 * -2.366000 1.000000 18 O1 s 0.979500 * 0.629300 * 0.893200 * -2.366000 1.000000 19 O1 s 0.297100 * 0.717800 * 0.894800 * -2.366000 1.000000 20 O1 s 0.819400 * 0.149100 * 0.898500 * -2.366000 1.000000 -------------------------------------------------------------------------------- Molecule list generated from bondlengths : Total number of molecules = 24 -------------------------------------------------------------------------------- Molecule No./: Atoms Periodicity : -------------------------------------------------------------------------------- 1 0 : O1 c 9 H1 c 33 O1 s 57 2 0 : O1 c 10 H1 c 34 O1 s 58 3 0 : O1 c 11 H1 c 35 O1 s 59 4 0 : O1 c 12 H1 c 36 O1 s 60 5 0 : O1 c 13 H1 c 37 O1 s 61 6 0 : O1 c 14 H1 c 38 O1 s 62 7 0 : O1 c 15 H1 c 39 O1 s 63 8 0 : O1 c 16 H1 c 40 O1 s 64 9 0 : O1 c 17 H1 c 41 O1 s 65 10 0 : O1 c 18 H1 c 42 O1 s 66 11 0 : O1 c 19 H1 c 43 O1 s 67 12 0 : O1 c 20 H1 c 44 O1 s 68 13 0 : O1 c 21 H1 c 45 O1 s 69 14 0 : O1 c 22 H1 c 46 O1 s 70 15 0 : O1 c 23 H1 c 47 O1 s 71 16 0 : O1 c 24 H1 c 48 O1 s 72 17 0 : O1 c 25 H1 c 49 O1 s 73 18 0 : O1 c 26 H1 c 50 O1 s 74 19 0 : O1 c 27 H1 c 51 O1 s 75 20 0 : O1 c 28 H1 c 52 O1 s 76 21 0 : O1 c 29 H1 c 53 O1 s 77 22 0 : O1 c 30 H1 c 54 O1 s 78 23 0 : O1 c 31 H1 c 55 O1 s 79 24 0 : O1 c 32 H1 c 56 O1 s 80 -------------------------------------------------------------------------------- Bond calculation : -------------------------------------------------------------------------------- Asymmetric unit site Full lattice sites No. Distance No. Distance (Angs) (Angs) -------------------------------------------------------------------------------- 3 O1 core H1 core 1 0.9674 -------------------------------------------------------------------------------- 4 O1 core H1 core 1 0.9755 -------------------------------------------------------------------------------- 5 O1 core H1 core 1 0.9782 -------------------------------------------------------------------------------- 6 O1 core H1 core 1 0.9740 -------------------------------------------------------------------------------- 7 O1 core H1 core 1 0.9798 -------------------------------------------------------------------------------- 8 O1 core H1 core 1 0.9826 -------------------------------------------------------------------------------- 9 H1 core O1 core 1 0.9674 O1 shell 1 0.9674 -------------------------------------------------------------------------------- 10 H1 core O1 core 1 0.9755 O1 shell 1 0.9755 -------------------------------------------------------------------------------- 11 H1 core O1 core 1 0.9782 O1 shell 1 0.9782 -------------------------------------------------------------------------------- 12 H1 core O1 core 1 0.9740 O1 shell 1 0.9740 -------------------------------------------------------------------------------- 13 H1 core O1 core 1 0.9798 O1 shell 1 0.9798 -------------------------------------------------------------------------------- 14 H1 core O1 core 1 0.9826 O1 shell 1 0.9826 -------------------------------------------------------------------------------- 15 O1 shell H1 core 1 0.9674 -------------------------------------------------------------------------------- 16 O1 shell H1 core 1 0.9755 -------------------------------------------------------------------------------- 17 O1 shell H1 core 1 0.9782 -------------------------------------------------------------------------------- 18 O1 shell H1 core 1 0.9740 -------------------------------------------------------------------------------- 19 O1 shell H1 core 1 0.9798 -------------------------------------------------------------------------------- 20 O1 shell H1 core 1 0.9826 -------------------------------------------------------------------------------- ******************************************************************************** * General input information * ******************************************************************************** Species output for all configurations : -------------------------------------------------------------------------------- Species Type Atomic Atomic Charge Radii (Angs) Library Number Mass (e) Cova Ionic VDW Symbol -------------------------------------------------------------------------------- Al Core 13 26.98 3.0000 0.100 0.000 2.050 O1 Core 8 16.00 0.9480 0.730 0.000 1.360 O1 Shell 8 0.00 -2.3660 0.730 0.000 1.360 H1 Core 1 1.01 0.4180 0.370 0.000 1.080 -------------------------------------------------------------------------------- Accuracy factor for lattice sums = 8.000 Time limit = Infinity **** Warning - potential 5 is acting on the core of an ion with a shell **** General interatomic potentials : -------------------------------------------------------------------------------- Atom Types Potential A B C D Cutoffs(Ang) 1 2 Min Max -------------------------------------------------------------------------------- O1 c O1 s Spring (c-s) 60.1 0.000 .000 .000 0.000 0.600 -------------------------------------------------------------------------------- Intramolecular potentials : -------------------------------------------------------------------------------- Atom Types Potential A B C D Cutoffs(Ang) 1 2 Min Max -------------------------------------------------------------------------------- H1 c O1 c Morse 5.42 2.27 .950 .000 0.000 1 Bond -------------------------------------------------------------------------------- Intermolecular potentials : -------------------------------------------------------------------------------- Atom Types Potential A B C D Cutoffs(Ang) 1 2 Min Max -------------------------------------------------------------------------------- Al c O1 s Buckingham 0.134E+04 0.294 .000 .000 0.000 15.000 H1 c Al c Buckingham 560. 0.291 .000 .000 0.000 15.000 O1 s O1 s Buckingham 0.100E+05 0.149 17.0 .000 0.000 15.000 H1 c O1 s Buckingham 235. 0.250 .000 .000 0.000 15.000 -------------------------------------------------------------------------------- ******************************************************************************** * Output for configuration 1 : gibbsite * ******************************************************************************** Components of energy : -------------------------------------------------------------------------------- Interatomic potentials = -25.80170987 eV Monopole - monopole (real) = -106.27994246 eV Monopole - monopole (recip)= -482.65132675 eV Monopole - monopole (total)= -588.93126921 eV -------------------------------------------------------------------------------- Total lattice energy = -614.73297909 eV -------------------------------------------------------------------------------- Total lattice energy = -59312.3354 kJ/(mole unit cells) -------------------------------------------------------------------------------- Number of variables = 64 Maximum number of calculations = 1000 Maximum Hessian update interval = 10 Maximum step size = 1.0000000 Maximum parameter tolerance = 0.0000100 Maximum function tolerance = 0.0000100 Maximum gradient tolerance = 0.0000100 Symmetry constrained optimisation Symmetry used for second derivatives Newton-Raphson optimiser to be used BFGS hessian update to be used Minimiser to switch to RFO When gradient norm is less than 1.000000 Start of bulk optimisation : Cycle: 0 Energy: -614.732979 Gnorm: 22.356176 CPU: 0.340 ** Hessian calculated ** Cycle: 1 Energy: -634.618746 Gnorm: 6.499160 CPU: 0.640 ** Hessian calculated ** Cycle: 2 Energy: -639.717274 Gnorm: 2.984550 CPU: 1.150 ** Hessian calculated ** Cycle: 3 Energy: -640.917946 Gnorm: 0.704357 CPU: 1.730 ** Hessian has wrong structure ** Imaginary eigenvectors = 1 Cycle: 4 Energy: -640.953060 Gnorm: 0.516124 CPU: 2.450 ** Hessian has required structure Cycle: 5 Energy: -641.101429 Gnorm: 0.569093 CPU: 2.980 ** Hessian has required structure Cycle: 6 Energy: -641.152496 Gnorm: 0.661835 CPU: 3.280 ** Hessian has required structure Cycle: 7 Energy: -641.202397 Gnorm: 0.322070 CPU: 3.580 ** Hessian has required structure Cycle: 8 Energy: -641.226046 Gnorm: 0.488964 CPU: 3.960 ** Hessian has required structure Cycle: 9 Energy: -641.252517 Gnorm: 0.208600 CPU: 4.260 ** Hessian has required structure Cycle: 10 Energy: -641.267112 Gnorm: 0.270555 CPU: 4.640 ** Hessian has required structure Cycle: 11 Energy: -641.275158 Gnorm: 0.252971 CPU: 4.950 ** Hessian has required structure Cycle: 12 Energy: -641.285561 Gnorm: 0.093184 CPU: 5.260 ** Hessian has required structure Cycle: 13 Energy: -641.288435 Gnorm: 0.168299 CPU: 5.560 ** Hessian has required structure Cycle: 14 Energy: -641.290944 Gnorm: 0.072392 CPU: 5.870 ** Hessian has required structure Cycle: 15 Energy: -641.293375 Gnorm: 0.039283 CPU: 6.470 ** Hessian has required structure Cycle: 16 Energy: -641.293500 Gnorm: 0.004719 CPU: 6.770 ** Hessian has required structure Cycle: 17 Energy: -641.293525 Gnorm: 0.002174 CPU: 7.070 ** Hessian has required structure Cycle: 18 Energy: -641.293533 Gnorm: 0.000485 CPU: 7.380 ** Hessian has required structure **** Optimisation achieved **** Final energy = -641.29353313 Final Gnorm = 0.00048513 Components of energy : -------------------------------------------------------------------------------- Interatomic potentials = 1.17422707 eV Monopole - monopole (real) = 274.04339482 eV Monopole - monopole (recip)= -916.51115502 eV Monopole - monopole (total)= -642.46776020 eV -------------------------------------------------------------------------------- Total lattice energy = -641.29353313 eV -------------------------------------------------------------------------------- Total lattice energy = -61875.0229 kJ/(mole unit cells) -------------------------------------------------------------------------------- Final asymmetric unit coordinates : -------------------------------------------------------------------------------- No. Atomic x y z Radius Label (Frac) (Frac) (Frac) (Angs) -------------------------------------------------------------------------------- 1 Al c 0.163906 0.545673 0.995790 0.000000 2 Al c 0.335105 0.041903 0.996397 0.000000 3 O1 c 0.174186 0.232565 0.875988 0.000000 4 O1 c 0.646417 0.610924 0.908882 0.000000 5 O1 c 0.495827 0.094021 0.873227 0.000000 6 O1 c 0.968739 0.689307 0.907255 0.000000 7 O1 c 0.253157 0.771086 0.863629 0.000000 8 O1 c 0.785315 0.157229 0.873150 0.000000 9 H1 c 0.105687 0.173221 0.794685 0.000000 10 H1 c 0.555853 0.497175 0.879283 0.000000 11 H1 c 0.502767 0.112793 0.772665 0.000000 12 H1 c 0.948073 0.881514 0.884056 0.000000 13 H1 c 0.231647 0.800112 0.763007 0.000000 14 H1 c 0.787893 0.149378 0.771571 0.000000 15 O1 s 0.184203 0.242690 0.888503 0.000000 16 O1 s 0.660055 0.626923 0.916860 0.000000 17 O1 s 0.495299 0.087133 0.889301 0.000000 18 O1 s 0.972286 0.661212 0.914353 0.000000 19 O1 s 0.254166 0.769635 0.880535 0.000000 20 O1 s 0.783809 0.160932 0.888989 0.000000 -------------------------------------------------------------------------------- Final cell parameters and derivatives : -------------------------------------------------------------------------------- a 8.809466 Angstrom dE/de1(xx) 0.000553 eV/strain b 4.993449 Angstrom dE/de2(yy) 0.000098 eV/strain c 9.787438 Angstrom dE/de3(zz) 0.003072 eV/strain alpha 90.000000 Degrees dE/de4(yz) 0.000000 eV/strain beta 95.950869 Degrees dE/de5(xz) 0.000716 eV/strain gamma 90.000000 Degrees dE/de6(xy) 0.000000 eV/strain -------------------------------------------------------------------------------- Primitive cell volume = 428.225533 Angs**3 Density of cell = 2.420046 g/cm**3 Non-primitive cell volume = 428.225533 Angs**3 Final internal derivatives : -------------------------------------------------------------------------------- No. Atomic x y z Radius Label (eV) (eV) (eV) (eV/Angs) -------------------------------------------------------------------------------- 1 Al c -0.000045 0.000208 0.001742 0.000000 2 Al c -0.000243 -0.000020 0.001699 0.000000 3 O1 c 0.003131 0.001088 0.006241 0.000000 4 O1 c 0.000664 0.000291 0.000016 0.000000 5 O1 c 0.000009 0.000078 -0.000125 0.000000 6 O1 c -0.000653 0.000514 -0.000064 0.000000 7 O1 c 0.002785 -0.001873 0.019092 0.000000 8 O1 c 0.000220 -0.000086 -0.000007 0.000000 9 H1 c -0.004514 -0.001588 -0.005774 0.000000 10 H1 c -0.000650 -0.000312 -0.000335 0.000000 11 H1 c 0.000289 0.000127 -0.000657 0.000000 12 H1 c 0.000343 -0.000141 -0.000037 0.000000 13 H1 c -0.002040 0.001610 -0.021172 0.000000 14 H1 c 0.000184 -0.000048 -0.000158 0.000000 15 O1 s 0.001017 0.000347 -0.001812 0.000000 16 O1 s -0.000104 0.000015 0.000442 0.000000 17 O1 s -0.000247 -0.000061 0.000459 0.000000 18 O1 s 0.000541 -0.000429 -0.000033 0.000000 19 O1 s -0.001401 0.000284 0.000421 0.000000 20 O1 s -0.000574 0.000177 0.000303 0.000000 -------------------------------------------------------------------------------- Comparison of initial and final structures : -------------------------------------------------------------------------------- Parameter Initial value Final value Difference Units Percent -------------------------------------------------------------------------------- Volume 427.984711 428.225533 0.240821 Angs**3 0.06 a 8.684000 8.809466 0.125466 Angstroms 1.44 b 5.078000 4.993449 -0.084551 Angstroms -1.67 c 9.736000 9.787438 0.051438 Angstroms 0.53 alpha 90.000000 90.000000 0.000000 Degrees 0.00 beta 94.540000 95.950869 1.410869 Degrees 1.49 gamma 90.000000 90.000000 0.000000 Degrees 0.00 1 x 0.167900 0.163906 0.003994 Fractional 2.38 1 y 0.529500 0.545673 0.016173 Fractional 3.05 1 z 0.997700 0.995790 0.001910 Fractional 0.19 2 x 0.334400 0.335105 0.000705 Fractional 0.21 2 y 0.023600 0.041903 0.018303 Fractional 77.55 2 z 0.997600 0.996397 0.001203 Fractional 0.12 3 x 0.177900 0.174186 0.003714 Fractional 2.09 3 y 0.218300 0.232565 0.014265 Fractional 6.53 3 z 0.888500 0.875988 0.012512 Fractional 1.41 4 x 0.669200 0.646417 0.022783 Fractional 3.40 4 y 0.655800 0.610924 0.044876 Fractional 6.84 4 z 0.897700 0.908882 0.011182 Fractional 1.25 5 x 0.498400 0.495827 0.002573 Fractional 0.52 5 y 0.131500 0.094021 0.037479 Fractional 28.50 5 z 0.895600 0.873227 0.022373 Fractional 2.50 6 x 0.979500 0.968739 0.010761 Fractional 1.10 6 y 0.629300 0.689307 0.060007 Fractional 9.54 6 z 0.893200 0.907255 0.014055 Fractional 1.57 7 x 0.297100 0.253157 0.043943 Fractional 14.79 7 y 0.717800 0.771086 0.053286 Fractional 7.42 7 z 0.894800 0.863629 0.031171 Fractional 3.48 8 x 0.819400 0.785315 0.034085 Fractional 4.16 8 y 0.149100 0.157229 0.008129 Fractional 5.45 8 z 0.898500 0.873150 0.025350 Fractional 2.82 9 x 0.077262 0.105687 0.028425 Fractional 36.79 9 y 0.136549 0.173221 0.036672 Fractional 26.86 9 z 0.874464 0.794685 0.079779 Fractional 9.12 10 x 0.574642 0.555853 0.018789 Fractional 3.27 10 y 0.552033 0.497175 0.054858 Fractional 9.94 10 z 0.897494 0.879283 0.018211 Fractional 2.03 11 x 0.494353 0.502767 0.008414 Fractional 1.70 11 y 0.110970 0.112793 0.001823 Fractional 1.64 11 z 0.795476 0.772665 0.022811 Fractional 2.87 12 x 0.951158 0.948073 0.003085 Fractional 0.32 12 y 0.814745 0.881514 0.066769 Fractional 8.20 12 z 0.886939 0.884056 0.002883 Fractional 0.33 13 x 0.295768 0.231647 0.064121 Fractional 21.68 13 y 0.716748 0.800112 0.083364 Fractional 11.63 13 z 0.794078 0.763007 0.031071 Fractional 3.91 14 x 0.805904 0.787893 0.018011 Fractional 2.23 14 y 0.161311 0.149378 0.011933 Fractional 7.40 14 z 0.797539 0.771571 0.025968 Fractional 3.26 15 x 0.177900 0.184203 0.006303 Fractional 3.54 15 y 0.218300 0.242690 0.024390 Fractional 11.17 15 z 0.888500 0.888503 0.000003 Fractional 0.00 16 x 0.669200 0.660055 0.009145 Fractional 1.37 16 y 0.655800 0.626923 0.028877 Fractional 4.40 16 z 0.897700 0.916860 0.019160 Fractional 2.13 17 x 0.498400 0.495299 0.003101 Fractional 0.62 17 y 0.131500 0.087133 0.044367 Fractional 33.74 17 z 0.895600 0.889301 0.006299 Fractional 0.70 18 x 0.979500 0.972286 0.007214 Fractional 0.74 18 y 0.629300 0.661212 0.031912 Fractional 5.07 18 z 0.893200 0.914353 0.021153 Fractional 2.37 19 x 0.297100 0.254166 0.042934 Fractional 14.45 19 y 0.717800 0.769635 0.051835 Fractional 7.22 19 z 0.894800 0.880535 0.014265 Fractional 1.59 20 x 0.819400 0.783809 0.035591 Fractional 4.34 20 y 0.149100 0.160932 0.011832 Fractional 7.94 20 z 0.898500 0.888989 0.009511 Fractional 1.06 -------------------------------------------------------------------------------- Bond calculation : -------------------------------------------------------------------------------- Asymmetric unit site Full lattice sites No. Distance No. Distance (Angs) (Angs) -------------------------------------------------------------------------------- 3 O1 core H1 core 1 0.9928 -------------------------------------------------------------------------------- 4 O1 core H1 core 1 0.9976 -------------------------------------------------------------------------------- 5 O1 core H1 core 1 0.9969 -------------------------------------------------------------------------------- 6 O1 core H1 core 1 0.9986 -------------------------------------------------------------------------------- 7 O1 core H1 core 1 0.9940 -------------------------------------------------------------------------------- 8 O1 core H1 core 1 0.9976 -------------------------------------------------------------------------------- 9 H1 core O1 core 1 0.9928 O1 shell 1 1.1447 -------------------------------------------------------------------------------- 10 H1 core O1 core 1 0.9976 O1 shell 1 1.1522 -------------------------------------------------------------------------------- 11 H1 core O1 core 1 0.9969 O1 shell 1 1.1574 -------------------------------------------------------------------------------- 12 H1 core O1 core 1 0.9986 O1 shell 1 1.1535 -------------------------------------------------------------------------------- 13 H1 core O1 core 1 0.9940 O1 shell 1 1.1569 -------------------------------------------------------------------------------- 14 H1 core O1 core 1 0.9976 O1 shell 1 1.1550 -------------------------------------------------------------------------------- 15 O1 shell H1 core 1 1.1447 -------------------------------------------------------------------------------- 16 O1 shell H1 core 1 1.1522 -------------------------------------------------------------------------------- 17 O1 shell H1 core 1 1.1574 -------------------------------------------------------------------------------- 18 O1 shell H1 core 1 1.1535 -------------------------------------------------------------------------------- 19 O1 shell H1 core 1 1.1569 -------------------------------------------------------------------------------- 20 O1 shell H1 core 1 1.1550 -------------------------------------------------------------------------------- Phonon Calculation : Number of k points for this configuration = 1 -------------------------------------------------------------------------------- K point 1 = 0.000000 0.000000 0.000000 Weight = 1.000 -------------------------------------------------------------------------------- Frequencies (cm-1) : 0.00 0.00 0.00 50.92 56.30 82.89 95.27 99.85 100.12 105.94 111.26 138.54 144.92 155.36 164.17 166.66 171.61 178.37 183.10 188.18 198.03 200.94 203.71 208.43 213.26 213.39 216.67 219.36 222.33 230.78 253.97 257.80 260.16 265.55 271.45 274.80 283.16 288.29 304.15 307.76 313.75 322.13 356.50 358.01 361.12 362.91 371.20 379.28 385.97 390.59 393.97 395.43 408.23 411.03 424.95 431.64 431.88 435.00 438.79 442.17 454.96 457.72 459.04 471.32 472.86 494.16 499.91 505.20 512.89 515.32 518.54 527.24 529.91 534.97 535.12 536.22 541.20 542.08 544.81 546.19 557.25 562.26 567.21 569.37 573.69 579.60 586.21 587.67 593.29 599.26 602.83 609.83 610.38 611.23 621.89 624.95 628.87 640.38 647.19 648.00 653.86 661.30 665.16 675.51 680.23 684.12 689.39 704.09 713.22 713.24 730.37 735.12 736.23 747.42 756.63 764.10 776.05 780.56 793.46 798.40 804.71 818.06 836.71 839.49 841.05 842.95 847.65 860.06 895.85 903.18 907.34 919.27 932.34 949.63 954.77 961.02 965.69 986.60 991.07 995.59 1006.17 1019.47 1039.48 1042.56 3438.72 3439.18 3439.29 3440.19 3449.25 3449.99 3450.31 3452.50 3460.56 3464.27 3472.84 3473.65 3481.79 3483.43 3489.57 3495.49 3498.90 3499.57 3505.78 3506.59 3529.41 3530.30 3552.75 3575.11 -------------------------------------------------------------------------------- Phonon properties (per mole of unit cells): Temperature = 0.000 K -------------------------------------------------------------------------------- Zero point energy = 9.752765 eV -------------------------------------------------------------------------------- Phonon density of states : -------------------------------------------------------------------------------- Frequency Density of States -------------------------------------------------------------------------------- 0.00000 |******** 0.012 56.00000 |****************************** 0.042 112.00000 |********************* 0.030 168.00000 |******************************************************* 0.078 224.00000 |****************************** 0.042 280.00000 |************************* 0.036 336.00000 |********************************** 0.048 392.00000 |****************************************** 0.060 448.00000 |****************************** 0.042 504.00000 |************************************************************ 0.084 560.00000 |******************************************************* 0.078 616.00000 |************************************** 0.054 672.00000 |****************************** 0.042 728.00000 |********************************** 0.048 784.00000 |************************* 0.036 840.00000 |********************* 0.030 896.00000 |********************* 0.030 952.00000 |****************************** 0.042 1008.00000 |************ 0.018 1064.00000 | 0.000 1120.00000 | 0.000 1176.00000 | 0.000 1232.00000 | 0.000 1288.00000 | 0.000 1344.00000 | 0.000 1400.00000 | 0.000 1456.00000 | 0.000 1512.00000 | 0.000 1568.00000 | 0.000 1624.00000 | 0.000 1680.00000 | 0.000 1736.00000 | 0.000 1792.00000 | 0.000 1848.00000 | 0.000 1904.00000 | 0.000 1960.00000 | 0.000 2016.00000 | 0.000 2072.00000 | 0.000 2128.00000 | 0.000 2184.00000 | 0.000 2240.00000 | 0.000 2296.00000 | 0.000 2352.00000 | 0.000 2408.00000 | 0.000 2464.00000 | 0.000 2520.00000 | 0.000 2576.00000 | 0.000 2632.00000 | 0.000 2688.00000 | 0.000 2744.00000 | 0.000 2800.00000 | 0.000 2856.00000 | 0.000 2912.00000 | 0.000 2968.00000 | 0.000 3024.00000 | 0.000 3080.00000 | 0.000 3136.00000 | 0.000 3192.00000 | 0.000 3248.00000 | 0.000 3304.00000 | 0.000 3360.00000 | 0.000 3416.00000 |****************************************** 0.060 3472.00000 |****************************************** 0.060 3528.00000 |***************** 0.024 -------------------------------------------------------------------------------- Time to end of optimisation = 8.5900 seconds Peak dynamic memory used = 1.65 MB Timing analysis for Gulp : -------------------------------------------------------------------------------- Task / Subroutine Time (Seconds) -------------------------------------------------------------------------------- Calculation of reciprocal space energy and derivatives 0.6600 Calculation of reciprocal space energy using symmetry 1.0700 Calculation of real space energy and derivatives 0.4400 Calculation of real space energy using symmetry 6.1500 Calculation of phonons 0.7300 Calculation of hessian 0.3600 Matrix diagonalisation 0.0200 Calculation of transformation matrix 0.0100 Symmetry generation of equivalent positions 0.0400 -------------------------------------------------------------------------------- Total CPU time 8.5900 -------------------------------------------------------------------------------- Job Finished at 10:12.56 16th May 2002 gdis-0.90/models/adp2.cif0000644000175000017500000000433007717054764013643 0ustar seanseandata_37230-ICSD _audit_creation_date 102-01-29 _audit_creation_method 'generated by RETRIEVE 2.0' _database_code_ICSD 37230 _chemical_name_systematic 'Ammonium dihydrogenphosphate' _chemical_name_mineral 'Biphosammite' _chemical_compound_source 'synthetic' _chemical_formula_structural 'N H4 H2 P O4' _chemical_formula_sum 'H6 N O4 P' _publ_section_title ; A Neutron Structure Analysis of Tetragonal N H4 H2 P O4 ; loop_ _publ_author_name 'Tenzer, L' 'Frazer, B C' 'Pepinsky, R' _journal_name_full 'Acta Crystallographica (1,1948-23,1967)' _journal_coden_ASTM ACCRA9 _journal_volume 11 _journal_year 1958 _journal_page_first 505 _journal_page_last 509 _cell_length_a 7.502 _cell_length_b 7.502 _cell_length_c 7.546 _cell_angle_alpha 90 _cell_angle_beta 90 _cell_angle_gamma 90 _cell_volume 424.7 _cell_formula_units_Z 4 _symmetry_space_group_name_H-M 'I -4 2 d S' _symmetry_Int_Tables_number 122 _symmetry_cell_setting tetragonal loop_ _symmetry_equiv_pos_as_xyz 'x,y,z' '-x,-y,z' '-y,x,-z' 'y,-x,-z' '1/2-x,y,1/4-z' '1/2+x,-y,1/4-z' '1/2+y,x,1/4+z' '1/2-y,-x,1/4+z' '1/2+x,1/2+y,1/2+z' '1/2-x,1/2-y,1/2+z' '1/2-y,1/2+x,1/2-z' '1/2+y,1/2-x,1/2-z' '-x,1/2+y,3/4-z' 'x,1/2-y,3/4-z' 'y,1/2+x,3/4+z' '-y,1/2-x,3/4+z' loop_ _atom_type_symbol _atom_type_oxidation_number P5+ 5.000 N3- -3.000 O2- -2.000 H1+ 1.000 loop_ _atom_site_label _atom_site_type_symbol _atom_site_symmetry_multiplicity _atom_site_Wyckoff_symbol _atom_site_fract_x _atom_site_fract_y _atom_site_fract_z _atom_site_occupancy _atom_site_attached_hydrogens _atom_site_calc_flag P1 P5+ 4 a 0. 0. 0. 1. 0 d N1 N3- 4 b 0. 0. 0.5 1. 4 d O1 O2- 16 e 0.085 0.146 0.115 1. 0 d H1 H1+ 16 e 0.014 0.111 0.573 1. 0 d H2 H1+ 16 e 0.227 0.146 0.122 0.5 0 d _refine_ls_R_factor_all 0.089 gdis-0.90/models/calcite_0-14_0.5000.got0000644000175000017500000005532307717054770015721 0ustar seansean******************************************************************************** * GENERAL UTILITY LATTICE PROGRAM * * Julian Gale, Imperial College * * Version 1.4 * ******************************************************************************** * single - perform a single point run * * conv - constant volume calculation * * molecule - molecule option activated, Coulomb subtract within molecule * ******************************************************************************** Job Started at 10:48.16 23rd April 2002 Number of CPUs = 1 Total number of configurations input = 1 ******************************************************************************** * Input for Configuration = 1 : calcite_0-14_0.5000 * ******************************************************************************** Formula = Ca12O36C12 Number of irreducible atoms/shells = 96 Total number atoms/shells = 96 Dimensionality = 2 : Surface Surface Cartesian vectors (Angstroms) : 4.980183 0.000000 0.000000 4.980185 -24.270660 0.000000 Surface cell parameters (Angstroms/Degrees): a = 4.9802 alpha = 78.4042 b = 24.7763 Initial surface area = 120.872328 Angs**2 Initial surface dipole = -0.000014 e.Angs Temperature of configuration = 0.0000 K Mixed fractional/Cartesian coordinates of surface : -------------------------------------------------------------------------------- No. Atomic x y z Charge Occupancy Label (Frac) (Frac) (Angs) (e) (Frac) -------------------------------------------------------------------------------- Region 1 : -------------------------------------------------------------------------------- 1 Ca c 0.166667 0.833333 -1.5168 2.000000 1.000000 2 O c 0.330679 0.916667 -1.5168 1.018487 1.000000 3 C c 0.583333 0.916667 -1.5168 1.343539 1.000000 4 O c 0.741574 0.884753 -2.2833 1.018487 1.000000 5 O c 0.677747 0.948580 -0.7504 1.018487 1.000000 6 Ca c 0.333333 0.666667 -1.5168 2.000000 1.000000 7 O c 0.988920 0.384753 -2.2833 1.018487 1.000000 8 C c 0.083333 0.416667 -1.5168 1.343539 1.000000 9 O c 0.925093 0.448580 -0.7504 1.018487 1.000000 10 O c 0.335987 0.416667 -1.5168 1.018487 1.000000 11 C c 0.750000 0.750000 -1.5168 1.343539 1.000000 12 O c 0.002654 0.750000 -1.5168 1.018487 1.000000 13 O c 0.655586 0.718086 -2.2833 1.018487 1.000000 14 O c 0.591759 0.781914 -0.7504 1.018487 1.000000 15 C c 0.916667 0.583333 -1.5168 1.343539 1.000000 16 O c 0.664013 0.583333 -1.5168 1.018487 1.000000 17 O c 0.074907 0.551420 -2.2833 1.018487 1.000000 18 O c 0.011080 0.615247 -0.7504 1.018487 1.000000 19 Ca c 0.666667 0.333333 -1.5168 2.000000 1.000000 20 Ca c 0.500000 0.500000 -1.5168 2.000000 1.000000 21 Ca c 0.833333 0.166667 -1.5168 2.000000 1.000000 22 C c 0.250000 0.250000 -1.5168 1.343539 1.000000 23 O c 0.997346 0.250000 -1.5168 1.018487 1.000000 24 O c 0.344413 0.281913 -0.7504 1.018487 1.000000 25 O c 0.408241 0.218086 -2.2833 1.018487 1.000000 26 C c 0.416667 0.083333 -1.5168 1.343539 1.000000 27 O c 0.669321 0.083333 -1.5168 1.018487 1.000000 28 O c 0.258426 0.115247 -0.7504 1.018487 1.000000 29 O c 0.322253 0.051420 -2.2833 1.018487 1.000000 30 Ca c 0.000000 0.000000 -1.5168 2.000000 1.000000 61 O s 0.330096 0.916667 -1.5168 -2.133000 1.000000 62 O s 0.741939 0.884679 -2.2851 -2.133000 1.000000 63 O s 0.677965 0.948654 -0.7486 -2.133000 1.000000 64 O s 0.988702 0.384679 -2.2851 -2.133000 1.000000 65 O s 0.924727 0.448654 -0.7486 -2.133000 1.000000 66 O s 0.336571 0.416667 -1.5168 -2.133000 1.000000 67 O s 0.003237 0.750000 -1.5168 -2.133000 1.000000 68 O s 0.655368 0.718013 -2.2851 -2.133000 1.000000 69 O s 0.591394 0.781987 -0.7486 -2.133000 1.000000 70 O s 0.663429 0.583333 -1.5168 -2.133000 1.000000 71 O s 0.075272 0.551346 -2.2851 -2.133000 1.000000 72 O s 0.011298 0.615321 -0.7486 -2.133000 1.000000 73 O s 0.996763 0.250000 -1.5168 -2.133000 1.000000 74 O s 0.344631 0.281987 -0.7486 -2.133000 1.000000 75 O s 0.408606 0.218013 -2.2851 -2.133000 1.000000 76 O s 0.669904 0.083333 -1.5168 -2.133000 1.000000 77 O s 0.258061 0.115321 -0.7486 -2.133000 1.000000 78 O s 0.322035 0.051346 -2.2851 -2.133000 1.000000 -------------------------------------------------------------------------------- Region 2 : -------------------------------------------------------------------------------- 31 C c 0.042980 0.957020 -4.5505 1.343539 1.000000 32 O c 0.295634 0.957020 -4.5505 1.018487 1.000000 33 O c 0.884739 0.988934 -3.7840 1.018487 1.000000 34 O c 0.948566 0.925107 -5.3170 1.018487 1.000000 35 O c 0.956992 0.790354 -4.5505 1.018487 1.000000 36 C c 0.209646 0.790354 -4.5505 1.343539 1.000000 37 O c 0.367887 0.758440 -5.3170 1.018487 1.000000 38 O c 0.304060 0.822267 -3.7840 1.018487 1.000000 39 Ca c 0.626313 0.873687 -4.5505 2.000000 1.000000 40 Ca c 0.792980 0.707020 -4.5505 2.000000 1.000000 41 C c 0.376313 0.623687 -4.5505 1.343539 1.000000 42 O c 0.628967 0.623687 -4.5505 1.018487 1.000000 43 O c 0.281900 0.591773 -5.3170 1.018487 1.000000 44 O c 0.218073 0.655600 -3.7840 1.018487 1.000000 45 C c 0.542980 0.457020 -4.5505 1.343539 1.000000 46 O c 0.290326 0.457020 -4.5505 1.018487 1.000000 47 O c 0.701220 0.425107 -5.3170 1.018487 1.000000 48 O c 0.637393 0.488934 -3.7840 1.018487 1.000000 49 Ca c 0.959647 0.540353 -4.5505 2.000000 1.000000 50 Ca c 0.292980 0.207020 -4.5505 2.000000 1.000000 51 O c 0.615233 0.258440 -5.3170 1.018487 1.000000 52 C c 0.709647 0.290353 -4.5505 1.343539 1.000000 53 O c 0.551406 0.322267 -3.7840 1.018487 1.000000 54 O c 0.962300 0.290353 -4.5505 1.018487 1.000000 55 Ca c 0.126313 0.373687 -4.5505 2.000000 1.000000 56 Ca c 0.459646 0.040354 -4.5505 2.000000 1.000000 57 C c 0.876313 0.123687 -4.5505 1.343539 1.000000 58 O c 0.623659 0.123687 -4.5505 1.018487 1.000000 59 O c 0.970727 0.155600 -3.7840 1.018487 1.000000 60 O c 0.034554 0.091773 -5.3170 1.018487 1.000000 79 O s 0.296217 0.957020 -4.5505 -2.133000 1.000000 80 O s 0.884374 0.989007 -3.7823 -2.133000 1.000000 81 O s 0.948348 0.925033 -5.3187 -2.133000 1.000000 82 O s 0.956409 0.790354 -4.5505 -2.133000 1.000000 83 O s 0.368252 0.758366 -5.3187 -2.133000 1.000000 84 O s 0.304278 0.822341 -3.7823 -2.133000 1.000000 85 O s 0.629551 0.623687 -4.5505 -2.133000 1.000000 86 O s 0.281682 0.591700 -5.3187 -2.133000 1.000000 87 O s 0.217707 0.655674 -3.7823 -2.133000 1.000000 88 O s 0.289742 0.457020 -4.5505 -2.133000 1.000000 89 O s 0.701586 0.425033 -5.3187 -2.133000 1.000000 90 O s 0.637611 0.489007 -3.7823 -2.133000 1.000000 91 O s 0.615015 0.258366 -5.3187 -2.133000 1.000000 92 O s 0.551040 0.322341 -3.7823 -2.133000 1.000000 93 O s 0.962884 0.290353 -4.5505 -2.133000 1.000000 94 O s 0.623076 0.123687 -4.5505 -2.133000 1.000000 95 O s 0.970945 0.155674 -3.7823 -2.133000 1.000000 96 O s 0.034919 0.091700 -5.3187 -2.133000 1.000000 -------------------------------------------------------------------------------- Growth Slice : Mixed fractional/Cartesian coordinates -------------------------------------------------------------------------------- Label (Frac) (Frac) (Angs) (e) (Frac) -------------------------------------------------------------------------------- 1 Ca c 0.166667 0.833333 -1.5168 2.000000 1.000000 2 O c 0.330679 0.916667 -1.5168 1.018487 1.000000 3 C c 0.583333 0.916667 -1.5168 1.343539 1.000000 4 O c 0.741574 0.884753 -2.2833 1.018487 1.000000 5 O c 0.677747 0.948580 -0.7504 1.018487 1.000000 6 Ca c 0.333333 0.666667 -1.5168 2.000000 1.000000 7 O c 0.988920 0.384753 -2.2833 1.018487 1.000000 8 C c 0.083333 0.416667 -1.5168 1.343539 1.000000 9 O c 0.925093 0.448580 -0.7504 1.018487 1.000000 10 O c 0.335987 0.416667 -1.5168 1.018487 1.000000 11 C c 0.750000 0.750000 -1.5168 1.343539 1.000000 12 O c 0.002654 0.750000 -1.5168 1.018487 1.000000 13 O c 0.655586 0.718086 -2.2833 1.018487 1.000000 14 O c 0.591759 0.781914 -0.7504 1.018487 1.000000 15 C c 0.916667 0.583333 -1.5168 1.343539 1.000000 16 O c 0.664013 0.583333 -1.5168 1.018487 1.000000 17 O c 0.074907 0.551420 -2.2833 1.018487 1.000000 18 O c 0.011080 0.615247 -0.7504 1.018487 1.000000 19 Ca c 0.666667 0.333333 -1.5168 2.000000 1.000000 20 Ca c 0.500000 0.500000 -1.5168 2.000000 1.000000 21 Ca c 0.833333 0.166667 -1.5168 2.000000 1.000000 22 C c 0.250000 0.250000 -1.5168 1.343539 1.000000 23 O c 0.997346 0.250000 -1.5168 1.018487 1.000000 24 O c 0.344413 0.281913 -0.7504 1.018487 1.000000 25 O c 0.408241 0.218086 -2.2833 1.018487 1.000000 26 C c 0.416667 0.083333 -1.5168 1.343539 1.000000 27 O c 0.669321 0.083333 -1.5168 1.018487 1.000000 28 O c 0.258426 0.115247 -0.7504 1.018487 1.000000 29 O c 0.322253 0.051420 -2.2833 1.018487 1.000000 30 Ca c 0.000000 0.000000 -1.5168 2.000000 1.000000 61 O s 0.330096 0.916667 -1.5168 -2.133000 1.000000 62 O s 0.741939 0.884679 -2.2851 -2.133000 1.000000 63 O s 0.677965 0.948654 -0.7486 -2.133000 1.000000 64 O s 0.988702 0.384679 -2.2851 -2.133000 1.000000 65 O s 0.924727 0.448654 -0.7486 -2.133000 1.000000 66 O s 0.336571 0.416667 -1.5168 -2.133000 1.000000 67 O s 0.003237 0.750000 -1.5168 -2.133000 1.000000 68 O s 0.655368 0.718013 -2.2851 -2.133000 1.000000 69 O s 0.591394 0.781987 -0.7486 -2.133000 1.000000 70 O s 0.663429 0.583333 -1.5168 -2.133000 1.000000 71 O s 0.075272 0.551346 -2.2851 -2.133000 1.000000 72 O s 0.011298 0.615321 -0.7486 -2.133000 1.000000 73 O s 0.996763 0.250000 -1.5168 -2.133000 1.000000 74 O s 0.344631 0.281987 -0.7486 -2.133000 1.000000 75 O s 0.408606 0.218013 -2.2851 -2.133000 1.000000 76 O s 0.669904 0.083333 -1.5168 -2.133000 1.000000 77 O s 0.258061 0.115321 -0.7486 -2.133000 1.000000 78 O s 0.322035 0.051346 -2.2851 -2.133000 1.000000 -------------------------------------------------------------------------------- Molecule list generated from bondlengths : Total number of molecules = 12 -------------------------------------------------------------------------------- Molecule No./: Atoms Periodicity : -------------------------------------------------------------------------------- 1 0 : O c 2 C c 3 O c 4 O c 5 O s 61 : O s 62 O s 63 2 0 : O c 7 C c 8 O c 9 O c 10 O s 64 : O s 65 O s 66 3 0 : C c 11 O c 12 O c 13 O c 14 O s 67 : O s 68 O s 69 4 0 : C c 15 O c 16 O c 17 O c 18 O s 70 : O s 71 O s 72 5 0 : C c 22 O c 23 O c 24 O c 25 O s 73 : O s 74 O s 75 6 0 : C c 26 O c 27 O c 28 O c 29 O s 76 : O s 77 O s 78 7 0 : C c 31 O c 32 O c 33 O c 34 O s 79 : O s 80 O s 81 8 0 : O c 35 C c 36 O c 37 O c 38 O s 82 : O s 83 O s 84 9 0 : C c 41 O c 42 O c 43 O c 44 O s 85 : O s 86 O s 87 10 0 : C c 45 O c 46 O c 47 O c 48 O s 88 : O s 89 O s 90 11 0 : O c 51 C c 52 O c 53 O c 54 O s 91 : O s 92 O s 93 12 0 : C c 57 O c 58 O c 59 O c 60 O s 94 : O s 95 O s 96 -------------------------------------------------------------------------------- ******************************************************************************** * General input information * ******************************************************************************** Species output for all configurations : -------------------------------------------------------------------------------- Species Type Atomic Atomic Charge Radii (Angs) Library Number Mass (e) Cova Ionic VDW Symbol -------------------------------------------------------------------------------- Cd Core 48 112.41 2.0000 0.000 0.000 2.520 Mn Core 25 54.94 2.0000 0.000 0.000 2.010 Mg Core 12 24.31 2.0000 1.100 0.000 1.640 Zn Core 30 65.39 2.0000 0.000 0.000 2.160 Ni Core 28 58.69 2.0000 0.000 0.000 1.810 Co Core 27 58.93 2.0000 0.000 0.000 1.990 Fe Core 26 55.85 2.0000 0.000 0.000 2.000 Ca Core 20 40.08 2.0000 0.990 0.000 2.750 C Core 6 12.01 1.3435 0.770 0.000 1.530 O Core 8 16.00 1.0185 0.730 0.000 1.360 O Shell 8 0.00 -2.1330 0.730 0.000 1.360 -------------------------------------------------------------------------------- Accuracy factor for short range sums = 8.000 Time limit = Infinity **** Warning - potential 1 is acting on the core of an ion with a shell **** **** Warning - potential 11 is acting on the core of an ion with a shell **** General interatomic potentials : -------------------------------------------------------------------------------- Atom Types Potential A B C D Cutoffs(Ang) 1 2 Min Max -------------------------------------------------------------------------------- Ca c O s Buckingham 0.215E+04 0.289 .000 .000 0.000 10.000 Cd c O s Buckingham 0.433E+04 0.256 .000 .000 0.000 10.000 Mg c O s Buckingham 0.104E+04 0.289 .000 .000 0.000 10.000 Co c O s Buckingham 0.110E+04 0.286 .000 .000 0.000 10.000 Fe c O s Buckingham 0.215E+04 0.265 .000 .000 0.000 10.000 Mn c O s Buckingham 0.200E+04 0.273 .000 .000 0.000 10.000 Ni c O s Buckingham 0.163E+04 0.267 .000 .000 0.000 10.000 Zn c O s Buckingham 0.103E+04 0.289 .000 .000 0.000 10.000 O c O s Spring (c-s) 52.7 0.100E+05 .000 .000 0.000 0.600 -------------------------------------------------------------------------------- Intramolecular potentials : -------------------------------------------------------------------------------- Atom Types Potential A B C D Cutoffs(Ang) 1 2 Min Max -------------------------------------------------------------------------------- O c O c Buckingham 0.403E+04 0.245 .000 .000 0.000 2.500 C c O c Morse 5.00 2.52 1.20 .000 0.000 1 Bond -------------------------------------------------------------------------------- Intermolecular potentials : -------------------------------------------------------------------------------- Atom Types Potential A B C D Cutoffs(Ang) 1 2 Min Max -------------------------------------------------------------------------------- O s O s Buckingham 0.647E+05 0.199 21.8 .000 0.000 15.000 -------------------------------------------------------------------------------- Intramolecular Three-body potentials : Harmonic form: -------------------------------------------------------------------------------- Atom Atom Atom Force Constants Theta Cutoffs 1 2 3 (eVrad**-2/eVrad**-3/eVrad**-4) (deg) 1-2 1-3 2-3 -------------------------------------------------------------------------------- C c O c O c 1.777 0.0000 0.0000 120.000 Bonded -------------------------------------------------------------------------------- Intramolecular Four-body potentials : Out of plane potentials: -------------------------------------------------------------------------------- Atom Types Force cst Cutoffs 1 2 3 4 (eV) 1-2 1-3 2-3 1-4 -------------------------------------------------------------------------------- C c O c O c O c 8.8279 Bonded -------------------------------------------------------------------------------- ******************************************************************************** * Output for configuration 1 : calcite_0-14_0.5000 * ******************************************************************************** Components of energy : -------------------------------------------------------------------------------- Interatomic potentials = -121.44487640 eV Three-body potentials = 0.00000000 eV Four-body potentials = 0.00000000 eV Out of plane potentials = 0.00000000 eV Monopole - monopole (real) = -24.90729868 eV Monopole - monopole (recip)= -354.51933201 eV Monopole - monopole (total)= -379.42663069 eV -------------------------------------------------------------------------------- Total lattice energy = -500.87150708 eV -------------------------------------------------------------------------------- Total lattice energy = -48326.4439 kJ/(mole unit cells) -------------------------------------------------------------------------------- Surface energy (region 1) = 0.7058 J/m**2 -------------------------------------------------------------------------------- Attachment energy = -10.74017266 eV -------------------------------------------------------------------------------- Peak dynamic memory used = 0.48 MB Timing analysis for Gulp : -------------------------------------------------------------------------------- Task / Subroutine Time (Seconds) -------------------------------------------------------------------------------- Calculation of reciprocal space energy and derivatives 0.0400 Calculation of real space energy and derivatives 0.1000 -------------------------------------------------------------------------------- Total CPU time 0.1900 -------------------------------------------------------------------------------- Dump file written as calcite_0-14_0.5000.res Job Finished at 10:48.16 23rd April 2002 gdis-0.90/models/calcite_-114_0.0000.res0000644000175000017500000010062607717054767015720 0ustar seansean# # Keywords: # single conv mole # # Options: # name calcite_-114_0.0000 # Surface energy = 0.707327 J/m2 scell 4.980183 24.776345 101.595772 sfractional region 1 Ca core 0.0859600 0.0859600 -6.067330 2.00000000 1.00000 0.00000 % C core 0.0429800 0.0429800 -3.033664 1.34353899 1.00000 0.00000 % O core 0.2012200 0.0748929 -3.800132 1.01848700 1.00000 0.00000 % O core 0.7903260 0.0429800 -3.033664 1.01848700 1.00000 0.00000 % O core 0.1373929 0.0110659 -2.267197 1.01848700 1.00000 0.00000 % O core 0.0514060 0.1777330 -2.267198 1.01848700 1.00000 0.00000 % C core 0.2096470 0.2096470 -3.033664 1.34353899 1.00000 0.00000 % O core 0.4623010 0.2096470 -3.033664 1.01848700 1.00000 0.00000 % O core 0.1152330 0.2415600 -3.800133 1.01848700 1.00000 0.00000 % Ca core 0.2929800 0.7929800 -3.033665 2.00000000 1.00000 0.00000 % Ca core 0.4596459 0.9596470 -3.033666 2.00000000 1.00000 0.00000 % Ca core 0.0456059 0.5456059 -9.100996 2.00000000 1.00000 0.00000 % C core 0.1692929 0.6692929 -6.067331 1.34353899 1.00000 0.00000 % O core 0.0110530 0.6373789 -5.300863 1.01848700 1.00000 0.00000 % O core 0.4219469 0.6692929 -6.067330 1.01848700 1.00000 0.00000 % O core 0.0748800 0.7012070 -6.833799 1.01848700 1.00000 0.00000 % O core 0.4303729 0.8040459 -5.300863 1.01848700 1.00000 0.00000 % C core 0.3359600 0.8359600 -6.067330 1.34353899 1.00000 0.00000 % O core 0.0833060 0.8359600 -6.067330 1.01848700 1.00000 0.00000 % O core 0.4942000 0.8678729 -6.833798 1.01848700 1.00000 0.00000 % O core 0.9303460 0.5566730 -11.36819 1.01848700 1.00000 0.00000 % C core 0.0885859 0.5885859 -12.13466 1.34353899 1.00000 0.00000 % O core 0.3412400 0.5885859 -12.13466 1.01848700 1.00000 0.00000 % O core 0.9941730 0.6205000 -12.90112 1.01848700 1.00000 0.00000 % Ca core 0.2122729 0.7122729 -9.100996 2.00000000 1.00000 0.00000 % Ca core 0.1719200 0.1719190 -12.13466 2.00000000 1.00000 0.00000 % Ca core 0.3385859 0.3385859 -12.13466 2.00000000 1.00000 0.00000 % C core 0.2956059 0.2956059 -9.100994 1.34353899 1.00000 0.00000 % O core 0.4538469 0.3275200 -9.867462 1.01848700 1.00000 0.00000 % O core 0.0429519 0.2956059 -9.100994 1.01848700 1.00000 0.00000 % O core 0.3900200 0.2636930 -8.334526 1.01848700 1.00000 0.00000 % C core 0.0026259 0.5026259 -6.067330 1.34353899 1.00000 0.00000 % O core 0.1608669 0.5345400 -6.833798 1.01848700 1.00000 0.00000 % O core 0.0970400 0.4707130 -5.300863 1.01848700 1.00000 0.00000 % O core 0.7499719 0.5026259 -6.067330 1.01848700 1.00000 0.00000 % Ca core 0.4192929 0.4192929 -6.067330 2.00000000 1.00000 0.00000 % C core 0.5429800 0.5429800 -3.033665 1.34353899 1.00000 0.00000 % O core 0.3847389 0.5110659 -2.267199 1.01848700 1.00000 0.00000 % O core 0.7956339 0.5429800 -3.033665 1.01848700 1.00000 0.00000 % O core 0.4485659 0.5748929 -3.800133 1.01848700 1.00000 0.00000 % O core 0.8040600 0.6777330 -2.267197 1.01848700 1.00000 0.00000 % C core 0.7096470 0.7096470 -3.033664 1.34353899 1.00000 0.00000 % O core 0.4569930 0.7096470 -3.033664 1.01848700 1.00000 0.00000 % O core 0.8678869 0.7415600 -3.800133 1.01848700 1.00000 0.00000 % O core 0.3040319 0.4303589 -8.334527 1.01848700 1.00000 0.00000 % C core 0.4622729 0.4622729 -9.100996 1.34353899 1.00000 0.00000 % O core 0.7149269 0.4622729 -9.100996 1.01848700 1.00000 0.00000 % O core 0.3678589 0.4941860 -9.867463 1.01848700 1.00000 0.00000 % Ca core 0.5859600 0.5859600 -6.067330 2.00000000 1.00000 0.00000 % Ca core 0.1263129 0.6263129 -3.033665 2.00000000 1.00000 0.00000 % Ca core 0.5456059 0.0456059 -9.100996 2.00000000 1.00000 0.00000 % Ca core 0.7122729 0.2122729 -9.100996 2.00000000 1.00000 0.00000 % C core 0.1289400 0.1289390 -9.100996 1.34353899 1.00000 0.00000 % O core 0.9706989 0.0970259 -8.334527 1.01848700 1.00000 0.00000 % O core 0.0345259 0.1608529 -9.867463 1.01848700 1.00000 0.00000 % O core 0.3815939 0.1289390 -9.100996 1.01848700 1.00000 0.00000 % C core 0.6692929 0.1692929 -6.067330 1.34353899 1.00000 0.00000 % O core 0.8275340 0.2012070 -6.833797 1.01848700 1.00000 0.00000 % O core 0.4166390 0.1692929 -6.067330 1.01848700 1.00000 0.00000 % O core 0.7637070 0.1373789 -5.300862 1.01848700 1.00000 0.00000 % O core 0.6830000 0.0566720 -11.36819 1.01848700 1.00000 0.00000 % C core 0.5885859 0.0885859 -12.13466 1.34353899 1.00000 0.00000 % O core 0.3359319 0.0885859 -12.13466 1.01848700 1.00000 0.00000 % O core 0.7468269 0.1205000 -12.90112 1.01848700 1.00000 0.00000 % Ca core 0.0052529 0.0052529 -12.13466 2.00000000 1.00000 0.00000 % Ca core 0.2526259 0.2526259 -6.067330 2.00000000 1.00000 0.00000 % C core 0.3763129 0.3763129 -3.033665 1.34353899 1.00000 0.00000 % O core 0.5345540 0.4082270 -3.800133 1.01848700 1.00000 0.00000 % O core 0.4707270 0.3444000 -2.267198 1.01848700 1.00000 0.00000 % O core 0.1236590 0.3763129 -3.033665 1.01848700 1.00000 0.00000 % Ca core 0.7929800 0.2929800 -3.033665 2.00000000 1.00000 0.00000 % O core 0.6777189 0.3040459 -5.300863 1.01848700 1.00000 0.00000 % C core 0.8359600 0.3359600 -6.067330 1.34353899 1.00000 0.00000 % O core 0.0886139 0.3359600 -6.067330 1.01848700 1.00000 0.00000 % O core 0.7415459 0.3678729 -6.833798 1.01848700 1.00000 0.00000 % Ca core 0.9596470 0.4596470 -3.033664 2.00000000 1.00000 0.00000 % C core 0.5026259 0.0026259 -6.067330 1.34353899 1.00000 0.00000 % O core 0.3443860 0.9707130 -5.300862 1.01848700 1.00000 0.00000 % O core 0.4082130 0.0345400 -6.833797 1.01848700 1.00000 0.00000 % O core 0.7552800 0.0026259 -6.067330 1.01848700 1.00000 0.00000 % Ca core 0.6263129 0.1263129 -3.033664 2.00000000 1.00000 0.00000 % C core 0.4219190 0.9219190 -12.13466 1.34353899 1.00000 0.00000 % O core 0.2636789 0.8900059 -11.36819 1.01848700 1.00000 0.00000 % O core 0.6745730 0.9219190 -12.13466 1.01848700 1.00000 0.00000 % O core 0.3275059 0.9538329 -12.90112 1.01848700 1.00000 0.00000 % C core 0.2552529 0.7552529 -12.13466 1.34353899 1.00000 0.00000 % O core 0.4134930 0.7871659 -12.90113 1.01848700 1.00000 0.00000 % O core 0.3496660 0.7233389 -11.36819 1.01848700 1.00000 0.00000 % O core 0.0025990 0.7552529 -12.13466 1.01848700 1.00000 0.00000 % Ca core 0.9192929 0.9192929 -6.067330 2.00000000 1.00000 0.00000 % Ca core 0.6719200 0.6719190 -12.13466 2.00000000 1.00000 0.00000 % C core 0.7956059 0.7956059 -9.100997 1.34353899 1.00000 0.00000 % O core 0.6373660 0.7636930 -8.334530 1.01848700 1.00000 0.00000 % O core 0.0482600 0.7956059 -9.100996 1.01848700 1.00000 0.00000 % O core 0.7011930 0.8275200 -9.867464 1.01848700 1.00000 0.00000 % O core 0.0566859 0.9303589 -8.334527 1.01848700 1.00000 0.00000 % C core 0.9622729 0.9622729 -9.100996 1.34353899 1.00000 0.00000 % O core 0.7096190 0.9622729 -9.100996 1.01848700 1.00000 0.00000 % O core 0.1205130 0.9941859 -9.867464 1.01848700 1.00000 0.00000 % Ca core 0.8385859 0.8385859 -12.13466 2.00000000 1.00000 0.00000 % Ca core 0.3789400 0.8789400 -9.100996 2.00000000 1.00000 0.00000 % C core 0.9219200 0.4219190 -12.13465 1.34353899 1.00000 0.00000 % O core 0.0801600 0.4538329 -12.90112 1.01848700 1.00000 0.00000 % O core 0.6692660 0.4219190 -12.13465 1.01848700 1.00000 0.00000 % O core 0.0163329 0.3900059 -11.36819 1.01848700 1.00000 0.00000 % Ca core 0.5052529 0.5052529 -12.13466 2.00000000 1.00000 0.00000 % C core 0.6289400 0.6289400 -9.100996 1.34353899 1.00000 0.00000 % O core 0.7871800 0.6608529 -9.867464 1.01848700 1.00000 0.00000 % O core 0.7233529 0.5970259 -8.334528 1.01848700 1.00000 0.00000 % O core 0.3762860 0.6289400 -9.100996 1.01848700 1.00000 0.00000 % C core 0.8763129 0.8763129 -3.033665 1.34353899 1.00000 0.00000 % O core 0.7180730 0.8444000 -2.267198 1.01848700 1.00000 0.00000 % O core 0.7819000 0.9082270 -3.800133 1.01848700 1.00000 0.00000 % O core 0.1289669 0.8763129 -3.033665 1.01848700 1.00000 0.00000 % Ca core 0.7526259 0.7526259 -6.067330 2.00000000 1.00000 0.00000 % C core 0.7552529 0.2552529 -12.13466 1.34353899 1.00000 0.00000 % O core 0.5970119 0.2233389 -11.36819 1.01848700 1.00000 0.00000 % O core 0.6608389 0.2871659 -12.90112 1.01848700 1.00000 0.00000 % O core 0.0079069 0.2552529 -12.13466 1.01848700 1.00000 0.00000 % Ca core 0.8789400 0.3789400 -9.100996 2.00000000 1.00000 0.00000 % O shel 0.2015860 0.0749670 -3.801901 -2.1330000 1.00000 0.00000 % O shel 0.7897420 0.0429800 -3.033664 -2.1330000 1.00000 0.00000 % O shel 0.1376109 0.0109929 -2.265427 -2.1330000 1.00000 0.00000 % O shel 0.0510409 0.1776590 -2.265427 -2.1330000 1.00000 0.00000 % O shel 0.4628840 0.2096470 -3.033664 -2.1330000 1.00000 0.00000 % O shel 0.1150149 0.2416339 -3.801902 -2.1330000 1.00000 0.00000 % O shel 0.0106870 0.6373060 -5.299094 -2.1330000 1.00000 0.00000 % O shel 0.4225300 0.6692929 -6.067330 -2.1330000 1.00000 0.00000 % O shel 0.0746620 0.7012800 -6.835569 -2.1330000 1.00000 0.00000 % O shel 0.4305909 0.8039720 -5.299092 -2.1330000 1.00000 0.00000 % O shel 0.0827220 0.8359600 -6.067330 -2.1330000 1.00000 0.00000 % O shel 0.4945660 0.8679470 -6.835568 -2.1330000 1.00000 0.00000 % O shel 0.9299800 0.5565990 -11.36642 -2.1330000 1.00000 0.00000 % O shel 0.3418240 0.5885859 -12.13466 -2.1330000 1.00000 0.00000 % O shel 0.9939549 0.6205730 -12.90289 -2.1330000 1.00000 0.00000 % O shel 0.4542120 0.3275930 -9.869232 -2.1330000 1.00000 0.00000 % O shel 0.0423690 0.2956059 -9.100994 -2.1330000 1.00000 0.00000 % O shel 0.3902380 0.2636190 -8.332757 -2.1330000 1.00000 0.00000 % O shel 0.1612320 0.5346139 -6.835568 -2.1330000 1.00000 0.00000 % O shel 0.0972580 0.4706390 -5.299093 -2.1330000 1.00000 0.00000 % O shel 0.7493890 0.5026259 -6.067330 -2.1330000 1.00000 0.00000 % O shel 0.3843739 0.5109929 -2.265428 -2.1330000 1.00000 0.00000 % O shel 0.7962170 0.5429800 -3.033665 -2.1330000 1.00000 0.00000 % O shel 0.4483479 0.5749670 -3.801902 -2.1330000 1.00000 0.00000 % O shel 0.8042780 0.6776590 -2.265427 -2.1330000 1.00000 0.00000 % O shel 0.4564090 0.7096470 -3.033664 -2.1330000 1.00000 0.00000 % O shel 0.8682529 0.7416339 -3.801902 -2.1330000 1.00000 0.00000 % O shel 0.3036670 0.4302860 -8.332758 -2.1330000 1.00000 0.00000 % O shel 0.7155109 0.4622729 -9.100996 -2.1330000 1.00000 0.00000 % O shel 0.3676410 0.4942600 -9.869234 -2.1330000 1.00000 0.00000 % O shel 0.9703339 0.0969520 -8.332758 -2.1330000 1.00000 0.00000 % O shel 0.0343079 0.1609270 -9.869234 -2.1330000 1.00000 0.00000 % O shel 0.3821770 0.1289390 -9.100996 -2.1330000 1.00000 0.00000 % O shel 0.8278990 0.2012800 -6.835567 -2.1330000 1.00000 0.00000 % O shel 0.4160559 0.1692929 -6.067330 -2.1330000 1.00000 0.00000 % O shel 0.7639250 0.1373060 -5.299092 -2.1330000 1.00000 0.00000 % O shel 0.6832180 0.0565990 -11.36642 -2.1330000 1.00000 0.00000 % O shel 0.3353490 0.0885859 -12.13466 -2.1330000 1.00000 0.00000 % O shel 0.7471920 0.1205730 -12.90289 -2.1330000 1.00000 0.00000 % O shel 0.5349190 0.4083000 -3.801902 -2.1330000 1.00000 0.00000 % O shel 0.4709450 0.3443260 -2.265428 -2.1330000 1.00000 0.00000 % O shel 0.1230759 0.3763129 -3.033665 -2.1330000 1.00000 0.00000 % O shel 0.6773539 0.3039720 -5.299093 -2.1330000 1.00000 0.00000 % O shel 0.0891970 0.3359600 -6.067330 -2.1330000 1.00000 0.00000 % O shel 0.7413279 0.3679470 -6.835568 -2.1330000 1.00000 0.00000 % O shel 0.3440200 0.9706390 -5.299092 -2.1330000 1.00000 0.00000 % O shel 0.4079949 0.0346139 -6.835568 -2.1330000 1.00000 0.00000 % O shel 0.7558640 0.0026259 -6.067330 -2.1330000 1.00000 0.00000 % O shel 0.2633139 0.8899320 -11.36642 -2.1330000 1.00000 0.00000 % O shel 0.6751570 0.9219190 -12.13466 -2.1330000 1.00000 0.00000 % O shel 0.3272879 0.9539070 -12.90289 -2.1330000 1.00000 0.00000 % O shel 0.4138590 0.7872400 -12.90290 -2.1330000 1.00000 0.00000 % O shel 0.3498839 0.7232660 -11.36642 -2.1330000 1.00000 0.00000 % O shel 0.0020150 0.7552529 -12.13466 -2.1330000 1.00000 0.00000 % O shel 0.6370000 0.7636190 -8.332760 -2.1330000 1.00000 0.00000 % O shel 0.0488439 0.7956059 -9.100996 -2.1330000 1.00000 0.00000 % O shel 0.7009749 0.8275930 -9.869234 -2.1330000 1.00000 0.00000 % O shel 0.0569039 0.9302860 -8.332758 -2.1330000 1.00000 0.00000 % O shel 0.7090350 0.9622729 -9.100996 -2.1330000 1.00000 0.00000 % O shel 0.1208790 0.9942600 -9.869234 -2.1330000 1.00000 0.00000 % O shel 0.0805259 0.4539069 -12.90289 -2.1330000 1.00000 0.00000 % O shel 0.6686820 0.4219190 -12.13465 -2.1330000 1.00000 0.00000 % O shel 0.0165509 0.3899320 -11.36642 -2.1330000 1.00000 0.00000 % O shel 0.7875460 0.6609270 -9.869234 -2.1330000 1.00000 0.00000 % O shel 0.7235709 0.5969520 -8.332759 -2.1330000 1.00000 0.00000 % O shel 0.3757020 0.6289400 -9.100996 -2.1330000 1.00000 0.00000 % O shel 0.7177070 0.8443260 -2.265428 -2.1330000 1.00000 0.00000 % O shel 0.7816820 0.9083000 -3.801904 -2.1330000 1.00000 0.00000 % O shel 0.1295509 0.8763129 -3.033665 -2.1330000 1.00000 0.00000 % O shel 0.5966470 0.2232649 -11.36642 -2.1330000 1.00000 0.00000 % O shel 0.6606210 0.2872400 -12.90289 -2.1330000 1.00000 0.00000 % O shel 0.0084900 0.2552529 -12.13466 -2.1330000 1.00000 0.00000 % sfractional region 2 C core 0.0482329 0.0482320 -15.16832 1.34353899 1.00000 0.00000 O core 0.8899919 0.0163189 -14.40185 1.01848700 1.00000 0.00000 O core 0.3008869 0.0482320 -15.16832 1.01848700 1.00000 0.00000 O core 0.9538189 0.0801459 -15.93479 1.01848700 1.00000 0.00000 O core 0.3093129 0.1829859 -14.40185 1.01848700 1.00000 0.00000 C core 0.2148990 0.2148990 -15.16832 1.34353899 1.00000 0.00000 O core 0.9622449 0.2148990 -15.16832 1.01848700 1.00000 0.00000 O core 0.3731400 0.2468129 -15.93479 1.01848700 1.00000 0.00000 Ca core 0.0912129 0.0912120 -18.20199 2.00000000 1.00000 0.00000 Ca core 0.0508590 0.5508590 -21.23565 2.00000000 1.00000 0.00000 Ca core 0.2175259 0.7175259 -21.23565 2.00000000 1.00000 0.00000 C core 0.1745459 0.6745459 -18.20199 1.34353899 1.00000 0.00000 O core 0.3327869 0.7064590 -18.96845 1.01848700 1.00000 0.00000 O core 0.9218919 0.6745459 -18.20199 1.01848700 1.00000 0.00000 O core 0.2689590 0.6426320 -17.43552 1.01848700 1.00000 0.00000 O core 0.1882520 0.5619250 -23.50285 1.01848700 1.00000 0.00000 C core 0.0938390 0.5938390 -24.26932 1.34353899 1.00000 0.00000 O core 0.8411849 0.5938390 -24.26932 1.01848700 1.00000 0.00000 O core 0.2520800 0.6257520 -25.03578 1.01848700 1.00000 0.00000 Ca core 0.2982329 0.7982329 -15.16832 2.00000000 1.00000 0.00000 O core 0.1829719 0.8092989 -17.43552 1.01848700 1.00000 0.00000 C core 0.3412120 0.8412120 -18.20199 1.34353899 1.00000 0.00000 O core 0.5938669 0.8412120 -18.20199 1.01848700 1.00000 0.00000 O core 0.2467989 0.8731259 -18.96845 1.01848700 1.00000 0.00000 Ca core 0.4648990 0.9648990 -15.16832 2.00000000 1.00000 0.00000 Ca core 0.4245459 0.4245459 -18.20199 2.00000000 1.00000 0.00000 Ca core 0.5912129 0.5912120 -18.20199 2.00000000 1.00000 0.00000 Ca core 0.1771720 0.1771720 -24.26932 2.00000000 1.00000 0.00000 C core 0.0078790 0.5078790 -18.20199 1.34353899 1.00000 0.00000 O core 0.8496389 0.4759659 -17.43552 1.01848700 1.00000 0.00000 O core 0.9134659 0.5397929 -18.96845 1.01848700 1.00000 0.00000 O core 0.2605330 0.5078790 -18.20199 1.01848700 1.00000 0.00000 C core 0.3008590 0.3008590 -21.23565 1.34353899 1.00000 0.00000 O core 0.1426189 0.2689450 -20.46919 1.01848700 1.00000 0.00000 O core 0.5535130 0.3008590 -21.23565 1.01848700 1.00000 0.00000 O core 0.2064459 0.3327720 -22.00212 1.01848700 1.00000 0.00000 C core 0.5482329 0.5482329 -15.16832 1.34353899 1.00000 0.00000 O core 0.7064730 0.5801459 -15.93479 1.01848700 1.00000 0.00000 O core 0.2955790 0.5482329 -15.16832 1.01848700 1.00000 0.00000 O core 0.6426460 0.5163189 -14.40185 1.01848700 1.00000 0.00000 O core 0.5619390 0.4356120 -20.46918 1.01848700 1.00000 0.00000 C core 0.4675259 0.4675259 -21.23565 1.34353899 1.00000 0.00000 O core 0.2148719 0.4675259 -21.23565 1.01848700 1.00000 0.00000 O core 0.6257660 0.4994390 -22.00212 1.01848700 1.00000 0.00000 Ca core 0.3438390 0.3438390 -24.26932 2.00000000 1.00000 0.00000 Ca core 0.1315659 0.6315659 -15.16832 2.00000000 1.00000 0.00000 O core 0.5566589 0.6829859 -14.40185 1.01848700 1.00000 0.00000 C core 0.7148990 0.7148990 -15.16832 1.34353899 1.00000 0.00000 O core 0.9675530 0.7148990 -15.16832 1.01848700 1.00000 0.00000 O core 0.6204859 0.7468129 -15.93479 1.01848700 1.00000 0.00000 Ca core 0.0105059 0.0105050 -24.26932 2.00000000 1.00000 0.00000 C core 0.1341920 0.1341920 -21.23565 1.34353899 1.00000 0.00000 O core 0.2924330 0.1661059 -22.00212 1.01848700 1.00000 0.00000 O core 0.2286059 0.1022789 -20.46918 1.01848700 1.00000 0.00000 O core 0.8815380 0.1341920 -21.23565 1.01848700 1.00000 0.00000 Ca core 0.7982329 0.2982329 -15.16832 2.00000000 1.00000 0.00000 Ca core 0.9648990 0.4648990 -15.16832 2.00000000 1.00000 0.00000 Ca core 0.5508590 0.0508590 -21.23565 2.00000000 1.00000 0.00000 C core 0.3815659 0.3815659 -15.16832 1.34353899 1.00000 0.00000 O core 0.2233260 0.3496520 -14.40185 1.01848700 1.00000 0.00000 O core 0.2871530 0.4134790 -15.93479 1.01848700 1.00000 0.00000 O core 0.6342200 0.3815659 -15.16832 1.01848700 1.00000 0.00000 C core 0.6745459 0.1745459 -18.20199 1.34353899 1.00000 0.00000 O core 0.5163049 0.1426320 -17.43552 1.01848700 1.00000 0.00000 O core 0.9272000 0.1745459 -18.20199 1.01848700 1.00000 0.00000 O core 0.5801320 0.2064590 -18.96845 1.01848700 1.00000 0.00000 O core 0.9356259 0.3092989 -17.43552 1.01848700 1.00000 0.00000 C core 0.8412129 0.3412120 -18.20199 1.34353899 1.00000 0.00000 O core 0.5885590 0.3412120 -18.20199 1.01848700 1.00000 0.00000 O core 0.9994529 0.3731259 -18.96845 1.01848700 1.00000 0.00000 O core 0.4355980 0.0619250 -23.50285 1.01848700 1.00000 0.00000 C core 0.5938390 0.0938390 -24.26932 1.34353899 1.00000 0.00000 O core 0.8464930 0.0938390 -24.26932 1.01848700 1.00000 0.00000 O core 0.4994259 0.1257520 -25.03578 1.01848700 1.00000 0.00000 Ca core 0.7175259 0.2175259 -21.23565 2.00000000 1.00000 0.00000 Ca core 0.2578790 0.2578790 -18.20199 2.00000000 1.00000 0.00000 C core 0.5078790 0.0078790 -18.20199 1.34353899 1.00000 0.00000 O core 0.6661200 0.0397929 -18.96845 1.01848700 1.00000 0.00000 O core 0.6022929 0.9759650 -17.43552 1.01848700 1.00000 0.00000 O core 0.2552249 0.0078790 -18.20199 1.01848700 1.00000 0.00000 Ca core 0.6315659 0.1315659 -15.16832 2.00000000 1.00000 0.00000 C core 0.4271720 0.9271720 -24.26932 1.34353899 1.00000 0.00000 O core 0.5854129 0.9590859 -25.03578 1.01848700 1.00000 0.00000 O core 0.1745180 0.9271720 -24.26932 1.01848700 1.00000 0.00000 O core 0.5215859 0.8952589 -23.50285 1.01848700 1.00000 0.00000 Ca core 0.6771720 0.6771720 -24.26932 2.00000000 1.00000 0.00000 Ca core 0.8438390 0.8438390 -24.26932 2.00000000 1.00000 0.00000 C core 0.2605059 0.7605050 -24.26932 1.34353899 1.00000 0.00000 O core 0.1022649 0.7285920 -23.50285 1.01848700 1.00000 0.00000 O core 0.1660920 0.7924190 -25.03578 1.01848700 1.00000 0.00000 O core 0.5131600 0.7605050 -24.26932 1.01848700 1.00000 0.00000 C core 0.8008590 0.8008590 -21.23565 1.34353899 1.00000 0.00000 O core 0.9591000 0.8327720 -22.00212 1.01848700 1.00000 0.00000 O core 0.5482049 0.8008590 -21.23565 1.01848700 1.00000 0.00000 O core 0.8952729 0.7689450 -20.46918 1.01848700 1.00000 0.00000 Ca core 0.3841920 0.8841920 -21.23565 2.00000000 1.00000 0.00000 Ca core 0.9245459 0.9245459 -18.20199 2.00000000 1.00000 0.00000 O core 0.8092849 0.9356120 -20.46919 1.01848700 1.00000 0.00000 C core 0.9675259 0.9675259 -21.23565 1.34353899 1.00000 0.00000 O core 0.2201800 0.9675259 -21.23565 1.01848700 1.00000 0.00000 O core 0.8731120 0.9994390 -22.00212 1.01848700 1.00000 0.00000 C core 0.6341920 0.6341920 -21.23565 1.34353899 1.00000 0.00000 O core 0.4759519 0.6022789 -20.46918 1.01848700 1.00000 0.00000 O core 0.5397789 0.6661059 -22.00212 1.01848700 1.00000 0.00000 O core 0.8868460 0.6341920 -21.23565 1.01848700 1.00000 0.00000 C core 0.9271720 0.4271720 -24.26932 1.34353899 1.00000 0.00000 O core 0.7689319 0.3952589 -23.50285 1.01848700 1.00000 0.00000 O core 0.1798260 0.4271720 -24.26932 1.01848700 1.00000 0.00000 O core 0.8327589 0.4590859 -25.03578 1.01848700 1.00000 0.00000 Ca core 0.5105059 0.5105050 -24.26932 2.00000000 1.00000 0.00000 Ca core 0.7578790 0.7578790 -18.20199 2.00000000 1.00000 0.00000 C core 0.8815659 0.8815659 -15.16832 1.34353899 1.00000 0.00000 O core 0.0398060 0.9134790 -15.93479 1.01848700 1.00000 0.00000 O core 0.9759790 0.8496520 -14.40185 1.01848700 1.00000 0.00000 O core 0.6289119 0.8815659 -15.16832 1.01848700 1.00000 0.00000 C core 0.7605059 0.2605050 -24.26932 1.34353899 1.00000 0.00000 O core 0.9187460 0.2924190 -25.03578 1.01848700 1.00000 0.00000 O core 0.8549190 0.2285920 -23.50285 1.01848700 1.00000 0.00000 O core 0.5078519 0.2605050 -24.26932 1.01848700 1.00000 0.00000 Ca core 0.8841920 0.3841920 -21.23565 2.00000000 1.00000 0.00000 O shel 0.8896270 0.0162449 -14.40008 -2.1330000 1.00000 0.00000 O shel 0.3014700 0.0482320 -15.16832 -2.1330000 1.00000 0.00000 O shel 0.9536010 0.0802200 -15.93656 -2.1330000 1.00000 0.00000 O shel 0.3095309 0.1829120 -14.40008 -2.1330000 1.00000 0.00000 O shel 0.9616620 0.2148990 -15.16832 -2.1330000 1.00000 0.00000 O shel 0.3735049 0.2468860 -15.93656 -2.1330000 1.00000 0.00000 O shel 0.3331520 0.7065330 -18.97022 -2.1330000 1.00000 0.00000 O shel 0.9213079 0.6745459 -18.20199 -2.1330000 1.00000 0.00000 O shel 0.2691769 0.6425590 -17.43375 -2.1330000 1.00000 0.00000 O shel 0.1884700 0.5618520 -23.50108 -2.1330000 1.00000 0.00000 O shel 0.8406020 0.5938390 -24.26932 -2.1330000 1.00000 0.00000 O shel 0.2524449 0.6258260 -25.03756 -2.1330000 1.00000 0.00000 O shel 0.1826070 0.8092249 -17.43375 -2.1330000 1.00000 0.00000 O shel 0.5944500 0.8412120 -18.20199 -2.1330000 1.00000 0.00000 O shel 0.2465810 0.8732000 -18.97022 -2.1330000 1.00000 0.00000 O shel 0.8492730 0.4758920 -17.43375 -2.1330000 1.00000 0.00000 O shel 0.9132479 0.5398660 -18.97022 -2.1330000 1.00000 0.00000 O shel 0.2611170 0.5078790 -18.20199 -2.1330000 1.00000 0.00000 O shel 0.1422530 0.2688720 -20.46742 -2.1330000 1.00000 0.00000 O shel 0.5540970 0.3008590 -21.23565 -2.1330000 1.00000 0.00000 O shel 0.2062279 0.3328460 -22.00389 -2.1330000 1.00000 0.00000 O shel 0.7068390 0.5802200 -15.93656 -2.1330000 1.00000 0.00000 O shel 0.2949950 0.5482329 -15.16832 -2.1330000 1.00000 0.00000 O shel 0.6428639 0.5162449 -14.40008 -2.1330000 1.00000 0.00000 O shel 0.5621569 0.4355379 -20.46741 -2.1330000 1.00000 0.00000 O shel 0.2142879 0.4675259 -21.23565 -2.1330000 1.00000 0.00000 O shel 0.6261320 0.4995130 -22.00389 -2.1330000 1.00000 0.00000 O shel 0.5562930 0.6829120 -14.40008 -2.1330000 1.00000 0.00000 O shel 0.9681370 0.7148990 -15.16832 -2.1330000 1.00000 0.00000 O shel 0.6202679 0.7468860 -15.93656 -2.1330000 1.00000 0.00000 O shel 0.2927979 0.1661789 -22.00389 -2.1330000 1.00000 0.00000 O shel 0.2288239 0.1022049 -20.46741 -2.1330000 1.00000 0.00000 O shel 0.8809550 0.1341920 -21.23565 -2.1330000 1.00000 0.00000 O shel 0.2229600 0.3495790 -14.40008 -2.1330000 1.00000 0.00000 O shel 0.2869349 0.4135530 -15.93656 -2.1330000 1.00000 0.00000 O shel 0.6348040 0.3815659 -15.16832 -2.1330000 1.00000 0.00000 O shel 0.5159400 0.1425579 -17.43375 -2.1330000 1.00000 0.00000 O shel 0.9277829 0.1745459 -18.20199 -2.1330000 1.00000 0.00000 O shel 0.5799140 0.2065330 -18.97022 -2.1330000 1.00000 0.00000 O shel 0.9358439 0.3092249 -17.43375 -2.1330000 1.00000 0.00000 O shel 0.5879750 0.3412120 -18.20199 -2.1330000 1.00000 0.00000 O shel 0.9998190 0.3732000 -18.97022 -2.1330000 1.00000 0.00000 O shel 0.4352330 0.0618510 -23.50108 -2.1330000 1.00000 0.00000 O shel 0.8470770 0.0938390 -24.26932 -2.1330000 1.00000 0.00000 O shel 0.4992070 0.1258260 -25.03756 -2.1330000 1.00000 0.00000 O shel 0.6664849 0.0398660 -18.97022 -2.1330000 1.00000 0.00000 O shel 0.6025109 0.9758920 -17.43375 -2.1330000 1.00000 0.00000 O shel 0.2546420 0.0078790 -18.20199 -2.1330000 1.00000 0.00000 O shel 0.5857779 0.9591589 -25.03756 -2.1330000 1.00000 0.00000 O shel 0.1739350 0.9271720 -24.26932 -2.1330000 1.00000 0.00000 O shel 0.5218039 0.8951849 -23.50108 -2.1330000 1.00000 0.00000 O shel 0.1019000 0.7285179 -23.50108 -2.1330000 1.00000 0.00000 O shel 0.1658740 0.7924930 -25.03756 -2.1330000 1.00000 0.00000 O shel 0.5137429 0.7605050 -24.26932 -2.1330000 1.00000 0.00000 O shel 0.9594649 0.8328460 -22.00389 -2.1330000 1.00000 0.00000 O shel 0.5476220 0.8008590 -21.23565 -2.1330000 1.00000 0.00000 O shel 0.8954909 0.7688720 -20.46741 -2.1330000 1.00000 0.00000 O shel 0.8089200 0.9355379 -20.46742 -2.1330000 1.00000 0.00000 O shel 0.2207629 0.9675259 -21.23565 -2.1330000 1.00000 0.00000 O shel 0.8728940 0.9995130 -22.00389 -2.1330000 1.00000 0.00000 O shel 0.4755870 0.6022049 -20.46741 -2.1330000 1.00000 0.00000 O shel 0.5395609 0.6661800 -22.00389 -2.1330000 1.00000 0.00000 O shel 0.8874300 0.6341920 -21.23565 -2.1330000 1.00000 0.00000 O shel 0.7685660 0.3951849 -23.50108 -2.1330000 1.00000 0.00000 O shel 0.1804100 0.4271720 -24.26932 -2.1330000 1.00000 0.00000 O shel 0.8325410 0.4591589 -25.03756 -2.1330000 1.00000 0.00000 O shel 0.0401720 0.9135530 -15.93656 -2.1330000 1.00000 0.00000 O shel 0.9761980 0.8495790 -14.40008 -2.1330000 1.00000 0.00000 O shel 0.6283290 0.8815659 -15.16832 -2.1330000 1.00000 0.00000 O shel 0.9191120 0.2924930 -25.03756 -2.1330000 1.00000 0.00000 O shel 0.8551369 0.2285179 -23.50108 -2.1330000 1.00000 0.00000 O shel 0.5072679 0.2605050 -24.26932 -2.1330000 1.00000 0.00000 sbulkenergy -1023.04303000 species 11 Cd core 2.000000 Mn core 2.000000 Mg core 2.000000 Zn core 2.000000 Ni core 2.000000 Co core 2.000000 Fe core 2.000000 Ca core 2.000000 C core 1.343539 O core 1.018487 O shel -2.133000 buck intra O core O core 4030.30000 0.245497 0.0000000 0.000 2.500 buck Ca core O shel 2154.06000 0.289118 0.0000000 0.000 10.000 buck inter O shel O shel 64727.5050 0.198914 21.84357 0.000 15.000 buck Cd core O shel 4329.81000 0.256300 0.0000000 0.000 10.000 buck Mg core O shel 1039.58460 0.289329 0.0000000 0.000 10.000 buck Co core O shel 1095.59850 0.286300 0.0000000 0.000 10.000 buck Fe core O shel 2152.98610 0.265068 0.0000000 0.000 10.000 buck Mn core O shel 2000.93570 0.272681 0.0000000 0.000 10.000 buck Ni core O shel 1634.46190 0.266612 0.0000000 0.000 10.000 buck Zn core O shel 1029.39000 0.289100 0.0000000 0.000 10.000 morse intra bond C core O core 5.0000000 2.5228 1.19820 0.0000 spring O 52.739130 10000.000 three bond intra C core O core O core 1.7765 120.00 outofplane bond intra C cor O cor O cor O cor 8.8279 element covalent 25 0.0000 covalent 26 0.0000 covalent 27 0.0000 covalent 28 0.0000 covalent 30 0.0000 covalent 48 0.0000 end dump calcite_-114_0.0000.res gdis-0.90/models/so4_iso.gin0000644000175000017500000000127107717054777014415 0ustar seanseanopti conp molmec switch_min rfo gnorm 0.100000 name so4_iso cartesian S core 0.00044 -0.00002 0.00000 O core 1.46314 -0.00002 0.00000 O core -0.48786 -1.37892 0.00000 O core -0.48786 0.68948 1.19420 O core -0.48786 0.68948 -1.19420 species 2 S core 1.616000 O core -0.904000 element cova O 0.60 end buck intra O core O core 2607.0400 0.254260 0.0000 1.000 2.500 buck inter O core O core 103895.56 0.200000 25.980 1.000 15.000 morse bond S O 5.01 1.03826 1.23661 0 0 0 three bond S O O 15.0 109.47 0 0 print 1 gdis-0.90/models/calcite.gin0000644000175000017500000000375507717054766014451 0ustar seanseansingle conp mole title CaCO3 modified fgc pote. end name calcite cell 4.980182 4.980182 17.071573 89.999999 89.999999 119.999999 fractional Ca core 0.000000 0.000000 0.000000 2.00000000 1.00000 0.00000 C core 0.000000 0.000000 0.250000 1.34353899 1.00000 0.00000 O core 0.252654 0.000000 0.250000 1.01848700 1.00000 0.00000 O shel 0.253238 0.000000 0.250000 -2.1330000 1.00000 0.00000 space R -3 c elements covalent 25 0.0000 covalent 26 0.0000 covalent 27 0.0000 covalent 28 0.0000 covalent 30 0.0000 covalent 48 0.0000 end species Cd core 2.000000 Mn core 2.000000 Mg core 2.000000 Zn core 2.000000 Ni core 2.000000 Co core 2.000000 Fe core 2.000000 Ca core 2.000000 C core 1.343539 O core 1.018487 O shel -2.133000 end buck intra O core O core 4030.30000 0.245497 0.0000000 0.00 2.50 buck Ca core O shel 2154.06000 0.289118 0.0000000 0.00 10.00 buck inter O shel O shel 64727.5050 0.198914 21.84357 0.00 15.00 buck Cd core O shel 4329.81000 0.256300 0.0000000 0.00 10.00 buck Mg core O shel 1039.58460 0.289329 0.0000000 0.00 10.00 buck Co core O shel 1095.59850 0.286300 0.0000000 0.00 10.00 buck Fe core O shel 2152.98610 0.265068 0.0000000 0.00 10.00 buck Mn core O shel 2000.93570 0.272681 0.0000000 0.00 10.00 buck Ni core O shel 1634.46190 0.266612 0.0000000 0.00 10.00 buck Zn core O shel 1029.39000 0.289100 0.0000000 0.00 10.00 morse intra bond C core O core 5.0000000 2.5228 1.19820 0.0000 spring O 52.739130 10000.000 three bond intra C core O core O core 1.7765 120.00 outofplane bond intra C cor O cor O cor O cor 8.8279 gdis-0.90/models/carbonate.gin0000644000175000017500000000033607717054772014770 0ustar seanseansingle conp mole maxcyc 50 library gdis.lib cartesian C core 0.476667 -0.513340 0.000000 O core 0.473912 0.761875 0.000000 O core -0.626313 -1.153327 0.000000 O core 1.582400 -1.148554 0.000000 print 1 gdis-0.90/models/zircon_BFDH.gmf0000644000175000017500000000074107717054777015122 0ustar seansean title: GDIS morphology file name: zircon_morph space: I 41/a m d cell: 6.624118 6.624118 5.969752 90.000003 90.000003 90.000003 miller: -1 0 -1 0.0000 1 1 0.0000 0.0000 0.0000 0.0000 -1 miller: -2 0 0 0.0000 1 1 0.0000 0.0000 0.0000 0.0000 -1 miller: -2 -1 -1 0.0000 1 1 0.0000 0.0000 0.0000 0.0000 -1 miller: -2 -2 0 0.0000 1 1 0.0000 0.0000 0.0000 0.0000 -1 gdis-0.90/models/gibb_opt.res0000644000175000017500000000550207717054773014634 0ustar seansean# # Keywords: # opti conp comp mole fix bond phon # # Options: # title gibbsite fit end name gibbsite cell 8.809466 4.993449 9.787438 90.000000 95.950869 90.000000 fractional 20 Al core 0.1639061 0.5456730 0.9957902 3.00000000 1.00000 0.00000 Al core 0.3351046 0.0419027 0.9963965 3.00000000 1.00000 0.00000 O1 core 0.1741858 0.2325651 0.8759880 0.94800000 1.00000 0.00000 O1 core 0.6464169 0.6109235 0.9088818 0.94800000 1.00000 0.00000 O1 core 0.4958267 0.0940212 0.8732265 0.94800000 1.00000 0.00000 O1 core 0.9687389 0.6893067 0.9072551 0.94800000 1.00000 0.00000 O1 core 0.2531569 0.7710860 0.8636286 0.94800000 1.00000 0.00000 O1 core 0.7853145 0.1572288 0.8731498 0.94800000 1.00000 0.00000 H1 core 0.1056867 0.1732211 0.7946849 0.41800000 1.00000 0.00000 H1 core 0.5558530 0.4971753 0.8792831 0.41800000 1.00000 0.00000 H1 core 0.5027668 0.1127932 0.7726645 0.41800000 1.00000 0.00000 H1 core 0.9480728 0.8815139 0.8840560 0.41800000 1.00000 0.00000 H1 core 0.2316468 0.8001121 0.7630071 0.41800000 1.00000 0.00000 H1 core 0.7878929 0.1493777 0.7715707 0.41800000 1.00000 0.00000 O1 shel 0.1842034 0.2426898 0.8885029 -2.3659999 1.00000 0.00000 O1 shel 0.6600548 0.6269230 0.9168596 -2.3659999 1.00000 0.00000 O1 shel 0.4952988 0.0871334 0.8893009 -2.3659999 1.00000 0.00000 O1 shel 0.9722856 0.6612122 0.9143528 -2.3659999 1.00000 0.00000 O1 shel 0.2541661 0.7696345 0.8805353 -2.3659999 1.00000 0.00000 O1 shel 0.7838090 0.1609324 0.8889891 -2.3659999 1.00000 0.00000 space P 1 21/N 1 totalenergy -641.2935331313 eV observables frequency 168 3617.0000 end element cova Al 0.1 end species 4 Al core 3.000000 O1 core 0.948000 O1 shel -2.366000 H1 core 0.418000 buck inter Al core O1 shel 1342.8600 0.294400 .00000 0.000 15.000 buck inter H1 core Al core 560.44000 0.290600 .00000 0.000 15.000 buck inter O1 shel O1 shel 9999.9700 0.149000 17.000 0.000 15.000 buck inter H1 core O1 shel 235.00000 0.250000 .00000 0.000 15.000 morse intra bond H1 core O1 core 5.4246000 2.2682 0.95000 0.0000 spring O1 60.100000 observables weight 1 1 0.100 end print 1 switch_min rfo gnorm 1.000000 dump opt gdis-0.90/models/iso_ribbon.gin0000644000175000017500000006113107717054777015164 0ustar seanseansingle conp mole # Created by GDIS version 0.80.0 # name iso_ribbon cartesian H1242a core -17.447875 5.535062 6.024788 H1242c core -16.010104 4.955449 6.086269 H1242b core -16.944088 4.845717 7.319975 C1242 core -16.929522 4.777054 6.357606 H1243b core -16.470236 3.506442 4.059567 H2144'b core -12.355347 -10.588399 18.964741 H2144c core -11.795066 -10.691049 18.837835 H2442'b core -20.477528 -10.182034 8.758536 H2442'a core -21.819701 -10.122884 9.533925 H2442'c core -20.491025 -10.352763 10.300505 H2442c core -20.583916 -9.620524 11.445504 H2442b core -20.611392 -10.469064 10.147438 H2442a core -21.923243 -9.850633 10.697546 C2442' core -20.818036 -9.790173 9.462794 C2442 core -20.958428 -9.628195 10.504121 H2443c core -20.821403 -9.187242 7.727327 H2144'c core -13.843328 -10.346757 18.599348 H101'c core -11.868040 -5.266928 18.516097 H101'b core -11.729811 -4.421568 17.222908 H101'a core -10.479068 -5.093875 17.847502 H101c core -11.323742 -4.349039 17.247183 H101b core -10.978663 -5.146562 18.532393 H101a core -12.331682 -5.384380 17.811465 H102'c core -11.319017 -8.842161 17.064664 H102'b core -11.527852 -8.211959 18.466752 H102'a core -10.155556 -8.083801 17.755622 H102c core -10.701175 -8.099042 18.490682 H102b core -10.762614 -8.850328 17.134928 H102a core -12.039462 -8.183964 17.710803 C102 core -11.173264 -8.010835 17.578260 C101 core -11.318419 -5.257543 17.579503 S10' core -11.350974 -6.475239 16.636525 S10 core -10.607778 -6.470636 16.707435 O10 core -11.270718 -6.593486 15.374086 O103 core -10.347058 -4.215045 14.110995 H1243c core -17.707137 2.570524 4.075498 H1243a core -17.897969 4.106619 3.973421 H1244c core -18.915036 3.359142 7.274466 H1244b core -19.217179 2.511421 6.010734 H1244a core -19.404730 4.050974 5.974893 C1244 core -18.892660 3.319397 6.371573 C1243 core -17.376886 3.396969 4.355796 C1241 core -17.440726 3.456545 5.876710 H153 core -8.209239 -10.779120 8.988807 H1542c core -7.292373 -10.706340 5.601688 H1542b core -8.603451 -11.000993 4.825893 H1542a core -7.537628 -12.115020 4.999803 H1543c core -10.243561 -12.491491 5.698392 H1543b core -9.982854 -13.165046 7.071433 H1543a core -9.135614 -13.568856 5.835637 H1544c core -8.136991 -12.935101 8.242431 H1544b core -6.953221 -12.012343 7.850774 H1544a core -7.251000 -13.287482 7.018814 C1544 core -7.666104 -12.518771 7.407478 C1543 core -9.616848 -12.823120 6.304845 C1542 core -8.000215 -11.402636 5.489402 C1541 core -8.609083 -11.842710 6.624222 C154 core -9.268593 -10.581833 7.316297 H155 core -10.660447 -10.329840 5.927326 H2142c core -15.001414 -11.636582 17.777391 H2142b core -14.170734 -10.621927 18.606416 H2142a core -14.338100 -12.080282 19.107854 H2143'b core -12.235376 -13.613646 17.061805 H2143c core -12.018299 -13.586952 16.873822 H2143b core -13.536846 -13.667244 16.567696 H2143a core -13.016057 -13.979122 17.995503 H2144b core -10.968627 -11.768284 18.087165 H2144a core -11.803078 -12.160604 19.335059 H2142'c core -14.325820 -13.042645 16.512189 H2142'b core -15.050553 -11.912615 17.290314 H2142'a core -14.573185 -13.185792 18.037270 H2143'c core -11.281575 -12.719869 17.896832 H2143'a core -12.427355 -13.496697 18.596529 H2144'a core -13.456854 -11.512062 19.547520 C2144' core -13.172452 -11.027467 18.738100 C2143' core -12.131225 -12.913725 17.813895 C2142' core -14.362406 -12.571553 17.294082 C2144 core -11.800136 -11.566184 18.559628 C2143 core -12.906663 -13.368998 17.269220 C2142 core -14.252833 -11.582953 18.304672 C2141 core -13.030036 -11.906646 17.585575 H213 core -10.959322 -11.914094 15.929084 C214 core -12.752866 -11.122685 16.309568 C213 core -11.617156 -11.233778 15.677901 H21a core -9.741714 -9.853667 13.463167 H21b core -9.415272 -11.082299 14.352352 O221 core -11.552659 -10.052553 11.286994 H2243c core -10.083033 -15.560477 13.817596 O231 core -13.648382 -9.363965 10.030797 H233 core -17.183403 -11.636252 11.182951 C233 core -16.317717 -11.626100 10.838581 C232 core -15.571414 -10.500175 10.740285 H235 core -14.156645 -13.682539 9.380298 C234 core -15.849348 -12.748418 10.225598 H2242'c core -8.926812 -15.479966 10.020682 H2242c core -8.046723 -15.180015 10.839202 H2242b core -9.245647 -15.546412 9.925318 H2242a core -8.507236 -16.656461 10.718442 H2243'c core -8.567263 -15.165468 13.478961 H2243b core -8.572077 -15.403405 13.503943 H2243a core -9.251214 -16.791809 13.371899 H2244'c core -11.568672 -16.407812 12.141425 H2244c core -11.327783 -16.192739 10.707827 H2244b core -11.663748 -16.137138 12.221160 H2244a core -10.817984 -17.308833 11.657073 H2242'b core -10.322450 -16.156454 10.060781 H2242'a core -9.071315 -16.929061 10.555222 H2243'b core -7.771002 -15.009431 12.156535 H2243'a core -8.080934 -16.423964 12.713007 H2244'b core -10.876615 -16.041797 13.480501 H2244'a core -10.431314 -17.304618 12.697216 C235 core -14.479383 -12.815122 9.733852 C231 core -14.355391 -10.576425 10.159136 H22b core -12.145593 -12.498938 8.573273 H22a core -11.922272 -11.006781 8.934200 C236 core -13.697725 -11.702172 9.783854 H223 core -11.101381 -14.137323 9.859603 C2244' core -10.666119 -16.272198 12.814746 C2243' core -8.319672 -15.437217 12.412221 C2242' core -9.575727 -16.101809 10.532255 C2244 core -11.006416 -16.314772 11.574517 C2243 core -9.267754 -15.835712 13.181763 C2242 core -8.748490 -15.737435 10.819553 C2241 core -9.718040 -15.498471 11.834073 C223 core -10.900830 -13.529254 10.626636 C22 core -12.216020 -11.869357 9.355053 C222 core -11.374177 -12.263755 10.483988 H225 core -9.389600 -13.171911 13.498627 C224 core -10.184529 -13.967377 11.674805 C225 core -9.897810 -12.963014 12.670216 C221 core -11.113589 -11.259631 11.470111 C226 core -10.372045 -11.633164 12.550696 C21 core -10.128477 -10.728288 13.744104 H243 core -19.309567 -6.596989 8.392881 H2443'c core -21.076557 -7.886573 7.878194 H2443b core -20.832664 -7.635938 7.728635 H2443a core -22.121128 -8.421415 8.088675 H2444'c core -21.151741 -7.095091 11.275898 H2444c core -21.323801 -6.437698 9.960380 H2444b core -21.049995 -7.122386 11.324863 H2444a core -22.361822 -7.425733 10.554274 H2443'b core -21.293344 -6.734604 8.894242 H2443'a core -22.347207 -7.865890 8.768362 H2444'b core -20.779890 -8.506363 11.801856 H2444'a core -22.186221 -8.248525 11.200294 C2444' core -21.198137 -8.024208 11.077613 C2443' core -21.346909 -7.693250 8.709050 C2444 core -21.354493 -7.236350 10.348782 C2443 core -21.111545 -8.530961 8.177131 C2441 core -20.645445 -8.374053 9.693614 H245 core -18.633749 -9.541297 11.127798 H253 core -18.599037 -0.856789 9.985482 H2542c core -21.352043 -3.729017 8.057597 H2542b core -20.842858 -3.028548 6.770638 H2542a core -22.154139 -2.550020 7.447018 H2543c core -20.682528 -0.826958 10.105768 H2543b core -21.237264 -2.267251 10.263780 H2543a core -22.045922 -1.207111 9.471021 H2544c core -19.938583 -0.865890 6.744969 H2544b core -19.869716 0.017039 8.018818 H2544a core -21.242597 -0.308465 7.373646 C2544 core -20.414999 -0.717751 7.604255 C2543 core -21.156480 -1.556044 9.624956 C2542 core -21.306367 -2.892472 7.656957 H255 core -19.137893 -4.145703 7.614164 C255 core -18.605231 -3.619671 8.250496 C2541 core -20.448765 -1.978296 8.460400 C254 core -19.055089 -2.457728 8.750015 H2644c core -19.945616 -1.181592 13.797529 H2644b core -19.407824 0.272792 13.850779 H2644a core -20.361877 -0.242753 14.960259 C2644 core -19.675164 -0.495148 14.372282 H2643a core -19.696648 -1.817862 16.664880 H2642c core -17.686593 0.946640 15.562861 H2642b core -17.275521 -0.056833 16.672261 H2642a core -18.717285 0.514654 16.638656 H2643c core -18.247645 -2.359928 16.775111 H2643b core -19.189194 -2.885102 15.659888 C2643 core -18.918589 -2.039287 16.139088 C2642 core -17.999694 0.201316 16.100678 C2641 core -18.414174 -0.946138 15.162894 H263 core -16.158875 -2.191387 15.982405 C264 core -17.235676 -1.383849 14.343245 H2742c core -14.721952 -7.278798 19.495247 H2742b core -15.910241 -7.997274 18.803610 H2742a core -16.113884 -7.310309 20.179580 H2743c core -16.075978 -3.955091 19.121821 H2743b core -14.835152 -4.679245 19.707884 H2743a core -16.226417 -4.866277 20.368455 H2744c core -17.722806 -6.727144 17.732215 H2744b core -17.772625 -5.179152 17.821591 H2744a core -18.051306 -6.038149 19.082804 H2742'c core -16.267858 -7.953877 18.709306 H2742'b core -17.518701 -7.232460 18.141937 H2742'a core -17.234460 -7.208752 19.666806 H2743'c core -14.621840 -4.957583 19.762268 H2743'b core -14.240151 -6.441133 19.516910 H2743'a core -15.326498 -6.082987 20.565468 H2744'c core -17.609287 -4.664963 18.246129 H2744'b core -16.350871 -3.909638 18.748392 H2744'a core -17.238237 -4.692011 19.752097 C263 core -16.090535 -2.030713 14.970284 H26b core -13.474291 -2.647406 15.731112 H26a core -13.156206 -3.289091 14.355043 C262 core -15.018302 -2.429418 14.320197 C2744' core -16.934304 -4.757269 18.823637 C2743' core -14.960525 -5.757672 19.660479 C2742' core -16.613160 -7.237985 18.878496 C2744 core -17.475002 -6.038388 18.349475 C2743 core -15.798502 -4.745123 19.528709 C2742 core -15.507293 -7.244779 19.352108 H275 core -15.040285 -3.796543 17.242917 C275 core -14.879151 -4.604952 16.754797 C2741 core -16.009192 -5.943802 18.620159 C26 core -13.891914 -3.145193 15.029160 C276 core -14.269277 -4.526938 15.604226 H273 core -15.582513 -7.762277 16.825177 C274 core -15.328631 -5.830480 17.282389 C273 core -15.182986 -6.892615 16.533964 C271 core -14.009976 -5.611737 14.758230 H215 core -14.501317 -9.975879 16.483188 H27b core -15.296062 -8.567044 14.340399 H27a core -14.197639 -7.849913 13.512054 C272 core -14.547505 -6.910243 15.316304 C27 core -14.411771 -8.146698 14.423748 C215 core -13.645034 -10.101048 15.953396 C216 core -13.344872 -9.226064 14.876155 C212 core -11.317739 -10.422125 14.592723 C211 core -12.194886 -9.326275 14.221915 H202'c core -9.501775 -0.051472 14.312351 H202b core -9.408406 -0.209365 14.277534 H301'c core -13.990609 -0.006798 14.659207 H301'b core -14.248760 1.461268 15.089190 H301'a core -12.803388 0.982734 14.792986 H301c core -13.475371 1.516049 15.220991 H301b core -13.718139 0.016822 14.905161 H301a core -14.582569 1.104867 14.214912 C301 core -13.732546 1.008896 14.314993 H401'c core -18.527196 -5.066465 14.782695 H401'b core -17.003031 -5.164878 15.054277 H401'a core -17.739382 -6.325788 14.335572 H401c core -17.049763 -5.802985 14.997419 H401b core -18.568228 -5.586305 14.765953 H401a core -17.566030 -4.442156 14.460450 C401 core -17.679314 -5.387536 14.345256 H402'b core -19.372869 -4.312485 12.159334 H402c core -19.526920 -4.953770 12.232681 H602'c core -6.821422 -9.367940 15.574066 H602'b core -8.368028 -9.490160 15.571606 H602'a core -7.686778 -8.279885 16.262902 H602c core -8.465802 -9.147170 15.915035 H602b core -6.975021 -8.836818 16.210182 H602a core -7.375746 -9.520069 14.876051 C602 core -7.702618 -8.820605 15.641212 S60 core -7.900564 -7.149043 14.737569 H601c core -5.627091 -6.599055 14.509115 H1342c core -14.923439 0.624391 1.645090 H1342b core -15.957470 -0.503721 1.390485 H1342a core -15.146820 0.087033 0.207128 H1343c core -11.934023 -1.142926 1.060886 H1343b core -12.553554 0.250517 1.345935 H1343a core -12.724678 -0.403358 -0.050172 H1344c core -15.430160 -2.548289 0.867027 H1344b core -14.012238 -3.168333 0.757901 H1344a core -14.516874 -2.189183 -0.334505 H133 core -12.064018 -2.354816 2.790404 C1344 core -14.466807 -2.373522 0.663543 C1343 core -12.727237 -0.538689 0.930893 C1342 core -15.050853 -0.077223 1.137488 H1442'c core -10.833812 -5.437734 1.037637 H1442c core -9.978362 -5.061723 1.367347 H1442a core -9.731711 -6.143520 0.283339 H1443'c core -10.459998 -8.889134 2.122574 H1443c core -11.601424 -7.808353 1.474457 H1443b core -10.619789 -8.760469 2.207008 H1443a core -10.308446 -8.286889 0.762699 H1444'c core -8.172031 -6.474341 2.848016 H1444c core -8.446895 -7.888493 2.870425 H1444b core -8.117124 -6.424573 2.477426 H1442'b core -11.681572 -6.736746 1.026623 H1442'a core -10.400577 -6.639119 0.157159 H1442b core -11.162196 -5.911825 0.836466 H1443'b core -9.207208 -8.570639 2.979883 H1443'a core -9.099879 -8.604875 1.432611 H1444'b core -8.794163 -5.305160 2.040331 H1444'a core -8.192574 -6.527357 1.297792 C1341 core -13.978664 -1.219670 1.472085 C133 core -12.859958 -2.189092 3.414556 C132 core -12.846275 -2.605494 4.744573 O131 core -13.931442 -3.054574 6.808209 H135 core -15.828391 -0.846708 3.435911 C134 core -13.972677 -1.587595 2.894652 H23b core -15.335818 -8.690320 11.736760 H23a core -16.571528 -9.454688 12.280671 H13b core -11.436636 -2.957638 6.245130 H13a core -10.760585 -2.747319 4.864875 C1444' core -8.544275 -6.000237 2.008334 C1443' core -9.563834 -8.266543 2.239820 C1442' core -10.777004 -6.536060 1.019249 C1444 core -8.428613 -7.156318 2.605637 C1443 core -10.564662 -7.982238 1.620364 C1442 core -9.919246 -5.755223 1.143202 H145 core -10.567479 -4.398715 3.242668 C145 core -10.877384 -5.072013 3.940724 C1441 core -9.892363 -6.841831 2.174137 C13 core -11.548855 -3.181843 5.253531 C245 core -18.299793 -8.739231 10.487705 C23 core -16.095728 -9.219261 11.403043 C135 core -15.023108 -1.368749 3.763736 C131 core -13.905920 -2.524010 5.535124 H1642c core -3.517699 -7.113207 11.577215 H1642b core -3.429482 -5.703984 10.934686 H1642a core -2.413354 -6.804971 10.532131 H1643c core -4.511250 -8.599070 8.580667 H1643b core -4.167284 -8.989676 10.041970 H1643a core -3.046470 -8.508268 9.083398 H1644c core -3.961353 -5.150956 8.854844 H1644b core -4.459511 -6.201468 7.827894 H1644a core -2.967405 -6.178157 8.251903 C1644 core -3.885710 -6.033364 8.557865 C1643 core -3.970603 -8.307565 9.273104 C1642 core -3.275360 -6.544625 10.869463 H12b core -17.028685 -1.550414 5.379031 H12a core -16.299633 -2.155569 6.607357 C136 core -14.993653 -1.824310 5.030074 H123 core -17.336478 0.880268 5.204608 C246 core -16.975205 -8.428033 10.556767 O241 core -15.120447 -7.018049 9.843366 C244 core -19.168707 -8.093329 9.675662 C146 core -11.437196 -4.695382 5.124882 O141 core -12.240275 -5.188829 7.224263 H143 core -11.065302 -8.371283 4.375794 C144 core -10.648872 -6.413570 3.560354 C143 core -11.066617 -7.367725 4.535325 C141 core -11.833879 -5.577735 6.030574 C243 core -18.680490 -7.077945 8.953514 C241 core -16.463281 -7.392904 9.770403 C123 core -16.694007 0.939200 5.969385 C12 core -16.184370 -1.459588 5.870875 H1142c core -11.361601 5.002407 6.915340 H1142b core -10.517693 4.240332 5.860008 H1142a core -10.025337 5.605423 6.408047 H1143'b core -8.608415 3.298996 6.332453 H1143c core -8.333992 3.380868 6.438876 H1143b core -7.850139 3.374291 7.912850 H1143a core -7.898261 4.705887 7.117913 H1144c core -9.396363 4.433629 9.642441 H1144b core -10.681747 5.132377 9.126849 H1144a core -9.287719 5.712521 8.771200 H1142'c core -10.821324 5.347216 8.844881 H1142'b core -11.381851 5.194782 7.406281 H1142'a core -10.116175 6.055986 7.658480 H1143'c core -9.885811 3.972925 5.766459 H1143'a core -8.694224 4.845279 6.241721 H1144'c core -8.015182 3.407039 8.486581 H1144'b core -8.876183 4.156473 9.537064 H1144'a core -8.085889 4.956693 8.468418 C1641 core -4.129003 -6.909009 9.758666 H1744'b core -4.059619 -0.917131 10.374398 H1742c core -4.238806 -0.699517 10.520340 H1742b core -4.831437 0.686833 10.154931 H1742a core -3.429670 0.279749 9.629592 H1744'c core -3.781454 -2.039862 9.340388 H1743c core -4.411603 -2.119630 7.410252 H1743b core -3.954879 -2.370918 8.871323 H1743a core -3.174670 -1.373340 7.975750 H1744c core -5.613930 1.060375 7.897313 H1744b core -5.352844 -0.031612 6.826440 H1744a core -4.162766 0.745945 7.447986 H1742'c core -5.180357 1.055862 9.726620 H1742'b core -5.657547 1.205838 8.257913 H1742'a core -4.141609 1.233951 8.587824 H1743'c core -5.447564 -0.625848 6.596019 H1743'b core -4.676476 -1.914307 6.985482 H1743'a core -3.909373 -0.579587 6.793597 H1744'a core -3.052006 -0.675689 9.219741 C1744' core -3.900029 -1.022260 9.443514 C1743' core -4.653230 -1.031588 7.177590 C1742' core -5.004879 0.912858 8.665435 C1744 core -4.993458 0.266794 7.475796 C1743 core -4.018778 -1.756199 8.220525 C1742 core -4.396166 0.037648 9.756537 H163 core -5.347123 -4.825410 10.785839 C164 core -5.663957 -6.785616 10.127668 C1144' core -8.455086 4.059961 8.587726 C1143' core -9.208252 4.070086 6.343836 C1142' core -10.492466 5.284228 7.970475 C1144 core -9.705782 4.868138 8.935514 C1143 core -8.307855 3.820814 7.194894 C1142 core -10.491195 4.844191 6.637678 C122 core -15.993309 -0.077878 6.545412 O121 core -14.521629 -0.933011 8.097049 H125 core -15.568597 3.387731 7.859167 C124 core -16.516064 2.260016 6.453295 H165 core -6.481367 -8.561512 9.737569 H24b core -17.140016 -5.567078 7.075376 H24a core -15.830642 -5.420428 7.894305 C242 core -17.270443 -6.646789 8.922380 H14b core -12.672729 -8.717440 6.260595 H14a core -12.632058 -7.693312 7.425168 C142 core -11.637072 -6.990203 5.724375 H15b core -8.525162 -9.337625 10.960854 H15a core -9.709275 -8.335800 10.997086 C15 core -8.934312 -8.630314 10.478176 C153 core -8.902425 -10.191722 8.529027 C155 core -10.344353 -9.954896 6.770789 C14 core -12.069789 -8.111324 6.723787 H501'c core -7.321096 -6.751006 5.772715 H501'b core -8.761832 -7.132290 6.203374 H501'a core -7.655444 -6.947237 7.274867 H501c core -8.529423 -7.315586 6.824237 H501b core -7.122813 -6.986572 6.259037 H501a core -8.382706 -6.334657 5.631261 H502'c core -7.309668 -3.276089 6.917590 H502'b core -6.680217 -4.314139 5.951685 H502c core -6.325695 -4.475229 6.465524 H502b core -7.120026 -3.434714 7.298022 C24 core -16.819667 -5.459313 8.019090 H402'c core -18.310516 -4.587181 11.062516 H402'a core -18.920420 -5.766960 11.864877 H402b core -18.606499 -5.101037 10.992593 H402a core -18.356942 -3.959167 12.012738 C165 core -6.680831 -7.683228 10.098226 H601'c core -6.401552 -6.169315 13.098879 H601'b core -5.499123 -7.177230 13.858212 H601b core -6.472526 -5.891581 13.417349 H601a core -6.083613 -7.384191 13.251267 C125 core -15.639200 2.448591 7.512998 C121 core -15.146464 0.132299 7.595946 C1141 core -9.708301 4.078152 7.700393 C163 core -6.019768 -5.512319 10.589237 C1741 core -4.914001 -0.634678 8.588682 C253 core -18.250179 -1.736388 9.609543 H25b core -16.217316 -0.387904 10.581106 H25a core -15.099853 -1.455452 10.446622 C252 core -16.968490 -2.203513 9.941348 H265 core -17.900669 -0.784480 12.578641 H175 core -7.412964 -0.161980 7.621154 C174 core -6.337633 -1.305446 8.986579 H16b core -7.103855 -3.602522 12.176867 H16a core -8.598470 -3.857062 11.847426 C162 core -7.386413 -5.139047 10.966724 H173 core -5.637441 -2.467641 10.567312 H115 core -9.034169 1.491987 7.406752 C114 core -10.530567 2.792363 7.975762 H17b core -9.661858 -0.978999 6.917830 H17a core -10.584049 -1.711063 7.928230 H113 core -12.313221 3.689881 8.364091 H11b core -14.214873 2.526157 9.625672 H11a core -14.167347 0.999560 9.898523 C126 core -14.922447 1.409643 8.071930 C601 core -6.337598 -6.750926 13.909722 C166 core -7.953325 -7.453928 10.523088 C402 core -18.619431 -4.863913 11.991329 C256 core -17.341187 -4.125208 8.631382 H502'a core -6.737957 -4.606776 7.474008 C502 core -7.160783 -4.258112 6.802161 C501 core -7.961695 -6.585144 6.486799 H502a core -7.719318 -3.994516 5.981467 C156 core -10.878781 -8.811493 7.333394 C152 core -9.400882 -9.057918 9.150996 C151 core -10.401548 -8.339488 8.503282 S50' core -8.453048 -4.808709 6.589218 S50 core -7.859512 -5.340234 7.534112 C251 core -16.532560 -3.416091 9.503317 S40' core -17.411027 -4.717790 13.043606 S40 core -17.529709 -5.953488 12.848684 C161 core -8.316022 -6.154656 11.015253 S60' core -7.692202 -7.952786 13.951385 C11 core -14.007317 1.674925 9.153649 C113 core -11.829325 2.824487 8.370667 C17 core -9.928417 -0.980937 7.897515 C115 core -9.942929 1.532349 7.843474 C173 core -6.479368 -2.222398 10.026409 C16 core -7.721224 -3.757422 11.430653 C175 core -7.483951 -0.893755 8.362297 C265 core -17.164928 -1.233520 13.003926 C25 core -16.063048 -1.351964 10.758068 H201'c core -7.392228 1.712195 11.752900 H201'b core -8.214024 1.441961 10.465035 H201'a core -7.561036 0.261083 11.230639 H201c core -7.824551 0.868143 10.418029 H201b core -7.155495 1.228786 11.770483 H201a core -8.483870 1.914314 11.355065 H202'b core -8.435032 1.070716 14.212176 H202'a core -8.189022 -0.297247 13.522886 H202c core -7.955691 0.296453 14.076558 H202a core -9.152236 1.246636 13.807279 H302'c core -12.481528 3.406134 12.815191 H302'b core -12.519555 2.583442 11.500270 H302'a core -11.522410 2.201571 12.625757 H302c core -11.782264 2.394293 11.726259 H302b core -12.035938 3.188896 13.033980 H302a core -11.734317 2.409635 11.766838 C302 core -12.510533 2.447125 12.503284 S30' core -14.051378 1.282492 13.340845 C202 core -8.919727 0.421475 13.740207 C201 core -8.022817 1.101165 11.282263 C266 core -16.127344 -1.613743 12.264148 C176 core -8.729631 -1.423346 8.677817 C172 core -7.695243 -2.751975 10.348580 C116 core -10.619366 0.354735 8.216066 C112 core -12.514087 1.647992 8.816027 O60 core -9.032580 -7.229146 13.776118 O271 core -13.404031 -5.577979 13.532260 O211 core -11.783102 -8.518441 13.217717 O161 core -9.603332 -5.919914 11.398541 O1 core -12.337614 -6.337726 11.117440 O40 core -16.169208 -5.540265 12.405565 O251 core -15.362366 -3.921877 9.872929 O50 core -9.245086 -4.837308 7.872868 O151 core -10.887701 -7.234785 9.073716 Eu4 core -10.841034 -5.095863 9.628367 Eu2 core -14.129235 -4.859054 11.470841 C0 core -10.876006 -3.513324 13.156920 Eu3 core -11.108402 -6.324031 13.175172 C111 core -11.860148 0.396180 8.765656 C171 core -8.824890 -2.350507 9.744459 C261 core -15.047626 -2.244131 12.917573 S20' core -9.378148 0.650254 12.250369 S20 core -8.891917 -0.256404 12.081605 S30 core -12.649408 0.960499 13.331519 O30 core -12.955547 0.038151 12.305256 O20 core -10.190938 -0.155583 11.390698 O261 core -13.922689 -2.678670 12.211402 O171 core -10.017584 -2.898642 10.050480 O111 core -12.426096 -0.686122 9.261607 O102 core -10.860945 -2.257919 13.272339 O101 core -11.435122 -4.088438 12.134196 O2 core -12.712031 -3.712481 9.818824 Eu1 core -11.886379 -1.843758 11.192805 H601'a core -6.363585 -6.160817 14.649691 gdis-0.90/models/gibb_opt_bulk.arc0000644000175000017500000026734507717054774015645 0ustar seansean!BIOSYM archive 2 PBC=ON gibbsite fit -14175.988391 !DATE PBC 8.6840 5.0780 9.7360 90.0000 94.5400 90.0000 Al 0.689162476 2.688801000 9.683128970 CORE 1 al Al 3.0000 1 Al 2.496857083 0.149801000 4.875048293 CORE 2 al Al 3.0000 2 Al 7.224183897 2.389199000 0.022322538 CORE 3 al Al 3.0000 3 Al 5.416489290 4.928199000 4.830403216 CORE 4 al Al 3.0000 4 Al 2.135125541 0.119840800 9.682158425 CORE 5 al Al 3.0000 5 Al 1.050894018 2.658840800 4.876018838 CORE 6 al Al 3.0000 6 Al 5.778220831 4.958159200 0.023293084 CORE 7 al Al 3.0000 7 Al 6.862452355 2.419159200 4.829432671 CORE 8 al Al 3.0000 8 O1 0.860157852 1.108527400 8.623293665 CORE 9 o O 0.9480 9 O1 2.325861707 3.647527400 5.934883598 CORE 10 o O 0.9480 10 O1 7.053188521 3.969472600 1.082157843 CORE 11 o O 0.9480 11 O1 5.587484666 1.430472600 3.770567911 CORE 12 o O 0.9480 12 O1 5.119517039 3.330152400 8.712583819 CORE 13 o O 0.9480 13 O1 6.750502520 0.791152400 5.845593444 CORE 14 o O 0.9480 14 O1 2.793829334 1.747847600 0.992867689 CORE 15 o O 0.9480 15 O1 1.162843852 4.286847600 3.859858065 CORE 16 o O 0.9480 16 O1 3.637908211 0.667757000 8.692202371 CORE 17 o O 0.9480 17 O1 -0.451888652 3.206757000 5.865974892 CORE 18 o O 0.9480 18 O1 4.275438161 4.410243000 1.013249138 CORE 19 o O 0.9480 19 O1 8.365235025 1.871243000 3.839476617 CORE 20 o O 0.9480 20 O1 7.817630180 3.195585400 8.668909288 CORE 21 o O 0.9480 21 O1 4.052389379 0.656585400 5.889267975 CORE 22 o O 0.9480 22 O1 0.095716193 1.882414600 1.036542221 CORE 23 o O 0.9480 23 O1 3.860956994 4.421414600 3.816183533 CORE 24 o O 0.9480 24 O1 1.890435534 3.644988400 8.684438010 CORE 25 o O 0.9480 25 O1 1.295584025 1.105988400 5.873739253 CORE 26 o O 0.9480 26 O1 6.022910838 1.433011600 1.021013499 CORE 27 o O 0.9480 27 O1 6.617762348 3.972011600 3.831712256 CORE 28 o O 0.9480 28 O1 6.423237316 0.757129800 8.720348181 CORE 29 o O 0.9480 29 O1 5.446782243 3.296129800 5.837829082 CORE 30 o O 0.9480 30 O1 1.490109057 4.320870200 0.985103328 CORE 31 o O 0.9480 31 O1 2.466564129 1.781870200 3.867622426 CORE 32 o O 0.9480 32 H1 -0.002965646 0.693395822 8.487067948 CORE 33 h H 0.4180 33 H1 3.188985204 3.232395822 6.071109315 CORE 34 h H 0.4180 34 H1 7.916312018 4.384604178 1.218383561 CORE 35 h H 0.4180 35 H1 4.724361168 1.845604178 3.634342194 CORE 36 h H 0.4180 36 H1 4.298534121 2.803223574 8.710584496 CORE 37 h H 0.4180 37 H1 7.571485438 0.264223574 5.847592767 CORE 38 h H 0.4180 38 H1 3.614812251 2.274776426 0.994867012 CORE 39 h H 0.4180 39 H1 0.341860935 4.813776426 3.857858742 CORE 40 h H 0.4180 40 H1 3.679924987 0.563505660 7.720453744 CORE 41 h H 0.4180 41 H1 -0.493905428 3.102505660 6.837723519 CORE 42 h H 0.4180 42 H1 4.233421385 4.514494340 1.984997764 CORE 43 h H 0.4180 43 H1 8.407251801 1.975494340 2.867727990 CORE 44 h H 0.4180 44 H1 7.576333314 4.137275110 8.608143456 CORE 45 h H 0.4180 45 H1 4.293686244 1.598275110 5.950033807 CORE 46 h H 0.4180 46 H1 0.337013058 0.940724890 1.097308053 CORE 47 h H 0.4180 47 H1 3.619660128 3.479724890 3.755417701 CORE 48 h H 0.4180 48 H1 1.956490221 3.639646344 7.706885523 CORE 49 h H 0.4180 49 H1 1.229529338 1.100646344 6.851291740 CORE 50 h H 0.4180 50 H1 5.956856152 1.438353656 1.998565986 CORE 51 h H 0.4180 51 H1 6.683817035 3.977353656 2.854159769 CORE 52 h H 0.4180 52 H1 6.383844013 0.819137258 7.740476091 CORE 53 h H 0.4180 53 H1 5.486175546 3.358137258 6.817701172 CORE 54 h H 0.4180 54 H1 1.529502360 4.258862742 1.964975418 CORE 55 h H 0.4180 55 H1 2.427170826 1.719862742 2.887750336 CORE 56 h H 0.4180 56 end end gibbsite fit -14175.988391 !DATE PBC 8.6840 5.0780 9.7360 90.0000 94.5400 90.0000 Al 0.689162476 2.688801000 9.683128970 CORE 1 al Al 3.0000 1 Al 2.496857083 0.149801000 4.875048293 CORE 2 al Al 3.0000 2 Al 7.224183897 2.389199000 0.022322538 CORE 3 al Al 3.0000 3 Al 5.416489290 4.928199000 4.830403216 CORE 4 al Al 3.0000 4 Al 2.135125541 0.119840800 9.682158425 CORE 5 al Al 3.0000 5 Al 1.050894018 2.658840800 4.876018838 CORE 6 al Al 3.0000 6 Al 5.778220831 4.958159200 0.023293084 CORE 7 al Al 3.0000 7 Al 6.862452355 2.419159200 4.829432671 CORE 8 al Al 3.0000 8 O1 0.860157852 1.108527400 8.623293665 CORE 9 o O 0.9480 9 O1 2.325861707 3.647527400 5.934883598 CORE 10 o O 0.9480 10 O1 7.053188521 3.969472600 1.082157843 CORE 11 o O 0.9480 11 O1 5.587484666 1.430472600 3.770567911 CORE 12 o O 0.9480 12 O1 5.119517039 3.330152400 8.712583819 CORE 13 o O 0.9480 13 O1 6.750502520 0.791152400 5.845593444 CORE 14 o O 0.9480 14 O1 2.793829334 1.747847600 0.992867689 CORE 15 o O 0.9480 15 O1 1.162843852 4.286847600 3.859858065 CORE 16 o O 0.9480 16 O1 3.637908211 0.667757000 8.692202371 CORE 17 o O 0.9480 17 O1 -0.451888652 3.206757000 5.865974892 CORE 18 o O 0.9480 18 O1 4.275438161 4.410243000 1.013249138 CORE 19 o O 0.9480 19 O1 8.365235025 1.871243000 3.839476617 CORE 20 o O 0.9480 20 O1 7.817630180 3.195585400 8.668909288 CORE 21 o O 0.9480 21 O1 4.052389379 0.656585400 5.889267975 CORE 22 o O 0.9480 22 O1 0.095716193 1.882414600 1.036542221 CORE 23 o O 0.9480 23 O1 3.860956994 4.421414600 3.816183533 CORE 24 o O 0.9480 24 O1 1.890435534 3.644988400 8.684438010 CORE 25 o O 0.9480 25 O1 1.295584025 1.105988400 5.873739253 CORE 26 o O 0.9480 26 O1 6.022910838 1.433011600 1.021013499 CORE 27 o O 0.9480 27 O1 6.617762348 3.972011600 3.831712256 CORE 28 o O 0.9480 28 O1 6.423237316 0.757129800 8.720348181 CORE 29 o O 0.9480 29 O1 5.446782243 3.296129800 5.837829082 CORE 30 o O 0.9480 30 O1 1.490109057 4.320870200 0.985103328 CORE 31 o O 0.9480 31 O1 2.466564129 1.781870200 3.867622426 CORE 32 o O 0.9480 32 H1 -0.002965646 0.693395822 8.487067948 CORE 33 h H 0.4180 33 H1 3.188985204 3.232395822 6.071109315 CORE 34 h H 0.4180 34 H1 7.916312018 4.384604178 1.218383561 CORE 35 h H 0.4180 35 H1 4.724361168 1.845604178 3.634342194 CORE 36 h H 0.4180 36 H1 4.298534121 2.803223574 8.710584496 CORE 37 h H 0.4180 37 H1 7.571485438 0.264223574 5.847592767 CORE 38 h H 0.4180 38 H1 3.614812251 2.274776426 0.994867012 CORE 39 h H 0.4180 39 H1 0.341860935 4.813776426 3.857858742 CORE 40 h H 0.4180 40 H1 3.679924987 0.563505660 7.720453744 CORE 41 h H 0.4180 41 H1 -0.493905428 3.102505660 6.837723519 CORE 42 h H 0.4180 42 H1 4.233421385 4.514494340 1.984997764 CORE 43 h H 0.4180 43 H1 8.407251801 1.975494340 2.867727990 CORE 44 h H 0.4180 44 H1 7.576333314 4.137275110 8.608143456 CORE 45 h H 0.4180 45 H1 4.293686244 1.598275110 5.950033807 CORE 46 h H 0.4180 46 H1 0.337013058 0.940724890 1.097308053 CORE 47 h H 0.4180 47 H1 3.619660128 3.479724890 3.755417701 CORE 48 h H 0.4180 48 H1 1.956490221 3.639646344 7.706885523 CORE 49 h H 0.4180 49 H1 1.229529338 1.100646344 6.851291740 CORE 50 h H 0.4180 50 H1 5.956856152 1.438353656 1.998565986 CORE 51 h H 0.4180 51 H1 6.683817035 3.977353656 2.854159769 CORE 52 h H 0.4180 52 H1 6.383844013 0.819137258 7.740476091 CORE 53 h H 0.4180 53 H1 5.486175546 3.358137258 6.817701172 CORE 54 h H 0.4180 54 H1 1.529502360 4.258862742 1.964975418 CORE 55 h H 0.4180 55 H1 2.427170826 1.719862742 2.887750336 CORE 56 h H 0.4180 56 end end gibbsite fit -14634.562124 !DATE PBC 8.8268 5.1607 9.7067 90.0000 94.3094 90.0000 Al 0.755170974 2.735964316 9.655322418 CORE 1 al Al 3.0000 1 Al 2.564152551 0.155616994 4.863591495 CORE 2 al Al 3.0000 2 Al 7.342257682 2.424730328 0.023953524 CORE 3 al Al 3.0000 3 Al 5.533276106 5.005077650 4.815684447 CORE 4 al Al 3.0000 4 Al 2.222517978 0.131387657 9.658155564 CORE 5 al Al 3.0000 5 Al 1.096805547 2.711734979 4.860758350 CORE 6 al Al 3.0000 6 Al 5.874910679 5.029306987 0.021120379 CORE 7 al Al 3.0000 7 Al 7.000623109 2.448959665 4.818517593 CORE 8 al Al 3.0000 8 O1 0.907276665 1.114084948 8.562364867 CORE 9 o O 0.9480 9 O1 2.412046860 3.694432270 5.956549047 CORE 10 o O 0.9480 10 O1 7.190151992 4.046609696 1.116911075 CORE 11 o O 0.9480 11 O1 5.685381796 1.466262374 3.722726896 CORE 12 o O 0.9480 12 O1 5.231387648 3.368686248 8.655429465 CORE 13 o O 0.9480 13 O1 6.914755337 0.788338926 5.863484448 CORE 14 o O 0.9480 14 O1 2.866041009 1.792008396 1.023846477 CORE 15 o O 0.9480 15 O1 1.182673320 4.372355718 3.815791494 CORE 16 o O 0.9480 16 O1 3.751190440 0.704731866 8.635947172 CORE 17 o O 0.9480 17 O1 -0.431866915 3.285079188 5.882966741 CORE 18 o O 0.9480 18 O1 4.346238216 4.455962778 1.043328770 CORE 19 o O 0.9480 19 O1 8.529295572 1.875615456 3.796309201 CORE 20 o O 0.9480 20 O1 7.992085922 3.269934360 8.607530684 CORE 21 o O 0.9480 21 O1 4.154057063 0.689587038 5.911383230 CORE 22 o O 0.9480 22 O1 0.105342735 1.890760284 1.071745259 CORE 23 o O 0.9480 23 O1 3.943371594 4.471107606 3.767892713 CORE 24 o O 0.9480 24 O1 1.996663920 3.693864694 8.624642219 CORE 25 o O 0.9480 25 O1 1.322659605 1.113517372 5.894271694 CORE 26 o O 0.9480 26 O1 6.100764737 1.466829949 1.054633723 CORE 27 o O 0.9480 27 O1 6.774769051 4.047177271 3.785004248 CORE 28 o O 0.9480 28 O1 6.599884629 0.758543955 8.664043489 CORE 29 o O 0.9480 29 O1 5.546258356 3.338891276 5.854870424 CORE 30 o O 0.9480 30 O1 1.497544027 4.402150689 1.015232453 CORE 31 o O 0.9480 31 O1 2.551170301 1.821803367 3.824405518 CORE 32 o O 0.9480 32 H1 0.065341653 0.675248095 7.989911624 CORE 33 h H 0.4180 33 H1 3.253981872 3.255595417 6.529002289 CORE 34 h H 0.4180 34 H1 8.032087004 4.485446549 1.689364318 CORE 35 h H 0.4180 35 H1 4.843446784 1.905099227 3.150273653 CORE 36 h H 0.4180 36 H1 4.429124822 2.828288992 8.294609366 CORE 37 h H 0.4180 37 H1 7.717018163 0.247941670 6.224304548 CORE 38 h H 0.4180 38 H1 3.668303834 2.332405652 1.384666576 CORE 39 h H 0.4180 39 H1 0.380410494 4.912752974 3.454971395 CORE 40 h H 0.4180 40 H1 3.797609733 0.811322774 7.686731778 CORE 41 h H 0.4180 41 H1 -0.478286208 3.391670096 6.832182135 CORE 42 h H 0.4180 42 H1 4.299818923 4.349371870 1.992544164 CORE 43 h H 0.4180 43 H1 8.575714865 1.769024548 2.847093807 CORE 44 h H 0.4180 44 H1 7.775343209 4.218724392 8.200741978 CORE 45 h H 0.4180 45 H1 4.370799776 1.638377070 6.318171936 CORE 46 h H 0.4180 46 H1 0.322085448 0.941970252 1.478533965 CORE 47 h H 0.4180 47 H1 3.726628880 3.522317574 3.361104006 CORE 48 h H 0.4180 48 H1 2.191566545 3.622300583 7.674068341 CORE 49 h H 0.4180 49 H1 1.127756980 1.041953261 6.844845572 CORE 50 h H 0.4180 50 H1 5.905862112 1.538394061 2.005207601 CORE 51 h H 0.4180 51 H1 6.969671676 4.118741383 2.834430370 CORE 52 h H 0.4180 52 H1 6.689487563 0.773864099 7.707654662 CORE 53 h H 0.4180 53 H1 5.456655422 3.354211421 6.811259251 CORE 54 h H 0.4180 54 H1 1.407941093 4.386830545 1.971621280 CORE 55 h H 0.4180 55 H1 2.640773235 1.806483223 2.868016691 CORE 56 h H 0.4180 56 end end gibbsite fit -14752.136220 !DATE PBC 8.7543 5.0808 9.8653 90.0000 101.7970 90.0000 Al -0.573743607 2.841531385 9.653134235 CORE 1 al Al 3.0000 1 Al 1.925527985 0.301137983 4.832228118 CORE 2 al Al 3.0000 2 Al 7.311118700 2.239255420 0.003774001 CORE 3 al Al 3.0000 3 Al 4.811847108 4.779648822 4.824680117 CORE 4 al Al 3.0000 4 Al 2.920131791 0.238928517 0.017842368 CORE 5 al Al 3.0000 5 Al 0.448555756 2.779321919 4.810611749 CORE 6 al Al 3.0000 6 Al 3.817243303 4.841858287 9.639065867 CORE 7 al Al 3.0000 7 Al 6.288819337 2.301464885 4.846296486 CORE 8 al Al 3.0000 8 O1 -0.507045321 1.159831012 8.623918390 CORE 9 o O 0.9480 9 O1 1.858829699 3.700224414 5.861443963 CORE 10 o O 0.9480 10 O1 7.244420414 3.920955792 1.032989846 CORE 11 o O 0.9480 11 O1 4.878545395 1.380562390 3.795464272 CORE 12 o O 0.9480 12 O1 3.709876325 3.079306128 8.740344627 CORE 13 o O 0.9480 13 O1 6.396186315 0.538912725 5.745017725 CORE 14 o O 0.9480 14 O1 3.027498768 2.001480677 0.916563608 CORE 15 o O 0.9480 15 O1 0.341188778 4.541874079 3.911890510 CORE 16 o O 0.9480 16 O1 2.455222785 0.559120723 8.471888290 CORE 17 o O 0.9480 17 O1 -1.103438407 3.099514125 6.013474063 CORE 18 o O 0.9480 18 O1 4.282152308 4.521666081 1.185019945 CORE 19 o O 0.9480 19 O1 7.840813501 1.981272679 3.643434172 CORE 20 o O 0.9480 20 O1 6.557243135 3.426801348 8.692598723 CORE 21 o O 0.9480 21 O1 3.548819505 0.886407946 5.792763630 CORE 22 o O 0.9480 22 O1 0.180131958 1.653985456 0.964309512 CORE 23 o O 0.9480 23 O1 3.188555589 4.194378858 3.864144606 CORE 24 o O 0.9480 24 O1 0.607134056 3.803851979 8.479948150 CORE 25 o O 0.9480 25 O1 0.744650322 1.263458577 6.005414203 CORE 26 o O 0.9480 26 O1 6.130241037 1.276934825 1.176960086 CORE 27 o O 0.9480 27 O1 5.992724771 3.817328228 3.651494032 CORE 28 o O 0.9480 28 O1 5.103169540 0.741892309 8.360475874 CORE 29 o O 0.9480 29 O1 5.002893101 3.282285711 6.124886479 CORE 30 o O 0.9480 30 O1 1.634205554 4.338894496 1.296432361 CORE 31 o O 0.9480 31 O1 1.734481993 1.798501094 3.532021756 CORE 32 o O 0.9480 32 H1 -1.243802806 0.840054120 8.072263107 CORE 33 h H 0.4180 33 H1 2.595587184 3.380447522 6.413099246 CORE 34 h H 0.4180 34 H1 7.981177899 4.240732685 1.584645128 CORE 35 h H 0.4180 35 H1 4.141787909 1.700339283 3.243808990 CORE 36 h H 0.4180 36 H1 2.887378524 2.540470759 8.474174010 CORE 37 h H 0.4180 37 H1 7.218684116 0.000077357 6.011188343 CORE 38 h H 0.4180 38 H1 3.849996570 2.540316046 1.182734226 CORE 39 h H 0.4180 39 H1 -0.481309023 5.080709448 3.645719892 CORE 40 h H 0.4180 40 H1 2.557603870 0.883238558 7.532918527 CORE 41 h H 0.4180 41 H1 -1.205819491 3.423631960 6.952443826 CORE 42 h H 0.4180 42 H1 4.179771224 4.197548247 2.123989708 CORE 43 h H 0.4180 43 H1 7.943194585 1.657154845 2.704464409 CORE 44 h H 0.4180 44 H1 6.261003782 4.327002148 8.346462703 CORE 45 h H 0.4180 45 H1 3.845058858 1.786608746 6.138899650 CORE 46 h H 0.4180 46 H1 0.476371311 0.753784656 1.310445533 CORE 47 h H 0.4180 47 H1 2.892316235 3.294178058 3.518008585 CORE 48 h H 0.4180 48 H1 1.183926487 3.572943856 7.615705171 CORE 49 h H 0.4180 49 H1 0.167857891 1.032550454 6.869657182 CORE 50 h H 0.4180 50 H1 5.553448606 1.507842948 2.041203065 CORE 51 h H 0.4180 51 H1 6.569517203 4.048236351 2.787251053 CORE 52 h H 0.4180 52 H1 5.232843392 0.715274177 7.384128944 CORE 53 h H 0.4180 53 H1 4.873219248 3.255667579 7.101233409 CORE 54 h H 0.4180 54 H1 1.504531702 4.365512628 2.272779292 CORE 55 h H 0.4180 55 H1 1.864155845 1.825119225 2.555674826 CORE 56 h H 0.4180 56 end end gibbsite fit -14779.824204 !DATE PBC 8.7697 5.0287 9.8772 90.0000 99.4464 90.0000 Al -0.172952065 2.758713871 9.707733433 CORE 1 al Al 3.0000 1 Al 2.126172617 0.244349540 4.907197577 CORE 2 al Al 3.0000 2 Al 7.321591746 2.270014791 0.035553907 CORE 3 al Al 3.0000 3 Al 5.022467063 4.784379122 4.836089763 CORE 4 al Al 3.0000 4 Al 1.314782184 0.212931209 9.726759154 CORE 5 al Al 3.0000 5 Al 0.638438368 2.727295540 4.888171856 CORE 6 al Al 3.0000 6 Al 5.833857497 4.815797453 0.016528186 CORE 7 al Al 3.0000 7 Al 6.510201313 2.301433122 4.855115484 CORE 8 al Al 3.0000 8 O1 -0.101595467 1.093771190 8.669124957 CORE 9 o O 0.9480 9 O1 2.054816019 3.608135521 5.945806052 CORE 10 o O 0.9480 10 O1 7.250235148 3.934957472 1.074162382 CORE 11 o O 0.9480 11 O1 5.093823662 1.420593141 3.797481288 CORE 12 o O 0.9480 12 O1 4.143172605 3.073325793 8.840683637 CORE 13 o O 0.9480 13 O1 6.579786917 0.558961462 5.774247373 CORE 14 o O 0.9480 14 O1 3.005467076 1.955402869 0.902603703 CORE 15 o O 0.9480 15 O1 0.568852764 4.469767200 3.969039967 CORE 16 o O 0.9480 16 O1 2.846690141 0.509421717 8.525040019 CORE 17 o O 0.9480 17 O1 -0.893469589 3.023786048 6.089890991 CORE 18 o O 0.9480 18 O1 4.301949539 4.519306945 1.218247321 CORE 19 o O 0.9480 19 O1 8.042109270 2.004942614 3.653396349 CORE 20 o O 0.9480 20 O1 6.983705644 3.407499148 8.786934522 CORE 21 o O 0.9480 21 O1 3.739253877 0.893134817 5.827996488 CORE 22 o O 0.9480 22 O1 0.164934036 1.621229514 0.956352818 CORE 23 o O 0.9480 23 O1 3.409385804 4.135593845 3.915290852 CORE 24 o O 0.9480 24 O1 0.928801864 3.767130757 8.473934685 CORE 25 o O 0.9480 25 O1 1.024418688 1.252766426 6.140996325 CORE 26 o O 0.9480 26 O1 6.219837816 1.261597905 1.269352655 CORE 27 o O 0.9480 27 O1 6.124220993 3.775962236 3.602291015 CORE 28 o O 0.9480 28 O1 5.456739104 0.769187999 8.499470858 CORE 29 o O 0.9480 29 O1 5.266220417 3.283552330 6.115460152 CORE 30 o O 0.9480 30 O1 1.691900577 4.259540663 1.243816482 CORE 31 o O 0.9480 31 O1 1.882419264 1.745176332 3.627827188 CORE 32 o O 0.9480 32 H1 -0.858370362 0.700945422 8.161458924 CORE 33 h H 0.4180 33 H1 2.811590914 3.215309753 6.453472086 CORE 34 h H 0.4180 34 H1 8.007010042 4.327783240 1.581828416 CORE 35 h H 0.4180 35 H1 4.337048767 1.813418909 3.289815254 CORE 36 h H 0.4180 36 H1 3.336529201 2.533814834 8.606454092 CORE 37 h H 0.4180 37 H1 7.386430320 0.019450503 6.008476918 CORE 38 h H 0.4180 38 H1 3.812110480 2.494913828 1.136833248 CORE 39 h H 0.4180 39 H1 -0.237790639 5.009278160 3.734810422 CORE 40 h H 0.4180 40 H1 2.962899851 0.678316124 7.537338565 CORE 41 h H 0.4180 41 H1 -1.009679299 3.192680455 7.077592445 CORE 42 h H 0.4180 42 H1 4.185739829 4.350412538 2.205948775 CORE 43 h H 0.4180 43 H1 8.158318980 1.836048207 2.665694895 CORE 44 h H 0.4180 44 H1 6.702729080 4.317586148 8.498806051 CORE 45 h H 0.4180 45 H1 4.020230441 1.803221817 6.116124959 CORE 46 h H 0.4180 46 H1 0.445910601 0.711142514 1.244481289 CORE 47 h H 0.4180 47 H1 3.128409240 3.225506845 3.627162381 CORE 48 h H 0.4180 48 H1 1.357364496 3.610209719 7.602906912 CORE 49 h H 0.4180 49 H1 0.595856057 1.095845388 7.012024098 CORE 50 h H 0.4180 50 H1 5.791275185 1.418518943 2.140380428 CORE 51 h H 0.4180 51 H1 6.552783624 3.932883274 2.731263242 CORE 52 h H 0.4180 52 H1 5.604642726 0.742573381 7.512894142 CORE 53 h H 0.4180 53 H1 5.118316796 3.256937712 7.102036868 CORE 54 h H 0.4180 54 H1 1.543996955 4.286155281 2.230393198 CORE 55 h H 0.4180 55 H1 2.030322885 1.771790950 2.641250472 CORE 56 h H 0.4180 56 end end gibbsite fit -14780.633935 !DATE PBC 8.7705 5.0200 9.9167 90.0000 99.4458 90.0000 Al -0.182177486 2.754412416 9.752412076 CORE 1 al Al 3.0000 1 Al 2.126234260 0.244400395 4.920979139 CORE 2 al Al 3.0000 2 Al 7.325245349 2.265611626 0.029848734 CORE 3 al Al 3.0000 3 Al 5.016833603 4.775623646 4.861281671 CORE 4 al Al 3.0000 4 Al 1.307816334 0.214781918 9.757765110 CORE 5 al Al 3.0000 5 Al 0.636240439 2.724793939 4.915626105 CORE 6 al Al 3.0000 6 Al 5.835251528 4.805242123 0.024495700 CORE 7 al Al 3.0000 7 Al 6.506827424 2.295230102 4.866634705 CORE 8 al Al 3.0000 8 O1 -0.101505777 1.100147702 8.692635528 CORE 9 o O 0.9480 9 O1 2.045562551 3.610159722 5.980755687 CORE 10 o O 0.9480 10 O1 7.244573640 3.919876340 1.089625282 CORE 11 o O 0.9480 11 O1 5.097505312 1.409864319 3.801505123 CORE 12 o O 0.9480 12 O1 4.136482598 3.066299145 8.882260119 CORE 13 o O 0.9480 13 O1 6.578119196 0.556287124 5.791131097 CORE 14 o O 0.9480 14 O1 3.006585265 1.953724897 0.900000692 CORE 15 o O 0.9480 15 O1 0.564948666 4.463736918 3.991129714 CORE 16 o O 0.9480 16 O1 2.845265993 0.498578074 8.553356137 CORE 17 o O 0.9480 17 O1 -0.901209220 3.008590095 6.120035078 CORE 18 o O 0.9480 18 O1 4.297801870 4.521445967 1.228904673 CORE 19 o O 0.9480 19 O1 8.044277083 2.011433946 3.662225732 CORE 20 o O 0.9480 20 O1 6.978363859 3.408324030 8.828640650 CORE 21 o O 0.9480 21 O1 3.736237936 0.898312009 5.844750565 CORE 22 o O 0.9480 22 O1 0.164704004 1.611700012 0.953620160 CORE 23 o O 0.9480 23 O1 3.406829927 4.121712032 3.937510245 CORE 24 o O 0.9480 24 O1 0.914198654 3.758856027 8.514347947 CORE 25 o O 0.9480 25 O1 1.029858119 1.248844007 6.159043269 CORE 26 o O 0.9480 26 O1 6.228869209 1.261168014 1.267912864 CORE 27 o O 0.9480 27 O1 6.113209743 3.771180035 3.623217542 CORE 28 o O 0.9480 28 O1 5.442535831 0.767357321 8.537350712 CORE 29 o O 0.9480 29 O1 5.272065963 3.277369342 6.136040503 CORE 30 o O 0.9480 30 O1 1.700532032 4.252666721 1.244910098 CORE 31 o O 0.9480 31 O1 1.871001900 1.742654700 3.646220307 CORE 32 o O 0.9480 32 H1 -0.832568285 0.749431843 8.123219040 CORE 33 h H 0.4180 33 H1 2.776625058 3.259443864 6.550172175 CORE 34 h H 0.4180 34 H1 7.975636148 4.270592199 1.659041770 CORE 35 h H 0.4180 35 H1 4.366442805 1.760580178 3.232088635 CORE 36 h H 0.4180 36 H1 3.334084272 2.522300376 8.647175300 CORE 37 h H 0.4180 37 H1 7.380517522 0.012288356 6.026215915 CORE 38 h H 0.4180 38 H1 3.808983591 2.497723665 1.135085510 CORE 39 h H 0.4180 39 H1 -0.237449659 5.007735686 3.756044895 CORE 40 h H 0.4180 40 H1 2.970498305 0.659443131 7.573839416 CORE 41 h H 0.4180 41 H1 -1.026441532 3.169455151 7.099551800 CORE 42 h H 0.4180 42 H1 4.172569557 4.360580911 2.208421395 CORE 43 h H 0.4180 43 H1 8.169509395 1.850568890 2.682709010 CORE 44 h H 0.4180 44 H1 6.715115167 4.331018429 8.559915362 CORE 45 h H 0.4180 45 H1 3.999486627 1.821006408 6.113475853 CORE 46 h H 0.4180 46 H1 0.427952695 0.689005613 1.222345448 CORE 47 h H 0.4180 47 H1 3.143581236 3.199017633 3.668784957 CORE 48 h H 0.4180 48 H1 1.333921838 3.596068374 7.636786280 CORE 49 h H 0.4180 49 H1 0.610134935 1.086056353 7.036604935 CORE 50 h H 0.4180 50 H1 5.809146025 1.423955667 2.145474530 CORE 51 h H 0.4180 51 H1 6.532932928 3.933967688 2.745655875 CORE 52 h H 0.4180 52 H1 5.573968618 0.737036631 7.547356088 CORE 53 h H 0.4180 53 H1 5.140633176 3.247048652 7.126035127 CORE 54 h H 0.4180 54 H1 1.569099244 4.282987410 2.234904722 CORE 55 h H 0.4180 55 H1 2.002434687 1.772975390 2.656225683 CORE 56 h H 0.4180 56 end end gibbsite fit -14784.055396 !DATE PBC 8.8340 5.0037 9.8857 90.0000 96.6900 90.0000 Al 0.301551359 2.747849432 9.787755232 CORE 1 al Al 3.0000 1 Al 2.387969967 0.245981994 4.939862529 CORE 2 al Al 3.0000 2 Al 7.380808766 2.255885444 0.030656609 CORE 3 al Al 3.0000 3 Al 5.294390157 4.757752882 4.878549311 CORE 4 al Al 3.0000 4 Al 1.818267699 0.212926107 9.812836942 CORE 5 al Al 3.0000 5 Al 0.871253627 2.714793545 4.914780818 CORE 6 al Al 3.0000 6 Al 5.864092425 4.790808769 0.005574898 CORE 7 al Al 3.0000 7 Al 6.811106498 2.288941331 4.903631022 CORE 8 al Al 3.0000 8 O1 0.397616934 1.086508895 8.747352951 CORE 9 o O 0.9480 9 O1 2.291904393 3.588376333 5.980264810 CORE 10 o O 0.9480 10 O1 7.284743191 3.917225980 1.071058890 CORE 11 o O 0.9480 11 O1 5.390455732 1.415358542 3.838147031 CORE 12 o O 0.9480 12 O1 4.655235872 3.049661161 8.914269580 CORE 13 o O 0.9480 13 O1 6.868304315 0.547793723 5.813348181 CORE 14 o O 0.9480 14 O1 3.027124253 1.954073715 0.904142260 CORE 15 o O 0.9480 15 O1 0.814055810 4.455941153 4.005063660 CORE 16 o O 0.9480 16 O1 3.339765306 0.477446987 8.578329029 CORE 17 o O 0.9480 17 O1 -0.650243980 2.979314425 6.149288732 CORE 18 o O 0.9480 18 O1 4.342594818 4.526287889 1.240082812 CORE 19 o O 0.9480 19 O1 8.332604105 2.024420451 3.669123108 CORE 20 o O 0.9480 20 O1 7.514680066 3.410733003 8.879392543 CORE 21 o O 0.9480 21 O1 4.008860121 0.908865565 5.848225218 CORE 22 o O 0.9480 22 O1 0.167680058 1.593001873 0.939019298 CORE 23 o O 0.9480 23 O1 3.673500004 4.094869311 3.970186622 CORE 24 o O 0.9480 24 O1 1.358840343 3.785213099 8.544758004 CORE 25 o O 0.9480 25 O1 1.330680983 1.283345661 6.182859757 CORE 26 o O 0.9480 26 O1 6.323519781 1.218521777 1.273653836 CORE 27 o O 0.9480 27 O1 6.351679142 3.720389215 3.635552084 CORE 28 o O 0.9480 28 O1 5.952822377 0.767967504 8.559092624 CORE 29 o O 0.9480 29 O1 5.570717809 3.269834941 6.168525136 CORE 30 o O 0.9480 30 O1 1.729537747 4.235767372 1.259319216 CORE 31 o O 0.9480 31 O1 2.111642315 1.733899934 3.649886704 CORE 32 o O 0.9480 32 H1 -0.306523671 0.642052325 8.203922442 CORE 33 h H 0.4180 33 H1 2.996044997 3.143919763 6.523695319 CORE 34 h H 0.4180 34 H1 7.988883795 4.361682551 1.614489399 CORE 35 h H 0.4180 35 H1 4.686315128 1.859815113 3.294716522 CORE 36 h H 0.4180 36 H1 3.854475198 2.508128845 8.660317756 CORE 37 h H 0.4180 37 H1 7.669064989 0.006261407 6.067300005 CORE 38 h H 0.4180 38 H1 3.827884926 2.495606031 1.158094085 CORE 39 h H 0.4180 39 H1 0.013295136 4.997473469 3.751111835 CORE 40 h H 0.4180 40 H1 3.453149826 0.597296714 7.590606785 CORE 41 h H 0.4180 41 H1 -0.763628500 3.099164152 7.137010975 CORE 42 h H 0.4180 42 H1 4.229210299 4.406438162 2.227805055 CORE 43 h H 0.4180 43 H1 8.445988624 1.904570724 2.681400865 CORE 44 h H 0.4180 44 H1 7.226273911 4.330144858 8.624869506 CORE 45 h H 0.4180 45 H1 4.297266276 1.828277420 6.102748255 CORE 46 h H 0.4180 46 H1 0.456086213 0.673590018 1.193542335 CORE 47 h H 0.4180 47 H1 3.385093849 3.175457456 3.715663586 CORE 48 h H 0.4180 48 H1 1.625148366 3.723877366 7.576232543 CORE 49 h H 0.4180 49 H1 1.064372961 1.222009928 7.151385218 CORE 50 h H 0.4180 50 H1 6.057211759 1.279857510 2.242179298 CORE 51 h H 0.4180 51 H1 6.617987164 3.781724948 2.667026622 CORE 52 h H 0.4180 52 H1 6.078081380 0.748816902 7.567178776 CORE 53 h H 0.4180 53 H1 5.445458807 3.250684339 7.160438985 CORE 54 h H 0.4180 54 H1 1.604278745 4.254917974 2.251233065 CORE 55 h H 0.4180 55 H1 2.236901318 1.753050536 2.657972855 CORE 56 h H 0.4180 56 end end gibbsite fit -14785.233013 !DATE PBC 8.7423 5.0246 9.9282 90.0000 98.7039 90.0000 Al -0.057978334 2.753624320 9.787698485 CORE 1 al Al 3.0000 1 Al 2.175527040 0.241308842 4.933100878 CORE 2 al Al 3.0000 2 Al 7.297901296 2.271006635 0.026167757 CORE 3 al Al 3.0000 3 Al 5.064395922 4.783322113 4.880765364 CORE 4 al Al 3.0000 4 Al 1.425143504 0.213943919 9.800579464 CORE 5 al Al 3.0000 5 Al 0.692405202 2.726259397 4.920219898 CORE 6 al Al 3.0000 6 Al 5.814779458 4.810687037 0.013286777 CORE 7 al Al 3.0000 7 Al 6.547517760 2.298371559 4.893646344 CORE 8 al Al 3.0000 8 O1 0.063340586 1.125888446 8.685244765 CORE 9 o O 0.9480 9 O1 2.054208120 3.638203923 6.035554597 CORE 10 o O 0.9480 10 O1 7.176582375 3.898742510 1.128621477 CORE 11 o O 0.9480 11 O1 5.185714842 1.386427032 3.778311644 CORE 12 o O 0.9480 12 O1 4.234926818 3.073249678 8.908140565 CORE 13 o O 0.9480 13 O1 6.624957625 0.560934200 5.812658797 CORE 14 o O 0.9480 14 O1 3.004996144 1.951381278 0.905725676 CORE 15 o O 0.9480 15 O1 0.614965337 4.463696756 4.001207444 CORE 16 o O 0.9480 16 O1 2.950133087 0.489655601 8.582014176 CORE 17 o O 0.9480 17 O1 -0.832584381 3.001971079 6.138785186 CORE 18 o O 0.9480 18 O1 4.289789875 4.534975355 1.231852065 CORE 19 o O 0.9480 19 O1 8.072507343 2.022659877 3.675081055 CORE 20 o O 0.9480 20 O1 7.069585080 3.418770098 8.869628228 CORE 21 o O 0.9480 21 O1 3.790299362 0.906454620 5.851171134 CORE 22 o O 0.9480 22 O1 0.170337881 1.605860858 0.944238013 CORE 23 o O 0.9480 23 O1 3.449623600 4.118176335 3.962695107 CORE 24 o O 0.9480 24 O1 0.970745873 3.808723031 8.532675128 CORE 25 o O 0.9480 25 O1 1.146802833 1.296407553 6.188124234 CORE 26 o O 0.9480 26 O1 6.269177089 1.215907925 1.281191113 CORE 27 o O 0.9480 27 O1 6.093120128 3.728223403 3.625742007 CORE 28 o O 0.9480 28 O1 5.530776043 0.773493108 8.564184658 CORE 29 o O 0.9480 29 O1 5.329108400 3.285808586 6.156614704 CORE 30 o O 0.9480 30 O1 1.709146919 4.251137848 1.249681583 CORE 31 o O 0.9480 31 O1 1.910814562 1.738822370 3.657251538 CORE 32 o O 0.9480 32 H1 -0.613477339 0.774195484 8.048459006 CORE 33 h H 0.4180 33 H1 2.731026045 3.286510962 6.672340356 CORE 34 h H 0.4180 34 H1 7.853400301 4.250435472 1.765407235 CORE 35 h H 0.4180 35 H1 4.508896917 1.738119994 3.141525886 CORE 36 h H 0.4180 36 H1 3.431724624 2.536193293 8.657733278 CORE 37 h H 0.4180 37 H1 7.428159818 0.023877815 6.063066084 CORE 38 h H 0.4180 38 H1 3.808198338 2.488437663 1.156132963 CORE 39 h H 0.4180 39 H1 -0.188236857 5.000753141 3.750800158 CORE 40 h H 0.4180 40 H1 3.087416942 0.633121679 7.604766368 CORE 41 h H 0.4180 41 H1 -0.969868236 3.145437157 7.116032995 CORE 42 h H 0.4180 42 H1 4.152506020 4.391509277 2.209099874 CORE 43 h H 0.4180 43 H1 8.209791198 1.879193799 2.697833247 CORE 44 h H 0.4180 44 H1 6.854365195 4.358438850 8.612070665 CORE 45 h H 0.4180 45 H1 4.005519248 1.846123372 6.108728697 CORE 46 h H 0.4180 46 H1 0.385557767 0.666192106 1.201795576 CORE 47 h H 0.4180 47 H1 3.234403714 3.178507584 3.705137544 CORE 48 h H 0.4180 48 H1 1.217409304 3.782883396 7.552030343 CORE 49 h H 0.4180 49 H1 0.900139402 1.270567919 7.168769019 CORE 50 h H 0.4180 50 H1 6.022513658 1.241747559 2.261835899 CORE 51 h H 0.4180 51 H1 6.339783560 3.754063037 2.645097222 CORE 52 h H 0.4180 52 H1 5.662509563 0.741049857 7.575565331 CORE 53 h H 0.4180 53 H1 5.197374879 3.253365335 7.145234032 CORE 54 h H 0.4180 54 H1 1.577413399 4.283581098 2.238300911 CORE 55 h H 0.4180 55 H1 2.042548082 1.771265621 2.668632210 CORE 56 h H 0.4180 56 end end gibbsite fit -14786.383757 !DATE PBC 8.7906 5.0014 9.8769 90.0000 97.9312 90.0000 Al 0.079678504 2.748259189 9.746580072 CORE 1 al Al 3.0000 1 Al 2.271353812 0.247540817 4.927066157 CORE 2 al Al 3.0000 2 Al 7.348087839 2.253177555 0.035850747 CORE 3 al Al 3.0000 3 Al 5.156412531 4.753895926 4.855364663 CORE 4 al Al 3.0000 4 Al 1.588738018 0.220639232 9.766057165 CORE 5 al Al 3.0000 5 Al 0.762294299 2.721357604 4.907589064 CORE 6 al Al 3.0000 6 Al 5.839028325 4.780797511 0.016373654 CORE 7 al Al 3.0000 7 Al 6.665472044 2.280079139 4.874841755 CORE 8 al Al 3.0000 8 O1 0.237962339 1.132387877 8.640277540 CORE 9 o O 0.9480 9 O1 2.113069978 3.633106249 6.033368689 CORE 10 o O 0.9480 10 O1 7.189804004 3.869048866 1.142153279 CORE 11 o O 0.9480 11 O1 5.314696365 1.368330494 3.749062130 CORE 12 o O 0.9480 12 O1 4.417071669 3.047816982 8.879924218 CORE 13 o O 0.9480 13 O1 6.724577846 0.547098611 5.793722011 CORE 14 o O 0.9480 14 O1 3.010694674 1.953619761 0.902506601 CORE 15 o O 0.9480 15 O1 0.703188497 4.454338132 3.988708809 CORE 16 o O 0.9480 16 O1 3.120509275 0.479887968 8.555743208 CORE 17 o O 0.9480 17 O1 -0.769476958 2.980606339 6.117903021 CORE 18 o O 0.9480 18 O1 4.307257068 4.521548775 1.226687611 CORE 19 o O 0.9480 19 O1 8.197243302 2.020830404 3.664527798 CORE 20 o O 0.9480 20 O1 7.246715937 3.410684145 8.844123496 CORE 21 o O 0.9480 21 O1 3.894933578 0.909965774 5.829522733 CORE 22 o O 0.9480 22 O1 0.181050406 1.590752598 0.938307323 CORE 23 o O 0.9480 23 O1 3.532832765 4.091470970 3.952908086 CORE 24 o O 0.9480 24 O1 1.081155470 3.825445815 8.491594593 CORE 25 o O 0.9480 25 O1 1.269876847 1.324727443 6.182051636 CORE 26 o O 0.9480 26 O1 6.346610873 1.175990928 1.290836227 CORE 27 o O 0.9480 27 O1 6.157889496 3.676709300 3.600379183 CORE 28 o O 0.9480 28 O1 5.697625676 0.769512709 8.536191163 CORE 29 o O 0.9480 29 O1 5.444023839 3.270231080 6.137455066 CORE 30 o O 0.9480 30 O1 1.730140667 4.231924035 1.246239656 CORE 31 o O 0.9480 31 O1 1.983742505 1.731205663 3.644975753 CORE 32 o O 0.9480 32 H1 -0.404374543 0.735135984 7.996911123 CORE 33 h H 0.4180 33 H1 2.755406859 3.235854356 6.676735106 CORE 34 h H 0.4180 34 H1 7.832140886 4.266300759 1.785519697 CORE 35 h H 0.4180 35 H1 4.672359484 1.765582387 3.105695713 CORE 36 h H 0.4180 36 H1 3.639501772 2.480386585 8.608349150 CORE 37 h H 0.4180 37 H1 7.502147743 4.981104957 6.065297079 CORE 38 h H 0.4180 38 H1 3.788264571 2.521050158 1.174081670 CORE 39 h H 0.4180 39 H1 -0.074381399 0.020331786 3.717133740 CORE 40 h H 0.4180 40 H1 3.269522377 0.571606726 7.575500491 CORE 41 h H 0.4180 41 H1 -0.918490060 3.072325098 7.098145738 CORE 42 h H 0.4180 42 H1 4.158243967 4.429830017 2.206930328 CORE 43 h H 0.4180 43 H1 8.346256403 1.929111646 2.684285081 CORE 44 h H 0.4180 44 H1 7.032479517 4.349018320 8.589623493 CORE 45 h H 0.4180 45 H1 4.109169998 1.848299948 6.084022736 CORE 46 h H 0.4180 46 H1 0.395286826 0.652418423 1.192807326 CORE 47 h H 0.4180 47 H1 3.318596345 3.153136795 3.698408084 CORE 48 h H 0.4180 48 H1 1.265226079 3.785765079 7.512267784 CORE 49 h H 0.4180 49 H1 1.085806237 1.285046708 7.161378445 CORE 50 h H 0.4180 50 H1 6.162540264 1.215671664 2.270163035 CORE 51 h H 0.4180 51 H1 6.341960106 3.716390035 2.621052375 CORE 52 h H 0.4180 52 H1 5.833829632 0.737510347 7.549584508 CORE 53 h H 0.4180 53 H1 5.307819883 3.238228718 7.124061721 CORE 54 h H 0.4180 54 H1 1.593936711 4.263926397 2.232846311 CORE 55 h H 0.4180 55 H1 2.119946461 1.763208025 2.658369098 CORE 56 h H 0.4180 56 end end gibbsite fit -14786.929105 !DATE PBC 8.8235 4.9918 9.8574 90.0000 96.8234 90.0000 Al 0.273904488 2.745190819 9.747437792 CORE 1 al Al 3.0000 1 Al 2.381109440 0.249274320 4.933932160 CORE 2 al Al 3.0000 2 Al 7.378425211 2.246642179 0.040142176 CORE 3 al Al 3.0000 3 Al 5.271220259 4.742558678 4.853647808 CORE 4 al Al 3.0000 4 Al 1.796165518 0.222721212 9.778546358 CORE 5 al Al 3.0000 5 Al 0.858848411 2.718637711 4.902823594 CORE 6 al Al 3.0000 6 Al 5.856164181 4.769111787 0.009033610 CORE 7 al Al 3.0000 7 Al 6.793481289 2.273195288 4.884756374 CORE 8 al Al 3.0000 8 O1 0.443776543 1.129227144 8.650776920 CORE 9 o O 0.9480 9 O1 2.211237386 3.625143643 6.030593033 CORE 10 o O 0.9480 10 O1 7.208553156 3.862605854 1.136803048 CORE 11 o O 0.9480 11 O1 5.441092313 1.366689355 3.756986936 CORE 12 o O 0.9480 12 O1 4.631946625 3.034391516 8.885794269 CORE 13 o O 0.9480 13 O1 6.846547924 0.538475017 5.795575683 CORE 14 o O 0.9480 14 O1 3.020383074 1.957441482 0.901785699 CORE 15 o O 0.9480 15 O1 0.805781775 4.453357981 3.992004285 CORE 16 o O 0.9480 16 O1 3.322424698 0.468708314 8.555645291 CORE 17 o O 0.9480 17 O1 -0.667410769 2.964624813 6.125724662 CORE 18 o O 0.9480 18 O1 4.329905002 4.523124685 1.231934678 CORE 19 o O 0.9480 19 O1 8.319740468 2.027208185 3.661855307 CORE 20 o O 0.9480 20 O1 7.467884719 3.409749919 8.854947703 CORE 21 o O 0.9480 21 O1 4.010609830 0.913833420 5.826422249 CORE 22 o O 0.9480 22 O1 0.184444980 1.582083079 0.932632265 CORE 23 o O 0.9480 23 O1 3.641719869 4.077999578 3.961157719 CORE 24 o O 0.9480 24 O1 1.251576227 3.841928212 8.490465629 CORE 25 o O 0.9480 25 O1 1.403437701 1.346011713 6.190904323 CORE 26 o O 0.9480 26 O1 6.400753472 1.149904786 1.297114339 CORE 27 o O 0.9480 27 O1 6.248891998 3.645821285 3.596675645 CORE 28 o O 0.9480 28 O1 5.904466726 0.769864106 8.536541238 CORE 29 o O 0.9480 29 O1 5.574027823 3.265780605 6.144828715 CORE 30 o O 0.9480 30 O1 1.747862973 4.221968892 1.251038731 CORE 31 o O 0.9480 31 O1 2.078301876 1.726052393 3.642751253 CORE 32 o O 0.9480 32 H1 -0.173294674 0.688653891 8.008322377 CORE 33 h H 0.4180 33 H1 2.828308603 3.184570390 6.673047576 CORE 34 h H 0.4180 34 H1 7.825624373 4.303179107 1.779257591 CORE 35 h H 0.4180 35 H1 4.824021096 1.807262608 3.114532393 CORE 36 h H 0.4180 36 H1 3.862031404 2.460082214 8.606054134 CORE 37 h H 0.4180 37 H1 7.616463145 4.955998713 6.075315818 CORE 38 h H 0.4180 38 H1 3.790298296 2.531750784 1.181525834 CORE 39 h H 0.4180 39 H1 0.035866554 0.035834285 3.712264150 CORE 40 h H 0.4180 40 H1 3.464573662 0.538555842 7.571892164 CORE 41 h H 0.4180 41 H1 -0.809559733 3.034472341 7.109477788 CORE 42 h H 0.4180 42 H1 4.187756038 4.453277156 2.215687804 CORE 43 h H 0.4180 43 H1 8.461889432 1.957360657 2.678102180 CORE 44 h H 0.4180 44 H1 7.244397227 4.345686398 8.602720079 CORE 45 h H 0.4180 45 H1 4.234097321 1.849769899 6.078649873 CORE 46 h H 0.4180 46 H1 0.407932472 0.646146600 1.184859889 CORE 47 h H 0.4180 47 H1 3.418232378 3.142063099 3.708930095 CORE 48 h H 0.4180 48 H1 1.379990372 3.861459673 7.493992941 CORE 49 h H 0.4180 49 H1 1.275023557 1.365543174 7.187377011 CORE 50 h H 0.4180 50 H1 6.272339328 1.130373325 2.293587027 CORE 51 h H 0.4180 51 H1 6.377306142 3.626289824 2.600202957 CORE 52 h H 0.4180 52 H1 6.038830995 0.743254775 7.549272455 CORE 53 h H 0.4180 53 H1 5.439663554 3.239171274 7.132097497 CORE 54 h H 0.4180 54 H1 1.613498705 4.248578223 2.238307513 CORE 55 h H 0.4180 55 H1 2.212666145 1.752661724 2.655482471 CORE 56 h H 0.4180 56 end end gibbsite fit -14787.539544 !DATE PBC 8.8058 4.9999 9.8619 90.0000 96.9006 90.0000 Al 0.261204419 2.746089506 9.749273770 CORE 1 al Al 3.0000 1 Al 2.364377570 0.246120910 4.936431805 CORE 2 al Al 3.0000 2 Al 7.359705444 2.253847686 0.041196613 CORE 3 al Al 3.0000 3 Al 5.256532293 4.753816282 4.854038578 CORE 4 al Al 3.0000 4 Al 1.771332549 0.221894504 9.781930586 CORE 5 al Al 3.0000 5 Al 0.854249440 2.721863100 4.903774989 CORE 6 al Al 3.0000 6 Al 5.849577314 4.778042687 0.008539797 CORE 7 al Al 3.0000 7 Al 6.766660423 2.278074091 4.886695394 CORE 8 al Al 3.0000 8 O1 0.432590084 1.137023673 8.643407594 CORE 9 o O 0.9480 9 O1 2.192991904 3.636992269 6.042297982 CORE 10 o O 0.9480 10 O1 7.188319779 3.862913519 1.147062790 CORE 11 o O 0.9480 11 O1 5.427917958 1.362944923 3.748172402 CORE 12 o O 0.9480 12 O1 4.602390122 3.040838001 8.888950994 CORE 13 o O 0.9480 13 O1 6.828974672 0.540869405 5.796754582 CORE 14 o O 0.9480 14 O1 3.018519741 1.959099191 0.901519390 CORE 15 o O 0.9480 15 O1 0.791935191 4.459067787 3.993715802 CORE 16 o O 0.9480 16 O1 3.294388998 0.465881511 8.553860456 CORE 17 o O 0.9480 17 O1 -0.668807009 2.965850107 6.131845119 CORE 18 o O 0.9480 18 O1 4.326520865 4.534055680 1.236609928 CORE 19 o O 0.9480 19 O1 8.289716872 2.034087085 3.658625264 CORE 20 o O 0.9480 20 O1 7.436702339 3.412015728 8.856251614 CORE 21 o O 0.9480 21 O1 3.994662455 0.912047132 5.829453962 CORE 22 o O 0.9480 22 O1 0.184207524 1.587921464 0.934218770 CORE 23 o O 0.9480 23 O1 3.626247408 4.087890060 3.961016422 CORE 24 o O 0.9480 24 O1 1.222383949 3.854838806 8.487644196 CORE 25 o O 0.9480 25 O1 1.403198039 1.354870210 6.198061380 CORE 26 o O 0.9480 26 O1 6.398525914 1.145098386 1.302826188 CORE 27 o O 0.9480 27 O1 6.217711823 3.645066982 3.592409004 CORE 28 o O 0.9480 28 O1 5.871437125 0.775471355 8.538816787 CORE 29 o O 0.9480 29 O1 5.559927669 3.275439951 6.146888789 CORE 30 o O 0.9480 30 O1 1.749472737 4.224465837 1.251653597 CORE 31 o O 0.9480 31 O1 2.060982194 1.724497241 3.643581595 CORE 32 o O 0.9480 32 H1 -0.167595575 0.719965262 7.974109807 CORE 33 h H 0.4180 33 H1 2.793177564 3.219933858 6.711595769 CORE 34 h H 0.4180 34 H1 7.788505438 4.279971930 1.816360577 CORE 35 h H 0.4180 35 H1 4.827732299 1.780003334 3.078874615 CORE 36 h H 0.4180 36 H1 3.832389474 2.470973992 8.612683470 CORE 37 h H 0.4180 37 H1 7.598975320 4.970942588 6.073022105 CORE 38 h H 0.4180 38 H1 3.788520389 2.528963200 1.177786913 CORE 39 h H 0.4180 39 H1 0.021934543 0.028994604 3.717448278 CORE 40 h H 0.4180 40 H1 3.429051314 0.540840485 7.570926643 CORE 41 h H 0.4180 41 H1 -0.803469325 3.040809081 7.114778933 CORE 42 h H 0.4180 42 H1 4.191858549 4.459096706 2.219543741 CORE 43 h H 0.4180 43 H1 8.424379188 1.959128110 2.675691451 CORE 44 h H 0.4180 44 H1 7.228083461 4.352120099 8.598496613 CORE 45 h H 0.4180 45 H1 4.203281333 1.852151503 6.087208962 CORE 46 h H 0.4180 46 H1 0.392826402 0.647817093 1.191973771 CORE 47 h H 0.4180 47 H1 3.417628529 3.147785689 3.703261421 CORE 48 h H 0.4180 48 H1 1.339825829 3.940770657 7.499701180 CORE 49 h H 0.4180 49 H1 1.285756159 1.440802061 7.186004396 CORE 50 h H 0.4180 50 H1 6.281084033 1.059166535 2.290769204 CORE 51 h H 0.4180 51 H1 6.335153704 3.559135130 2.604465988 CORE 52 h H 0.4180 52 H1 6.002716125 0.749514705 7.550308470 CORE 53 h H 0.4180 53 H1 5.428648669 3.249483301 7.135397106 CORE 54 h H 0.4180 54 H1 1.618193738 4.250422487 2.240161914 CORE 55 h H 0.4180 55 H1 2.192261193 1.750453891 2.655073278 CORE 56 h H 0.4180 56 end end gibbsite fit -14787.876100 !DATE PBC 8.8365 4.9803 9.8677 90.0000 96.4458 90.0000 Al 0.339688629 2.732157188 9.765411809 CORE 1 al Al 3.0000 1 Al 2.416873004 0.241999393 4.942623263 CORE 2 al Al 3.0000 2 Al 7.389012803 2.248158401 0.039944905 CORE 3 al Al 3.0000 3 Al 5.311828428 4.738316196 4.862733452 CORE 4 al Al 3.0000 4 Al 1.862067083 0.218694990 9.790313678 CORE 5 al Al 3.0000 5 Al 0.894494550 2.708852785 4.917721394 CORE 6 al Al 3.0000 6 Al 5.866634349 4.761620600 0.015043037 CORE 7 al Al 3.0000 7 Al 6.834206882 2.271462805 4.887635320 CORE 8 al Al 3.0000 8 O1 0.528084650 1.137081011 8.639975539 CORE 9 o O 0.9480 9 O1 2.228476982 3.627238806 6.068059533 CORE 10 o O 0.9480 10 O1 7.200616782 3.843234578 1.165381176 CORE 11 o O 0.9480 11 O1 5.500224449 1.353076783 3.737297181 CORE 12 o O 0.9480 12 O1 4.703035901 3.026967741 8.908852639 CORE 13 o O 0.9480 13 O1 6.890016247 0.536809947 5.799182432 CORE 14 o O 0.9480 14 O1 3.025665531 1.953347848 0.896504075 CORE 15 o O 0.9480 15 O1 0.838685185 4.443505643 4.006174282 CORE 16 o O 0.9480 16 O1 3.389890963 0.466497272 8.566353557 CORE 17 o O 0.9480 17 O1 -0.633329331 2.956655067 6.141681515 CORE 18 o O 0.9480 18 O1 4.338810468 4.513818318 1.239003158 CORE 19 o O 0.9480 19 O1 8.362030762 2.023660523 3.663675200 CORE 20 o O 0.9480 20 O1 7.545562638 3.417265149 8.886400095 CORE 21 o O 0.9480 21 O1 4.047489510 0.927107354 5.821634977 CORE 22 o O 0.9480 22 O1 0.183138794 1.563050441 0.918956620 CORE 23 o O 0.9480 23 O1 3.681211922 4.053208236 3.983721738 CORE 24 o O 0.9480 24 O1 1.292507398 3.841031460 8.495017207 CORE 25 o O 0.9480 25 O1 1.464054235 1.350873665 6.213017865 CORE 26 o O 0.9480 26 O1 6.436194034 1.139284130 1.310339508 CORE 27 o O 0.9480 27 O1 6.264647197 3.629441925 3.592338849 CORE 28 o O 0.9480 28 O1 5.962993010 0.773298356 8.554408147 CORE 29 o O 0.9480 29 O1 5.630059137 3.263456151 6.153626925 CORE 30 o O 0.9480 30 O1 1.765708422 4.207017234 1.250948568 CORE 31 o O 0.9480 31 O1 2.098642294 1.716859439 3.651729790 CORE 32 o O 0.9480 32 H1 -0.045378251 0.733636894 7.932811181 CORE 33 h H 0.4180 33 H1 2.801939883 3.223794689 6.775223891 CORE 34 h H 0.4180 34 H1 7.774079682 4.246678696 1.872545534 CORE 35 h H 0.4180 35 H1 4.926761549 1.756520901 3.030132824 CORE 36 h H 0.4180 36 H1 3.938569708 2.452643405 8.628784733 CORE 37 h H 0.4180 37 H1 7.654482440 4.942801200 6.079250339 CORE 38 h H 0.4180 38 H1 3.790131724 2.527672185 1.176571981 CORE 39 h H 0.4180 39 H1 0.074218992 0.037514390 3.726106376 CORE 40 h H 0.4180 40 H1 3.523071403 0.540413508 7.582181765 CORE 41 h H 0.4180 41 H1 -0.766509770 3.030571303 7.125853307 CORE 42 h H 0.4180 42 H1 4.205630029 4.439902082 2.223174950 CORE 43 h H 0.4180 43 H1 8.495211202 1.949744287 2.679503407 CORE 44 h H 0.4180 44 H1 7.346948223 4.367551154 8.651144880 CORE 45 h H 0.4180 45 H1 4.246103925 1.877393359 6.056890192 CORE 46 h H 0.4180 46 H1 0.381753209 0.612764436 1.154211834 CORE 47 h H 0.4180 47 H1 3.482597507 3.102922231 3.748466523 CORE 48 h H 0.4180 48 H1 1.355820806 3.926578328 7.502772681 CORE 49 h H 0.4180 49 H1 1.400740827 1.436420533 7.205262391 CORE 50 h H 0.4180 50 H1 6.372880626 1.053737262 2.302584034 CORE 51 h H 0.4180 51 H1 6.327960605 3.543895057 2.600094323 CORE 52 h H 0.4180 52 H1 6.081732989 0.743446232 7.563869017 CORE 53 h H 0.4180 53 H1 5.511319158 3.233604027 7.144166055 CORE 54 h H 0.4180 54 H1 1.646968442 4.236869358 2.241487698 CORE 55 h H 0.4180 55 H1 2.217382274 1.746711563 2.661190660 CORE 56 h H 0.4180 56 end end gibbsite fit -14788.061643 !DATE PBC 8.8418 4.9784 9.8484 90.0000 95.9911 90.0000 Al 0.421555238 2.727255069 9.753940348 CORE 1 al Al 3.0000 1 Al 2.457472225 0.238068710 4.937986686 CORE 2 al Al 3.0000 2 Al 7.392342494 2.251117648 0.040677675 CORE 3 al Al 3.0000 3 Al 5.356425507 4.740304007 4.856631337 CORE 4 al Al 3.0000 4 Al 1.944720950 0.213671428 9.774051171 CORE 5 al Al 3.0000 5 Al 0.934306513 2.702857786 4.917875863 CORE 6 al Al 3.0000 6 Al 5.869176782 4.764701289 0.020566852 CORE 7 al Al 3.0000 7 Al 6.879591219 2.275514931 4.876742159 CORE 8 al Al 3.0000 8 O1 0.606940807 1.132796670 8.626377552 CORE 9 o O 0.9480 9 O1 2.272086655 3.621983028 6.065549482 CORE 10 o O 0.9480 10 O1 7.206956925 3.845576047 1.168240470 CORE 11 o O 0.9480 11 O1 5.541811077 1.356389689 3.729068541 CORE 12 o O 0.9480 12 O1 4.787453441 3.030551942 8.901263745 CORE 13 o O 0.9480 13 O1 6.933393157 0.541365584 5.790663289 CORE 14 o O 0.9480 14 O1 3.026444291 1.947820775 0.893354277 CORE 15 o O 0.9480 15 O1 0.880504575 4.437007133 4.003954734 CORE 16 o O 0.9480 16 O1 3.475423856 0.467558757 8.556359970 CORE 17 o O 0.9480 17 O1 -0.596396393 2.956745115 6.135567064 CORE 18 o O 0.9480 18 O1 4.338473876 4.510813960 1.238258053 CORE 19 o O 0.9480 19 O1 8.410294125 2.021627602 3.659050958 CORE 20 o O 0.9480 20 O1 7.632189074 3.420092007 8.880327313 CORE 21 o O 0.9480 21 O1 4.088657524 0.930905648 5.811599721 CORE 22 o O 0.9480 22 O1 0.181708658 1.558280710 0.914290710 CORE 23 o O 0.9480 23 O1 3.725240208 4.047467069 3.983018301 CORE 24 o O 0.9480 24 O1 1.375048157 3.833302703 8.481335693 CORE 25 o O 0.9480 25 O1 1.503979306 1.344116344 6.210591341 CORE 26 o O 0.9480 26 O1 6.438849575 1.145070014 1.313282330 CORE 27 o O 0.9480 27 O1 6.309918426 3.634256373 3.584026682 CORE 28 o O 0.9480 28 O1 6.045992713 0.776199556 8.547025104 CORE 29 o O 0.9480 29 O1 5.674853885 3.265385915 6.144901930 CORE 30 o O 0.9480 30 O1 1.767905019 4.202173161 1.247592919 CORE 31 o O 0.9480 31 O1 2.139043847 1.712986802 3.649716093 CORE 32 o O 0.9480 32 H1 0.028158569 0.745477396 7.923719247 CORE 33 h H 0.4180 33 H1 2.850868894 3.234663755 6.768207787 CORE 34 h H 0.4180 34 H1 7.785739163 4.232895321 1.870898775 CORE 35 h H 0.4180 35 H1 4.963028838 1.743708962 3.026410236 CORE 36 h H 0.4180 36 H1 4.021365140 2.459989212 8.615757101 CORE 37 h H 0.4180 37 H1 7.699481458 4.949175571 6.076169933 CORE 38 h H 0.4180 38 H1 3.792532592 2.518383505 1.178860922 CORE 39 h H 0.4180 39 H1 0.114416274 0.029197146 3.718448090 CORE 40 h H 0.4180 40 H1 3.605362199 0.543861640 7.571546217 CORE 41 h H 0.4180 41 H1 -0.726334737 3.033047999 7.120380817 CORE 42 h H 0.4180 42 H1 4.208535533 4.434511077 2.223071806 CORE 43 h H 0.4180 43 H1 8.540232469 1.945324718 2.674237206 CORE 44 h H 0.4180 44 H1 7.432110585 4.370697291 8.648502757 CORE 45 h H 0.4180 45 H1 4.288736013 1.881510932 6.043424277 CORE 46 h H 0.4180 46 H1 0.381787147 0.607675426 1.146115266 CORE 47 h H 0.4180 47 H1 3.525161719 3.096861785 3.751193746 CORE 48 h H 0.4180 48 H1 1.405136207 3.919912406 7.487764580 CORE 49 h H 0.4180 49 H1 1.473891256 1.430726048 7.204162454 CORE 50 h H 0.4180 50 H1 6.408761525 1.058460311 2.306853442 CORE 51 h H 0.4180 51 H1 6.340006476 3.547646670 2.590455569 CORE 52 h H 0.4180 52 H1 6.156197707 0.744512675 7.555418179 CORE 53 h H 0.4180 53 H1 5.564648891 3.233699034 7.136508855 CORE 54 h H 0.4180 54 H1 1.657700025 4.233860042 2.239199843 CORE 55 h H 0.4180 55 H1 2.249248841 1.744673683 2.658109168 CORE 56 h H 0.4180 56 end end gibbsite fit -14788.301560 !DATE PBC 8.8236 4.9847 9.8223 90.0000 96.0573 90.0000 Al 0.410579130 2.726287716 9.725281856 CORE 1 al Al 3.0000 1 Al 2.446501634 0.233943134 4.925943847 CORE 2 al Al 3.0000 2 Al 7.376551137 2.258401448 0.042201946 CORE 3 al Al 3.0000 3 Al 5.340628633 4.750746030 4.841539955 CORE 4 al Al 3.0000 4 Al 1.928861460 0.211048482 9.744634680 CORE 5 al Al 3.0000 5 Al 0.928219304 2.703393064 4.906591023 CORE 6 al Al 3.0000 6 Al 5.858268807 4.773640683 0.022849122 CORE 7 al Al 3.0000 7 Al 6.858910962 2.281296101 4.860892779 CORE 8 al Al 3.0000 8 O1 0.603551167 1.139540454 8.588122630 CORE 9 o O 0.9480 9 O1 2.253529597 3.631885036 6.063103073 CORE 10 o O 0.9480 10 O1 7.183579099 3.845148710 1.179361172 CORE 11 o O 0.9480 11 O1 5.533600670 1.352804128 3.704380729 CORE 12 o O 0.9480 12 O1 4.765704037 3.039462317 8.874083068 CORE 13 o O 0.9480 13 O1 6.914991362 0.547117735 5.777142635 CORE 14 o O 0.9480 14 O1 3.021426229 1.945226847 0.893400734 CORE 15 o O 0.9480 15 O1 0.872138904 4.437571429 3.990341167 CORE 16 o O 0.9480 16 O1 3.461315130 0.471008564 8.533704837 CORE 17 o O 0.9480 17 O1 -0.604234366 2.963353146 6.117520866 CORE 18 o O 0.9480 18 O1 4.325815137 4.513680600 1.233778965 CORE 19 o O 0.9480 19 O1 8.391364632 2.021336018 3.649962936 CORE 20 o O 0.9480 20 O1 7.604308660 3.424989081 8.851900977 CORE 21 o O 0.9480 21 O1 4.076386740 0.932644499 5.799324726 CORE 22 o O 0.9480 22 O1 0.182821606 1.559700083 0.915582825 CORE 23 o O 0.9480 23 O1 3.710743527 4.052044665 3.968159076 CORE 24 o O 0.9480 24 O1 1.358281488 3.838896239 8.449298577 CORE 25 o O 0.9480 25 O1 1.498799276 1.346551657 6.201927126 CORE 26 o O 0.9480 26 O1 6.428848779 1.145792925 1.318185225 CORE 27 o O 0.9480 27 O1 6.288330991 3.638137507 3.565556676 CORE 28 o O 0.9480 28 O1 6.023888118 0.781401349 8.525319418 CORE 29 o O 0.9480 29 O1 5.656807282 3.273745931 6.125906285 CORE 30 o O 0.9480 30 O1 1.763242149 4.203287816 1.242164384 CORE 31 o O 0.9480 31 O1 2.130322985 1.710943234 3.641577517 CORE 32 o O 0.9480 32 H1 0.045042396 0.776679115 7.851003657 CORE 33 h H 0.4180 33 H1 2.812038368 3.269023697 6.800222046 CORE 34 h H 0.4180 34 H1 7.742087870 4.208010049 1.916480145 CORE 35 h H 0.4180 35 H1 4.975091899 1.715665467 2.967261756 CORE 36 h H 0.4180 36 H1 3.999987050 2.469105144 8.582322938 CORE 37 h H 0.4180 37 H1 7.680708350 4.961449726 6.068902765 CORE 38 h H 0.4180 38 H1 3.787143217 2.515584021 1.185160864 CORE 39 h H 0.4180 39 H1 0.106421917 0.023239438 3.698581037 CORE 40 h H 0.4180 40 H1 3.599558909 0.560053618 7.550283933 CORE 41 h H 0.4180 41 H1 -0.742478145 3.052398200 7.100941770 CORE 42 h H 0.4180 42 H1 4.187571358 4.424635546 2.217199869 CORE 43 h H 0.4180 43 H1 8.529608411 1.932290964 2.666542032 CORE 44 h H 0.4180 44 H1 7.412980657 4.374751880 8.613734164 CORE 45 h H 0.4180 45 H1 4.267714743 1.882407298 6.037491539 CORE 46 h H 0.4180 46 H1 0.374149610 0.609937284 1.153749638 CORE 47 h H 0.4180 47 H1 3.519415523 3.102281866 3.729992263 CORE 48 h H 0.4180 48 H1 1.351158741 3.945457484 7.462209195 CORE 49 h H 0.4180 49 H1 1.505922023 1.453112902 7.189016508 CORE 50 h H 0.4180 50 H1 6.435971526 1.039231680 2.305274607 CORE 51 h H 0.4180 51 H1 6.281208244 3.531576262 2.578467294 CORE 52 h H 0.4180 52 H1 6.141939922 0.747633720 7.535317978 CORE 53 h H 0.4180 53 H1 5.538755478 3.239978303 7.115907725 CORE 54 h H 0.4180 54 H1 1.645190345 4.237055444 2.232165824 CORE 55 h H 0.4180 55 H1 2.248374788 1.744710862 2.651576077 CORE 56 h H 0.4180 56 end end gibbsite fit -14788.367821 !DATE PBC 8.8181 4.9888 9.8099 90.0000 95.9627 90.0000 Al 0.428777933 2.725367284 9.715430169 CORE 1 al Al 3.0000 1 Al 2.451665424 0.230961521 4.919850974 CORE 2 al Al 3.0000 2 Al 7.370244627 2.263444243 0.041423926 CORE 3 al Al 3.0000 3 Al 5.347357137 4.757850006 4.837003122 CORE 4 al Al 3.0000 4 Al 1.943265094 0.209247652 9.730806787 CORE 5 al Al 3.0000 5 Al 0.937178262 2.703653416 4.904474356 CORE 6 al Al 3.0000 6 Al 5.855757466 4.779563875 0.026047309 CORE 7 al Al 3.0000 7 Al 6.861844298 2.285158111 4.852379739 CORE 8 al Al 3.0000 8 O1 0.626205383 1.144522143 8.569516441 CORE 9 o O 0.9480 9 O1 2.254237974 3.638927906 6.065764702 CORE 10 o O 0.9480 10 O1 7.172817177 3.844289384 1.187337655 CORE 11 o O 0.9480 11 O1 5.544784587 1.349883621 3.691089393 CORE 12 o O 0.9480 12 O1 4.776800412 3.045168786 8.865716000 CORE 13 o O 0.9480 13 O1 6.921733428 0.550763023 5.769565143 CORE 14 o O 0.9480 14 O1 3.022222148 1.943642741 0.891138096 CORE 15 o O 0.9480 15 O1 0.877289132 4.438048505 3.987288952 CORE 16 o O 0.9480 16 O1 3.477604945 0.470965322 8.523271214 CORE 17 o O 0.9480 17 O1 -0.597161588 2.965371086 6.112009929 CORE 18 o O 0.9480 18 O1 4.321417616 4.517846205 1.233582881 CORE 19 o O 0.9480 19 O1 8.396184148 2.023440441 3.644844166 CORE 20 o O 0.9480 20 O1 7.617409280 3.433011722 8.847346560 CORE 21 o O 0.9480 21 O1 4.081124561 0.938605958 5.787934582 CORE 22 o O 0.9480 22 O1 0.181613281 1.555799805 0.909507535 CORE 23 o O 0.9480 23 O1 3.717897999 4.050205569 3.968919513 CORE 24 o O 0.9480 24 O1 1.368586529 3.842910534 8.436546602 CORE 25 o O 0.9480 25 O1 1.511856828 1.348504770 6.198734541 CORE 26 o O 0.9480 26 O1 6.430436032 1.145900994 1.320307493 CORE 27 o O 0.9480 27 O1 6.287165732 3.640306757 3.558119554 CORE 28 o O 0.9480 28 O1 6.036498293 0.784026193 8.516964241 CORE 29 o O 0.9480 29 O1 5.662035547 3.278431956 6.118316902 CORE 30 o O 0.9480 30 O1 1.762524267 4.204785335 1.239889854 CORE 31 o O 0.9480 31 O1 2.136987013 1.710379571 3.638537194 CORE 32 o O 0.9480 32 H1 0.077221474 0.799437643 7.814853865 CORE 33 h H 0.4180 33 H1 2.803221882 3.293843406 6.820427278 CORE 34 h H 0.4180 34 H1 7.721801086 4.189373884 1.942000231 CORE 35 h H 0.4180 35 H1 4.995800678 1.694968121 2.936426817 CORE 36 h H 0.4180 36 H1 4.010174131 2.476177369 8.575821131 CORE 37 h H 0.4180 37 H1 7.688359709 4.970583133 6.059460012 CORE 38 h H 0.4180 38 H1 3.788848429 2.512634158 1.181032964 CORE 39 h H 0.4180 39 H1 0.110662851 0.018228395 3.697394083 CORE 40 h H 0.4180 40 H1 3.624377329 0.562792285 7.541082061 CORE 41 h H 0.4180 41 H1 8.074156512 3.057198049 7.094199082 CORE 42 h H 0.4180 42 H1 4.174645232 4.426019242 2.215772034 CORE 43 h H 0.4180 43 H1 -0.275133951 1.931613478 2.662655013 CORE 44 h H 0.4180 44 H1 7.439244563 4.388963567 8.618907500 CORE 45 h H 0.4180 45 H1 4.259289277 1.894557803 6.016373643 CORE 46 h H 0.4180 46 H1 0.359777997 0.599847961 1.137946595 CORE 47 h H 0.4180 47 H1 3.539733283 3.094253724 3.740480453 CORE 48 h H 0.4180 48 H1 1.330706100 3.968935170 7.448344450 CORE 49 h H 0.4180 49 H1 1.549737257 1.474529406 7.186936693 CORE 50 h H 0.4180 50 H1 6.468316460 1.019876357 2.308509645 CORE 51 h H 0.4180 51 H1 6.249285304 3.514282121 2.569917403 CORE 52 h H 0.4180 52 H1 6.155257274 0.748789705 7.527228503 CORE 53 h H 0.4180 53 H1 5.543276566 3.243195469 7.108052640 CORE 54 h H 0.4180 54 H1 1.643765286 4.240021822 2.229625592 CORE 55 h H 0.4180 55 H1 2.255745994 1.745616058 2.648801455 CORE 56 h H 0.4180 56 end end gibbsite fit -14788.425688 !DATE PBC 8.8149 4.9925 9.8050 90.0000 95.9912 90.0000 Al 0.425422895 2.725974269 9.711061310 CORE 1 al Al 3.0000 1 Al 2.446916756 0.229737868 4.916109901 CORE 2 al Al 3.0000 2 Al 7.366067666 2.266498533 0.040386164 CORE 3 al Al 3.0000 3 Al 5.344573805 4.762734934 4.835337573 CORE 4 al Al 3.0000 4 Al 1.936544613 0.209114925 9.721762479 CORE 5 al Al 3.0000 5 Al 0.935795038 2.705351325 4.905408733 CORE 6 al Al 3.0000 6 Al 5.854945948 4.783357877 0.029684995 CORE 7 al Al 3.0000 7 Al 6.855695522 2.287121476 4.846038742 CORE 8 al Al 3.0000 8 O1 0.624771772 1.148870341 8.559817666 CORE 9 o O 0.9480 9 O1 2.247567879 3.645106742 6.067353546 CORE 10 o O 0.9480 10 O1 7.166718789 3.843602460 1.191629809 CORE 11 o O 0.9480 11 O1 5.543922681 1.347366060 3.684093928 CORE 12 o O 0.9480 12 O1 4.767610722 3.048860398 8.862940799 CORE 13 o O 0.9480 13 O1 6.919625119 0.552623997 5.764230413 CORE 14 o O 0.9480 14 O1 3.023879839 1.943612403 0.888506675 CORE 15 o O 0.9480 15 O1 0.871865442 4.439848804 3.987217062 CORE 16 o O 0.9480 16 O1 3.473377817 0.470758669 8.517186425 CORE 17 o O 0.9480 17 O1 -0.601038166 2.966995070 6.109984786 CORE 18 o O 0.9480 18 O1 4.318112744 4.521714133 1.234261049 CORE 19 o O 0.9480 19 O1 8.392528726 2.025477732 3.641462688 CORE 20 o O 0.9480 20 O1 7.611434122 3.440024340 8.847698059 CORE 21 o O 0.9480 21 O1 4.075801719 0.943787939 5.779473153 CORE 22 o O 0.9480 22 O1 0.180056438 1.552448461 0.903749415 CORE 23 o O 0.9480 23 O1 3.715688842 4.048684862 3.971974322 CORE 24 o O 0.9480 24 O1 1.362184745 3.843405189 8.430544082 CORE 25 o O 0.9480 25 O1 1.510154906 1.347168788 6.196627130 CORE 26 o O 0.9480 26 O1 6.429305815 1.149067613 1.320903393 CORE 27 o O 0.9480 27 O1 6.281335655 3.645304013 3.554820344 CORE 28 o O 0.9480 28 O1 6.030849678 0.784021452 8.513184020 CORE 29 o O 0.9480 29 O1 5.656386163 3.280257852 6.113987191 CORE 30 o O 0.9480 30 O1 1.760640883 4.208451350 1.238263454 CORE 31 o O 0.9480 31 O1 2.135104397 1.712214949 3.637460283 CORE 32 o O 0.9480 32 H1 0.078042114 0.817934840 7.799085781 CORE 33 h H 0.4180 33 H1 2.794297537 3.314171241 6.828085430 CORE 34 h H 0.4180 34 H1 7.713448446 4.174537962 1.952361693 CORE 35 h H 0.4180 35 H1 4.997193024 1.678301561 2.923362044 CORE 36 h H 0.4180 36 H1 3.999370094 2.480774503 8.578559991 CORE 37 h H 0.4180 37 H1 7.687865747 4.977010904 6.048611220 CORE 38 h H 0.4180 38 H1 3.792120467 2.511698299 1.172887483 CORE 39 h H 0.4180 39 H1 0.103624813 0.015461898 3.702836254 CORE 40 h H 0.4180 40 H1 3.629411185 0.564669874 7.536287442 CORE 41 h H 0.4180 41 H1 8.057824656 3.060906275 7.090883770 CORE 42 h H 0.4180 42 H1 4.162079376 4.427802927 2.215160033 CORE 43 h H 0.4180 43 H1 -0.266334096 1.931566527 2.660563704 CORE 44 h H 0.4180 44 H1 7.442085211 4.400361368 8.628470386 CORE 45 h H 0.4180 45 H1 4.245150630 1.904124967 5.998700826 CORE 46 h H 0.4180 46 H1 0.349405350 0.592111434 1.122977088 CORE 47 h H 0.4180 47 H1 3.546339931 3.088347835 3.752746649 CORE 48 h H 0.4180 48 H1 1.314120822 3.974671940 7.446436254 CORE 49 h H 0.4180 49 H1 1.558218829 1.478435540 7.180734957 CORE 50 h H 0.4180 50 H1 6.477369739 1.017800861 2.305011220 CORE 51 h H 0.4180 51 H1 6.233271732 3.514037262 2.570712517 CORE 52 h H 0.4180 52 H1 6.151487471 0.747660303 7.523699294 CORE 53 h H 0.4180 53 H1 5.535748370 3.243896704 7.103471917 CORE 54 h H 0.4180 54 H1 1.640003090 4.244812498 2.227748180 CORE 55 h H 0.4180 55 H1 2.255742191 1.748576097 2.647975557 CORE 56 h H 0.4180 56 end end gibbsite fit -14788.481735 !DATE PBC 8.8103 4.9931 9.7895 90.0000 95.9407 90.0000 Al 0.434993228 2.725079707 9.696158069 CORE 1 al Al 3.0000 1 Al 2.450332140 0.228532676 4.909243606 CORE 2 al Al 3.0000 2 Al 7.362069161 2.268014355 0.040776381 CORE 3 al Al 3.0000 3 Al 5.346730249 4.764561386 4.827690844 CORE 4 al Al 3.0000 4 Al 1.943024885 0.209317289 9.702738818 CORE 5 al Al 3.0000 5 Al 0.942300482 2.705864320 4.902662857 CORE 6 al Al 3.0000 6 Al 5.854037504 4.783776773 0.034195632 CORE 7 al Al 3.0000 7 Al 6.854761907 2.287229742 4.834271593 CORE 8 al Al 3.0000 8 O1 0.645718281 1.160084310 8.531578188 CORE 9 o O 0.9480 9 O1 2.239607086 3.656631341 6.073823487 CORE 10 o O 0.9480 10 O1 7.151344107 3.833009752 1.205356262 CORE 11 o O 0.9480 11 O1 5.557455303 1.336462721 3.663110963 CORE 12 o O 0.9480 12 O1 4.774245335 3.049883357 8.849789509 CORE 13 o O 0.9480 13 O1 6.921348248 0.553336326 5.755612166 CORE 14 o O 0.9480 14 O1 3.022817054 1.943210705 0.887144941 CORE 15 o O 0.9480 15 O1 0.875714141 4.439757736 3.981322284 CORE 16 o O 0.9480 16 O1 3.483362947 0.469876923 8.502836642 CORE 17 o O 0.9480 17 O1 -0.598037580 2.966423954 6.102565033 CORE 18 o O 0.9480 18 O1 4.313699442 4.523217139 1.234097808 CORE 19 o O 0.9480 19 O1 8.395099968 2.026670108 3.634369417 CORE 20 o O 0.9480 20 O1 7.615758910 3.440962324 8.833290302 CORE 21 o O 0.9480 21 O1 4.079834673 0.944415293 5.772111373 CORE 22 o O 0.9480 22 O1 0.181303479 1.552131738 0.903644148 CORE 23 o O 0.9480 23 O1 3.717227716 4.048678769 3.964823077 CORE 24 o O 0.9480 24 O1 1.356672643 3.849906521 8.410012518 CORE 25 o O 0.9480 25 O1 1.528652724 1.353359490 6.195389157 CORE 26 o O 0.9480 26 O1 6.440389746 1.143187541 1.326921932 CORE 27 o O 0.9480 27 O1 6.268409664 3.639734572 3.541545293 CORE 28 o O 0.9480 28 O1 6.034567569 0.784788177 8.501352166 CORE 29 o O 0.9480 29 O1 5.661026014 3.281335208 6.104049509 CORE 30 o O 0.9480 30 O1 1.762494820 4.208305885 1.235582284 CORE 31 o O 0.9480 31 O1 2.136036375 1.711758854 3.632884941 CORE 32 o O 0.9480 32 H1 0.120957315 0.859487244 7.743169401 CORE 33 h H 0.4180 33 H1 2.764368052 3.356034275 6.862232274 CORE 34 h H 0.4180 34 H1 7.676105073 4.133606818 1.993765049 CORE 35 h H 0.4180 35 H1 5.032694337 1.637059787 2.874702176 CORE 36 h H 0.4180 36 H1 4.006292354 2.481545497 8.562523278 CORE 37 h H 0.4180 37 H1 7.689301229 4.978092528 6.042878397 CORE 38 h H 0.4180 38 H1 3.790770034 2.511548565 1.174411172 CORE 39 h H 0.4180 39 H1 0.107761160 0.015001534 3.694056053 CORE 40 h H 0.4180 40 H1 3.644558093 0.563002399 7.523510244 CORE 41 h H 0.4180 41 H1 8.051035491 3.059549430 7.081891431 CORE 42 h H 0.4180 42 H1 4.152504296 4.430091663 2.213424206 CORE 43 h H 0.4180 43 H1 -0.253973102 1.933544632 2.655043019 CORE 44 h H 0.4180 44 H1 7.455868433 4.400361483 8.606974907 CORE 45 h H 0.4180 45 H1 4.239725150 1.903814452 5.998426769 CORE 46 h H 0.4180 46 H1 0.341193955 0.592732579 1.129959544 CORE 47 h H 0.4180 47 H1 3.557337239 3.089279610 3.738507681 CORE 48 h H 0.4180 48 H1 1.272988726 3.993614794 7.429325840 CORE 49 h H 0.4180 49 H1 1.612336641 1.497067763 7.176075835 CORE 50 h H 0.4180 50 H1 6.524073663 0.999479268 2.307608610 CORE 51 h H 0.4180 51 H1 6.184725747 3.496026299 2.560858615 CORE 52 h H 0.4180 52 H1 6.159876059 0.745703674 7.512400068 CORE 53 h H 0.4180 53 H1 5.535717524 3.242250705 7.093001607 CORE 54 h H 0.4180 54 H1 1.637186330 4.247390388 2.224534382 CORE 55 h H 0.4180 55 H1 2.261344864 1.750843357 2.643932843 CORE 56 h H 0.4180 56 end end gibbsite fit -14788.484632 !DATE PBC 8.8101 4.9931 9.7895 90.0000 95.9544 90.0000 Al 0.432634469 2.725071085 9.695701702 CORE 1 al Al 3.0000 1 Al 2.449132875 0.228520184 4.909300218 CORE 2 al Al 3.0000 2 Al 7.361970775 2.268030717 0.040966245 CORE 3 al Al 3.0000 3 Al 5.345472369 4.764581618 4.827367729 CORE 4 al Al 3.0000 4 Al 1.940645734 0.209445727 9.702345645 CORE 5 al Al 3.0000 5 Al 0.941121610 2.705996628 4.902656274 CORE 6 al Al 3.0000 6 Al 5.853959510 4.783656075 0.034322301 CORE 7 al Al 3.0000 7 Al 6.853483634 2.287105174 4.834011672 CORE 8 al Al 3.0000 8 O1 0.643585581 1.160226165 8.531172701 CORE 9 o O 0.9480 9 O1 2.238181764 3.656777066 6.073829219 CORE 10 o O 0.9480 10 O1 7.151019663 3.832875637 1.205495246 CORE 11 o O 0.9480 11 O1 5.556423480 1.336324736 3.662838728 CORE 12 o O 0.9480 12 O1 4.772031443 3.049919845 8.849418182 CORE 13 o O 0.9480 13 O1 6.919876424 0.553368944 5.755583737 CORE 14 o O 0.9480 14 O1 3.022573801 1.943181957 0.887249764 CORE 15 o O 0.9480 15 O1 0.874728821 4.439732858 3.981084209 CORE 16 o O 0.9480 16 O1 3.480990169 0.469604449 8.502518969 CORE 17 o O 0.9480 17 O1 -0.599222824 2.966155350 6.102482951 CORE 18 o O 0.9480 18 O1 4.313615076 4.523497353 1.234148977 CORE 19 o O 0.9480 19 O1 8.393828068 2.026946452 3.634184996 CORE 20 o O 0.9480 20 O1 7.613218821 3.441070617 8.833125506 CORE 21 o O 0.9480 21 O1 4.078689045 0.944519715 5.771876413 CORE 22 o O 0.9480 22 O1 0.181386423 1.552031186 0.903542440 CORE 23 o O 0.9480 23 O1 3.715916199 4.048582087 3.964791533 CORE 24 o O 0.9480 24 O1 1.354326210 3.849934532 8.409739375 CORE 25 o O 0.9480 25 O1 1.527441134 1.353383631 6.195262545 CORE 26 o O 0.9480 26 O1 6.440279034 1.143167270 1.326928571 CORE 27 o O 0.9480 27 O1 6.267164110 3.639718171 3.541405402 CORE 28 o O 0.9480 28 O1 6.032136059 0.784751684 8.501296033 CORE 29 o O 0.9480 29 O1 5.659771808 3.281302585 6.103705887 CORE 30 o O 0.9480 30 O1 1.762469185 4.208350119 1.235371914 CORE 31 o O 0.9480 31 O1 2.134833437 1.711799217 3.632962060 CORE 32 o O 0.9480 32 H1 0.119985901 0.859759166 7.743233788 CORE 33 h H 0.4180 33 H1 2.761781444 3.356310067 6.861768131 CORE 34 h H 0.4180 34 H1 7.674619343 4.133342636 1.993434158 CORE 35 h H 0.4180 35 H1 5.032823801 1.636791735 2.874899815 CORE 36 h H 0.4180 36 H1 4.004125084 2.481774562 8.561688043 CORE 37 h H 0.4180 37 H1 7.687782782 4.978325463 6.043313877 CORE 38 h H 0.4180 38 H1 3.790480160 2.511327240 1.174979903 CORE 39 h H 0.4180 39 H1 0.106822462 0.014776339 3.693354070 CORE 40 h H 0.4180 40 H1 3.642709748 0.562799402 7.523320978 CORE 41 h H 0.4180 41 H1 8.049198119 3.059350303 7.081680941 CORE 42 h H 0.4180 42 H1 4.151895497 4.430302400 2.213346968 CORE 43 h H 0.4180 43 H1 -0.254592875 1.933751499 2.654987005 CORE 44 h H 0.4180 44 H1 7.453031151 4.400297754 8.606642003 CORE 45 h H 0.4180 45 H1 4.238876716 1.903746853 5.998359917 CORE 46 h H 0.4180 46 H1 0.341574094 0.592804049 1.130025944 CORE 47 h H 0.4180 47 H1 3.555728529 3.089354950 3.738308030 CORE 48 h H 0.4180 48 H1 1.271625989 3.992962895 7.429631096 CORE 49 h H 0.4180 49 H1 1.610141356 1.496411994 7.175370823 CORE 50 h H 0.4180 50 H1 6.522979256 1.000138907 2.307036850 CORE 51 h H 0.4180 51 H1 6.184463888 3.496689809 2.561297123 CORE 52 h H 0.4180 52 H1 6.157638791 0.745806529 7.512393031 CORE 53 h H 0.4180 53 H1 5.534269075 3.242357430 7.092608888 CORE 54 h H 0.4180 54 H1 1.636966453 4.247295274 2.224274915 CORE 55 h H 0.4180 55 H1 2.260336169 1.750744373 2.644059058 CORE 56 h H 0.4180 56 end end gibbsite fit -14788.485203 !DATE PBC 8.8098 4.9933 9.7886 90.0000 95.9541 90.0000 Al 0.432790485 2.724958984 9.694828502 CORE 1 al Al 3.0000 1 Al 2.449019187 0.228317498 4.908860898 CORE 2 al Al 3.0000 2 Al 7.361604193 2.268323988 0.040964431 CORE 3 al Al 3.0000 3 Al 5.345375491 4.764965475 4.826932036 CORE 4 al Al 3.0000 4 Al 1.940573870 0.209354264 9.701131193 CORE 5 al Al 3.0000 5 Al 0.941235803 2.705995750 4.902558207 CORE 6 al Al 3.0000 6 Al 5.853820808 4.783928709 0.034661740 CORE 7 al Al 3.0000 7 Al 6.853158876 2.287287223 4.833234727 CORE 8 al Al 3.0000 8 O1 0.644249296 1.160715066 8.529528762 CORE 9 o O 0.9480 9 O1 2.237560377 3.657356552 6.074160639 CORE 10 o O 0.9480 10 O1 7.150145383 3.832567907 1.206264172 CORE 11 o O 0.9480 11 O1 5.556834301 1.335926420 3.661632295 CORE 12 o O 0.9480 12 O1 4.771900090 3.050255404 8.848651511 CORE 13 o O 0.9480 13 O1 6.919691928 0.553613917 5.755037890 CORE 14 o O 0.9480 14 O1 3.022494589 1.943027569 0.887141423 CORE 15 o O 0.9480 15 O1 0.874702750 4.439669055 3.980755044 CORE 16 o O 0.9480 16 O1 3.481146404 0.469559435 8.501669255 CORE 17 o O 0.9480 17 O1 -0.599336731 2.966200921 6.102020145 CORE 18 o O 0.9480 18 O1 4.313248274 4.523723538 1.234123678 CORE 19 o O 0.9480 19 O1 8.393731410 2.027082052 3.633772788 CORE 20 o O 0.9480 20 O1 7.613058205 3.441510521 8.832565552 CORE 21 o O 0.9480 21 O1 4.078533813 0.944869035 5.771123849 CORE 22 o O 0.9480 22 O1 0.181336474 1.551772452 0.903227382 CORE 23 o O 0.9480 23 O1 3.715860866 4.048413938 3.964669085 CORE 24 o O 0.9480 24 O1 1.353914677 3.850127333 8.408613096 CORE 25 o O 0.9480 25 O1 1.527894996 1.353485847 6.195076304 CORE 26 o O 0.9480 26 O1 6.440480001 1.143155640 1.327179837 CORE 27 o O 0.9480 27 O1 6.266499682 3.639797126 3.540716629 CORE 28 o O 0.9480 28 O1 6.031914494 0.784916079 8.500655945 CORE 29 o O 0.9480 29 O1 5.659677524 3.281557565 6.103033455 CORE 30 o O 0.9480 30 O1 1.762480184 4.208366894 1.235136989 CORE 31 o O 0.9480 31 O1 2.134717155 1.711725408 3.632759478 CORE 32 o O 0.9480 32 H1 0.121819712 0.862131640 7.739994479 CORE 33 h H 0.4180 33 H1 2.759989961 3.358773126 6.863694921 CORE 34 h H 0.4180 34 H1 7.672574966 4.131151333 1.995798455 CORE 35 h H 0.4180 35 H1 5.034404717 1.634509847 2.872098012 CORE 36 h H 0.4180 36 H1 4.004038590 2.482180138 8.560767699 CORE 37 h H 0.4180 37 H1 7.687553427 4.978821625 6.042921701 CORE 38 h H 0.4180 38 H1 3.790356088 2.511102834 1.175025234 CORE 39 h H 0.4180 39 H1 0.106841251 0.014461348 3.692871232 CORE 40 h H 0.4180 40 H1 3.643548970 0.563012304 7.522589374 CORE 41 h H 0.4180 41 H1 8.048043048 3.059653790 7.081100026 CORE 42 h H 0.4180 42 H1 4.150845708 4.430270669 2.213203559 CORE 43 h H 0.4180 43 H1 -0.253648369 1.933629182 2.654692907 CORE 44 h H 0.4180 44 H1 7.453642375 4.400990582 8.606371904 CORE 45 h H 0.4180 45 H1 4.237949643 1.904349096 5.997317496 CORE 46 h H 0.4180 46 H1 0.340752303 0.592292391 1.129421029 CORE 47 h H 0.4180 47 H1 3.556445036 3.088933877 3.738475438 CORE 48 h H 0.4180 48 H1 1.269198889 3.993983661 7.428757966 CORE 49 h H 0.4180 49 H1 1.612610784 1.497342174 7.174931435 CORE 50 h H 0.4180 50 H1 6.525195789 0.999299312 2.307034968 CORE 51 h H 0.4180 51 H1 6.181783895 3.495940798 2.560861499 CORE 52 h H 0.4180 52 H1 6.157552525 0.745855944 7.511783907 CORE 53 h H 0.4180 53 H1 5.534039492 3.242497431 7.091905494 CORE 54 h H 0.4180 54 H1 1.636842153 4.247427028 2.224009027 CORE 55 h H 0.4180 55 H1 2.260355186 1.750785542 2.643887440 CORE 56 h H 0.4180 56 end end gibbsite fit -14788.485391 !DATE PBC 8.8095 4.9934 9.7874 90.0000 95.9509 90.0000 Al 0.433478406 2.724790766 9.693714311 CORE 1 al Al 3.0000 1 Al 2.449176421 0.228066214 4.908328539 CORE 2 al Al 3.0000 2 Al 7.361268644 2.268658339 0.040980922 CORE 3 al Al 3.0000 3 Al 5.345570628 4.765382892 4.826366695 CORE 4 al Al 3.0000 4 Al 1.941030555 0.209239400 9.699616371 CORE 5 al Al 3.0000 5 Al 0.941624272 2.705963953 4.902426478 CORE 6 al Al 3.0000 6 Al 5.853716494 4.784209705 0.035078862 CORE 7 al Al 3.0000 7 Al 6.853122777 2.287485153 4.832268755 CORE 8 al Al 3.0000 8 O1 0.645603023 1.161302025 8.527477062 CORE 9 o O 0.9480 9 O1 2.237051804 3.658026578 6.074565788 CORE 10 o O 0.9480 10 O1 7.149144026 3.832147080 1.207218172 CORE 11 o O 0.9480 11 O1 5.557695246 1.335422527 3.660129445 CORE 12 o O 0.9480 12 O1 4.772328574 3.050615474 8.847688047 CORE 13 o O 0.9480 13 O1 6.919792000 0.553890921 5.754354803 CORE 14 o O 0.9480 14 O1 3.022418476 1.942833632 0.887007186 CORE 15 o O 0.9480 15 O1 0.874955049 4.439558185 3.980340430 CORE 16 o O 0.9480 16 O1 3.481889478 0.469490551 8.500593942 CORE 17 o O 0.9480 17 O1 -0.599234651 2.966215103 6.101448908 CORE 18 o O 0.9480 18 O1 4.312857571 4.523958555 1.234101291 CORE 19 o O 0.9480 19 O1 8.393981701 2.027234002 3.633246325 CORE 20 o O 0.9480 20 O1 7.613464152 3.442018352 8.831852646 CORE 21 o O 0.9480 21 O1 4.078656421 0.945293799 5.770190204 CORE 22 o O 0.9480 22 O1 0.181282897 1.551430754 0.902842587 CORE 23 o O 0.9480 23 O1 3.716090628 4.048155306 3.964505030 CORE 24 o O 0.9480 24 O1 1.353837447 3.850379011 8.407161228 CORE 25 o O 0.9480 25 O1 1.528817380 1.353654458 6.194881622 CORE 26 o O 0.9480 26 O1 6.440909603 1.143070095 1.327534005 CORE 27 o O 0.9480 27 O1 6.265929669 3.639794648 3.539813611 CORE 28 o O 0.9480 28 O1 6.032200324 0.785114290 8.499847351 CORE 29 o O 0.9480 29 O1 5.659920250 3.281838842 6.102195499 CORE 30 o O 0.9480 30 O1 1.762546725 4.208334816 1.234847882 CORE 31 o O 0.9480 31 O1 2.134826799 1.711610263 3.632499735 CORE 32 o O 0.9480 32 H1 0.124661821 0.864970956 7.736015837 CORE 33 h H 0.4180 33 H1 2.757993006 3.361695509 6.866027013 CORE 34 h H 0.4180 34 H1 7.670085228 4.128478149 1.998679396 CORE 35 h H 0.4180 35 H1 5.036754044 1.631753597 2.868668220 CORE 36 h H 0.4180 36 H1 4.004543318 2.482619873 8.559553060 CORE 37 h H 0.4180 37 H1 7.687577256 4.979344425 6.042489790 CORE 38 h H 0.4180 38 H1 3.790203731 2.510829233 1.175142173 CORE 39 h H 0.4180 39 H1 0.107169793 0.014104680 3.692205443 CORE 40 h H 0.4180 40 H1 3.645070612 0.563227200 7.521653819 CORE 41 h H 0.4180 41 H1 8.047049962 3.059951753 7.080389030 CORE 42 h H 0.4180 42 H1 4.149676437 4.430221906 2.213041414 CORE 43 h H 0.4180 43 H1 -0.252302913 1.933497353 2.654306203 CORE 44 h H 0.4180 44 H1 7.454946818 4.401794963 8.606016563 CORE 45 h H 0.4180 45 H1 4.237173756 1.905070411 5.996026287 CORE 46 h H 0.4180 46 H1 0.339800232 0.591654142 1.128678670 CORE 47 h H 0.4180 47 H1 3.557573293 3.088378695 3.738668946 CORE 48 h H 0.4180 48 H1 1.266447662 3.995319104 7.427642250 CORE 49 h H 0.4180 49 H1 1.616207165 1.498594551 7.174400600 CORE 50 h H 0.4180 50 H1 6.528299387 0.998130001 2.307052983 CORE 51 h H 0.4180 51 H1 6.178539885 3.494854554 2.560294633 CORE 52 h H 0.4180 52 H1 6.157989079 0.745910274 7.511006115 CORE 53 h H 0.4180 53 H1 5.534131494 3.242634827 7.091036735 CORE 54 h H 0.4180 54 H1 1.636757970 4.247538831 2.223689118 CORE 55 h H 0.4180 55 H1 2.260615555 1.750814278 2.643658498 CORE 56 h H 0.4180 56 end end gdis-0.90/models/BUG_MS1.gin0000644000175000017500000007145407717054760014135 0ustar seanseansingle library gdis.lib name 1FUF cartesian O core -9.56100 11.31800 10.67500 C core -9.28200 12.61700 11.18800 C core -9.54600 12.73500 12.67100 O core -10.95200 12.50200 12.92800 C core -8.81400 11.74400 13.56200 O core -7.53400 12.25400 13.90600 C core -9.71400 11.69900 14.78800 O core -9.49400 12.83200 15.59600 C core -11.10200 11.77200 14.14200 N core -11.62800 10.45700 13.79400 C core -11.84900 9.96000 12.52400 N core -12.32000 8.74600 12.53000 C core -12.42800 8.42500 13.87500 C core -12.88600 7.23100 14.49500 O core -13.34600 6.22800 13.96300 N core -12.79100 7.30500 15.87700 C core -12.34800 8.40700 16.57500 N core -12.36100 8.31700 17.91200 N core -11.92500 9.52900 16.00200 C core -11.99300 9.46500 14.66400 P core -6.32000 11.25200 14.17100 O core -5.10700 12.11100 14.30500 O core -6.31100 10.12100 13.21200 O core -6.64100 10.63600 15.59400 C core -6.50400 11.40000 16.78400 C core -6.90100 10.56700 17.97600 O core -8.30700 10.19300 17.87800 C core -6.20300 9.23000 18.09000 O core -4.87200 9.35300 18.58100 C core -7.14700 8.50300 19.03700 O core -7.11500 9.03800 20.36000 C core -8.49100 8.88900 18.41800 N core -8.88500 7.99300 17.33000 C core -8.79300 8.22100 15.97200 N core -9.25200 7.23400 15.25300 C core -9.67800 6.29500 16.19100 C core -10.26100 5.02400 16.01500 O core -10.55000 4.45800 14.95800 N core -10.49900 4.39100 17.23900 C core -10.19800 4.91500 18.47800 N core -10.44100 4.12600 19.55900 N core -9.67700 6.11000 18.65500 C core -9.43900 6.74200 17.47800 P core -3.74500 8.33500 18.05400 O core -2.50400 8.83200 18.71000 O core -3.81100 8.23200 16.57200 O core -4.17800 6.94200 18.67100 C core -4.28800 6.80000 20.07100 C core -4.95300 5.50700 20.40500 O core -6.21300 5.43400 19.70200 C core -4.23100 4.25100 19.94900 O core -3.23100 3.93700 20.91100 C core -5.36800 3.23800 19.96700 O core -5.76500 2.83600 21.25800 C core -6.51900 4.08300 19.43100 N core -6.75600 3.92800 17.99000 C core -7.46900 2.80500 17.58800 O core -7.86100 1.96000 18.36700 N core -7.71200 2.72100 16.24200 C core -7.32500 3.61600 15.28700 O core -7.59400 3.39600 14.10200 C core -6.58400 4.75000 15.78300 C core -6.32500 4.85300 17.08300 P core -2.02900 2.95400 20.53600 O core -1.23700 2.80800 21.81200 O core -1.34800 3.36800 19.30700 O core -2.75700 1.56500 20.28400 C core -3.30400 0.84100 21.38000 C core -3.94100 -0.44300 20.89600 O core -5.03500 -0.12100 20.00700 C core -3.06900 -1.34100 20.04900 O core -2.17000 -2.08000 20.86500 C core -4.10700 -2.22100 19.36400 O core -4.61300 -3.24100 20.21600 C core -5.21400 -1.19600 19.08900 N core -5.18000 -0.63900 17.73300 C core -4.65900 0.55900 17.28300 N core -4.87500 0.77700 15.99400 C core -5.55600 -0.36000 15.57800 C core -6.08700 -0.74800 14.33800 N core -6.04100 -0.00300 13.24300 N core -6.70000 -1.95300 14.26700 C core -6.78000 -2.69700 15.37400 N core -6.33800 -2.43200 16.59300 C core -5.73300 -1.24300 16.63000 P core -0.70100 -2.39500 20.32600 O core 0.01100 -3.07800 21.45300 O core -0.07900 -1.21400 19.65500 O core -0.90700 -3.45700 19.14800 C core -1.41300 -4.77300 19.41000 C core -1.79500 -5.44800 18.11000 O core -2.88400 -4.70500 17.50800 C core -0.73300 -5.46400 17.03100 O core 0.11400 -6.59600 17.20200 C core -1.57800 -5.66700 15.77200 O core -1.97500 -7.01000 15.59500 C core -2.84500 -4.86900 16.10300 N core -2.84200 -3.55600 15.43600 C core -3.41200 -3.49700 14.17600 O core -3.92300 -4.46900 13.63100 N core -3.34500 -2.27000 13.55500 C core -2.76200 -1.10900 14.03800 O core -2.74800 -0.10000 13.31300 C core -2.19300 -1.22900 15.36700 C core -2.25900 -2.42400 16.01100 P core 1.65300 -6.40800 17.56500 O core 2.21300 -7.77700 17.84700 O core 1.73100 -5.37300 18.61100 O core 2.39700 -5.65600 16.35700 C core 2.46200 -6.10900 15.00600 C core 3.65900 -5.44400 14.30100 O core 3.66500 -3.99400 14.35900 C core 5.05000 -5.88200 14.77700 O core 5.67300 -6.34800 13.58400 C core 5.81500 -4.58700 15.05400 O core 7.17700 -4.57500 14.69400 C core 5.00600 -3.58700 14.22500 N core 5.17000 -2.16800 14.54800 C core 5.58200 -1.31500 13.51900 O core 5.72600 -1.68200 12.34200 N core 5.80100 -0.01600 13.91200 C core 5.63400 0.49600 15.19500 O core 5.91500 1.67400 15.42100 C core 5.17100 -0.43800 16.16100 C core 4.95500 -1.70000 15.81800 P core 6.12300 -7.86000 13.41500 O core 7.21100 -8.08000 14.39500 O core 6.40200 -7.99100 11.96400 O core 4.83600 -8.65600 13.89500 C core 3.79000 -9.08800 13.00000 C core 3.11800 -10.29700 13.60600 O core 4.17600 -11.21100 13.90000 C core 2.35800 -10.01100 14.90400 O core 1.07600 -10.60100 14.74300 C core 3.47800 -10.46700 15.79600 O core 2.76000 -10.30500 17.01700 C core 4.01800 -11.71800 15.19200 N core 5.32900 -11.91100 15.82000 C core 5.42600 -12.95100 16.72100 O core 4.45600 -13.62200 17.06200 N core 6.68700 -13.17900 17.20700 C core 7.83200 -12.47200 16.89900 O core 8.92000 -12.89500 17.29100 C core 7.63400 -11.37100 15.99800 C core 6.41800 -11.13400 15.50400 P core -0.20500 -9.77500 14.27400 O core -0.02300 -8.30800 14.47500 O core -1.34300 -10.45400 14.88000 O core -0.25900 -10.04700 12.72400 C core -0.62700 -11.31700 12.22900 C core -1.05900 -11.18000 10.79900 O core -2.28900 -10.39800 10.76800 C core -0.10200 -10.38800 9.91500 O core 0.99800 -11.18200 9.43600 C core -1.04000 -9.93800 8.80600 O core -1.37400 -11.00900 7.92900 C core -2.28800 -9.56300 9.61200 N core -2.24800 -8.14200 10.02600 C core -2.46500 -7.16200 9.04400 O core -2.77100 -7.52700 7.89200 N core -2.31800 -5.85900 9.36300 C core -1.96900 -5.50800 10.59800 N core -1.77300 -4.21100 10.84700 C core -1.79200 -6.47800 11.63800 C core -1.95000 -7.77400 11.31000 P core 2.39400 -10.46900 9.06800 O core 3.41700 -11.52200 8.90700 O core 2.64900 -9.34100 10.01000 O core 2.18500 -9.77200 7.63400 C core 1.87700 -10.52800 6.48200 C core 1.46100 -9.60600 5.34900 O core 0.31400 -8.82400 5.78000 C core 2.44100 -8.51900 4.92400 O core 3.49400 -9.00200 4.09200 C core 1.51200 -7.60400 4.14400 O core 1.14300 -8.19200 2.91000 C core 0.29400 -7.58000 5.06600 N core 0.40400 -6.45000 5.99400 C core 0.67600 -6.46300 7.33900 N core 0.81400 -5.26200 7.84900 C core 0.58900 -4.39800 6.76900 C core 0.63100 -2.97100 6.69500 O core 0.90800 -2.16000 7.59300 N core 0.34200 -2.50700 5.39600 C core 0.09000 -3.32900 4.30900 N core -0.12600 -2.72400 3.10600 N core 0.05600 -4.66000 4.38300 C core 0.31100 -5.11300 5.62700 P core 4.90000 -8.22800 4.04200 O core 5.78000 -8.97900 3.11300 O core 5.38200 -7.92300 5.40200 O core 4.54300 -6.82100 3.38200 C core 4.05300 -6.73200 2.05800 C core 3.95000 -5.28000 1.63900 O core 2.96200 -4.59600 2.45400 C core 5.19700 -4.43300 1.81500 O core 6.09100 -4.62800 0.72100 C core 4.60300 -3.03000 1.78600 O core 4.18900 -2.61600 0.49900 C core 3.32600 -3.23400 2.58300 N core 3.53000 -2.91200 3.98600 C core 3.62700 -3.76800 5.05200 N core 3.77400 -3.14900 6.19600 C core 3.78900 -1.79900 5.85300 C core 3.89400 -0.65900 6.67300 O core 3.96300 -0.62200 7.91200 N core 3.88000 0.53200 5.92200 C core 3.74800 0.59200 4.54200 N core 3.75700 1.82900 3.97600 N core 3.62000 -0.48200 3.77200 C core 3.65400 -1.63500 4.49500 P core 7.66300 -4.74700 0.99200 O core 8.25700 -5.18400 -0.31800 O core 7.87500 -5.57700 2.23700 O core 8.15200 -3.24900 1.24000 C core 8.07000 -2.30900 0.17100 C core 8.10600 -0.91100 0.69400 O core 6.95700 -0.69200 1.54800 C core 9.26800 -0.56400 1.58600 O core 10.44100 -0.38000 0.80900 C core 8.73100 0.68500 2.26800 O core 8.70400 1.79400 1.37600 C core 7.29100 0.25300 2.55200 N core 7.16900 -0.40800 3.85800 C core 7.12600 0.40200 4.97300 O core 7.17800 1.61000 4.90100 N core 7.04600 -0.26300 6.17900 C core 7.03900 -1.62900 6.36100 O core 6.92000 -2.07900 7.48700 C core 7.09900 -2.39700 5.15800 C core 7.14100 -1.77100 3.97100 P core 11.87900 -0.79600 1.42100 O core 12.87300 -0.74400 0.32800 O core 11.73600 -2.06100 2.22100 O core 12.18900 0.40700 2.40900 C core 12.17900 1.74900 1.95100 C core 12.17700 2.70700 3.12800 O core 10.93800 2.54800 3.85700 C core 13.24400 2.48400 4.18700 O core 14.48000 3.04500 3.78000 C core 12.62800 3.18700 5.39200 O core 12.70300 4.60100 5.32800 C core 11.16000 2.78100 5.24600 N core 10.81000 1.55800 5.97400 C core 10.62700 0.28700 5.48300 N core 10.30100 -0.59300 6.40000 C core 10.26900 0.14900 7.57000 C core 9.97900 -0.20000 8.88500 N core 9.60400 -1.42900 9.25600 N core 10.06400 0.76500 9.82100 C core 10.40000 2.01000 9.44100 N core 10.67700 2.46600 8.22200 C core 10.59000 1.47200 7.32300 P core 15.86200 2.50700 4.41100 O core 16.97500 3.17000 3.66300 O core 15.86500 1.03400 4.55900 O core 15.82300 3.06700 5.89900 C core 16.02300 4.42900 6.16800 C core 15.92800 4.68300 7.65400 O core 14.60100 4.35400 8.12200 C core 16.83300 3.84100 8.54300 O core 18.17700 4.31800 8.55200 C core 16.16200 4.02400 9.88300 C core 14.68600 3.93100 9.49500 N core 14.19500 2.53800 9.58600 C core 13.76800 2.03900 10.84500 O core 13.79800 2.78800 11.83500 N core 13.33900 0.74800 10.93500 C core 13.34000 -0.02600 9.84700 N core 12.94400 -1.29900 9.96500 C core 13.75400 0.46600 8.58200 C core 14.16400 1.73500 8.49000 P core 19.38200 3.28500 8.79200 O core 20.63800 4.07800 8.72100 O core 19.23400 2.07900 7.94800 O core 19.16000 2.84400 10.30300 C core 19.28700 3.79900 11.35600 C core 19.02200 3.14600 12.69300 O core 17.63400 2.74000 12.77200 C core 19.76600 1.86100 13.00900 O core 21.14000 2.07100 13.31200 C core 18.91700 1.31000 14.14700 O core 19.10000 2.05400 15.33200 C core 17.50900 1.61300 13.63500 N core 16.94200 0.48200 12.87100 C core 16.36700 -0.59900 13.57700 O core 16.31500 -0.55200 14.81300 N core 15.90400 -1.66600 12.88100 C core 16.02900 -1.69300 11.54100 N core 15.64700 -2.78600 10.90100 C core 16.57700 -0.59500 10.80700 C core 17.00400 0.46300 11.50500 Br core 13.74200 -0.64700 7.07700 O core 10.62100 -9.33000 16.75800 C core 10.88600 -9.56500 18.15000 C core 11.76000 -8.53200 18.82500 O core 13.11400 -8.61000 18.31200 C core 11.35800 -7.07800 18.66000 O core 10.38500 -6.71400 19.62700 C core 12.68200 -6.35900 18.89100 O core 13.04800 -6.29800 20.25900 C core 13.65000 -7.29400 18.17600 N core 13.72100 -6.97500 16.75100 C core 13.30600 -7.76800 15.70800 N core 13.48300 -7.21300 14.53900 C core 14.06000 -5.97800 14.82700 C core 14.49000 -4.93500 13.95300 O core 14.44700 -4.89200 12.73100 N core 15.02100 -3.86000 14.66000 C core 15.12400 -3.79200 16.03100 N core 15.67700 -2.66300 16.51500 N core 14.72300 -4.75000 16.85100 C core 14.21000 -5.81100 16.18500 P core 9.34500 -5.53200 19.30900 O core 8.32400 -5.53400 20.37400 O core 8.91600 -5.69200 17.88000 O core 10.22400 -4.20800 19.35400 C core 10.68200 -3.64100 20.56600 C core 11.32200 -2.30900 20.27400 O core 12.48200 -2.52800 19.41800 C core 10.46300 -1.35700 19.44900 O core 9.48200 -0.67200 20.21800 C core 11.51900 -0.44100 18.85900 O core 12.00700 0.46000 19.83400 C core 12.59600 -1.45700 18.49200 N core 12.36300 -1.95800 17.14600 C core 11.81000 -3.15800 16.75400 N core 11.68900 -3.26300 15.45500 C core 12.19300 -2.05600 14.96900 C core 12.31500 -1.57800 13.63100 O core 12.02100 -2.15100 12.58400 N core 12.85900 -0.30500 13.59100 C core 13.26300 0.42000 14.69100 N core 13.77100 1.64200 14.45300 N core 13.17600 -0.02600 15.94200 C core 12.62700 -1.25700 15.99900 P core 8.06500 -0.28000 19.53400 O core 7.22600 0.31400 20.59300 O core 7.54000 -1.42700 18.75600 O core 8.49000 0.83100 18.47400 C core 9.06800 2.04600 18.91100 C core 9.58700 2.84000 17.73600 O core 10.44300 2.01000 16.91600 C core 8.59600 3.44000 16.74900 O core 8.09100 4.64000 17.32300 C core 9.49700 3.70200 15.54700 O core 10.40700 4.77000 15.76500 C core 10.38200 2.45600 15.56900 N core 9.91700 1.35500 14.71800 C core 10.07300 1.53300 13.35300 O core 10.55400 2.53900 12.88300 N core 9.66100 0.47400 12.58000 C core 9.15700 -0.72900 13.03600 O core 8.91100 -1.62000 12.23100 C core 9.03200 -0.83200 14.46700 C core 9.38600 0.19900 15.23100 P core 6.64000 5.19100 16.90900 O core 6.53100 6.44200 17.70900 O core 5.55500 4.20100 16.98600 O core 6.80200 5.54900 15.37100 C core 7.54100 6.68300 14.96100 C core 7.51900 6.78300 13.46300 O core 8.25000 5.67900 12.88200 C core 6.15700 6.65700 12.80700 O core 5.43000 7.88100 12.92400 C core 6.56500 6.37500 11.36900 O core 7.06800 7.54300 10.73000 C core 7.73100 5.41300 11.58900 N core 7.31600 4.01400 11.53100 C core 6.94900 3.13900 12.52900 N core 6.68700 1.92700 12.09000 C core 6.88000 2.02400 10.72100 C core 6.77900 1.08100 9.68600 N core 6.42700 -0.18500 9.89200 N core 7.05900 1.49900 8.42500 C core 7.41000 2.78300 8.24100 N core 7.52800 3.75800 9.13300 C core 7.25200 3.30400 10.36500 P core 3.85000 7.84800 13.08600 O core 3.36400 9.24100 13.32600 O core 3.40700 6.76800 14.00900 O core 3.34700 7.41500 11.63800 C core 3.50200 8.27600 10.52100 C core 3.23200 7.50600 9.25600 O core 4.17200 6.40600 9.20800 C core 1.87700 6.83100 9.15200 O core 0.90300 7.75100 8.65900 C core 2.15800 5.72600 8.12700 O core 2.23600 6.18400 6.79100 C core 3.58700 5.31500 8.50500 N core 3.65300 4.08900 9.32100 C core 3.70000 2.90100 8.62900 O core 3.73700 2.86700 7.41500 N core 3.70400 1.76200 9.41100 C core 3.65700 1.70900 10.79900 O core 3.60800 0.61200 11.37200 C core 3.63700 2.99200 11.44400 C core 3.64200 4.11000 10.69900 P core -0.35100 8.15700 9.56300 O core -1.26800 9.01200 8.75000 O core 0.19300 8.72100 10.86300 O core -1.10200 6.79800 9.94100 C core -1.74500 5.95400 8.97100 C core -3.03600 5.43400 9.55900 O core -2.77300 4.78300 10.81500 C core -4.03800 6.54800 9.86200 O core -5.20900 6.22200 9.10500 C core -4.37900 6.39200 11.34900 O core -5.71400 6.57900 11.76700 C core -3.88800 4.96900 11.62400 N core -3.57800 4.56300 12.99400 C core -4.15900 3.38800 13.45000 O core -4.82900 2.64600 12.74500 N core -3.91000 3.09300 14.76000 C core -3.14700 3.82300 15.64500 O core -3.18700 3.53100 16.85100 C core -2.53300 4.98700 15.08100 C core -2.76500 5.31100 13.80700 P core -5.90200 7.31200 8.17200 O core -6.01200 8.56900 8.96200 O core -7.12100 6.67800 7.62200 O core -4.79100 7.61000 7.08000 C core -4.40200 6.66000 6.06400 C core -3.76800 7.43600 4.93900 O core -4.75700 8.37700 4.49200 C core -2.55800 8.21600 5.44500 O core -1.52300 8.12000 4.48600 C core -3.01400 9.68200 5.46300 O core -1.99600 10.58900 5.12800 C core -4.26600 9.68600 4.58900 N core -5.32100 10.54600 5.14300 C core -5.90600 11.47500 4.29100 O core -5.58700 11.59700 3.10900 N core -6.88000 12.25600 4.87300 C core -7.31400 12.20700 6.19800 O core -8.17200 13.00800 6.59200 C core -6.65800 11.21700 7.00700 C core -5.71100 10.44100 6.46600 P core -0.43700 6.94300 4.50300 O core -0.33300 6.34700 5.88000 O core 0.75000 7.45600 3.82000 O core -1.12200 5.81400 3.60100 C core -1.09600 5.89900 2.17700 C core -1.19100 4.51800 1.56900 O core 0.07200 3.81900 1.76800 C core -2.21200 3.60000 2.20600 O core -3.52700 3.85400 1.74500 C core -1.69100 2.23300 1.79900 O core -1.94800 1.93400 0.42100 C core -0.18300 2.44300 1.98800 N core 0.19900 2.06200 3.37200 C core 0.25400 0.69600 3.66500 O core 0.06800 -0.12200 2.73900 N core 0.50500 0.29700 4.93800 C core 0.71200 1.20800 5.89700 N core 0.91000 0.76100 7.17000 C core 0.71600 2.61200 5.61900 C core 0.45800 2.99400 4.34500 P core -4.77700 3.64600 2.72000 O core -5.95400 4.31200 2.09600 O core -4.37800 4.04600 4.11200 O core -5.03300 2.07800 2.73000 C core -5.25400 1.37800 1.51700 C core -5.12000 -0.10500 1.74600 O core -3.76000 -0.39800 2.15500 C core -5.93400 -0.74800 2.86000 O core -7.30100 -0.92200 2.50300 C core -5.20700 -2.07900 2.98200 O core -5.46100 -2.94300 1.89400 C core -3.75400 -1.61300 2.90800 N core -3.28400 -1.38000 4.27200 C core -3.03300 -0.21500 4.94700 N core -2.71100 -0.40700 6.20600 C core -2.72600 -1.78500 6.35200 C core -2.48800 -2.58400 7.47400 O core -2.20100 -2.23300 8.60800 N core -2.62700 -3.93900 7.17500 C core -2.94700 -4.45500 5.94800 N core -2.99200 -5.80300 5.83800 N core -3.19100 -3.71000 4.89500 C core -3.06000 -2.39900 5.16700 P core -8.45300 -0.99200 3.64000 O core -9.74800 -1.02900 2.88700 O core -8.24700 0.06400 4.71000 O core -8.19700 -2.38700 4.34000 C core -8.27300 -3.59300 3.59900 C core -7.97900 -4.76800 4.48900 O core -6.63700 -4.66100 5.01400 C core -8.82600 -4.86900 5.73800 O core -10.09900 -5.39800 5.41800 C core -7.99200 -5.82100 6.58000 O core -8.07400 -7.14500 6.07600 C core -6.58400 -5.28700 6.29900 N core -6.14900 -4.29400 7.27400 C core -5.97600 -2.94300 7.08200 N core -5.55100 -2.31900 8.15500 C core -5.43600 -3.31700 9.10300 C core -5.00600 -3.24500 10.43300 O core -4.59400 -2.26000 11.04600 N core -5.05600 -4.49100 11.05500 C core -5.43800 -5.66100 10.43900 N core -5.39000 -6.78200 11.19900 N core -5.82800 -5.74100 9.18200 C core -5.80400 -4.54300 8.57900 P core -11.38800 -4.88700 6.20700 O core -12.53300 -5.65000 5.64500 O core -11.46500 -3.40700 6.30100 O core -11.18300 -5.45700 7.67700 C core -11.08500 -6.84700 7.89900 C core -10.65100 -7.11200 9.32000 O core -9.29100 -6.63100 9.52200 C core -11.44700 -6.37700 10.38900 O core -12.64300 -7.07500 10.67700 C core -10.48700 -6.45000 11.55900 O core -10.45800 -7.75500 12.11200 C core -9.15700 -6.17200 10.85400 N core -8.81600 -4.74100 10.84000 C core -8.22500 -4.24300 11.98100 O core -8.01300 -4.95000 12.95400 N core -7.90200 -2.89600 11.94600 C core -8.11800 -2.02500 10.89800 O core -7.66800 -0.86500 10.96700 C core -8.76500 -2.61800 9.74700 C core -9.07400 -3.92000 9.75400 P core -13.95800 -6.26500 11.13000 O core -15.02100 -7.27300 11.12800 O core -14.13000 -5.04200 10.31000 O core -13.61000 -5.70600 12.58200 C core -13.51500 -6.56100 13.69900 C core -12.84900 -5.85200 14.85900 O core -11.55200 -5.34800 14.44200 C core -13.51400 -4.61200 15.44500 O core -14.59900 -4.97500 16.29100 C core -12.35100 -4.04000 16.24400 O core -12.07700 -4.83700 17.37000 C core -11.19400 -4.25100 15.26900 N core -10.93200 -3.07000 14.45000 C core -11.23300 -2.80200 13.14200 N core -10.82000 -1.62100 12.73600 C core -10.20100 -1.07700 13.86100 C core -9.53100 0.15600 14.09400 N core -9.34900 1.10600 13.17600 N core -9.04400 0.37400 15.33600 C core -9.20700 -0.56500 16.26100 N core -9.80000 -1.76000 16.16100 C core -10.27700 -1.94900 14.92100 P core -15.73700 -3.90400 16.66900 O core -16.78900 -4.70200 17.34900 O core -16.12000 -2.98500 15.59300 O core -15.07000 -3.02000 17.82000 C core -14.63200 -3.62200 19.04200 C core -13.89400 -2.61100 19.89200 O core -12.69100 -2.20900 19.20700 C core -14.63600 -1.30300 20.13700 O core -15.56000 -1.42700 21.22000 C core -13.50000 -0.35700 20.47400 C core -12.39600 -0.82800 19.51600 N core -12.35900 -0.05300 18.24900 C core -11.69900 1.17900 18.22800 O core -11.18300 1.57600 19.25100 N core -11.64400 1.90200 17.08500 C core -12.21900 1.41800 15.98800 N core -12.11300 2.11900 14.86100 C core -12.91700 0.18100 15.99700 C core -12.96100 -0.51700 17.12100 P core -16.93900 -0.62200 21.17200 O core -17.71000 -1.01700 22.38600 O core -17.58700 -0.71100 19.82700 O core -16.49500 0.90100 21.35000 C core -15.97200 1.37400 22.58800 C core -15.45600 2.78300 22.42300 O core -14.41700 2.79400 21.42200 C core -16.44600 3.80000 21.87800 O core -17.35700 4.26600 22.89300 C core -15.50200 4.89700 21.40300 O core -15.00700 5.60300 22.51300 C core -14.34700 4.08000 20.82100 N core -14.41000 3.94600 19.34900 C core -13.87200 4.98400 18.56400 O core -13.32700 5.97900 19.13400 N core -13.96000 4.90600 17.21700 C core -14.57600 3.86700 16.65200 N core -14.68900 3.86900 15.32500 C core -15.11800 2.78700 17.42100 C core -15.00400 2.86300 18.75900 Br core -13.77300 -0.44300 14.44100 MG core 9.87100 -5.70600 11.48100 N core -7.05400 1.06000 9.21500 C core -5.66100 1.69000 9.18900 C core -4.80100 0.78500 9.99400 C core -3.34300 1.20700 10.07600 N core -2.47900 -0.00200 10.14000 C core -1.00300 0.42900 10.21400 C core -0.27600 -0.93800 10.63200 C core 1.00600 -0.84300 10.37500 C core 1.39800 -2.38000 10.78200 N core 2.86200 -2.38700 10.22700 C core 3.61500 -3.75900 10.45000 C core 5.11200 -3.55600 9.82900 C core 5.48700 -4.93000 9.35500 N core 6.41000 -4.70800 8.18000 O core -6.88300 -6.71400 14.69400 O core 8.26800 -3.22600 16.76100 O core 3.63700 4.54400 4.70800 O core 2.54700 5.77900 2.56800 O core 0.48700 2.90900 9.16100 O core -11.67900 10.81700 19.38800 O core -12.23900 7.30500 10.37100 O core 3.33100 3.28400 1.48800 O core 12.71100 -8.48500 12.52400 O core 7.93400 4.04200 2.21700 O core -10.69700 12.89200 18.03200 O core -0.18400 -3.72000 13.25600 O core -11.68600 -2.75200 1.74700 O core -4.44900 -7.35900 13.89300 O core 14.47600 5.02800 12.83800 O core -10.30400 7.32300 21.09000 O core -13.03500 2.11900 12.02800 O core 2.33300 0.44200 13.86800 O core -13.26600 7.98100 21.25600 O core 1.54500 -2.07100 14.75300 O core -5.69800 4.57300 -0.75500 O core -3.92600 -10.16300 13.84500 O core -16.78800 -0.10200 16.78900 O core 3.88200 4.16100 14.64900 O core -7.92400 7.40600 22.56100 O core -8.06900 15.05800 15.64100 O core -9.92800 1.58900 1.47700 O core -8.88300 7.72900 12.59200 O core -6.48200 -4.36100 18.49800 O core -1.32600 -3.65400 0.54000 O core -6.24600 0.30500 6.59400 O core -14.87300 -6.53000 6.74800 O core -16.28000 1.87700 14.04600 O core 8.47800 -7.91500 16.55000 O core -9.71000 7.09000 10.27300 O core -6.76800 4.34800 23.47900 O core 11.46800 5.12700 7.68000 O core 10.43100 -3.18200 6.31600 O core -10.52200 5.11700 12.41000 O core -7.53500 4.70400 11.71000 O core 16.29100 -2.99300 8.24200 O core 1.67500 3.44300 18.74900 O core -5.51300 7.75900 14.32800 O core 6.53500 4.20800 4.88100 O core 12.51900 -3.84400 8.48200 O core -8.60200 0.13600 20.13300 O core 15.79500 -2.64100 19.32800 O core -7.27800 9.82300 10.81400 O core 14.82300 -4.56000 20.96100 O core 19.95900 3.90400 4.46200 O core -0.79000 1.75800 13.88700 O core -8.23100 11.77900 21.50700 O core 15.16100 -6.58100 10.89100 O core 4.72600 2.25300 18.52100 O core 15.16400 0.92400 17.88500 O core -10.50700 10.70400 21.76600 O core 10.52900 6.48300 17.99900 O core 2.97400 -0.27500 0.70000 O core -17.16400 -7.84100 9.66000 O core 2.50900 1.81300 16.84000 O core -9.73700 -0.98300 6.93100 O core -8.83400 3.76700 2.89700 O core 4.90400 6.97800 1.64300 O core 8.18600 -4.12500 12.35400 O core 8.26600 -6.38900 10.72600 O core 11.44700 -6.93600 10.98900 O core 11.27700 -4.55500 12.17300 O core 9.96700 -6.92600 13.29900 gdis-0.90/models/calcite_104_0.0000.got0000644000175000017500000017005507717054771015640 0ustar seansean******************************************************************************** * GENERAL UTILITY LATTICE PROGRAM * * Julian Gale, Imperial College * * Version 1.4 * ******************************************************************************** * single - perform a single point run * * conv - constant volume calculation * * molecule - molecule option activated, Coulomb subtract within molecule * ******************************************************************************** Job Started at 10:48.21 23rd April 2002 Number of CPUs = 1 Total number of configurations input = 1 ******************************************************************************** * Input for Configuration = 1 : calcite_104_0.0000 * ******************************************************************************** Formula = C48O144Ca48 Number of irreducible atoms/shells = 384 Total number atoms/shells = 384 Dimensionality = 2 : Surface Surface Cartesian vectors (Angstroms) : 4.980183 0.000000 0.000000 4.980183 24.270662 0.000000 Surface cell parameters (Angstroms/Degrees): a = 4.9802 alpha = 78.4042 b = 24.7763 Initial surface area = 120.872338 Angs**2 Initial surface dipole = 0.000010 e.Angs Temperature of configuration = 0.0000 K Mixed fractional/Cartesian coordinates of surface : -------------------------------------------------------------------------------- No. Atomic x y z Charge Occupancy Label (Frac) (Frac) (Angs) (e) (Frac) -------------------------------------------------------------------------------- Region 1 : -------------------------------------------------------------------------------- 1 C c 0.421919 0.078081 -12.1347 1.343539 1.000000 2 O c 0.327506 0.046167 -12.9011 1.018487 1.000000 3 O c 0.263679 0.109994 -11.3682 1.018487 1.000000 4 O c 0.674573 0.078081 -12.1347 1.018487 1.000000 5 O c 0.709619 0.037727 -9.1010 1.018487 1.000000 6 C c 0.962273 0.037727 -9.1010 1.343539 1.000000 7 O c 0.120513 0.005814 -9.8675 1.018487 1.000000 8 O c 0.056686 0.069641 -8.3345 1.018487 1.000000 9 Ca c 0.838586 0.161414 -12.1347 2.000000 1.000000 10 Ca c 0.919293 0.080707 -6.0673 2.000000 1.000000 11 Ca c 0.671919 0.328081 -12.1347 2.000000 1.000000 12 C c 0.795606 0.204394 -9.1010 1.343539 1.000000 13 O c 0.701192 0.172480 -9.8675 1.018487 1.000000 14 O c 0.637366 0.236307 -8.3345 1.018487 1.000000 15 O c 0.048260 0.204394 -9.1010 1.018487 1.000000 16 C c 0.255253 0.244747 -12.1347 1.343539 1.000000 17 O c 0.349666 0.276661 -11.3682 1.018487 1.000000 18 O c 0.002599 0.244747 -12.1347 1.018487 1.000000 19 O c 0.413493 0.212834 -12.9011 1.018487 1.000000 20 Ca c 0.459646 0.040353 -3.0337 2.000000 1.000000 21 O c 0.083306 0.164040 -6.0673 1.018487 1.000000 22 C c 0.335960 0.164040 -6.0673 1.343539 1.000000 23 O c 0.494200 0.132127 -6.8338 1.018487 1.000000 24 O c 0.430373 0.195954 -5.3009 1.018487 1.000000 25 O c 0.994172 0.379500 -12.9011 1.018487 1.000000 26 C c 0.088586 0.411414 -12.1347 1.343539 1.000000 27 O c 0.930345 0.443328 -11.3682 1.018487 1.000000 28 O c 0.341240 0.411414 -12.1347 1.018487 1.000000 29 Ca c 0.212273 0.287727 -9.1010 2.000000 1.000000 30 Ca c 0.378939 0.121060 -9.1010 2.000000 1.000000 31 C c 0.921919 0.578081 -12.1347 1.343539 1.000000 32 O c 0.016333 0.609994 -11.3682 1.018487 1.000000 33 O c 0.080160 0.546167 -12.9011 1.018487 1.000000 34 O c 0.669265 0.578081 -12.1347 1.018487 1.000000 35 Ca c 0.338586 0.661414 -12.1347 2.000000 1.000000 36 Ca c 0.505253 0.494747 -12.1347 2.000000 1.000000 37 C c 0.628939 0.371061 -9.1010 1.343539 1.000000 38 O c 0.723353 0.402974 -8.3345 1.018487 1.000000 39 O c 0.376285 0.371061 -9.1010 1.018487 1.000000 40 O c 0.787180 0.339147 -9.8675 1.018487 1.000000 41 Ca c 0.292980 0.207020 -3.0337 2.000000 1.000000 42 Ca c 0.045606 0.454394 -9.1010 2.000000 1.000000 43 C c 0.876313 0.123687 -3.0337 1.343539 1.000000 44 O c 0.781900 0.091773 -3.8001 1.018487 1.000000 45 O c 0.128967 0.123687 -3.0337 1.018487 1.000000 46 O c 0.718073 0.155600 -2.2672 1.018487 1.000000 47 C c 0.169293 0.330707 -6.0673 1.343539 1.000000 48 O c 0.074879 0.298793 -6.8338 1.018487 1.000000 49 O c 0.011052 0.362621 -5.3009 1.018487 1.000000 50 O c 0.421947 0.330707 -6.0673 1.018487 1.000000 51 O c 0.456992 0.290353 -3.0337 1.018487 1.000000 52 C c 0.709646 0.290353 -3.0337 1.343539 1.000000 53 O c 0.867887 0.258440 -3.8001 1.018487 1.000000 54 O c 0.804060 0.322267 -2.2672 1.018487 1.000000 55 O c 0.367859 0.505814 -9.8675 1.018487 1.000000 56 C c 0.462273 0.537727 -9.1010 1.343539 1.000000 57 O c 0.304032 0.569641 -8.3345 1.018487 1.000000 58 O c 0.714927 0.537727 -9.1010 1.018487 1.000000 59 Ca c 0.585960 0.414040 -6.0673 2.000000 1.000000 60 Ca c 0.752626 0.247374 -6.0673 2.000000 1.000000 61 Ca c 0.171919 0.828081 -12.1347 2.000000 1.000000 62 Ca c 0.712273 0.787727 -9.1010 2.000000 1.000000 63 C c 0.755253 0.744747 -12.1347 1.343539 1.000000 64 O c 0.660839 0.712834 -12.9011 1.018487 1.000000 65 O c 0.007906 0.744747 -12.1347 1.018487 1.000000 66 O c 0.597012 0.776661 -11.3682 1.018487 1.000000 67 C c 0.295606 0.704394 -9.1010 1.343539 1.000000 68 O c 0.390020 0.736307 -8.3345 1.018487 1.000000 69 O c 0.453847 0.672480 -9.8675 1.018487 1.000000 70 O c 0.042952 0.704394 -9.1010 1.018487 1.000000 71 O c 0.335932 0.911414 -12.1347 1.018487 1.000000 72 C c 0.588586 0.911414 -12.1347 1.343539 1.000000 73 O c 0.746826 0.879500 -12.9011 1.018487 1.000000 74 O c 0.682999 0.943328 -11.3682 1.018487 1.000000 75 Ca c 0.878939 0.621060 -9.1010 2.000000 1.000000 76 Ca c 0.419293 0.580707 -6.0673 2.000000 1.000000 77 C c 0.542980 0.457020 -3.0337 1.343539 1.000000 78 O c 0.448566 0.425107 -3.8001 1.018487 1.000000 79 O c 0.384739 0.488934 -2.2672 1.018487 1.000000 80 O c 0.795634 0.457020 -3.0337 1.018487 1.000000 81 O c 0.741546 0.632127 -6.8338 1.018487 1.000000 82 C c 0.835960 0.664040 -6.0673 1.343539 1.000000 83 O c 0.677719 0.695954 -5.3009 1.018487 1.000000 84 O c 0.088614 0.664040 -6.0673 1.018487 1.000000 85 Ca c 0.959646 0.540353 -3.0337 2.000000 1.000000 86 C c 0.002626 0.497374 -6.0673 1.343539 1.000000 87 O c 0.097040 0.529287 -5.3009 1.018487 1.000000 88 O c 0.749972 0.497374 -6.0673 1.018487 1.000000 89 O c 0.160867 0.465460 -6.8338 1.018487 1.000000 90 Ca c 0.126313 0.373687 -3.0337 2.000000 1.000000 91 Ca c 0.545606 0.954394 -9.1010 2.000000 1.000000 92 C c 0.669293 0.830707 -6.0673 1.343539 1.000000 93 O c 0.763706 0.862621 -5.3009 1.018487 1.000000 94 O c 0.827533 0.798793 -6.8338 1.018487 1.000000 95 O c 0.416639 0.830707 -6.0673 1.018487 1.000000 96 Ca c 0.792980 0.707020 -3.0337 2.000000 1.000000 97 Ca c 0.085960 0.914040 -6.0673 2.000000 1.000000 98 C c 0.128939 0.871060 -9.1010 1.343539 1.000000 99 O c 0.034526 0.839147 -9.8675 1.018487 1.000000 100 O c 0.381593 0.871060 -9.1010 1.018487 1.000000 101 O c 0.970699 0.902974 -8.3345 1.018487 1.000000 102 Ca c 0.005253 0.994747 -12.1347 2.000000 1.000000 103 Ca c 0.252626 0.747374 -6.0673 2.000000 1.000000 104 C c 0.376313 0.623687 -3.0337 1.343539 1.000000 105 O c 0.470727 0.655600 -2.2672 1.018487 1.000000 106 O c 0.123659 0.623687 -3.0337 1.018487 1.000000 107 O c 0.534554 0.591773 -3.8001 1.018487 1.000000 108 O c 0.115233 0.758440 -3.8001 1.018487 1.000000 109 C c 0.209646 0.790353 -3.0337 1.343539 1.000000 110 O c 0.051406 0.822267 -2.2672 1.018487 1.000000 111 O c 0.462300 0.790353 -3.0337 1.018487 1.000000 112 C c 0.502626 0.997374 -6.0673 1.343539 1.000000 113 O c 0.408213 0.965460 -6.8338 1.018487 1.000000 114 O c 0.755280 0.997374 -6.0673 1.018487 1.000000 115 O c 0.344386 0.029287 -5.3009 1.018487 1.000000 116 C c 0.042980 0.957020 -3.0337 1.343539 1.000000 117 O c 0.137393 0.988934 -2.2672 1.018487 1.000000 118 O c 0.201220 0.925107 -3.8001 1.018487 1.000000 119 O c 0.790326 0.957020 -3.0337 1.018487 1.000000 120 Ca c 0.626313 0.873687 -3.0337 2.000000 1.000000 241 O s 0.327287 0.046093 -12.9029 -2.133000 1.000000 242 O s 0.263313 0.110068 -11.3664 -2.133000 1.000000 243 O s 0.675156 0.078081 -12.1347 -2.133000 1.000000 244 O s 0.709035 0.037727 -9.1010 -2.133000 1.000000 245 O s 0.120879 0.005740 -9.8692 -2.133000 1.000000 246 O s 0.056904 0.069714 -8.3328 -2.133000 1.000000 247 O s 0.700974 0.172407 -9.8692 -2.133000 1.000000 248 O s 0.637000 0.236381 -8.3328 -2.133000 1.000000 249 O s 0.048843 0.204394 -9.1010 -2.133000 1.000000 250 O s 0.349884 0.276735 -11.3664 -2.133000 1.000000 251 O s 0.002015 0.244747 -12.1347 -2.133000 1.000000 252 O s 0.413858 0.212760 -12.9029 -2.133000 1.000000 253 O s 0.082722 0.164040 -6.0673 -2.133000 1.000000 254 O s 0.494566 0.132053 -6.8356 -2.133000 1.000000 255 O s 0.430591 0.196028 -5.2991 -2.133000 1.000000 256 O s 0.993954 0.379427 -12.9029 -2.133000 1.000000 257 O s 0.929980 0.443401 -11.3664 -2.133000 1.000000 258 O s 0.341823 0.411414 -12.1347 -2.133000 1.000000 259 O s 0.016551 0.610068 -11.3664 -2.133000 1.000000 260 O s 0.080525 0.546093 -12.9029 -2.133000 1.000000 261 O s 0.668682 0.578081 -12.1347 -2.133000 1.000000 262 O s 0.723571 0.403048 -8.3328 -2.133000 1.000000 263 O s 0.375702 0.371061 -9.1010 -2.133000 1.000000 264 O s 0.787545 0.339073 -9.8692 -2.133000 1.000000 265 O s 0.781682 0.091700 -3.8019 -2.133000 1.000000 266 O s 0.129551 0.123687 -3.0337 -2.133000 1.000000 267 O s 0.717707 0.155674 -2.2654 -2.133000 1.000000 268 O s 0.074661 0.298720 -6.8356 -2.133000 1.000000 269 O s 0.010687 0.362694 -5.2991 -2.133000 1.000000 270 O s 0.422530 0.330707 -6.0673 -2.133000 1.000000 271 O s 0.456409 0.290353 -3.0337 -2.133000 1.000000 272 O s 0.868252 0.258366 -3.8019 -2.133000 1.000000 273 O s 0.804278 0.322341 -2.2654 -2.133000 1.000000 274 O s 0.367641 0.505740 -9.8692 -2.133000 1.000000 275 O s 0.303667 0.569714 -8.3328 -2.133000 1.000000 276 O s 0.715510 0.537727 -9.1010 -2.133000 1.000000 277 O s 0.660621 0.712760 -12.9029 -2.133000 1.000000 278 O s 0.008490 0.744747 -12.1347 -2.133000 1.000000 279 O s 0.596647 0.776735 -11.3664 -2.133000 1.000000 280 O s 0.390238 0.736381 -8.3328 -2.133000 1.000000 281 O s 0.454212 0.672407 -9.8692 -2.133000 1.000000 282 O s 0.042369 0.704394 -9.1010 -2.133000 1.000000 283 O s 0.335348 0.911414 -12.1347 -2.133000 1.000000 284 O s 0.747192 0.879427 -12.9029 -2.133000 1.000000 285 O s 0.683218 0.943401 -11.3664 -2.133000 1.000000 286 O s 0.448348 0.425033 -3.8019 -2.133000 1.000000 287 O s 0.384374 0.489007 -2.2654 -2.133000 1.000000 288 O s 0.796217 0.457020 -3.0337 -2.133000 1.000000 289 O s 0.741328 0.632053 -6.8356 -2.133000 1.000000 290 O s 0.677354 0.696028 -5.2991 -2.133000 1.000000 291 O s 0.089197 0.664040 -6.0673 -2.133000 1.000000 292 O s 0.097258 0.529361 -5.2991 -2.133000 1.000000 293 O s 0.749389 0.497374 -6.0673 -2.133000 1.000000 294 O s 0.161232 0.465386 -6.8356 -2.133000 1.000000 295 O s 0.763924 0.862694 -5.2991 -2.133000 1.000000 296 O s 0.827899 0.798720 -6.8356 -2.133000 1.000000 297 O s 0.416055 0.830707 -6.0673 -2.133000 1.000000 298 O s 0.034308 0.839073 -9.8692 -2.133000 1.000000 299 O s 0.382177 0.871060 -9.1010 -2.133000 1.000000 300 O s 0.970334 0.903048 -8.3328 -2.133000 1.000000 301 O s 0.470945 0.655674 -2.2654 -2.133000 1.000000 302 O s 0.123076 0.623687 -3.0337 -2.133000 1.000000 303 O s 0.534919 0.591700 -3.8019 -2.133000 1.000000 304 O s 0.115015 0.758366 -3.8019 -2.133000 1.000000 305 O s 0.051040 0.822341 -2.2654 -2.133000 1.000000 306 O s 0.462884 0.790353 -3.0337 -2.133000 1.000000 307 O s 0.407995 0.965387 -6.8356 -2.133000 1.000000 308 O s 0.755864 0.997374 -6.0673 -2.133000 1.000000 309 O s 0.344020 0.029361 -5.2991 -2.133000 1.000000 310 O s 0.137611 0.989007 -2.2654 -2.133000 1.000000 311 O s 0.201586 0.925033 -3.8019 -2.133000 1.000000 312 O s 0.789742 0.957020 -3.0337 -2.133000 1.000000 -------------------------------------------------------------------------------- Region 2 : -------------------------------------------------------------------------------- 121 Ca c 0.843838 0.156161 -24.2693 2.000000 1.000000 122 C c 0.427172 0.072828 -24.2693 1.343539 1.000000 123 O c 0.521585 0.104741 -23.5029 1.018487 1.000000 124 O c 0.585412 0.040914 -25.0358 1.018487 1.000000 125 O c 0.174518 0.072828 -24.2693 1.018487 1.000000 126 O c 0.873112 0.000561 -22.0021 1.018487 1.000000 127 C c 0.967525 0.032474 -21.2357 1.343539 1.000000 128 O c 0.809285 0.064388 -20.4692 1.018487 1.000000 129 O c 0.220179 0.032474 -21.2357 1.018487 1.000000 130 Ca c 0.677172 0.322828 -24.2693 2.000000 1.000000 131 C c 0.800858 0.199141 -21.2357 1.343539 1.000000 132 O c 0.895272 0.231055 -20.4692 1.018487 1.000000 133 O c 0.959099 0.167228 -22.0021 1.018487 1.000000 134 O c 0.548204 0.199141 -21.2357 1.018487 1.000000 135 Ca c 0.924545 0.075454 -18.2020 2.000000 1.000000 136 Ca c 0.217525 0.282475 -21.2357 2.000000 1.000000 137 C c 0.260505 0.239495 -24.2693 1.343539 1.000000 138 O c 0.166092 0.207581 -25.0358 1.018487 1.000000 139 O c 0.513159 0.239495 -24.2693 1.018487 1.000000 140 O c 0.102265 0.271408 -23.5029 1.018487 1.000000 141 O c 0.841184 0.406161 -24.2693 1.018487 1.000000 142 C c 0.093838 0.406161 -24.2693 1.343539 1.000000 143 O c 0.252079 0.374248 -25.0358 1.018487 1.000000 144 O c 0.188252 0.438075 -23.5029 1.018487 1.000000 145 Ca c 0.384192 0.115808 -21.2357 2.000000 1.000000 146 O c 0.246799 0.126874 -18.9685 1.018487 1.000000 147 C c 0.341212 0.158788 -18.2020 1.343539 1.000000 148 O c 0.182971 0.190701 -17.4355 1.018487 1.000000 149 O c 0.593866 0.158788 -18.2020 1.018487 1.000000 150 Ca c 0.464899 0.035101 -15.1683 2.000000 1.000000 151 C c 0.927172 0.572828 -24.2693 1.343539 1.000000 152 O c 0.832758 0.540914 -25.0358 1.018487 1.000000 153 O c 0.768931 0.604742 -23.5029 1.018487 1.000000 154 O c 0.179826 0.572828 -24.2693 1.018487 1.000000 155 Ca c 0.050859 0.449141 -21.2357 2.000000 1.000000 156 Ca c 0.591212 0.408788 -18.2020 2.000000 1.000000 157 C c 0.634192 0.365808 -21.2357 1.343539 1.000000 158 O c 0.539778 0.333894 -22.0021 1.018487 1.000000 159 O c 0.886846 0.365808 -21.2357 1.018487 1.000000 160 O c 0.475951 0.397721 -20.4692 1.018487 1.000000 161 C c 0.174545 0.325454 -18.2020 1.343539 1.000000 162 O c 0.268959 0.357368 -17.4355 1.018487 1.000000 163 O c 0.332786 0.293541 -18.9685 1.018487 1.000000 164 O c 0.921891 0.325454 -18.2020 1.018487 1.000000 165 O c 0.214871 0.532474 -21.2357 1.018487 1.000000 166 C c 0.467525 0.532474 -21.2357 1.343539 1.000000 167 O c 0.625766 0.500561 -22.0021 1.018487 1.000000 168 O c 0.561939 0.564388 -20.4692 1.018487 1.000000 169 Ca c 0.343838 0.656161 -24.2693 2.000000 1.000000 170 Ca c 0.510505 0.489495 -24.2693 2.000000 1.000000 171 Ca c 0.757879 0.242121 -18.2020 2.000000 1.000000 172 C c 0.881566 0.118434 -15.1683 1.343539 1.000000 173 O c 0.975979 0.150348 -14.4019 1.018487 1.000000 174 O c 0.628912 0.118434 -15.1683 1.018487 1.000000 175 O c 0.039806 0.086521 -15.9348 1.018487 1.000000 176 Ca c 0.298232 0.201768 -15.1683 2.000000 1.000000 177 O c 0.620485 0.253187 -15.9348 1.018487 1.000000 178 C c 0.714899 0.285101 -15.1683 1.343539 1.000000 179 O c 0.556658 0.317014 -14.4019 1.018487 1.000000 180 O c 0.967553 0.285101 -15.1683 1.018487 1.000000 181 C c 0.760505 0.739495 -24.2693 1.343539 1.000000 182 O c 0.854918 0.771408 -23.5029 1.018487 1.000000 183 O c 0.507851 0.739495 -24.2693 1.018487 1.000000 184 O c 0.918746 0.707581 -25.0358 1.018487 1.000000 185 Ca c 0.424545 0.575454 -18.2020 2.000000 1.000000 186 Ca c 0.964899 0.535101 -15.1683 2.000000 1.000000 187 Ca c 0.177172 0.822828 -24.2693 2.000000 1.000000 188 C c 0.300859 0.699141 -21.2357 1.343539 1.000000 189 O c 0.206445 0.667228 -22.0021 1.018487 1.000000 190 O c 0.142618 0.731055 -20.4692 1.018487 1.000000 191 O c 0.553513 0.699141 -21.2357 1.018487 1.000000 192 C c 0.548232 0.451767 -15.1683 1.343539 1.000000 193 O c 0.642646 0.483681 -14.4019 1.018487 1.000000 194 O c 0.706473 0.419854 -15.9348 1.018487 1.000000 195 O c 0.295578 0.451767 -15.1683 1.018487 1.000000 196 O c 0.588558 0.658788 -18.2020 1.018487 1.000000 197 C c 0.841212 0.658788 -18.2020 1.343539 1.000000 198 O c 0.999453 0.626874 -18.9685 1.018487 1.000000 199 O c 0.935626 0.690701 -17.4355 1.018487 1.000000 200 O c 0.499425 0.874248 -25.0358 1.018487 1.000000 201 C c 0.593838 0.906161 -24.2693 1.343539 1.000000 202 O c 0.435598 0.938075 -23.5029 1.018487 1.000000 203 O c 0.846493 0.906161 -24.2693 1.018487 1.000000 204 Ca c 0.717525 0.782474 -21.2357 2.000000 1.000000 205 Ca c 0.884192 0.615808 -21.2357 2.000000 1.000000 206 C c 0.007879 0.492121 -18.2020 1.343539 1.000000 207 O c 0.913465 0.460207 -18.9685 1.018487 1.000000 208 O c 0.260533 0.492121 -18.2020 1.018487 1.000000 209 O c 0.849638 0.524035 -17.4355 1.018487 1.000000 210 Ca c 0.131566 0.368434 -15.1683 2.000000 1.000000 211 Ca c 0.798232 0.701767 -15.1683 2.000000 1.000000 212 Ca c 0.550858 0.949141 -21.2357 2.000000 1.000000 213 C c 0.674545 0.825454 -18.2020 1.343539 1.000000 214 O c 0.580132 0.793541 -18.9685 1.018487 1.000000 215 O c 0.516305 0.857368 -17.4355 1.018487 1.000000 216 O c 0.927199 0.825454 -18.2020 1.018487 1.000000 217 Ca c 0.010505 0.989495 -24.2693 2.000000 1.000000 218 C c 0.134192 0.865808 -21.2357 1.343539 1.000000 219 O c 0.228605 0.897721 -20.4692 1.018487 1.000000 220 O c 0.881538 0.865808 -21.2357 1.018487 1.000000 221 O c 0.292432 0.833894 -22.0021 1.018487 1.000000 222 C c 0.381566 0.618434 -15.1683 1.343539 1.000000 223 O c 0.287152 0.586521 -15.9348 1.018487 1.000000 224 O c 0.634220 0.618434 -15.1683 1.018487 1.000000 225 O c 0.223325 0.650348 -14.4019 1.018487 1.000000 226 O c 0.962245 0.785101 -15.1683 1.018487 1.000000 227 C c 0.214899 0.785101 -15.1683 1.343539 1.000000 228 O c 0.373140 0.753187 -15.9348 1.018487 1.000000 229 O c 0.309313 0.817014 -14.4019 1.018487 1.000000 230 Ca c 0.091212 0.908788 -18.2020 2.000000 1.000000 231 Ca c 0.257879 0.742121 -18.2020 2.000000 1.000000 232 C c 0.507879 0.992121 -18.2020 1.343539 1.000000 233 O c 0.602292 0.024035 -17.4355 1.018487 1.000000 234 O c 0.255225 0.992121 -18.2020 1.018487 1.000000 235 O c 0.666119 0.960207 -18.9685 1.018487 1.000000 236 C c 0.048232 0.951768 -15.1683 1.343539 1.000000 237 O c 0.953819 0.919854 -15.9348 1.018487 1.000000 238 O c 0.889992 0.983681 -14.4019 1.018487 1.000000 239 O c 0.300886 0.951768 -15.1683 1.018487 1.000000 240 Ca c 0.631566 0.868434 -15.1683 2.000000 1.000000 313 O s 0.521803 0.104815 -23.5011 -2.133000 1.000000 314 O s 0.585778 0.040841 -25.0376 -2.133000 1.000000 315 O s 0.173934 0.072828 -24.2693 -2.133000 1.000000 316 O s 0.872894 0.000487 -22.0039 -2.133000 1.000000 317 O s 0.808919 0.064462 -20.4674 -2.133000 1.000000 318 O s 0.220763 0.032474 -21.2357 -2.133000 1.000000 319 O s 0.895490 0.231128 -20.4674 -2.133000 1.000000 320 O s 0.959465 0.167154 -22.0039 -2.133000 1.000000 321 O s 0.547621 0.199141 -21.2357 -2.133000 1.000000 322 O s 0.165873 0.207507 -25.0376 -2.133000 1.000000 323 O s 0.513743 0.239495 -24.2693 -2.133000 1.000000 324 O s 0.101899 0.271482 -23.5011 -2.133000 1.000000 325 O s 0.840601 0.406161 -24.2693 -2.133000 1.000000 326 O s 0.252444 0.374174 -25.0376 -2.133000 1.000000 327 O s 0.188470 0.438149 -23.5011 -2.133000 1.000000 328 O s 0.246581 0.126800 -18.9702 -2.133000 1.000000 329 O s 0.182606 0.190775 -17.4338 -2.133000 1.000000 330 O s 0.594450 0.158788 -18.2020 -2.133000 1.000000 331 O s 0.832540 0.540841 -25.0376 -2.133000 1.000000 332 O s 0.768566 0.604815 -23.5011 -2.133000 1.000000 333 O s 0.180409 0.572828 -24.2693 -2.133000 1.000000 334 O s 0.539560 0.333821 -22.0039 -2.133000 1.000000 335 O s 0.887429 0.365808 -21.2357 -2.133000 1.000000 336 O s 0.475586 0.397795 -20.4674 -2.133000 1.000000 337 O s 0.269177 0.357442 -17.4337 -2.133000 1.000000 338 O s 0.333151 0.293467 -18.9702 -2.133000 1.000000 339 O s 0.921308 0.325454 -18.2020 -2.133000 1.000000 340 O s 0.214288 0.532474 -21.2357 -2.133000 1.000000 341 O s 0.626131 0.500487 -22.0039 -2.133000 1.000000 342 O s 0.562157 0.564462 -20.4674 -2.133000 1.000000 343 O s 0.976197 0.150421 -14.4001 -2.133000 1.000000 344 O s 0.628328 0.118434 -15.1683 -2.133000 1.000000 345 O s 0.040172 0.086447 -15.9366 -2.133000 1.000000 346 O s 0.620267 0.253114 -15.9366 -2.133000 1.000000 347 O s 0.556293 0.317088 -14.4001 -2.133000 1.000000 348 O s 0.968136 0.285101 -15.1683 -2.133000 1.000000 349 O s 0.855137 0.771482 -23.5011 -2.133000 1.000000 350 O s 0.507268 0.739495 -24.2693 -2.133000 1.000000 351 O s 0.919111 0.707507 -25.0376 -2.133000 1.000000 352 O s 0.206227 0.667154 -22.0039 -2.133000 1.000000 353 O s 0.142253 0.731128 -20.4674 -2.133000 1.000000 354 O s 0.554096 0.699141 -21.2357 -2.133000 1.000000 355 O s 0.642864 0.483755 -14.4001 -2.133000 1.000000 356 O s 0.706838 0.419780 -15.9366 -2.133000 1.000000 357 O s 0.294995 0.451767 -15.1683 -2.133000 1.000000 358 O s 0.587975 0.658788 -18.2020 -2.133000 1.000000 359 O s 0.999818 0.626800 -18.9702 -2.133000 1.000000 360 O s 0.935844 0.690775 -17.4337 -2.133000 1.000000 361 O s 0.499207 0.874174 -25.0376 -2.133000 1.000000 362 O s 0.435232 0.938149 -23.5011 -2.133000 1.000000 363 O s 0.847076 0.906161 -24.2693 -2.133000 1.000000 364 O s 0.913247 0.460134 -18.9702 -2.133000 1.000000 365 O s 0.261116 0.492121 -18.2020 -2.133000 1.000000 366 O s 0.849273 0.524108 -17.4337 -2.133000 1.000000 367 O s 0.579914 0.793467 -18.9702 -2.133000 1.000000 368 O s 0.515939 0.857442 -17.4338 -2.133000 1.000000 369 O s 0.927783 0.825454 -18.2020 -2.133000 1.000000 370 O s 0.228824 0.897795 -20.4674 -2.133000 1.000000 371 O s 0.880954 0.865808 -21.2357 -2.133000 1.000000 372 O s 0.292798 0.833821 -22.0039 -2.133000 1.000000 373 O s 0.286934 0.586447 -15.9366 -2.133000 1.000000 374 O s 0.634803 0.618434 -15.1683 -2.133000 1.000000 375 O s 0.222960 0.650421 -14.4001 -2.133000 1.000000 376 O s 0.961661 0.785101 -15.1683 -2.133000 1.000000 377 O s 0.373505 0.753114 -15.9366 -2.133000 1.000000 378 O s 0.309531 0.817088 -14.4001 -2.133000 1.000000 379 O s 0.602511 0.024108 -17.4338 -2.133000 1.000000 380 O s 0.254641 0.992121 -18.2020 -2.133000 1.000000 381 O s 0.666485 0.960134 -18.9702 -2.133000 1.000000 382 O s 0.953601 0.919780 -15.9366 -2.133000 1.000000 383 O s 0.889626 0.983755 -14.4001 -2.133000 1.000000 384 O s 0.301470 0.951768 -15.1683 -2.133000 1.000000 -------------------------------------------------------------------------------- Growth Slice : Mixed fractional/Cartesian coordinates -------------------------------------------------------------------------------- Label (Frac) (Frac) (Angs) (e) (Frac) -------------------------------------------------------------------------------- 1 C c 0.421919 0.078081 -12.1347 1.343539 1.000000 2 O c 0.327506 0.046167 -12.9011 1.018487 1.000000 3 O c 0.263679 0.109994 -11.3682 1.018487 1.000000 4 O c 0.674573 0.078081 -12.1347 1.018487 1.000000 5 O c 0.709619 0.037727 -9.1010 1.018487 1.000000 6 C c 0.962273 0.037727 -9.1010 1.343539 1.000000 7 O c 0.120513 0.005814 -9.8675 1.018487 1.000000 8 O c 0.056686 0.069641 -8.3345 1.018487 1.000000 9 Ca c 0.838586 0.161414 -12.1347 2.000000 1.000000 10 Ca c 0.919293 0.080707 -6.0673 2.000000 1.000000 11 Ca c 0.671919 0.328081 -12.1347 2.000000 1.000000 12 C c 0.795606 0.204394 -9.1010 1.343539 1.000000 13 O c 0.701192 0.172480 -9.8675 1.018487 1.000000 14 O c 0.637366 0.236307 -8.3345 1.018487 1.000000 15 O c 0.048260 0.204394 -9.1010 1.018487 1.000000 16 C c 0.255253 0.244747 -12.1347 1.343539 1.000000 17 O c 0.349666 0.276661 -11.3682 1.018487 1.000000 18 O c 0.002599 0.244747 -12.1347 1.018487 1.000000 19 O c 0.413493 0.212834 -12.9011 1.018487 1.000000 20 Ca c 0.459646 0.040353 -3.0337 2.000000 1.000000 21 O c 0.083306 0.164040 -6.0673 1.018487 1.000000 22 C c 0.335960 0.164040 -6.0673 1.343539 1.000000 23 O c 0.494200 0.132127 -6.8338 1.018487 1.000000 24 O c 0.430373 0.195954 -5.3009 1.018487 1.000000 25 O c 0.994172 0.379500 -12.9011 1.018487 1.000000 26 C c 0.088586 0.411414 -12.1347 1.343539 1.000000 27 O c 0.930345 0.443328 -11.3682 1.018487 1.000000 28 O c 0.341240 0.411414 -12.1347 1.018487 1.000000 29 Ca c 0.212273 0.287727 -9.1010 2.000000 1.000000 30 Ca c 0.378939 0.121060 -9.1010 2.000000 1.000000 31 C c 0.921919 0.578081 -12.1347 1.343539 1.000000 32 O c 0.016333 0.609994 -11.3682 1.018487 1.000000 33 O c 0.080160 0.546167 -12.9011 1.018487 1.000000 34 O c 0.669265 0.578081 -12.1347 1.018487 1.000000 35 Ca c 0.338586 0.661414 -12.1347 2.000000 1.000000 36 Ca c 0.505253 0.494747 -12.1347 2.000000 1.000000 37 C c 0.628939 0.371061 -9.1010 1.343539 1.000000 38 O c 0.723353 0.402974 -8.3345 1.018487 1.000000 39 O c 0.376285 0.371061 -9.1010 1.018487 1.000000 40 O c 0.787180 0.339147 -9.8675 1.018487 1.000000 41 Ca c 0.292980 0.207020 -3.0337 2.000000 1.000000 42 Ca c 0.045606 0.454394 -9.1010 2.000000 1.000000 43 C c 0.876313 0.123687 -3.0337 1.343539 1.000000 44 O c 0.781900 0.091773 -3.8001 1.018487 1.000000 45 O c 0.128967 0.123687 -3.0337 1.018487 1.000000 46 O c 0.718073 0.155600 -2.2672 1.018487 1.000000 47 C c 0.169293 0.330707 -6.0673 1.343539 1.000000 48 O c 0.074879 0.298793 -6.8338 1.018487 1.000000 49 O c 0.011052 0.362621 -5.3009 1.018487 1.000000 50 O c 0.421947 0.330707 -6.0673 1.018487 1.000000 51 O c 0.456992 0.290353 -3.0337 1.018487 1.000000 52 C c 0.709646 0.290353 -3.0337 1.343539 1.000000 53 O c 0.867887 0.258440 -3.8001 1.018487 1.000000 54 O c 0.804060 0.322267 -2.2672 1.018487 1.000000 55 O c 0.367859 0.505814 -9.8675 1.018487 1.000000 56 C c 0.462273 0.537727 -9.1010 1.343539 1.000000 57 O c 0.304032 0.569641 -8.3345 1.018487 1.000000 58 O c 0.714927 0.537727 -9.1010 1.018487 1.000000 59 Ca c 0.585960 0.414040 -6.0673 2.000000 1.000000 60 Ca c 0.752626 0.247374 -6.0673 2.000000 1.000000 61 Ca c 0.171919 0.828081 -12.1347 2.000000 1.000000 62 Ca c 0.712273 0.787727 -9.1010 2.000000 1.000000 63 C c 0.755253 0.744747 -12.1347 1.343539 1.000000 64 O c 0.660839 0.712834 -12.9011 1.018487 1.000000 65 O c 0.007906 0.744747 -12.1347 1.018487 1.000000 66 O c 0.597012 0.776661 -11.3682 1.018487 1.000000 67 C c 0.295606 0.704394 -9.1010 1.343539 1.000000 68 O c 0.390020 0.736307 -8.3345 1.018487 1.000000 69 O c 0.453847 0.672480 -9.8675 1.018487 1.000000 70 O c 0.042952 0.704394 -9.1010 1.018487 1.000000 71 O c 0.335932 0.911414 -12.1347 1.018487 1.000000 72 C c 0.588586 0.911414 -12.1347 1.343539 1.000000 73 O c 0.746826 0.879500 -12.9011 1.018487 1.000000 74 O c 0.682999 0.943328 -11.3682 1.018487 1.000000 75 Ca c 0.878939 0.621060 -9.1010 2.000000 1.000000 76 Ca c 0.419293 0.580707 -6.0673 2.000000 1.000000 77 C c 0.542980 0.457020 -3.0337 1.343539 1.000000 78 O c 0.448566 0.425107 -3.8001 1.018487 1.000000 79 O c 0.384739 0.488934 -2.2672 1.018487 1.000000 80 O c 0.795634 0.457020 -3.0337 1.018487 1.000000 81 O c 0.741546 0.632127 -6.8338 1.018487 1.000000 82 C c 0.835960 0.664040 -6.0673 1.343539 1.000000 83 O c 0.677719 0.695954 -5.3009 1.018487 1.000000 84 O c 0.088614 0.664040 -6.0673 1.018487 1.000000 85 Ca c 0.959646 0.540353 -3.0337 2.000000 1.000000 86 C c 0.002626 0.497374 -6.0673 1.343539 1.000000 87 O c 0.097040 0.529287 -5.3009 1.018487 1.000000 88 O c 0.749972 0.497374 -6.0673 1.018487 1.000000 89 O c 0.160867 0.465460 -6.8338 1.018487 1.000000 90 Ca c 0.126313 0.373687 -3.0337 2.000000 1.000000 91 Ca c 0.545606 0.954394 -9.1010 2.000000 1.000000 92 C c 0.669293 0.830707 -6.0673 1.343539 1.000000 93 O c 0.763706 0.862621 -5.3009 1.018487 1.000000 94 O c 0.827533 0.798793 -6.8338 1.018487 1.000000 95 O c 0.416639 0.830707 -6.0673 1.018487 1.000000 96 Ca c 0.792980 0.707020 -3.0337 2.000000 1.000000 97 Ca c 0.085960 0.914040 -6.0673 2.000000 1.000000 98 C c 0.128939 0.871060 -9.1010 1.343539 1.000000 99 O c 0.034526 0.839147 -9.8675 1.018487 1.000000 100 O c 0.381593 0.871060 -9.1010 1.018487 1.000000 101 O c 0.970699 0.902974 -8.3345 1.018487 1.000000 102 Ca c 0.005253 0.994747 -12.1347 2.000000 1.000000 103 Ca c 0.252626 0.747374 -6.0673 2.000000 1.000000 104 C c 0.376313 0.623687 -3.0337 1.343539 1.000000 105 O c 0.470727 0.655600 -2.2672 1.018487 1.000000 106 O c 0.123659 0.623687 -3.0337 1.018487 1.000000 107 O c 0.534554 0.591773 -3.8001 1.018487 1.000000 108 O c 0.115233 0.758440 -3.8001 1.018487 1.000000 109 C c 0.209646 0.790353 -3.0337 1.343539 1.000000 110 O c 0.051406 0.822267 -2.2672 1.018487 1.000000 111 O c 0.462300 0.790353 -3.0337 1.018487 1.000000 112 C c 0.502626 0.997374 -6.0673 1.343539 1.000000 113 O c 0.408213 0.965460 -6.8338 1.018487 1.000000 114 O c 0.755280 0.997374 -6.0673 1.018487 1.000000 115 O c 0.344386 0.029287 -5.3009 1.018487 1.000000 116 C c 0.042980 0.957020 -3.0337 1.343539 1.000000 117 O c 0.137393 0.988934 -2.2672 1.018487 1.000000 118 O c 0.201220 0.925107 -3.8001 1.018487 1.000000 119 O c 0.790326 0.957020 -3.0337 1.018487 1.000000 120 Ca c 0.626313 0.873687 -3.0337 2.000000 1.000000 241 O s 0.327287 0.046093 -12.9029 -2.133000 1.000000 242 O s 0.263313 0.110068 -11.3664 -2.133000 1.000000 243 O s 0.675156 0.078081 -12.1347 -2.133000 1.000000 244 O s 0.709035 0.037727 -9.1010 -2.133000 1.000000 245 O s 0.120879 0.005740 -9.8692 -2.133000 1.000000 246 O s 0.056904 0.069714 -8.3328 -2.133000 1.000000 247 O s 0.700974 0.172407 -9.8692 -2.133000 1.000000 248 O s 0.637000 0.236381 -8.3328 -2.133000 1.000000 249 O s 0.048843 0.204394 -9.1010 -2.133000 1.000000 250 O s 0.349884 0.276735 -11.3664 -2.133000 1.000000 251 O s 0.002015 0.244747 -12.1347 -2.133000 1.000000 252 O s 0.413858 0.212760 -12.9029 -2.133000 1.000000 253 O s 0.082722 0.164040 -6.0673 -2.133000 1.000000 254 O s 0.494566 0.132053 -6.8356 -2.133000 1.000000 255 O s 0.430591 0.196028 -5.2991 -2.133000 1.000000 256 O s 0.993954 0.379427 -12.9029 -2.133000 1.000000 257 O s 0.929980 0.443401 -11.3664 -2.133000 1.000000 258 O s 0.341823 0.411414 -12.1347 -2.133000 1.000000 259 O s 0.016551 0.610068 -11.3664 -2.133000 1.000000 260 O s 0.080525 0.546093 -12.9029 -2.133000 1.000000 261 O s 0.668682 0.578081 -12.1347 -2.133000 1.000000 262 O s 0.723571 0.403048 -8.3328 -2.133000 1.000000 263 O s 0.375702 0.371061 -9.1010 -2.133000 1.000000 264 O s 0.787545 0.339073 -9.8692 -2.133000 1.000000 265 O s 0.781682 0.091700 -3.8019 -2.133000 1.000000 266 O s 0.129551 0.123687 -3.0337 -2.133000 1.000000 267 O s 0.717707 0.155674 -2.2654 -2.133000 1.000000 268 O s 0.074661 0.298720 -6.8356 -2.133000 1.000000 269 O s 0.010687 0.362694 -5.2991 -2.133000 1.000000 270 O s 0.422530 0.330707 -6.0673 -2.133000 1.000000 271 O s 0.456409 0.290353 -3.0337 -2.133000 1.000000 272 O s 0.868252 0.258366 -3.8019 -2.133000 1.000000 273 O s 0.804278 0.322341 -2.2654 -2.133000 1.000000 274 O s 0.367641 0.505740 -9.8692 -2.133000 1.000000 275 O s 0.303667 0.569714 -8.3328 -2.133000 1.000000 276 O s 0.715510 0.537727 -9.1010 -2.133000 1.000000 277 O s 0.660621 0.712760 -12.9029 -2.133000 1.000000 278 O s 0.008490 0.744747 -12.1347 -2.133000 1.000000 279 O s 0.596647 0.776735 -11.3664 -2.133000 1.000000 280 O s 0.390238 0.736381 -8.3328 -2.133000 1.000000 281 O s 0.454212 0.672407 -9.8692 -2.133000 1.000000 282 O s 0.042369 0.704394 -9.1010 -2.133000 1.000000 283 O s 0.335348 0.911414 -12.1347 -2.133000 1.000000 284 O s 0.747192 0.879427 -12.9029 -2.133000 1.000000 285 O s 0.683218 0.943401 -11.3664 -2.133000 1.000000 286 O s 0.448348 0.425033 -3.8019 -2.133000 1.000000 287 O s 0.384374 0.489007 -2.2654 -2.133000 1.000000 288 O s 0.796217 0.457020 -3.0337 -2.133000 1.000000 289 O s 0.741328 0.632053 -6.8356 -2.133000 1.000000 290 O s 0.677354 0.696028 -5.2991 -2.133000 1.000000 291 O s 0.089197 0.664040 -6.0673 -2.133000 1.000000 292 O s 0.097258 0.529361 -5.2991 -2.133000 1.000000 293 O s 0.749389 0.497374 -6.0673 -2.133000 1.000000 294 O s 0.161232 0.465386 -6.8356 -2.133000 1.000000 295 O s 0.763924 0.862694 -5.2991 -2.133000 1.000000 296 O s 0.827899 0.798720 -6.8356 -2.133000 1.000000 297 O s 0.416055 0.830707 -6.0673 -2.133000 1.000000 298 O s 0.034308 0.839073 -9.8692 -2.133000 1.000000 299 O s 0.382177 0.871060 -9.1010 -2.133000 1.000000 300 O s 0.970334 0.903048 -8.3328 -2.133000 1.000000 301 O s 0.470945 0.655674 -2.2654 -2.133000 1.000000 302 O s 0.123076 0.623687 -3.0337 -2.133000 1.000000 303 O s 0.534919 0.591700 -3.8019 -2.133000 1.000000 304 O s 0.115015 0.758366 -3.8019 -2.133000 1.000000 305 O s 0.051040 0.822341 -2.2654 -2.133000 1.000000 306 O s 0.462884 0.790353 -3.0337 -2.133000 1.000000 307 O s 0.407995 0.965387 -6.8356 -2.133000 1.000000 308 O s 0.755864 0.997374 -6.0673 -2.133000 1.000000 309 O s 0.344020 0.029361 -5.2991 -2.133000 1.000000 310 O s 0.137611 0.989007 -2.2654 -2.133000 1.000000 311 O s 0.201586 0.925033 -3.8019 -2.133000 1.000000 312 O s 0.789742 0.957020 -3.0337 -2.133000 1.000000 -------------------------------------------------------------------------------- Molecule list generated from bondlengths : Total number of molecules = 48 -------------------------------------------------------------------------------- Molecule No./: Atoms Periodicity : -------------------------------------------------------------------------------- 1 0 : C c 1 O c 2 O c 3 O c 4 O s 241 : O s 242 O s 243 2 0 : O c 5 C c 6 O c 7 O c 8 O s 244 : O s 245 O s 246 3 0 : C c 12 O c 13 O c 14 O c 15 O s 247 : O s 248 O s 249 4 0 : C c 16 O c 17 O c 18 O c 19 O s 250 : O s 251 O s 252 5 0 : O c 21 C c 22 O c 23 O c 24 O s 253 : O s 254 O s 255 6 0 : O c 25 C c 26 O c 27 O c 28 O s 256 : O s 257 O s 258 7 0 : C c 31 O c 32 O c 33 O c 34 O s 259 : O s 260 O s 261 8 0 : C c 37 O c 38 O c 39 O c 40 O s 262 : O s 263 O s 264 9 0 : C c 43 O c 44 O c 45 O c 46 O s 265 : O s 266 O s 267 10 0 : C c 47 O c 48 O c 49 O c 50 O s 268 : O s 269 O s 270 11 0 : O c 51 C c 52 O c 53 O c 54 O s 271 : O s 272 O s 273 12 0 : O c 55 C c 56 O c 57 O c 58 O s 274 : O s 275 O s 276 13 0 : C c 63 O c 64 O c 65 O c 66 O s 277 : O s 278 O s 279 14 0 : C c 67 O c 68 O c 69 O c 70 O s 280 : O s 281 O s 282 15 0 : O c 71 C c 72 O c 73 O c 74 O s 283 : O s 284 O s 285 16 0 : C c 77 O c 78 O c 79 O c 80 O s 286 : O s 287 O s 288 17 0 : O c 81 C c 82 O c 83 O c 84 O s 289 : O s 290 O s 291 18 0 : C c 86 O c 87 O c 88 O c 89 O s 292 : O s 293 O s 294 19 0 : C c 92 O c 93 O c 94 O c 95 O s 295 : O s 296 O s 297 20 0 : C c 98 O c 99 O c 100 O c 101 O s 298 : O s 299 O s 300 21 0 : C c 104 O c 105 O c 106 O c 107 O s 301 : O s 302 O s 303 22 0 : O c 108 C c 109 O c 110 O c 111 O s 304 : O s 305 O s 306 23 0 : C c 112 O c 113 O c 114 O c 115 O s 307 : O s 308 O s 309 24 0 : C c 116 O c 117 O c 118 O c 119 O s 310 : O s 311 O s 312 25 0 : C c 122 O c 123 O c 124 O c 125 O s 313 : O s 314 O s 315 26 0 : O c 126 C c 127 O c 128 O c 129 O s 316 : O s 317 O s 318 27 0 : C c 131 O c 132 O c 133 O c 134 O s 319 : O s 320 O s 321 28 0 : C c 137 O c 138 O c 139 O c 140 O s 322 : O s 323 O s 324 29 0 : O c 141 C c 142 O c 143 O c 144 O s 325 : O s 326 O s 327 30 0 : O c 146 C c 147 O c 148 O c 149 O s 328 : O s 329 O s 330 31 0 : C c 151 O c 152 O c 153 O c 154 O s 331 : O s 332 O s 333 32 0 : C c 157 O c 158 O c 159 O c 160 O s 334 : O s 335 O s 336 33 0 : C c 161 O c 162 O c 163 O c 164 O s 337 : O s 338 O s 339 34 0 : O c 165 C c 166 O c 167 O c 168 O s 340 : O s 341 O s 342 35 0 : C c 172 O c 173 O c 174 O c 175 O s 343 : O s 344 O s 345 36 0 : O c 177 C c 178 O c 179 O c 180 O s 346 : O s 347 O s 348 37 0 : C c 181 O c 182 O c 183 O c 184 O s 349 : O s 350 O s 351 38 0 : C c 188 O c 189 O c 190 O c 191 O s 352 : O s 353 O s 354 39 0 : C c 192 O c 193 O c 194 O c 195 O s 355 : O s 356 O s 357 40 0 : O c 196 C c 197 O c 198 O c 199 O s 358 : O s 359 O s 360 41 0 : O c 200 C c 201 O c 202 O c 203 O s 361 : O s 362 O s 363 42 0 : C c 206 O c 207 O c 208 O c 209 O s 364 : O s 365 O s 366 43 0 : C c 213 O c 214 O c 215 O c 216 O s 367 : O s 368 O s 369 44 0 : C c 218 O c 219 O c 220 O c 221 O s 370 : O s 371 O s 372 45 0 : C c 222 O c 223 O c 224 O c 225 O s 373 : O s 374 O s 375 46 0 : O c 226 C c 227 O c 228 O c 229 O s 376 : O s 377 O s 378 47 0 : C c 232 O c 233 O c 234 O c 235 O s 379 : O s 380 O s 381 48 0 : C c 236 O c 237 O c 238 O c 239 O s 382 : O s 383 O s 384 -------------------------------------------------------------------------------- ******************************************************************************** * General input information * ******************************************************************************** Species output for all configurations : -------------------------------------------------------------------------------- Species Type Atomic Atomic Charge Radii (Angs) Library Number Mass (e) Cova Ionic VDW Symbol -------------------------------------------------------------------------------- Cd Core 48 112.41 2.0000 0.000 0.000 2.520 Mn Core 25 54.94 2.0000 0.000 0.000 2.010 Mg Core 12 24.31 2.0000 1.100 0.000 1.640 Zn Core 30 65.39 2.0000 0.000 0.000 2.160 Ni Core 28 58.69 2.0000 0.000 0.000 1.810 Co Core 27 58.93 2.0000 0.000 0.000 1.990 Fe Core 26 55.85 2.0000 0.000 0.000 2.000 Ca Core 20 40.08 2.0000 0.990 0.000 2.750 C Core 6 12.01 1.3435 0.770 0.000 1.530 O Core 8 16.00 1.0185 0.730 0.000 1.360 O Shell 8 0.00 -2.1330 0.730 0.000 1.360 -------------------------------------------------------------------------------- Accuracy factor for short range sums = 8.000 Time limit = Infinity **** Warning - potential 1 is acting on the core of an ion with a shell **** **** Warning - potential 11 is acting on the core of an ion with a shell **** General interatomic potentials : -------------------------------------------------------------------------------- Atom Types Potential A B C D Cutoffs(Ang) 1 2 Min Max -------------------------------------------------------------------------------- Ca c O s Buckingham 0.215E+04 0.289 .000 .000 0.000 10.000 Cd c O s Buckingham 0.433E+04 0.256 .000 .000 0.000 10.000 Mg c O s Buckingham 0.104E+04 0.289 .000 .000 0.000 10.000 Co c O s Buckingham 0.110E+04 0.286 .000 .000 0.000 10.000 Fe c O s Buckingham 0.215E+04 0.265 .000 .000 0.000 10.000 Mn c O s Buckingham 0.200E+04 0.273 .000 .000 0.000 10.000 Ni c O s Buckingham 0.163E+04 0.267 .000 .000 0.000 10.000 Zn c O s Buckingham 0.103E+04 0.289 .000 .000 0.000 10.000 O c O s Spring (c-s) 52.7 0.100E+05 .000 .000 0.000 0.600 -------------------------------------------------------------------------------- Intramolecular potentials : -------------------------------------------------------------------------------- Atom Types Potential A B C D Cutoffs(Ang) 1 2 Min Max -------------------------------------------------------------------------------- O c O c Buckingham 0.403E+04 0.245 .000 .000 0.000 2.500 C c O c Morse 5.00 2.52 1.20 .000 0.000 1 Bond -------------------------------------------------------------------------------- Intermolecular potentials : -------------------------------------------------------------------------------- Atom Types Potential A B C D Cutoffs(Ang) 1 2 Min Max -------------------------------------------------------------------------------- O s O s Buckingham 0.647E+05 0.199 21.8 .000 0.000 15.000 -------------------------------------------------------------------------------- Intramolecular Three-body potentials : Harmonic form: -------------------------------------------------------------------------------- Atom Atom Atom Force Constants Theta Cutoffs 1 2 3 (eVrad**-2/eVrad**-3/eVrad**-4) (deg) 1-2 1-3 2-3 -------------------------------------------------------------------------------- C c O c O c 1.777 0.0000 0.0000 120.000 Bonded -------------------------------------------------------------------------------- Intramolecular Four-body potentials : Out of plane potentials: -------------------------------------------------------------------------------- Atom Types Force cst Cutoffs 1 2 3 4 (eV) 1-2 1-3 2-3 1-4 -------------------------------------------------------------------------------- C c O c O c O c 8.8279 Bonded -------------------------------------------------------------------------------- ******************************************************************************** * Output for configuration 1 : calcite_104_0.0000 * ******************************************************************************** Components of energy : -------------------------------------------------------------------------------- Interatomic potentials = -467.34504622 eV Three-body potentials = 0.00000000 eV Four-body potentials = 0.00000000 eV Out of plane potentials = 0.00000001 eV Monopole - monopole (real) = -149.61250308 eV Monopole - monopole (recip)= -1418.45612634 eV Monopole - monopole (total)= -1568.06862942 eV -------------------------------------------------------------------------------- Total lattice energy = -2035.41367562 eV -------------------------------------------------------------------------------- Total lattice energy = -196386.3055 kJ/(mole unit cells) -------------------------------------------------------------------------------- Surface energy (region 1) = 0.7073 J/m**2 -------------------------------------------------------------------------------- Attachment energy = -10.67206952 eV -------------------------------------------------------------------------------- Peak dynamic memory used = 1.31 MB Timing analysis for Gulp : -------------------------------------------------------------------------------- Task / Subroutine Time (Seconds) -------------------------------------------------------------------------------- Calculation of reciprocal space energy and derivatives 0.6400 Calculation of real space energy and derivatives 1.0900 Calculation of three-body energy and derivatives 0.0200 Calculation of four-body energy and derivatives 0.0100 -------------------------------------------------------------------------------- Total CPU time 1.9500 -------------------------------------------------------------------------------- Dump file written as calcite_104_0.0000.res Job Finished at 10:48.23 23rd April 2002 gdis-0.90/models/urea_conv.castep0000644000175000017500000073207510051676644015522 0ustar seansean Pseudo atomic calculation performed for H 1s1 Converged in 65 iterations to a total energy of -12.465837 eV Pseudo atomic calculation performed for C 2s2 2p2 Converged in 72 iterations to a total energy of -146.434292 eV Pseudo atomic calculation performed for N 2s2 2p3 Converged in 55 iterations to a total energy of -263.644770 eV Pseudo atomic calculation performed for O 2s2 2p4 Converged in 50 iterations to a total energy of -421.632581 eV Calculation parallelised over 16 nodes. K-points are distributed over 2 groups, each containing 8 nodes. ************************************ Title ************************************ CASTEP calculation from Materials Studio ***************************** General Parameters ****************************** output verbosity : normal (1) write checkpoint data to : urea.check type of calculation : geometry optimization stress calculation : on unlimited duration calculation timing information : on output length unit : A output mass unit : amu output time unit : ps output charge unit : e output energy unit : eV output force unit : eV/A output velocity unit : A/ps output pressure unit : GPa output inv_length unit : 1/A output frequency unit : cm-1 output force constant unit : eV/A**2 output volume unit : A**3 wavefunctions paging : none random number generator seed : randomised (4170) data distribution : optimal for this architecture optimization strategy : balance speed and memory *********************** Exchange-Correlation Parameters *********************** using functional : Perdew Burke Ernzerhof ************************* Pseudopotential Parameters ************************** pseudopotential representation : reciprocal space representation : reciprocal space **************************** Basis Set Parameters ***************************** plane wave basis set cut-off : 2000.0000 eV size of standard grid : 4.0000 size of fine grid : 91.6460 1/A finite basis set correction : automatic number of sample energies : 4 sample spacing : 5.0000 eV **************************** Electronic Parameters **************************** number of electrons : 48 net charge of system : 0 net spin of system : 0 number of up spins : 24 number of down spins : 24 treating system as non-spin-polarized number of bands : 24 ********************* Electronic Minimization Parameters ********************** Method: Treating system as non-metallic, and number of SD steps : 1 and number of CG steps : 4 total energy / atom convergence tol. : 0.5000E-06 eV eigen-energy convergence tolerance : 0.3333E-06 eV convergence tolerance window : 3 cycles max. number of SCF cycles : 100 ************************** Density Mixing Parameters ************************** density-mixing scheme : Pulay max. length of mixing history : 20 charge density mixing amplitude : 0.5000 cut-off energy for mixing : 2000. eV charge density mixing g-vector : 1.500 1/A ********************** Geometry Optimization Parameters *********************** optimization method : BFGS variable cell method : fixed basis quality max. number of steps : 100 estimated bulk modulus : 500.0 GPa estimated : 1668. cm-1 total energy convergence tolerance : 0.5000E-05 eV/atom max ionic |force| tolerance : 0.1000E-01 eV/A max ionic |displacement| tolerance : 0.5000E-03 A max |stress component| tolerance : 0.2000E-01 GPa convergence tolerance window : 2 steps backup results every : 5 steps ******************************************************************************* ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.5760000 0.0000000 0.0000000 1.1268266 0.0000000 0.0000000 0.0000000 5.5760000 0.0000000 0.0000000 1.1268266 0.0000000 0.0000000 0.0000000 4.6860000 0.0000000 0.0000000 1.3408419 Lattice parameters(A) Cell Angles a = 5.576000 alpha = 90.000000 b = 5.576000 beta = 90.000000 c = 4.686000 gamma = 90.000000 Current cell volume = 145.696062 A**3 ------------------------------- Cell Contents ------------------------------- Total number of ions in cell = 16 Total number of species in cell = 4 Max number of any one species = 8 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.262000 0.762000 0.291001 x x H 2 0.129000 0.629000 -0.042000 x x H 3 -0.262000 -0.762000 0.291001 x x H 4 -0.129000 -0.629000 -0.042000 x x H 5 0.762000 -0.262000 -0.291001 x x H 6 0.629000 -0.129000 0.042000 x x H 7 -0.762000 0.262000 -0.291001 x x H 8 -0.629000 0.129000 0.042000 x x C 1 0.000000 0.500000 0.328399 x x C 2 0.500000 0.000000 -0.328399 x x N 1 0.144800 0.644800 0.178700 x x N 2 -0.144800 -0.644800 0.178700 x x N 3 0.644800 -0.144800 -0.178700 x x N 4 -0.644800 0.144800 -0.178700 x x O 1 0.000000 0.500000 0.596601 x x O 2 0.500000 0.000000 -0.596601 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx No user defined ionic velocities ------------------------------- Details of Species ------------------------------- Mass of species in AMU H 1.0080000 C 12.0109997 N 14.0070000 O 15.9989996 Files used for pseudopotentials: H H_00.recpot C C_00.recpot N N_00.recpot O O_00.recpot ------------------------------- k-Points For BZ Sampling ------------------------------- Number of kpoints used = 6 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ + Number Fractional coordinates Weight + +-----------------------------------------------------+ + 1 0.375000 0.375000 0.375000 0.1250000 + + 2 0.375000 0.375000 0.125000 0.1250000 + + 3 0.375000 0.125000 0.375000 0.2500000 + + 4 0.375000 0.125000 0.125000 0.2500000 + + 5 0.125000 0.125000 0.375000 0.1250000 + + 6 0.125000 0.125000 0.125000 0.1250000 + +++++++++++++++++++++++++++++++++++++++++++++++++++++++ ------------------------------- Symmetry and Constraints ------------------------------- Number of symmetry operations = 8 Set iprint > 1 for symmetry rotation details Centre of mass is NOT constrained There are no ionic constraints specified or generated for this cell Number of cell constraints= 4 Cell constraints are: 1 1 3 0 0 0 External pressure/stress (GPa) 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 Calculating finite basis set correction with 4 cut-off energies. Calculating total energy with cut-off of 1985.000eV. ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial 0.00000000E+000 41.46 <-- SCF 1 -2.24328062E+003 1.40205039E+002 341.50 <-- SCF 2 -2.39579720E+003 9.53228641E+000 640.52 <-- SCF Pseudo atomic calculation performed for H 1s1 Converged in 60 iterations to a total energy of -12.465834 eV Pseudo atomic calculation performed for C 2s2 2p2 Converged in 81 iterations to a total energy of -146.434298 eV Pseudo atomic calculation performed for N 2s2 2p3 Converged in 59 iterations to a total energy of -263.644768 eV Pseudo atomic calculation performed for O 2s2 2p4 Converged in 48 iterations to a total energy of -421.632580 eV Calculation parallelised over 16 nodes. K-points are distributed over 2 groups, each containing 8 nodes. ************************************ Title ************************************ CASTEP calculation from Materials Studio ***************************** General Parameters ****************************** output verbosity : normal (1) write checkpoint data to : urea.check type of calculation : geometry optimization stress calculation : off unlimited duration calculation timing information : on output length unit : A output mass unit : amu output time unit : ps output charge unit : e output energy unit : eV output force unit : eV/A output velocity unit : A/ps output pressure unit : GPa output inv_length unit : 1/A output frequency unit : cm-1 output force constant unit : eV/A**2 output volume unit : A**3 wavefunctions paging : none random number generator seed : randomised (133639421) data distribution : optimal for this architecture optimization strategy : balance speed and memory *********************** Exchange-Correlation Parameters *********************** using functional : Perdew Burke Ernzerhof ************************* Pseudopotential Parameters ************************** pseudopotential representation : reciprocal space representation : reciprocal space **************************** Basis Set Parameters ***************************** plane wave basis set cut-off : 2000.0000 eV size of standard grid : 4.0000 size of fine grid : 91.6460 1/A finite basis set correction : automatic number of sample energies : 4 sample spacing : 5.0000 eV **************************** Electronic Parameters **************************** number of electrons : 48 net charge of system : 0 net spin of system : 0 number of up spins : 24 number of down spins : 24 treating system as non-spin-polarized number of bands : 24 ********************* Electronic Minimization Parameters ********************** Method: Treating system as non-metallic, and number of SD steps : 1 and number of CG steps : 4 total energy / atom convergence tol. : 0.5000E-06 eV eigen-energy convergence tolerance : 0.3333E-06 eV convergence tolerance window : 3 cycles max. number of SCF cycles : 100 ************************** Density Mixing Parameters ************************** density-mixing scheme : Pulay max. length of mixing history : 20 charge density mixing amplitude : 0.5000 cut-off energy for mixing : 2000. eV charge density mixing g-vector : 1.500 1/A ********************** Geometry Optimization Parameters *********************** optimization method : BFGS variable cell method : fixed basis quality max. number of steps : 100 estimated bulk modulus : 500.0 GPa estimated : 1668. cm-1 total energy convergence tolerance : 0.5000E-05 eV/atom max ionic |force| tolerance : 0.1000E-01 eV/A max ionic |displacement| tolerance : 0.5000E-03 A max |stress component| tolerance : 0.2000E-01 GPa convergence tolerance window : 2 steps backup results every : 5 steps ******************************************************************************* ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.5760000 0.0000000 0.0000000 1.1268266 0.0000000 0.0000000 0.0000000 5.5760000 0.0000000 0.0000000 1.1268266 0.0000000 0.0000000 0.0000000 4.6860000 0.0000000 0.0000000 1.3408419 Lattice parameters(A) Cell Angles a = 5.576000 alpha = 90.000000 b = 5.576000 beta = 90.000000 c = 4.686000 gamma = 90.000000 Current cell volume = 145.696062 A**3 ------------------------------- Cell Contents ------------------------------- Total number of ions in cell = 16 Total number of species in cell = 4 Max number of any one species = 8 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.262000 0.762000 0.291001 x x H 2 0.129000 0.629000 -0.042000 x x H 3 -0.262000 -0.762000 0.291001 x x H 4 -0.129000 -0.629000 -0.042000 x x H 5 0.762000 -0.262000 -0.291001 x x H 6 0.629000 -0.129000 0.042000 x x H 7 -0.762000 0.262000 -0.291001 x x H 8 -0.629000 0.129000 0.042000 x x C 1 0.000000 0.500000 0.328399 x x C 2 0.500000 0.000000 -0.328399 x x N 1 0.144800 0.644800 0.178700 x x N 2 -0.144800 -0.644800 0.178700 x x N 3 0.644800 -0.144800 -0.178700 x x N 4 -0.644800 0.144800 -0.178700 x x O 1 0.000000 0.500000 0.596601 x x O 2 0.500000 0.000000 -0.596601 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx No user defined ionic velocities ------------------------------- Details of Species ------------------------------- Mass of species in AMU H 1.0080000 C 12.0109997 N 14.0070000 O 15.9989996 Files used for pseudopotentials: H H_00.recpot C C_00.recpot N N_00.recpot O O_00.recpot ------------------------------- k-Points For BZ Sampling ------------------------------- Number of kpoints used = 6 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ + Number Fractional coordinates Weight + +-----------------------------------------------------+ + 1 0.375000 0.375000 0.375000 0.1250000 + + 2 0.375000 0.375000 0.125000 0.1250000 + + 3 0.375000 0.125000 0.375000 0.2500000 + + 4 0.375000 0.125000 0.125000 0.2500000 + + 5 0.125000 0.125000 0.375000 0.1250000 + + 6 0.125000 0.125000 0.125000 0.1250000 + +++++++++++++++++++++++++++++++++++++++++++++++++++++++ ------------------------------- Symmetry and Constraints ------------------------------- Number of symmetry operations = 8 Set iprint > 1 for symmetry rotation details Centre of mass is NOT constrained There are no ionic constraints specified or generated for this cell Number of cell constraints= 6 Cell constraints are: 0 0 0 0 0 0 External pressure/stress (GPa) 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 Calculating finite basis set correction with 4 cut-off energies. Calculating total energy with cut-off of 1985.000eV. ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial 0.00000000E+000 41.26 <-- SCF 1 -2.24504750E+003 1.40315468E+002 345.69 <-- SCF Pseudo atomic calculation performed for H 1s1 Converged in 60 iterations to a total energy of -12.465834 eV Pseudo atomic calculation performed for C 2s2 2p2 Converged in 81 iterations to a total energy of -146.434297 eV Pseudo atomic calculation performed for N 2s2 2p3 Converged in 60 iterations to a total energy of -263.644771 eV Pseudo atomic calculation performed for O 2s2 2p4 Converged in 50 iterations to a total energy of -421.632581 eV Calculation parallelised over 16 nodes. K-points are distributed over 2 groups, each containing 8 nodes. ************************************ Title ************************************ CASTEP calculation from Materials Studio ***************************** General Parameters ****************************** output verbosity : normal (1) write checkpoint data to : urea.check type of calculation : geometry optimization stress calculation : off unlimited duration calculation timing information : on output length unit : A output mass unit : amu output time unit : ps output charge unit : e output energy unit : eV output force unit : eV/A output velocity unit : A/ps output pressure unit : GPa output inv_length unit : 1/A output frequency unit : cm-1 output force constant unit : eV/A**2 output volume unit : A**3 wavefunctions paging : none random number generator seed : randomised (134835039) data distribution : optimal for this architecture optimization strategy : balance speed and memory *********************** Exchange-Correlation Parameters *********************** using functional : Perdew Burke Ernzerhof ************************* Pseudopotential Parameters ************************** pseudopotential representation : reciprocal space representation : reciprocal space **************************** Basis Set Parameters ***************************** plane wave basis set cut-off : 2000.0000 eV size of standard grid : 4.0000 size of fine grid : 91.6460 1/A finite basis set correction : none **************************** Electronic Parameters **************************** number of electrons : 48 net charge of system : 0 net spin of system : 0 number of up spins : 24 number of down spins : 24 treating system as non-spin-polarized number of bands : 24 ********************* Electronic Minimization Parameters ********************** Method: Treating system as non-metallic, and number of SD steps : 1 and number of CG steps : 4 total energy / atom convergence tol. : 0.5000E-06 eV eigen-energy convergence tolerance : 0.3333E-06 eV convergence tolerance window : 3 cycles max. number of SCF cycles : 100 ************************** Density Mixing Parameters ************************** density-mixing scheme : Pulay max. length of mixing history : 20 charge density mixing amplitude : 0.5000 cut-off energy for mixing : 2000. eV charge density mixing g-vector : 1.500 1/A ********************** Geometry Optimization Parameters *********************** optimization method : BFGS variable cell method : fixed basis quality max. number of steps : 100 estimated bulk modulus : 500.0 GPa estimated : 1668. cm-1 total energy convergence tolerance : 0.5000E-05 eV/atom max ionic |force| tolerance : 0.1000E-01 eV/A max ionic |displacement| tolerance : 0.5000E-03 A max |stress component| tolerance : 0.2000E-01 GPa convergence tolerance window : 2 steps backup results every : 5 steps ******************************************************************************* ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.5760000 0.0000000 0.0000000 1.1268266 0.0000000 0.0000000 0.0000000 5.5760000 0.0000000 0.0000000 1.1268266 0.0000000 0.0000000 0.0000000 4.6860000 0.0000000 0.0000000 1.3408419 Lattice parameters(A) Cell Angles a = 5.576000 alpha = 90.000000 b = 5.576000 beta = 90.000000 c = 4.686000 gamma = 90.000000 Current cell volume = 145.696062 A**3 ------------------------------- Cell Contents ------------------------------- Total number of ions in cell = 16 Total number of species in cell = 4 Max number of any one species = 8 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.262000 0.762000 0.291001 x x H 2 0.129000 0.629000 -0.042000 x x H 3 -0.262000 -0.762000 0.291001 x x H 4 -0.129000 -0.629000 -0.042000 x x H 5 0.762000 -0.262000 -0.291001 x x H 6 0.629000 -0.129000 0.042000 x x H 7 -0.762000 0.262000 -0.291001 x x H 8 -0.629000 0.129000 0.042000 x x C 1 0.000000 0.500000 0.328399 x x C 2 0.500000 0.000000 -0.328399 x x N 1 0.144800 0.644800 0.178700 x x N 2 -0.144800 -0.644800 0.178700 x x N 3 0.644800 -0.144800 -0.178700 x x N 4 -0.644800 0.144800 -0.178700 x x O 1 0.000000 0.500000 0.596601 x x O 2 0.500000 0.000000 -0.596601 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx No user defined ionic velocities ------------------------------- Details of Species ------------------------------- Mass of species in AMU H 1.0080000 C 12.0109997 N 14.0070000 O 15.9989996 Files used for pseudopotentials: H H_00.recpot C C_00.recpot N N_00.recpot O O_00.recpot ------------------------------- k-Points For BZ Sampling ------------------------------- Number of kpoints used = 6 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ + Number Fractional coordinates Weight + +-----------------------------------------------------+ + 1 0.375000 0.375000 0.375000 0.1250000 + + 2 0.375000 0.375000 0.125000 0.1250000 + + 3 0.375000 0.125000 0.375000 0.2500000 + + 4 0.375000 0.125000 0.125000 0.2500000 + + 5 0.125000 0.125000 0.375000 0.1250000 + + 6 0.125000 0.125000 0.125000 0.1250000 + +++++++++++++++++++++++++++++++++++++++++++++++++++++++ ------------------------------- Symmetry and Constraints ------------------------------- Number of symmetry operations = 8 Set iprint > 1 for symmetry rotation details Centre of mass is NOT constrained There are no ionic constraints specified or generated for this cell Number of cell constraints= 6 Cell constraints are: 0 0 0 0 0 0 External pressure/stress (GPa) 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial 0.00000000E+000 32.44 <-- SCF Pseudo atomic calculation performed for H 1s1 Converged in 65 iterations to a total energy of -12.465837 eV Pseudo atomic calculation performed for C 2s2 2p2 Converged in 88 iterations to a total energy of -146.434299 eV Pseudo atomic calculation performed for N 2s2 2p3 Converged in 66 iterations to a total energy of -263.644771 eV Pseudo atomic calculation performed for O 2s2 2p4 Converged in 50 iterations to a total energy of -421.632579 eV Calculation parallelised over 16 nodes. K-points are distributed over 2 groups, each containing 8 nodes. ************************************ Title ************************************ CASTEP calculation from Materials Studio ***************************** General Parameters ****************************** output verbosity : normal (1) write checkpoint data to : urea.check type of calculation : geometry optimization stress calculation : off unlimited duration calculation timing information : on output length unit : A output mass unit : amu output time unit : ps output charge unit : e output energy unit : eV output force unit : eV/A output velocity unit : A/ps output pressure unit : GPa output inv_length unit : 1/A output frequency unit : cm-1 output force constant unit : eV/A**2 output volume unit : A**3 wavefunctions paging : none random number generator seed : randomised (135143794) data distribution : optimal for this architecture optimization strategy : balance speed and memory *********************** Exchange-Correlation Parameters *********************** using functional : Perdew Burke Ernzerhof ************************* Pseudopotential Parameters ************************** pseudopotential representation : reciprocal space representation : reciprocal space **************************** Basis Set Parameters ***************************** plane wave basis set cut-off : 2000.0000 eV size of standard grid : 4.0000 size of fine grid : 91.6460 1/A finite basis set correction : none **************************** Electronic Parameters **************************** number of electrons : 48 net charge of system : 0 net spin of system : 0 number of up spins : 24 number of down spins : 24 treating system as non-spin-polarized number of bands : 24 ********************* Electronic Minimization Parameters ********************** Method: Treating system as non-metallic, and number of SD steps : 1 and number of CG steps : 4 total energy / atom convergence tol. : 0.5000E-06 eV eigen-energy convergence tolerance : 0.3333E-06 eV convergence tolerance window : 3 cycles max. number of SCF cycles : 100 ************************** Density Mixing Parameters ************************** density-mixing scheme : Pulay max. length of mixing history : 20 charge density mixing amplitude : 0.5000 cut-off energy for mixing : 2000. eV charge density mixing g-vector : 1.500 1/A ********************** Geometry Optimization Parameters *********************** optimization method : BFGS variable cell method : fixed basis quality max. number of steps : 100 estimated bulk modulus : 500.0 GPa estimated : 1668. cm-1 total energy convergence tolerance : 0.5000E-05 eV/atom max ionic |force| tolerance : 0.1000E-01 eV/A max ionic |displacement| tolerance : 0.5000E-03 A max |stress component| tolerance : 0.2000E-01 GPa convergence tolerance window : 2 steps backup results every : 5 steps ******************************************************************************* ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.5760000 0.0000000 0.0000000 1.1268266 0.0000000 0.0000000 0.0000000 5.5760000 0.0000000 0.0000000 1.1268266 0.0000000 0.0000000 0.0000000 4.6860000 0.0000000 0.0000000 1.3408419 Lattice parameters(A) Cell Angles a = 5.576000 alpha = 90.000000 b = 5.576000 beta = 90.000000 c = 4.686000 gamma = 90.000000 Current cell volume = 145.696062 A**3 ------------------------------- Cell Contents ------------------------------- Total number of ions in cell = 16 Total number of species in cell = 4 Max number of any one species = 8 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.262000 0.762000 0.291001 x x H 2 0.129000 0.629000 -0.042000 x x H 3 -0.262000 -0.762000 0.291001 x x H 4 -0.129000 -0.629000 -0.042000 x x H 5 0.762000 -0.262000 -0.291001 x x H 6 0.629000 -0.129000 0.042000 x x H 7 -0.762000 0.262000 -0.291001 x x H 8 -0.629000 0.129000 0.042000 x x C 1 0.000000 0.500000 0.328399 x x C 2 0.500000 0.000000 -0.328399 x x N 1 0.144800 0.644800 0.178700 x x N 2 -0.144800 -0.644800 0.178700 x x N 3 0.644800 -0.144800 -0.178700 x x N 4 -0.644800 0.144800 -0.178700 x x O 1 0.000000 0.500000 0.596601 x x O 2 0.500000 0.000000 -0.596601 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx No user defined ionic velocities ------------------------------- Details of Species ------------------------------- Mass of species in AMU H 1.0080000 C 12.0109997 N 14.0070000 O 15.9989996 Files used for pseudopotentials: H H_00.recpot C C_00.recpot N N_00.recpot O O_00.recpot ------------------------------- k-Points For BZ Sampling ------------------------------- Number of kpoints used = 6 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ + Number Fractional coordinates Weight + +-----------------------------------------------------+ + 1 0.375000 0.375000 0.375000 0.1250000 + + 2 0.375000 0.375000 0.125000 0.1250000 + + 3 0.375000 0.125000 0.375000 0.2500000 + + 4 0.375000 0.125000 0.125000 0.2500000 + + 5 0.125000 0.125000 0.375000 0.1250000 + + 6 0.125000 0.125000 0.125000 0.1250000 + +++++++++++++++++++++++++++++++++++++++++++++++++++++++ ------------------------------- Symmetry and Constraints ------------------------------- Number of symmetry operations = 8 Set iprint > 1 for symmetry rotation details Centre of mass is NOT constrained There are no ionic constraints specified or generated for this cell Number of cell constraints= 6 Cell constraints are: 0 0 0 0 0 0 External pressure/stress (GPa) 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial 0.00000000E+000 35.91 <-- SCF 1 -2.24522418E+003 1.40326511E+002 347.67 <-- SCF 2 -2.39437276E+003 9.32178638E+000 658.24 <-- SCF 3 -2.39088946E+003 -2.17706021E-001 969.62 <-- SCF 4 -2.39044815E+003 -2.75819571E-002 1280.99 <-- SCF 5 -2.39037035E+003 -4.86260341E-003 1592.61 <-- SCF 6 -2.39038641E+003 1.00388108E-003 1876.83 <-- SCF 7 -2.39039363E+003 4.51014051E-004 2100.44 <-- SCF 8 -2.39039660E+003 1.85697876E-004 2296.57 <-- SCF 9 -2.39039675E+003 9.61498060E-006 2436.65 <-- SCF 10 -2.39039677E+003 1.07137676E-006 2570.98 <-- SCF 11 -2.39039677E+003 9.22633946E-008 2705.46 <-- SCF 12 -2.39039677E+003 1.08746452E-008 2839.44 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2390.396772662 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.85547 -0.85547 -1.11234 * * H 2 0.57744 0.57744 0.79321 * * H 3 0.85547 0.85547 -1.11234 * * H 4 -0.57744 -0.57744 0.79321 * * H 5 -0.85547 0.85547 1.11234 * * H 6 0.57744 -0.57744 -0.79321 * * H 7 0.85547 -0.85547 1.11234 * * H 8 -0.57744 0.57744 -0.79321 * * C 1 0.00000 0.00000 3.45992 * * C 2 0.00000 0.00000 -3.45992 * * N 1 0.33105 0.33105 0.29240 * * N 2 -0.33105 -0.33105 0.29240 * * N 3 0.33105 -0.33105 -0.29240 * * N 4 -0.33105 0.33105 -0.29240 * * O 1 0.00000 0.00000 -3.28466 * * O 2 0.00000 0.00000 3.28466 * * * ************************************************************************* BFGS: finished iteration 0 with enthalpy= -2.39039677E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 0.000000E+000 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 3.459924E+000 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 0.000000E+000 | 5.000000E-004 | A | Yes | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 1 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.030019 | -2390.396773 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 1 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.260002 0.760002 0.287910 x x H 2 0.130348 0.630348 -0.039796 x x H 3 -0.260002 -0.760002 0.287910 x x H 4 -0.130348 -0.630348 -0.039796 x x H 5 0.760002 -0.260002 -0.287910 x x H 6 0.630348 -0.130348 0.039796 x x H 7 -0.760002 0.260002 -0.287910 x x H 8 -0.630348 0.130348 0.039796 x x C 1 0.000000 0.500000 0.338015 x x C 2 0.500000 0.000000 -0.338015 x x N 1 0.145573 0.645573 0.179513 x x N 2 -0.145573 -0.645573 0.179513 x x N 3 0.645573 -0.145573 -0.179513 x x N 4 -0.645573 0.145573 -0.179513 x x O 1 0.000000 0.500000 0.587472 x x O 2 0.500000 0.000000 -0.587472 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39039677E+003 2874.17 <-- SCF 1 -2.39534953E+003 3.09547171E-001 3166.90 <-- SCF 2 -2.39541577E+003 4.14009978E-003 3459.29 <-- SCF 3 -2.39138374E+003 -2.52002101E-001 3751.82 <-- SCF 4 -2.39087877E+003 -3.15601125E-002 4044.66 <-- SCF 5 -2.39086455E+003 -8.89045049E-004 4332.79 <-- SCF 6 -2.39086338E+003 -7.33631656E-005 4562.16 <-- SCF 7 -2.39086355E+003 1.06752968E-005 4735.28 <-- SCF 8 -2.39086364E+003 5.59016216E-006 4877.74 <-- SCF 9 -2.39086366E+003 1.63180215E-006 5006.45 <-- SCF 10 -2.39086367E+003 2.51158480E-007 5135.33 <-- SCF 11 -2.39086367E+003 3.15233716E-008 5264.06 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2390.863665924 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.41935 -0.41935 -0.77490 * * H 2 0.51142 0.51142 0.77274 * * H 3 0.41935 0.41935 -0.77490 * * H 4 -0.51142 -0.51142 0.77274 * * H 5 -0.41935 0.41935 0.77490 * * H 6 0.51142 -0.51142 -0.77274 * * H 7 0.41935 -0.41935 0.77490 * * H 8 -0.51142 0.51142 -0.77274 * * C 1 0.00000 0.00000 -0.84868 * * C 2 0.00000 0.00000 0.84868 * * N 1 -0.38412 -0.38412 0.39801 * * N 2 0.38412 0.38412 0.39801 * * N 3 -0.38412 0.38412 -0.39801 * * N 4 0.38412 -0.38412 -0.39801 * * O 1 0.00000 0.00000 0.09598 * * O 2 0.00000 0.00000 -0.09598 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.030019 | -2390.396773 | <-- min BFGS | trial step | 1.000000 | 0.001951 | -2390.863666 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 1 with enthalpy= -2.39086367E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 2.918083E-002 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 1.058407E+000 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 4.505694E-002 | 5.000000E-004 | A | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 2 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.006320 | -2390.863666 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 2 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258543 0.758543 0.284970 x x H 2 0.131903 0.631903 -0.037045 x x H 3 -0.258543 -0.758543 0.284970 x x H 4 -0.131903 -0.631903 -0.037045 x x H 5 0.758543 -0.258543 -0.284970 x x H 6 0.631903 -0.131903 0.037045 x x H 7 -0.758543 0.258543 -0.284970 x x H 8 -0.631903 0.131903 0.037045 x x C 1 0.000000 0.500000 0.337473 x x C 2 0.500000 0.000000 -0.337473 x x N 1 0.144773 0.644773 0.180863 x x N 2 -0.144773 -0.644773 0.180863 x x N 3 0.644773 -0.144773 -0.180863 x x N 4 -0.644773 0.144773 -0.180863 x x O 1 0.000000 0.500000 0.585877 x x O 2 0.500000 0.000000 -0.585877 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39086367E+003 5298.37 <-- SCF 1 -2.39130382E+003 2.75096030E-002 5590.74 <-- SCF 2 -2.39130424E+003 2.63982430E-005 5830.63 <-- SCF 3 -2.39102045E+003 -1.77370709E-002 6123.37 <-- SCF 4 -2.39099721E+003 -1.45245973E-003 6410.23 <-- SCF 5 -2.39099585E+003 -8.48126153E-005 6638.84 <-- SCF 6 -2.39099587E+003 1.03750998E-006 6808.54 <-- SCF 7 -2.39099591E+003 2.38820215E-006 6937.30 <-- SCF 8 -2.39099592E+003 6.21386191E-007 7066.26 <-- SCF 9 -2.39099592E+003 9.26169324E-008 7194.96 <-- SCF 10 -2.39099592E+003 1.55598420E-008 7323.73 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2390.995918936 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.13263 -0.13263 -0.40259 * * H 2 0.40442 0.40442 0.47794 * * H 3 0.13263 0.13263 -0.40259 * * H 4 -0.40442 -0.40442 0.47794 * * H 5 -0.13263 0.13263 0.40259 * * H 6 0.40442 -0.40442 -0.47794 * * H 7 0.13263 -0.13263 0.40259 * * H 8 -0.40442 0.40442 -0.47794 * * C 1 0.00000 0.00000 -0.59886 * * C 2 0.00000 0.00000 0.59886 * * N 1 -0.32225 -0.32225 0.02487 * * N 2 0.32225 0.32225 0.02487 * * N 3 -0.32225 0.32225 -0.02487 * * N 4 0.32225 -0.32225 -0.02487 * * O 1 0.00000 0.00000 0.45757 * * O 2 0.00000 0.00000 -0.45757 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.006320 | -2390.863666 | <-- min BFGS | trial step | 1.000000 | 0.003375 | -2390.995919 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 2 with line minimization (lambda= 2.146246) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.256870 0.756870 0.281600 x x H 2 0.133686 0.633686 -0.033892 x x H 3 -0.256870 -0.756870 0.281600 x x H 4 -0.133686 -0.633686 -0.033892 x x H 5 0.756870 -0.256870 -0.281600 x x H 6 0.633686 -0.133686 0.033892 x x H 7 -0.756870 0.256870 -0.281600 x x H 8 -0.633686 0.133686 0.033892 x x C 1 0.000000 0.500000 0.336852 x x C 2 0.500000 0.000000 -0.336852 x x N 1 0.143855 0.643855 0.182411 x x N 2 -0.143855 -0.643855 0.182411 x x N 3 0.643855 -0.143855 -0.182411 x x N 4 -0.643855 0.143855 -0.182411 x x O 1 0.000000 0.500000 0.584048 x x O 2 0.500000 0.000000 -0.584048 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39099592E+003 7358.07 <-- SCF 1 -2.39145358E+003 2.86035697E-002 7650.51 <-- SCF 2 -2.39145411E+003 3.36382891E-005 7897.63 <-- SCF 3 -2.39107854E+003 -2.34734575E-002 8190.26 <-- SCF 4 -2.39104795E+003 -1.91153436E-003 8477.33 <-- SCF 5 -2.39104622E+003 -1.08217099E-004 8709.79 <-- SCF 6 -2.39104624E+003 1.24738196E-006 8879.47 <-- SCF 7 -2.39104629E+003 3.17083447E-006 9008.45 <-- SCF 8 -2.39104631E+003 7.83781537E-007 9137.26 <-- SCF 9 -2.39104631E+003 1.13600466E-007 9266.04 <-- SCF 10 -2.39104631E+003 1.96714464E-008 9394.91 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.046308286 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.23578 0.23578 0.04640 * * H 2 0.28258 0.28258 0.12437 * * H 3 -0.23578 -0.23578 0.04640 * * H 4 -0.28258 -0.28258 0.12437 * * H 5 0.23578 -0.23578 -0.04640 * * H 6 0.28258 -0.28258 -0.12437 * * H 7 -0.23578 0.23578 -0.04640 * * H 8 -0.28258 0.28258 -0.12437 * * C 1 0.00000 0.00000 -0.30722 * * C 2 0.00000 0.00000 0.30722 * * N 1 -0.27151 -0.27151 -0.42585 * * N 2 0.27151 0.27151 -0.42585 * * N 3 -0.27151 0.27151 0.42585 * * N 4 0.27151 -0.27151 0.42585 * * O 1 0.00000 0.00000 0.89754 * * O 2 0.00000 0.00000 -0.89754 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.006320 | -2390.863666 | <-- min BFGS | trial step | 1.000000 | 0.003375 | -2390.995919 | <-- min BFGS | line step | 2.146246 | -0.000178 | -2391.046308 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 2 with enthalpy= -2.39104631E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 1.141515E-002 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 8.975397E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 3.852411E-002 | 5.000000E-004 | A | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 3 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.001815 | -2391.046308 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 3 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.257178 0.757178 0.281299 x x H 2 0.134544 0.634544 -0.033180 x x H 3 -0.257178 -0.757178 0.281299 x x H 4 -0.134544 -0.634544 -0.033180 x x H 5 0.757178 -0.257178 -0.281299 x x H 6 0.634544 -0.134544 0.033180 x x H 7 -0.757178 0.257178 -0.281299 x x H 8 -0.634544 0.134544 0.033180 x x C 1 0.000000 0.500000 0.336292 x x C 2 0.500000 0.000000 -0.336292 x x N 1 0.143178 0.643178 0.181435 x x N 2 -0.143178 -0.643178 0.181435 x x N 3 0.643178 -0.143178 -0.181435 x x N 4 -0.643178 0.143178 -0.181435 x x O 1 0.000000 0.500000 0.585988 x x O 2 0.500000 0.000000 -0.585988 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39104631E+003 9429.42 <-- SCF 1 -2.39130175E+003 1.59653124E-002 9721.62 <-- SCF 2 -2.39130193E+003 1.12391562E-005 9935.39 <-- SCF 3 -2.39110034E+003 -1.25997242E-002 10228.08 <-- SCF 4 -2.39107102E+003 -1.83239778E-003 10519.84 <-- SCF 5 -2.39107028E+003 -4.59615143E-005 10716.25 <-- SCF 6 -2.39107024E+003 -2.92619643E-006 10879.38 <-- SCF 7 -2.39107027E+003 1.89922858E-006 11008.21 <-- SCF 8 -2.39107028E+003 7.00229048E-007 11136.84 <-- SCF 9 -2.39107028E+003 6.99848127E-008 11265.74 <-- SCF 10 -2.39107028E+003 1.78509735E-008 11394.51 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.070279952 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.02517 0.02517 -0.09257 * * H 2 0.20075 0.20075 -0.24455 * * H 3 -0.02517 -0.02517 -0.09257 * * H 4 -0.20075 -0.20075 -0.24455 * * H 5 0.02517 -0.02517 0.09257 * * H 6 0.20075 -0.20075 0.24455 * * H 7 -0.02517 0.02517 0.09257 * * H 8 -0.20075 0.20075 0.24455 * * C 1 0.00000 0.00000 0.26365 * * C 2 0.00000 0.00000 -0.26365 * * N 1 0.14671 0.14671 0.17737 * * N 2 -0.14671 -0.14671 0.17737 * * N 3 0.14671 -0.14671 -0.17737 * * N 4 -0.14671 0.14671 -0.17737 * * O 1 0.00000 0.00000 0.14237 * * O 2 0.00000 0.00000 -0.14237 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.001815 | -2391.046308 | <-- min BFGS | trial step | 1.000000 | -0.000044 | -2391.070280 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 3 with enthalpy= -2.39107028E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 1.498229E-003 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 3.747102E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 9.089705E-003 | 5.000000E-004 | A | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 4 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000486 | -2391.070280 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 4 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.257297 0.757297 0.280914 x x H 2 0.135263 0.635263 -0.033598 x x H 3 -0.257297 -0.757297 0.280914 x x H 4 -0.135263 -0.635263 -0.033598 x x H 5 0.757297 -0.257297 -0.280914 x x H 6 0.635263 -0.135263 0.033598 x x H 7 -0.757297 0.257297 -0.280914 x x H 8 -0.635263 0.135263 0.033598 x x C 1 0.000000 0.500000 0.336771 x x C 2 0.500000 0.000000 -0.336771 x x N 1 0.143303 0.643303 0.181680 x x N 2 -0.143303 -0.643303 0.181680 x x N 3 0.643303 -0.143303 -0.181680 x x N 4 -0.643303 0.143303 -0.181680 x x O 1 0.000000 0.500000 0.586926 x x O 2 0.500000 0.000000 -0.586926 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39107028E+003 11428.81 <-- SCF 1 -2.39111566E+003 2.83619299E-003 11721.22 <-- SCF 2 -2.39111570E+003 2.41884226E-006 11885.51 <-- SCF 3 -2.39108456E+003 -1.94629753E-003 12177.62 <-- SCF 4 -2.39108161E+003 -1.83892830E-004 12426.01 <-- SCF 5 -2.39108142E+003 -1.20157207E-005 12595.32 <-- SCF 6 -2.39108142E+003 4.65921326E-008 12723.92 <-- SCF 7 -2.39108143E+003 3.07577429E-007 12852.80 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.081428111 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.05747 0.05747 -0.04048 * * H 2 0.17395 0.17395 -0.12251 * * H 3 -0.05747 -0.05747 -0.04048 * * H 4 -0.17395 -0.17395 -0.12251 * * H 5 0.05747 -0.05747 0.04048 * * H 6 0.17395 -0.17395 0.12251 * * H 7 -0.05747 0.05747 0.04048 * * H 8 -0.17395 0.17395 0.12251 * * C 1 0.00000 0.00000 0.27933 * * C 2 0.00000 0.00000 -0.27933 * * N 1 0.08805 0.08805 0.07033 * * N 2 -0.08805 -0.08805 0.07033 * * N 3 0.08805 -0.08805 -0.07033 * * N 4 -0.08805 0.08805 -0.07033 * * O 1 0.00000 0.00000 -0.01090 * * O 2 0.00000 0.00000 0.01090 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000486 | -2391.070280 | <-- min BFGS | trial step | 1.000000 | 0.000335 | -2391.081428 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 4 with line minimization (lambda= 3.212936) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.257559 0.757559 0.280063 x x H 2 0.136855 0.636855 -0.034521 x x H 3 -0.257559 -0.757559 0.280063 x x H 4 -0.136855 -0.636855 -0.034521 x x H 5 0.757559 -0.257559 -0.280063 x x H 6 0.636855 -0.136855 0.034521 x x H 7 -0.757559 0.257559 -0.280063 x x H 8 -0.636855 0.136855 0.034521 x x C 1 0.000000 0.500000 0.337832 x x C 2 0.500000 0.000000 -0.337832 x x N 1 0.143580 0.643580 0.182224 x x N 2 -0.143580 -0.643580 0.182224 x x N 3 0.643580 -0.143580 -0.182224 x x N 4 -0.643580 0.143580 -0.182224 x x O 1 0.000000 0.500000 0.589002 x x O 2 0.500000 0.000000 -0.589002 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39108143E+003 12887.11 <-- SCF 1 -2.39125803E+003 1.10375020E-002 13179.19 <-- SCF 2 -2.39125823E+003 1.26692455E-005 13387.58 <-- SCF 3 -2.39110652E+003 -9.48208216E-003 13680.37 <-- SCF 4 -2.39109224E+003 -8.92042629E-004 13965.19 <-- SCF 5 -2.39109131E+003 -5.86952879E-005 14182.30 <-- SCF 6 -2.39109131E+003 -2.32872327E-008 14324.18 <-- SCF 7 -2.39109132E+003 1.07012115E-006 14453.25 <-- SCF 8 -2.39109133E+003 2.71370963E-007 14582.05 <-- SCF 9 -2.39109133E+003 3.72872356E-008 14710.98 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.091327417 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.12874 0.12874 0.07449 * * H 2 0.11080 0.11080 0.14182 * * H 3 -0.12874 -0.12874 0.07449 * * H 4 -0.11080 -0.11080 0.14182 * * H 5 0.12874 -0.12874 -0.07449 * * H 6 0.11080 -0.11080 -0.14182 * * H 7 -0.12874 0.12874 -0.07449 * * H 8 -0.11080 0.11080 -0.14182 * * C 1 0.00000 0.00000 0.31764 * * C 2 0.00000 0.00000 -0.31764 * * N 1 -0.04009 -0.04009 -0.15784 * * N 2 0.04009 0.04009 -0.15784 * * N 3 -0.04009 0.04009 0.15784 * * N 4 0.04009 -0.04009 0.15784 * * O 1 0.00000 0.00000 -0.35803 * * O 2 0.00000 0.00000 0.35803 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000486 | -2391.070280 | <-- min BFGS | trial step | 1.000000 | 0.000335 | -2391.081428 | <-- min BFGS | line step | 3.212936 | -0.000003 | -2391.091327 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 4 with enthalpy= -2.39109133E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 1.315467E-003 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 3.580335E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 1.928093E-002 | 5.000000E-004 | A | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 5 ... ================================================================================ Writing model to urea.check +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000417 | -2391.091327 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 5 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.257843 0.757843 0.279656 x x H 2 0.137913 0.637913 -0.034254 x x H 3 -0.257843 -0.757843 0.279656 x x H 4 -0.137913 -0.637913 -0.034254 x x H 5 0.757843 -0.257843 -0.279656 x x H 6 0.637913 -0.137913 0.034254 x x H 7 -0.757843 0.257843 -0.279656 x x H 8 -0.637913 0.137913 0.034254 x x C 1 0.000000 0.500000 0.338964 x x C 2 0.500000 0.000000 -0.338964 x x N 1 0.143507 0.643507 0.182137 x x N 2 -0.143507 -0.643507 0.182137 x x N 3 0.643507 -0.143507 -0.182137 x x N 4 -0.643507 0.143507 -0.182137 x x O 1 0.000000 0.500000 0.588829 x x O 2 0.500000 0.000000 -0.588829 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39109133E+003 14750.61 <-- SCF 1 -2.39110853E+003 1.07512189E-003 15043.12 <-- SCF 2 -2.39110855E+003 9.98603185E-007 15183.25 <-- SCF 3 -2.39109907E+003 -5.92277020E-004 15462.46 <-- SCF 4 -2.39109789E+003 -7.34090546E-005 15679.68 <-- SCF 5 -2.39109780E+003 -5.94870103E-006 15843.89 <-- SCF 6 -2.39109780E+003 1.29079295E-007 15972.74 <-- SCF 7 -2.39109780E+003 1.13267979E-007 16101.54 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.097803067 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.06903 0.06903 0.05706 * * H 2 0.05670 0.05670 0.07791 * * H 3 -0.06903 -0.06903 0.05706 * * H 4 -0.05670 -0.05670 0.07791 * * H 5 0.06903 -0.06903 -0.05706 * * H 6 0.05670 -0.05670 -0.07791 * * H 7 -0.06903 0.06903 -0.05706 * * H 8 -0.05670 0.05670 -0.07791 * * C 1 0.00000 0.00000 -0.17416 * * C 2 0.00000 0.00000 0.17416 * * N 1 0.05365 0.05365 0.03436 * * N 2 -0.05365 -0.05365 0.03436 * * N 3 0.05365 -0.05365 -0.03436 * * N 4 -0.05365 0.05365 -0.03436 * * O 1 0.00000 0.00000 -0.09463 * * O 2 0.00000 0.00000 0.09463 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000417 | -2391.091327 | <-- min BFGS | trial step | 1.000000 | 0.000058 | -2391.097803 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 5 with enthalpy= -2.39109780E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 4.047281E-004 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 1.741577E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 8.437718E-003 | 5.000000E-004 | A | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 6 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000131 | -2391.097803 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 6 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258118 0.758118 0.279631 x x H 2 0.138509 0.638509 -0.033964 x x H 3 -0.258118 -0.758118 0.279631 x x H 4 -0.138509 -0.638509 -0.033964 x x H 5 0.758118 -0.258118 -0.279631 x x H 6 0.638509 -0.138509 0.033964 x x H 7 -0.758118 0.258118 -0.279631 x x H 8 -0.638509 0.138509 0.033964 x x C 1 0.000000 0.500000 0.338855 x x C 2 0.500000 0.000000 -0.338855 x x N 1 0.143648 0.643648 0.182264 x x N 2 -0.143648 -0.643648 0.182264 x x N 3 0.643648 -0.143648 -0.182264 x x N 4 -0.643648 0.143648 -0.182264 x x O 1 0.000000 0.500000 0.588578 x x O 2 0.500000 0.000000 -0.588578 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39109780E+003 16135.95 <-- SCF 1 -2.39110557E+003 4.85579534E-004 16427.08 <-- SCF 2 -2.39110558E+003 2.21947991E-007 16555.74 <-- SCF 3 -2.39110168E+003 -2.43750161E-004 16800.77 <-- SCF 4 -2.39110093E+003 -4.65095254E-005 17008.25 <-- SCF 5 -2.39110092E+003 -9.12038303E-007 17137.09 <-- SCF 6 -2.39110092E+003 1.08234948E-007 17265.69 <-- SCF 7 -2.39110092E+003 9.84861955E-008 17394.45 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.100920450 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.04729 0.04729 0.06486 * * H 2 0.04027 0.04027 0.04207 * * H 3 -0.04729 -0.04729 0.06486 * * H 4 -0.04027 -0.04027 0.04207 * * H 5 0.04729 -0.04729 -0.06486 * * H 6 0.04027 -0.04027 -0.04207 * * H 7 -0.04729 0.04729 -0.06486 * * H 8 -0.04027 0.04027 -0.04207 * * C 1 0.00000 0.00000 -0.18957 * * C 2 0.00000 0.00000 0.18957 * * N 1 0.06435 0.06435 0.05060 * * N 2 -0.06435 -0.06435 0.05060 * * N 3 0.06435 -0.06435 -0.05060 * * N 4 -0.06435 0.06435 -0.05060 * * O 1 0.00000 0.00000 -0.05986 * * O 2 0.00000 0.00000 0.05986 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000131 | -2391.097803 | <-- min BFGS | trial step | 1.000000 | 0.000100 | -2391.100920 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 6 with line minimization (lambda= 4.142834) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258982 0.758982 0.279552 x x H 2 0.140381 0.640381 -0.033053 x x H 3 -0.258982 -0.758982 0.279552 x x H 4 -0.140381 -0.640381 -0.033053 x x H 5 0.758982 -0.258982 -0.279552 x x H 6 0.640381 -0.140381 0.033053 x x H 7 -0.758982 0.258982 -0.279552 x x H 8 -0.640381 0.140381 0.033053 x x C 1 0.000000 0.500000 0.338514 x x C 2 0.500000 0.000000 -0.338514 x x N 1 0.144091 0.644091 0.182664 x x N 2 -0.144091 -0.644091 0.182664 x x N 3 0.644091 -0.144091 -0.182664 x x N 4 -0.644091 0.144091 -0.182664 x x O 1 0.000000 0.500000 0.587790 x x O 2 0.500000 0.000000 -0.587790 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39110092E+003 17428.87 <-- SCF 1 -2.39115111E+003 3.13661789E-003 17721.04 <-- SCF 2 -2.39115116E+003 3.53127312E-006 17894.38 <-- SCF 3 -2.39111272E+003 -2.40257877E-003 18179.14 <-- SCF 4 -2.39110538E+003 -4.58738277E-004 18449.79 <-- SCF 5 -2.39110522E+003 -1.00186109E-005 18616.32 <-- SCF 6 -2.39110522E+003 -1.68272609E-007 18748.75 <-- SCF 7 -2.39110523E+003 7.76916504E-007 18877.51 <-- SCF 8 -2.39110523E+003 1.97742836E-007 19006.09 <-- SCF 9 -2.39110523E+003 2.48099005E-008 19134.78 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.105234765 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.02167 -0.02167 0.08968 * * H 2 -0.00861 -0.00861 -0.07091 * * H 3 0.02167 0.02167 0.08968 * * H 4 0.00861 0.00861 -0.07091 * * H 5 -0.02167 0.02167 -0.08968 * * H 6 -0.00861 0.00861 0.07091 * * H 7 0.02167 -0.02167 -0.08968 * * H 8 0.00861 -0.00861 0.07091 * * C 1 0.00000 0.00000 -0.25091 * * C 2 0.00000 0.00000 0.25091 * * N 1 0.10100 0.10100 0.10808 * * N 2 -0.10100 -0.10100 0.10808 * * N 3 0.10100 -0.10100 -0.10808 * * N 4 -0.10100 0.10100 -0.10808 * * O 1 0.00000 0.00000 0.06755 * * O 2 0.00000 0.00000 -0.06755 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000131 | -2391.097803 | <-- min BFGS | trial step | 1.000000 | 0.000100 | -2391.100920 | <-- min BFGS | line step | 4.142834 | 0.000002 | -2391.105235 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 6 with enthalpy= -2.39110523E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 4.644812E-004 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 2.509058E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 2.025576E-002 | 5.000000E-004 | A | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 7 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000157 | -2391.105235 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 7 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.259309 0.759309 0.280214 x x H 2 0.140530 0.640530 -0.033087 x x H 3 -0.259309 -0.759309 0.280214 x x H 4 -0.140530 -0.640530 -0.033087 x x H 5 0.759309 -0.259309 -0.280214 x x H 6 0.640530 -0.140530 0.033087 x x H 7 -0.759309 0.259309 -0.280214 x x H 8 -0.640530 0.140530 0.033087 x x C 1 0.000000 0.500000 0.337802 x x C 2 0.500000 0.000000 -0.337802 x x N 1 0.144475 0.644475 0.182814 x x N 2 -0.144475 -0.644475 0.182814 x x N 3 0.644475 -0.144475 -0.182814 x x N 4 -0.644475 0.144475 -0.182814 x x O 1 0.000000 0.500000 0.587425 x x O 2 0.500000 0.000000 -0.587425 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39110523E+003 19169.23 <-- SCF 1 -2.39111852E+003 8.30447879E-004 19461.41 <-- SCF 2 -2.39111853E+003 6.46231353E-007 19593.72 <-- SCF 3 -2.39110979E+003 -5.46495147E-004 19859.05 <-- SCF 4 -2.39110831E+003 -9.26279403E-005 20081.78 <-- SCF 5 -2.39110825E+003 -3.24700564E-006 20239.49 <-- SCF 6 -2.39110826E+003 8.61127127E-008 20368.34 <-- SCF 7 -2.39110826E+003 1.84979297E-007 20497.16 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.108258687 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.03678 -0.03678 0.07606 * * H 2 0.01236 0.01236 -0.03815 * * H 3 0.03678 0.03678 0.07606 * * H 4 -0.01236 -0.01236 -0.03815 * * H 5 -0.03678 0.03678 -0.07606 * * H 6 0.01236 -0.01236 0.03815 * * H 7 0.03678 -0.03678 -0.07606 * * H 8 -0.01236 0.01236 0.03815 * * C 1 0.00000 0.00000 -0.09608 * * C 2 0.00000 0.00000 0.09608 * * N 1 0.03274 0.03274 0.04201 * * N 2 -0.03274 -0.03274 0.04201 * * N 3 0.03274 -0.03274 -0.04201 * * N 4 -0.03274 0.03274 -0.04201 * * O 1 0.00000 0.00000 0.01130 * * O 2 0.00000 0.00000 -0.01130 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000157 | -2391.105235 | <-- min BFGS | trial step | 1.000000 | 0.000066 | -2391.108259 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 7 with line minimization (lambda= 1.727643) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.259547 0.759547 0.280695 x x H 2 0.140638 0.640638 -0.033112 x x H 3 -0.259547 -0.759547 0.280695 x x H 4 -0.140638 -0.640638 -0.033112 x x H 5 0.759547 -0.259547 -0.280695 x x H 6 0.640638 -0.140638 0.033112 x x H 7 -0.759547 0.259547 -0.280695 x x H 8 -0.640638 0.140638 0.033112 x x C 1 0.000000 0.500000 0.337285 x x C 2 0.500000 0.000000 -0.337285 x x N 1 0.144755 0.644755 0.182923 x x N 2 -0.144755 -0.644755 0.182923 x x N 3 0.644755 -0.144755 -0.182923 x x N 4 -0.644755 0.144755 -0.182923 x x O 1 0.000000 0.500000 0.587159 x x O 2 0.500000 0.000000 -0.587159 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39110826E+003 20531.38 <-- SCF 1 -2.39111434E+003 3.79870313E-004 20823.51 <-- SCF 2 -2.39111434E+003 3.16780287E-007 20952.71 <-- SCF 3 -2.39110973E+003 -2.88163084E-004 21198.31 <-- SCF 4 -2.39110895E+003 -4.88961929E-005 21403.26 <-- SCF 5 -2.39110892E+003 -1.71542359E-006 21532.21 <-- SCF 6 -2.39110892E+003 1.91742024E-007 21661.01 <-- SCF 7 -2.39110893E+003 9.95303983E-008 21789.83 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.108925946 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.04731 -0.04731 0.06667 * * H 2 0.02762 0.02762 -0.01478 * * H 3 0.04731 0.04731 0.06667 * * H 4 -0.02762 -0.02762 -0.01478 * * H 5 -0.04731 0.04731 -0.06667 * * H 6 0.02762 -0.02762 0.01478 * * H 7 0.04731 -0.04731 -0.06667 * * H 8 -0.02762 0.02762 0.01478 * * C 1 0.00000 0.00000 0.01364 * * C 2 0.00000 0.00000 -0.01364 * * N 1 -0.01835 -0.01835 -0.00791 * * N 2 0.01835 0.01835 -0.00791 * * N 3 -0.01835 0.01835 0.00791 * * N 4 0.01835 -0.01835 0.00791 * * O 1 0.00000 0.00000 -0.02283 * * O 2 0.00000 0.00000 0.02283 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000157 | -2391.105235 | <-- min BFGS | trial step | 1.000000 | 0.000066 | -2391.108259 | <-- min BFGS | line step | 1.727643 | -0.000001 | -2391.108926 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 7 with enthalpy= -2.39110893E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 2.306988E-004 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 9.445759E-002 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 6.966373E-003 | 5.000000E-004 | A | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 8 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000023 | -2391.108926 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 8 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.259461 0.759461 0.280923 x x H 2 0.140745 0.640745 -0.033137 x x H 3 -0.259461 -0.759461 0.280923 x x H 4 -0.140745 -0.640745 -0.033137 x x H 5 0.759461 -0.259461 -0.280923 x x H 6 0.640745 -0.140745 0.033137 x x H 7 -0.759461 0.259461 -0.280923 x x H 8 -0.640745 0.140745 0.033137 x x C 1 0.000000 0.500000 0.337216 x x C 2 0.500000 0.000000 -0.337216 x x N 1 0.144752 0.644752 0.182938 x x N 2 -0.144752 -0.644752 0.182938 x x N 3 0.644752 -0.144752 -0.182938 x x N 4 -0.644752 0.144752 -0.182938 x x O 1 0.000000 0.500000 0.587073 x x O 2 0.500000 0.000000 -0.587073 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39110893E+003 21824.07 <-- SCF 1 -2.39110990E+003 6.09433371E-005 22061.89 <-- SCF 2 -2.39110990E+003 9.62068341E-008 22190.47 <-- SCF 3 -2.39110956E+003 -2.12741680E-005 22379.83 <-- SCF 4 -2.39110952E+003 -2.32823886E-006 22510.84 <-- SCF 5 -2.39110952E+003 -1.28335701E-007 22639.82 <-- SCF 6 -2.39110952E+003 2.46356210E-008 22768.55 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.109523281 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.04364 -0.04364 0.06523 * * H 2 0.02751 0.02751 -0.00760 * * H 3 0.04364 0.04364 0.06523 * * H 4 -0.02751 -0.02751 -0.00760 * * H 5 -0.04364 0.04364 -0.06523 * * H 6 0.02751 -0.02751 0.00760 * * H 7 0.04364 -0.04364 -0.06523 * * H 8 -0.02751 0.02751 0.00760 * * C 1 0.00000 0.00000 0.01450 * * C 2 0.00000 0.00000 -0.01450 * * N 1 -0.01151 -0.01151 -0.01950 * * N 2 0.01151 0.01151 -0.01950 * * N 3 -0.01151 0.01151 0.01950 * * N 4 0.01151 -0.01151 0.01950 * * O 1 0.00000 0.00000 -0.01565 * * O 2 0.00000 0.00000 0.01565 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000023 | -2391.108926 | <-- min BFGS | trial step | 1.000000 | 0.000021 | -2391.109523 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 8 with line minimization (lambda= 17.728939) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258012 0.758012 0.284732 x x H 2 0.142534 0.642534 -0.033547 x x H 3 -0.258012 -0.758012 0.284732 x x H 4 -0.142534 -0.642534 -0.033547 x x H 5 0.758012 -0.258012 -0.284732 x x H 6 0.642534 -0.142534 0.033547 x x H 7 -0.758012 0.258012 -0.284732 x x H 8 -0.642534 0.142534 0.033547 x x C 1 0.000000 0.500000 0.336062 x x C 2 0.500000 0.000000 -0.336062 x x N 1 0.144700 0.644700 0.183189 x x N 2 -0.144700 -0.644700 0.183189 x x N 3 0.644700 -0.144700 -0.183189 x x N 4 -0.644700 0.144700 -0.183189 x x O 1 0.000000 0.500000 0.585623 x x O 2 0.500000 0.000000 -0.585623 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39110952E+003 22802.74 <-- SCF 1 -2.39121734E+003 6.73831639E-003 23094.86 <-- SCF 2 -2.39121749E+003 9.69738007E-006 23302.76 <-- SCF 3 -2.39112431E+003 -5.82395962E-003 23595.54 <-- SCF 4 -2.39111411E+003 -6.37346688E-004 23869.13 <-- SCF 5 -2.39111292E+003 -7.46645259E-005 24070.71 <-- SCF 6 -2.39111284E+003 -4.75466973E-006 24234.82 <-- SCF Pseudo atomic calculation performed for H 1s1 Converged in 55 iterations to a total energy of -12.465822 eV Pseudo atomic calculation performed for C 2s2 2p2 Converged in 52 iterations to a total energy of -146.434145 eV Pseudo atomic calculation performed for N 2s2 2p3 Converged in 60 iterations to a total energy of -263.644771 eV Pseudo atomic calculation performed for O 2s2 2p4 Converged in 40 iterations to a total energy of -421.632554 eV Calculation parallelised over 16 nodes. K-points are distributed over 2 groups, each containing 8 nodes. ************************************ Title ************************************ CASTEP calculation from Materials Studio ***************************** General Parameters ****************************** output verbosity : normal (1) write checkpoint data to : urea.check type of calculation : geometry optimization stress calculation : off unlimited duration calculation timing information : on output length unit : A output mass unit : amu output time unit : ps output charge unit : e output energy unit : eV output force unit : eV/A output velocity unit : A/ps output pressure unit : GPa output inv_length unit : 1/A output frequency unit : cm-1 output force constant unit : eV/A**2 output volume unit : A**3 wavefunctions paging : none random number generator seed : randomised (231316457) data distribution : optimal for this architecture optimization strategy : balance speed and memory *********************** Exchange-Correlation Parameters *********************** using functional : Perdew Burke Ernzerhof ************************* Pseudopotential Parameters ************************** pseudopotential representation : reciprocal space representation : reciprocal space **************************** Basis Set Parameters ***************************** plane wave basis set cut-off : 2000.0000 eV size of standard grid : 2.2000 size of fine grid : 50.4053 1/A finite basis set correction : none **************************** Electronic Parameters **************************** number of electrons : 48 net charge of system : 0 net spin of system : 0 number of up spins : 24 number of down spins : 24 treating system as non-spin-polarized number of bands : 24 ********************* Electronic Minimization Parameters ********************** Method: Treating system as non-metallic, and number of SD steps : 1 and number of CG steps : 4 total energy / atom convergence tol. : 0.5000E-06 eV eigen-energy convergence tolerance : 0.3333E-06 eV convergence tolerance window : 3 cycles max. number of SCF cycles : 100 ************************** Density Mixing Parameters ************************** density-mixing scheme : Pulay max. length of mixing history : 20 charge density mixing amplitude : 0.5000 cut-off energy for mixing : 2000. eV charge density mixing g-vector : 1.500 1/A ********************** Geometry Optimization Parameters *********************** optimization method : BFGS variable cell method : fixed basis quality max. number of steps : 100 estimated bulk modulus : 500.0 GPa estimated : 1668. cm-1 total energy convergence tolerance : 0.5000E-05 eV/atom max ionic |force| tolerance : 0.1000E-01 eV/A max ionic |displacement| tolerance : 0.5000E-03 A max |stress component| tolerance : 0.2000E-01 GPa convergence tolerance window : 2 steps backup results every : 5 steps ******************************************************************************* ------------------------------- Unit Cell ------------------------------- Real Lattice(A) Reciprocal Lattice(1/A) 5.5760000 0.0000000 0.0000000 1.1268266 0.0000000 0.0000000 0.0000000 5.5760000 0.0000000 0.0000000 1.1268266 0.0000000 0.0000000 0.0000000 4.6860000 0.0000000 0.0000000 1.3408419 Lattice parameters(A) Cell Angles a = 5.576000 alpha = 90.000000 b = 5.576000 beta = 90.000000 c = 4.686000 gamma = 90.000000 Current cell volume = 145.696062 A**3 ------------------------------- Cell Contents ------------------------------- Total number of ions in cell = 16 Total number of species in cell = 4 Max number of any one species = 8 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.262000 0.762000 0.291001 x x H 2 0.129000 0.629000 -0.042000 x x H 3 -0.262000 -0.762000 0.291001 x x H 4 -0.129000 -0.629000 -0.042000 x x H 5 0.762000 -0.262000 -0.291001 x x H 6 0.629000 -0.129000 0.042000 x x H 7 -0.762000 0.262000 -0.291001 x x H 8 -0.629000 0.129000 0.042000 x x C 1 0.000000 0.500000 0.328399 x x C 2 0.500000 0.000000 -0.328399 x x N 1 0.144800 0.644800 0.178700 x x N 2 -0.144800 -0.644800 0.178700 x x N 3 0.644800 -0.144800 -0.178700 x x N 4 -0.644800 0.144800 -0.178700 x x O 1 0.000000 0.500000 0.596601 x x O 2 0.500000 0.000000 -0.596601 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx No user defined ionic velocities ------------------------------- Details of Species ------------------------------- Mass of species in AMU H 1.0080000 C 12.0109997 N 14.0070000 O 15.9989996 Files used for pseudopotentials: H H_00.recpot C C_00.recpot N N_00.recpot O O_00.recpot ------------------------------- k-Points For BZ Sampling ------------------------------- Number of kpoints used = 6 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ + Number Fractional coordinates Weight + +-----------------------------------------------------+ + 1 0.375000 0.375000 0.375000 0.1250000 + + 2 0.375000 0.375000 0.125000 0.1250000 + + 3 0.375000 0.125000 0.375000 0.2500000 + + 4 0.375000 0.125000 0.125000 0.2500000 + + 5 0.125000 0.125000 0.375000 0.1250000 + + 6 0.125000 0.125000 0.125000 0.1250000 + +++++++++++++++++++++++++++++++++++++++++++++++++++++++ ------------------------------- Symmetry and Constraints ------------------------------- Number of symmetry operations = 8 Set iprint > 1 for symmetry rotation details Centre of mass is NOT constrained There are no ionic constraints specified or generated for this cell Number of cell constraints= 6 Cell constraints are: 0 0 0 0 0 0 External pressure/stress (GPa) 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial 0.00000000E+000 7.03 <-- SCF 1 -2.24409662E+003 1.40256039E+002 66.45 <-- SCF 2 -2.39626608E+003 9.51059114E+000 125.26 <-- SCF 3 -2.39095152E+003 -3.32160034E-001 184.24 <-- SCF 4 -2.39045799E+003 -3.08453126E-002 243.16 <-- SCF 5 -2.39037185E+003 -5.38366893E-003 302.03 <-- SCF 6 -2.39038747E+003 9.76031435E-004 355.92 <-- SCF 7 -2.39039380E+003 3.95594383E-004 396.74 <-- SCF 8 -2.39039665E+003 1.77977226E-004 433.28 <-- SCF 9 -2.39039681E+003 9.84507177E-006 459.42 <-- SCF 10 -2.39039682E+003 7.25280973E-007 483.97 <-- SCF 11 -2.39039682E+003 9.08746689E-008 508.59 <-- SCF 12 -2.39039682E+003 9.35306491E-009 533.14 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2390.396818675 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.85544 -0.85544 -1.11233 * * H 2 0.57743 0.57743 0.79316 * * H 3 0.85544 0.85544 -1.11233 * * H 4 -0.57743 -0.57743 0.79316 * * H 5 -0.85544 0.85544 1.11233 * * H 6 0.57743 -0.57743 -0.79316 * * H 7 0.85544 -0.85544 1.11233 * * H 8 -0.57743 0.57743 -0.79316 * * C 1 0.00000 0.00000 3.46144 * * C 2 0.00000 0.00000 -3.46144 * * N 1 0.33108 0.33108 0.29103 * * N 2 -0.33108 -0.33108 0.29103 * * N 3 0.33108 -0.33108 -0.29103 * * N 4 -0.33108 0.33108 -0.29103 * * O 1 0.00000 0.00000 -3.28483 * * O 2 0.00000 0.00000 3.28483 * * * ************************************************************************* BFGS: finished iteration 0 with enthalpy= -2.39039682E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 0.000000E+000 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 3.461438E+000 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 0.000000E+000 | 5.000000E-004 | A | Yes | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 1 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.030028 | -2390.396819 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 1 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.260002 0.760002 0.287910 x x H 2 0.130348 0.630348 -0.039796 x x H 3 -0.260002 -0.760002 0.287910 x x H 4 -0.130348 -0.630348 -0.039796 x x H 5 0.760002 -0.260002 -0.287910 x x H 6 0.630348 -0.130348 0.039796 x x H 7 -0.760002 0.260002 -0.287910 x x H 8 -0.630348 0.130348 0.039796 x x C 1 0.000000 0.500000 0.338019 x x C 2 0.500000 0.000000 -0.338019 x x N 1 0.145573 0.645573 0.179509 x x N 2 -0.145573 -0.645573 0.179509 x x N 3 0.645573 -0.145573 -0.179509 x x N 4 -0.645573 0.145573 -0.179509 x x O 1 0.000000 0.500000 0.587472 x x O 2 0.500000 0.000000 -0.587472 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39039682E+003 539.04 <-- SCF 1 -2.39534964E+003 3.09551050E-001 596.46 <-- SCF 2 -2.39541593E+003 4.14357787E-003 653.73 <-- SCF 3 -2.39138372E+003 -2.52013486E-001 711.17 <-- SCF 4 -2.39087858E+003 -3.15709021E-002 768.53 <-- SCF 5 -2.39086440E+003 -8.86700947E-004 825.07 <-- SCF 6 -2.39086323E+003 -7.26761634E-005 869.76 <-- SCF 7 -2.39086340E+003 1.06779475E-005 903.01 <-- SCF 8 -2.39086349E+003 5.58491371E-006 929.98 <-- SCF 9 -2.39086352E+003 1.63075297E-006 954.22 <-- SCF 10 -2.39086352E+003 2.50991813E-007 978.48 <-- SCF 11 -2.39086352E+003 3.15064778E-008 1002.73 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2390.863523299 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.41953 -0.41953 -0.77524 * * H 2 0.51135 0.51135 0.77219 * * H 3 0.41953 0.41953 -0.77524 * * H 4 -0.51135 -0.51135 0.77219 * * H 5 -0.41953 0.41953 0.77524 * * H 6 0.51135 -0.51135 -0.77219 * * H 7 0.41953 -0.41953 0.77524 * * H 8 -0.51135 0.51135 -0.77219 * * C 1 0.00000 0.00000 -0.85065 * * C 2 0.00000 0.00000 0.85065 * * N 1 -0.38433 -0.38433 0.39873 * * N 2 0.38433 0.38433 0.39873 * * N 3 -0.38433 0.38433 -0.39873 * * N 4 0.38433 -0.38433 -0.39873 * * O 1 0.00000 0.00000 0.09671 * * O 2 0.00000 0.00000 -0.09671 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.030028 | -2390.396819 | <-- min BFGS | trial step | 1.000000 | 0.001940 | -2390.863523 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 1 with enthalpy= -2.39086352E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 2.916904E-002 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 1.057937E+000 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 4.507665E-002 | 5.000000E-004 | A | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 2 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.006321 | -2390.863523 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 2 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258543 0.758543 0.284970 x x H 2 0.131903 0.631903 -0.037048 x x H 3 -0.258543 -0.758543 0.284970 x x H 4 -0.131903 -0.631903 -0.037048 x x H 5 0.758543 -0.258543 -0.284970 x x H 6 0.631903 -0.131903 0.037048 x x H 7 -0.758543 0.258543 -0.284970 x x H 8 -0.631903 0.131903 0.037048 x x C 1 0.000000 0.500000 0.337473 x x C 2 0.500000 0.000000 -0.337473 x x N 1 0.144773 0.644773 0.180860 x x N 2 -0.144773 -0.644773 0.180860 x x N 3 0.644773 -0.144773 -0.180860 x x N 4 -0.644773 0.144773 -0.180860 x x O 1 0.000000 0.500000 0.585879 x x O 2 0.500000 0.000000 -0.585879 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39086352E+003 1008.41 <-- SCF 1 -2.39130349E+003 2.74981251E-002 1065.79 <-- SCF 2 -2.39130392E+003 2.63768556E-005 1112.71 <-- SCF 3 -2.39102031E+003 -1.77252155E-002 1170.17 <-- SCF 4 -2.39099709E+003 -1.45128754E-003 1226.44 <-- SCF 5 -2.39099573E+003 -8.48030357E-005 1270.96 <-- SCF 6 -2.39099575E+003 1.04873108E-006 1303.55 <-- SCF 7 -2.39099579E+003 2.38727364E-006 1327.78 <-- SCF 8 -2.39099580E+003 6.21388584E-007 1352.01 <-- SCF 9 -2.39099580E+003 9.26395300E-008 1376.22 <-- SCF 10 -2.39099580E+003 1.55626456E-008 1400.46 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2390.995801082 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.13277 -0.13277 -0.40282 * * H 2 0.40443 0.40443 0.47791 * * H 3 0.13277 0.13277 -0.40282 * * H 4 -0.40443 -0.40443 0.47791 * * H 5 -0.13277 0.13277 0.40282 * * H 6 0.40443 -0.40443 -0.47791 * * H 7 0.13277 -0.13277 0.40282 * * H 8 -0.40443 0.40443 -0.47791 * * C 1 0.00000 0.00000 -0.60000 * * C 2 0.00000 0.00000 0.60000 * * N 1 -0.32221 -0.32221 0.02540 * * N 2 0.32221 0.32221 0.02540 * * N 3 -0.32221 0.32221 -0.02540 * * N 4 0.32221 -0.32221 -0.02540 * * O 1 0.00000 0.00000 0.45699 * * O 2 0.00000 0.00000 -0.45699 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.006321 | -2390.863523 | <-- min BFGS | trial step | 1.000000 | 0.003377 | -2390.995801 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 2 with line minimization (lambda= 2.147283) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.256869 0.756869 0.281596 x x H 2 0.133686 0.633686 -0.033894 x x H 3 -0.256869 -0.756869 0.281596 x x H 4 -0.133686 -0.633686 -0.033894 x x H 5 0.756869 -0.256869 -0.281596 x x H 6 0.633686 -0.133686 0.033894 x x H 7 -0.756869 0.256869 -0.281596 x x H 8 -0.633686 0.133686 0.033894 x x C 1 0.000000 0.500000 0.336848 x x C 2 0.500000 0.000000 -0.336848 x x N 1 0.143854 0.643854 0.182410 x x N 2 -0.143854 -0.643854 0.182410 x x N 3 0.643854 -0.143854 -0.182410 x x N 4 -0.643854 0.143854 -0.182410 x x O 1 0.000000 0.500000 0.584050 x x O 2 0.500000 0.000000 -0.584050 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39099580E+003 1406.15 <-- SCF 1 -2.39145399E+003 2.86366417E-002 1463.53 <-- SCF 2 -2.39145453E+003 3.36750567E-005 1511.80 <-- SCF 3 -2.39107854E+003 -2.34994440E-002 1569.24 <-- SCF 4 -2.39104792E+003 -1.91341841E-003 1625.50 <-- SCF 5 -2.39104619E+003 -1.08410322E-004 1670.77 <-- SCF 6 -2.39104621E+003 1.26028939E-006 1703.46 <-- SCF 7 -2.39104626E+003 3.17547730E-006 1727.71 <-- SCF 8 -2.39104627E+003 7.85169392E-007 1752.00 <-- SCF 9 -2.39104627E+003 1.13809427E-007 1776.24 <-- SCF 10 -2.39104627E+003 1.97075784E-008 1800.50 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.046271458 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.23604 0.23604 0.04670 * * H 2 0.28256 0.28256 0.12472 * * H 3 -0.23604 -0.23604 0.04670 * * H 4 -0.28256 -0.28256 0.12472 * * H 5 0.23604 -0.23604 -0.04670 * * H 6 0.28256 -0.28256 -0.12472 * * H 7 -0.23604 0.23604 -0.04670 * * H 8 -0.28256 0.28256 -0.12472 * * C 1 0.00000 0.00000 -0.30982 * * C 2 0.00000 0.00000 0.30982 * * N 1 -0.27111 -0.27111 -0.42607 * * N 2 0.27111 0.27111 -0.42607 * * N 3 -0.27111 0.27111 0.42607 * * N 4 0.27111 -0.27111 0.42607 * * O 1 0.00000 0.00000 0.89569 * * O 2 0.00000 0.00000 -0.89569 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.006321 | -2390.863523 | <-- min BFGS | trial step | 1.000000 | 0.003377 | -2390.995801 | <-- min BFGS | line step | 2.147283 | -0.000177 | -2391.046271 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 2 with enthalpy= -2.39104627E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 1.142176E-002 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 8.956878E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 3.854338E-002 | 5.000000E-004 | A | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 3 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.001813 | -2391.046271 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 3 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.257178 0.757178 0.281297 x x H 2 0.134543 0.634543 -0.033183 x x H 3 -0.257178 -0.757178 0.281297 x x H 4 -0.134543 -0.634543 -0.033183 x x H 5 0.757178 -0.257178 -0.281297 x x H 6 0.634543 -0.134543 0.033183 x x H 7 -0.757178 0.257178 -0.281297 x x H 8 -0.634543 0.134543 0.033183 x x C 1 0.000000 0.500000 0.336280 x x C 2 0.500000 0.000000 -0.336280 x x N 1 0.143178 0.643178 0.181433 x x N 2 -0.143178 -0.643178 0.181433 x x N 3 0.643178 -0.143178 -0.181433 x x N 4 -0.643178 0.143178 -0.181433 x x O 1 0.000000 0.500000 0.585986 x x O 2 0.500000 0.000000 -0.585986 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39104627E+003 1806.19 <-- SCF 1 -2.39130153E+003 1.59537475E-002 1863.66 <-- SCF 2 -2.39130171E+003 1.12047499E-005 1905.16 <-- SCF 3 -2.39110025E+003 -1.25913066E-002 1962.71 <-- SCF 4 -2.39107094E+003 -1.83173601E-003 2020.06 <-- SCF 5 -2.39107021E+003 -4.59614021E-005 2058.10 <-- SCF 6 -2.39107016E+003 -2.94101633E-006 2089.29 <-- SCF 7 -2.39107019E+003 1.90071050E-006 2113.51 <-- SCF 8 -2.39107020E+003 7.01597182E-007 2137.79 <-- SCF 9 -2.39107020E+003 7.00325215E-008 2162.13 <-- SCF 10 -2.39107020E+003 1.79157453E-008 2186.40 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.070202618 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.02529 0.02529 -0.09237 * * H 2 0.20085 0.20085 -0.24444 * * H 3 -0.02529 -0.02529 -0.09237 * * H 4 -0.20085 -0.20085 -0.24444 * * H 5 0.02529 -0.02529 0.09237 * * H 6 0.20085 -0.20085 0.24444 * * H 7 -0.02529 0.02529 0.09237 * * H 8 -0.20085 0.20085 0.24444 * * C 1 0.00000 0.00000 0.26235 * * C 2 0.00000 0.00000 -0.26235 * * N 1 0.14718 0.14718 0.17628 * * N 2 -0.14718 -0.14718 0.17628 * * N 3 0.14718 -0.14718 -0.17628 * * N 4 -0.14718 0.14718 -0.17628 * * O 1 0.00000 0.00000 0.14004 * * O 2 0.00000 0.00000 -0.14004 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.001813 | -2391.046271 | <-- min BFGS | trial step | 1.000000 | -0.000046 | -2391.070203 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 3 with enthalpy= -2.39107020E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 1.495698E-003 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 3.747446E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 9.070811E-003 | 5.000000E-004 | A | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 4 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000484 | -2391.070203 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 4 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.257297 0.757297 0.280915 x x H 2 0.135261 0.635261 -0.033601 x x H 3 -0.257297 -0.757297 0.280915 x x H 4 -0.135261 -0.635261 -0.033601 x x H 5 0.757297 -0.257297 -0.280915 x x H 6 0.635261 -0.135261 0.033601 x x H 7 -0.757297 0.257297 -0.280915 x x H 8 -0.635261 0.135261 0.033601 x x C 1 0.000000 0.500000 0.336753 x x C 2 0.500000 0.000000 -0.336753 x x N 1 0.143305 0.643305 0.181676 x x N 2 -0.143305 -0.643305 0.181676 x x N 3 0.643305 -0.143305 -0.181676 x x N 4 -0.643305 0.143305 -0.181676 x x O 1 0.000000 0.500000 0.586914 x x O 2 0.500000 0.000000 -0.586914 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39107020E+003 2192.11 <-- SCF 1 -2.39111513E+003 2.80767306E-003 2249.54 <-- SCF 2 -2.39111516E+003 2.38227080E-006 2281.04 <-- SCF 3 -2.39108439E+003 -1.92317343E-003 2338.43 <-- SCF 4 -2.39108148E+003 -1.81733738E-004 2386.71 <-- SCF 5 -2.39108130E+003 -1.18250756E-005 2419.23 <-- SCF 6 -2.39108130E+003 5.49590960E-008 2443.47 <-- SCF 7 -2.39108130E+003 3.05471647E-007 2467.76 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.081301555 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.05760 0.05760 -0.04043 * * H 2 0.17428 0.17428 -0.12272 * * H 3 -0.05760 -0.05760 -0.04043 * * H 4 -0.17428 -0.17428 -0.12272 * * H 5 0.05760 -0.05760 0.04043 * * H 6 0.17428 -0.17428 0.12272 * * H 7 -0.05760 0.05760 0.04043 * * H 8 -0.17428 0.17428 0.12272 * * C 1 0.00000 0.00000 0.27755 * * C 2 0.00000 0.00000 -0.27755 * * N 1 0.08794 0.08794 0.06955 * * N 2 -0.08794 -0.08794 0.06955 * * N 3 0.08794 -0.08794 -0.06955 * * N 4 -0.08794 0.08794 -0.06955 * * O 1 0.00000 0.00000 -0.01215 * * O 2 0.00000 0.00000 0.01215 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000484 | -2391.070203 | <-- min BFGS | trial step | 1.000000 | 0.000334 | -2391.081302 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 4 with line minimization (lambda= 3.222838) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.257561 0.757561 0.280066 x x H 2 0.136856 0.636856 -0.034531 x x H 3 -0.257561 -0.757561 0.280066 x x H 4 -0.136856 -0.636856 -0.034531 x x H 5 0.757561 -0.257561 -0.280066 x x H 6 0.636856 -0.136856 0.034531 x x H 7 -0.757561 0.257561 -0.280066 x x H 8 -0.636856 0.136856 0.034531 x x C 1 0.000000 0.500000 0.337806 x x C 2 0.500000 0.000000 -0.337806 x x N 1 0.143588 0.643588 0.182215 x x N 2 -0.143588 -0.643588 0.182215 x x N 3 0.643588 -0.143588 -0.182215 x x N 4 -0.643588 0.143588 -0.182215 x x O 1 0.000000 0.500000 0.588978 x x O 2 0.500000 0.000000 -0.588978 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39108130E+003 2473.44 <-- SCF 1 -2.39125741E+003 1.10069700E-002 2531.01 <-- SCF 2 -2.39125761E+003 1.25542955E-005 2571.39 <-- SCF 3 -2.39110638E+003 -9.45192862E-003 2629.01 <-- SCF 4 -2.39109216E+003 -8.89096747E-004 2685.11 <-- SCF 5 -2.39109123E+003 -5.82509635E-005 2727.37 <-- SCF 6 -2.39109123E+003 4.76691080E-009 2754.20 <-- SCF 7 -2.39109124E+003 1.07469029E-006 2778.47 <-- SCF 8 -2.39109125E+003 2.70692721E-007 2802.70 <-- SCF 9 -2.39109125E+003 3.69119220E-008 2826.96 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.091247715 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.12922 0.12922 0.07473 * * H 2 0.11135 0.11135 0.14204 * * H 3 -0.12922 -0.12922 0.07473 * * H 4 -0.11135 -0.11135 0.14204 * * H 5 0.12922 -0.12922 -0.07473 * * H 6 0.11135 -0.11135 -0.14204 * * H 7 -0.12922 0.12922 -0.07473 * * H 8 -0.11135 0.11135 -0.14204 * * C 1 0.00000 0.00000 0.32019 * * C 2 0.00000 0.00000 -0.32019 * * N 1 -0.04195 -0.04195 -0.15888 * * N 2 0.04195 0.04195 -0.15888 * * N 3 -0.04195 0.04195 0.15888 * * N 4 0.04195 -0.04195 0.15888 * * O 1 0.00000 0.00000 -0.35766 * * O 2 0.00000 0.00000 0.35766 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000484 | -2391.070203 | <-- min BFGS | trial step | 1.000000 | 0.000334 | -2391.081302 | <-- min BFGS | line step | 3.222838 | -0.000002 | -2391.091248 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 4 with enthalpy= -2.39109125E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 1.315319E-003 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 3.576620E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 1.929882E-002 | 5.000000E-004 | A | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 5 ... ================================================================================ Writing model to urea.check +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000422 | -2391.091248 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 5 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.257849 0.757849 0.279650 x x H 2 0.137933 0.637933 -0.034270 x x H 3 -0.257849 -0.757849 0.279650 x x H 4 -0.137933 -0.637933 -0.034270 x x H 5 0.757849 -0.257849 -0.279650 x x H 6 0.637933 -0.137933 0.034270 x x H 7 -0.757849 0.257849 -0.279650 x x H 8 -0.637933 0.137933 0.034270 x x C 1 0.000000 0.500000 0.338951 x x C 2 0.500000 0.000000 -0.338951 x x N 1 0.143514 0.643514 0.182129 x x N 2 -0.143514 -0.643514 0.182129 x x N 3 0.643514 -0.143514 -0.182129 x x N 4 -0.643514 0.143514 -0.182129 x x O 1 0.000000 0.500000 0.588816 x x O 2 0.500000 0.000000 -0.588816 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39109125E+003 2835.52 <-- SCF 1 -2.39110850E+003 1.07807638E-003 2893.21 <-- SCF 2 -2.39110851E+003 1.00785904E-006 2919.72 <-- SCF 3 -2.39109906E+003 -5.90758378E-004 2974.62 <-- SCF 4 -2.39109790E+003 -7.23134882E-005 3016.92 <-- SCF 5 -2.39109781E+003 -5.98715658E-006 3048.58 <-- SCF 6 -2.39109781E+003 1.47034822E-007 3072.82 <-- SCF 7 -2.39109781E+003 1.15909120E-007 3097.08 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.097812326 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.06903 0.06903 0.05750 * * H 2 0.05635 0.05635 0.07934 * * H 3 -0.06903 -0.06903 0.05750 * * H 4 -0.05635 -0.05635 0.07934 * * H 5 0.06903 -0.06903 -0.05750 * * H 6 0.05635 -0.05635 -0.07934 * * H 7 -0.06903 0.06903 -0.05750 * * H 8 -0.05635 0.05635 -0.07934 * * C 1 0.00000 0.00000 -0.17027 * * C 2 0.00000 0.00000 0.17027 * * N 1 0.05274 0.05274 0.03355 * * N 2 -0.05274 -0.05274 0.03355 * * N 3 0.05274 -0.05274 -0.03355 * * N 4 -0.05274 0.05274 -0.03355 * * O 1 0.00000 0.00000 -0.09491 * * O 2 0.00000 0.00000 0.09491 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000422 | -2391.091248 | <-- min BFGS | trial step | 1.000000 | 0.000060 | -2391.097812 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 5 with enthalpy= -2.39109781E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 4.102882E-004 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 1.702700E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 8.577340E-003 | 5.000000E-004 | A | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 6 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000130 | -2391.097812 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 6 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258123 0.758123 0.279623 x x H 2 0.138530 0.638530 -0.033979 x x H 3 -0.258123 -0.758123 0.279623 x x H 4 -0.138530 -0.638530 -0.033979 x x H 5 0.758123 -0.258123 -0.279623 x x H 6 0.638530 -0.138530 0.033979 x x H 7 -0.758123 0.258123 -0.279623 x x H 8 -0.638530 0.138530 0.033979 x x C 1 0.000000 0.500000 0.338850 x x C 2 0.500000 0.000000 -0.338850 x x N 1 0.143654 0.643654 0.182257 x x N 2 -0.143654 -0.643654 0.182257 x x N 3 0.643654 -0.143654 -0.182257 x x N 4 -0.643654 0.143654 -0.182257 x x O 1 0.000000 0.500000 0.588571 x x O 2 0.500000 0.000000 -0.588571 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39109781E+003 3102.77 <-- SCF 1 -2.39110547E+003 4.78595232E-004 3160.00 <-- SCF 2 -2.39110547E+003 2.19834257E-007 3184.25 <-- SCF 3 -2.39110164E+003 -2.39478249E-004 3232.13 <-- SCF 4 -2.39110091E+003 -4.59075337E-005 3272.36 <-- SCF 5 -2.39110089E+003 -8.64622699E-007 3296.65 <-- SCF 6 -2.39110090E+003 1.11248986E-007 3320.96 <-- SCF 7 -2.39110090E+003 9.69311176E-008 3345.23 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.100896691 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.04728 0.04728 0.06532 * * H 2 0.03973 0.03973 0.04342 * * H 3 -0.04728 -0.04728 0.06532 * * H 4 -0.03973 -0.03973 0.04342 * * H 5 0.04728 -0.04728 -0.06532 * * H 6 0.03973 -0.03973 -0.04342 * * H 7 -0.04728 0.04728 -0.06532 * * H 8 -0.03973 0.03973 -0.04342 * * C 1 0.00000 0.00000 -0.18719 * * C 2 0.00000 0.00000 0.18719 * * N 1 0.06382 0.06382 0.05063 * * N 2 -0.06382 -0.06382 0.05063 * * N 3 0.06382 -0.06382 -0.05063 * * N 4 -0.06382 0.06382 -0.05063 * * O 1 0.00000 0.00000 -0.06034 * * O 2 0.00000 0.00000 0.06034 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000130 | -2391.097812 | <-- min BFGS | trial step | 1.000000 | 0.000098 | -2391.100897 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 6 with line minimization (lambda= 4.104719) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258974 0.758974 0.279541 x x H 2 0.140383 0.640383 -0.033076 x x H 3 -0.258974 -0.758974 0.279541 x x H 4 -0.140383 -0.640383 -0.033076 x x H 5 0.758974 -0.258974 -0.279541 x x H 6 0.640383 -0.140383 0.033076 x x H 7 -0.758974 0.258974 -0.279541 x x H 8 -0.640383 0.140383 0.033076 x x C 1 0.000000 0.500000 0.338534 x x C 2 0.500000 0.000000 -0.338534 x x N 1 0.144087 0.644087 0.182653 x x N 2 -0.144087 -0.644087 0.182653 x x N 3 0.644087 -0.144087 -0.182653 x x N 4 -0.644087 0.144087 -0.182653 x x O 1 0.000000 0.500000 0.587811 x x O 2 0.500000 0.000000 -0.587811 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39110090E+003 3350.91 <-- SCF 1 -2.39114912E+003 3.01405793E-003 3408.46 <-- SCF 2 -2.39114918E+003 3.36225155E-006 3441.47 <-- SCF 3 -2.39111231E+003 -2.30408912E-003 3497.53 <-- SCF 4 -2.39110524E+003 -4.41932009E-004 3550.54 <-- SCF 5 -2.39110509E+003 -9.25443679E-006 3582.37 <-- SCF 6 -2.39110509E+003 -8.92756526E-008 3607.32 <-- SCF 7 -2.39110510E+003 7.52792822E-007 3631.57 <-- SCF 8 -2.39110510E+003 1.82732201E-007 3655.84 <-- SCF 9 -2.39110510E+003 2.40304160E-008 3680.15 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.105104929 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.02077 -0.02077 0.08990 * * H 2 -0.00915 -0.00915 -0.06843 * * H 3 0.02077 0.02077 0.08990 * * H 4 0.00915 0.00915 -0.06843 * * H 5 -0.02077 0.02077 -0.08990 * * H 6 -0.00915 0.00915 0.06843 * * H 7 0.02077 -0.02077 -0.08990 * * H 8 0.00915 -0.00915 0.06843 * * C 1 0.00000 0.00000 -0.25366 * * C 2 0.00000 0.00000 0.25366 * * N 1 0.10080 0.10080 0.10967 * * N 2 -0.10080 -0.10080 0.10967 * * N 3 0.10080 -0.10080 -0.10967 * * N 4 -0.10080 0.10080 -0.10967 * * O 1 0.00000 0.00000 0.06529 * * O 2 0.00000 0.00000 -0.06529 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000130 | -2391.097812 | <-- min BFGS | trial step | 1.000000 | 0.000098 | -2391.100897 | <-- min BFGS | line step | 4.104719 | 0.000002 | -2391.105105 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 6 with enthalpy= -2.39110510E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 4.557877E-004 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 2.536582E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 2.011944E-002 | 5.000000E-004 | A | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 7 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000158 | -2391.105105 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 7 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.259303 0.759303 0.280203 x x H 2 0.140534 0.640534 -0.033092 x x H 3 -0.259303 -0.759303 0.280203 x x H 4 -0.140534 -0.640534 -0.033092 x x H 5 0.759303 -0.259303 -0.280203 x x H 6 0.640534 -0.140534 0.033092 x x H 7 -0.759303 0.259303 -0.280203 x x H 8 -0.640534 0.140534 0.033092 x x C 1 0.000000 0.500000 0.337814 x x C 2 0.500000 0.000000 -0.337814 x x N 1 0.144469 0.644469 0.182810 x x N 2 -0.144469 -0.644469 0.182810 x x N 3 0.644469 -0.144469 -0.182810 x x N 4 -0.644469 0.144469 -0.182810 x x O 1 0.000000 0.500000 0.587434 x x O 2 0.500000 0.000000 -0.587434 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39110510E+003 3685.84 <-- SCF 1 -2.39111847E+003 8.35617976E-004 3743.31 <-- SCF 2 -2.39111849E+003 6.50561345E-007 3768.29 <-- SCF 3 -2.39110971E+003 -5.48160909E-004 3820.45 <-- SCF 4 -2.39110822E+003 -9.33534314E-005 3863.81 <-- SCF 5 -2.39110817E+003 -3.49953032E-006 3894.36 <-- SCF 6 -2.39110817E+003 7.22763309E-008 3918.60 <-- SCF 7 -2.39110817E+003 1.84196647E-007 3942.93 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.108169108 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.03642 -0.03642 0.07640 * * H 2 0.01183 0.01183 -0.03794 * * H 3 0.03642 0.03642 0.07640 * * H 4 -0.01183 -0.01183 -0.03794 * * H 5 -0.03642 0.03642 -0.07640 * * H 6 0.01183 -0.01183 0.03794 * * H 7 0.03642 -0.03642 -0.07640 * * H 8 -0.01183 0.01183 0.03794 * * C 1 0.00000 0.00000 -0.09836 * * C 2 0.00000 0.00000 0.09836 * * N 1 0.03425 0.03425 0.04384 * * N 2 -0.03425 -0.03425 0.04384 * * N 3 0.03425 -0.03425 -0.04384 * * N 4 -0.03425 0.03425 -0.04384 * * O 1 0.00000 0.00000 0.01117 * * O 2 0.00000 0.00000 -0.01117 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000158 | -2391.105105 | <-- min BFGS | trial step | 1.000000 | 0.000068 | -2391.108169 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 7 with line minimization (lambda= 1.751381) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.259551 0.759551 0.280701 x x H 2 0.140647 0.640647 -0.033105 x x H 3 -0.259551 -0.759551 0.280701 x x H 4 -0.140647 -0.640647 -0.033105 x x H 5 0.759551 -0.259551 -0.280701 x x H 6 0.640647 -0.140647 0.033105 x x H 7 -0.759551 0.259551 -0.280701 x x H 8 -0.640647 0.140647 0.033105 x x C 1 0.000000 0.500000 0.337273 x x C 2 0.500000 0.000000 -0.337273 x x N 1 0.144756 0.644756 0.182928 x x N 2 -0.144756 -0.644756 0.182928 x x N 3 0.644756 -0.144756 -0.182928 x x N 4 -0.644756 0.144756 -0.182928 x x O 1 0.000000 0.500000 0.587150 x x O 2 0.500000 0.000000 -0.587150 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39110817E+003 3948.62 <-- SCF 1 -2.39111467E+003 4.06020894E-004 4006.15 <-- SCF 2 -2.39111467E+003 3.49180735E-007 4030.75 <-- SCF 3 -2.39110974E+003 -3.08262247E-004 4079.22 <-- SCF 4 -2.39110890E+003 -5.24218589E-005 4119.42 <-- SCF 5 -2.39110887E+003 -1.95935845E-006 4144.34 <-- SCF 6 -2.39110887E+003 1.81317446E-007 4168.71 <-- SCF 7 -2.39110887E+003 1.13432978E-007 4192.98 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.108873449 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.04781 -0.04781 0.06673 * * H 2 0.02762 0.02762 -0.01538 * * H 3 0.04781 0.04781 0.06673 * * H 4 -0.02762 -0.02762 -0.01538 * * H 5 -0.04781 0.04781 -0.06673 * * H 6 0.02762 -0.02762 0.01538 * * H 7 0.04781 -0.04781 -0.06673 * * H 8 -0.02762 0.02762 0.01538 * * C 1 0.00000 0.00000 0.01413 * * C 2 0.00000 0.00000 -0.01413 * * N 1 -0.01716 -0.01716 -0.00744 * * N 2 0.01716 0.01716 -0.00744 * * N 3 -0.01716 0.01716 0.00744 * * N 4 0.01716 -0.01716 0.00744 * * O 1 0.00000 0.00000 -0.02411 * * O 2 0.00000 0.00000 0.02411 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000158 | -2391.105105 | <-- min BFGS | trial step | 1.000000 | 0.000068 | -2391.108169 | <-- min BFGS | line step | 1.751381 | 0.000000 | -2391.108873 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 7 with enthalpy= -2.39110887E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 2.355325E-004 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 9.499159E-002 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 7.089264E-003 | 5.000000E-004 | A | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 8 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000023 | -2391.108873 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 8 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.259466 0.759466 0.280933 x x H 2 0.140757 0.640757 -0.033127 x x H 3 -0.259466 -0.759466 0.280933 x x H 4 -0.140757 -0.640757 -0.033127 x x H 5 0.759466 -0.259466 -0.280933 x x H 6 0.640757 -0.140757 0.033127 x x H 7 -0.759466 0.259466 -0.280933 x x H 8 -0.640757 0.140757 0.033127 x x C 1 0.000000 0.500000 0.337201 x x C 2 0.500000 0.000000 -0.337201 x x N 1 0.144757 0.644757 0.182945 x x N 2 -0.144757 -0.644757 0.182945 x x N 3 0.644757 -0.144757 -0.182945 x x N 4 -0.644757 0.144757 -0.182945 x x O 1 0.000000 0.500000 0.587055 x x O 2 0.500000 0.000000 -0.587055 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39110887E+003 4198.68 <-- SCF 1 -2.39110990E+003 6.38632985E-005 4246.13 <-- SCF 2 -2.39110990E+003 9.64736550E-008 4270.44 <-- SCF 3 -2.39110952E+003 -2.35729943E-005 4307.81 <-- SCF 4 -2.39110948E+003 -2.65762351E-006 4333.36 <-- SCF 5 -2.39110947E+003 -1.68686979E-007 4357.64 <-- SCF 6 -2.39110947E+003 2.77347801E-008 4381.91 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.109474861 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.04387 -0.04387 0.06563 * * H 2 0.02760 0.02760 -0.00823 * * H 3 0.04387 0.04387 0.06563 * * H 4 -0.02760 -0.02760 -0.00823 * * H 5 -0.04387 0.04387 -0.06563 * * H 6 0.02760 -0.02760 0.00823 * * H 7 0.04387 -0.04387 -0.06563 * * H 8 -0.02760 0.02760 0.00823 * * C 1 0.00000 0.00000 0.01346 * * C 2 0.00000 0.00000 -0.01346 * * N 1 -0.01205 -0.01205 -0.01917 * * N 2 0.01205 0.01205 -0.01917 * * N 3 -0.01205 0.01205 0.01917 * * N 4 0.01205 -0.01205 0.01917 * * O 1 0.00000 0.00000 -0.01632 * * O 2 0.00000 0.00000 0.01632 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000023 | -2391.108873 | <-- min BFGS | trial step | 1.000000 | 0.000022 | -2391.109475 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: improving iteration 8 with line minimization (lambda= 19.056204) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.257941 0.757941 0.285119 x x H 2 0.142748 0.642748 -0.033529 x x H 3 -0.257941 -0.757941 0.285119 x x H 4 -0.142748 -0.642748 -0.033529 x x H 5 0.757941 -0.257941 -0.285119 x x H 6 0.642748 -0.142748 0.033529 x x H 7 -0.757941 0.257941 -0.285119 x x H 8 -0.642748 0.142748 0.033529 x x C 1 0.000000 0.500000 0.335893 x x C 2 0.500000 0.000000 -0.335893 x x N 1 0.144776 0.644776 0.183251 x x N 2 -0.144776 -0.644776 0.183251 x x N 3 0.644776 -0.144776 -0.183251 x x N 4 -0.644776 0.144776 -0.183251 x x O 1 0.000000 0.500000 0.585349 x x O 2 0.500000 0.000000 -0.585349 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39110947E+003 4387.60 <-- SCF 1 -2.39124834E+003 8.67917244E-003 4445.04 <-- SCF 2 -2.39124855E+003 1.29702763E-005 4487.53 <-- SCF 3 -2.39112794E+003 -7.53788497E-003 4545.16 <-- SCF 4 -2.39111426E+003 -8.55381348E-004 4600.12 <-- SCF 5 -2.39111268E+003 -9.85277368E-005 4642.38 <-- SCF 6 -2.39111257E+003 -6.71129849E-006 4674.49 <-- SCF 7 -2.39111261E+003 2.27858462E-006 4698.74 <-- SCF 8 -2.39111262E+003 8.22807217E-007 4723.03 <-- SCF 9 -2.39111262E+003 1.32849470E-007 4747.29 <-- SCF 10 -2.39111263E+003 1.88441806E-008 4771.53 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.112625108 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.04395 0.04395 0.03789 * * H 2 0.01109 0.01109 0.12379 * * H 3 -0.04395 -0.04395 0.03789 * * H 4 -0.01109 -0.01109 0.12379 * * H 5 0.04395 -0.04395 -0.03789 * * H 6 0.01109 -0.01109 -0.12379 * * H 7 -0.04395 0.04395 -0.03789 * * H 8 -0.01109 0.01109 -0.12379 * * C 1 0.00000 0.00000 0.02336 * * C 2 0.00000 0.00000 -0.02336 * * N 1 0.02871 0.02871 -0.23339 * * N 2 -0.02871 -0.02871 -0.23339 * * N 3 0.02871 -0.02871 0.23339 * * N 4 -0.02871 0.02871 0.23339 * * O 1 0.00000 0.00000 0.16313 * * O 2 0.00000 0.00000 -0.16313 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000023 | -2391.108873 | <-- min BFGS | trial step | 1.000000 | 0.000022 | -2391.109475 | <-- min BFGS | line step | 19.056204 | -0.000008 | -2391.112625 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 8 with enthalpy= -2.39111263E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 2.344786E-004 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 2.369007E-001 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 2.428072E-002 | 5.000000E-004 | A | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 9 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000130 | -2391.112625 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 9 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258284 0.758284 0.284977 x x H 2 0.143005 0.643005 -0.033291 x x H 3 -0.258284 -0.758284 0.284977 x x H 4 -0.143005 -0.643005 -0.033291 x x H 5 0.758284 -0.258284 -0.284977 x x H 6 0.643005 -0.143005 0.033291 x x H 7 -0.758284 0.258284 -0.284977 x x H 8 -0.643005 0.143005 0.033291 x x C 1 0.000000 0.500000 0.335992 x x C 2 0.500000 0.000000 -0.335992 x x N 1 0.145005 0.645005 0.182940 x x N 2 -0.145005 -0.645005 0.182940 x x N 3 0.645005 -0.145005 -0.182940 x x N 4 -0.645005 0.145005 -0.182940 x x O 1 0.000000 0.500000 0.585748 x x O 2 0.500000 0.000000 -0.585748 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39111263E+003 4777.22 <-- SCF 1 -2.39113750E+003 1.55449179E-003 4834.61 <-- SCF 2 -2.39113751E+003 1.00413208E-006 4861.90 <-- SCF 3 -2.39111666E+003 -1.30316476E-003 4918.26 <-- SCF 4 -2.39111471E+003 -1.21732966E-004 4965.07 <-- SCF 5 -2.39111462E+003 -5.96776314E-006 4995.58 <-- SCF 6 -2.39111462E+003 -2.50023790E-009 5019.87 <-- SCF 7 -2.39111462E+003 2.76173885E-007 5044.20 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.114623573 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.01394 0.01394 0.01642 * * H 2 0.00561 0.00561 0.01842 * * H 3 -0.01394 -0.01394 0.01642 * * H 4 -0.00561 -0.00561 0.01842 * * H 5 0.01394 -0.01394 -0.01642 * * H 6 0.00561 -0.00561 -0.01842 * * H 7 -0.01394 0.01394 -0.01642 * * H 8 -0.00561 0.00561 -0.01842 * * C 1 0.00000 0.00000 0.00118 * * C 2 0.00000 0.00000 -0.00118 * * N 1 -0.01492 -0.01492 -0.02873 * * N 2 0.01492 0.01492 -0.02873 * * N 3 -0.01492 0.01492 0.02873 * * N 4 0.01492 -0.01492 0.02873 * * O 1 0.00000 0.00000 0.02349 * * O 2 0.00000 0.00000 -0.02349 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000130 | -2391.112625 | <-- min BFGS | trial step | 1.000000 | 0.000015 | -2391.114624 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 9 with enthalpy= -2.39111462E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 1.249041E-004 | 5.000000E-006 | eV | No | <-- BFGS | |F|max | 3.564449E-002 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 2.784572E-003 | 5.000000E-004 | A | No | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 10 ... ================================================================================ Writing model to urea.check +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000005 | -2391.114624 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 10 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258318 0.758318 0.285025 x x H 2 0.143019 0.643019 -0.033238 x x H 3 -0.258318 -0.758318 0.285025 x x H 4 -0.143019 -0.643019 -0.033238 x x H 5 0.758318 -0.258318 -0.285025 x x H 6 0.643019 -0.143019 0.033238 x x H 7 -0.758318 0.258318 -0.285025 x x H 8 -0.643019 0.143019 0.033238 x x C 1 0.000000 0.500000 0.335995 x x C 2 0.500000 0.000000 -0.335995 x x N 1 0.144968 0.644968 0.182856 x x N 2 -0.144968 -0.644968 0.182856 x x N 3 0.644968 -0.144968 -0.182856 x x N 4 -0.644968 0.144968 -0.182856 x x O 1 0.000000 0.500000 0.585817 x x O 2 0.500000 0.000000 -0.585817 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39111462E+003 5052.66 <-- SCF 1 -2.39111525E+003 3.89853653E-005 5098.47 <-- SCF 2 -2.39111525E+003 1.11427567E-007 5122.74 <-- SCF 3 -2.39111475E+003 -3.13556897E-005 5156.82 <-- SCF 4 -2.39111466E+003 -5.34271919E-006 5187.86 <-- SCF 5 -2.39111466E+003 1.66608410E-008 5212.11 <-- SCF 6 -2.39111466E+003 3.45056273E-008 5236.36 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.114662766 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 -0.00517 -0.00517 -0.00073 * * H 2 0.00327 0.00327 -0.00838 * * H 3 0.00517 0.00517 -0.00073 * * H 4 -0.00327 -0.00327 -0.00838 * * H 5 -0.00517 0.00517 0.00073 * * H 6 0.00327 -0.00327 0.00838 * * H 7 0.00517 -0.00517 0.00073 * * H 8 -0.00327 0.00327 0.00838 * * C 1 0.00000 0.00000 0.00278 * * C 2 0.00000 0.00000 -0.00278 * * N 1 0.01540 0.01540 0.02290 * * N 2 -0.01540 -0.01540 0.02290 * * N 3 0.01540 -0.01540 -0.02290 * * N 4 -0.01540 0.01540 -0.02290 * * O 1 0.00000 0.00000 0.00878 * * O 2 0.00000 0.00000 -0.00878 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000005 | -2391.114624 | <-- min BFGS | trial step | 1.000000 | -0.000003 | -2391.114663 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 10 with enthalpy= -2.39111466E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 2.449550E-006 | 5.000000E-006 | eV | Yes | <-- BFGS | |F|max | 3.160287E-002 | 1.000000E-002 | eV/A | No | <-- BFGS | |dR|max | 4.866006E-004 | 5.000000E-004 | A | Yes | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS ================================================================================ Starting BFGS iteration 11 ... ================================================================================ +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000001 | -2391.114663 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS -------------------------------------------------------------------------------- BFGS: starting iteration 11 with trial guess (lambda= 1.000000) -------------------------------------------------------------------------------- ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258313 0.758313 0.285028 x x H 2 0.143025 0.643025 -0.033249 x x H 3 -0.258313 -0.758313 0.285028 x x H 4 -0.143025 -0.643025 -0.033249 x x H 5 0.758313 -0.258313 -0.285028 x x H 6 0.643025 -0.143025 0.033249 x x H 7 -0.758313 0.258313 -0.285028 x x H 8 -0.643025 0.143025 0.033249 x x C 1 0.000000 0.500000 0.336001 x x C 2 0.500000 0.000000 -0.336001 x x N 1 0.144990 0.644990 0.182893 x x N 2 -0.144990 -0.644990 0.182893 x x N 3 0.644990 -0.144990 -0.182893 x x N 4 -0.644990 0.144990 -0.182893 x x O 1 0.000000 0.500000 0.585840 x x O 2 0.500000 0.000000 -0.585840 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ------------------------------------------------------------------------ <-- SCF SCF loop Energy Energy gain Timer <-- SCF per atom (sec) <-- SCF ------------------------------------------------------------------------ <-- SCF Initial -2.39111466E+003 5242.14 <-- SCF 1 -2.39111480E+003 8.37786165E-006 5280.96 <-- SCF 2 -2.39111480E+003 7.37850052E-008 5305.21 <-- SCF 3 -2.39111470E+003 -6.01190557E-006 5335.00 <-- SCF 4 -2.39111468E+003 -1.09388289E-006 5359.26 <-- SCF 5 -2.39111469E+003 6.55394647E-008 5383.52 <-- SCF 6 -2.39111469E+003 2.57860205E-008 5407.76 <-- SCF ------------------------------------------------------------------------ <-- SCF Final energy = -2391.114685761 eV ******************************** Forces ********************************* * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.00183 0.00183 0.00542 * * H 2 0.00389 0.00389 0.00126 * * H 3 -0.00183 -0.00183 0.00542 * * H 4 -0.00389 -0.00389 0.00126 * * H 5 0.00183 -0.00183 -0.00542 * * H 6 0.00389 -0.00389 -0.00126 * * H 7 -0.00183 0.00183 -0.00542 * * H 8 -0.00389 0.00389 -0.00126 * * C 1 0.00000 0.00000 0.00865 * * C 2 0.00000 0.00000 -0.00865 * * N 1 0.00258 0.00258 0.00816 * * N 2 -0.00258 -0.00258 0.00816 * * N 3 0.00258 -0.00258 -0.00816 * * N 4 -0.00258 0.00258 -0.00816 * * O 1 0.00000 0.00000 0.00312 * * O 2 0.00000 0.00000 -0.00312 * * * ************************************************************************* +------------+-------------+-------------+-----------------+ <-- min BFGS | Step | lambda | F.delta | enthalpy | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS | previous | 0.000000 | 0.000001 | -2391.114663 | <-- min BFGS | trial step | 1.000000 | 0.000000 | -2391.114686 | <-- min BFGS +------------+-------------+-------------+-----------------+ <-- min BFGS BFGS: finished iteration 11 with enthalpy= -2.39111469E+003 eV +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | Parameter | value | tolerance | units | OK? | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS | dE/ion | 1.437184E-006 | 5.000000E-006 | eV | Yes | <-- BFGS | |F|max | 8.938463E-003 | 1.000000E-002 | eV/A | Yes | <-- BFGS | |dR|max | 2.431391E-004 | 5.000000E-004 | A | Yes | <-- BFGS +-----------+-----------------+-----------------+------------+-----+ <-- BFGS BFGS: Geometry optimization completed successfully. ================================================================================ BFGS: Final Configuration: ================================================================================ ------------------------------- Cell Contents ------------------------------- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x Element Atom Fractional coordinates of atoms x x Number u v w x x----------------------------------------------------------x x H 1 0.258313 0.758313 0.285028 x x H 2 0.143025 0.643025 -0.033249 x x H 3 -0.258313 -0.758313 0.285028 x x H 4 -0.143025 -0.643025 -0.033249 x x H 5 0.758313 -0.258313 -0.285028 x x H 6 0.643025 -0.143025 0.033249 x x H 7 -0.758313 0.258313 -0.285028 x x H 8 -0.643025 0.143025 0.033249 x x C 1 0.000000 0.500000 0.336001 x x C 2 0.500000 0.000000 -0.336001 x x N 1 0.144990 0.644990 0.182893 x x N 2 -0.144990 -0.644990 0.182893 x x N 3 0.644990 -0.144990 -0.182893 x x N 4 -0.644990 0.144990 -0.182893 x x O 1 0.000000 0.500000 0.585840 x x O 2 0.500000 0.000000 -0.585840 x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx BFGS: Final Enthalpy = -2.39111469E+003 eV BFGS: Final = 1.50245547E+003 cm-1 ************************** Symmetrised Forces *************************** * * * Cartesian components (eV/A) * * --------------------------------------------------------------------- * * x y z * * * * H 1 0.00183 0.00183 0.00542 * * H 2 0.00389 0.00389 0.00126 * * H 3 -0.00183 -0.00183 0.00542 * * H 4 -0.00389 -0.00389 0.00126 * * H 5 0.00183 -0.00183 -0.00542 * * H 6 0.00389 -0.00389 -0.00126 * * H 7 -0.00183 0.00183 -0.00542 * * H 8 -0.00389 0.00389 -0.00126 * * C 1 0.00000 0.00000 0.00865 * * C 2 0.00000 0.00000 -0.00865 * * N 1 0.00258 0.00258 0.00816 * * N 2 -0.00258 -0.00258 0.00816 * * N 3 0.00258 -0.00258 -0.00816 * * N 4 -0.00258 0.00258 -0.00816 * * O 1 0.00000 0.00000 0.00312 * * O 2 0.00000 0.00000 -0.00312 * * * ************************************************************************* Writing model to urea.check Initialisation time = 4.04 Calculation time = 5406.63 Finalisation time = 4.10 Total time = 5414.77 gdis-0.90/models/naox.gin0000644000175000017500000000202607717054777014002 0ustar seanseanfit relax opti conp molmec bond torsion comp fix cell 3.44900 5.24300 10.37500 90.00000 92.66000 90.00000 frac Na1 0.30200 0.05650 0.35520 1.0 O1 0.16570 -0.12220 0.15110 -0.81548 O2 0.22740 0.27040 0.06910 -0.81548 C1 0.11350 0.04350 0.06340 0.63096 space 14 origin 2 print 1 element cova Na 0.1 end #vary #charges 2 #O C #end lennard Na Na 1881.61 2.90 15 0 0 lennard C Na 36440.34 32.62 15 0 0 lennard O Na 6351.19 34.28 15 0 0 lennard x13 C C 45267.75 100.0 15 1 1 lennard x13 C O 66649.15 30.78 15 1 1 lennard x13 O O 333648.90 17.65 15 0 0 harmonic molmec C O 46.8331 1.26 0 1 #harmonic molmec kcal #C C 532.8 1.54 0 1 morse molmec C C 8.0 5.0 1.54 1 1 0 three-body molmec C O O 12.5756 109.37 1 1 three-body molmec kcal C O C 136.0 125.31 1 1 torsion molmec kcal O C C O 0.45 +2 180 0 torsion intra kcal C C O O 5.0 +2 180 1.8 1.6 2.4 3.0 0 gdis-0.90/models/calcite_rhomb.gin0000644000175000017500000000233007717054771015620 0ustar seansean# # Keywords: # mole opti conp comp prop phon # # Options: # name calcite_rhomb_gale cell 6.375112 6.375112 6.375112 45.995223 45.995223 45.995223 fractional Ca core 0.0000000 0.0000000 0.0000000 2.00000000 1.00000 0.00000 C core 0.2500000 0.2500000 0.2500000 1.34353898 1.00000 0.00000 O core 0.5026015 0.9973984 0.2500000 1.01848700 1.00000 0.00000 O shel 0.5032031 0.9967968 0.2500000 -2.1330000 1.00000 0.00000 space R -3 C totalenergy -85.2510065520 eV species 4 Ca core 2.000000 C core 1.343539 O core 1.018487 O shel -2.133000 buck intra O core O core 4030.30000 0.245497 0.0000000 0.00 2.50 buck Ca core O shel 2154.06000 0.289118 0.0000000 0.00 10.00 buck C core Ca core 120000000. 0.120000 0.0000000 0.00 10.00 buck inter O shel O shel 64242.4540 0.198913 21.84357 0.00 15.00 morse intra bond C core O core 5.0000000 2.5228 1.19820 0.0000 spring O 52.740087 three bond intra C core O core O core 1.7995 120.00 outofplane bond intra C cor O cor O cor O cor 8.6892 360.00 element covalent 20 0.0000 end dump calcite_rhomb_gale.res gdis-0.90/models/caco3-5116.xtl0000644000175000017500000003547307717054766014463 0ustar seanseanTITLE MARVIN'S DIMENSION 2 CELL 12.516636 15.346705 78.824067 SYM MAT 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 1.0 0.0000 0.0000 0.0000 ATOMS NAME X Y Z CHARGE Ca 0.014282721 -0.022681524 -0.195342147 2.00000 Ca 0.518202600 -0.017722680 -0.325231839 2.00000 Ca 0.344310246 0.792671741 -0.952453153 2.00000 Ca 0.847228073 0.792132155 -0.988435434 2.00000 Ca 0.184368386 0.594354517 -1.566342873 2.00000 Ca 0.684226756 0.595256470 -1.554925984 2.00000 Ca 0.027132490 0.394352109 -2.145954463 2.00000 Ca 0.527968690 0.395499178 -2.171418397 2.00000 C 0.258280666 -0.013555150 -0.299220944 1.13500 C 0.765217125 -0.014525400 -0.379817107 1.13500 C 0.093802327 0.784888714 -0.865114976 1.13500 C 0.596485955 0.793228694 -0.945090977 1.13500 C 0.437626405 0.595319659 -1.548297690 1.13500 C 0.934845057 0.593499987 -1.545049523 1.13500 C 0.275282581 0.394490685 -2.153450535 1.13500 C 0.776684591 0.394478123 -2.133072467 1.13500 O 0.759798309 0.026477738 0.634569032 0.58700 O 0.342221517 -0.001134974 0.157426350 0.58700 O 0.070243432 0.834060804 0.057827227 0.58700 O 0.171225225 0.016702743 0.168173557 0.58700 O 0.674167670 0.800354481 -0.293872390 0.58700 O 0.850679892 -0.059321893 -0.710821188 0.58700 O 0.428900243 0.652250733 -0.721156967 0.58700 O 0.509575133 0.839144384 -0.723339474 0.58700 O 1.013715900 0.595873846 -0.887232934 0.58700 O 0.686300788 -0.013660838 -1.063750716 0.58700 O 0.182938042 0.740143295 -0.966462688 0.58700 O 0.261308340 -0.061304002 -1.259658878 0.58700 O 0.759700618 0.452402893 -1.320995992 0.58700 O 0.850319430 0.643130821 -1.331520913 0.58700 O 0.356182914 0.394969362 -1.525978405 0.58700 O 0.027568913 0.783137179 -1.724657729 0.58700 O 0.521399929 0.543139750 -1.678266002 0.58700 O 0.606249676 0.742616395 -1.867409000 0.58700 O 0.192043642 0.444872151 -1.906659783 0.58700 O 0.362864728 0.592375396 -2.285048449 0.58700 O 0.862923638 0.344692421 -2.193449211 0.58700 O 0.941462563 0.542517150 -2.462879583 0.58700 O 0.706812055 0.387438776 -2.923528093 0.58700 O 0.278052748 0.343921022 -3.072048703 0.58700 Ca 0.365496314 0.197993681 -2.772624700 2.00000 Ca 0.865496314 0.197993681 -2.772624700 2.00000 Ca 0.206870393 0.997492101 -3.388763522 2.00000 Ca 0.706870392 0.997492101 -3.388763522 2.00000 Ca 0.048244471 0.796990522 -4.004902344 2.00000 Ca 0.548244471 0.796990522 -4.004902344 2.00000 Ca 0.389618549 0.596488942 -4.621041166 2.00000 Ca 0.889618549 0.596488942 -4.621041166 2.00000 Ca 0.230992628 0.395987362 -5.237179988 2.00000 Ca 0.730992628 0.395987362 -5.237179988 2.00000 Ca 0.072366706 0.195485783 -5.853318810 2.00000 Ca 0.572366706 0.195485783 -5.853318810 2.00000 Ca 0.413740785 0.994984203 -6.469457633 2.00000 Ca 0.913740785 0.994984203 -6.469457633 2.00000 Ca 0.255114863 0.794482623 -7.085596455 2.00000 Ca 0.755114863 0.794482623 -7.085596455 2.00000 Ca 0.096488942 0.593981043 -7.701735277 2.00000 Ca 0.596488942 0.593981043 -7.701735277 2.00000 Ca 0.437863020 0.393479464 -8.317874099 2.00000 Ca 0.937863020 0.393479464 -8.317874099 2.00000 Ca 0.279237099 0.192977884 -8.934012921 2.00000 Ca 0.779237099 0.192977884 -8.934012921 2.00000 Ca 0.120611177 0.992476304 -9.550151743 2.00000 Ca 0.620611177 0.992476304 -9.550151743 2.00000 Ca 0.461985256 0.791974725 -10.166290565 2.00000 Ca 0.961985256 0.791974725 -10.166290565 2.00000 Ca 0.303359334 0.591473145 -10.782429388 2.00000 Ca 0.803359334 0.591473145 -10.782429388 2.00000 Ca 0.144733413 0.390971565 -11.398568210 2.00000 Ca 0.644733413 0.390971565 -11.398568210 2.00000 Ca 0.486107491 0.190469985 -12.014707032 2.00000 Ca 0.986107491 0.190469985 -12.014707032 2.00000 Ca 0.327481570 0.989968406 -12.630845854 2.00000 Ca 0.827481570 0.989968406 -12.630845854 2.00000 Ca 0.168855648 0.789466826 -13.246984676 2.00000 Ca 0.668855648 0.789466826 -13.246984676 2.00000 Ca 0.010229727 0.588965246 -13.863123498 2.00000 Ca 0.510229727 0.588965246 -13.863123498 2.00000 C 0.115496314 0.197993681 -2.772624700 1.13500 C 0.615496314 0.197993681 -2.772624700 1.13500 C 0.456870392 0.997492101 -3.388763522 1.13500 C 0.956870392 0.997492101 -3.388763522 1.13500 C 0.298244471 0.796990522 -4.004902344 1.13500 C 0.798244471 0.796990522 -4.004902344 1.13500 C 0.139618549 0.596488942 -4.621041166 1.13500 C 0.639618549 0.596488942 -4.621041166 1.13500 C 0.480992628 0.395987362 -5.237179988 1.13500 C 0.980992628 0.395987362 -5.237179988 1.13500 C 0.322366706 0.195485783 -5.853318810 1.13500 C 0.822366706 0.195485783 -5.853318810 1.13500 C 0.163740785 0.994984203 -6.469457633 1.13500 C 0.663740785 0.994984203 -6.469457633 1.13500 C 0.005114863 0.794482623 -7.085596455 1.13500 C 0.505114863 0.794482623 -7.085596455 1.13500 C 0.346488942 0.593981043 -7.701735277 1.13500 C 0.846488942 0.593981043 -7.701735277 1.13500 C 0.187863020 0.393479464 -8.317874099 1.13500 C 0.687863020 0.393479464 -8.317874099 1.13500 C 0.029237099 0.192977884 -8.934012921 1.13500 C 0.529237099 0.192977884 -8.934012921 1.13500 C 0.370611177 0.992476304 -9.550151743 1.13500 C 0.870611177 0.992476304 -9.550151743 1.13500 C 0.211985256 0.791974725 -10.166290565 1.13500 C 0.711985256 0.791974725 -10.166290565 1.13500 C 0.053359334 0.591473145 -10.782429388 1.13500 C 0.553359334 0.591473145 -10.782429388 1.13500 C 0.394733413 0.390971565 -11.398568210 1.13500 C 0.894733413 0.390971565 -11.398568210 1.13500 C 0.236107491 0.190469985 -12.014707032 1.13500 C 0.736107491 0.190469985 -12.014707032 1.13500 C 0.077481570 0.989968406 -12.630845854 1.13500 C 0.577481570 0.989968406 -12.630845854 1.13500 C 0.418855648 0.789466826 -13.246984676 1.13500 C 0.918855648 0.789466826 -13.246984676 1.13500 C 0.260229727 0.588965246 -13.863123498 1.13500 C 0.760229727 0.588965246 -13.863123498 1.13500 O 0.103473552 0.248584653 -1.851355542 0.58700 O 0.688545670 0.198618662 -2.004900402 0.58700 O 0.444847630 1.048083073 -2.467494365 0.58700 O 0.530424195 0.247959672 -2.619079840 0.58700 O 1.029919749 0.998117082 -2.621039224 0.58700 O 0.200568433 0.148027690 -2.926169559 0.58700 O 0.786221709 0.847581494 -3.083633187 0.58700 O 0.871798274 1.047458093 -3.235218662 0.58700 O 0.371293827 0.797615503 -3.237178046 0.58700 O 0.042446958 0.197368700 -3.540348997 0.58700 O 0.541942511 0.947526110 -3.542308381 0.58700 O 0.627519076 0.147402709 -3.693893857 0.58700 O 0.127595787 0.647079914 -3.699772009 0.58700 O 0.213172352 0.846956513 -3.851357484 0.58700 O 0.712667906 0.597113923 -3.853316868 0.58700 O 0.383821036 0.996867121 -4.156487820 0.58700 O 0.883316590 0.747024531 -4.158447203 0.58700 O 0.968893155 0.946901130 -4.310032679 0.58700 O 0.468969866 0.446578334 -4.315910831 0.58700 O 0.554546431 0.646454933 -4.467496306 0.58700 O 1.054041984 0.396612343 -4.469455690 0.58700 O 0.725195115 0.796365541 -4.772626642 0.58700 O 0.224690668 0.546522951 -4.774586026 0.58700 O 0.310267233 0.746399550 -4.926171501 0.58700 O 0.810343944 0.246076754 -4.932049653 0.58700 O 0.895920509 0.445953353 -5.083635129 0.58700 O 0.395416063 0.196110763 -5.085594513 0.58700 O 0.066569193 0.595863961 -5.388765464 0.58700 O 0.566064747 0.346021371 -5.390724848 0.58700 O 0.651641312 0.545897970 -5.542310323 0.58700 O 0.151718023 1.045575175 -5.548188475 0.58700 O 0.237294588 0.245451774 -5.699773951 0.58700 O 0.736790141 0.995609184 -5.701733335 0.58700 O 0.407943272 0.395362381 -6.004904286 0.58700 O 0.907438825 0.145519791 -6.006863670 0.58700 O 0.993015390 0.345396390 -6.158449145 0.58700 O 0.493092101 0.845073595 -6.164327297 0.58700 O 0.578668666 1.044950194 -6.315912773 0.58700 O 0.078164220 0.795107604 -6.317872157 0.58700 O 0.749317350 0.194860802 -6.621043108 0.58700 O 0.248812904 0.945018212 -6.623002492 0.58700 O 0.334389469 0.144894811 -6.774587968 0.58700 O 0.834466180 0.644572015 -6.780466120 0.58700 O -0.079957255 0.844448614 -6.932051595 0.58700 O 0.419538298 0.594606024 -6.934010979 0.58700 O 0.090691429 0.994359222 -7.237181930 0.58700 O 0.590186982 0.744516632 -7.239141314 0.58700 O 0.675763547 0.944393231 -7.390726790 0.58700 O 0.175840258 0.444070436 -7.396604942 0.58700 O 0.261416823 0.643947035 -7.548190417 0.58700 O 0.760912377 0.394104445 -7.550149801 0.58700 O 0.432065507 0.793857642 -7.853320752 0.58700 O 0.931561061 0.544015052 -7.855280136 0.58700 O 0.017137626 0.743891651 -8.006865612 0.58700 O 0.517214337 0.243568856 -8.012743764 0.58700 O 0.602790902 0.443445455 -8.164329239 0.58700 O 0.102286455 0.193602865 -8.166288623 0.58700 O 0.773439586 0.593356063 -8.469459575 0.58700 O 0.272935139 0.343513473 -8.471418958 0.58700 O 0.358511704 0.543390072 -8.623004434 0.58700 O 0.858588415 1.043067276 -8.628882586 0.58700 O -0.055835020 0.242943875 -8.780468062 0.58700 O 0.443660534 0.993101285 -8.782427446 0.58700 O 0.114813664 0.392854483 -9.085598397 0.58700 O 0.614309218 0.143011893 -9.087557781 0.58700 O 0.699885783 0.342888492 -9.239143256 0.58700 O 0.199962494 0.842565696 -9.245021408 0.58700 O 0.285539059 1.042442295 -9.396606884 0.58700 O 0.785034612 0.792599705 -9.398566268 0.58700 O 0.456187743 0.192352903 -9.701737219 0.58700 O 0.955683296 0.942510313 -9.703696603 0.58700 O 0.041259861 0.142386912 -9.855282078 0.58700 O 0.541336572 0.642064117 -9.861160230 0.58700 O 0.626913137 0.841940716 -10.012745706 0.58700 O 0.126408691 0.592098126 -10.014705090 0.58700 O 0.797561821 0.991851323 -10.317876041 0.58700 O 0.297057375 0.742008733 -10.319835425 0.58700 O 0.382633940 0.941885332 -10.471420900 0.58700 O 0.882710651 0.441562537 -10.477299052 0.58700 O -0.031712784 0.641439136 -10.628884528 0.58700 O 0.467782769 0.391596546 -10.630843912 0.58700 O 0.138935900 0.791349744 -10.934014863 0.58700 O 0.638431453 0.541507154 -10.935974247 0.58700 O 0.724008018 0.741383753 -11.087559723 0.58700 O 0.224084729 0.241060957 -11.093437875 0.58700 O 0.309661294 0.440937556 -11.245023350 0.58700 O 0.809156848 0.191094966 -11.246982734 0.58700 O 0.480309978 0.590848164 -11.550153685 0.58700 O 0.979805532 0.341005574 -11.552113069 0.58700 O 0.065382097 0.540882173 -11.703698545 0.58700 O 0.565458808 1.040559378 -11.709576697 0.58700 O 0.651035373 0.240435977 -11.861162172 0.58700 O 0.150530926 0.990593387 -11.863121556 0.58700 O 0.821684057 0.390346584 -12.166292507 0.58700 O 0.321179610 0.140503994 -12.168251891 0.58700 O 0.406756175 0.340380593 -12.319837367 0.58700 O 0.906832886 0.840057798 -12.325715519 0.58700 O -0.007590549 1.039934397 -12.477300994 0.58700 O 0.491905005 0.790091807 -12.479260378 0.58700 O 0.163058135 0.189845005 -12.782431330 0.58700 O 0.662553689 0.940002415 -12.784390713 0.58700 O 0.748130254 0.139879014 -12.935976189 0.58700 O 0.248206965 0.639556218 -12.941854341 0.58700 O 0.333783530 0.839432817 -13.093439817 0.58700 O 0.833279083 0.589590227 -13.095399201 0.58700 O 0.504432214 0.989343425 -13.398570152 0.58700 O 1.003927767 0.739500835 -13.400529536 0.58700 O 0.089504332 0.939377434 -13.552115011 0.58700 O 0.675157608 0.638931237 -13.709578639 0.58700 O 0.845806292 0.788841845 -14.014708974 0.58700 O 0.345301846 0.538999255 -14.016668358 0.58700 O 0.430878411 0.738875854 -14.168253833 0.58700 O 0.187180371 0.588340265 -14.630847796 0.58700 O 0.772252489 0.538374274 -14.784392655 0.58700 EOF gdis-0.90/models/napth.xtl0000644000175000017500000000221307717054777014177 0ustar seanseanTITLE Napthalene from Cerius2 DIMENSION 3 CELL 8.09800 5.95300 8.65200 90.00000 124.39998 90.00000 SYMMETRY NUMBER 14 LABEL P21/A QUALIFIER B_UNIQUE SYM MAT 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 1.0 0.0000 0.0000 0.0000 SYM MAT -1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 -1.0 0.5000 0.5000 0.0000 SYM MAT -1.0 0.0 0.0 0.0 -1.0 0.0 0.0 0.0 -1.0 0.0000 0.0000 0.0000 SYM MAT 1.0 0.0 0.0 0.0 -1.0 0.0 0.0 0.0 1.0 0.5000 0.5000 0.0000 ATOMS NAME X Y Z CHARGE TEMP OCCUP SCAT C1 0.08232 0.01856 0.32836 0.0000 0.0000 1.0000 C 0+ C2 0.11295 0.16384 0.22289 0.0000 0.0000 1.0000 C 0+ H8 0.14180 0.39070 -0.02360 0.0000 0.0000 1.0000 H 0+ C3 0.04799 0.10518 0.03714 0.0000 0.0000 1.0000 C 0+ H7 0.17870 0.30560 0.27110 0.0000 0.0000 1.0000 H 0+ C4 0.07656 0.25183 -0.07582 0.0000 0.0000 1.0000 C 0+ H6 0.12420 0.05890 0.45540 0.0000 0.0000 1.0000 H 0+ C5 -0.01320 -0.19021 0.25460 0.0000 0.0000 1.0000 C 0+ H9 -0.03330 -0.29520 0.33130 0.0000 0.0000 1.0000 H 0+ EOF gdis-0.90/models/natrite.gin0000644000175000017500000000216607717054777014510 0ustar seanseanopti defe conp molmec comp title Natrite - ICSD Collection Code 16024 end switch rfo gnorm 0.1 name sodium carbonate cell 8.90 5.24 6.04 90 101.2 90 frac Na core 0.000 0.018 0.000 0.0 0.5 Na core 0.000 0.022 0.500 0.0 0.5 Na core 0.172 0.544 0.749 0.0 0.5 C core 0.163 0.488 0.251 0.0 0.5 O1 core 0.123 0.255 0.314 0.0 0.5 O1 core 0.291 0.491 0.173 0.0 0.5 O1 core 0.079 0.676 0.255 0.0 0.5 space 12 species Na core 1.000 C core 0.712 O core -0.904 end element cova Na 0.1 end buck inter Na O 1738.41 0.265 0.00 12.0 0 0 0 # minimum cutoffs used to prevent excessive repulsion due # to interaction between close partially occupied sites buck O1 O1 5622.23 0.245497 0.00 1.0 2.5 0 0 0 buck inter O1 O1 77769.03 0.2000 25.98 1.0 15.0 0 0 0 morse bond C O1 5.70 2.74061 1.20172 0 0 0 three bond intra C O1 O1 1.127 120.00 0 0 torsion intra O1 C O1 O1 0.1800 -2 0.0 1.50 1.50 2.00 2.00 0 print 1 gdis-0.90/models/calc2d.xtl0000644000175000017500000000112407717054766014213 0ustar seanseanTITLE caco3-5116 from Cerius2 DIMENSION 2 CELL 12.51664 15.34671 78.82407 SYMMETRY LABEL P1 SYM MAT 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 1.0 0.0000 0.0000 0.0000 ATOMS NAME X Y Z CHARGE TEMP OCCUP SCAT CA 0.01428 -0.02268 -0.19534 2.0000 0.0000 1.0000 CA2+ CA 0.51820 -0.01772 -0.32523 2.0000 0.0000 1.0000 CA2+ CA 0.34431 0.79267 -0.95245 2.0000 0.0000 1.0000 CA2+ CA 0.84723 0.79213 -0.98844 2.0000 0.0000 1.0000 CA2+ CA 0.18437 0.59435 -1.56634 2.0000 0.0000 1.0000 CA2+ gdis-0.90/models/caso4_DH.gin0000644000175000017500000000333507717054772014420 0ustar seanseansingle relax conp comp molmec dist cutd 10.0 #CaSO4.2H2O switch rfo gnorm 0.1 name CaSO4_DH cell 5.670 15.201 6.533 90 118.6 90 frac Ca 0.50000 0.0796700 0.25000 S 0.00000 0.0770500 0.75000 O1 0.96320 0.1319000 0.55047 O1 0.75822 0.0222600 0.66709 H 0.25112 0.1615800 0.50372 H 0.40458 0.2427500 0.49217 O2 0.37960 0.1821200 0.45881 space I 1 2/c 1 observables elastic 1 1 7.86 elastic 2 2 6.27 elastic 3 3 7.26 elastic 4 4 0.91 elastic 5 5 2.64 elastic 6 6 1.04 elastic 1 2 4.10 elastic 1 3 2.68 elastic 1 5 -0.70 elastic 2 3 2.42 elastic 2 5 0.31 elastic 3 5 -1.74 end species Ca 2.00 S 1.36 O1 -0.84 O2 -0.82 H 0.41 end element cova Ca 0.1 end # fitting observables weights 27 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 31 32 33 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100000 100000 100000 100000 100000 100000 end # common buck inter Ca core O1 core 1651.39 0.2931 0.00 15.0 1 1 0 buck inter O1 core O1 core 103585.02 0.2000 25.98 15.0 0 0 0 morse bond S core O1 core 5.00 1.2000 1.505 0 0 0 three bond S core O1 core O1 core 15.0 109.47 0 0 # water buckingham inter O1 O2 64972.27 0.2146 29.76 15.0 1 0 0 buckingham inter O2 O2 58213.81 0.2099 30.42 15.0 1 0 0 buckingham inter Ca O2 1374.31 0.2997 0.00 15.0 1 1 0 buckingham inter H O1 1009.93 0.1995 4.84 15.0 0 0 0 harmonic bond H core O2 core 62.6567 0.96 0.0 0 0 three bond O2 core H core H core 5.0416 104.50 0 0 print 1 gdis-0.90/models/multi12.gin0000644000175000017500000000704407717054777014337 0ustar seanseanopti conp molmec comp nosym bond phon title Natrite - ICSD Collection Code 16024 Sodium sulfate - ICSD Collection Code 81505 Glauberite - ICSD Collection Code 26773 Nahcolite - ICSD Collection Code 18183 Thermonatrite - ICSD Collection Code 6293 end switch rfo gnorm 0.1 name sodium carbonate cell 8.90 5.24 6.04 90 101.2 90 frac Na core 0.000 0.018 0.000 0.0 0.5 Na core 0.000 0.022 0.500 0.0 0.5 Na core 0.172 0.544 0.749 0.0 0.5 C core 0.163 0.488 0.251 0.0 0.5 O1 core 0.123 0.255 0.314 0.0 0.5 O1 core 0.291 0.491 0.173 0.0 0.5 O1 core 0.079 0.676 0.255 0.0 0.5 space 12 name sodium sulfate cell 5.63041 9.04343 7.03771 90 90 90 frac Na 0.0 0.1830 0.250 Na 0.0 0.5 0.0 S 0.0 0.8483 0.250 O1 0.2823 0.4385 0.250 O1 0.0 0.2432 0.5684 space 63 name calcium disodium bisulfate cell 10.158 8.333 8.551 90 112.33 90 frac Ca 0.0000 0.0640 0.2500 S 0.3153 0.2858 0.3126 Na 0.3621 0.0550 0.0597 O1 0.1618 0.2743 0.2735 O1 0.3371 0.3379 0.1579 O1 0.3843 0.1305 0.3644 O1 0.3741 0.4122 0.4411 space 15 name sodium bicarbonate cell 3.51 9.71 8.05 90 111.85 90 frac Na core 0.4285 0.0044 -0.2855 C core 0.2123 0.2384 -0.0767 O1 core 0.1893 0.3666 -0.0714 O1 core -0.0104 0.1619 -0.2046 O1 core 0.4959 0.1705 0.0592 H1 core 0.669 0.252 0.143 space 14 name sodium carbonate mono-hydrate cell 6.474 10.724 5.259 90.0 90.0 90.0 frac Na 0.0 0.1938 0.1398 Na 0.0651 0.0020 -0.3786 C -0.2151 0.2556 0.6025 O1 -0.2010 0.1381 0.5457 O1 -0.2027 0.3369 0.4267 O1 -0.2398 0.2876 -0.1639 O2 0.0325 -0.0296 0.0683 H2 0.11 -0.06 0.1500 H2 -0.1 -0.08 0.1200 space P 21 a b # cell parameters observables weights 22 1 2 3 4 5 6 76 77 78 79 80 81 121 122 123 124 125 126 202 203 204 206 100000 100000 100000 10000 10000 10000 100000 100000 100000 10000 10000 10000 100000 100000 100000 10000 10000 10000 200000 100000 100000 10000 end species Ca core 2.000 Na core 1.000 C core 0.712 S core 1.616 O1 core -0.904 H1 core 1.000 O2 core -0.820 H2 core 0.410 end element cova Ca 0.1 cova Na 0.1 cova O 0.60 cova H 0.01 end buck inter Na O 1640.25 0.2655 0.0 12.0 0 0 0 buck inter Ca O 1746.07 0.2968 0.0 12.0 0 0 0 buck inter H O 847.60 0.09655 0.0 12.0 0 0 0 # minimum cutoffs used to prevent excessive repulsion due # to interaction between close partially occupied sites buck intra O O 2607.04 0.25426 0.00 1.0 2.5 0 0 0 buck inter O O 103895.56 0.2000 25.98 1.0 15.0 0 0 0 morse bond C O 5.70 2.82726 1.20172 0 0 0 morse bond S O 5.01 1.03826 1.23661 0 0 0 three bond S O O 15.0 109.47 0 0 torsion O C O O 0.1800 -2 0.0 1.50 1.50 2.00 2.00 0 # water #harmonic bond #H2 O2 62.6567 0.96 0 0 #three bond #O2 H2 H2 core 5.0416 104.50 0 0 harmonic H2 O2 62.6567 0.96 1 0.0 1.2 0 0 three O2 H2 H2 core 5.0416 104.50 1.2 1.2 2.1 0 0 # simulate molmec exclusion coul H2 H2 2.1 0 print 1 gdis-0.90/models/gibb.gin0000644000175000017500000000336007717054773013736 0ustar seanseanopti conp comp mole switch rfo gnorm 1.0 title gibbsite fit end name gibbsite cell 8.684000 5.078000 9.736000 90.000000 94.540000 90.000000 fractional Al core 0.167900 0.529500 0.997700 Al core 0.334400 0.023600 0.997600 O1 core 0.177900 0.218300 0.888500 O1 core 0.669200 0.655800 0.897700 O1 core 0.498400 0.131500 0.895600 O1 core 0.979500 0.629300 0.893200 O1 core 0.297100 0.717800 0.894800 O1 core 0.819400 0.149100 0.898500 O1 shel 0.177900 0.218300 0.888500 O1 shel 0.669200 0.655800 0.897700 O1 shel 0.498400 0.131500 0.895600 O1 shel 0.979500 0.629300 0.893200 O1 shel 0.297100 0.717800 0.894800 O1 shel 0.819400 0.149100 0.898500 H1 core 0.077262 0.136549 0.874464 H1 core 0.574642 0.552033 0.897494 H1 core 0.494353 0.110970 0.795476 H1 core 0.951158 0.814745 0.886939 H1 core 0.295768 0.716748 0.794078 H1 core 0.805904 0.161311 0.797539 space P 1 21/N 1 observable freq 1 168 3617 0.1 end element covalent Al 0.1 end species 6 Al core 3.000 O1 core 0.948 O1 shel -2.366 H1 core 0.418 observables weights 11 3 4 5 6 49 50 51 52 95 96 97 20000 20000 20000 1000 20000 20000 20000 1000 20000 20000 20000 end # mine buck inter Al core O1 shel 1342.86 0.2944 0.0 0.0 15.0 0 0 0 buck inter Al core H1 core 560.44 0.2906 0.0 0.0 15.0 0 0 0 buck inter O1 shel O1 shel 9999.97 0.1490 17.0 0.0 15.0 0 0 0 buck inter O1 shel H1 core 235.00 0.2500 0.0 0.0 15.0 0 0 0 morse bond O1 core H1 core 5.4246 2.2682 0.95 0 0 0 spring O1 60.1 0 print 1 gdis-0.90/models/full.car0000644000175000017500000000443607717054773013772 0ustar seansean!BIOSYM archive 3 PBC=OFF !DATE Fri Feb 2 05:28:32 2001 C1 -0.995599389 0.477571398 -1.195487738 XXX ND C_3 C 0.000 C2 -1.255067706 -1.231266737 0.557976186 XXX ND C_3 C 0.000 H1 -0.403177947 -0.170988843 -1.842085719 XXX ND H_ H 0.100 H2 -1.635051131 1.110482216 -1.816287160 XXX ND H_ H 0.100 H3 -1.677645683 -2.215292692 0.356744796 XXX ND H_ H 0.100 H4 -1.506466031 -0.949366152 1.580042958 XXX ND H_ H 0.100 N1 -3.112069845 -0.171093866 -0.436788529 XXX ND N_R N 0.700 N2 -1.807246208 -0.301961243 -0.347771466 XXX ND N_R N -0.100 N3 -0.147611022 1.289033175 -0.413376868 XXX ND N_R N -0.100 N4 -0.676541567 2.052811384 0.515544116 XXX ND N_R N 0.700 O1 -3.594718456 0.623773158 -1.315325856 XXX ND O_2 O -0.400 O2 -3.876258850 -0.861561120 0.323554844 XXX ND O_2 O -0.400 O3 0.084120110 2.726893902 1.292378068 XXX ND O_2 O -0.400 O4 -1.945077062 2.030755043 0.692639172 XXX ND O_2 O -0.400 C3 0.995599389 -0.477571398 1.195487738 XXX ND C_3 C 0.000 C4 1.255067706 1.231266737 -0.557976186 XXX ND C_3 C 0.000 H5 0.403177947 0.170988843 1.842085719 XXX ND H_ H 0.100 H6 1.635051131 -1.110482216 1.816287160 XXX ND H_ H 0.100 H7 1.677645683 2.215292692 -0.356744796 XXX ND H_ H 0.100 H8 1.506466031 0.949366152 -1.580042958 XXX ND H_ H 0.100 N5 3.112069845 0.171093866 0.436788529 XXX ND N_R N 0.700 N6 1.807246208 0.301961243 0.347771466 XXX ND N_R N -0.100 N7 0.147611022 -1.289033175 0.413376868 XXX ND N_R N -0.100 N8 0.676541567 -2.052811384 -0.515544116 XXX ND N_R N 0.700 O5 3.594718456 -0.623773158 1.315325856 XXX ND O_2 O -0.400 O6 3.876258850 0.861561120 -0.323554844 XXX ND O_2 O -0.400 O7 -0.084120110 -2.726893902 -1.292378068 XXX ND O_2 O -0.400 O8 1.945077062 -2.030755043 -0.692639172 XXX ND O_2 O -0.400 end end gdis-0.90/fastforward.xpm0000644000175000017500000000344107743205067014112 0ustar seansean/* XPM */ static char * fastforward_xpm[] = { "24 24 73 1", " c None", ". c #888888", "+ c #C0C0C0", "@ c #C0C4C0", "# c #282C38", "$ c #303440", "% c #787878", "& c #989CA0", "* c #485070", "= c #686CA0", "- c #404060", "; c #383840", "> c #989898", ", c #D0D0D0", "' c #98A0A0", ") c #585C78", "! c #8890C0", "~ c #707CA8", "{ c #585C88", "] c #383C50", "^ c #606468", "/ c #A0A0A0", "( c #D8DCD8", "_ c #606480", ": c #909CC8", "< c #8894C0", "[ c #7880B0", "} c #586080", "| c #505460", "1 c #707470", "2 c #B8B8B8", "3 c #606880", "4 c #98A0D0", "5 c #98A4D0", "6 c #888CB0", "7 c #707088", "8 c #585860", "9 c #787C78", "0 c #989CC8", "a c #98A0C8", "b c #A0A4D0", "c c #A8ACD0", "d c #989CB8", "e c #585C68", "f c #808480", "g c #586078", "h c #9094C0", "i c #9098C8", "j c #A0A8D0", "k c #606070", "l c #585858", "m c #B8BCB8", "n c #505870", "o c #808CB8", "p c #707488", "q c #606068", "r c #909490", "s c #707CB0", "t c #8088B8", "u c #9098C0", "v c #707890", "w c #606470", "x c #808080", "y c #404868", "z c #8084B0", "A c #787C98", "B c #484C58", "C c #787C80", "D c #B0B4B0", "E c #484C60", "F c #505060", "G c #989C98", "H c #B0B0B0", " ", " ", " ", " ", " ", " .+ @.+ ", " #$% &#$% ", " *=-;>, '*=-;>, ", " )!~{]^/( /)!~{]^/( ", " _::<[}|12 /_::<[}|12 ", " 34554:6789,/34554:6789,", " _4044abcdef/_4044abcdef", " gh #include #include #ifdef __APPLE__ #include #else #include #endif #include "gdis.h" #include "opengl.h" #include "interface.h" extern struct sysenv_pak sysenv; /***************************/ /* free a canvas structure */ /***************************/ void canvas_free(gpointer data) { struct canvas_pak *canvas = data; g_free(canvas); } /****************************/ /* schedule redraw requests */ /****************************/ void redraw_canvas(gint action) { GSList *list; struct model_pak *model; switch (action) { case SINGLE: /* data = sysenv.active_model; if (data) data->redraw = TRUE; break; */ case ALL: for (list=sysenv.mal ; list ; list=g_slist_next(list)) { model = list->data; model->redraw = TRUE; } break; } sysenv.refresh_canvas = TRUE; } /*******************/ /* configure event */ /*******************/ #define DEBUG_GL_CONFIG_EVENT 0 gint canvas_configure(GtkWidget *w, GdkEventConfigure *event, gpointer data) { gint size; GSList *list; struct model_pak *model; g_assert(w != NULL); /* store new drawing area size */ if (w->allocation.width > w->allocation.height) size = w->allocation.height; else size = w->allocation.width; sysenv.x = 0; sysenv.y = 0; sysenv.width = w->allocation.width; sysenv.height = w->allocation.height; sysenv.size = size; /* update canvases */ canvas_resize(); #if DEBUG_GL_CONFIG_EVENT printf("Relative canvas origin: (%d,%d)\n",sysenv.x,sysenv.y); printf(" Canvas dimensions: %dx%d\n",sysenv.width,sysenv.height); #endif /* update coords */ for (list=sysenv.mal ; list ; list=g_slist_next(list)) { model = list->data; model->redraw = TRUE; } /* new screen size to be saved as default */ sysenv.write_gdisrc = TRUE; return(TRUE); } /*****************/ /* expose event */ /****************/ #define DEBUG_GL_EXPOSE 0 gint canvas_expose(GtkWidget *w, GdkEventExpose *event, gpointer data) { /* gl_clear_canvas(); for (list=sysenv.mal ; list ; list=g_slist_next(list)) { model = list->data; model->redraw = TRUE; canvas = model->canvas; if (canvas->active) gl_draw(canvas, model); } */ redraw_canvas(ALL); return(TRUE); } /*****************************************************/ /* create a new canvas and place in the canvas table */ /*****************************************************/ void canvas_new(gint x, gint y, gint w, gint h) { struct canvas_pak *canvas; /* create an OpenGL capable drawing area */ canvas = g_malloc(sizeof(struct canvas_pak)); /* printf("creating canvas: %p (%d,%d) [%d x %d] \n", canvas, x, y, w, h); */ canvas->x = x; canvas->y = y; canvas->width = w; canvas->height = h; if (w > h) canvas->size = h; else canvas->size = w; canvas->active = FALSE; canvas->resize = TRUE; /* canvas->model = sysenv.active_model; */ canvas->model = NULL; sysenv.canvas_list = g_slist_prepend(sysenv.canvas_list, canvas); } /**************************************/ /* initialize the OpenGL drawing area */ /**************************************/ void canvas_init(GtkWidget *box) { /* create the drawing area */ sysenv.glarea = gtk_drawing_area_new(); gtk_widget_set_gl_capability(sysenv.glarea, sysenv.glconfig, NULL, TRUE, GDK_GL_RGBA_TYPE); gtk_widget_set_size_request(sysenv.glarea, sysenv.width, sysenv.height); gtk_box_pack_start(GTK_BOX(box), sysenv.glarea, TRUE, TRUE, 0); /* init signals */ g_signal_connect(GTK_OBJECT(sysenv.glarea), "expose_event", GTK_SIGNAL_FUNC(canvas_expose), NULL); g_signal_connect(GTK_OBJECT(sysenv.glarea), "configure_event", GTK_SIGNAL_FUNC(canvas_configure), NULL); /* TODO - what about the "realize" event??? */ g_signal_connect(GTK_OBJECT(sysenv.glarea), "motion_notify_event", GTK_SIGNAL_FUNC(gui_motion_event), NULL); g_signal_connect(GTK_OBJECT(sysenv.glarea), "button_press_event", GTK_SIGNAL_FUNC(gui_press_event), NULL); g_signal_connect(GTK_OBJECT(sysenv.glarea), "button_release_event", GTK_SIGNAL_FUNC(gui_release_event), NULL); g_signal_connect(GTK_OBJECT(sysenv.glarea), "scroll_event", GTK_SIGNAL_FUNC(gui_scroll_event), NULL); gtk_widget_set_events(GTK_WIDGET(sysenv.glarea), GDK_EXPOSURE_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_SCROLL_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK); gtk_widget_show(sysenv.glarea); } /**************************/ /* table resize primitive */ /**************************/ #define DEBUG_CANVAS_RESIZE 0 void canvas_resize(void) { gint i, j, n, rows, cols, width, height; GSList *list; struct canvas_pak *canvas; n = g_slist_length(sysenv.canvas_list); rows = cols = 1; switch (n) { case 2: rows = 1; cols = 2; break; case 3: case 4: rows = 2; cols = 2; break; } width = sysenv.width / cols; height = sysenv.height / rows; #if DEBUG_CANVAS_RESIZE printf("Splitting (%d, %d) : %d x %d\n", rows, cols, width, height); #endif list = sysenv.canvas_list; for (i=rows ; i-- ; ) { for (j=0 ; jdata; canvas->x = j*width; canvas->y = i*height; canvas->width = width; canvas->height = height; canvas->resize = TRUE; #if DEBUG_CANVAS_RESIZE printf(" - canvas (%d, %d) : [%d, %d]\n", i, j, canvas->x, canvas->y); #endif list = g_slist_next(list); } } } canvas_shuffle(); } /*******************************/ /* revert to a single viewport */ /*******************************/ void canvas_single(void) { gint i, n; struct canvas_pak *canvas; n = g_slist_length(sysenv.canvas_list); if (n > 1) { for (i=n-1 ; i-- ; ) { canvas = g_slist_nth_data(sysenv.canvas_list, i); sysenv.canvas_list = g_slist_remove(sysenv.canvas_list, canvas); } } canvas_resize(); redraw_canvas(SINGLE); } /************************************/ /* increase the number of viewports */ /************************************/ void canvas_create(void) { gint n; n = g_slist_length(sysenv.canvas_list); switch (n) { case 2: canvas_new(0, 0, 0, 0); case 1: case 0: canvas_new(0, 0, 0, 0); canvas_resize(); redraw_canvas(ALL); break; } } /************************************/ /* decrease the number of viewports */ /************************************/ void canvas_delete(void) { gint n; gpointer canvas; n = g_slist_length(sysenv.canvas_list); switch (n) { case 4: canvas = sysenv.canvas_list->data; sysenv.canvas_list = g_slist_remove(sysenv.canvas_list, canvas); canvas_free(canvas); case 2: canvas = sysenv.canvas_list->data; sysenv.canvas_list = g_slist_remove(sysenv.canvas_list, canvas); canvas_free(canvas); /* resize & redraw */ canvas_resize(); redraw_canvas(ALL); break; } } /*********************************************/ /* select model at the given canvas position */ /*********************************************/ void canvas_select(gint x, gint y) { gint ry; GSList *list; struct canvas_pak *canvas; /* height invert correction */ ry = sysenv.height - y - 1; for (list=sysenv.canvas_list ; list ; list=g_slist_next(list)) { canvas = list->data; if (x >= canvas->x && x < canvas->x+canvas->width) { if (ry >= canvas->y && ry < canvas->y+canvas->height) { if (canvas->model) { /* only select if not already active -avoid's deselecting graphs */ if (canvas->model != sysenv.active_model) tree_select_model(canvas->model); } } } } } /***********************************************/ /* get the canvas a model is drawn in (if any) */ /***********************************************/ gpointer canvas_find(struct model_pak *model) { GSList *list; struct canvas_pak *canvas; for (list=sysenv.canvas_list ; list ; list=g_slist_next(list)) { canvas = list->data; if (canvas->model == model) return(canvas); } return(NULL); } gdis-0.90/logging.c0000644000175000017500000001360611056515635012635 0ustar seansean/* logging.c Message logging plugin and stat collector for webserver. Register the plugin with: soap_register_plugin(soap, logging); Change logging destinations: soap_set_logging_inbound(struct soap*, FILE*); soap_set_logging_outbound(struct soap*, FILE*); Obtain stats (sent and recv octet count, independent of log dest): soap_get_logging_stats(soap, size_t *sent, size_t *recv); gSOAP XML Web services tools Copyright (C) 2000-2008, Robert van Engelen, Genivia Inc., All Rights Reserved. This part of the software is released under one of the following licenses: GPL, the gSOAP public license, or Genivia's license for commercial use. -------------------------------------------------------------------------------- gSOAP public license. The contents of this file are subject to the gSOAP Public License Version 1.3 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.cs.fsu.edu/~engelen/soaplicense.html Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License. The Initial Developer of the Original Code is Robert A. van Engelen. Copyright (C) 2000-2008, Robert van Engelen, Genivia Inc., All Rights Reserved. -------------------------------------------------------------------------------- GPL license. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Author contact information: engelen@genivia.com / engelen@acm.org This program is released under the GPL with the additional exemption that compiling, linking, and/or using OpenSSL is allowed. -------------------------------------------------------------------------------- A commercial use license is available from Genivia, Inc., contact@genivia.com -------------------------------------------------------------------------------- */ #include "logging.h" #ifdef __cplusplus extern "C" { #endif const char logging_id[] = LOGGING_ID; static int logging_init(struct soap *soap, struct logging_data *data); static void logging_delete(struct soap *soap, struct soap_plugin *p); static int logging_send(struct soap *soap, const char *buf, size_t len); static size_t logging_recv(struct soap *soap, char *buf, size_t len); /* plugin registry function, invoked by soap_register_plugin */ int logging(struct soap *soap, struct soap_plugin *p, void *arg) { p->id = logging_id; /* create local plugin data */ p->data = (void*)SOAP_MALLOC(soap, sizeof(struct logging_data)); /* register the destructor */ p->fdelete = logging_delete; /* if OK then initialize */ if (p->data) { if (logging_init(soap, (struct logging_data*)p->data)) { SOAP_FREE(soap, p->data); /* error: could not init */ return SOAP_EOM; /* return error */ } } return SOAP_OK; } /* set inbound logging FD, NULL to disable */ void soap_set_logging_inbound(struct soap *soap, FILE *fd) { struct logging_data *data = (struct logging_data*)soap_lookup_plugin(soap, logging_id); if (data) data->inbound = fd; } /* set outbound logging FD, NULL to disable */ void soap_set_logging_outbound(struct soap *soap, FILE *fd) { struct logging_data *data = (struct logging_data*)soap_lookup_plugin(soap, logging_id); if (data) data->outbound = fd; } /* get logging sent and recv octet counts */ void soap_get_logging_stats(struct soap *soap, size_t *sent, size_t *recv) { struct logging_data *data = (struct logging_data*)soap_lookup_plugin(soap, logging_id); if (data) { *sent = data->stat_sent; *recv = data->stat_recv; } } /* used by plugin registry function */ static int logging_init(struct soap *soap, struct logging_data *data) { data->inbound = NULL; data->outbound = NULL; data->stat_sent = 0; data->stat_recv = 0; data->fsend = soap->fsend; /* save old recv callback */ data->frecv = soap->frecv; /* save old send callback */ soap->fsend = logging_send; /* replace send callback with ours */ soap->frecv = logging_recv; /* replace recv callback with ours */ return SOAP_OK; } static void logging_delete(struct soap *soap, struct soap_plugin *p) { /* free allocated plugin data. If fcopy() is not set, then this function is not called for all copies of the plugin created with soap_copy(). In this example, the fcopy() callback is omitted and the plugin data is shared by the soap copies created with soap_copy() */ SOAP_FREE(soap, p->data); } static size_t logging_recv(struct soap *soap, char *buf, size_t len) { struct logging_data *data = (struct logging_data*)soap_lookup_plugin(soap, logging_id); size_t res; /* get data from old recv callback */ res = data->frecv(soap, buf, len); /* update should be in mutex, but we don't mind some inaccuracy in stats */ data->stat_recv += res; if (data->inbound) fwrite(buf, res, 1, data->inbound); return res; } static int logging_send(struct soap *soap, const char *buf, size_t len) { struct logging_data *data = (struct logging_data*)soap_lookup_plugin(soap, logging_id); /* update should be in mutex, but we don't mind some inaccuracy in stats */ data->stat_sent += len; if (data->outbound) fwrite(buf, len, 1, data->outbound); return data->fsend(soap, buf, len); /* pass data on to old send callback */ } #ifdef __cplusplus } #endif gdis-0.90/spatial.h0000644000175000017500000000471610450440445012644 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ /*************/ /* constants */ /*************/ enum {HF_CURVATURE, HF_LAST}; enum {SPATIAL_LINE, SPATIAL_SURFACE, SPATIAL_SOLID}; enum {SPATIAL_GENERIC, SPATIAL_VECTOR, SPATIAL_MORPHOLOGY}; /**************/ /* structures */ /**************/ struct spatial_pak { gint type; /* SPATIAL_GENERIC, or special type */ gint size; /* vertices per spatial method primitive */ gint method; /* openGL drawing */ gint material; /* 1 = wire, 2 = surface (wire or solid), 3 = solid */ gint periodic; /* create images */ gint show_label; gchar *label; gdouble x[3]; /* label position */ gdouble c[3]; /* label colour */ gpointer data; /* general purpose associated data */ GSList *list; /* vertex list */ }; /**************/ /* prototypes */ /**************/ void spatial_destroy(gpointer, struct model_pak *); void spatial_destroy_by_type(gint, struct model_pak *); void spatial_destroy_by_label(const gchar *, struct model_pak *); void spatial_destroy_all(struct model_pak *); void delete_vector_at(gdouble *, struct model_pak *); gpointer spatial_new(const gchar *, gint , gint, gint, struct model_pak *); void spatial_vertex_add(gdouble *, gdouble *, gpointer); void spatial_vnorm_add(gdouble *, gdouble *, gdouble *, gpointer); void spatial_point_add(struct core_pak *, struct model_pak *); gpointer spatial_build_facet(gdouble *, GSList *, struct model_pak *); void spatial_vdata_add(gdouble *, gdouble *, gdouble *, gpointer, gpointer); void spatial_data_set(gpointer, gpointer); gpointer spatial_data_get(gpointer); void compute_plane(gdouble *, GList *); void compute_normal(gdouble *, gdouble *, gdouble *, gdouble *); gdis-0.90/host.c0000644000175000017500000004076211006270731012155 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #ifndef _WIN32 #include #include #include #include #include "gdis.h" #include "scan.h" #include "host.h" /* top level data structure */ extern struct sysenv_pak sysenv; /* NB: this host stuff could equally well be the localhost, */ /* instead of some remote host ... in which case the system() */ /* call could be used instead of piping commands via the input */ /* and output file descriptors */ /* NB: remote stuff, where we issue commands - assumes unix */ /* style host ie echo, date, cd ... etc are all assumed to work */ struct host_pak { gchar *name; gchar *cwd; gint type; /* unix only at the moment */ gint connected; gint input; gint output; /* NEW */ /* if qsub & mpirun services available - permits alternate invocation */ gpointer services; }; struct service_pak { gpointer host; gint flags; gchar *fullpath; }; /**************************/ /* line reading primitive */ /**************************/ int readstr(int fd, char *a, int n) { int i; for (i=0; ifullpath); g_free(service); } /**********************************/ /* allocate a new host connection */ /**********************************/ gpointer host_new(gchar *name) { struct host_pak *host; host = g_malloc(sizeof(struct host_pak)); host->name = g_strdup(name); host->cwd = NULL; host->connected = FALSE; host->input = -1; host->output = -1; host->services = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, host_service_free); return(host); } /****************************************/ /* disconnect and free a host structure */ /****************************************/ void host_free(gpointer data) { struct host_pak *host = data; if (host) { if (host->connected) host_disconnect(host); g_free(host->name); g_free(host->cwd); g_hash_table_destroy(host->services); g_free(host); } } /*************************/ /* free all host entries */ /*************************/ void host_free_all(void) { GSList *list; list = sysenv.host_list; while (list) { host_free(list->data); list = g_slist_next(list); } g_slist_free(sysenv.host_list); } /*************************************************/ /* perform a foreach on the host's program table */ /*************************************************/ void host_service_foreach(gpointer data, gpointer func, gpointer arg) { struct host_pak *host = data; g_assert(host != NULL); g_hash_table_foreach(host->services, func, arg); } /*******************************/ /* structure access primitives */ /*******************************/ const gchar *host_name(gpointer data) { struct host_pak *host = data; g_assert(host != NULL); return(host->name); } const gchar *host_cwd(gpointer data) { struct host_pak *host = data; g_assert(host != NULL); return(host->cwd); } gpointer host_service_get(gpointer data, const gchar *name) { struct host_pak *host = data; g_assert(host != NULL); return(g_hash_table_lookup(host->services, name)); } gchar *host_service_fullpath(gpointer data) { struct service_pak *service = data; return(service->fullpath); } gint host_service_flags(gpointer data) { struct service_pak *service = data; return(service->flags); } /*****************************************/ /* cycle through service execution types */ /*****************************************/ void host_service_cycle(gpointer data, const gchar *name) { struct host_pak *host = data; struct service_pak *service; service = g_hash_table_lookup(host->services, name); if (!service) return; /* don't cycle support services (eg qsub/mpi) */ if (service->flags == SERVICE_SECONDARY) return; /* cycle the service type */ service->flags++; if (service->flags >= SERVICE_PRIMARY) service->flags = SERVICE_BACKGROUND; } /**********************************************************************************/ /* check if a service name (and current flags) is available for the supplied host */ /**********************************************************************************/ gint host_service_available(gpointer data) { struct service_pak *service = data, *mpi, *qsub; struct host_pak *host; g_assert(service != NULL); if (!service->fullpath) return(FALSE); host = service->host; mpi = g_hash_table_lookup(host->services, "mpirun"); qsub = g_hash_table_lookup(host->services, "qsub"); switch (service->flags) { case SERVICE_MPI: if (!mpi->fullpath) return(FALSE); break; case SERVICE_QSUB: if (!qsub->fullpath) return(FALSE); break; case SERVICE_QSUB_MPI: if (!mpi->fullpath || !qsub->fullpath) return(FALSE); break; } return(TRUE); } /***************************************************/ /* primitive for populating the host program table */ /***************************************************/ /* NB: like all, assumes unix host */ void host_service_find(struct host_pak *host, const gchar *name) { gint flags; gchar *text, *reply; struct service_pak *service; g_assert(host != NULL); g_assert(name != NULL); /* sepcial case services */ if (g_strrstr(name, "mpi") || g_strrstr(name, "qsub")) flags = SERVICE_SECONDARY; else flags = SERVICE_BACKGROUND; /* attempt to locate executable */ text = g_strdup_printf("which %s\n", name); reply = host_talk(host, text); g_free(text); if (g_strrstr(reply, "not found")) { g_free(reply); reply = NULL; } /* add the service */ service = g_malloc(sizeof(struct service_pak)); service->host = host; service->flags = flags; service->fullpath = reply; g_hash_table_insert(host->services, g_strdup(name), service); } /**********************************************************/ /* setup session working directory for job file transfers */ /**********************************************************/ /* NB: assumes unix style remote host */ /* TODO - check for host type etc etc - which can be reported via the job/host gui */ void host_init(struct host_pak *host) { gchar *date, *text, *reply; date = host_talk(host, "date\n"); /* force existence of gdis ssh session top level directory */ reply = host_talk(host, "md gdis_ssh\n"); g_free(reply); reply = host_talk(host, "cd gdis_ssh\n"); g_free(reply); /* create a working directory using current date */ text = g_strdup_printf("md \"%s\"\n", date); reply = host_talk(host, text); g_free(reply); g_free(text); text = g_strdup_printf("cd \"%s\"\n", date); reply = host_talk(host, text); g_free(reply); g_free(text); /* NEW */ host->cwd = host_talk(host, "pwd\n"); /* create a (dummy) control file */ /* TODO (maybe) ... could be used to save/restore info about submitted jobs */ reply = host_talk(host, "echo \"1\" > control.txt\n"); g_free(reply); g_free(date); /* initialize available host services */ host_service_find(host, "gulp"); /* secondary (enabling) services */ host_service_find(host, "qsub"); host_service_find(host, "mpirun"); /* register the initialized host */ sysenv.host_list = g_slist_prepend(sysenv.host_list, host); } /**********************************/ /* activate a host ssh connection */ /**********************************/ /* NB: assumes unix style remote host */ gint host_connect(gpointer data) { int n; int fdto[2]; int fdfrom[2]; char cmd[1000]; struct host_pak *host = data; g_assert(host != NULL); if (!host->name) { perror("Fatal: no host name."); return(FALSE); } if (pipe(fdto) == -1 || pipe(fdfrom) == -1) { perror("Fatal: failed to create pipes."); return(FALSE); } switch (fork()) { case -1: perror("Fatal: failed to fork."); return(FALSE); /* child */ case 0: /* setup child io streams */ dup2(fdto[0], fileno(stdin)); dup2(fdfrom[1], fileno(stdout)); /* close unwanted streams */ close(fdto[1]); close(fdfrom[0]); /* FIXME - can we get rid of the stdin not a terminal complaint? */ /* execlp("ssh", "ssh", "-e", "none", "-T", "-q", host->name, (char *) 0); */ execlp("ssh", "ssh", "-T", "-q", host->name, (char *) 0); exit(3); /* parent */ default: /* close unwanted streams */ close(fdto[0]); close(fdfrom[1]); /* send a command */ write(fdto[1], "echo \"ssh:connect\"\n", 19); /* read/write to child (ssh) via file desc. */ /* read -> fdfrom[0] */ /* write -> fdto[1] */ for (;;) { n = readstr(fdfrom[0], cmd, sizeof(cmd)); if (n > 1) { /* if we get here ... we've established a connection */ /* printf("%s\n", cmd); */ if (strstr(cmd, "ssh:connect")) { printf("Connection established.\n"); host->input = fdto[1]; host->output = fdfrom[0]; host->connected = TRUE; /* set up session working directory */ host_init(host); break; } } else { host->connected = FALSE; return(FALSE); } } } return(TRUE); } /************************************/ /* deactivate a host ssh connection */ /************************************/ void host_disconnect(gpointer data) { struct host_pak *host = data; printf("Closing connection to: %s\n", host->name); host->connected = FALSE; write(host->input, "exit\n", 5); } /************************************************************/ /* send a message to remote host shell, and return response */ /************************************************************/ /* NB: assumes unix style remote host */ gchar *host_talk(gpointer data, const gchar *message) { gint n; char cmd[1000]; GString *response; struct host_pak *host = data; g_assert(host != NULL); if (!host->connected) return(NULL); write(host->input, message, strlen(message)); write(host->input, "echo \"host:done\"\n", 17); response = g_string_new(NULL); /* TODO - implement some form of timeout response check? */ /* if error, either we didnt connect, or host is not unix */ /* and didnt understand the echo command */ for (;;) { n = readstr(host->output, cmd, sizeof(cmd)); if (n > 1) { if (strstr(cmd, "host:done")) break; else g_string_sprintfa(response, "%s", cmd); } } return(g_string_free(response, FALSE)); } /*********************************************/ /* ensure input string is safe to print/echo */ /*********************************************/ /* NB: unix shell specific */ gchar *host_safe_text(const gchar *input) { gint i; GString *output; if (!input) return(NULL); output = g_string_new(NULL); for (i=0 ; i \"%s\"\n", remote); reply = host_talk(host, text); g_free(reply); g_free(text); /* concat line by line */ /* FIXME - is there a better way to do this? */ for (;;) { /* escape special characters ... remove control codes */ tmp = host_safe_text(scan_get_line(scan)); if (scan_complete(scan)) break; text = g_strdup_printf("echo \"%s\" >> \"%s\"\n", tmp, remote); g_free(tmp); reply = host_talk(host, text); g_free(reply); g_free(text); } return(0); } /*****************************************/ /* write a locally stored file to a host */ /*****************************************/ /* PROBLEM is - doesnt seem to terminate properly */ gint host_file_write_experimental(gpointer data, gchar *local, gchar *remote) { gchar *text; struct host_pak *host = data; gpointer scan; if (!host->connected) return(FALSE); scan = scan_new(local); if (!scan) return(1); text = g_strdup_printf("ascii-xfr -v -r %s\n", remote); write(host->input, text, strlen(text)); g_free(text); for (;;) { text = scan_get_line(scan); if (scan_complete(scan)) { /* FIXME - does not seem to be terminating the transfer ... */ write(host->input, "", 1); write(host->input, "", 1); break; } write(host->input, text, strlen(text)); } scan_free(scan); return(FALSE); } /************************************************/ /* read a file on a remote host to a local file */ /************************************************/ gint host_file_read(gpointer data, gchar *local, gchar *remote) { gchar *text, cmd[10]; struct host_pak *host = data; FILE *fp; if (!host->connected) return(FALSE); text = g_strdup_printf("ascii-xfr -v -s -e %s\n", remote); write(host->input, text, strlen(text)); fp = fopen(local, "w"); for (;;) { read(host->output, cmd, 1); fprintf(fp, "%c", cmd[0]); if (cmd[0] == 26 || cmd[0] == '') { break; } } return(FALSE); } /****************************************************/ /* simple test of the host communication primitives */ /****************************************************/ /* NB: assumes unix style remote host */ void host_test(void) { gpointer host; gchar *reply; host = host_new("sean@onyx.ivec.org"); if (host_connect(host)) printf("host_connect(): success!\n"); else { printf("host_connect(): failed!\n"); return; } { /* struct host_pak *h = host; write(h->input, "cat > gok.txt\n", 14); write(h->input, "abcdef\n", 7); */ /* CURRENT - how do we terminate the redirect ... ie simulate a control-D or control-C */ /* appears there is no portable way for doing it ... can send stuff to /dev/tty in linux */ /* none of these work ... */ /* write(h->input, (char *) '~', 1); write(h->input, (char *) 'd', 1); write(h->input, (char *) "^C", 2); write(h->input, (char *) "^D", 2); write(h->input, (char *) "", 1); write(h->input, (char *) "", 1); write(h->input, (char *) 27, 1); write(h->input, (char *) "", 1); write(h->input, (char *) 16, 1); write(h->input, (char *) "", 1); */ } /* printf("sending: [date]\n"); reply = host_talk(host, "date\n"); printf("response: [%s]\n", reply); g_free(reply); */ printf("sending: [which gulp]\n"); reply = host_talk(host, "which gulp\n"); printf("response: [%s]\n", reply); g_free(reply); /* CURRENT - using ascii-xfr to accomplish these */ /* FIXME - read then write works ... but reversing order causes a hang ... why??? */ /* seems that after a write has been done ... things are messed up */ /* host_file_read(host, "dummy.txt", "/home/sean/.cshrc"); host_file_write(host, "aloh4-.car", "aloh4-copy.car"); host_file_write(host, "aloh4-.car", "aloh4-copy2.car"); */ host_disconnect(host); host_free(host); } #endif gdis-0.90/gui_shorts.c0000644000175000017500000011047311066427322013371 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include "gdis.h" #include "dialog.h" #include "interface.h" #include "gui_image.h" #include "go.xpm" #include "pause.xpm" #include "play.xpm" #include "rewind.xpm" #include "fastforward.xpm" #include "stop.xpm" #include "step_forward.xpm" #include "step_backward.xpm" extern struct sysenv_pak sysenv; extern GtkWidget *window; enum {AUTO_CHECK, AUTO_SPIN, AUTO_RANGE, AUTO_TEXT_ENTRY, AUTO_TEXT_LABEL, AUTO_INT_LABEL, AUTO_FLOAT_LABEL}; struct relation_pak { /* true - direct variable <-> widget relation */ /* false - relative offset (ie relation depends on active model) */ gboolean direct; /* related object data */ struct model_pak *model; gpointer variable; gint offset; GtkWidget *widget; /* widget type (for updating) ie spin, check */ /* TODO - eliminate this using if GTK_IS_SPIN_BUTTON/CHECK_BUTTON macros */ gint type; }; GSList *gui_relation_list=NULL; #define DEBUG_RELATION 0 /**************************************/ /* auto update widget handling events */ /**************************************/ void gui_relation_destroy(GtkWidget *w, gpointer dummy) { GSList *list; struct relation_pak *relation; #if DEBUG_RELATION printf("destroying widget (%p)", w); #endif /* find appropriate relation */ list = gui_relation_list; while (list) { relation = list->data; list = g_slist_next(list); /* free associated data */ if (relation->widget == w) { #if DEBUG_RELATION printf(" : relation (%p)", relation); #endif g_free(relation); gui_relation_list = g_slist_remove(gui_relation_list, relation); } } #if DEBUG_RELATION printf("\n"); #endif } /***************************************************/ /* set a value according to supplied widget status */ /***************************************************/ void gui_relation_set_value(GtkWidget *w, struct model_pak *model) { gpointer value; GSList *list; struct relation_pak *relation; g_assert(w != NULL); /* if no model supplied, use active model */ if (!model) model = sysenv.active_model; /* find appropriate relation (direct -> widget, else model) */ list = gui_relation_list; while (list) { relation = list->data; list = g_slist_next(list); if (relation->widget != w) continue; if (relation->direct) value = relation->variable; else { g_assert(model != NULL); value = (gpointer) model + relation->offset; } /* update variable associated with the widget */ switch (relation->type) { case AUTO_CHECK: #if DEBUG_RELATION printf("model %p : relation %p : setting variable to %d\n", model, relation, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w))); #endif if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w))) *((gint *) value) = TRUE; else *((gint *) value) = FALSE; break; case AUTO_SPIN: #if DEBUG_RELATION printf("model %p : relation %p : setting variable to %f\n", model, relation, SPIN_FVAL(GTK_SPIN_BUTTON(w))); #endif *((gdouble *) value) = SPIN_FVAL(GTK_SPIN_BUTTON(w)); break; case AUTO_RANGE: *((gint *) value) = gtk_range_get_value(GTK_RANGE(w)); break; case AUTO_TEXT_ENTRY: /* CURRENT */ g_free(*((gchar **) value)); *((gchar **) value) = g_strdup(gtk_entry_get_text(GTK_ENTRY(w))); break; } } } /***************************************************/ /* updates dependant widget with new variable data */ /***************************************************/ void gui_relation_update_widget(gpointer value) { gchar *text; GSList *list; struct relation_pak *relation; /* loop over all existing relations */ for (list=gui_relation_list ; list ; list=g_slist_next(list)) { relation = list->data; g_assert(relation != NULL); if (!relation->direct) continue; if (relation->variable != value) continue; #if DEBUG_RELATION printf("relation %p : type %d : updating widget\n", relation, relation->type); #endif /* synchronize widget and variable */ switch (relation->type) { case AUTO_CHECK: if (*((gint *) value)) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(relation->widget), TRUE); else gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(relation->widget), FALSE); break; case AUTO_SPIN: gtk_spin_button_set_value(GTK_SPIN_BUTTON(relation->widget), *((gdouble *) value)); break; case AUTO_RANGE: gtk_range_set_value(GTK_RANGE(relation->widget), *((gint *) value)); break; case AUTO_TEXT_ENTRY: /* CURRENT */ text = *((gchar **) value); if (text) gtk_entry_set_text(GTK_ENTRY(relation->widget), text); break; case AUTO_TEXT_LABEL: gtk_label_set_text(GTK_LABEL(relation->widget), *((gchar **) value)); break; case AUTO_INT_LABEL: text = g_strdup_printf("%d", *((gint *) value)); gtk_label_set_text(GTK_LABEL(relation->widget), text); g_free(text); break; case AUTO_FLOAT_LABEL: text = g_strdup_printf("%.4f", *((gdouble *) value)); gtk_label_set_text(GTK_LABEL(relation->widget), text); g_free(text); break; } } } /*****************************/ /* called for a model switch */ /*****************************/ /* ie sets all widget states according to related variable */ /* NB: pass NULL to get everything updated */ void gui_relation_update(gpointer data) { gchar *text; GSList *list; struct relation_pak *relation; gpointer value; /* loop over all existing relations */ for (list=gui_relation_list ; list ; list=g_slist_next(list)) { relation = list->data; g_assert(relation != NULL); /* update test */ if (relation->direct) { if (data) if (data != relation->model) continue; value = relation->variable; } else { if (data) value = data + relation->offset; else continue; } #if DEBUG_RELATION printf("relation %p : type %d : model change\n", relation, relation->type); #endif /* synchronize widget and variable */ switch (relation->type) { case AUTO_CHECK: if (*((gint *) value)) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(relation->widget), TRUE); else gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(relation->widget), FALSE); break; case AUTO_SPIN: gtk_spin_button_set_value(GTK_SPIN_BUTTON(relation->widget), *((gdouble *) value)); break; case AUTO_RANGE: gtk_range_set_value(GTK_RANGE(relation->widget), *((gint *) value)); break; case AUTO_TEXT_ENTRY: /* CURRENT */ text = *((gchar **) value); if (text) gtk_entry_set_text(GTK_ENTRY(relation->widget), text); break; case AUTO_TEXT_LABEL: gtk_label_set_text(GTK_LABEL(relation->widget), *((gchar **) value)); break; case AUTO_INT_LABEL: text = g_strdup_printf("%d", *((gint *) value)); gtk_label_set_text(GTK_LABEL(relation->widget), text); g_free(text); break; case AUTO_FLOAT_LABEL: text = g_strdup_printf("%.4f", *((gdouble *) value)); gtk_label_set_text(GTK_LABEL(relation->widget), text); g_free(text); break; } } } /**************************************************/ /* create a new variable to widget correspondance */ /**************************************************/ void gui_relation_submit(GtkWidget *widget, gint type, gpointer value, gboolean direct, struct model_pak *model) { struct relation_pak *relation; /* alloc and init relation */ relation = g_malloc(sizeof(struct relation_pak)); relation->direct = direct; relation->type = type; if (model) relation->offset = value - (gpointer) model; else relation->offset = 0; relation->variable = value; relation->model = model; relation->widget = widget; /* this can happen if gui_auto_check() is used on a variable that is not in a model */ /* eg in sysenv ... in this case use gui_direct_check() */ /* FIXME - a better way to fail gracefully? better still - rewrite old code */ if (!direct) g_assert(relation->offset > 0); #if DEBUG_RELATION printf("submit: "); printf("[%p type %d]", relation, type); if (model) { if (direct) printf("[model %d][value %p]", model->number, value); else printf("[model %d][value %p][offset %d]", model->number, value, relation->offset); } printf("\n"); #endif switch (relation->type) { case AUTO_CHECK: if (*((gint *) value)) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), TRUE); else gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), FALSE); break; case AUTO_SPIN: gtk_spin_button_set_value(GTK_SPIN_BUTTON(widget), *((gdouble *) value)); break; case AUTO_RANGE: gtk_range_set_value(GTK_RANGE(widget), *((gint *) value)); break; } gui_relation_list = g_slist_prepend(gui_relation_list, relation); } /*****************************************/ /* convenience routine for check buttons */ /*****************************************/ GtkWidget *new_check_button(gchar *label, gpointer callback, gpointer arg, gint state, GtkWidget *box) { GtkWidget *button; /* create, pack & show the button */ button = gtk_check_button_new_with_label(label); gtk_box_pack_start(GTK_BOX(box), button, TRUE, TRUE, 0); gtk_widget_show(button); /* set the state (NB: before the callback is attached) */ if (state) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* attach the callback */ if (callback) g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(callback), arg); return(button); } /*********************************/ /* relative updated check button */ /*********************************/ /* NB: assumes gui_mode_switchl() will call gui_relation_update() */ GtkWidget *gui_auto_check(gchar *label, gpointer cb, gpointer arg, gint *state, GtkWidget *box) { GtkWidget *button; struct model_pak *model; model = sysenv.active_model; g_assert(model != NULL); /* create the button */ button = gtk_check_button_new_with_label(label); gui_relation_submit(button, AUTO_CHECK, state, FALSE, model); if (box) gtk_box_pack_start(GTK_BOX(box), button, TRUE, TRUE, 0); /* callback to set the variable to match the widget */ g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(gui_relation_set_value), NULL); /* callback to do (user defined) update tasks */ if (cb) g_signal_connect_after(GTK_OBJECT(button), "clicked", cb, arg); /* callback to remove the variable <-> widget relation */ g_signal_connect(GTK_OBJECT(button), "destroy", GTK_SIGNAL_FUNC(gui_relation_destroy), NULL); return(button); } /*************************************************/ /* activate/deactivate based on a checkbox state */ /*************************************************/ /* TODO - shortcut for setup up one of these widgets */ void gui_checkbox_refresh(GtkWidget *w, GtkWidget *box) { if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w))) gtk_widget_set_sensitive(box, TRUE); else gtk_widget_set_sensitive(box, FALSE); } /*********************************/ /* directly updated check button */ /*********************************/ /* NB: assumes gui_mode_switch() will call gui_relation_update() */ GtkWidget *gui_direct_check(gchar *label, gint *state, gpointer cb, gpointer arg, GtkWidget *box) { GtkWidget *button; struct model_pak *model; model = sysenv.active_model; /* create the button */ button = gtk_check_button_new_with_label(label); gui_relation_submit(button, AUTO_CHECK, state, TRUE, model); if (box) gtk_box_pack_start(GTK_BOX(box), button, TRUE, TRUE, 0); /* callback to set the variable to match the widget */ g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(gui_relation_set_value), model); /* callback to remove the variable <-> widget relation */ g_signal_connect(GTK_OBJECT(button), "destroy", GTK_SIGNAL_FUNC(gui_relation_destroy), NULL); /* callback to do (user defined) update tasks */ if (cb) g_signal_connect_after(GTK_OBJECT(button), "clicked", cb, arg); return(button); } /****************************/ /* a simple labelled button */ /****************************/ GtkWidget *gui_button(gchar *txt, gpointer cb, gpointer arg, GtkWidget *w, gint mask) { gint fill1, fill2; GtkWidget *button; /* create the button */ button = gtk_button_new_with_label(txt); /* setup the packing requirements */ if (w) { fill1 = fill2 = FALSE; if (mask & 1) fill1 = TRUE; if (mask & 2) fill2 = TRUE; if (mask & 4) gtk_box_pack_end(GTK_BOX(w), button, fill1, fill2, 0); else gtk_box_pack_start(GTK_BOX(w), button, fill1, fill2, 0); } /* attach the callback */ if (cb) g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(cb), arg); return(button); } /************************************/ /* text label plus an X push button */ /************************************/ GtkWidget *gui_button_x(gchar *text, gpointer cb, gpointer arg, GtkWidget *box) { GtkWidget *hbox, *button, *label, *image; GdkPixmap *pixmap; GdkBitmap *mask; GtkStyle *style; /* create button */ button = gtk_button_new(); hbox = gtk_hbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(button), hbox); /* create image */ style = gtk_widget_get_style(window); pixmap = gdk_pixmap_create_from_xpm_d (window->window, &mask, &style->white, go_xpm); image = gtk_image_new_from_pixmap(pixmap, mask); gtk_box_pack_start(GTK_BOX(hbox), image, FALSE, FALSE, 0); /* create label */ if (box) { /* packing sub-widget */ hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(box), hbox, TRUE, TRUE, 0); if (text) { label = gtk_label_new(text); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); } gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0); } if (cb) g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(cb), arg); return(button); } /****************************************/ /* text label plus labelled push button */ /****************************************/ void gui_button_label(gchar *t1, gchar *t2, gpointer cb, gpointer arg, GtkWidget *box) { GtkWidget *hbox, *button, *label; /* packing sub-widget */ hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(box), hbox, TRUE, TRUE, 0); /* create label */ label = gtk_label_new(t1); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); /* create button */ button = gtk_button_new_with_label(t2); g_signal_connect_swapped(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(cb), arg); gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0); } /*****************************************/ /* convenience routine for radio buttons */ /*****************************************/ gint active=0, count=0, fill1=FALSE, fill2=FALSE; GSList *group=NULL; GtkWidget *box=NULL; void new_radio_group(gint i, GtkWidget *pack_box, gint mask) { group = NULL; active = i; count = 0; box = pack_box; /* setup the packing requirements */ fill1 = fill2 = FALSE; if (mask & 1) fill1 = TRUE; if (mask & 2) fill2 = TRUE; } GtkWidget *add_radio_button(gchar *label, gpointer call, gpointer arg) { GtkWidget *button; /* printf("Adding button: %d (%d) to (%p)\n", count, active, group); */ /* better error checking - even call new_radio_group() ??? */ g_return_val_if_fail(box != NULL, NULL); /* make a new button */ button = gtk_radio_button_new_with_label(group, label); /* get the group (for the next button) */ /* NB: it is vital that this is ALWAYS done */ group = gtk_radio_button_group(GTK_RADIO_BUTTON(button)); /* attach the callback */ g_signal_connect_swapped(GTK_OBJECT(button), "pressed", GTK_SIGNAL_FUNC(call), (gpointer) arg); /* pack the button */ gtk_box_pack_start(GTK_BOX(box), button, fill1, fill2, 0); /* set active? */ if (active == count++) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); return(button); } /************************************/ /* create a colour selection dialog */ /************************************/ GtkWidget *new_csd(gchar *title, gpointer callback) { GtkWidget *csd; /* create colour selection dialog */ csd = gtk_color_selection_dialog_new(title); /* setup callbacks */ g_signal_connect_swapped(G_OBJECT(GTK_COLOR_SELECTION_DIALOG(csd)->ok_button), "clicked", GTK_SIGNAL_FUNC(callback), (gpointer) GTK_COLOR_SELECTION_DIALOG(csd)->colorsel); g_signal_connect_swapped(G_OBJECT(GTK_COLOR_SELECTION_DIALOG(csd)->cancel_button), "clicked", GTK_SIGNAL_FUNC(gtk_widget_destroy), (gpointer) csd); /* done */ gtk_widget_show(csd); return(csd); } /******************************/ /* create a label + a spinner */ /******************************/ GtkWidget *new_spinner(gchar *text, gdouble min, gdouble max, gdouble step, gpointer callback, gpointer arg, GtkWidget *box) { GtkWidget *hbox, *label, *spin; spin = gtk_spin_button_new_with_range(min, max, step); /* optional */ if (box) { hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(box), hbox, TRUE, TRUE, 0); if (text) { label = gtk_label_new(text); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); } gtk_box_pack_end(GTK_BOX(hbox), spin, FALSE, FALSE, 0); } if (callback) g_signal_connect_after(GTK_OBJECT(spin), "value-changed", GTK_SIGNAL_FUNC(callback), arg); return(spin); } /************************************************************/ /* as above, but automatically attaches spinner to callback */ /************************************************************/ GtkWidget *gui_new_spin(gchar *text, gdouble x0, gdouble x1, gdouble dx, gpointer callback, GtkWidget *box) { GtkWidget *hbox, *label, *spin; spin = gtk_spin_button_new_with_range(x0, x1, dx); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spin), x0); /* optional */ if (box) { /* create the text/spinner layout */ hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(box), hbox, TRUE, TRUE, 0); if (text) { label = gtk_label_new(text); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); } gtk_box_pack_end(GTK_BOX(hbox), spin, FALSE, FALSE, 0); } if (callback) g_signal_connect_after(GTK_OBJECT(spin), "value-changed", GTK_SIGNAL_FUNC(callback), spin); return(spin); } /*********************************/ /* automatically updated spinner */ /*********************************/ /* current model relative correlation between value and spinner */ /* NB: assumes gui_mode_switchl() will call gui_relation_update() */ GtkWidget *gui_auto_spin(gchar *text, gdouble *value, gdouble min, gdouble max, gdouble step, gpointer callback, gpointer arg, GtkWidget *box) { GtkWidget *spin; struct model_pak *model; model = sysenv.active_model; g_assert(model != NULL); /* create the text/spinner combo */ spin = new_spinner(text, min, max, step, callback, arg, box); /* set up a relationship */ gui_relation_submit(spin, AUTO_SPIN, value, FALSE, model); /* callback to set the variable to match the widget */ g_signal_connect(GTK_OBJECT(spin), "value-changed", (gpointer) gui_relation_set_value, NULL); /* callback to remove the variable <-> widget relation */ g_signal_connect(GTK_OBJECT(spin), "destroy", GTK_SIGNAL_FUNC(gui_relation_destroy), NULL); return(spin); } /*********************************/ /* automatically updated spinner */ /*********************************/ /* direct correlation between value and spinner */ GtkWidget *gui_direct_spin(gchar *text, gdouble *value, gdouble min, gdouble max, gdouble step, gpointer callback, gpointer arg, GtkWidget *box) { gint size=0; gdouble digits; GtkWidget *spin; struct model_pak *model; model = sysenv.active_model; /* create the text/spinner combo */ spin = new_spinner(text, min, max, step, NULL, NULL, box); /* HACK - cope with GTK underestimating the size needed to display spin values */ /* TODO - examine sig fig of *value to get dp */ digits = log10(step); if (digits < 0.0) { digits -= 0.9; size = 3 + fabs(digits); } if (size < 5) size = 5; gtk_widget_set_size_request(spin, sysenv.gtk_fontsize*size, -1); /* printf("%f : %f -> %f (%d)\n", max, step, digits, size); gtk_widget_set_size_request(spin, sysenv.gtk_fontsize*5, -1); */ /* set up a relationship */ gui_relation_submit(spin, AUTO_SPIN, value, TRUE, model); /* callback to set the variable to match the widget */ g_signal_connect(GTK_OBJECT(spin), "value-changed", GTK_SIGNAL_FUNC(gui_relation_set_value), model); /* callback to remove the variable <-> widget relation */ g_signal_connect(GTK_OBJECT(spin), "destroy", GTK_SIGNAL_FUNC(gui_relation_destroy), NULL); /* connect after, so all updates done before user callback is invoked */ if (callback) g_signal_connect_after(GTK_OBJECT(spin), "value-changed", GTK_SIGNAL_FUNC(callback), arg); return(spin); } /**************************/ /* auto update slider bar */ /**************************/ GtkWidget *gui_direct_hscale(gdouble min, gdouble max, gdouble step, gpointer value, gpointer func, gpointer arg, GtkWidget *box) { GtkWidget *hscale; struct model_pak *model; model = sysenv.active_model; g_assert(model != NULL); hscale = gtk_hscale_new_with_range(min, max, step); gtk_range_set_update_policy(GTK_RANGE(hscale), GTK_UPDATE_CONTINUOUS); if (box) gtk_box_pack_start(GTK_BOX(box), hscale, TRUE, TRUE, 0); gui_relation_submit(hscale, AUTO_RANGE, value, TRUE, model); /* callback to set the variable to match the widget */ g_signal_connect(GTK_OBJECT(hscale), "value_changed", GTK_SIGNAL_FUNC(gui_relation_set_value), model); /* user callback */ if (func) g_signal_connect_after(GTK_OBJECT(hscale), "value_changed", GTK_SIGNAL_FUNC(func), arg); /* callback to remove the variable <-> widget relation */ g_signal_connect(GTK_OBJECT(hscale), "destroy", GTK_SIGNAL_FUNC(gui_relation_destroy), NULL); return(hscale); } /**************************************************/ /* convenience function for labelled text entries */ /**************************************************/ GtkWidget *gui_text_entry(gchar *text, gchar **value, gint edit, gint pack, GtkWidget *box) { GtkWidget *hbox, *label, *entry; g_assert(box != NULL); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(box), hbox, FALSE, FALSE, 0); if (text) { label = gtk_label_new(text); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); } entry = gtk_entry_new(); if (value) { if (*value) gtk_entry_set_text(GTK_ENTRY(entry), *value); } gtk_entry_set_editable(GTK_ENTRY(entry), edit); if (value) gui_relation_submit(entry, AUTO_TEXT_ENTRY, value, TRUE, NULL); gtk_box_pack_end(GTK_BOX(hbox), entry, pack, TRUE, 0); if (value) { if (edit) g_signal_connect(GTK_OBJECT(entry), "changed", GTK_SIGNAL_FUNC(gui_relation_set_value), NULL); g_signal_connect(GTK_OBJECT(entry), "destroy", GTK_SIGNAL_FUNC(gui_relation_destroy), NULL); } return(entry); } /**************************/ /* auto update text label */ /**************************/ GtkWidget *gui_auto_text_label(gchar **text) { GtkWidget *label; struct model_pak *model; model = sysenv.active_model; g_assert(model != NULL); g_assert(text != NULL); if (*text) label = gtk_label_new(*text); else label = gtk_label_new("null"); gui_relation_submit(label, AUTO_TEXT_LABEL, text, FALSE, model); /* callback to remove the variable <-> widget relation */ g_signal_connect(GTK_OBJECT(label), "destroy", GTK_SIGNAL_FUNC(gui_relation_destroy), NULL); return(label); } /**************************/ /* auto update text label */ /**************************/ GtkWidget *gui_auto_int_label(gint *value) { gchar *text; GtkWidget *label; struct model_pak *model; model = sysenv.active_model; g_assert(model != NULL); text = g_strdup_printf("%d", *value); label = gtk_label_new(text); g_free(text); gui_relation_submit(label, AUTO_INT_LABEL, value, FALSE, model); /* callback to remove the variable <-> widget relation */ g_signal_connect(GTK_OBJECT(label), "destroy", GTK_SIGNAL_FUNC(gui_relation_destroy), NULL); return(label); } /**************************/ /* auto update text label */ /**************************/ GtkWidget *gui_auto_float_label(gdouble *value) { gchar *text; GtkWidget *label; struct model_pak *model; model = sysenv.active_model; g_assert(model != NULL); text = g_strdup_printf("%.4f", *value); label = gtk_label_new(text); g_free(text); gui_relation_submit(label, AUTO_FLOAT_LABEL, value, FALSE, model); /* callback to remove the variable <-> widget relation */ g_signal_connect(GTK_OBJECT(label), "destroy", GTK_SIGNAL_FUNC(gui_relation_destroy), NULL); return(label); } /*****************************/ /* create a stock GTK button */ /*****************************/ GtkWidget * gui_stock_button(const gchar *id, gpointer cb, gpointer arg, GtkWidget *box) { GtkWidget *button; button = gtk_button_new_from_stock(id); if (box) gtk_box_pack_start(GTK_BOX(box), button, FALSE, FALSE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(cb), arg); return(button); } /***************************************************/ /* create a button with a stock icon & custom text */ /***************************************************/ GtkWidget * gui_icon_button(const gchar *id, const gchar *text, gpointer cb, gpointer arg, GtkWidget *box) { gint stock = TRUE; gpointer data; GtkWidget *hbox, *button, *label, *image=NULL; GdkBitmap *mask; GdkPixmap *pixmap; GtkStyle *style; /* button */ button = gtk_button_new(); hbox = gtk_hbox_new(FALSE, 4); gtk_container_add(GTK_CONTAINER(button), hbox); /* CURRENT */ if (g_ascii_strncasecmp(id, "IMAGE_", 6) == 0) { data = image_table_lookup(id); if (data) { image = gtk_image_new_from_pixbuf(data); stock = FALSE; } else printf("[%s] : image not found.\n", id); } /* GDIS icons */ if (g_ascii_strncasecmp(id, "GDIS_PAUSE", 10) == 0) { style = gtk_widget_get_style(window); pixmap = gdk_pixmap_create_from_xpm_d(window->window, &mask, &style->white, pause_xpm); image = gtk_image_new_from_pixmap(pixmap, mask); stock = FALSE; } if (g_ascii_strncasecmp(id, "GDIS_PLAY", 9) == 0) { style = gtk_widget_get_style(window); pixmap = gdk_pixmap_create_from_xpm_d(window->window, &mask, &style->white, play_xpm); image = gtk_image_new_from_pixmap(pixmap, mask); stock = FALSE; } if (g_ascii_strncasecmp(id, "GDIS_REWIND", 11) == 0) { style = gtk_widget_get_style(window); pixmap = gdk_pixmap_create_from_xpm_d(window->window, &mask, &style->white, rewind_xpm); image = gtk_image_new_from_pixmap(pixmap, mask); stock = FALSE; } if (g_ascii_strncasecmp(id, "GDIS_FASTFORWARD", 16) == 0) { style = gtk_widget_get_style(window); pixmap = gdk_pixmap_create_from_xpm_d(window->window, &mask, &style->white, fastforward_xpm); image = gtk_image_new_from_pixmap(pixmap, mask); stock = FALSE; } if (g_ascii_strncasecmp(id, "GDIS_STOP", 9) == 0) { style = gtk_widget_get_style(window); pixmap = gdk_pixmap_create_from_xpm_d(window->window, &mask, &style->white, stop_xpm); image = gtk_image_new_from_pixmap(pixmap, mask); stock = FALSE; } if (g_ascii_strncasecmp(id, "GDIS_STEP_FORWARD", 17) == 0) { style = gtk_widget_get_style(window); pixmap = gdk_pixmap_create_from_xpm_d(window->window, &mask, &style->white, step_forward_xpm); image = gtk_image_new_from_pixmap(pixmap, mask); stock = FALSE; } if (g_ascii_strncasecmp(id, "GDIS_STEP_BACKWARD", 18) == 0) { style = gtk_widget_get_style(window); pixmap = gdk_pixmap_create_from_xpm_d(window->window, &mask, &style->white, step_backward_xpm); image = gtk_image_new_from_pixmap(pixmap, mask); stock = FALSE; } /* standard GTK */ if (stock) image = gtk_image_new_from_stock(id, GTK_ICON_SIZE_BUTTON); /* label dependent packing */ if (text) { gtk_box_pack_start(GTK_BOX(hbox), image, FALSE, FALSE, 0); label = gtk_label_new(text); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); } else { gtk_box_pack_start(GTK_BOX(hbox), image, TRUE, FALSE, 0); } /* packing & callback */ if (box) gtk_box_pack_start(GTK_BOX(box), button, TRUE, TRUE, 0); if (cb) g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(cb), arg); return(button); } /*******************************************/ /* update function for scolled text window */ /*******************************************/ void gui_text_window_update(GtkTextBuffer *buffer, gchar **text) { GtkTextIter start, end; gtk_text_buffer_get_bounds(buffer, &start, &end); g_free(*text); *text = gtk_text_buffer_get_text(buffer, &start, &end, FALSE); } /*********************************/ /* short cut for displaying text */ /*********************************/ GtkWidget *gui_text_window(gchar **text, gint editable) { gint n; GtkWidget *swin, *view; GtkTextBuffer *buffer; g_assert(text != NULL); swin = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(swin), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); view = gtk_text_view_new(); gtk_text_view_set_editable(GTK_TEXT_VIEW(view), editable); gtk_container_add(GTK_CONTAINER(swin), view); buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(view)); /* tags??? */ /* gtk_text_buffer_create_tag(buffer, "fg_blue", "foreground", "blue", NULL); gtk_text_buffer_create_tag(buffer, "fg_red", "foreground", "red", NULL); */ if (*text) { n = strlen(*text); gtk_text_buffer_insert_at_cursor(buffer, *text, n); } if (editable) g_signal_connect(G_OBJECT(buffer), "changed", GTK_SIGNAL_FUNC(gui_text_window_update), text); return(swin); } /**********************************/ /* vbox in a frame layout shorcut */ /**********************************/ GtkWidget *gui_frame_vbox(const gchar *label, gint p1, gint p2, GtkWidget *box) { GtkWidget *frame, *vbox; g_assert(box != NULL); frame = gtk_frame_new(label); gtk_box_pack_start(GTK_BOX(box), frame, p1, p2, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), 0.5*PANEL_SPACING); vbox = gtk_vbox_new(FALSE, PANEL_SPACING); gtk_container_add(GTK_CONTAINER(frame), vbox); gtk_container_set_border_width(GTK_CONTAINER(vbox), 0.5*PANEL_SPACING); return(vbox); } /**********************************/ /* hbox in a frame layout shorcut */ /**********************************/ GtkWidget *gui_frame_hbox(const gchar *label, gint p1, gint p2, GtkWidget *box) { GtkWidget *frame, *hbox; g_assert(box != NULL); frame = gtk_frame_new(label); gtk_box_pack_start(GTK_BOX(box), frame, p1, p2, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), 0.5*PANEL_SPACING); hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_container_add(GTK_CONTAINER(frame), hbox); gtk_container_set_border_width(GTK_CONTAINER(hbox), 0.5*PANEL_SPACING); return(hbox); } /***************************************************************/ /* horizontal packing function for label plus some data widget */ /***************************************************************/ void gui_hbox_pack(GtkWidget *box, gchar *text, GtkWidget *w, gint pack) { gint pack1, pack2; GtkWidget *label, *hbox; g_assert(box != NULL); /* TODO - the pack argument is intended to allow the possibility of different packing styles */ /* TODO - switch (pack) {} */ pack1 = TRUE; pack2 = TRUE; hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(box), hbox, pack1, pack2, 0); if (text) { label = gtk_label_new(text); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, TRUE, 0); gtk_box_pack_end(GTK_BOX(hbox), w, FALSE, FALSE, 0); } else { if (w) gtk_box_pack_end(GTK_BOX(hbox), w, TRUE, TRUE, 0); } } /**************************************/ /* pulldown menu convenience function */ /**************************************/ /* TODO - when ready - will replace the old gui_pulldown_new() function */ gpointer gui_pd_new(GSList *list, gint active, gpointer callback, gpointer argument) { GSList *item; GtkTreeModel *treemodel; GtkTreePath *treepath; GtkTreeIter iter; GtkWidget *w = NULL; #if GTK_MAJOR_VERSION >= 2 && GTK_MINOR_VERSION >= 4 /* build the widget and associated drop down list */ w = gtk_combo_box_new_text(); for (item=list ; item ; item=g_slist_next(item)) gtk_combo_box_append_text(GTK_COMBO_BOX(w), item->data); /* set the currently active item */ treemodel = gtk_combo_box_get_model(GTK_COMBO_BOX(w)); treepath = gtk_tree_path_new_from_indices(active, -1); gtk_tree_model_get_iter(treemodel, &iter, treepath); gtk_combo_box_set_active_iter(GTK_COMBO_BOX(w), &iter); /* attach callback (if any) */ if (callback) g_signal_connect(GTK_OBJECT(w), "changed", GTK_SIGNAL_FUNC(callback), argument); #endif return(w); } /*******************************************************/ /* retrieve the current active pulldown menu item text */ /*******************************************************/ gchar *gui_pd_text(gpointer pd) { #if GTK_MAJOR_VERSION >= 2 && GTK_MINOR_VERSION >= 6 return(gtk_combo_box_get_active_text(GTK_COMBO_BOX(pd))); #else /* you're screwed */ return(NULL); #endif } /**************************************/ /* pulldown menu convenience function */ /**************************************/ gpointer gui_pulldown_new(const gchar *text, GList *list, gint edit, GtkWidget *box) { GtkWidget *hbox, *label, *combo; combo = gtk_combo_new(); gtk_combo_set_popdown_strings(GTK_COMBO(combo), list); gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(combo)->entry), edit); if (box) { /* create the text/spinner layout */ hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(box), hbox, TRUE, TRUE, 0); if (text) { label = gtk_label_new(text); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, TRUE, 0); gtk_box_pack_end(GTK_BOX(hbox), combo, FALSE, FALSE, 0); } else gtk_box_pack_end(GTK_BOX(hbox), combo, TRUE, TRUE, 0); } return(GTK_COMBO(combo)->entry); } /********************************/ /* pulldown menu data retrieval */ /********************************/ const gchar *gui_pulldown_text(gpointer w) { if (GTK_IS_ENTRY(w)) return(gtk_entry_get_text(GTK_ENTRY(w))); return(NULL); } /*******************************/ /* labelled colour editing box */ /*******************************/ void gui_colour_box(const gchar *text, gdouble *rgb, GtkWidget *box) { GtkWidget *hbox, *label, *button; GdkColor colour; hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(box), hbox, FALSE, FALSE, 0); if (text) { label = gtk_label_new(text); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); } button = gtk_button_new_with_label(" "); gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(dialog_colour_new), rgb); colour.red = rgb[0]*65535.0; colour.green = rgb[1]*65535.0; colour.blue = rgb[2]*65535.0; gtk_widget_modify_bg(button, GTK_STATE_NORMAL, &colour); } gdis-0.90/surface.h0000644000175000017500000000442410331574522012635 0ustar seansean /* surface generation */ #define EPSILON 1e-6 #define FILL_EPS 0.00025 /* surface convergence */ #define MIN_THICKNESS 8.0 #define MAX_CONV_CYCLES 20 /* result (almost always) good to 4dp */ #define MAX_DESURF 0.0001 #define MAX_DEEATT 0.001 /* mode control masks */ enum { SINGLE_SHIFT, SINGLE_PLANE, SINGLE_SURFACE, ALL_SHIFTS, ALL_PLANES, INVALID_SHIFTS }; /* 2D vdw surface parameter specifiers */ enum { MS_ACCESSIBLE, MS_MOLECULAR, MS_EDEN, MS_DSIZE, MS_DEPTH, MS_OFFSET, MS_PRAD, MS_ACCURACY, MS_TOUCH, MS_AFM, MS_EPOT, MS_HIRSHFELD, MS_SOLVENT, MS_DE, MS_CURVEDNESS, MS_SHAPE_INDEX, MS_SSATOMS }; /* surface specifiers */ enum { CALC_SHIFTS, CALC_ENERGY, CONV_REGIONS, RANK_FACES, MAKE_FACES, ADD_SHIFT, DELETE_SHIFT, GENERATE }; /* layer structure */ struct layer_pak { gdouble width; gdouble centroid[3]; GSList *cores; }; /* prototypes */ gint generate_surface(struct model_pak *, struct model_pak *); gpointer plane_new(gdouble *, struct model_pak *); gpointer shift_new(gdouble); void plane_free(gpointer); void shift_free(gpointer); void plane_data_free(GSList *); void shift_data_free(GSList *); gpointer plane_find(gdouble *, struct model_pak *); void update_plane_energy(struct plane_pak *, struct model_pak *data); GSList *get_ranked_faces(gint, gdouble, struct model_pak *); gint rank_faces(void); gint calc_shifts(void); void calc_emp(struct model_pak *); gint region_max(struct model_pak *); gint surf_sysabs(struct model_pak *, gint, gint, gint); void surf_symmetry_generate(struct model_pak *); GSList *get_facet_equiv(struct model_pak *, gint *); void update_surface_dialog(struct model_pak *); void select_shift(GtkWidget *, gint, gint); void sort_coords(struct model_pak *); int GCD(int, int); void dock_selection(gchar *, struct model_pak *); void diffract_layer_setup(struct model_pak *); gint facet_equiv(struct model_pak *, gint *, gint *); gint dhkl_compare(gpointer, gpointer); void free_vertices(struct model_pak *); void morph_sculpt(GtkWidget *, gpointer); gpointer plane_dup(struct plane_pak *); void surf_shift_explore(struct model_pak *, struct surface_pak *); gint region_move_atom(struct core_pak *, gint, struct model_pak *); gpointer make_surface(struct model_pak *, struct plane_pak *, struct shift_pak *); gdis-0.90/gui_shorts.h0000644000175000017500000000500610600706736013373 0ustar seansean /* fill types for box packing */ enum {FF, TF, FT, TT, LB}; /* generation 2 shortcuts */ void gui_relation_update(gpointer); void gui_relation_update_widget(gpointer); GtkWidget *gui_icon_button(const gchar *, const gchar *, gpointer, gpointer, GtkWidget *); GtkWidget *gui_stock_button(const gchar *, gpointer, gpointer, GtkWidget *); /* TODO - make auto_check use same protoype as direct_check */ GtkWidget *gui_auto_check(gchar *, gpointer , gpointer , gint *, GtkWidget *); GtkWidget *gui_direct_check(gchar *, gint *, gpointer , gpointer , GtkWidget *); /* my shortcut routines for gtk interface construction */ GtkWidget *new_csd(gchar *, gpointer); GtkWidget *new_check_button(gchar *, gpointer, gpointer, gint, GtkWidget *); GtkWidget *gui_button(gchar *, gpointer, gpointer, GtkWidget *, gint); GtkWidget *gui_button_x(gchar *, gpointer, gpointer, GtkWidget *); void gui_button_label(gchar *, gchar *, gpointer, gpointer, GtkWidget *); void new_radio_group(gint, GtkWidget *, gint); void gui_checkbox_refresh(GtkWidget *, GtkWidget *); GtkWidget *add_radio_button(gchar *, gpointer, gpointer); GtkWidget *new_spinner(gchar *, gdouble, gdouble, gdouble, gpointer, gpointer, GtkWidget *); GtkWidget *gui_auto_spin(gchar *, gdouble *, gdouble, gdouble, gdouble, gpointer, gpointer, GtkWidget *); GtkWidget *gui_direct_spin(gchar *, gdouble *, gdouble, gdouble, gdouble, gpointer, gpointer, GtkWidget *); GtkWidget *gui_new_spin(gchar *, gdouble, gdouble, gdouble, gpointer, GtkWidget *); GtkWidget *gui_direct_hscale(gdouble, gdouble, gdouble, gpointer, gpointer, gpointer, GtkWidget *); GtkWidget *gui_auto_text_label(gchar **); GtkWidget *gui_auto_int_label(gint *); GtkWidget *gui_auto_float_label(gdouble *); GtkWidget *gui_text_window(gchar **, gint); GtkWidget *gui_text_entry(gchar *, gchar **, gint, gint, GtkWidget *); GtkWidget *gui_frame_vbox(const gchar *, gint, gint, GtkWidget *); GtkWidget *gui_frame_hbox(const gchar *, gint, gint, GtkWidget *); gpointer gui_pulldown_new(const gchar *, GList *, gint, GtkWidget *); const gchar *gui_pulldown_text(gpointer); void gui_colour_box(const gchar *, gdouble *, GtkWidget *); gpointer gui_pd_new(GSList *, gint, gpointer, gpointer); gchar *gui_pd_text(gpointer); void gui_hbox_pack(GtkWidget *, gchar *, GtkWidget *, gint); gdis-0.90/sginfo.h0000644000175000017500000015536007717054755012517 0ustar seansean/* Space Group Info's (c) 1994-96 Ralf W. Grosse-Kunstleve */ #ifndef SGINFO_H__ #define SGINFO_H__ #ifndef SGCLIB_C__ extern const char *SgError; #ifdef SGCOREDEF__ extern char SgErrorBuffer[128]; #endif #else const char *SgError = NULL; char SgErrorBuffer[128]; #endif #define STBF 12 /* Seitz Matrix Translation Base Factor */ #define CRBF 12 /* Change of Basis Matrix Rotation Base Factor */ #define CTBF 72 /* Change of Basis Matrix Translation Base Factor */ /* CAUTION: (CTBF / STBF) has to be an INTEGER */ typedef struct { int Code; int nTrVector; int *TrVector; } T_LatticeInfo; typedef union { struct { int R[9], T[3]; } s; int a[12]; } T_RTMx; typedef struct { int EigenVector[3]; int Order; int Inverse; int RefAxis; int DirCode; } T_RotMxInfo; typedef struct { const char *HallSymbol; int SgNumber; const char *Extension; const char *SgLabels; } T_TabSgName; #define MaxLenHallSymbol 39 typedef struct { int GenOption; int Centric; int InversionOffOrigin; const T_LatticeInfo *LatticeInfo; int StatusLatticeTr; int OriginShift[3]; int nList; int MaxList; T_RTMx *ListSeitzMx; T_RotMxInfo *ListRotMxInfo; int OrderL; int OrderP; int XtalSystem; int UniqueRefAxis; int UniqueDirCode; int ExtraInfo; int PointGroup; int nGenerator; int Generator_iList[4]; char HallSymbol[MaxLenHallSymbol + 1]; const T_TabSgName *TabSgName; const int *CCMx_LP; int n_si_Vector; int si_Vector[9]; int si_Modulus[3]; } T_SgInfo; /* T_Sginfo.GenOption: 0 = full group generation 1 = trusted: set Centric/InversionOffOrigin/LatticeInfo only -1 = no group generation T_Sginfo.Centric: 0 = acentric 1 = inversion in list -1 = inversion removed from list T_Sginfo.StatusLatticeTr: 0 = removed from list 1 = all translation vectors in list -1 = some translation vectors could be missing in list */ typedef struct { int M; /* Multiplicity */ int N; /* Number of equivalent hkl to follow */ int h[24]; /* If hkl == 000 M = N = 1 */ int k[24]; /* If hkl != 000 M = 2 * N */ int l[24]; /* List of hkl does not contain friedel mates */ int TH[24]; /* Phase shift relative to h[0], k[0], l[0] */ } T_Eq_hkl; #define EI_Unknown 0 #define EI_Enantiomorphic 1 #define EI_Obverse 2 #define EI_Reverse 3 #ifndef SGCLIB_C__ extern const char *EI_Name[]; #else const char *EI_Name[] = { "Unknown", "Enantiomorphic", "Obverse", "Reverse" }; #endif #define XS_Unknown 0 #define XS_Triclinic 1 #define XS_Monoclinic 2 #define XS_Orthorhombic 3 #define XS_Tetragonal 4 #define XS_Trigonal 5 #define XS_Hexagonal 6 #define XS_Cubic 7 #ifndef SGCLIB_C__ extern const char *XS_Name[]; #else const char *XS_Name[] = { "Unknown", "Triclinic", "Monoclinic", "Orthorhombic", "Tetragonal", "Trigonal", "Hexagonal", "Cubic" }; #endif #define Make_PG_Code( i, p, l) (((i) * 33 + (p)) * 12 + (l)) #define PG_Unknown Make_PG_Code( 0, 0, 0) #define PG_1 Make_PG_Code( 1, 1, 1) #define PG_1b Make_PG_Code( 2, 2, 1) #define PG_2 Make_PG_Code( 3, 3, 2) #define PG_m Make_PG_Code( 4, 4, 2) #define PG_2_m Make_PG_Code( 5, 5, 2) #define PG_222 Make_PG_Code( 6, 6, 3) #define PG_mm2 Make_PG_Code( 7, 7, 3) #define PG_mmm Make_PG_Code( 8, 8, 3) #define PG_4 Make_PG_Code( 9, 9, 4) #define PG_4b Make_PG_Code(10, 10, 4) #define PG_4_m Make_PG_Code(11, 11, 4) #define PG_422 Make_PG_Code(12, 12, 5) #define PG_4mm Make_PG_Code(13, 13, 5) #define PG_4b2m Make_PG_Code(14, 14, 5) #define PG_4bm2 Make_PG_Code(15, 14, 5) #define PG_4_mmm Make_PG_Code(16, 15, 5) #define PG_3 Make_PG_Code(17, 16, 6) #define PG_3b Make_PG_Code(18, 17, 6) #define PG_321 Make_PG_Code(19, 18, 7) #define PG_312 Make_PG_Code(20, 18, 7) #define PG_32 Make_PG_Code(21, 18, 7) #define PG_3m1 Make_PG_Code(22, 19, 7) #define PG_31m Make_PG_Code(23, 19, 7) #define PG_3m Make_PG_Code(24, 19, 7) #define PG_3bm1 Make_PG_Code(25, 20, 7) #define PG_3b1m Make_PG_Code(26, 20, 7) #define PG_3bm Make_PG_Code(27, 20, 7) #define PG_6 Make_PG_Code(28, 21, 8) #define PG_6b Make_PG_Code(29, 22, 8) #define PG_6_m Make_PG_Code(30, 23, 8) #define PG_622 Make_PG_Code(31, 24, 9) #define PG_6mm Make_PG_Code(32, 25, 9) #define PG_6bm2 Make_PG_Code(33, 26, 9) #define PG_6b2m Make_PG_Code(34, 26, 9) #define PG_6_mmm Make_PG_Code(35, 27, 9) #define PG_23 Make_PG_Code(36, 28, 10) #define PG_m3b Make_PG_Code(37, 29, 10) #define PG_432 Make_PG_Code(38, 30, 11) #define PG_4b3m Make_PG_Code(39, 31, 11) #define PG_m3bm Make_PG_Code(40, 32, 11) #define PG_Index(PG_Code) ((PG_Code) / (33 * 12)) #define PG_Number(PG_Code) (((PG_Code) / 12) % 33) #define LG_Number(PG_Code) ((PG_Code) % (33 * 12)) #ifndef SGCLIB_C__ extern const int LG_Code_of_PG_Index[]; #else const int LG_Code_of_PG_Index[] = { PG_Unknown, PG_1b, PG_1b, PG_2_m, PG_2_m, PG_2_m, PG_mmm, PG_mmm, PG_mmm, PG_4_m, PG_4_m, PG_4_m, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_3b, PG_3b, PG_3bm1, PG_3b1m, PG_3bm, PG_3bm1, PG_3b1m, PG_3bm, PG_3bm1, PG_3b1m, PG_3bm, PG_6_m, PG_6_m, PG_6_m, PG_6_mmm, PG_6_mmm, PG_6_mmm, PG_6_mmm, PG_6_mmm, PG_m3b, PG_m3b, PG_m3bm, PG_m3bm, PG_m3bm }; #endif /* SGCLIB_C__ */ #ifndef SGCLIB_C__ extern const char *PG_Names[]; #else const char *PG_Names[] = { "Unknown", "1", "-1", "2", "m", "2/m", "222", "mm2", "mmm", "4", "-4", "4/m", "422", "4mm", "-42m", "-4m2", "4/mmm", "3", "-3", "321", "312", "32", "3m1", "31m", "3m", "-3m1", "-31m", "-3m", "6", "-6", "6/m", "622", "6mm", "-6m2", "-62m", "6/mmm", "23", "m-3", "432", "-43m", "m-3m" }; #endif /* SGCLIB_C__ */ #ifndef SGCLIB_C__ #ifdef SGCOREDEF__ extern const T_LatticeInfo LI_P[]; extern const T_LatticeInfo LI_A[]; extern const T_LatticeInfo LI_B[]; extern const T_LatticeInfo LI_C[]; extern const T_LatticeInfo LI_I[]; extern const T_LatticeInfo LI_R[]; extern const T_LatticeInfo LI_S[]; extern const T_LatticeInfo LI_T[]; extern const T_LatticeInfo LI_F[]; #endif #else #define T(i) ((i) * (STBF / 12)) static int LTr_P[] = { T(0), T(0), T(0) }; const T_LatticeInfo LI_P[] = {{ 'P', 1, LTr_P }}; static int LTr_A[] = { T(0), T(0), T(0), T(0), T(6), T(6) }; const T_LatticeInfo LI_A[] = {{ 'A', 2, LTr_A }}; static int LTr_B[] = { T(0), T(0), T(0), T(6), T(0), T(6) }; const T_LatticeInfo LI_B[] = {{ 'B', 2, LTr_B }}; static int LTr_C[] = { T(0), T(0), T(0), T(6), T(6), T(0) }; const T_LatticeInfo LI_C[] = {{ 'C', 2, LTr_C }}; static int LTr_I[] = { T(0), T(0), T(0), T(6), T(6), T(6) }; const T_LatticeInfo LI_I[] = {{ 'I', 2, LTr_I }}; static int LTr_R[] = { T(0), T(0), T(0), T(8), T(4), T(4), T(4), T(8), T(8) }; const T_LatticeInfo LI_R[] = {{ 'R', 3, LTr_R }}; static int LTr_S[] = { T(0), T(0), T(0), T(4), T(4), T(8), T(8), T(8), T(4) }; const T_LatticeInfo LI_S[] = {{ 'S', 3, LTr_S }}; static int LTr_T[] = { T(0), T(0), T(0), T(4), T(8), T(4), T(8), T(4), T(8) }; const T_LatticeInfo LI_T[] = {{ 'T', 3, LTr_T }}; static int LTr_F[] = { T(0), T(0), T(0), T(0), T(6), T(6), T(6), T(0), T(6), T(6), T(6), T(0) }; const T_LatticeInfo LI_F[] = {{ 'F', 4, LTr_F }}; #undef T #endif /* SGCLIB_C__ */ /* lattice code R S T unique axis 3z obv - rev 3y rev obv - 3x - rev obv */ #ifndef SGCLIB_C__ #ifdef SGCOREDEF__ extern const int CCMx_PP[]; extern const int CCMx_AP[]; extern const int CCMx_BP[]; extern const int CCMx_CP[]; extern const int CCMx_IP[]; extern const int CCMx_RP_z[]; extern const int CCMx_SP_y[]; extern const int CCMx_TP_x[]; extern const int CCMx_TP_z[]; extern const int CCMx_RP_y[]; extern const int CCMx_SP_x[]; extern const int CCMx_FI_z[]; extern const int CCMx_FI_y[]; extern const int CCMx_FI_x[]; extern const int CCMx_FP[]; #endif #else const int CCMx_PP[] = { 1, 0, 0, /* Change of Basis Matrices */ 0, 1, 0, /* (coordinate transformations) */ 0, 0, 1 }; const int CCMx_AP[] = { -1, 0, 0, 0, -1, 1, 0, 1, 1 }; const int CCMx_BP[] = { -1, 0, 1, 0, -1, 0, 1, 0, 1 }; const int CCMx_CP[] = { 1, 1, 0, 1, -1, 0, 0, 0, -1 }; const int CCMx_IP[] = { 0, 1, 1, 1, 0, 1, 1, 1, 0 }; const int CCMx_RP_z[] = { 1, 0, 1, -1, 1, 1, 0, -1, 1 }; const int CCMx_SP_y[] = { 1, 1, -1, -1, 1, 0, 0, 1, 1 }; const int CCMx_TP_x[] = { 1, 0, -1, 1, 1, 0, 1, -1, 1 }; const int CCMx_TP_z[] = { -1, 0, 1, 1, -1, 1, 0, 1, 1 }; const int CCMx_RP_y[] = { -1, 1, 1, 1, 1, 0, 0, 1, -1 }; const int CCMx_SP_x[] = { 1, 0, 1, 1, -1, 0, 1, 1, -1 }; const int CCMx_FI_z[] = { 1, 1, 0, -1, 1, 0, 0, 0, 1 }; const int CCMx_FI_y[] = { 1, 0, -1, 0, 1, 0, 1, 0, 1 }; const int CCMx_FI_x[] = { 1, 0, 0, 0, 1, 1, 0, -1, 1 }; const int CCMx_FP[] = { -1, 1, 1, 1, -1, 1, 1, 1, -1 }; #endif /* SGCLIB_C__ */ #if defined(SGCLIB_C__) || defined(SGCOREDEF__) typedef struct { int Order; int EigenVector[3]; int DirCode; int RMx[9]; } T_TabXtalRotMx; #endif #ifndef SGCLIB_C__ #ifdef SGCOREDEF__ extern const T_TabXtalRotMx TabXtalRotMx[]; #endif #else const T_TabXtalRotMx TabXtalRotMx[] = { /* # EigenVector DirCode */ { /* [ 0] */ 1, { 0, 0, 0 }, '.', /* CAUTION: */ { 1, 0, 0, /* Reorganizing this table */ 0, 1, 0, /* affects RMx_????? below. */ 0, 0, 1 } }, { /* [ 1] */ 2, { 0, 0, 1 }, '=', {-1, 0, 0, 0, -1, 0, 0, 0, 1 } }, { /* [ 2] */ 2, { 1, 0, 0 }, '=', /* hexagonal */ { 1, -1, 0, 0, -1, 0, 0, 0, -1 } }, { /* [ 3] */ 2, { 0, 1, 0 }, '=', /* hexagonal */ {-1, 0, 0, -1, 1, 0, 0, 0, -1 } }, { /* [ 4] */ 2, { 1, 1, 0 }, '"', { 0, 1, 0, 1, 0, 0, 0, 0, -1 } }, { /* [ 5] */ 2, { 1, -1, 0 }, '\'', { 0, -1, 0, -1, 0, 0, 0, 0, -1 } }, { /* [ 6] */ 2, { 2, 1, 0 }, '|', /* hexagonal */ { 1, 0, 0, 1, -1, 0, 0, 0, -1 } }, { /* [ 7] */ 2, { 1, 2, 0 }, '\\', /* hexagonal */ {-1, 1, 0, 0, 1, 0, 0, 0, -1 } }, { /* [ 8] */ 3, { 0, 0, 1 }, '=', { 0, -1, 0, 1, -1, 0, 0, 0, 1 } }, { /* [ 9] */ 3, { 1, 1, 1 }, '*', { 0, 0, 1, 1, 0, 0, 0, 1, 0 } }, { /* [10] */ 4, { 0, 0, 1 }, '=', { 0, -1, 0, 1, 0, 0, 0, 0, 1 } }, { /* [11] */ 6, { 0, 0, 1 }, '=', { 1, -1, 0, 1, 0, 0, 0, 0, 1 } }, { 0, { 0, 0, 0 }, 0, { 0, 0, 0, 0, 0, 0, 0, 0, 0 } } }; #endif /* SGCLIB_C__ */ #ifndef SGCLIB_C__ #ifdef SGCOREDEF__ extern const int *RMx_1_000; extern const int *RMx_2_001; extern const int *RMx_2_110; extern const int *RMx_3_001; extern const int *RMx_3_111; extern const int RMx_3i111[]; extern const int *RMx_4_001; extern const int RMx_4i001[]; #endif #else const int *RMx_1_000 = TabXtalRotMx[ 0].RMx; const int *RMx_2_001 = TabXtalRotMx[ 1].RMx; const int *RMx_2_110 = TabXtalRotMx[ 4].RMx; const int *RMx_3_001 = TabXtalRotMx[ 8].RMx; const int *RMx_3_111 = TabXtalRotMx[ 9].RMx; const int RMx_3i111[] = { 0, 1, 0, 0, 0, 1, 1, 0, 0 }; const int *RMx_4_001 = TabXtalRotMx[10].RMx; const int RMx_4i001[] = { 0, 1, 0, -1, 0, 0, 0, 0, 1 }; #endif /* SGCLIB_C__ */ #ifndef SGCLIB_C__ #ifdef SGCOREDEF__ extern const int HallTranslations[]; #endif #else #define T(i) ((i) * (STBF / 12)) const int HallTranslations[] = { 'n', T(6), T(6), T(6), 'a', T(6), T(0), T(0), 'b', T(0), T(6), T(0), 'c', T(0), T(0), T(6), 'd', T(3), T(3), T(3), 'u', T(3), T(0), T(0), 'v', T(0), T(3), T(0), 'w', T(0), T(0), T(3), 0 }; #undef T #endif #ifndef SGCLIB_C__ #ifdef SGCOREDEF__ extern const int VolAPointGroups[]; #endif #else const int VolAPointGroups[] = { PG_Unknown, PG_1, PG_1b, PG_2, PG_2, PG_2, PG_m, PG_m, PG_m, PG_m, PG_2_m, PG_2_m, PG_2_m, PG_2_m, PG_2_m, PG_2_m, PG_222, PG_222, PG_222, PG_222, PG_222, PG_222, PG_222, PG_222, PG_222, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mm2, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_mmm, PG_4, PG_4, PG_4, PG_4, PG_4, PG_4, PG_4b, PG_4b, PG_4_m, PG_4_m, PG_4_m, PG_4_m, PG_4_m, PG_4_m, PG_422, PG_422, PG_422, PG_422, PG_422, PG_422, PG_422, PG_422, PG_422, PG_422, PG_4mm, PG_4mm, PG_4mm, PG_4mm, PG_4mm, PG_4mm, PG_4mm, PG_4mm, PG_4mm, PG_4mm, PG_4mm, PG_4mm, PG_4b2m, PG_4b2m, PG_4b2m, PG_4b2m, PG_4bm2, PG_4bm2, PG_4bm2, PG_4bm2, PG_4bm2, PG_4bm2, PG_4b2m, PG_4b2m, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_4_mmm, PG_3, PG_3, PG_3, PG_3, PG_3b, PG_3b, PG_312, PG_321, PG_312, PG_321, PG_312, PG_321, PG_32, PG_3m1, PG_31m, PG_3m1, PG_31m, PG_3m, PG_3m, PG_3b1m, PG_3b1m, PG_3bm1, PG_3bm1, PG_3bm, PG_3bm, PG_6, PG_6, PG_6, PG_6, PG_6, PG_6, PG_6b, PG_6_m, PG_6_m, PG_622, PG_622, PG_622, PG_622, PG_622, PG_622, PG_6mm, PG_6mm, PG_6mm, PG_6mm, PG_6bm2, PG_6bm2, PG_6b2m, PG_6b2m, PG_6_mmm, PG_6_mmm, PG_6_mmm, PG_6_mmm, PG_23, PG_23, PG_23, PG_23, PG_23, PG_m3b, PG_m3b, PG_m3b, PG_m3b, PG_m3b, PG_m3b, PG_m3b, PG_432, PG_432, PG_432, PG_432, PG_432, PG_432, PG_432, PG_432, PG_4b3m, PG_4b3m, PG_4b3m, PG_4b3m, PG_4b3m, PG_4b3m, PG_m3bm, PG_m3bm, PG_m3bm, PG_m3bm, PG_m3bm, PG_m3bm, PG_m3bm, PG_m3bm, PG_m3bm, PG_m3bm }; #endif /* SGCLIB_C__ */ #ifndef SGCLIB_C__ #ifdef SGCOREDEF__ extern const char *SchoenfliesSymbols[]; #endif #else const char *SchoenfliesSymbols[] = { NULL, "C1^1", "Ci^1", "C2^1", "C2^2", "C2^3", "Cs^1", "Cs^2", "Cs^3", "Cs^4", "C2h^1", "C2h^2", "C2h^3", "C2h^4", "C2h^5", "C2h^6", "D2^1", "D2^2", "D2^3", "D2^4", "D2^5", "D2^6", "D2^7", "D2^8", "D2^9", "C2v^1", "C2v^2", "C2v^3", "C2v^4", "C2v^5", "C2v^6", "C2v^7", "C2v^8", "C2v^9", "C2v^10", "C2v^11", "C2v^12", "C2v^13", "C2v^14", "C2v^15", "C2v^16", "C2v^17", "C2v^18", "C2v^19", "C2v^20", "C2v^21", "C2v^22", "D2h^1", "D2h^2", "D2h^3", "D2h^4", "D2h^5", "D2h^6", "D2h^7", "D2h^8", "D2h^9", "D2h^10", "D2h^11", "D2h^12", "D2h^13", "D2h^14", "D2h^15", "D2h^16", "D2h^17", "D2h^18", "D2h^19", "D2h^20", "D2h^21", "D2h^22", "D2h^23", "D2h^24", "D2h^25", "D2h^26", "D2h^27", "D2h^28", "C4^1", "C4^2", "C4^3", "C4^4", "C4^5", "C4^6", "S4^1", "S4^2", "C4h^1", "C4h^2", "C4h^3", "C4h^4", "C4h^5", "C4h^6", "D4^1", "D4^2", "D4^3", "D4^4", "D4^5", "D4^6", "D4^7", "D4^8", "D4^9", "D4^10", "C4v^1", "C4v^2", "C4v^3", "C4v^4", "C4v^5", "C4v^6", "C4v^7", "C4v^8", "C4v^9", "C4v^10", "C4v^11", "C4v^12", "D2d^1", "D2d^2", "D2d^3", "D2d^4", "D2d^5", "D2d^6", "D2d^7", "D2d^8", "D2d^9", "D2d^10", "D2d^11", "D2d^12", "D4h^1", "D4h^2", "D4h^3", "D4h^4", "D4h^5", "D4h^6", "D4h^7", "D4h^8", "D4h^9", "D4h^10", "D4h^11", "D4h^12", "D4h^13", "D4h^14", "D4h^15", "D4h^16", "D4h^17", "D4h^18", "D4h^19", "D4h^20", "C3^1", "C3^2", "C3^3", "C3^4", "C3i^1", "C3i^2", "D3^1", "D3^2", "D3^3", "D3^4", "D3^5", "D3^6", "D3^7", "C3v^1", "C3v^2", "C3v^3", "C3v^4", "C3v^5", "C3v^6", "D3d^1", "D3d^2", "D3d^3", "D3d^4", "D3d^5", "D3d^6", "C6^1", "C6^2", "C6^3", "C6^4", "C6^5", "C6^6", "C3h^1", "C6h^1", "C6h^2", "D6^1", "D6^2", "D6^3", "D6^4", "D6^5", "D6^6", "C6v^1", "C6v^2", "C6v^3", "C6v^4", "D3h^1", "D3h^2", "D3h^3", "D3h^4", "D6h^1", "D6h^2", "D6h^3", "D6h^4", "T^1", "T^2", "T^3", "T^4", "T^5", "Th^1", "Th^2", "Th^3", "Th^4", "Th^5", "Th^6", "Th^7", "O^1", "O^2", "O^3", "O^4", "O^5", "O^6", "O^7", "O^8", "Td^1", "Td^2", "Td^3", "Td^4", "Td^5", "Td^6", "Oh^1", "Oh^2", "Oh^3", "Oh^4", "Oh^5", "Oh^6", "Oh^7", "Oh^8", "Oh^9", "Oh^10" }; #endif /* SGCLIB_C__ */ #ifndef SGCLIB_C__ #ifdef SGCOREDEF__ extern const T_TabSgName TabSgName[]; #endif #else const T_TabSgName TabSgName[] = { { " P 1", 1, "", "P_1" }, { "-P 1", 2, "", "P_-1" }, { " P 2y", 3, "b", "P_2 = P_1_2_1" }, { " P 2", 3, "c", "P_2 = P_1_1_2" }, { " P 2x", 3, "a", "P_2 = P_2_1_1" }, { " P 2yb", 4, "b", "P_21 = P_1_21_1" }, { " P 2c", 4, "c", "P_21 = P_1_1_21" }, { " P 2xa", 4, "a", "P_21 = P_21_1_1" }, { " C 2y", 5, "b1", "C_2 = C_1_2_1" }, { " A 2y", 5, "b2", "C_2 = A_1_2_1" }, { " I 2y", 5, "b3", "C_2 = I_1_2_1" }, { " A 2", 5, "c1", "C_2 = A_1_1_2" }, { " B 2", 5, "c2", "C_2 = B_1_1_2 = B_2" }, { " I 2", 5, "c3", "C_2 = I_1_1_2" }, { " B 2x", 5, "a1", "C_2 = B_2_1_1" }, { " C 2x", 5, "a2", "C_2 = C_2_1_1" }, { " I 2x", 5, "a3", "C_2 = I_2_1_1" }, { " P -2y", 6, "b", "P_m = P_1_m_1" }, { " P -2", 6, "c", "P_m = P_1_1_m" }, { " P -2x", 6, "a", "P_m = P_m_1_1" }, { " P -2yc", 7, "b1", "P_c = P_1_c_1" }, { " P -2yac", 7, "b2", "P_c = P_1_n_1" }, { " P -2ya", 7, "b3", "P_c = P_1_a_1" }, { " P -2a", 7, "c1", "P_c = P_1_1_a" }, { " P -2ab", 7, "c2", "P_c = P_1_1_n" }, { " P -2b", 7, "c3", "P_c = P_1_1_b = P_b" }, { " P -2xb", 7, "a1", "P_c = P_b_1_1" }, { " P -2xbc", 7, "a2", "P_c = P_n_1_1" }, { " P -2xc", 7, "a3", "P_c = P_c_1_1" }, { " C -2y", 8, "b1", "C_m = C_1_m_1" }, { " A -2y", 8, "b2", "C_m = A_1_m_1" }, { " I -2y", 8, "b3", "C_m = I_1_m_1" }, { " A -2", 8, "c1", "C_m = A_1_1_m" }, { " B -2", 8, "c2", "C_m = B_1_1_m = B_m" }, { " I -2", 8, "c3", "C_m = I_1_1_m" }, { " B -2x", 8, "a1", "C_m = B_m_1_1" }, { " C -2x", 8, "a2", "C_m = C_m_1_1" }, { " I -2x", 8, "a3", "C_m = I_m_1_1" }, { " C -2yc", 9, "b1", "C_c = C_1_c_1" }, { " A -2yac", 9, "b2", "C_c = A_1_n_1" }, { " I -2ya", 9, "b3", "C_c = I_1_a_1" }, { " A -2ya", 9, "-b1", "C_c = A_1_a_1" }, { " C -2ybc", 9, "-b2", "C_c = C_1_n_1" }, { " I -2yc", 9, "-b3", "C_c = I_1_c_1" }, { " A -2a", 9, "c1", "C_c = A_1_1_a" }, { " B -2bc", 9, "c2", "C_c = B_1_1_n" }, { " I -2b", 9, "c3", "C_c = I_1_1_b" }, { " B -2b", 9, "-c1", "C_c = B_1_1_b = B_b" }, { " A -2ac", 9, "-c2", "C_c = A_1_1_n" }, { " I -2a", 9, "-c3", "C_c = I_1_1_a" }, { " B -2xb", 9, "a1", "C_c = B_b_1_1" }, { " C -2xbc", 9, "a2", "C_c = C_n_1_1" }, { " I -2xc", 9, "a3", "C_c = I_c_1_1" }, { " C -2xc", 9, "-a1", "C_c = C_c_1_1" }, { " B -2xbc", 9, "-a2", "C_c = B_n_1_1" }, { " I -2xb", 9, "-a3", "C_c = I_b_1_1" }, { "-P 2y", 10, "b", "P_2/m = P_1_2/m_1" }, { "-P 2", 10, "c", "P_2/m = P_1_1_2/m" }, { "-P 2x", 10, "a", "P_2/m = P_2/m_1_1" }, { "-P 2yb", 11, "b", "P_21/m = P_1_21/m_1" }, { "-P 2c", 11, "c", "P_21/m = P_1_1_21/m" }, { "-P 2xa", 11, "a", "P_21/m = P_21/m_1_1" }, { "-C 2y", 12, "b1", "C_2/m = C_1_2/m_1" }, { "-A 2y", 12, "b2", "C_2/m = A_1_2/m_1" }, { "-I 2y", 12, "b3", "C_2/m = I_1_2/m_1" }, { "-A 2", 12, "c1", "C_2/m = A_1_1_2/m" }, { "-B 2", 12, "c2", "C_2/m = B_1_1_2/m = B_2/m" }, { "-I 2", 12, "c3", "C_2/m = I_1_1_2/m" }, { "-B 2x", 12, "a1", "C_2/m = B_2/m_1_1" }, { "-C 2x", 12, "a2", "C_2/m = C_2/m_1_1" }, { "-I 2x", 12, "a3", "C_2/m = I_2/m_1_1" }, { "-P 2yc", 13, "b1", "P_2/c = P_1_2/c_1" }, { "-P 2yac", 13, "b2", "P_2/c = P_1_2/n_1" }, { "-P 2ya", 13, "b3", "P_2/c = P_1_2/a_1" }, { "-P 2a", 13, "c1", "P_2/c = P_1_1_2/a" }, { "-P 2ab", 13, "c2", "P_2/c = P_1_1_2/n" }, { "-P 2b", 13, "c3", "P_2/c = P_1_1_2/b = P_2/b" }, { "-P 2xb", 13, "a1", "P_2/c = P_2/b_1_1" }, { "-P 2xbc", 13, "a2", "P_2/c = P_2/n_1_1" }, { "-P 2xc", 13, "a3", "P_2/c = P_2/c_1_1" }, { "-P 2ybc", 14, "b1", "P_21/c = P_1_21/c_1" }, { "-P 2yn", 14, "b2", "P_21/c = P_1_21/n_1" }, { "-P 2yab", 14, "b3", "P_21/c = P_1_21/a_1" }, { "-P 2ac", 14, "c1", "P_21/c = P_1_1_21/a" }, { "-P 2n", 14, "c2", "P_21/c = P_1_1_21/n" }, { "-P 2bc", 14, "c3", "P_21/c = P_1_1_21/b = P_21/b" }, { "-P 2xab", 14, "a1", "P_21/c = P_21/b_1_1" }, { "-P 2xn", 14, "a2", "P_21/c = P_21/n_1_1" }, { "-P 2xac", 14, "a3", "P_21/c = P_21/c_1_1" }, { "-C 2yc", 15, "b1", "C_2/c = C_1_2/c_1" }, { "-A 2yac", 15, "b2", "C_2/c = A_1_2/n_1" }, { "-I 2ya", 15, "b3", "C_2/c = I_1_2/a_1" }, { "-A 2ya", 15, "-b1", "C_2/c = A_1_2/a_1" }, { "-C 2ybc", 15, "-b2", "C_2/c = C_1_2/n_1" }, { "-I 2yc", 15, "-b3", "C_2/c = I_1_2/c_1" }, { "-A 2a", 15, "c1", "C_2/c = A_1_1_2/a" }, { "-B 2bc", 15, "c2", "C_2/c = B_1_1_2/n" }, { "-I 2b", 15, "c3", "C_2/c = I_1_1_2/b" }, { "-B 2b", 15, "-c1", "C_2/c = B_1_1_2/b = B_2/b" }, { "-A 2ac", 15, "-c2", "C_2/c = A_1_1_2/n" }, { "-I 2a", 15, "-c3", "C_2/c = I_1_1_2/a" }, { "-B 2xb", 15, "a1", "C_2/c = B_2/b_1_1" }, { "-C 2xbc", 15, "a2", "C_2/c = C_2/n_1_1" }, { "-I 2xc", 15, "a3", "C_2/c = I_2/c_1_1" }, { "-C 2xc", 15, "-a1", "C_2/c = C_2/c_1_1" }, { "-B 2xbc", 15, "-a2", "C_2/c = B_2/n_1_1" }, { "-I 2xb", 15, "-a3", "C_2/c = I_2/b_1_1" }, { " P 2 2", 16, "", "P_2_2_2" }, { " P 2c 2", 17, "", "P_2_2_21" }, { " P 2a 2a", 17, "cab", "P_21_2_2" }, { " P 2 2b", 17, "bca", "P_2_21_2" }, { " P 2 2ab", 18, "", "P_21_21_2" }, { " P 2bc 2", 18, "cab", "P_2_21_21" }, { " P 2ac 2ac", 18, "bca", "P_21_2_21" }, { " P 2ac 2ab", 19, "", "P_21_21_21" }, { " C 2c 2", 20, "", "C_2_2_21" }, { " A 2a 2a", 20, "cab", "A_21_2_2" }, { " B 2 2b", 20, "bca", "B_2_21_2" }, { " C 2 2", 21, "", "C_2_2_2" }, { " A 2 2", 21, "cab", "A_2_2_2" }, { " B 2 2", 21, "bca", "B_2_2_2" }, { " F 2 2", 22, "", "F_2_2_2" }, { " I 2 2", 23, "", "I_2_2_2" }, { " I 2b 2c", 24, "", "I_21_21_21" }, { " P 2 -2", 25, "", "P_m_m_2" }, { " P -2 2", 25, "cab", "P_2_m_m" }, { " P -2 -2", 25, "bca", "P_m_2_m" }, { " P 2c -2", 26, "", "P_m_c_21" }, { " P 2c -2c", 26, "ba-c", "P_c_m_21" }, { " P -2a 2a", 26, "cab", "P_21_m_a" }, { " P -2 2a", 26, "-cba", "P_21_a_m" }, { " P -2 -2b", 26, "bca", "P_b_21_m" }, { " P -2b -2", 26, "a-cb", "P_m_21_b" }, { " P 2 -2c", 27, "", "P_c_c_2" }, { " P -2a 2", 27, "cab", "P_2_a_a" }, { " P -2b -2b", 27, "bca", "P_b_2_b" }, { " P 2 -2a", 28, "", "P_m_a_2" }, { " P 2 -2b", 28, "ba-c", "P_b_m_2" }, { " P -2b 2", 28, "cab", "P_2_m_b" }, { " P -2c 2", 28, "-cba", "P_2_c_m" }, { " P -2c -2c", 28, "bca", "P_c_2_m" }, { " P -2a -2a", 28, "a-cb", "P_m_2_a" }, { " P 2c -2ac", 29, "", "P_c_a_21" }, { " P 2c -2b", 29, "ba-c", "P_b_c_21" }, { " P -2b 2a", 29, "cab", "P_21_a_b" }, { " P -2ac 2a", 29, "-cba", "P_21_c_a" }, { " P -2bc -2c", 29, "bca", "P_c_21_b" }, { " P -2a -2ab", 29, "a-cb", "P_b_21_a" }, { " P 2 -2bc", 30, "", "P_n_c_2" }, { " P 2 -2ac", 30, "ba-c", "P_c_n_2" }, { " P -2ac 2", 30, "cab", "P_2_n_a" }, { " P -2ab 2", 30, "-cba", "P_2_a_n" }, { " P -2ab -2ab", 30, "bca", "P_b_2_n" }, { " P -2bc -2bc", 30, "a-cb", "P_n_2_b" }, { " P 2ac -2", 31, "", "P_m_n_21" }, { " P 2bc -2bc", 31, "ba-c", "P_n_m_21" }, { " P -2ab 2ab", 31, "cab", "P_21_m_n" }, { " P -2 2ac", 31, "-cba", "P_21_n_m" }, { " P -2 -2bc", 31, "bca", "P_n_21_m" }, { " P -2ab -2", 31, "a-cb", "P_m_21_n" }, { " P 2 -2ab", 32, "", "P_b_a_2" }, { " P -2bc 2", 32, "cab", "P_2_c_b" }, { " P -2ac -2ac", 32, "bca", "P_c_2_a" }, { " P 2c -2n", 33, "", "P_n_a_21" }, { " P 2c -2ab", 33, "ba-c", "P_b_n_21" }, { " P -2bc 2a", 33, "cab", "P_21_n_b" }, { " P -2n 2a", 33, "-cba", "P_21_c_n" }, { " P -2n -2ac", 33, "bca", "P_c_21_n" }, { " P -2ac -2n", 33, "a-cb", "P_n_21_a" }, { " P 2 -2n", 34, "", "P_n_n_2" }, { " P -2n 2", 34, "cab", "P_2_n_n" }, { " P -2n -2n", 34, "bca", "P_n_2_n" }, { " C 2 -2", 35, "", "C_m_m_2" }, { " A -2 2", 35, "cab", "A_2_m_m" }, { " B -2 -2", 35, "bca", "B_m_2_m" }, { " C 2c -2", 36, "", "C_m_c_21" }, { " C 2c -2c", 36, "ba-c", "C_c_m_21" }, { " A -2a 2a", 36, "cab", "A_21_m_a" }, { " A -2 2a", 36, "-cba", "A_21_a_m" }, { " B -2 -2b", 36, "bca", "B_b_21_m" }, { " B -2b -2", 36, "a-cb", "B_m_21_b" }, { " C 2 -2c", 37, "", "C_c_c_2" }, { " A -2a 2", 37, "cab", "A_2_a_a" }, { " B -2b -2b", 37, "bca", "B_b_2_b" }, { " A 2 -2", 38, "", "A_m_m_2" }, { " B 2 -2", 38, "ba-c", "B_m_m_2" }, { " B -2 2", 38, "cab", "B_2_m_m" }, { " C -2 2", 38, "-cba", "C_2_m_m" }, { " C -2 -2", 38, "bca", "C_m_2_m" }, { " A -2 -2", 38, "a-cb", "A_m_2_m" }, { " A 2 -2c", 39, "", "A_b_m_2" }, { " B 2 -2c", 39, "ba-c", "B_m_a_2" }, { " B -2c 2", 39, "cab", "B_2_c_m" }, { " C -2b 2", 39, "-cba", "C_2_m_b" }, { " C -2b -2b", 39, "bca", "C_m_2_a" }, { " A -2c -2c", 39, "a-cb", "A_c_2_m" }, { " A 2 -2a", 40, "", "A_m_a_2" }, { " B 2 -2b", 40, "ba-c", "B_b_m_2" }, { " B -2b 2", 40, "cab", "B_2_m_b" }, { " C -2c 2", 40, "-cba", "C_2_c_m" }, { " C -2c -2c", 40, "bca", "C_c_2_m" }, { " A -2a -2a", 40, "a-cb", "A_m_2_a" }, { " A 2 -2ac", 41, "", "A_b_a_2" }, { " B 2 -2bc", 41, "ba-c", "B_b_a_2" }, { " B -2bc 2", 41, "cab", "B_2_c_b" }, { " C -2bc 2", 41, "-cba", "C_2_c_b" }, { " C -2bc -2bc", 41, "bca", "C_c_2_a" }, { " A -2ac -2ac", 41, "a-cb", "A_c_2_a" }, { " F 2 -2", 42, "", "F_m_m_2" }, { " F -2 2", 42, "cab", "F_2_m_m" }, { " F -2 -2", 42, "bca", "F_m_2_m" }, { " F 2 -2d", 43, "", "F_d_d_2" }, { " F -2d 2", 43, "cab", "F_2_d_d" }, { " F -2d -2d", 43, "bca", "F_d_2_d" }, { " I 2 -2", 44, "", "I_m_m_2" }, { " I -2 2", 44, "cab", "I_2_m_m" }, { " I -2 -2", 44, "bca", "I_m_2_m" }, { " I 2 -2c", 45, "", "I_b_a_2" }, { " I -2a 2", 45, "cab", "I_2_c_b" }, { " I -2b -2b", 45, "bca", "I_c_2_a" }, { " I 2 -2a", 46, "", "I_m_a_2" }, { " I 2 -2b", 46, "ba-c", "I_b_m_2" }, { " I -2b 2", 46, "cab", "I_2_m_b" }, { " I -2c 2", 46, "-cba", "I_2_c_m" }, { " I -2c -2c", 46, "bca", "I_c_2_m" }, { " I -2a -2a", 46, "a-cb", "I_m_2_a" }, { "-P 2 2", 47, "", "P_m_m_m" }, { " P 2 2 -1n", 48, "1", "P_n_n_n" }, { "-P 2ab 2bc", 48, "2", "P_n_n_n" }, { "-P 2 2c", 49, "", "P_c_c_m" }, { "-P 2a 2", 49, "cab", "P_m_a_a" }, { "-P 2b 2b", 49, "bca", "P_b_m_b" }, { " P 2 2 -1ab", 50, "1", "P_b_a_n" }, { "-P 2ab 2b", 50, "2", "P_b_a_n" }, { " P 2 2 -1bc", 50, "1cab", "P_n_c_b" }, { "-P 2b 2bc", 50, "2cab", "P_n_c_b" }, { " P 2 2 -1ac", 50, "1bca", "P_c_n_a" }, { "-P 2a 2c", 50, "2bca", "P_c_n_a" }, { "-P 2a 2a", 51, "", "P_m_m_a" }, { "-P 2b 2", 51, "ba-c", "P_m_m_b" }, { "-P 2 2b", 51, "cab", "P_b_m_m" }, { "-P 2c 2c", 51, "-cba", "P_c_m_m" }, { "-P 2c 2", 51, "bca", "P_m_c_m" }, { "-P 2 2a", 51, "a-cb", "P_m_a_m" }, { "-P 2a 2bc", 52, "", "P_n_n_a" }, { "-P 2b 2n", 52, "ba-c", "P_n_n_b" }, { "-P 2n 2b", 52, "cab", "P_b_n_n" }, { "-P 2ab 2c", 52, "-cba", "P_c_n_n" }, { "-P 2ab 2n", 52, "bca", "P_n_c_n" }, { "-P 2n 2bc", 52, "a-cb", "P_n_a_n" }, { "-P 2ac 2", 53, "", "P_m_n_a" }, { "-P 2bc 2bc", 53, "ba-c", "P_n_m_b" }, { "-P 2ab 2ab", 53, "cab", "P_b_m_n" }, { "-P 2 2ac", 53, "-cba", "P_c_n_m" }, { "-P 2 2bc", 53, "bca", "P_n_c_m" }, { "-P 2ab 2", 53, "a-cb", "P_m_a_n" }, { "-P 2a 2ac", 54, "", "P_c_c_a" }, { "-P 2b 2c", 54, "ba-c", "P_c_c_b" }, { "-P 2a 2b", 54, "cab", "P_b_a_a" }, { "-P 2ac 2c", 54, "-cba", "P_c_a_a" }, { "-P 2bc 2b", 54, "bca", "P_b_c_b" }, { "-P 2b 2ab", 54, "a-cb", "P_b_a_b" }, { "-P 2 2ab", 55, "", "P_b_a_m" }, { "-P 2bc 2", 55, "cab", "P_m_c_b" }, { "-P 2ac 2ac", 55, "bca", "P_c_m_a" }, { "-P 2ab 2ac", 56, "", "P_c_c_n" }, { "-P 2ac 2bc", 56, "cab", "P_n_a_a" }, { "-P 2bc 2ab", 56, "bca", "P_b_n_b" }, { "-P 2c 2b", 57, "", "P_b_c_m" }, { "-P 2c 2ac", 57, "ba-c", "P_c_a_m" }, { "-P 2ac 2a", 57, "cab", "P_m_c_a" }, { "-P 2b 2a", 57, "-cba", "P_m_a_b" }, { "-P 2a 2ab", 57, "bca", "P_b_m_a" }, { "-P 2bc 2c", 57, "a-cb", "P_c_m_b" }, { "-P 2 2n", 58, "", "P_n_n_m" }, { "-P 2n 2", 58, "cab", "P_m_n_n" }, { "-P 2n 2n", 58, "bca", "P_n_m_n" }, { " P 2 2ab -1ab", 59, "1", "P_m_m_n" }, { "-P 2ab 2a", 59, "2", "P_m_m_n" }, { " P 2bc 2 -1bc", 59, "1cab", "P_n_m_m" }, { "-P 2c 2bc", 59, "2cab", "P_n_m_m" }, { " P 2ac 2ac -1ac", 59, "1bca", "P_m_n_m" }, { "-P 2c 2a", 59, "2bca", "P_m_n_m" }, { "-P 2n 2ab", 60, "", "P_b_c_n" }, { "-P 2n 2c", 60, "ba-c", "P_c_a_n" }, { "-P 2a 2n", 60, "cab", "P_n_c_a" }, { "-P 2bc 2n", 60, "-cba", "P_n_a_b" }, { "-P 2ac 2b", 60, "bca", "P_b_n_a" }, { "-P 2b 2ac", 60, "a-cb", "P_c_n_b" }, { "-P 2ac 2ab", 61, "", "P_b_c_a" }, { "-P 2bc 2ac", 61, "ba-c", "P_c_a_b" }, { "-P 2ac 2n", 62, "", "P_n_m_a" }, { "-P 2bc 2a", 62, "ba-c", "P_m_n_b" }, { "-P 2c 2ab", 62, "cab", "P_b_n_m" }, { "-P 2n 2ac", 62, "-cba", "P_c_m_n" }, { "-P 2n 2a", 62, "bca", "P_m_c_n" }, { "-P 2c 2n", 62, "a-cb", "P_n_a_m" }, { "-C 2c 2", 63, "", "C_m_c_m" }, { "-C 2c 2c", 63, "ba-c", "C_c_m_m" }, { "-A 2a 2a", 63, "cab", "A_m_m_a" }, { "-A 2 2a", 63, "-cba", "A_m_a_m" }, { "-B 2 2b", 63, "bca", "B_b_m_m" }, { "-B 2b 2", 63, "a-cb", "B_m_m_b" }, { "-C 2bc 2", 64, "", "C_m_c_a" }, { "-C 2bc 2bc", 64, "ba-c", "C_c_m_b" }, { "-A 2ac 2ac", 64, "cab", "A_b_m_a" }, { "-A 2 2ac", 64, "-cba", "A_c_a_m" }, { "-B 2 2bc", 64, "bca", "B_b_c_m" }, { "-B 2bc 2", 64, "a-cb", "B_m_a_b" }, { "-C 2 2", 65, "", "C_m_m_m" }, { "-A 2 2", 65, "cab", "A_m_m_m" }, { "-B 2 2", 65, "bca", "B_m_m_m" }, { "-C 2 2c", 66, "", "C_c_c_m" }, { "-A 2a 2", 66, "cab", "A_m_a_a" }, { "-B 2b 2b", 66, "bca", "B_b_m_b" }, { "-C 2b 2", 67, "", "C_m_m_a" }, { "-C 2b 2b", 67, "ba-c", "C_m_m_b" }, { "-A 2c 2c", 67, "cab", "A_b_m_m" }, { "-A 2 2c", 67, "-cba", "A_c_m_m" }, { "-B 2 2c", 67, "bca", "B_m_c_m" }, { "-B 2c 2", 67, "a-cb", "B_m_a_m" }, { " C 2 2 -1bc", 68, "1", "C_c_c_a" }, { "-C 2b 2bc", 68, "2", "C_c_c_a" }, { " C 2 2 -1bc", 68, "1ba-c", "C_c_c_b" }, { "-C 2b 2c", 68, "2ba-c", "C_c_c_b" }, { " A 2 2 -1ac", 68, "1cab", "A_b_a_a" }, { "-A 2a 2c", 68, "2cab", "A_b_a_a" }, { " A 2 2 -1ac", 68, "1-cba", "A_c_a_a" }, { "-A 2ac 2c", 68, "2-cba", "A_c_a_a" }, { " B 2 2 -1bc", 68, "1bca", "B_b_c_b" }, { "-B 2bc 2b", 68, "2bca", "B_b_c_b" }, { " B 2 2 -1bc", 68, "1a-cb", "B_b_a_b" }, { "-B 2b 2bc", 68, "2a-cb", "B_b_a_b" }, { "-F 2 2", 69, "", "F_m_m_m" }, { " F 2 2 -1d", 70, "1", "F_d_d_d" }, { "-F 2uv 2vw", 70, "2", "F_d_d_d" }, { "-I 2 2", 71, "", "I_m_m_m" }, { "-I 2 2c", 72, "", "I_b_a_m" }, { "-I 2a 2", 72, "cab", "I_m_c_b" }, { "-I 2b 2b", 72, "bca", "I_c_m_a" }, { "-I 2b 2c", 73, "", "I_b_c_a" }, { "-I 2a 2b", 73, "ba-c", "I_c_a_b" }, { "-I 2b 2", 74, "", "I_m_m_a" }, { "-I 2a 2a", 74, "ba-c", "I_m_m_b" }, { "-I 2c 2c", 74, "cab", "I_b_m_m" }, { "-I 2 2b", 74, "-cba", "I_c_m_m" }, { "-I 2 2a", 74, "bca", "I_m_c_m" }, { "-I 2c 2", 74, "a-cb", "I_m_a_m" }, { " P 4", 75, "", "P_4" }, { " P 4w", 76, "", "P_41" }, { " P 4c", 77, "", "P_42" }, { " P 4cw", 78, "", "P_43" }, { " I 4", 79, "", "I_4" }, { " I 4bw", 80, "", "I_41" }, { " P -4", 81, "", "P_-4" }, { " I -4", 82, "", "I_-4" }, { "-P 4", 83, "", "P_4/m" }, { "-P 4c", 84, "", "P_42/m" }, { " P 4ab -1ab", 85, "1", "P_4/n" }, { "-P 4a", 85, "2", "P_4/n" }, { " P 4n -1n", 86, "1", "P_42/n" }, { "-P 4bc", 86, "2", "P_42/n" }, { "-I 4", 87, "", "I_4/m" }, { " I 4bw -1bw", 88, "1", "I_41/a" }, { "-I 4ad", 88, "2", "I_41/a" }, { " P 4 2", 89, "", "P_4_2_2" }, { " P 4ab 2ab", 90, "", "P_42_1_2" }, { " P 4w 2c", 91, "", "P_41_2_2" }, { " P 4abw 2nw", 92, "", "P_41_21_2" }, { " P 4c 2", 93, "", "P_42_2_2" }, { " P 4n 2n", 94, "", "P_42_21_2" }, { " P 4cw 2c", 95, "", "P_43_2_2" }, { " P 4nw 2abw", 96, "", "P_43_21_2" }, { " I 4 2", 97, "", "I_4_2_2" }, { " I 4bw 2bw", 98, "", "I_41_2_2" }, { " P 4 -2", 99, "", "P_4_m_m" }, { " P 4 -2ab", 100, "", "P_4_b_m" }, { " P 4c -2c", 101, "", "P_42_c_m" }, { " P 4n -2n", 102, "", "P_42_n_m" }, { " P 4 -2c", 103, "", "P_4_c_c" }, { " P 4 -2n", 104, "", "P_4_n_c" }, { " P 4c -2", 105, "", "P_42_m_c" }, { " P 4c -2ab", 106, "", "P_42_b_c" }, { " I 4 -2", 107, "", "I_4_m_m" }, { " I 4 -2c", 108, "", "I_4_c_m" }, { " I 4bw -2", 109, "", "I_41_m_d" }, { " I 4bw -2c", 110, "", "I_41_c_d" }, { " P -4 2", 111, "", "P_-4_2_m" }, { " P -4 2c", 112, "", "P_-4_2_c" }, { " P -4 2ab", 113, "", "P_-4_21_m" }, { " P -4 2n", 114, "", "P_-4_21_c" }, { " P -4 -2", 115, "", "P_-4_m_2" }, { " P -4 -2c", 116, "", "P_-4_c_2" }, { " P -4 -2ab", 117, "", "P_-4_b_2" }, { " P -4 -2n", 118, "", "P_-4_n_2" }, { " I -4 -2", 119, "", "I_-4_m_2" }, { " I -4 -2c", 120, "", "I_-4_c_2" }, { " I -4 2", 121, "", "I_-4_2_m" }, { " I -4 2bw", 122, "", "I_-4_2_d" }, { "-P 4 2", 123, "", "P_4/m_m_m" }, { "-P 4 2c", 124, "", "P_4/m_c_c" }, { " P 4 2 -1ab", 125, "1", "P_4/n_b_m" }, { "-P 4a 2b", 125, "2", "P_4/n_b_m" }, { " P 4 2 -1n", 126, "1", "P_4/n_n_c" }, { "-P 4a 2bc", 126, "2", "P_4/n_n_c" }, { "-P 4 2ab", 127, "", "P_4/m_b_m" }, { "-P 4 2n", 128, "", "P_4/m_n_c" }, { " P 4ab 2ab -1ab", 129, "1", "P_4/n_m_m" }, { "-P 4a 2a", 129, "2", "P_4/n_m_m" }, { " P 4ab 2n -1ab", 130, "1", "P_4/n_c_c" }, { "-P 4a 2ac", 130, "2", "P_4/n_c_c" }, { "-P 4c 2", 131, "", "P_42/m_m_c" }, { "-P 4c 2c", 132, "", "P_42/m_c_m" }, { " P 4n 2c -1n", 133, "1", "P_42/n_b_c" }, { "-P 4ac 2b", 133, "2", "P_42/n_b_c" }, { " P 4n 2 -1n", 134, "1", "P_42/n_n_m" }, { "-P 4ac 2bc", 134, "2", "P_42/n_n_m" }, { "-P 4c 2ab", 135, "", "P_42/m_b_c" }, { "-P 4n 2n", 136, "", "P_42/m_n_m" }, { " P 4n 2n -1n", 137, "1", "P_42/n_m_c" }, { "-P 4ac 2a", 137, "2", "P_42/n_m_c" }, { " P 4n 2ab -1n", 138, "1", "P_42/n_c_m" }, { "-P 4ac 2ac", 138, "2", "P_42/n_c_m" }, { "-I 4 2", 139, "", "I_4/m_m_m" }, { "-I 4 2c", 140, "", "I_4/m_c_m" }, { " I 4bw 2bw -1bw", 141, "1", "I_41/a_m_d" }, { "-I 4bd 2", 141, "2", "I_41/a_m_d" }, { " I 4bw 2aw -1bw", 142, "1", "I_41/a_c_d" }, { "-I 4bd 2c", 142, "2", "I_41/a_c_d" }, { " P 3", 143, "", "P_3" }, { " P 31", 144, "", "P_31" }, { " P 32", 145, "", "P_32" }, { " R 3", 146, "H", "R_3" }, { " P 3*", 146, "R", "R_3" }, { "-P 3", 147, "", "P_-3" }, { "-R 3", 148, "H", "R_-3" }, { "-P 3*", 148, "R", "R_-3" }, { " P 3 2", 149, "", "P_3_1_2" }, { " P 3 2\"", 150, "", "P_3_2_1" }, { " P 31 2c (0 0 1)", 151, "", "P_31_1_2" }, { " P 31 2\"", 152, "", "P_31_2_1" }, { " P 32 2c (0 0 -1)", 153, "", "P_32_1_2" }, { " P 32 2\"", 154, "", "P_32_2_1" }, { " R 3 2\"", 155, "H", "R_32" }, { " P 3* 2", 155, "R", "R_32" }, { " P 3 -2\"", 156, "", "P_3_m_1" }, { " P 3 -2", 157, "", "P_3_1_m" }, { " P 3 -2\"c", 158, "", "P_3_c_1" }, { " P 3 -2c", 159, "", "P_3_1_c" }, { " R 3 -2\"", 160, "H", "R_3_m" }, { " P 3* -2", 160, "R", "R_3_m" }, { " R 3 -2\"c", 161, "H", "R_3_c" }, { " P 3* -2n", 161, "R", "R_3_c" }, { "-P 3 2", 162, "", "P_-3_1_m" }, { "-P 3 2c", 163, "", "P_-3_1_c" }, { "-P 3 2\"", 164, "", "P_-3_m_1" }, { "-P 3 2\"c", 165, "", "P_-3_c_1" }, { "-R 3 2\"", 166, "H", "R_-3_m" }, { "-P 3* 2", 166, "R", "R_-3_m" }, { "-R 3 2\"c", 167, "H", "R_-3_c" }, { "-P 3* 2n", 167, "R", "R_-3_c" }, { " P 6", 168, "", "P_6" }, { " P 61", 169, "", "P_61" }, { " P 65", 170, "", "P_65" }, { " P 62", 171, "", "P_62" }, { " P 64", 172, "", "P_64" }, { " P 6c", 173, "", "P_63" }, { " P -6", 174, "", "P_-6" }, { "-P 6", 175, "", "P_6/m" }, { "-P 6c", 176, "", "P_63/m" }, { " P 6 2", 177, "", "P_6_2_2" }, { " P 61 2 (0 0 -1)", 178, "", "P_61_2_2" }, { " P 65 2 (0 0 1)", 179, "", "P_65_2_2" }, { " P 62 2c (0 0 1)", 180, "", "P_62_2_2" }, { " P 64 2c (0 0 -1)", 181, "", "P_64_2_2" }, { " P 6c 2c", 182, "", "P_63_2_2" }, { " P 6 -2", 183, "", "P_6_m_m" }, { " P 6 -2c", 184, "", "P_6_c_c" }, { " P 6c -2", 185, "", "P_63_c_m" }, { " P 6c -2c", 186, "", "P_63_m_c" }, { " P -6 2", 187, "", "P_-6_m_2" }, { " P -6c 2", 188, "", "P_-6_c_2" }, { " P -6 -2", 189, "", "P_-6_2_m" }, { " P -6c -2c", 190, "", "P_-6_2_c" }, { "-P 6 2", 191, "", "P_6/m_m_m" }, { "-P 6 2c", 192, "", "P_6/m_c_c" }, { "-P 6c 2", 193, "", "P_63/m_c_m" }, { "-P 6c 2c", 194, "", "P_63/m_m_c" }, { " P 2 2 3", 195, "", "P_2_3" }, { " F 2 2 3", 196, "", "F_2_3" }, { " I 2 2 3", 197, "", "I_2_3" }, { " P 2ac 2ab 3", 198, "", "P_21_3" }, { " I 2b 2c 3", 199, "", "I_21_3" }, { "-P 2 2 3", 200, "", "P_m_-3" }, { " P 2 2 3 -1n", 201, "1", "P_n_-3" }, { "-P 2ab 2bc 3", 201, "2", "P_n_-3" }, { "-F 2 2 3", 202, "", "F_m_-3" }, { " F 2 2 3 -1d", 203, "1", "F_d_-3" }, { "-F 2uv 2vw 3", 203, "2", "F_d_-3" }, { "-I 2 2 3", 204, "", "I_m_-3" }, { "-P 2ac 2ab 3", 205, "", "P_a_-3" }, { "-I 2b 2c 3", 206, "", "I_a_-3" }, { " P 4 2 3", 207, "", "P_4_3_2" }, { " P 4n 2 3", 208, "", "P_42_3_2" }, { " F 4 2 3", 209, "", "F_4_3_2" }, { " F 4d 2 3", 210, "", "F_41_3_2" }, { " I 4 2 3", 211, "", "I_4_3_2" }, { " P 4acd 2ab 3", 212, "", "P_43_3_2" }, { " P 4bd 2ab 3", 213, "", "P_41_3_2" }, { " I 4bd 2c 3", 214, "", "I_41_3_2" }, { " P -4 2 3", 215, "", "P_-4_3_m" }, { " F -4 2 3", 216, "", "F_-4_3_m" }, { " I -4 2 3", 217, "", "I_-4_3_m" }, { " P -4n 2 3", 218, "", "P_-4_3_n" }, { " F -4c 2 3", 219, "", "F_-4_3_c" }, { " I -4bd 2c 3", 220, "", "I_-4_3_d" }, { "-P 4 2 3", 221, "", "P_m_-3_m" }, { " P 4 2 3 -1n", 222, "1", "P_n_-3_n" }, { "-P 4a 2bc 3", 222, "2", "P_n_-3_n" }, { "-P 4n 2 3", 223, "", "P_m_-3_n" }, { " P 4n 2 3 -1n", 224, "1", "P_n_-3_m" }, { "-P 4bc 2bc 3", 224, "2", "P_n_-3_m" }, { "-F 4 2 3", 225, "", "F_m_-3_m" }, { "-F 4c 2 3", 226, "", "F_m_-3_c" }, { " F 4d 2 3 -1d", 227, "1", "F_d_-3_m" }, { "-F 4vw 2vw 3", 227, "2", "F_d_-3_m" }, { " F 4d 2 3 -1cd", 228, "1", "F_d_-3_c" }, { "-F 4cvw 2vw 3", 228, "2", "F_d_-3_c" }, { "-I 4 2 3", 229, "", "I_m_-3_m" }, { "-I 4bd 2c 3", 230, "", "I_a_-3_d" }, { NULL, 0, NULL, NULL } }; #endif /* SGCLIB_C__ */ #define Sg_nLoopInv(SgInfo_)\ ((SgInfo_)->Centric == -1 ? 2 : 1) #define InitRotMx(RotMx, diagonal)\ {\ int private_i_;\ for (private_i_ = 0; private_i_ < 9; private_i_++)\ (RotMx)[private_i_] = (private_i_ % 4 ? 0 : diagonal);\ } #define InitSeitzMx(SeitzMx_, diagonal)\ {\ int private_i_;\ for (private_i_ = 0; private_i_ < 12; private_i_++)\ (SeitzMx_)->a[private_i_] = (private_i_ % 4 ? 0 : diagonal);\ } #if defined(SGCLIB_C__) || defined(SGCOREDEF__) #define SpecialSMx_Identity 0x01 #define SpecialSMx_Inversion 0x02 #define SpecialSMx_Transl0 0x04 #endif /* sgclib.c */ void SetSgError(const char *msg); int iModPositive(int ix, int iy); int traceRotMx(const int *RotMx); int deterRotMx(const int *RotMx); void RotMx_t_Vector(int *R_t_V, const int *RotMx, const int *Vector, int FacTr); void RotMxMultiply(int *rmxab, const int *rmxa, const int *rmxb); void RotateRotMx(int *RotMx, const int *RMx, const int *InvRMx); void SeitzMxMultiply(T_RTMx *smxab, const T_RTMx *smxa, const T_RTMx *smxb); void RTMxMultiply(T_RTMx *rtmxab, const T_RTMx *rtmxa, const T_RTMx *rtmxb, int FacAug, int FacTr); void InverseRotMx(const int *RotMx, int *InvRotMx); void InverseRTMx(const T_RTMx *RTMx, T_RTMx *InvRTMx); int IsSMxTransl0(const T_LatticeInfo *LatticeInfo, const int *SeitzMxT); int CompareSeitzMx(const T_LatticeInfo *LatticeInfo, const T_RTMx *SeitzMxA, const T_RTMx *SeitzMxB); int GetRotMxOrder(const int *RotMx); int GetRotMxInfo(const int *RotMx, T_RotMxInfo *RotMxInfo); const T_RotMxInfo *ListOrBufRotMxInfo(const T_SgInfo *SgInfo, int iList, T_RotMxInfo *BufRotMxInfo); int Add2ListSeitzMx(T_SgInfo *SgInfo, const T_RTMx *NewSMx); int AddInversion2ListSeitzMx(T_SgInfo *SgInfo); int AddLatticeTr2ListSeitzMx(T_SgInfo *SgInfo, const T_LatticeInfo *LatticeInfo); int ApplyOriginShift(T_SgInfo *SgInfo); int FindSeitzMx(const T_SgInfo *SgInfo, int Order, int HonorSign, int RefAxis, int DirCode); void InitSgInfo(T_SgInfo *SgInfo); int CompleteSgInfo(T_SgInfo *SgInfo); int CB_SMx(T_RTMx *CSiC, const T_RTMx *CBMx, const T_RTMx *SMx, const T_RTMx *InvCBMx); int TransformSgInfo(const T_SgInfo *SgInfo, const T_RTMx *CBMx, const T_RTMx *InvCBMx, T_SgInfo *BC_SgInfo); /* sgio.c */ const T_TabSgName *FindTabSgNameEntry(const char *UserSgName, int VolLetter); unsigned int SgID_Number(const T_TabSgName *tsgn); int ParseSymXYZ(const char *SymXYZ, T_RTMx *SeitzMx, int FacTr); int ParseHallSymbol(const char *hsym, T_SgInfo *SgInfo); int PrintFullHM_SgName(const T_TabSgName *tsgn, int space, FILE *fpout); void PrintTabSgNameEntry(const T_TabSgName *tsgn, int Style, int space, FILE *fpout); const char *FormatFraction(int nume, int deno, int Decimal, char *Buffer, int SizeBuffer); const char *RTMx2XYZ(const T_RTMx *RTMx, int FacRo, int FacTr, int Decimal, int TrFirst, int Low, const char *Seperator, char *BufferXYZ, int SizeBufferXYZ); void PrintMapleRTMx(const T_RTMx *RTMx, int FacRo, int FacTr, const char *Label, FILE *fpout); void ListSgInfo(const T_SgInfo *SgInfo, int F_XYZ, int F_Verbose, FILE *fpout); /* sgfind.c */ const T_TabSgName *FindReferenceSpaceGroup(T_SgInfo *SgInfo, T_RTMx *CBMx, T_RTMx *InvCBMx); /* sghkl.c */ int IsSysAbsent_hkl(const T_SgInfo *SgInfo, int h, int k, int l, int *TH_Restriction); int BuildEq_hkl(const T_SgInfo *SgInfo, T_Eq_hkl *Eq_hkl, int h, int k, int l); int AreSymEquivalent_hkl(const T_SgInfo *SgInfo, int h1, int k1, int l1, int h2, int k2, int l2); void SetListMin_hkl(const T_SgInfo *SgInfo, int Maxk, int Maxl, int *Minh, int *Mink, int *Minl); int IsSuppressed_hkl(const T_SgInfo *SgInfo, int Minh, int Mink, int Minl, int Maxk, int Maxl, int h, int k, int l); /* sgsi.c */ void MarkLegalOrigins(const T_SgInfo *SgInfo, int *TestField); int Verify_si(int h, int k, int l, const int *TestField); int Is_si(const T_SgInfo *SgInfo, int h, int k, int l); int Set_si(T_SgInfo *SgInfo); void Set_uvw(const T_SgInfo *SgInfo, int h, int k, int l, int *uvw); #endif /* SGINFO_H__ */ gdis-0.90/file_xml.c0000644000175000017500000005606710445461563013017 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include "gdis.h" #include "coords.h" #include "edit.h" #include "file.h" #include "model.h" #include "parse.h" #include "render.h" #include "spatial.h" #include "matrix.h" #include "interface.h" /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /* triggers */ enum { XML_INACTIVE, XML_SYSTEM, XML_SYMMETRY, XML_CRYSTAL, XML_CELL, XML_CORE, XML_SHELL, XML_CELL_A, XML_CELL_B, XML_CELL_C, XML_CELL_ALPHA, XML_CELL_BETA, XML_CELL_GAMMA, XML_WAYPOINT, XML_SPATIAL, XML_VERTEX, XML_PICTURE }; gint xml_context = XML_INACTIVE; struct model_pak *xml_model=NULL; struct core_pak *xml_core=NULL; struct shel_pak *xml_shell=NULL; GHashTable *xml_system_table; /* TEMP - parse diffax sfc data */ void parse_sfc(FILE *fp) { gint i, n; gchar *line, *type, **buff; gdouble *sfc; GSList *list; while ((line = file_read_line(fp))) { type = g_strstrip(g_strndup(line, 6)); if (elem_symbol_test(type)) { /* tokenize everything after the atom type */ buff = tokenize(&line[6], &n); printf("[%s] ", type); list = NULL; for (i=0 ; isginfo.spacename = g_strdup(*(values+i)); } i++; } } /********************************************/ /* start cell reading if we get a full cell */ /********************************************/ void xml_parse_fullcell(const gchar **names, const gchar **values) { gint i; /* process attributes */ i=0; xml_context = XML_INACTIVE; while (*(names+i)) { if (g_ascii_strncasecmp(*(names+i), "dictRef\0", 8) == 0) { if (g_ascii_strncasecmp(*(values+i), "gulp:fullcell\0", 16) == 0) { xml_context = XML_CELL; xml_model->periodic = 3; } if (g_ascii_strncasecmp(*(values+i), "gulp:surface\0", 13) == 0) { xml_context = XML_CELL; xml_model->periodic = 2; } if (g_ascii_strncasecmp(*(values+i), "gulp:polymer\0", 13) == 0) { xml_context = XML_CELL; xml_model->periodic = 1; } } i++; } } /***************************/ /* process cell attributes */ /***************************/ void xml_parse_cell(const gchar **names, const gchar **values) { gint i; g_assert(xml_model != NULL); /* process attributes (if any) */ i=0; while (*(names+i)) { /* TODO - CHECK that the units are angs and degrees */ if (g_ascii_strncasecmp(*(names+i), "dictRef\0", 8) == 0) { /* TODO - split (remove namespace) and check a/b/etc. only? */ /* cell value require the text callback */ if (g_ascii_strncasecmp(*(values+i), "cml:a\0", 6) == 0) xml_context = XML_CELL_A; if (g_ascii_strncasecmp(*(values+i), "cml:b\0", 6) == 0) xml_context = XML_CELL_B; if (g_ascii_strncasecmp(*(values+i), "cml:c\0", 6) == 0) xml_context = XML_CELL_C; if (g_ascii_strncasecmp(*(values+i), "cml:alpha\0", 10) == 0) xml_context = XML_CELL_ALPHA; if (g_ascii_strncasecmp(*(values+i), "cml:beta\0", 9) == 0) xml_context = XML_CELL_BETA; if (g_ascii_strncasecmp(*(values+i), "cml:gamma\0", 10) == 0) xml_context = XML_CELL_GAMMA; } i++; } } /*******************/ /* parse atom info */ /*******************/ void xml_parse_atom(const gchar **names, const gchar **values) { gint i, n; gchar **buff; g_assert(xml_model != NULL); /* init structure */ if (!xml_core) { xml_core = new_core("X", xml_model); xml_model->cores = g_slist_prepend(xml_model->cores, xml_core); } /* process attributes (if any) */ i=0; while (*(names+i)) { if (g_ascii_strncasecmp(*(names+i), "elementType\0", 12) == 0) { /* FIXME - potential overflow bug here, since label is an array */ g_free(xml_core->atom_label); xml_core->atom_label = g_strdup(*(values+i)); core_init(xml_core->atom_label, xml_core, xml_model); } if (g_ascii_strncasecmp(*(names+i), "xyzf", 4) == 0) { buff = tokenize(*(values+i), &n); if (n > 2) { xml_core->x[0] = str_to_float(*(buff+0)); xml_core->x[1] = str_to_float(*(buff+1)); xml_core->x[2] = str_to_float(*(buff+2)); xml_model->fractional = TRUE; } } if (g_ascii_strncasecmp(*(names+i), "xf", 2) == 0) { xml_core->x[0] = str_to_float(*(values+i)); /* FIXME - inefficient to repeat this for all atoms */ /* but may be necessary if every atom is allowed to be cart or fract */ xml_model->fractional = TRUE; } if (g_ascii_strncasecmp(*(names+i), "x3", 2) == 0) { xml_core->x[0] = str_to_float(*(values+i)); /* FIXME - inefficient to repeat this for all atoms */ /* but may be necessary if every atom is allowed to be cart or fract */ xml_model->fractional = FALSE; } if (g_ascii_strncasecmp(*(names+i), "yf", 2) == 0 || g_ascii_strncasecmp(*(names+i), "y3", 2) == 0) { xml_core->x[1] = str_to_float(*(values+i)); } if (g_ascii_strncasecmp(*(names+i), "zf", 2) == 0 || g_ascii_strncasecmp(*(names+i), "z3", 2) == 0) { xml_core->x[2] = str_to_float(*(values+i)); } i++; } } /********************/ /* parse shell info */ /********************/ void xml_parse_shell(const gchar **names, const gchar **values) { gint i, n; gchar **buff; g_assert(xml_model != NULL); g_assert(xml_core != NULL); /* init structure */ if (!xml_shell) { xml_shell = new_shell(xml_core->atom_label, xml_model); xml_model->shels = g_slist_prepend(xml_model->shels, xml_shell); } /* process attributes (if any) */ i=0; while (*(names+i)) { if (g_ascii_strncasecmp(*(names+i), "xyzf", 4) == 0) { buff = tokenize(*(values+i), &n); if (n > 2) { xml_core->x[0] = str_to_float(*(buff+0)); xml_core->x[1] = str_to_float(*(buff+1)); xml_core->x[2] = str_to_float(*(buff+2)); xml_model->fractional = TRUE; } } if (g_ascii_strncasecmp(*(names+i), "xf", 2) == 0) { xml_core->x[0] = str_to_float(*(values+i)); /* FIXME - inefficient to repeat this for all atoms */ /* but may be necessary if every atom is allowed to be cart or fract */ xml_model->fractional = TRUE; } if (g_ascii_strncasecmp(*(names+i), "x3", 2) == 0) { xml_core->x[0] = str_to_float(*(values+i)); /* FIXME - inefficient to repeat this for all atoms */ /* but may be necessary if every atom is allowed to be cart or fract */ xml_model->fractional = FALSE; } if (g_ascii_strncasecmp(*(names+i), "yf", 2) == 0 || g_ascii_strncasecmp(*(names+i), "y3", 2) == 0) { xml_core->x[1] = str_to_float(*(values+i)); } if (g_ascii_strncasecmp(*(names+i), "zf", 2) == 0 || g_ascii_strncasecmp(*(names+i), "z3", 2) == 0) { xml_core->x[2] = str_to_float(*(values+i)); } i++; } } /*******************/ /* spatial parsing */ /*******************/ struct spatial_pak *xml_spatial; /************************/ /* create a new spatial */ /************************/ void xml_parse_spatial(const gchar **names, const gchar **values) { gint i, periodic=-1; g_assert(xml_model != NULL); i=0; while (*(names+i)) { if (g_ascii_strncasecmp(*(names+i), "periodic", 8) == 0) periodic = str_to_float(*(values+i)); /* TODO - more details */ i++; } xml_spatial = spatial_new(NULL, SPATIAL_GENERIC, 0, periodic, xml_model); } /***************************/ /* create camera waypoints */ /***************************/ void xml_parse_waypoint(const gchar **names, const gchar **values) { gint i; struct camera_pak *camera; g_assert(xml_model != NULL); camera = camera_new(); i=0; while (*(names+i)) { if (g_ascii_strncasecmp(*(names+i), "mode", 4) == 0) camera->mode = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "perspective", 11) == 0) camera->perspective = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "fov", 3) == 0) camera->fov = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "zoom", 4) == 0) camera->zoom = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "x0", 2) == 0) camera->x[0] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "x1", 2) == 0) camera->x[1] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "x2", 2) == 0) camera->x[2] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "o0", 2) == 0) camera->o[0] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "o1", 2) == 0) camera->o[1] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "o2", 2) == 0) camera->o[2] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "v0", 2) == 0) camera->v[0] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "v1", 2) == 0) camera->v[1] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "v2", 2) == 0) camera->v[2] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "e0", 2) == 0) camera->e[0] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "e1", 2) == 0) camera->e[1] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "e2", 2) == 0) camera->e[2] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "q0", 2) == 0) camera->q[0] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "q1", 2) == 0) camera->q[1] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "q2", 2) == 0) camera->q[2] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "q3", 2) == 0) camera->q[3] = str_to_float(*(values+i)); i++; } xml_model->waypoint_list = g_slist_prepend(xml_model->waypoint_list, camera); } /********************/ /* populate spatial */ /********************/ void xml_parse_vertex(const gchar **names, const gchar **values) { gint i=0; gdouble x[3], n[3], c[3]; g_assert(xml_spatial != NULL); VEC3SET(x, 0.0, 0.0, 0.0); VEC3SET(n, 0.0, 0.0, 0.0); VEC3SET(c, 0.0, 0.0, 0.0); while (*(names+i)) { if (g_ascii_strncasecmp(*(names+i), "red", 3) == 0) c[0] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "green", 5) == 0) c[1] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "blue", 4) == 0) c[2] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "x3", 2) == 0) x[0] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "y3", 2) == 0) x[1] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "z3", 2) == 0) x[2] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "nx", 2) == 0) n[0] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "ny", 2) == 0) n[1] = str_to_float(*(values+i)); if (g_ascii_strncasecmp(*(names+i), "nz", 2) == 0) n[2] = str_to_float(*(values+i)); i++; } spatial_vnorm_add(x, n, c, xml_spatial); } /****************/ /* process text */ /****************/ void xml_parse_text(GMarkupParseContext *context, const gchar *text, gsize text_len, gpointer user_data, GError **error) { switch (xml_context) { /* specific cell contexts */ case XML_CELL_A: xml_model->pbc[0] = str_to_float(text); /* revert to general cell value context */ xml_context = XML_CELL; break; case XML_CELL_B: xml_model->pbc[1] = str_to_float(text); /* revert to general cell value context */ xml_context = XML_CELL; break; case XML_CELL_C: xml_model->pbc[2] = str_to_float(text); /* revert to general cell value context */ xml_context = XML_CELL; break; case XML_CELL_ALPHA: xml_model->pbc[3] = D2R * str_to_float(text); /* revert to general cell value context */ xml_context = XML_CELL; break; case XML_CELL_BETA: xml_model->pbc[4] = D2R * str_to_float(text); /* revert to general cell value context */ xml_context = XML_CELL; break; case XML_CELL_GAMMA: xml_model->pbc[5] = D2R * str_to_float(text); /* revert to general cell value context */ xml_context = XML_CELL; break; case XML_PICTURE: xml_model->picture_list = g_slist_append(xml_model->picture_list, g_strstrip(g_strdup(text))); break; } } /**************************/ /* element start callback */ /**************************/ void xml_start_element(GMarkupParseContext *context, const gchar *element_name, const gchar **attribute_names, const gchar **attribute_values, gpointer current_model, GError **error) { struct model_pak *model; model = current_model; /* context switching control */ if (g_ascii_strncasecmp(element_name, "system\0", 7) == 0) xml_context = XML_SYSTEM; if (g_ascii_strncasecmp(element_name, "crystal\0", 8) == 0) xml_context = XML_CRYSTAL; if (g_ascii_strncasecmp(element_name, "symmetry\0", 9) == 0) xml_context = XML_SYMMETRY; if (g_ascii_strncasecmp(element_name, "atom\0", 5) == 0) xml_context = XML_CORE; if (g_ascii_strncasecmp(element_name, "particle\0", 9) == 0) xml_context = XML_SHELL; if (g_ascii_strncasecmp(element_name, "spatial\0", 8) == 0) xml_context = XML_SPATIAL; if (g_ascii_strncasecmp(element_name, "vertex\0", 7) == 0) xml_context = XML_VERTEX; if (g_ascii_strncasecmp(element_name, "picture\0", 8) == 0) xml_context = XML_PICTURE; if (g_ascii_strncasecmp(element_name, "waypoint\0", 9) == 0) xml_context = XML_WAYPOINT; /* context attribute parsing */ switch (xml_context) { case XML_SYSTEM: xml_parse_system(attribute_names, attribute_values); return; case XML_CRYSTAL: xml_parse_fullcell(attribute_names, attribute_values); return; case XML_CELL: xml_parse_cell(attribute_names, attribute_values); return; case XML_CORE: xml_parse_atom(attribute_names, attribute_values); return; case XML_SHELL: xml_parse_shell(attribute_names, attribute_values); return; case XML_SYMMETRY: xml_parse_symmetry(attribute_names, attribute_values); return; case XML_SPATIAL: xml_parse_spatial(attribute_names, attribute_values); return; case XML_VERTEX: xml_parse_vertex(attribute_names, attribute_values); return; case XML_WAYPOINT: xml_parse_waypoint(attribute_names, attribute_values); return; } } /************************/ /* element end callback */ /************************/ void xml_end_element(GMarkupParseContext *context, const gchar *element_name, gpointer current_model, GError **error) { /* reset parsing context and related data */ if (g_ascii_strncasecmp(element_name, "system\0", 7) == 0) { /* end of a model - prep? */ if (xml_model->waypoint_list) xml_model->waypoint_list = g_slist_reverse(xml_model->waypoint_list); xml_model = NULL; xml_context = XML_INACTIVE; } if (g_ascii_strncasecmp(element_name, "crystal\0", 8) == 0) { xml_context = XML_INACTIVE; } if (g_ascii_strncasecmp(element_name, "atom\0", 5) == 0) { xml_core = NULL; xml_context = XML_INACTIVE; } if (g_ascii_strncasecmp(element_name, "particle\0", 5) == 0) { xml_shell = NULL; xml_context = XML_CORE; } if (g_ascii_strncasecmp(element_name, "spatial\0", 8) == 0) { xml_context = XML_INACTIVE; xml_spatial->list = g_slist_reverse(xml_spatial->list); xml_spatial = NULL; } if (g_ascii_strncasecmp(element_name, "vertex\0", 7) == 0) xml_context = XML_SPATIAL; if (g_ascii_strncasecmp(element_name, "picture\0", 8) == 0) xml_context = XML_INACTIVE; if (g_ascii_strncasecmp(element_name, "waypoint\0", 9) == 0) xml_context = XML_INACTIVE; } /******************************/ /* read a single model's data */ /******************************/ gint read_xml_frame(FILE *fp, struct model_pak *model) { gchar *line; GMarkupParser xml_parser; GMarkupParseContext *xml_context; GError *error; xml_system_table = g_hash_table_new_full(&g_str_hash, &hash_strcmp, &g_free, NULL); /* TODO - think more about this... */ xml_model = model; /* setup context parse (ie callbacks) */ xml_parser.start_element = &xml_start_element; xml_parser.end_element = &xml_end_element; xml_parser.text = &xml_parse_text; xml_parser.passthrough = NULL; xml_parser.error = NULL; xml_context = g_markup_parse_context_new(&xml_parser, 0, model, NULL); /* read in blocks (lines) of text */ line = file_read_line(fp); while (line) { /* parse the line */ if (!g_markup_parse_context_parse(xml_context, line, strlen(line), &error)) printf("read_xml() : parsing error.\n"); g_free(line); line = file_read_line(fp); } /* cleanup */ if (!g_markup_parse_context_end_parse(xml_context, &error)) printf("read_xml() : errors occurred reading file.\n"); g_markup_parse_context_free(xml_context); g_hash_table_destroy(xml_system_table); return(0); } /*****************************/ /* the main reading function */ /*****************************/ #define DEBUG_READ_XML 0 gint read_xml(gchar *filename, struct model_pak *model) { gint /*i, n,*/ num_models=0; FILE *fp; fp = fopen(filename, "rt"); if (!fp) return(1); /* TODO - store current file position in frame list */ /* TODO - alloc new model pointers for the read */ read_xml_frame(fp, model); num_models++; fclose(fp); #if DEBUG_READ_XML printf("read_xml() : found %d models.\n", num_models); #endif model_prep(model); return(0); } /*****************************/ /* the main writing function */ /*****************************/ gint write_xml(gchar *filename, struct model_pak *model) { gdouble vec[3]; GSList *list, *list2; struct core_pak *core; struct vec_pak *v; struct spatial_pak *spatial; FILE *fp; fp = fopen(filename, "wt"); if (!fp) return(1); fprintf(fp, "\n"); /* periodicity */ if (model->periodic) { switch (model->periodic) { case 1: fprintf(fp, " \n"); break; case 2: fprintf(fp, " \n"); break; default: fprintf(fp, " \n"); break; } fprintf(fp, " %f \n", model->pbc[0]); fprintf(fp, " %f \n", model->pbc[1]); fprintf(fp, " %f \n", model->pbc[2]); fprintf(fp, " %f \n", R2D*model->pbc[3]); fprintf(fp, " %f \n", R2D*model->pbc[4]); fprintf(fp, " %f \n", R2D*model->pbc[5]); fprintf(fp, " \n"); } /* cores */ for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; ARR3SET(vec, core->x); vecmat(model->latmat, vec); /* fprintf(fp, " ", core->atom_label, vec[0], vec[1], vec[2]); */ fprintf(fp, " ", elements[core->atom_code].symbol, vec[0], vec[1], vec[2]); fprintf(fp, "\n"); /* TODO - shells as particles */ } /* spatial data */ for (list=model->spatial ; list ; list=g_slist_next(list)) { spatial = list->data; fprintf(fp, "\n", spatial->method, spatial->periodic); for (list2=spatial->list ; list2 ; list2=g_slist_next(list2)) { v = list2->data; fprintf(fp, " colour[0], v->colour[1], v->colour[2]); fprintf(fp, " x3=\"%f\" y3=\"%f\" z3=\"%f\"", v->x[0], v->x[1], v->x[2]); fprintf(fp, " nx=\"%f\" ny=\"%f\" nz=\"%f\">\n", v->n[0], v->n[1], v->n[2]); } fprintf(fp, "\n"); } /* camera waypoints */ for (list=model->waypoint_list ; list ; list=g_slist_next(list)) { struct camera_pak *camera = list->data; fprintf(fp, "mode, camera->perspective, camera->fov, camera->zoom); fprintf(fp, "x0=\"%f\" x1=\"%f\" x2=\"%f\"\n",camera->x[0],camera->x[1],camera->x[2]); fprintf(fp, "o0=\"%f\" o1=\"%f\" o2=\"%f\"\n",camera->o[0],camera->o[1],camera->o[2]); fprintf(fp, "v0=\"%f\" v1=\"%f\" v2=\"%f\"\n",camera->v[0],camera->v[1],camera->v[2]); fprintf(fp, "e0=\"%f\" e1=\"%f\" e2=\"%f\"\n",camera->e[0],camera->e[1],camera->e[2]); fprintf(fp, "q0=\"%f\" q1=\"%f\" q2=\"%f\" q3=\"%f\">", camera->q[0], camera->q[1], camera->q[2], camera->q[3]); fprintf(fp, "\n"); } /* pictures */ for (list=model->picture_list ; list ; list=g_slist_next(list)) fprintf(fp, " %s \n", (gchar *) list->data); fprintf(fp, "\n"); fclose(fp); return(0); } gdis-0.90/gui_gms.c0000644000175000017500000006707411066427321012644 0ustar seansean/* Copyright (C) 2003 by Andrew Lloyd Rohl and Sean David Fleming andrew@ivec.org sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include "gdis.h" #include "gamess.h" #include "coords.h" #include "file.h" #include "task.h" #include "grid.h" #include "matrix.h" #include "parse.h" #include "spatial.h" #include "gui_shorts.h" #include "dialog.h" #include "interface.h" #include "opengl.h" #define CONTROL_TAB_LABEL " Control " #define BASIS_TAB_LABEL " Basis Set " #define OPTIMISATION_TAB_LABEL " Optimisation " extern struct basis_pak basis_sets[]; enum { TIMLIM, MWORDS, WIDE_OUTPUT }; struct callback_pak run_control[] = { {"Time limit (minutes) ", TIMLIM}, {"Memory limit (megawords) ", MWORDS}, {NULL, 0} }; enum { TOTAL_Q, MULTIPLICITY }; struct callback_pak econfig[] = { {"Total charge ", TOTAL_Q}, {"Multiplicity ", MULTIPLICITY}, {NULL, 0} }; enum { NUM_P, NUM_D, NUM_F }; struct callback_pak pol_funcs[] = { {"p ", NUM_P}, {"d ", NUM_D}, {"f ", NUM_F}, {NULL, 0} }; enum { HEAVY_DIFFUSE, HYDROGEN_DIFFUSE, NSTEP, GAMESS_TITLE, GAMESS_ENERGY, INPUTFILE, MODELNAME }; extern struct sysenv_pak sysenv; /*********************/ /* run a gamess file */ /*********************/ #define DEBUG_EXEC_GAMESS 0 gint exec_gamess(gchar *input) { gchar *cmd, hostname[256]; /* checks */ if (!sysenv.gamess_path) return(-1); /* NEW - acquire hostname for GAMESS job submission */ /* if (gethostname(hostname, sizeof(hostname))) */ sprintf(hostname, "localhost"); #if __WIN32 { gchar *basename, *bat, *fubar, *fname, *temp, *tmp, *dir, *inp, *out; FILE *fp; /* setup variables */ basename = parse_strip(input); fname = g_strdup_printf("%s.F05", basename); fubar = g_build_filename(sysenv.gamess_path, "scratch", fname, NULL); temp = g_build_filename(sysenv.gamess_path, "temp", basename, NULL); dir = g_build_filename(sysenv.gamess_path, NULL); inp = g_build_filename(sysenv.cwd, input, NULL); out = g_build_filename(sysenv.cwd, basename, NULL); /* create a batch file to run GAMESS */ bat = gun("bat"); fp = fopen(bat, "wt"); fprintf(fp, "@echo off\n"); fprintf(fp, "echo Running GAMESS using 1 CPU, job: %s\n", input); /* remove old crap in the temp directory */ fprintf(fp, "del %s.*\n", temp); /* put the input file in the scratch directory */ fprintf(fp, "copy \"%s\" \"%s\"\n", inp, fubar); /* run the execution script */ fprintf(fp, "cd %s\n", sysenv.gamess_path); fprintf(fp, "csh -f runscript.csh %s 04 1 %s %s > \"%s.gmot\"\n", basename, dir, hostname, out); fprintf(fp, "echo GAMESS job completed\n"); fclose(fp); tmp = g_build_filename(sysenv.cwd, bat, NULL); cmd = g_strdup_printf("\"%s\"", tmp); g_free(basename); g_free(fname); g_free(fubar); g_free(temp); g_free(tmp); g_free(inp); g_free(out); g_free(bat); } #else cmd = g_strdup_printf("%s/%s %s", sysenv.gamess_path, sysenv.gamess_exe, input); #endif #if DEBUG_EXEC_GAMESS printf("executing: [%s]\n",cmd); #else task_sync(cmd); #endif g_free(cmd); return(0); } /*****************************/ /* execute a gamess run (task) */ /*****************************/ #define DEBUG_EXEC_GAMESS_TASK 0 void exec_gamess_task(struct model_pak *model) { gchar *out; /* construct output filename */ g_free(model->gamess.out_file); out = parse_extension_set(model->gamess.temp_file, "gmot"); model->gamess.out_file = g_build_filename(sysenv.cwd, out, NULL); g_free(out); #if __WIN32 /* out = g_strdup_printf("\"%s\"", model->gamess.out_file); */ out = g_shell_quote(model->gamess.out_file); g_free(model->gamess.out_file); model->gamess.out_file = out; #endif /* save input file and execute */ file_save_as(model->gamess.temp_file, model); exec_gamess(model->gamess.temp_file); } /*****************************/ /* process a gamess run (task) */ /*****************************/ #define DEBUG_PROC_GAMESS 0 void proc_gamess_task(gpointer ptr) { gchar *filename; GString *line; struct model_pak *data; /* TODO - model locking (moldel_ptr RO/RW etc) to prevent screw ups */ g_return_if_fail(ptr != NULL); data = ptr; /* win32 fix - which can't make up its mind if it wants to quote or not */ filename = g_shell_unquote(data->gamess.out_file, NULL); if (!g_file_test(filename, G_FILE_TEST_EXISTS)) { printf("Missing output file [%s]\n", filename); return; } if (data->gamess.run_type < GMS_OPTIMIZE && !data->animation) { /* same model (ie with current energetics dialog) so update */ file_load(filename, data); /* update energy (TODO - only if successful) */ line = g_string_new(NULL); if (data->gamess.have_energy) g_string_sprintf(line,"%f",data->gamess.energy); else g_string_sprintf(line, "not yet calculated"); /* is there a dialog entry to be updated? */ if (GTK_IS_ENTRY(data->gamess.energy_entry)) gtk_entry_set_text(GTK_ENTRY(data->gamess.energy_entry), line->str); g_string_free(line, TRUE); } else { /* TODO - make it possile to get dialog data by request */ /* so that we can check if a dialog exsits to be updated */ /* get new coords */ /* create new model for the minimized result */ file_load(filename, NULL); } g_free(filename); redraw_canvas(ALL); } /*************************************************/ /* controls the use of GAMESS to optimise coords */ /*************************************************/ #define DEBUG_RUN_GAMESS 0 void gui_gamess_task(GtkWidget *w, struct model_pak *data) { /* checks */ g_return_if_fail(data != NULL); if (!sysenv.gamess_path) { gui_text_show(ERROR, "GAMESS executable was not found.\n"); return; } #if DEBUG_RUN_GAMESS printf("output file: %s\n", data->gamess.out_file); #endif task_new("Gamess", &exec_gamess_task, data, &proc_gamess_task, data, data); } /*********************************/ /* GAMESS execution type toggles */ /*********************************/ void gamess_exe_run(struct model_pak *mdata) { mdata->gamess.exe_type = GMS_RUN; } void gamess_exe_check(struct model_pak *mdata) { mdata->gamess.exe_type = GMS_CHECK; } void gamess_exe_debug(struct model_pak *mdata) { mdata->gamess.exe_type = GMS_DEBUG; } /***************************/ /* GAMESS run type toggles */ /***************************/ void gamess_run_single(struct model_pak *data) { data->gamess.run_type = GMS_ENERGY; } void gamess_run_gradient(struct model_pak *data) { data->gamess.run_type = GMS_GRADIENT; } void gamess_run_hessian(struct model_pak *data) { data->gamess.run_type = GMS_HESSIAN; } void gamess_run_optimize(struct model_pak *data) { data->gamess.run_type = GMS_OPTIMIZE; } /***************************/ /* GAMESS SCF type toggles */ /***************************/ void gamess_scf_rhf(struct model_pak *data) { data->gamess.scf_type = GMS_RHF; } void gamess_scf_uhf(struct model_pak *data) { data->gamess.scf_type = GMS_UHF; } void gamess_scf_rohf(struct model_pak *data) { data->gamess.scf_type = GMS_ROHF; } void gamess_units_angs(struct model_pak *data) { data->gamess.units = GMS_ANGS; } void gamess_units_bohr(struct model_pak *data) { data->gamess.units = GMS_BOHR; } void gamess_optimise_qa(struct model_pak *data) { data->gamess.opt_type = GMS_QA; } void gamess_optimise_nr(struct model_pak *data) { data->gamess.opt_type = GMS_NR; } void gamess_optimise_rfo(struct model_pak *data) { data->gamess.opt_type = GMS_RFO; } void gamess_optimise_schlegel(struct model_pak *data) { data->gamess.opt_type = GMS_SCHLEGEL; } void event_destroy_user_data_from_object(GtkObject *object, gpointer user_data) { g_free(user_data); } /*****************************/ /* basis set selection event */ /*****************************/ void basis_selected(GtkWidget *w, struct model_pak *model) { gint i=0; const gchar *label; label = gtk_entry_get_text(GTK_ENTRY(w)); while (basis_sets[i].label) { if (g_strcasecmp(label, basis_sets[i].label) == 0) { model->gamess.basis = basis_sets[i].basis; model->gamess.ngauss = basis_sets[i].ngauss; } i++; } } /******************************/ /* functional selection event */ /******************************/ void gms_functional_select(GtkWidget *w, struct model_pak *model) { const gchar *label; label = gtk_entry_get_text(GTK_ENTRY(w)); if (g_strncasecmp(label, "svwn", 4) == 0) { model->gamess.dft_functional = SVWN; return; } if (g_strncasecmp(label, "blyp", 4) == 0) { model->gamess.dft_functional = BLYP; return; } if (g_strncasecmp(label, "b3ly", 4) == 0) { model->gamess.dft_functional = B3LYP; return; } } /***************************/ /* text handling callbacks */ /***************************/ gint event_pol_text_fields(GtkWidget *w, gpointer *obj) { gint id; struct model_pak *data; /* checks */ g_return_val_if_fail(w != NULL, FALSE); /* ascertain type of modification required */ id = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(w), "id")); data = sysenv.active_model; sysenv.moving = FALSE; switch(id) { case GAMESS_TITLE: g_free(data->gamess.title); data->gamess.title = g_strdup(gtk_entry_get_text(GTK_ENTRY(w))); break; case INPUTFILE: g_free(data->gamess.temp_file); data->gamess.temp_file = g_strdup(gtk_entry_get_text(GTK_ENTRY(w))); break; } return(FALSE); } /*********************************/ /* GAMESS job setup/results page */ /*********************************/ void gui_gamess_widget(GtkWidget *box, struct model_pak *data) { gint i, j; GString *line; GList *list; GtkWidget *hbox, *vbox, *vbox1, *vbox2, *vbox3, *vbox4, *page; GtkWidget *frame, *button, *label, *entry, *notebook; GtkWidget *combo; /* checks */ g_assert(box != NULL); g_assert(data != NULL); /* string manipulation scratchpad */ line = g_string_new(NULL); /* create notebook */ notebook = gtk_notebook_new(); gtk_notebook_set_tab_pos(GTK_NOTEBOOK(notebook), GTK_POS_TOP); gtk_container_add(GTK_CONTAINER(box), notebook); gtk_notebook_set_show_border(GTK_NOTEBOOK(notebook), FALSE); /* Control page */ page = gtk_vbox_new(FALSE, 0); label = gtk_label_new (CONTROL_TAB_LABEL); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); hbox = gtk_hbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(page), hbox); /* split panel */ vbox1 = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(hbox), vbox1, FALSE, FALSE, 0); vbox2 = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(hbox), vbox2, FALSE, FALSE, 0); vbox3 = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(hbox), vbox3, FALSE, FALSE, 0); /* frame for execution type */ frame = gtk_frame_new("Execution type"); gtk_box_pack_start(GTK_BOX(vbox1), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); /* radio buttons for execution type */ new_radio_group(0, vbox, TT); button = add_radio_button("Run", (gpointer) gamess_exe_run, data); if (data->gamess.exe_type == GMS_RUN) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Check", (gpointer) gamess_exe_check, data); if (data->gamess.exe_type == GMS_CHECK) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Debug", (gpointer) gamess_exe_debug, data); if (data->gamess.exe_type == GMS_DEBUG) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* frame for run type */ frame = gtk_frame_new("Run type"); gtk_box_pack_start(GTK_BOX(vbox1), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); /* radio buttons for run type */ new_radio_group(0, vbox, TT); button = add_radio_button("Single point", (gpointer) gamess_run_single, data); if (data->gamess.run_type == GMS_ENERGY) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Gradient", (gpointer) gamess_run_gradient, data); if (data->gamess.run_type == GMS_GRADIENT) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Hessian", (gpointer) gamess_run_hessian, data); if (data->gamess.run_type == GMS_HESSIAN) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Optimize", (gpointer) gamess_run_optimize, data); if (data->gamess.run_type == GMS_OPTIMIZE) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* frame for SCF type */ frame = gtk_frame_new("SCF type"); gtk_box_pack_start(GTK_BOX(vbox2), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); /* radio buttons for SCF type */ new_radio_group(0, vbox, TT); button = add_radio_button("RHF", (gpointer) gamess_scf_rhf, data); if (data->gamess.scf_type == GMS_RHF) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("UHF", (gpointer) gamess_scf_uhf, data); if (data->gamess.scf_type == GMS_UHF) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("ROHF", (gpointer) gamess_scf_rohf, data); if (data->gamess.scf_type == GMS_ROHF) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* frame for input units */ frame = gtk_frame_new("Input units"); gtk_box_pack_start(GTK_BOX(vbox2), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); /* radio buttons for SCF type */ new_radio_group(0, vbox, TT); button = add_radio_button("Angstrom", (gpointer) gamess_units_angs, data); if (data->gamess.units == GMS_ANGS) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Bohr", (gpointer) gamess_units_bohr, data); if (data->gamess.units == GMS_BOHR) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* frame for SCF options */ frame = gtk_frame_new("SCF options"); gtk_box_pack_start(GTK_BOX(vbox2), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_spin("Maximum iterations", &data->gamess.maxit, 1, 150, 1, NULL, NULL, vbox); /* frame for DFT */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(vbox3), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); vbox4 = gtk_vbox_new(TRUE, 0); /* TODO - set sensitive stuff -> candidate for a short cut */ gui_direct_check("DFT calculation", &data->gamess.dft, gui_checkbox_refresh, vbox4, vbox); gtk_box_pack_start(GTK_BOX(vbox), vbox4, FALSE, FALSE, 0); /* TODO - the pulldown list is another candidate for a short cut */ hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(vbox4), hbox, FALSE, FALSE, 0); label = gtk_label_new("Functional"); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); list = NULL; list = g_list_append(list, "SVWN (LDA)"); list = g_list_append(list, "BLYP"); list = g_list_append(list, "B3LYP"); combo = gtk_combo_new(); gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(combo)->entry), FALSE); gtk_combo_set_popdown_strings(GTK_COMBO(combo), list); gtk_box_pack_start(GTK_BOX(hbox), combo, FALSE, FALSE, 0); g_signal_connect(GTK_OBJECT(GTK_COMBO(combo)->entry), "changed", GTK_SIGNAL_FUNC(gms_functional_select), data); /* frame for time, memory and output */ frame = gtk_frame_new("Run control"); gtk_box_pack_start(GTK_BOX(vbox3), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); /* Add spinners */ i=0; while (run_control[i].label) { switch (run_control[i].id) { case TIMLIM: gui_direct_spin(run_control[i].label, &data->gamess.time_limit, 0, 30000, 10, NULL, NULL, vbox); break; case MWORDS: gui_direct_spin(run_control[i].label, &data->gamess.mwords, 1, 150, 1, NULL, NULL, vbox); break; default: g_assert_not_reached(); } i++; } /* wide output button */ gui_direct_check("Wide output", &data->gamess.wide_output, NULL, NULL, vbox); /* frame for charge and multiplicity */ frame = gtk_frame_new("Electronic configuration"); gtk_box_pack_start(GTK_BOX(vbox3), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); /* Add spinners */ i=0; while (econfig[i].label) { switch (econfig[i].id) { case TOTAL_Q: gui_direct_spin(econfig[i].label, &data->gamess.total_charge, -5, 5, 1, NULL, NULL, vbox); break; case MULTIPLICITY: gui_direct_spin(econfig[i].label, &data->gamess.multiplicity, 1, 5, 1, NULL, NULL, vbox); break; default: g_assert_not_reached(); } i++; } /* basis set page */ page = gtk_vbox_new(FALSE,0); label = gtk_label_new (BASIS_TAB_LABEL); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(page), hbox, FALSE, FALSE, 0); /* split panel */ vbox1 = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(hbox), vbox1, TRUE, TRUE, 0); vbox2 = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(hbox), vbox2, FALSE, FALSE, 0); /* frame for basis set */ frame = gtk_frame_new("Basis set"); gtk_box_pack_start(GTK_BOX(vbox1), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); j = -1; i = 0; list = NULL; while (basis_sets[i].label) { list = g_list_append(list, basis_sets[i].label); if ((basis_sets[i].basis == data->gamess.basis) && (basis_sets[i].ngauss == data->gamess.ngauss)) j = i; i++; } combo = gtk_combo_new(); gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(combo)->entry), FALSE); gtk_combo_set_popdown_strings(GTK_COMBO(combo), list); gtk_box_pack_start(GTK_BOX(vbox), combo, FALSE, FALSE, 0); /* NB: set text BEFORE the changed event is connected */ if (j >= 0) gtk_entry_set_text(GTK_ENTRY(GTK_COMBO(combo)->entry), basis_sets[j].label); g_signal_connect(GTK_OBJECT(GTK_COMBO(combo)->entry), "changed", GTK_SIGNAL_FUNC(basis_selected), data); /* frame for polarization functions set */ frame = gtk_frame_new("Polarization functions"); gtk_box_pack_start(GTK_BOX(vbox2), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); /* Add spinners */ i=0; while (pol_funcs[i].label) { switch (pol_funcs[i].id) { case NUM_P: gui_direct_spin(pol_funcs[i].label, &data->gamess.num_p, 0, 3, 1, NULL, NULL, vbox); break; case NUM_D: gui_direct_spin(pol_funcs[i].label, &data->gamess.num_d, 0, 3, 1, NULL, NULL, vbox); break; case NUM_F: gui_direct_spin(pol_funcs[i].label, &data->gamess.num_f, 0, 1, 1, NULL, NULL, vbox); break; default: g_assert_not_reached(); } i++; } /* frame for polarization functions set */ frame = gtk_frame_new("Diffuse functions"); gtk_box_pack_start(GTK_BOX(vbox2), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_check("Heavy atoms (s & p)", &data->gamess.have_heavy_diffuse, NULL, NULL, vbox); gui_direct_check("Hydrogen (s only)", &data->gamess.have_hydrogen_diffuse, NULL, NULL, vbox); /* frame for optimisation settings */ page = gtk_vbox_new(FALSE,0); label = gtk_label_new (OPTIMISATION_TAB_LABEL); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(page), hbox, FALSE, FALSE, 0); /* split panel */ vbox1 = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(hbox), vbox1, FALSE, FALSE, 0); vbox2 = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(hbox), vbox2, FALSE, FALSE, 0); /* optimiser to use */ frame = gtk_frame_new("Optimiser"); gtk_box_pack_start(GTK_BOX(vbox1), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); /* radio buttons for run type */ new_radio_group(0, vbox, TT); button = add_radio_button("Quadratic approximation", (gpointer) gamess_optimise_qa, data); if (data->gamess.opt_type == GMS_QA) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Newton-Raphson", (gpointer) gamess_optimise_nr, data); if (data->gamess.opt_type == GMS_NR) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("RFO", (gpointer) gamess_optimise_rfo, data); if (data->gamess.opt_type == GMS_RFO) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Quasi-NR", (gpointer) gamess_optimise_schlegel, data); if (data->gamess.opt_type == GMS_SCHLEGEL) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* frame for optimization cycles */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(vbox1), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); /* optimization cycles */ hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); gui_direct_spin("Maximum cycles", &data->gamess.nstep, 0, 500, 10, NULL, NULL, hbox); /* setup some gulp file name defaults */ if (g_ascii_strncasecmp(data->gamess.temp_file, "none", 4) == 0) { g_free(data->gamess.temp_file); data->gamess.temp_file = g_strdup_printf("%s.inp", data->basename); } if (g_ascii_strncasecmp(data->gamess.out_file, "none", 4) == 0) { g_free(data->gamess.out_file); data->gamess.out_file = g_strdup_printf("%s.gmot", data->basename); } frame = gtk_frame_new("Files"); gtk_box_pack_start(GTK_BOX(box),frame,FALSE,FALSE,0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); hbox = gtk_hbox_new(FALSE, 0); gtk_container_add (GTK_CONTAINER(frame),hbox); gtk_container_set_border_width(GTK_CONTAINER(hbox), PANEL_SPACING); /* left vbox */ vbox = gtk_vbox_new(TRUE, 2); gtk_box_pack_start (GTK_BOX (hbox), vbox, TRUE, TRUE, 0); /* GAMESS input filename */ label = gtk_label_new(" Job input file "); gtk_box_pack_start (GTK_BOX (vbox), label, TRUE, TRUE, 0); /* right vbox */ vbox = gtk_vbox_new(TRUE, 2); gtk_box_pack_start (GTK_BOX (hbox), vbox, TRUE, TRUE, 0); /* temporary input */ entry = gtk_entry_new_with_max_length(LINELEN); gtk_entry_set_text(GTK_ENTRY(entry), data->gamess.temp_file); gtk_box_pack_start(GTK_BOX(vbox), entry, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT (entry), "changed", GTK_SIGNAL_FUNC (event_pol_text_fields), NULL); g_object_set_data(G_OBJECT(entry), "id", (gpointer) INPUTFILE); /* details */ frame = gtk_frame_new("Details"); gtk_box_pack_start(GTK_BOX(box),frame,FALSE,FALSE,0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); hbox = gtk_hbox_new(FALSE, 0); gtk_container_add (GTK_CONTAINER(frame),hbox); /* left vbox */ vbox = gtk_vbox_new(TRUE, 2); gtk_box_pack_start (GTK_BOX (hbox), vbox, TRUE, TRUE, 0); if (g_ascii_strncasecmp(data->gamess.title, "none", 4) == 0) { g_free(data->gamess.title); data->gamess.title = g_strdup(data->basename); } /* temporary GAMESS input filename */ label = gtk_label_new("Title"); gtk_box_pack_start (GTK_BOX (vbox), label, TRUE, TRUE, 0); label = gtk_label_new("Total energy (Hartrees)"); gtk_box_pack_start (GTK_BOX (vbox), label, TRUE, TRUE, 0); /* right vbox */ vbox = gtk_vbox_new(TRUE, 2); gtk_box_pack_start (GTK_BOX (hbox), vbox, TRUE, TRUE, 0); entry = gtk_entry_new_with_max_length(LINELEN); gtk_entry_set_text(GTK_ENTRY(entry), data->gamess.title); gtk_box_pack_start (GTK_BOX (vbox), entry, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT (entry), "changed", GTK_SIGNAL_FUNC (event_pol_text_fields), NULL); g_object_set_data(G_OBJECT(entry), "id", (gpointer) GAMESS_TITLE); data->gamess.energy_entry = gtk_entry_new_with_max_length(LINELEN); if (data->gamess.have_energy) g_string_sprintf(line,"%f",data->gamess.energy); else g_string_sprintf(line,"not yet calculated"); gtk_entry_set_text(GTK_ENTRY(data->gamess.energy_entry),line->str); gtk_box_pack_start (GTK_BOX (vbox), data->gamess.energy_entry, TRUE, TRUE, 0); gtk_entry_set_editable(GTK_ENTRY(data->gamess.energy_entry), FALSE); /* done */ gtk_widget_show_all(box); if (data->gamess.dft) gtk_widget_set_sensitive(vbox4, TRUE); else gtk_widget_set_sensitive(vbox4, FALSE); g_string_free(line, TRUE); } /***********************/ /* grid job submission */ /***********************/ void gui_gms_grid_submit(GtkWidget *w, gpointer data) { #ifdef WITH_GRISU gchar *tmp; struct model_pak *model = data; struct grid_pak *grid; g_assert(model != NULL); grid = grid_new(); grid->local_cwd = g_strdup(sysenv.cwd); grid->local_input = g_strdup(model->gamess.temp_file); /* immediately write to disk so job is preserved even if user deletes model */ tmp = g_build_filename(grid->local_cwd, grid->local_input, NULL); write_gms(tmp, model); g_free(tmp); /* TODO - deal with gamess vs gamess-us problems that could arise */ if (!grid_job_submit("gamess-us", grid)) { /* TODO - failed message */ grid_free(grid); } #endif } /****************************************/ /* run the approriate energetics method */ /****************************************/ void gamess_execute(GtkWidget *w, gpointer data) { struct model_pak *model = data; g_assert(model != NULL); gui_gamess_task(NULL, model); } /****************************/ /* GAMESS energetics dialog */ /****************************/ void gamess_dialog(void) { gpointer dialog; GtkWidget *window, *frame, *vbox; struct model_pak *model; model = sysenv.active_model; if (!model) return; /* request an energetics dialog */ dialog = dialog_request(GAMESS, "GAMESS configuration", NULL, NULL, NULL); if (!dialog) return; window = dialog_window(dialog); frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(FALSE,0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_gamess_widget(vbox, model); /* terminating button */ gui_stock_button(GTK_STOCK_EXECUTE, gamess_execute, model, GTK_DIALOG(window)->action_area); #ifdef WITH_GRISU gui_icon_button(GTK_STOCK_APPLY, "Grid Submit", gui_gms_grid_submit, model, GTK_DIALOG(window)->action_area); #endif gui_stock_button(GTK_STOCK_CLOSE, dialog_destroy, dialog, GTK_DIALOG(window)->action_area); gtk_widget_show_all(window); } gdis-0.90/file_gmf.c0000644000175000017500000003540511036532763012757 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include "gdis.h" #include "coords.h" #include "file.h" #include "parse.h" #include "morph.h" #include "model.h" #include "matrix.h" #include "quaternion.h" #include "render.h" #include "space.h" #include "surface.h" #include "gui_shorts.h" #include "interface.h" #define DEBUG_MORE 0 #define MAX_KEYS 15 /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /************************/ /* save morphology data */ /************************/ gint write_gmf(gchar *filename, struct model_pak *data) { GSList *plist, *slist; struct plane_pak *pdata; struct shift_pak *sdata; FILE *fp; g_return_val_if_fail(data != NULL, 1); /* TODO - flag visible / option to save or not? */ /* open for saving */ fp = fopen(filename,"wt"); if (!fp) return(2); /* header */ fprintf(fp, "\n title: "); gdis_blurb(fp); fprintf(fp, " name: %s\n", data->basename); fprintf(fp, " space: %s\n", data->sginfo.spacename); fprintf(fp, " cell: %f %f %f %f %f %f\n", data->pbc[0], data->pbc[1], data->pbc[2], 180.0*data->pbc[3]/PI, 180.0*data->pbc[4]/PI, 180.0*data->pbc[5]/PI); /* default display type */ switch(data->morph_type) { case EQUIL_UN: fprintf(fp, " morph: unrelaxed equilibrium\n\n"); break; case EQUIL_RE: fprintf(fp, " morph: relaxed equilibrium\n\n"); break; case GROWTH_UN: fprintf(fp, " morph: unrelaxed growth\n\n"); break; case GROWTH_RE: fprintf(fp, " morph: relaxed growth\n\n"); break; default: fprintf(fp, " morph: Dhkl based\n\n"); break; } /* print out the planes */ for (plist=data->planes ; plist ; plist=g_slist_next(plist)) { pdata = plist->data; if (!pdata->primary) continue; fprintf(fp,"miller: %3d %3d %3d\n", pdata->index[0], pdata->index[1], pdata->index[2]); for (slist=pdata->shifts ; slist ; slist=g_slist_next(slist)) { sdata = (struct shift_pak *) slist->data; fprintf(fp, " %8.6f %2d %2d %10.4f %10.4f %10.4f %10.4f %g\n", sdata->shift, sdata->region[0], sdata->region[1], sdata->esurf[0], sdata->eatt[0], sdata->esurf[1], sdata->eatt[1], sdata->gnorm); } } fclose(fp); return(0); } /******************************************/ /* load miller & normal lengths from file */ /******************************************/ /* FIXME - when importing planes, this can mess up the periodic bond calc */ #define DEBUG_LOAD_PLANES 0 gint load_planes(gchar *filename, struct model_pak *data) { gint h, k, l, num_tokens; gint cflag=FALSE, sflag=FALSE, gflag=FALSE; gdouble m[3]; gchar **buff; GSList *list, *new_planes; struct plane_pak *plane=NULL; struct shift_pak *shift=NULL; FILE *fp; fp = fopen(filename, "rt"); if (!fp) return(1); /* get next line */ new_planes = NULL; for (;;) { buff = get_tokenized_line(fp, &num_tokens); if (!buff) break; /* NB: only update space/cell etc. data if this call did */ /* not originate from an import planes call */ if (data->id == MORPH) { /* cell parameters */ if (g_ascii_strncasecmp(*buff,"cell",4) == 0) { if (num_tokens >= 7) { cflag=TRUE; data->pbc[0] = str_to_float(*(buff+1)); data->pbc[1] = str_to_float(*(buff+2)); data->pbc[2] = str_to_float(*(buff+3)); data->pbc[3] = PI*str_to_float(*(buff+4))/180.0; data->pbc[4] = PI*str_to_float(*(buff+5))/180.0; data->pbc[5] = PI*str_to_float(*(buff+6))/180.0; /* compute direct & reciprocal lattices */ /* NB: enables fn_make_plane() to correctly compute Dhkl */ matrix_lattice_init(data); } else printf("load_planes() error: bad cell line.\n"); } /* space group */ if (g_ascii_strncasecmp(*buff,"space",5) == 0) { sflag=TRUE; data->sginfo.spacename = g_strjoinv(" ", buff+1); data->sginfo.spacenum = 0; } /* default morphology type */ if (g_ascii_strncasecmp(*buff, "morph", 5) == 0) { if (num_tokens >= 3) { if (g_ascii_strncasecmp(*(buff+1), "unrelaxed", 9) == 0) { if (g_ascii_strncasecmp(*(buff+2), "equil", 5) == 0) data->morph_type = EQUIL_UN; if (g_ascii_strncasecmp(*(buff+2), "growth", 6) == 0) data->morph_type = GROWTH_UN; } if (g_ascii_strncasecmp(*(buff+1), "relaxed", 7) == 0) { if (g_ascii_strncasecmp(*(buff+2), "equil", 5) == 0) data->morph_type = EQUIL_RE; if (g_ascii_strncasecmp(*(buff+2), "growth", 6) == 0) data->morph_type = GROWTH_RE; } } else printf("load_planes() error: bad type line.\n"); } } /* process miller line */ if (g_ascii_strncasecmp(*buff,"miller",6) == 0) { /* init space group (latmat? - if so, remove the make_latmat() in cell parse) */ if (cflag && sflag) { if (!gflag) { if (space_lookup(data)) printf("Error in space group lookup.\n"); gflag = TRUE; } } else { if (data->id == MORPH) { printf("load_planes() error: miller encountered before space or cell.\n"); return(2); } } if (num_tokens >= 4) { h = (gint) str_to_float(*(buff+1)); k = (gint) str_to_float(*(buff+2)); l = (gint) str_to_float(*(buff+3)); #if DEBUG_LOAD_PLANES printf("read plane: %d %d %d\n", h, k, l); #endif VEC3SET(m, h, k, l); plane = plane_find(m, data); if (!plane) { plane = plane_new(m, data); if (plane) new_planes = g_slist_prepend(new_planes, plane); } } } /* potential data */ if (num_tokens >= 8 && plane) { /* NB: use create_shift(), as it sets some important defaults */ shift = shift_new(0.0); if (shift) { shift->shift = str_to_float(*(buff+0)); shift->region[0] = str_to_float(*(buff+1)); shift->region[1] = str_to_float(*(buff+2)); shift->esurf[0] = str_to_float(*(buff+3)); shift->eatt[0] = str_to_float(*(buff+4)); shift->esurf[1] = str_to_float(*(buff+5)); shift->eatt[1] = str_to_float(*(buff+6)); shift->gnorm = str_to_float(*(buff+7)); #if DEBUG_LOAD_PLANES printf("adding shift: %f\n", shift->shift); #endif /* append to preserve order (eg import on existing plane set) */ plane->shifts = g_slist_append(plane->shifts, shift); } } g_strfreev(buff); } data->planes = g_slist_concat(data->planes, g_slist_reverse(new_planes)); /* compute dhkl's for the plane's list */ for (list=data->planes ; list ; list=g_slist_next(list)) { plane = list->data; /* create default shift if none found */ if (!plane->shifts) { shift = shift_new(0.0); if (shift) plane->shifts = g_slist_append(plane->shifts, shift); } /* get best energy for the plane */ update_plane_energy(plane, data); } /* compute symmetry related faces */ surf_symmetry_generate(data); fclose(fp); return(0); } /*********************************************/ /* determine if two hkl faces are equivalent */ /*********************************************/ #define DEBUG_FACET_EQUIV 0 gint facet_equiv(struct model_pak *data, gint *f1, gint *f2) { gint i, index[3]; gdouble vec[3]; /* NB: Dhkl test is just plain wrong, some symmetry related faces */ /* will have exactly the same Dhkl and be different surfaces */ #if DEBUG_FACET_EQUIV printf("[%d %d %d] and (%d %d %d)", f1[0], f1[1], f1[2], f2[0], f2[1], f2[2]); printf(" [%.10f]\n", fabs(d2-d1)); #endif /* symmetry test */ if (data->sginfo.spacenum > 0) { for (i=0 ; isginfo.order ; i++) { ARR3SET(vec, f1); vecmat(*(data->sginfo.matrix+i), vec); ARR3SET(index, vec); #if DEBUG_FACET_EQUIV P3VEC("op -> ", vec); #endif if (index[0] == *f2 && index[1] == *(f2+1) && index[2] == *(f2+2)) { #if DEBUG_FACET_EQUIV printf(" *** equivalent (symop %d).\n", i); #endif return(TRUE); } } } else printf("No space group information.\n"); #if DEBUG_FACET_EQUIV printf("not equivalent.\n"); #endif return(FALSE); } /***********************************/ /* get a list of equivalent facets */ /***********************************/ #define DEBUG_GET_FACET_EQUIV 0 GSList *get_facet_equiv(struct model_pak *data, gint *f1) { gint i, flag, *f2, index[3]; gdouble d1, d2, vec[3]; GSList *flist=NULL, *list=NULL; g_return_val_if_fail(data != NULL, NULL); g_return_val_if_fail(f1 != NULL, NULL); /* NEW */ ARR3SET(vec, f1); vecmat(data->rlatmat, vec); d1 = 1.0/VEC3MAG(vec); #if DEBUG_GET_FACET_EQUIV printf("search for equiv faces to (%d %d %d) (Dhkl = %f)\n", f1[0], f1[1], f1[2], d1); #endif /* add the supplied face to the list (needed to eliminate repetitions) */ f2 = g_malloc(3*sizeof(gint)); ARR3SET(f2, f1); flist = g_slist_prepend(flist, (gpointer) f2); if (data->sginfo.spacenum) { /* skip 1st (trivial) op */ for (i=1 ; isginfo.order ; i++) { /* generate new symmetry related hkl */ ARR3SET(vec, f1); vecmat(*(data->sginfo.matrix+i), vec); ARR3SET(index, vec); /* NEW - weed out symop generated faces with different Dhkl values */ /* FIXME - why does this happen??? */ vecmat(data->rlatmat, vec); d2 = 1.0/VEC3MAG(vec); #if DEBUG_GET_FACET_EQUIV printf("candidate: (%3d %3d %3d) : (Dhkl=%7.4f)", index[0], index[1], index[2], d2); #endif if (fabs(d2-d1) > FRACTION_TOLERANCE) { #if DEBUG_GET_FACET_EQUIV printf("[NO : dhkl mis-match]\n"); #endif continue; } /* add new hkl if not found in the list */ flag = 0; list = flist; while (list != NULL) { f2 = (gint *) list->data; if (index[0] == f2[0] && index[1] == f2[1] && index[2] == f2[2]) { flag++; break; } list = g_slist_next(list); } if (!flag) { f2 = g_malloc(3*sizeof(gint)); ARR3SET(f2, index); flist = g_slist_prepend(flist, f2); #if DEBUG_GET_FACET_EQUIV printf("[YES : symop %d]\n", i); #endif } #if DEBUG_GET_FACET_EQUIV else { printf("[NO : already exists]\n"); } #endif } } else printf("No space group information.\n"); flist = g_slist_reverse(flist); return(flist); } /**************************************/ /* determine if systematically absent */ /**************************************/ #define DEBUG_FACET_ABSENT 0 gint surf_sysabs(struct model_pak *data, gint h, gint k, gint l) { gint i, flag; gint f1[3] /*, f2[3]*/; gdouble dp, dummy, vec[3], df[3]; #if DEBUG_FACET_ABSENT printf("testing %d %d %d\n", h, k, l); #endif /* apply the symmetry matrices (skip identity) */ VEC3SET(f1, h, k, l); for (i=1 ; isginfo.order ; i++) { /* NEW - identity + translation alone is insufficent */ if (matrix_is_identity(*(data->sginfo.matrix+i))) continue; VEC3SET(vec, h, k, l); vecmat(*(data->sginfo.matrix+i), vec); flag = 0; /* not needed - we've expanded all symmetry operations (incl. inversion) */ /* test f1 . m = -f1 */ /* ARR3SET(df, f1); ARR3ADD(df, vec); if (VEC3MAGSQ(df) < FRACTION_TOLERANCE) if (data->sginfo.inversion) flag++; */ /* test f1 . m = f1 */ ARR3SET(df, f1); ARR3SUB(df, vec); if (VEC3MAGSQ(df) < POSITION_TOLERANCE) flag++; if (flag) { #if DEBUG_FACET_ABSENT printf("symop [%d] satisfies 1st absence condition.\n", i); P3MAT("matrix:", *(data->sginfo.matrix+i)); P3VEC("offset:", *(data->sginfo.offset+i)); #endif /* test if = non-integer */ ARR3SET(vec, *(data->sginfo.offset+i)); ARR3MUL(vec, f1); dp = fabs(vec[0] + vec[1] + vec[2]); if (modf(dp, &dummy) > POSITION_TOLERANCE) { #if DEBUG_FACET_ABSENT printf("symop [%d] [%f %f %f] satisfies 2nd absence condition.\n", i, *(*(data->sginfo.offset+i)+0), *(*(data->sginfo.offset+i)+1), *(*(data->sginfo.offset+i)+2)); printf("facet is extinct.\n"); #endif return(TRUE); } } } #if DEBUG_FACET_ABSENT printf(">>> Not absent\n"); #endif return(FALSE); } /***********************************/ /* determine if a plane is visible */ /***********************************/ #define DEBUG_FACET 0 gint facet_visible(struct model_pak *data, struct plane_pak *plane) { gdouble a, norm[3], vec[3]; /* NEW - an edge (2 vertices) is not to be treated as visible */ if (g_slist_length(plane->vertices) < 3) return(FALSE); /* get plane normal */ ARR3SET(norm, plane->norm); VEC3MUL(norm, -1.0); #if DEBUG_FACET printf("facet (%2d%2d%2d), norm: %5.2f,%5.2f,%5.2f " ,plane->index[0] ,plane->index[1] ,plane->index[2] ,norm[0],norm[1],norm[2]); #endif /* absolute viewing vector, determining if visible or not */ camera_view(vec, data->camera); /* got correct facet normal - is it visible? */ a = via(norm,vec,3); if (a < 0.5*G_PI) { #if DEBUG_FACET printf("view: %5.2f,%5.2f,%5.2f (%5.1f) YES\n",vec[0],vec[1],vec[2],180.0*a/PI); #endif return(TRUE); } /* else... */ #if DEBUG_FACET printf("view: %5.2f,%5.2f,%5.2f (%5.1f) NO\n",vec[0],vec[1],vec[2],180.0*a/PI); #endif return(FALSE); } /***********************/ /* Morphology creation */ /***********************/ #define DEBUG_READ_GMF 0 gint read_gmf(gchar *filename, struct model_pak *data) { /* checks */ g_assert(data != NULL); g_assert(filename != NULL); /* setup model parameters */ data->mode = FREE; data->id = MORPH; data->axes_type = OTHER; data->morph_label = TRUE; strcpy(data->filename, filename); g_free(data->basename); data->basename = parse_strip(data->filename); /* read from a gmf file */ if (load_planes(filename, data)) { printf("File load failed, check %s.\n", data->filename); model_delete(data); return(1); } /* construct the hull (convert to H representation) */ data->num_vertices=0; if (morph_build(data)) return(3); #if DEBUG_READ_GMF printf("-------------------------\n"); printf(" Input planes: %d\n", data->num_planes); printf("Calculated vertices: %d\n", data->num_vertices); printf("-------------------------\n"); #endif /* test success */ if (!g_slist_length(data->planes)) return(4); /* vertices are cartesian - so a fudge is needed */ model_prep(data); /* proper rmax scaling & visibility calc */ coords_init(REDO_COORDS, data); return(0); } gdis-0.90/file.h0000644000175000017500000001505311063452661012126 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #ifdef __WIN32 #define DIR_SEP "\\" #else #define DIR_SEP "/" #endif #define KEYWORD_LEN 10 /* FORTRAN ugliness */ #define READ_RECORD fread(&sysenv.fortran_buffer, sizeof(int), 1, fp) #define WRITE_RECORD fwrite(&sysenv.fortran_buffer, sizeof(int), 1, fp) /* enumerated types for POV-Ray colour-style selection */ enum {HSV, /*Colour-wheel style red-green-blue */ REDWHITEBLUE /* Red-fades to white-fades to blue */ }; struct keyword_pak { gchar *label; gint code; }; extern struct keyword_pak keywords[]; /* main */ void file_init(void); void file_free(void); gint fgetline(FILE *, gchar *); gchar *file_read_line(FILE *); void file_skip_comment(gint); gint set_path(const gchar *); GSList *file_dir_list(const gchar *, gint); GSList *file_dir_list_pattern(const gchar *, const gchar *); struct file_pak *get_file_info(gpointer, gint); void file_load(gchar *, struct model_pak *); void file_save(void); gint file_save_as(gchar *, struct model_pak *); gchar *gun(const gchar *); gchar *format_value_and_units(gchar *, gint); gint file_extension_valid(const gchar *); gchar *file_extension_get(const gchar *); gint file_byte_size(const gchar *); gchar *file_find_program(const gchar *); /* dialog control */ void file_dialog(gchar *, gchar *, gint, gpointer (gchar *, struct model_pak *), gint); void file_load_dialog(void); void file_save_dialog(void); /* file writing routines */ gint write_arc(gchar *, struct model_pak *); gint write_cif(gchar *, struct model_pak *); gint write_fdf(gchar *, struct model_pak *); gint write_gulp(gchar *, struct model_pak *); gint write_gmf(gchar *, struct model_pak *); gint write_planes(gchar *, struct model_pak *); gint write_marvin(gchar *, struct model_pak *); gint write_xml(gchar *, struct model_pak *); gint write_xtl(gchar *, struct model_pak *); gint write_xyz(gchar *, struct model_pak *); gint write_gms(gchar *, struct model_pak *); gint write_diffax(gchar *, struct model_pak *); gint write_povray(gchar *, struct model_pak *); gint write_pdb(gchar *, struct model_pak *); gint write_gauss(gchar *, struct model_pak *); gint write_cssr(gchar *, struct model_pak *); gint write_dmol(gchar *, struct model_pak *); gint write_dlpoly(gchar *, struct model_pak *); gint write_bgf(gchar *, struct model_pak *); gint write_cgf(gchar *, struct model_pak *); gint write_dlp(gchar *, struct model_pak *); gint write_gromacs(gchar *, struct model_pak *); gint write_castep_cell(gchar *, struct model_pak *); gint write_meta(gchar *, struct model_pak *); void write_povray_colour_textures(FILE *, struct model_pak *, int); void write_sfc_data(FILE *); gint write_arc_header(FILE *, struct model_pak *); gint write_arc_frame(FILE *, struct model_pak *); gint write_trj_header(FILE *, struct model_pak *); gint write_trj_frame(FILE *, struct model_pak *); /* file reading routines */ gint read_arc(gchar *, struct model_pak *); gint read_cif(gchar *, struct model_pak *); gint read_fdf(gchar *, struct model_pak *); gint read_gulp(gchar *, struct model_pak *); gint read_gulp_output(gchar *, struct model_pak *); gint read_gmf(gchar *, struct model_pak *); gint read_planes(gchar *, struct model_pak *); gint read_marvin(gchar *, struct model_pak *); gint read_mvnout(gchar *, struct model_pak *); gint read_sout(gchar *, struct model_pak *); gint read_xml(gchar *, struct model_pak *); gint read_xtl(gchar *, struct model_pak *); gint read_xyz(gchar *, struct model_pak *); gint read_using_babel(gchar *, struct model_pak *); gint read_gms(gchar *, struct model_pak *); gint read_gms_out(gchar *, struct model_pak *); gint read_diffax(gchar *, struct model_pak *); gint read_about(gchar *, struct model_pak *); gint read_nw(gchar *, struct model_pak *); gint read_nwout(gchar *, struct model_pak *); gint read_pdb(gchar *, struct model_pak *); gint read_castep_out(gchar *, struct model_pak *); gint read_gauss(gchar *, struct model_pak *); gint read_gauss_out(gchar *, struct model_pak *); gint read_rietica(gchar *, struct model_pak *); gint read_off(gchar *, struct model_pak *); gint read_moldy(gchar *, struct model_pak *); gint read_moldy_restart(gchar *, struct model_pak *); gint read_cssr(gchar *, struct model_pak *); gint read_cel(gchar *, struct model_pak *); gint read_dmol(gchar *, struct model_pak *); gint read_dlpoly(gchar *, struct model_pak *); gint read_bgf(gchar *, struct model_pak *); gint read_cgf(gchar *, struct model_pak *); gint read_dlp(gchar *, struct model_pak *); gint read_gromacs_gro(gchar *, struct model_pak *); gint project_read(gchar *, struct model_pak *); gint read_trj_header(FILE *, struct model_pak *); gint read_trj_frame(FILE *, struct model_pak *, gint); gint read_arc_frame(FILE *, struct model_pak *); gint read_sout_frame(FILE *, struct model_pak *); gint read_gms_out_frame(FILE *, struct model_pak *); gint read_about_frame(FILE *, struct model_pak *); gint read_nwout_frame(FILE *, struct model_pak *); gint read_pdb_frame(FILE *, struct model_pak *); gint read_castep_out_frame(FILE *, struct model_pak *); gint read_gauss_out_frame(FILE *, struct model_pak *); gint read_xyz_frame(FILE *, struct model_pak *); gint read_dlpoly_frame(FILE *, struct model_pak *); gint read_dmol_frame(FILE *, struct model_pak *); gint load_planes(gchar *, struct model_pak *); gint mark_trj_frames(struct model_pak *); void import_planes(gchar *); void swap_bytes(void *, const gint); void gdis_blurb(FILE *); /* parsing */ void capitals(gchar *, gchar *); gchar **get_tokenized_line(FILE *, gint *); gint get_keyword_code(const gchar *); gint read_frame(FILE *, gint, struct model_pak *); gint read_raw_frame(FILE *, gint, struct model_pak *); gint add_frame_offset(FILE *, struct model_pak *); gint hash_strcmp(gconstpointer, gconstpointer); GSList *fdf_species_build(struct model_pak *); gint fdf_species_index(gchar *, GSList *); GSList *gromacs_read_ff(const gchar *); gdis-0.90/gamess.h0000644000175000017500000000153410445461563012471 0ustar seansean/* Copyright (C) 2003 by Andrew Lloyd Rohl and Sean David Fleming andrew@ivec.org sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ enum {SVWN, BLYP, B3LYP}; gdis-0.90/gui_symmetry.c0000644000175000017500000017343310651013310013730 0ustar seansean/* * Brute force symmetry analyzer. * This is actually C++ program, masquerading as a C one! * * (C) 1996, 2003 S. Patchkovskii, Serguei.Patchkovskii@sympatico.ca * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /* Modified by Sean Fleming to use glib, and for inclusion in gdis */ #include #include #include #include #include "gdis.h" #include "coords.h" #include "edit.h" #include "matrix.h" #include "sginfo.h" #include "gui_shorts.h" #include "interface.h" #include "dialog.h" #include "opengl.h" #define DIMENSION 3 #define MAXPARAM 7 #define DEBUG 0 extern struct sysenv_pak sysenv; GtkListStore *symmetry_ls=NULL; GtkWidget *symmetry_tv=NULL; typedef struct { gint type; gdouble x[DIMENSION]; } OBJECT; /* * All specific structures should have corresponding elements in the * same position generic structure does. * * Planes are characterized by the surface normal direction * (taken in the direction *from* the coordinate origin) * and distance from the coordinate origin to the plane * in the direction of the surface normal. * * Inversion is characterized by location of the inversion center. * * Rotation is characterized by a vector (distance+direction) from the origin * to the rotation axis, axis direction and rotation order. Rotations * are in the clockwise direction looking opposite to the direction * of the axis. Note that this definition of the rotation axis * is *not* unique, since an arbitrary multiple of the axis direction * can be added to the position vector without changing actual operation. * * Mirror rotation is defined by the same parameters as normal rotation, * but the origin is now unambiguous since it defines the position of the * plane associated with the axis. * */ typedef struct _SYMMETRY_ELEMENT_ { void (*transform_atom) (struct _SYMMETRY_ELEMENT_ *el, OBJECT *from, OBJECT *to ); gint *transform; /* Correspondence table for the transformation */ gint order; /* Applying transformation this many times is identity */ gint nparam; /* 4 for inversion and planes, 7 for axes */ gdouble maxdev; /* Larges error associated with the element */ gdouble distance ; gdouble normal[DIMENSION]; gdouble direction[DIMENSION]; } SYMMETRY_ELEMENT; typedef struct { gchar *group_name; /* Canonical group name */ gchar *symmetry_code; /* Group symmetry code */ gint (*check)(void); /* Additional verification routine, not used */ } POINT_GROUP; /****************/ /* globals, yuk */ /****************/ gdouble ToleranceSame = 1e-3 ; gdouble TolerancePrimary = 5e-2 ; gdouble ToleranceFinal = 1e-4 ; gdouble MaxOptStep = 5e-1 ; gdouble MinOptStep = 1e-7 ; gdouble GradientStep = 1e-7 ; gdouble OptChangeThreshold = 1e-10 ; gdouble CenterOfSomething[ DIMENSION ] ; gdouble * DistanceFromCenter = NULL ; gint verbose = 0 ; gint MaxOptCycles = 200 ; gint OptChangeHits = 5 ; gint MaxAxisOrder = 20 ; gint AtomsCount = 0 ; OBJECT * Atoms = NULL ; gint PlanesCount = 0 ; SYMMETRY_ELEMENT ** Planes = NULL ; SYMMETRY_ELEMENT * MolecularPlane = NULL ; gint InversionCentersCount = 0 ; SYMMETRY_ELEMENT ** InversionCenters = NULL ; gint NormalAxesCount = 0 ; SYMMETRY_ELEMENT ** NormalAxes = NULL ; gint ImproperAxesCount = 0 ; SYMMETRY_ELEMENT ** ImproperAxes = NULL ; gint * NormalAxesCounts = NULL ; gint * ImproperAxesCounts = NULL ; gint BadOptimization = 0 ; gchar * SymmetryCode = NULL ; /* * Statistics */ gint StatTotal = 0 ; gint StatEarly = 0 ; gint StatPairs = 0 ; gint StatDups = 0 ; gint StatOrder = 0 ; gint StatOpt = 0 ; gint StatAccept = 0 ; /* * Point groups I know about */ gint true(void){return 1;} POINT_GROUP PointGroups[] = { {"C1", "", true}, {"Cs", "(sigma) ", true}, {"Ci", "(i) ", true}, {"C2", "(C2) ", true}, {"C3", "(C3) ", true}, {"C4", "(C4) (C2) ", true}, {"C5", "(C5) ", true}, {"C6", "(C6) (C3) (C2) ", true}, {"C7", "(C7) ", true}, {"C8", "(C8) (C4) (C2) ", true}, {"D2", "3*(C2) ", true}, {"D3", "(C3) 3*(C2) ", true}, {"D4", "(C4) 5*(C2) ", true}, {"D5", "(C5) 5*(C2) ", true}, {"D6", "(C6) (C3) 7*(C2) ", true}, {"D7", "(C7) 7*(C2) ", true}, {"D8", "(C8) (C4) 9*(C2) ", true}, {"C2v", "(C2) 2*(sigma) ", true}, {"C3v", "(C3) 3*(sigma) ", true}, {"C4v", "(C4) (C2) 4*(sigma) ", true}, {"C5v", "(C5) 5*(sigma) ", true}, {"C6v", "(C6) (C3) (C2) 6*(sigma) ", true}, {"C7v", "(C7) 7*(sigma) ", true}, {"C8v", "(C8) (C4) (C2) 8*(sigma) ", true}, {"C2h", "(i) (C2) (sigma) ", true}, {"C3h", "(C3) (S3) (sigma) ", true}, {"C4h", "(i) (C4) (C2) (S4) (sigma) ", true}, {"C5h", "(C5) (S5) (sigma) ", true}, {"C6h", "(i) (C6) (C3) (C2) (S6) (S3) (sigma) ", true}, {"C7h", "(C7) (S7) (sigma) ", true}, {"C8h", "(i) (C8) (C4) (C2) (S8) (S4) (sigma) ", true}, {"D2h", "(i) 3*(C2) 3*(sigma) ", true}, {"D3h", "(C3) 3*(C2) (S3) 4*(sigma) ", true}, {"D4h", "(i) (C4) 5*(C2) (S4) 5*(sigma) ", true}, {"D5h", "(C5) 5*(C2) (S5) 6*(sigma) ", true}, {"D6h", "(i) (C6) (C3) 7*(C2) (S6) (S3) 7*(sigma) ", true}, {"D7h", "(C7) 7*(C2) (S7) 8*(sigma) ", true}, {"D8h", "(i) (C8) (C4) 9*(C2) (S8) (S4) 9*(sigma) ", true}, {"D2d", "3*(C2) (S4) 2*(sigma) ", true}, {"D3d", "(i) (C3) 3*(C2) (S6) 3*(sigma) ", true}, {"D4d", "(C4) 5*(C2) (S8) 4*(sigma) ", true}, {"D5d", "(i) (C5) 5*(C2) (S10) 5*(sigma) ", true}, {"D6d", "(C6) (C3) 7*(C2) (S12) (S4) 6*(sigma) ", true}, {"D7d", "(i) (C7) 7*(C2) (S14) 7*(sigma) ", true}, {"D8d", "(C8) (C4) 9*(C2) (S16) 8*(sigma) ", true}, {"S4", "(C2) (S4) ", true}, {"S6", "(i) (C3) (S6) ", true}, {"S8", "(C4) (C2) (S8) ", true}, {"T", "4*(C3) 3*(C2) ", true}, {"Th", "(i) 4*(C3) 3*(C2) 4*(S6) 3*(sigma) ", true}, {"Td", "4*(C3) 3*(C2) 3*(S4) 6*(sigma) ", true}, {"O", "3*(C4) 4*(C3) 9*(C2) ", true}, {"Oh", "(i) 3*(C4) 4*(C3) 9*(C2) 4*(S6) 3*(S4) 9*(sigma) ", true}, {"Cinfv", "(Cinf) (sigma) ", true}, {"Dinfh", "(i) (Cinf) (C2) 2*(sigma) ", true}, {"I", "6*(C5) 10*(C3) 15*(C2) ", true}, {"Ih", "(i) 6*(C5) 10*(C3) 15*(C2) 6*(S10) 10*(S6) 15*(sigma) ", true}, {"Kh", "(i) (Cinf) (sigma) ", true}, }; #define PointGroupsCount (sizeof(PointGroups)/sizeof(POINT_GROUP)) gchar * PointGroupRejectionReason = NULL ; /* * Generic functions */ gdouble pow2( gdouble x ) { return x * x ; } gint establish_pairs( SYMMETRY_ELEMENT *elem ) { gint i, j, k, best_j ; gchar *atom_used = g_malloc0(AtomsCount); gdouble distance, best_distance; OBJECT symmetric; for( i = 0 ; i < AtomsCount ; i++ ){ if( elem->transform[i] >= AtomsCount ){ /* No symmetric atom yet */ if( verbose > 2 ) printf( " looking for a pair for %d\n", i ) ; elem->transform_atom( elem, Atoms+i, &symmetric ) ; if( verbose > 2 ) printf( " new coordinates are: (%g,%g,%g)\n", symmetric.x[0], symmetric.x[1], symmetric.x[2] ) ; best_j = i ; best_distance = 2*TolerancePrimary ;/* Performance value we'll reject */ for( j = 0 ; j < AtomsCount ; j++ ){ if( Atoms[j].type != symmetric.type || atom_used[j] ) continue ; for( k = 0, distance = 0 ; k < DIMENSION ; k++ ){ distance += pow2( symmetric.x[k] - Atoms[j].x[k] ) ; } distance = sqrt( distance ) ; if( verbose > 2 ) printf( " distance to %d is %g\n", j, distance ) ; if( distance < best_distance ){ best_j = j ; best_distance = distance ; } } if( best_distance > TolerancePrimary ){ /* Too bad, there is no symmetric atom */ if( verbose > 0 ) printf( " no pair for atom %d - best was %d with err = %g\n", i, best_j, best_distance ) ; g_free( atom_used ) ; return -1 ; } elem->transform[i] = best_j ; atom_used[best_j] = 1 ; if( verbose > 1 ) printf( " atom %d transforms to the atom %d, err = %g\n", i, best_j, best_distance ) ; } } g_free( atom_used ) ; return 0 ; } gint check_transform_order( SYMMETRY_ELEMENT *elem ) { gint i, j, k ; void rotate_reflect_atom( SYMMETRY_ELEMENT *, OBJECT *, OBJECT *) ; for( i = 0 ; i < AtomsCount ; i++ ){ if( elem->transform[i] == i ) /* Identity transform is Ok for any order */ continue ; if( elem->transform_atom == rotate_reflect_atom ){ j = elem->transform[i] ; if( elem->transform[j] == i ) continue ; /* Second-order transform is Ok for improper axis */ } for( j = elem->order - 1, k = elem->transform[i] ; j > 0 ; j--, k = elem->transform[k] ){ if( k == i ){ if( verbose > 0 ) printf( " transform looped %d steps too early from atom %d\n", j, i ) ; return -1 ; } } if( k != i && elem->transform_atom == rotate_reflect_atom ){ /* For improper axes, the complete loop may also take twice the order */ for( j = elem->order ; j > 0 ; j--, k = elem->transform[k] ){ if( k == i ){ if( verbose > 0 ) printf( " (improper) transform looped %d steps too early from atom %d\n", j, i ) ; return -1 ; } } } if( k != i ){ if( verbose > 0 ) printf( " transform failed to loop after %d steps from atom %d\n", elem->order, i ) ; return -1 ; } } return 0 ; } gint same_transform( SYMMETRY_ELEMENT *a, SYMMETRY_ELEMENT *b ) { gint i, j ; gint code ; if( ( a->order != b->order ) || ( a->nparam != b->nparam ) || ( a->transform_atom != b->transform_atom ) ) return 0 ; for( i = 0, code = 1 ; i < AtomsCount ; i++ ){ if( a->transform[i] != b->transform[i] ){ code = 0 ; break ; } } if( code == 0 && a->order > 2 ){ /* b can also be a reverse transformation for a */ for( i = 0 ; i < AtomsCount ; i++ ){ j = a->transform[i] ; if( b->transform[j] != i ) return 0 ; } return 1 ; } return code ; } SYMMETRY_ELEMENT *alloc_symmetry_element( void ) { gint i; SYMMETRY_ELEMENT *elem; elem = g_malloc0(sizeof(SYMMETRY_ELEMENT)); elem->transform = g_malloc0(AtomsCount*sizeof(int)); for (i=0 ; itransform[i] = AtomsCount + 1 ; /* An impossible value */ return elem ; } void destroy_symmetry_element( SYMMETRY_ELEMENT *elem ) { if (elem != NULL) { if (elem->transform != NULL) g_free(elem->transform); g_free(elem); } } gint check_transform_quality( SYMMETRY_ELEMENT *elem ) { gint i, j, k ; OBJECT symmetric ; gdouble r, max_r ; for( i = 0, max_r = 0 ; i < AtomsCount ; i++ ){ j = elem->transform[i] ; elem->transform_atom( elem, Atoms + i, &symmetric ) ; for( k = 0, r = 0 ; k < DIMENSION ; k++ ){ r += pow2( symmetric.x[k] - Atoms[j].x[k] ) ; } r = sqrt( r ) ; if( r > ToleranceFinal ){ if( verbose > 0 ) printf( " distance to symmetric atom (%g) is too big for %d\n", r, i ) ; return -1 ; } if( r > max_r ) max_r = r ; } elem->maxdev = max_r ; return 0 ; } gdouble eval_optimization_target_function(SYMMETRY_ELEMENT *elem, gint *finish) { gint i, j, k ; OBJECT symmetric ; gdouble target, r, maxr ; if( elem->nparam >= 4 ){ for( k = 0, r = 0 ; k < DIMENSION ; k++ ){ r += elem->normal[k]*elem->normal[k] ; } r = sqrt( r ) ; if( r < ToleranceSame ){ fprintf( stderr, "Normal collapsed!\n" ) ; return(0.0); } for( k = 0 ; k < DIMENSION ; k++ ){ elem->normal[k] /= r ; } if( elem->distance < 0 ){ elem->distance = -elem->distance ; for( k = 0 ; k < DIMENSION ; k++ ){ elem->normal[k] = -elem->normal[k] ; } } } if( elem->nparam >= 7 ){ for( k = 0, r = 0 ; k < DIMENSION ; k++ ){ r += elem->direction[k]*elem->direction[k] ; } r = sqrt( r ) ; if( r < ToleranceSame ){ fprintf( stderr, "Direction collapsed!\n" ) ; return(0.0); } for( k = 0 ; k < DIMENSION ; k++ ){ elem->direction[k] /= r ; } } for( i = 0, target = maxr = 0 ; i < AtomsCount ; i++ ){ elem->transform_atom( elem, Atoms + i, &symmetric ) ; j = elem->transform[i] ; for( k = 0, r = 0 ; k < DIMENSION ; k++ ){ r += pow2( Atoms[j].x[k] - symmetric.x[k] ) ; } if( r > maxr ) maxr = r ; target += r ; } if( finish != NULL ){ *finish = 0 ; if( sqrt( maxr ) < ToleranceFinal ) *finish = 1 ; } return target ; } void get_params( SYMMETRY_ELEMENT *elem, gdouble values[] ) { memcpy( values, &elem->distance, elem->nparam * sizeof( gdouble ) ) ; } void set_params( SYMMETRY_ELEMENT *elem, gdouble values[] ) { memcpy( &elem->distance, values, elem->nparam * sizeof( gdouble ) ) ; } gint optimize_transformation_params(SYMMETRY_ELEMENT *elem) { gdouble values[ MAXPARAM ] ; gdouble grad [ MAXPARAM ] ; gdouble force [ MAXPARAM ] ; gdouble step [ MAXPARAM ] ; gdouble f, fold, fnew, fnew2, fdn, fup, snorm ; gdouble a, b, x ; gint vars = elem->nparam ; gint cycle = 0 ; gint i, finish ; gint hits = 0 ; if (vars > MAXPARAM) { fprintf(stderr, "Catastrophe in optimize_transformation_params()!\n"); return(1); } f = 0 ; do { fold = f ; f = eval_optimization_target_function( elem, &finish ) ; /* Evaluate function, gradient and diagonal force constants */ if( verbose > 1 ) printf( " function value = %g\n", f ) ; if( finish ){ if( verbose > 1 ) printf( " function value is small enough\n" ) ; break ; } if( cycle > 0 ){ if( fabs( f-fold ) > OptChangeThreshold ) hits = 0 ; else hits++ ; if( hits >= OptChangeHits ){ if( verbose > 1 ) printf( " no progress is made, stop optimization\n" ) ; break ; } } get_params( elem, values ) ; for( i = 0 ; i < vars ; i++ ){ values[i] -= GradientStep ; set_params( elem, values ) ; fdn = eval_optimization_target_function( elem, NULL ) ; values[i] += 2*GradientStep ; set_params( elem, values ) ; fup = eval_optimization_target_function( elem, NULL ) ; values[i] -= GradientStep ; grad[i] = ( fup - fdn ) / ( 2 * GradientStep ) ; force[i] = ( fup + fdn - 2*f ) / ( GradientStep * GradientStep ) ; if( verbose > 1 ) printf( " i = %d, grad = %12.6e, force = %12.6e\n", i, grad[i], force[i] ) ; } /* Do a quasy-Newton step */ for( i = 0, snorm = 0 ; i < vars ; i++ ){ if( force[i] < 0 ) force[i] = -force[i] ; if( force[i] < 1e-3 ) force[i] = 1e-3 ; if( force[i] > 1e3 ) force[i] = 1e3 ; step[i] = - grad[i]/force[i] ; snorm += step[i] * step[i] ; } snorm = sqrt( snorm ) ; if( snorm > MaxOptStep ){ /* Renormalize step */ for( i = 0 ; i < vars ; i++ ) step[i] *= MaxOptStep/snorm ; snorm = MaxOptStep ; } do { for( i = 0 ; i < vars ; i++ ){ values[i] += step[i] ; } set_params( elem, values ) ; fnew = eval_optimization_target_function( elem, NULL ) ; if( fnew < f ) break ; for( i = 0 ; i < vars ; i++ ){ values[i] -= step[i] ; step [i] /= 2 ; } set_params( elem, values ) ; snorm /= 2 ; } while( snorm > MinOptStep ) ; if( (snorm > MinOptStep) && (snorm < MaxOptStep / 2) ){ /* try to do quadratic interpolation */ for( i = 0 ; i < vars ; i++ ) values[i] += step[i] ; set_params( elem, values ) ; fnew2 = eval_optimization_target_function( elem, NULL ) ; if( verbose > 1 ) printf( " interpolation base points: %g, %g, %g\n", f, fnew, fnew2 ) ; for( i = 0 ; i < vars ; i++ ) values[i] -= 2*step[i] ; a = ( 4*f - fnew2 - 3*fnew ) / 2 ; b = ( f + fnew2 - 2*fnew ) / 2 ; if( verbose > 1 ) printf( " linear interpolation coefficients %g, %g\n", a, b ) ; if( b > 0 ){ x = -a/(2*b) ; if( x > 0.2 && x < 1.8 ){ if( verbose > 1 ) printf( " interpolated: %g\n", x ) ; for( i = 0 ; i < vars ; i++ ) values[i] += x*step[i] ; } else b = 0 ; } if( b <= 0 ){ if( fnew2 < fnew ){ for( i = 0 ; i < vars ; i++ ) values[i] += 2*step[i] ; } else { for( i = 0 ; i < vars ; i++ ) values[i] += step[i] ; } } set_params( elem, values ) ; } } while( snorm > MinOptStep && ++cycle < MaxOptCycles ) ; f = eval_optimization_target_function( elem, NULL ) ; if( cycle >= MaxOptCycles ) BadOptimization = 1 ; if( verbose > 0 ) { if( cycle >= MaxOptCycles ) printf( " maximum number of optimization cycles made\n" ) ; printf( " optimization completed after %d cycles with f = %g\n", cycle, f ) ; } return(0); } gint refine_symmetry_element( SYMMETRY_ELEMENT *elem, gint build_table ) { gint i ; if( build_table && (establish_pairs( elem ) < 0) ){ StatPairs++ ; if( verbose > 0 ) printf( " no transformation correspondence table can be constructed\n" ) ; return -1 ; } for( i = 0 ; i < PlanesCount ; i++ ){ if( same_transform( Planes[i], elem ) ){ StatDups++ ; if( verbose > 0 ) printf( " transformation is identical to plane %d\n", i ) ; return -1 ; } } for( i = 0 ; i < InversionCentersCount ; i++ ){ if( same_transform( InversionCenters[i], elem ) ){ StatDups++ ; if( verbose > 0 ) printf( " transformation is identical to inversion center %d\n", i ) ; return -1 ; } } for( i = 0 ; i < NormalAxesCount ; i++ ){ if( same_transform( NormalAxes[i], elem ) ){ StatDups++ ; if( verbose > 0 ) printf( " transformation is identical to normal axis %d\n", i ) ; return -1 ; } } for( i = 0 ; i < ImproperAxesCount ; i++ ){ if( same_transform( ImproperAxes[i], elem ) ){ StatDups++ ; if( verbose > 0 ) printf( " transformation is identical to improper axis %d\n", i ) ; return -1 ; } } if( check_transform_order( elem ) < 0 ){ StatOrder++ ; if( verbose > 0 ) printf( " incorrect transformation order\n" ) ; return -1 ; } if (optimize_transformation_params( elem )) return(-1); if( check_transform_quality( elem ) < 0 ){ StatOpt++ ; if( verbose > 0 ) printf( " refined transformation does not pass the numeric threshold\n" ) ; return -1 ; } StatAccept++ ; return 0 ; } /* * Plane-specific functions */ void mirror_atom( SYMMETRY_ELEMENT *plane, OBJECT *from, OBJECT *to ) { gint i ; gdouble r ; for( i = 0, r = plane->distance ; i < DIMENSION ; i++ ){ r -= from->x[i] * plane->normal[i] ; } to->type = from->type ; for( i = 0 ; i < DIMENSION ; i++ ){ to->x[i] = from->x[i] + 2*r*plane->normal[i] ; } } SYMMETRY_ELEMENT * init_mirror_plane( gint i, gint j ) { SYMMETRY_ELEMENT * plane = alloc_symmetry_element() ; gdouble dx[ DIMENSION ], midpoint[ DIMENSION ], rab, r ; gint k ; if( verbose > 0 ) printf( "Trying mirror plane for atoms %d,%d\n", i, j ) ; StatTotal++ ; plane->transform_atom = mirror_atom ; plane->order = 2 ; plane->nparam = 4 ; for( k = 0, rab = 0 ; k < DIMENSION ; k++ ){ dx[k] = Atoms[i].x[k] - Atoms[j].x[k] ; midpoint[k] = ( Atoms[i].x[k] + Atoms[j].x[k] ) / 2.0 ; rab += dx[k]*dx[k] ; } rab = sqrt(rab) ; if (rab < ToleranceSame) { fprintf(stderr, "Atoms %d and %d coincide (r = %g)\n", i, j, rab ); return NULL; } for( k = 0, r = 0 ; k < DIMENSION ; k++ ){ plane->normal[k] = dx[k]/rab ; r += midpoint[k]*plane->normal[k] ; } if( r < 0 ){ /* Reverce normal direction, distance is always positive! */ r = -r ; for( k = 0 ; k < DIMENSION ; k++ ){ plane->normal[k] = -plane->normal[k] ; } } plane->distance = r ; if( verbose > 0 ) printf( " initial plane is at %g from the origin\n", r ) ; if( refine_symmetry_element( plane, 1 ) < 0 ){ if( verbose > 0 ) printf( " refinement failed for the plane\n" ) ; destroy_symmetry_element( plane ) ; return NULL ; } return plane ; } SYMMETRY_ELEMENT *init_ultimate_plane( void ) { SYMMETRY_ELEMENT * plane = alloc_symmetry_element() ; gdouble d0[ DIMENSION ], d1[ DIMENSION ], d2[ DIMENSION ] ; gdouble p[ DIMENSION ] ; gdouble r, s0, s1, s2 ; gdouble * d ; gint i, j, k ; if( verbose > 0 ) printf( "Trying whole-molecule mirror plane\n" ) ; StatTotal++ ; plane->transform_atom = mirror_atom ; plane->order = 1 ; plane->nparam = 4 ; for( k = 0 ; k < DIMENSION ; k++ ) d0[k] = d1[k] = d2[k] = 0 ; d0[0] = 1 ; d1[1] = 1 ; d2[2] = 1 ; for( i = 1 ; i < AtomsCount ; i++ ){ for( j = 0 ; j < i ; j++ ){ for( k = 0, r = 0 ; k < DIMENSION ; k++ ){ p[k] = Atoms[i].x[k] - Atoms[j].x[k] ; r += p[k]*p[k] ; } r = sqrt(r) ; for( k = 0, s0=s1=s2=0 ; k < DIMENSION ; k++ ){ p[k] /= r ; s0 += p[k]*d0[k] ; s1 += p[k]*d1[k] ; s2 += p[k]*d2[k] ; } for( k = 0 ; k < DIMENSION ; k++ ){ d0[k] -= s0*p[k] ; d1[k] -= s1*p[k] ; d2[k] -= s2*p[k] ; } } } for( k = 0, s0=s1=s2=0 ; k < DIMENSION ; k++ ){ s0 += d0[k] ; s1 += d1[k] ; s2 += d2[k] ; } d = NULL ; if( s0 >= s1 && s0 >= s2 ) d = d0 ; if( s1 >= s0 && s1 >= s2 ) d = d1 ; if( s2 >= s0 && s2 >= s1 ) d = d2 ; if(d == NULL) { fprintf(stderr, "ERROR: init_ultimate_plane(): %g, %g and %g have no ordering!\n", s0, s1, s2); return NULL; } for( k = 0, r = 0 ; k < DIMENSION ; k++ ) r += d[k]*d[k] ; r = sqrt(r) ; if( r > 0 ){ for( k = 0 ; k < DIMENSION ; k++ ) plane->normal[k] = d[k]/r ; } else { for( k = 1 ; k < DIMENSION ; k++ ) plane->normal[k] = 0 ; plane->normal[0] = 1 ; } for( k = 0, r = 0 ; k < DIMENSION ; k++ ) r += CenterOfSomething[k]*plane->normal[k] ; plane->distance = r ; for( k = 0 ; k < AtomsCount ; k++ ) plane->transform[k] = k ; if( refine_symmetry_element( plane, 0 ) < 0 ){ if( verbose > 0 ) printf( " refinement failed for the plane\n" ) ; destroy_symmetry_element( plane ) ; return NULL ; } return plane ; } /* * Inversion-center specific functions */ void invert_atom( SYMMETRY_ELEMENT *center, OBJECT *from, OBJECT *to ) { gint i ; to->type = from->type ; for( i = 0 ; i < DIMENSION ; i++ ){ to->x[i] = 2*center->distance*center->normal[i] - from->x[i] ; } } SYMMETRY_ELEMENT *init_inversion_center( void ) { SYMMETRY_ELEMENT * center = alloc_symmetry_element() ; gint k ; gdouble r ; if( verbose > 0 ) printf( "Trying inversion center at the center of something\n" ) ; StatTotal++ ; center->transform_atom = invert_atom ; center->order = 2 ; center->nparam = 4 ; for( k = 0, r = 0 ; k < DIMENSION ; k++ ) r += CenterOfSomething[k]*CenterOfSomething[k] ; r = sqrt(r) ; if( r > 0 ){ for( k = 0 ; k < DIMENSION ; k++ ) center->normal[k] = CenterOfSomething[k]/r ; } else { center->normal[0] = 1 ; for( k = 1 ; k < DIMENSION ; k++ ) center->normal[k] = 0 ; } center->distance = r ; if( verbose > 0 ) printf( " initial inversion center is at %g from the origin\n", r ) ; if( refine_symmetry_element( center, 1 ) < 0 ){ if( verbose > 0 ) printf( " refinement failed for the inversion center\n" ) ; destroy_symmetry_element( center ) ; return NULL ; } return center ; } /* * Normal rotation axis-specific routines. */ void rotate_atom(SYMMETRY_ELEMENT *axis, OBJECT *from, OBJECT *to) { gdouble x[3], y[3], a[3], b[3], c[3] ; gdouble angle = axis->order ? 2*PI/axis->order : 1.0 ; gdouble a_sin = sin( angle ) ; gdouble a_cos = cos( angle ) ; gdouble dot ; gint i ; if (DIMENSION != 3) { fprintf(stderr, "Catastrophe in rotate_atom!\n"); return; } for( i = 0 ; i < 3 ; i++ ) x[i] = from->x[i] - axis->distance * axis->normal[i] ; for( i = 0, dot = 0 ; i < 3 ; i++ ) dot += x[i] * axis->direction[i] ; for( i = 0 ; i < 3 ; i++ ) a[i] = axis->direction[i] * dot ; for( i = 0 ; i < 3 ; i++ ) b[i] = x[i] - a[i] ; c[0] = b[1]*axis->direction[2] - b[2]*axis->direction[1] ; c[1] = b[2]*axis->direction[0] - b[0]*axis->direction[2] ; c[2] = b[0]*axis->direction[1] - b[1]*axis->direction[0] ; for( i = 0 ; i < 3 ; i++ ) y[i] = a[i] + b[i]*a_cos + c[i]*a_sin ; for( i = 0 ; i < 3 ; i++ ) to->x[i] = y[i] + axis->distance * axis->normal[i] ; to->type = from->type; } SYMMETRY_ELEMENT *init_ultimate_axis(void) { SYMMETRY_ELEMENT * axis = alloc_symmetry_element() ; gdouble dir[ DIMENSION ], rel[ DIMENSION ] ; gdouble s ; gint i, k ; if( verbose > 0 ) printf( "Trying infinity axis\n" ) ; StatTotal++ ; axis->transform_atom = rotate_atom ; axis->order = 0 ; axis->nparam = 7 ; for( k = 0 ; k < DIMENSION ; k++ ) dir[k] = 0 ; for( i = 0 ; i < AtomsCount ; i++ ){ for( k = 0, s = 0 ; k < DIMENSION ; k++ ){ rel[k] = Atoms[i].x[k] - CenterOfSomething[k] ; s += rel[k]*dir[k] ; } if( s >= 0 ) for( k = 0 ; k < DIMENSION ; k++ ) dir[k] += rel[k] ; else for( k = 0 ; k < DIMENSION ; k++ ) dir[k] -= rel[k] ; } for( k = 0, s = 0 ; k < DIMENSION ; k++ ) s += pow2( dir[k] ) ; s = sqrt(s) ; if( s > 0 ) for( k = 0 ; k < DIMENSION ; k++ ) dir[k] /= s ; else dir[0] = 1 ; for( k = 0 ; k < DIMENSION ; k++ ) axis->direction[k] = dir[k] ; for( k = 0, s = 0 ; k < DIMENSION ; k++ ) s += pow2( CenterOfSomething[k] ) ; s = sqrt(s) ; if( s > 0 ) for( k = 0 ; k < DIMENSION ; k++ ) axis->normal[k] = CenterOfSomething[k]/s ; else { for( k = 1 ; k < DIMENSION ; k++ ) axis->normal[k] = 0 ; axis->normal[0] = 1 ; } axis->distance = s ; for( k = 0 ; k < AtomsCount ; k++ ) axis->transform[k] = k ; if( refine_symmetry_element( axis, 0 ) < 0 ){ if( verbose > 0 ) printf( " refinement failed for the infinity axis\n" ) ; destroy_symmetry_element( axis ) ; return NULL ; } return axis ; } SYMMETRY_ELEMENT *init_c2_axis( gint i, gint j, gdouble support[ DIMENSION ] ) { SYMMETRY_ELEMENT * axis ; gint k ; gdouble ris, rjs ; gdouble r, center[ DIMENSION ] ; if( verbose > 0 ) printf( "Trying c2 axis for the pair (%d,%d) with the support (%g,%g,%g)\n", i, j, support[0], support[1], support[2] ) ; StatTotal++ ; /* First, do a quick sanity check */ for( k = 0, ris = rjs = 0 ; k < DIMENSION ; k++ ){ ris += pow2( Atoms[i].x[k] - support[k] ) ; rjs += pow2( Atoms[j].x[k] - support[k] ) ; } ris = sqrt( ris ) ; rjs = sqrt( rjs ) ; if( fabs( ris - rjs ) > TolerancePrimary ){ StatEarly++ ; if( verbose > 0 ) printf( " Support can't actually define a rotation axis\n" ) ; return NULL ; } axis = alloc_symmetry_element() ; axis->transform_atom = rotate_atom ; axis->order = 2 ; axis->nparam = 7 ; for( k = 0, r = 0 ; k < DIMENSION ; k++ ) r += CenterOfSomething[k]*CenterOfSomething[k] ; r = sqrt(r) ; if( r > 0 ){ for( k = 0 ; k < DIMENSION ; k++ ) axis->normal[k] = CenterOfSomething[k]/r ; } else { axis->normal[0] = 1 ; for( k = 1 ; k < DIMENSION ; k++ ) axis->normal[k] = 0 ; } axis->distance = r ; for( k = 0, r = 0 ; k < DIMENSION ; k++ ){ center[k] = ( Atoms[i].x[k] + Atoms[j].x[k] ) / 2 - support[k] ; r += center[k]*center[k] ; } r = sqrt(r) ; if( r <= TolerancePrimary ){ /* c2 is underdefined, let's do something special */ if( MolecularPlane != NULL ){ if( verbose > 0 ) printf( " c2 is underdefined, but there is a molecular plane\n" ) ; for( k = 0 ; k < DIMENSION ; k++ ) axis->direction[k] = MolecularPlane->normal[k] ; } else { if( verbose > 0 ) printf( " c2 is underdefined, trying random direction\n" ) ; for( k = 0 ; k < DIMENSION ; k++ ) center[k] = Atoms[i].x[k] - Atoms[j].x[k] ; if( fabs( center[2] ) + fabs( center[1] ) > ToleranceSame ){ axis->direction[0] = 0 ; axis->direction[1] = center[2] ; axis->direction[2] = -center[1] ; } else { axis->direction[0] = -center[2] ; axis->direction[1] = 0 ; axis->direction[2] = center[0] ; } for( k = 0, r = 0 ; k < DIMENSION ; k++ ) r += axis->direction[k] * axis->direction[k] ; r = sqrt(r) ; for( k = 0 ; k < DIMENSION ; k++ ) axis->direction[k] /= r ; } } else { /* direction is Ok, renormalize it */ for( k = 0 ; k < DIMENSION ; k++ ) axis->direction[k] = center[k]/r ; } if( refine_symmetry_element( axis, 1 ) < 0 ){ if( verbose > 0 ) printf( " refinement failed for the c2 axis\n" ) ; destroy_symmetry_element( axis ) ; return NULL ; } return axis ; } SYMMETRY_ELEMENT *init_axis_parameters (gdouble a[3], gdouble b[3], gdouble c[3]) { SYMMETRY_ELEMENT * axis ; gint i, order, sign ; gdouble ra, rb, rc, rab, rbc, rac, r ; gdouble angle ; ra = rb = rc = rab = rbc = rac = 0 ; for( i = 0 ; i < DIMENSION ; i++ ){ ra += a[i]*a[i] ; rb += b[i]*b[i] ; rc += c[i]*c[i] ; } ra = sqrt(ra) ; rb = sqrt(rb) ; rc = sqrt(rc) ; if( fabs( ra - rb ) > TolerancePrimary || fabs( ra - rc ) > TolerancePrimary || fabs( rb - rc ) > TolerancePrimary ){ StatEarly++ ; if( verbose > 0 ) printf( " points are not on a sphere\n" ) ; return NULL ; } for( i = 0 ; i < DIMENSION ; i++ ){ rab += (a[i]-b[i])*(a[i]-b[i]) ; rac += (a[i]-c[i])*(a[i]-c[i]) ; rbc += (c[i]-b[i])*(c[i]-b[i]) ; } rab = sqrt(rab) ; rac = sqrt(rac) ; rbc = sqrt(rbc) ; if( fabs( rab - rbc ) > TolerancePrimary ){ StatEarly++ ; if( verbose > 0 ) printf( " points can't be rotation-equivalent\n" ) ; return NULL ; } if( rab <= ToleranceSame || rbc <= ToleranceSame || rac <= ToleranceSame ){ StatEarly++ ; if( verbose > 0 ) printf( " rotation is underdefined by these points\n" ) ; return NULL ; } rab = (rab+rbc)/2 ; angle = PI - 2*asin( rac/(2*rab) ) ; if( verbose > 1 ) printf( " rotation angle is %f\n", angle ) ; if( fabs(angle) <= PI/(MaxAxisOrder+1) ){ StatEarly++ ; if( verbose > 0 ) printf( " atoms are too close to a straight line\n" ) ; return NULL ; } order = floor( (2*PI)/angle + 0.5 ) ; if( order <= 2 || order > MaxAxisOrder ){ StatEarly++ ; if( verbose > 0 ) printf( " rotation axis order (%d) is not from 3 to %d\n", order, MaxAxisOrder ) ; return NULL ; } axis = alloc_symmetry_element() ; axis->order = order ; axis->nparam = 7 ; for( i = 0, r = 0 ; i < DIMENSION ; i++ ) r += CenterOfSomething[i]*CenterOfSomething[i] ; r = sqrt(r) ; if( r > 0 ){ for( i = 0 ; i < DIMENSION ; i++ ) axis->normal[i] = CenterOfSomething[i]/r ; } else { axis->normal[0] = 1 ; for( i = 1 ; i < DIMENSION ; i++ ) axis->normal[i] = 0 ; } axis->distance = r ; axis->direction[0] = (b[1]-a[1])*(c[2]-b[2]) - (b[2]-a[2])*(c[1]-b[1]) ; axis->direction[1] = (b[2]-a[2])*(c[0]-b[0]) - (b[0]-a[0])*(c[2]-b[2]) ; axis->direction[2] = (b[0]-a[0])*(c[1]-b[1]) - (b[1]-a[1])*(c[0]-b[0]) ; /* * Arbitrarily select axis direction so that first non-zero component * or the direction is positive. */ sign = 0 ; if( axis->direction[0] <= 0 ) { if( axis->direction[0] < 0 ) sign = 1 ; else if( axis->direction[1] <= 0 ) { if( axis->direction[1] < 0 ) sign = 1 ; else if( axis->direction[2] < 0 ) sign = 1 ; } } if( sign ) for( i = 0 ; i < DIMENSION ; i++ ) axis->direction[i] = -axis->direction[i] ; for( i = 0, r = 0 ; i < DIMENSION ; i++ ) r += axis->direction[i]*axis->direction[i] ; r = sqrt(r) ; for( i = 0 ; i < DIMENSION ; i++ ) axis->direction[i] /= r ; if( verbose > 1 ){ printf( " axis origin is at (%g,%g,%g)\n", axis->normal[0]*axis->distance, axis->normal[1]*axis->distance, axis->normal[2]*axis->distance ) ; printf( " axis is in the direction (%g,%g,%g)\n", axis->direction[0], axis->direction[1], axis->direction[2] ) ; } return axis ; } SYMMETRY_ELEMENT *init_higher_axis( gint ia, gint ib, gint ic ) { SYMMETRY_ELEMENT * axis ; gdouble a[ DIMENSION ], b[ DIMENSION ], c[ DIMENSION ] ; gint i ; if( verbose > 0 ) printf( "Trying cn axis for the triplet (%d,%d,%d)\n", ia, ib, ic ) ; StatTotal++ ; /* Do a quick check of geometry validity */ for( i = 0 ; i < DIMENSION ; i++ ){ a[i] = Atoms[ia].x[i] - CenterOfSomething[i] ; b[i] = Atoms[ib].x[i] - CenterOfSomething[i] ; c[i] = Atoms[ic].x[i] - CenterOfSomething[i] ; } if( ( axis = init_axis_parameters( a, b, c ) ) == NULL ){ if( verbose > 0 ) printf( " no coherrent axis is defined by the points\n" ) ; return NULL ; } axis->transform_atom = rotate_atom ; if( refine_symmetry_element( axis, 1 ) < 0 ){ if( verbose > 0 ) printf( " refinement failed for the c%d axis\n", axis->order ) ; destroy_symmetry_element( axis ) ; return NULL ; } return axis ; } /* * Improper axes-specific routines. * These are obtained by slight modifications of normal rotation * routines. */ void rotate_reflect_atom( SYMMETRY_ELEMENT *axis, OBJECT *from, OBJECT *to ) { gdouble x[3], y[3], a[3], b[3], c[3] ; gdouble angle = 2*PI/axis->order ; gdouble a_sin = sin( angle ) ; gdouble a_cos = cos( angle ) ; gdouble dot ; gint i ; if (DIMENSION != 3) { fprintf(stderr, "Catastrophe in rotate_reflect_atom!\n"); return; } for( i = 0 ; i < 3 ; i++ ) x[i] = from->x[i] - axis->distance * axis->normal[i] ; for( i = 0, dot = 0 ; i < 3 ; i++ ) dot += x[i] * axis->direction[i] ; for( i = 0 ; i < 3 ; i++ ) a[i] = axis->direction[i] * dot ; for( i = 0 ; i < 3 ; i++ ) b[i] = x[i] - a[i] ; c[0] = b[1]*axis->direction[2] - b[2]*axis->direction[1] ; c[1] = b[2]*axis->direction[0] - b[0]*axis->direction[2] ; c[2] = b[0]*axis->direction[1] - b[1]*axis->direction[0] ; for( i = 0 ; i < 3 ; i++ ) y[i] = -a[i] + b[i]*a_cos + c[i]*a_sin ; for( i = 0 ; i < 3 ; i++ ) to->x[i] = y[i] + axis->distance * axis->normal[i] ; to->type = from->type ; } SYMMETRY_ELEMENT * init_improper_axis( gint ia, gint ib, gint ic ) { SYMMETRY_ELEMENT * axis ; gdouble a[ DIMENSION ], b[ DIMENSION ], c[ DIMENSION ] ; gdouble centerpoint[ DIMENSION ] ; gdouble r ; gint i ; if( verbose > 0 ) printf( "Trying sn axis for the triplet (%d,%d,%d)\n", ia, ib, ic ) ; StatTotal++ ; /* First, reduce the problem to Cn case */ for( i = 0 ; i < DIMENSION ; i++ ){ a[i] = Atoms[ia].x[i] - CenterOfSomething[i] ; b[i] = Atoms[ib].x[i] - CenterOfSomething[i] ; c[i] = Atoms[ic].x[i] - CenterOfSomething[i] ; } for( i = 0, r = 0 ; i < DIMENSION ; i++ ){ centerpoint[i] = a[i] + c[i] + 2*b[i] ; r += centerpoint[i]*centerpoint[i] ; } r = sqrt(r) ; if( r <= ToleranceSame ){ StatEarly++ ; if( verbose > 0 ) printf( " atoms can not define improper axis of the order more than 2\n" ) ; return NULL ; } for( i = 0 ; i < DIMENSION ; i++ ) centerpoint[i] /= r ; for( i = 0, r = 0 ; i < DIMENSION ; i++ ) r += centerpoint[i] * b[i] ; for( i = 0 ; i < DIMENSION ; i++ ) b[i] = 2*r*centerpoint[i] - b[i] ; /* Do a quick check of geometry validity */ if( ( axis = init_axis_parameters( a, b, c ) ) == NULL ){ if( verbose > 0 ) printf( " no coherrent improper axis is defined by the points\n" ) ; return NULL ; } axis->transform_atom = rotate_reflect_atom ; if( refine_symmetry_element( axis, 1 ) < 0 ){ if( verbose > 0 ) printf( " refinement failed for the s%d axis\n", axis->order ) ; destroy_symmetry_element( axis ) ; return NULL ; } return axis ; } /* * Control routines */ /****************************************/ /* calculate atom to centroid distances */ /****************************************/ void find_distances(void) { gint i; gdouble r[3]; #if DEBUG P3VEC("Centroid is ", CenterOfSomething); #endif DistanceFromCenter = g_malloc(AtomsCount*sizeof(gdouble)); for (i=0 ; i TolerancePrimary ) continue ; /* A very cheap, but quite effective check */ /* * First, let's try to get it cheap and use CenterOfSomething */ for( k = 0, r = 0 ; k < DIMENSION ; k++ ){ center[k] = ( Atoms[i].x[k] + Atoms[j].x[k] ) / 2 ; r += pow2( center[k] - CenterOfSomething[k] ) ; } r = sqrt(r) ; if( r > 5*TolerancePrimary ){ /* It's Ok to use CenterOfSomething */ if( ( axis = init_c2_axis( i, j, CenterOfSomething ) ) != NULL ){ NormalAxesCount++ ; NormalAxes = g_realloc(NormalAxes, sizeof(SYMMETRY_ELEMENT *) * NormalAxesCount); NormalAxes[ NormalAxesCount - 1 ] = axis; } continue; } /* * Now, C2 axis can either pass through an atom, or through the * middle of the other pair. */ for( k = 0 ; k < AtomsCount ; k++ ){ if( ( axis = init_c2_axis( i, j, Atoms[k].x ) ) != NULL ){ NormalAxesCount++ ; NormalAxes = g_realloc(NormalAxes, sizeof(SYMMETRY_ELEMENT *) * NormalAxesCount); NormalAxes[ NormalAxesCount - 1 ] = axis; } } /* * Prepare data for an additional pre-screening check */ for( k = 0 ; k < AtomsCount ; k++ ){ for( l = 0, r = 0 ; l < DIMENSION ; l++ ) r += pow2( Atoms[k].x[l] - center[l] ) ; distances[k] = sqrt(r) ; } for( k = 0 ; k < AtomsCount ; k++ ){ for( l = 0 ; l < AtomsCount ; l++ ){ if( Atoms[k].type != Atoms[l].type ) continue ; if( fabs( DistanceFromCenter[k] - DistanceFromCenter[l] ) > TolerancePrimary || fabs( distances[k] - distances[l] ) > TolerancePrimary ) continue ; /* We really need this one to run reasonably fast! */ for( m = 0 ; m < DIMENSION ; m++ ) center[m] = ( Atoms[k].x[m] + Atoms[l].x[m] ) / 2 ; if( ( axis = init_c2_axis( i, j, center ) ) != NULL ) { NormalAxesCount++ ; NormalAxes = g_realloc(NormalAxes, sizeof(SYMMETRY_ELEMENT * ) * NormalAxesCount); NormalAxes[ NormalAxesCount - 1 ] = axis ; } } } } } g_free(distances); } void find_higher_axes(void) { gint i, j, k ; SYMMETRY_ELEMENT *axis; for( i = 0 ; i < AtomsCount ; i++ ){ for( j = i + 1 ; j < AtomsCount ; j++ ){ if( Atoms[i].type != Atoms[j].type ) continue ; if( fabs( DistanceFromCenter[i] - DistanceFromCenter[j] ) > TolerancePrimary ) continue ; /* A very cheap, but quite effective check */ for( k = 0 ; k < AtomsCount ; k++ ){ if( Atoms[i].type != Atoms[k].type ) continue ; if( ( fabs( DistanceFromCenter[i] - DistanceFromCenter[k] ) > TolerancePrimary ) || ( fabs( DistanceFromCenter[j] - DistanceFromCenter[k] ) > TolerancePrimary ) ) continue ; if( ( axis = init_higher_axis( i, j, k ) ) != NULL ){ NormalAxesCount++ ; NormalAxes = g_realloc(NormalAxes, sizeof(SYMMETRY_ELEMENT *) * NormalAxesCount); NormalAxes[ NormalAxesCount - 1 ] = axis ; } } } } } void find_improper_axes(void) { gint i, j, k ; SYMMETRY_ELEMENT * axis ; for( i = 0 ; i < AtomsCount ; i++ ){ for( j = i + 1 ; j < AtomsCount ; j++ ){ for( k = 0 ; k < AtomsCount ; k++ ){ if ((axis = init_improper_axis( i, j, k ) ) != NULL) { ImproperAxesCount++ ; ImproperAxes = g_realloc(ImproperAxes, sizeof(SYMMETRY_ELEMENT *) * ImproperAxesCount); ImproperAxes[ ImproperAxesCount - 1 ] = axis ; } } } } } /*****************/ /* main sequence */ /*****************/ void find_symmetry_elements( void ) { find_distances(); find_inversion_centers(); find_planes(); find_infinity_axis(); find_c2_axes(); find_higher_axes(); find_improper_axes(); } gint compare_axes( const void *a, const void *b ) { SYMMETRY_ELEMENT * axis_a = *(SYMMETRY_ELEMENT**) a ; SYMMETRY_ELEMENT * axis_b = *(SYMMETRY_ELEMENT**) b ; gint i, order_a, order_b ; order_a = axis_a->order ; if( order_a == 0 ) order_a = 10000 ; order_b = axis_b->order ; if( order_b == 0 ) order_b = 10000 ; if( ( i = order_b - order_a ) != 0 ) return i ; if( axis_a->maxdev > axis_b->maxdev ) return -1 ; if( axis_a->maxdev < axis_b->maxdev ) return 1 ; return 0 ; } void sort_symmetry_elements( void ) { if( PlanesCount > 1 ){ qsort( Planes, PlanesCount, sizeof( SYMMETRY_ELEMENT * ), compare_axes ) ; } if( NormalAxesCount > 1 ){ qsort( NormalAxes, NormalAxesCount, sizeof( SYMMETRY_ELEMENT * ), compare_axes ) ; } if( ImproperAxesCount > 1 ){ qsort( ImproperAxes, ImproperAxesCount, sizeof( SYMMETRY_ELEMENT * ), compare_axes ) ; } } void summarize_symmetry_elements( void ) { gint i; NormalAxesCounts = g_malloc0((MaxAxisOrder+1)*sizeof(gint)); ImproperAxesCounts = g_malloc0((MaxAxisOrder+1)*sizeof(gint)); for( i = 0 ; i < NormalAxesCount ; i++ ) NormalAxesCounts[ NormalAxes[i]->order ]++ ; for( i = 0 ; i < ImproperAxesCount ; i++ ) ImproperAxesCounts[ ImproperAxes[i]->order ]++ ; } /*************************************/ /* update symmetry info in model pak */ /*************************************/ #define DEBUG_UPDATE_SYMMETRY 0 void update_symmetry(struct model_pak *data) { gint i, j , k, n, m, p; gdouble angle; GString *code; struct symop_pak *symops; /* free the list items */ g_strfreev(data->symmetry.items); n = PlanesCount + NormalAxesCount + ImproperAxesCount + InversionCentersCount; #if DEBUG_UPDATE_SYMMETRY printf("Model has %d symmetry elements:\n", n); printf("%d Planes,\n", PlanesCount); printf("%d Rotation axes,\n", NormalAxesCount); printf("%d Improper rotation axes,\n", ImproperAxesCount); printf("%d Inversion centers.\n", InversionCentersCount); #endif /* nothing found? */ if (!n) { data->symmetry.num_items = 1; data->symmetry.items = g_malloc(2*sizeof(gchar *)); *(data->symmetry.items) = g_strdup("none"); *(data->symmetry.items+1) = NULL; return; } /* otherwise continue */ g_free((data->symmetry.symops)); data->symmetry.symops = g_malloc(n * sizeof(struct symop_pak)); /* this probably will overallocate (but ensures space for NULL termination) */ data->symmetry.items = g_malloc((n+1) * sizeof(gchar *)); code = g_string_new(NULL); /* fill out with operations found */ /* j follows number of symop elements/matrices */ symops = data->symmetry.symops; j = k = 0; if (InversionCentersCount) { g_string_sprintfa(code, "(i) " ) ; *((data->symmetry.items)+k++) = g_strdup("Inversion centre"); /* store the symmetry operation */ (symops+j)->type = INVERSION; VEC3SET(&((symops+j)->matrix[0]),-1.0, 0.0, 0.0); VEC3SET(&((symops+j)->matrix[3]), 0.0,-1.0, 0.0); VEC3SET(&((symops+j)->matrix[6]), 0.0, 0.0,-1.0); j++; } /* infinite axes */ if (NormalAxesCounts[0]) { *((data->symmetry.items)+k++) = g_strdup_printf("%d infinite rotation axes", NormalAxesCounts[0]); g_string_sprintfa(code, "%d*(Cinf) ", NormalAxesCounts[0] ) ; /* j += NormalAxesCounts[0]; */ } p=0; for (i=MaxAxisOrder ; i>=2 ; i--) { switch (NormalAxesCounts[i]) { case 0: continue; case 1: g_string_sprintfa(code, "(C%d) ", i ); break; default: g_string_sprintfa(code, "%d*(C%d) ", NormalAxesCounts[i], i ); } *((data->symmetry.items)+k++) = g_strdup_printf("%d order %d rotation axes", NormalAxesCounts[i],i); /* store the symmetry operation */ for (m=0 ; mtype = PAXIS; angle = 2.0*G_PI / (gdouble) i; /* get_rot_matrix((symops+j)->matrix, PAXIS, &(NormalAxes[p++]->direction[0]), i); */ matrix_v_rotation((symops+j)->matrix, &(NormalAxes[p++]->direction[0]), angle); j++; } } for (i=MaxAxisOrder ; i>=2 ; i--) { /* j += ImproperAxesCounts[i]; */ switch (ImproperAxesCounts[i]) { case 0: continue; case 1: g_string_sprintfa(code, "(S%d) ", i); break; default: g_string_sprintfa(code, "%d*(S%d) ", ImproperAxesCounts[i], i); } *((data->symmetry.items)+k++) = g_strdup_printf("%d order %d improper axes", ImproperAxesCounts[i],i); } p=0; switch (PlanesCount) { case 0: break; case 1: g_string_sprintfa(code, "(sigma) "); *((data->symmetry.items)+k++) = g_strdup_printf("reflection plane"); break; default: g_string_sprintfa(code, "%d*(sigma) ", PlanesCount); *((data->symmetry.items)+k++) = g_strdup_printf("%d reflection planes", PlanesCount); /* store the symmetry operation */ for (m=0 ; mmatrix, PLANE, &(NormalAxes[p++]->direction[0]), i); (symops+j)->type = PLANE; j++; */ } } #if DEBUG_UPDATE_SYMMETRY printf("symmetry code: {%s}\n", code->str) ; printf("Filled out %d items (allocated for %d)\n",j,n); for (m=0 ; mmatrix); } #endif SymmetryCode = g_strdup(code->str); /* terminate, so that g_strfreev works */ data->symmetry.num_symops = j; *((data->symmetry.items)+k++) = NULL; data->symmetry.num_items = k; g_string_free(code, TRUE); } void identify_point_group(struct model_pak *data) { gint i; gint last_matching = -1; gint matching_count = 0; for (i=0 ; isymmetry.pg_name); data->symmetry.pg_name = g_strdup(PointGroups[last_matching].group_name); } else { g_free(data->symmetry.pg_name); data->symmetry.pg_name = g_strdup("unknown"); } } /* * Input/Output */ gint get_coords(struct model_pak *data) { GSList *list; struct core_pak *core; Atoms = g_malloc0(g_slist_length(data->cores) * sizeof(OBJECT)); /* read 'em in */ AtomsCount=0; for (list=data->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->status & (DELETED | HIDDEN)) continue; Atoms[AtomsCount].type = core->atom_code; /* ARR3SET(Atoms[AtomsCount].x, core->x); */ ARR3SET(Atoms[AtomsCount].x, core->rx); AtomsCount++; } /* transfer centroid */ ARR3SET(CenterOfSomething, data->centroid); return(0); } /*************/ /* main call */ /*************/ void gui_symmetry_analyse(void) { struct model_pak *data = sysenv.active_model; /* checks */ if (!data) return; if (!g_slist_length(data->cores)) return; /* force all atom view */ unhide_atoms(); data->asym_on = FALSE; /* init pointers, so we don't free something that wasn't found & alloc'd */ DistanceFromCenter = NULL; InversionCenters = NULL; SymmetryCode = NULL; /* convert formats */ if (get_coords(data)) { printf("Error reading in atomic coordinates\n"); return; } PlanesCount = NormalAxesCount = ImproperAxesCount = InversionCentersCount = 0; /* FIXME - globals need init, as successive calls overlap */ find_symmetry_elements(); sort_symmetry_elements(); summarize_symmetry_elements(); #if DEBUG if (BadOptimization) { printf("Refinement of some symmetry elements was terminated before" "convergence was reached.\n Some symmetry elements may remain" "unidentified.\n") ; } #endif update_symmetry(data); /* if 0 sym elements, can identify wrongly for some reason */ if (data->symmetry.num_symops) identify_point_group(data); /* free if allocated */ if (DistanceFromCenter) g_free(DistanceFromCenter); if (SymmetryCode) g_free(SymmetryCode); if (InversionCentersCount) g_free(InversionCenters); /* update widget */ gui_active_refresh(); } /*****************************/ /* hide a symmetry operation */ /*****************************/ #define DEBUG_DELETE_SYMOP 0 gint gui_symmetry_hide(struct model_pak *data, gint num) { gint flag, cycle; gdouble *mat, vec[3], dx[3]; GSList *list1, *list2; struct core_pak *core1, *core2; /* get the matrix */ mat = (data->symmetry.symops+num)->matrix; #if DEBUG_DELETE_SYMOP P3MAT("",mat); #endif for (list1=data->cores ; list1 ; list1=g_slist_next(list1)) { core1 = list1->data; if (core1->status & HIDDEN) continue; /* no need for latmat? (ie isolated molecules only) */ ARR3SET(vec, core1->x); /* do rotation */ /* multiple applications (until 1st arrive at start again) */ cycle=0; while(!cycle) { vecmat(mat, vec); /* which atom of the same type (if any) does it generate? */ flag=0; for (list2=data->cores ; list2 ; list2=g_slist_next(list2)) { core2 = list2->data; if (core1->atom_code != core2->atom_code) continue; /* attempt to match rotated i with some j */ ARR3SET(dx, vec); ARR3SUB(dx, core2->x); if (VEC3MAGSQ(dx) < POSITION_TOLERANCE) { #if DEBUG_DELETE_SYMOP printf("[%d : %d]\n",i,j); #endif /* we've found at least 1 atom this sym op produces */ flag++; /* same core? */ if (core1 == core2) cycle=1; else core2->status |= HIDDEN; /* found a match, so we can stop searching */ break; } } /* atom generates nothing -> sym op candidate failed */ if (!flag) return(1); } } return(0); } /**********************************/ /* reduce to asymetric components */ /**********************************/ void gui_symmetry_toggle(void) { gint i; GSList *list; struct core_pak *core; struct model_pak *model = sysenv.active_model; if (!model) return; model->asym_on ^= 1; if (model->asym_on) { switch (model->periodic) { case 3: for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; if (!core->primary) core->status |= HIDDEN; } break; case 0: for (i=model->symmetry.num_symops ; i-- ; ) gui_symmetry_hide(model, i); break; } } else { /* remove hidden flag */ for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; core->status &= ~HIDDEN; } } redraw_canvas(SINGLE); } /*******************************/ /* symmetry information widget */ /*******************************/ void gui_symmetry_refresh(GtkWidget *box) { gint i; gchar *value; GtkTreeIter iter; GtkCellRenderer *renderer; GtkTreeViewColumn *column; static GtkListStore *ls=NULL; static GtkWidget *tv=NULL, *frame, *vbox; gchar *label[] = {"space group", "system", "atoms", "a", "b", "c", "alpha", "beta", "gamma", "surface area", "volume", NULL}; if (box) { g_assert(ls == NULL); g_assert(tv == NULL); /* new tree list */ ls = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_STRING); tv = gtk_tree_view_new_with_model(GTK_TREE_MODEL(ls)); gtk_box_pack_start(GTK_BOX(box), tv, TRUE, TRUE, 0); /* setup cell renderers */ renderer = gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes(" ", renderer, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(tv), column); renderer = gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes(" ", renderer, "text", 1, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(tv), column); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(tv), FALSE); /* currently, allow nothing to be selected */ gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(tv)), GTK_SELECTION_NONE); /* actions */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(box), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 1); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_button_x("Guess Pointgroup ", gui_symmetry_analyse, NULL, vbox); gui_button_x("Asymmetric unit ", gui_symmetry_toggle, NULL, vbox); } else { struct model_pak *model = sysenv.active_model; g_assert(ls != NULL); g_assert(tv != NULL); gtk_list_store_clear(ls); if (!model) return; /* TODO - put symmetry info in its own pulldown? */ /* Symmetry part */ if (model->periodic) { /* populate with space group info only if 3D */ if (model->periodic == 3) i=0; else i=3; while (label[i]) { value = NULL; switch (i) { case 0: value = g_strdup_printf("%s", model->sginfo.spacename); break; case 1: value = g_strdup_printf("%s", model->sginfo.latticename); break; /* case 2: value = g_strdup_printf("%d (%d)", model->num_atoms, model->num_asym); break; */ case 3: value = g_strdup_printf("%8.4f", model->pbc[0]); break; case 4: if (model->periodic > 1) value = g_strdup_printf("%8.4f", model->pbc[1]); break; case 5: if (model->periodic > 2) value = g_strdup_printf("%8.4f", model->pbc[2]); break; case 6: if (model->periodic > 2) value = g_strdup_printf("%8.2f", R2D*model->pbc[3]); break; case 7: if (model->periodic > 2) value = g_strdup_printf("%8.2f", R2D*model->pbc[4]); break; case 8: if (model->periodic > 1) value = g_strdup_printf("%8.2f", R2D*model->pbc[5]); break; case 9: if (model->periodic == 2) value = g_strdup_printf("%.4f", model->area); break; case 10: if (model->periodic == 3) value = g_strdup_printf("%.2f", model->volume); break; } /* only add if a valid value */ if (value) { gtk_list_store_append(ls, &iter); gtk_list_store_set(ls, &iter, 0, label[i], -1); gtk_list_store_set(ls, &iter, 1, value, -1); /* msb_list = g_slist_prepend(msb_list, value); */ } i++; } } else { if (model->id == MORPH) { i = PG_Index(model->sginfo.pointgroup); gtk_list_store_append(ls, &iter); gtk_list_store_set(ls, &iter, 0, "point group", 1, PG_Names[i], -1); } else { /* populate with symmetry info */ for (i=0 ; isymmetry.num_items ; i++) { gtk_list_store_append(ls, &iter); value = *((model->symmetry.items)+i); gtk_list_store_set(ls, &iter, 0, value, -1); } /* point group */ gtk_list_store_append(ls, &iter); gtk_list_store_set(ls, &iter, 0, "point group", 1, model->symmetry.pg_name, -1); } } } /* fixes data hiding that can occur when columns get resized between models */ gtk_tree_view_columns_autosize(GTK_TREE_VIEW(tv)); } gdis-0.90/file_povray.c0000644000175000017500000006215210445461563013527 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #ifdef __APPLE__ #include #else #include #endif #include "gdis.h" #include "coords.h" #include "file.h" #include "matrix.h" #include "quaternion.h" #include "numeric.h" #include "morph.h" #include "opengl.h" #include "render.h" #include "select.h" #include "spatial.h" #include "interface.h" #include "colourlib.h" extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /* global render parameters */ gdouble p2a; /***************************/ /* Setup POVray parameters */ /***************************/ void povray_hdr(FILE *fp, struct model_pak *data) { gdouble xvec, yvec, amb, pos[3], colour[3]; gdouble x[3], o[3], v[3], e[3]; GSList *list; struct light_pak *light; struct camera_pak *camera; g_assert(data != NULL); g_assert(data->camera != NULL); fprintf(fp,"#include \"colors.inc\" \n"); fprintf(fp,"#include \"finish.inc\" \n"); fprintf(fp,"#include \"glass.inc\" \n"); fprintf(fp,"#include \"metals.inc\" \n"); fprintf(fp,"#include \"textures.inc\" \n"); /* background colour (except for glass morphologies) */ fprintf(fp,"background { color rgb<%f,%f,%f0> }\n", sysenv.render.bg_colour[0], sysenv.render.bg_colour[1], sysenv.render.bg_colour[2]); /* pixel to angstrom conversion, with yet another magic number... */ p2a = 0.565 * (gdouble) sysenv.render.width / data->rmax; /* preserve model aspect ratio for the given image size */ xvec = yvec = 2.0*sysenv.rsize; if (sysenv.render.width > sysenv.render.height) xvec *= sysenv.render.width/sysenv.render.height; if (sysenv.render.height > sysenv.render.width) yvec *= sysenv.render.height/sysenv.render.width; /* compute camera position and orientation */ camera = data->camera; ARR3SET(x, camera->x); ARR3SET(o, camera->o); ARR3SET(v, camera->v); switch (camera->mode) { case FREE: break; default: case LOCKED: quat_rotate(x, camera->q); quat_rotate(o, camera->q); quat_rotate(v, camera->q); break; } /* convert viewing vector to a location */ ARR3ADD(v, x); /* camera zoom */ xvec *= camera->zoom; yvec *= camera->zoom; /* NEW - enable movies of left/right eye to be produced */ if (sysenv.stereo) { /* get axis for eye translation (view x up vector) */ crossprod(e, v, o); normalize(e, 3); /* the old 2% rule ... */ VEC3MUL(e, 0.02 * sysenv.rsize); /* default is left eye only */ if (sysenv.render.stereo_right) { ARR3ADD(x, e); ARR3ADD(v, e); } else { ARR3SUB(x, e); ARR3SUB(v, e); } } /* sky is the orientation vector */ /* right and up give the perspective */ if (camera->perspective) { fprintf(fp,"camera { location <%f,%f,%f>\n", x[0], x[1], x[2]); fprintf(fp," sky <%f,%f,%f>\n", o[0], o[1], o[2]); fprintf(fp," right <%f,0,0> up <%f,0,0>\n", xvec, yvec); fprintf(fp," look_at <%f,%f,%f>\n", v[0], v[1], v[2]); fprintf(fp," angle %f }\n", camera->fov); } else { fprintf(fp,"camera { orthographic location <%f,%f,%f>\n", x[0], x[1], x[2]); fprintf(fp," sky <%f,%f,%f>\n", o[0], o[1], o[2]); fprintf(fp," right <%f,0,0> up <%f,0,0>\n", xvec, yvec); fprintf(fp," look_at <%f,%f,%f> }\n", v[0], v[1], v[2]); } /* create light sources */ for (list=sysenv.render.light_list ; list ; list=g_slist_next(list)) { light = list->data; ARR3SET(pos, light->x); /* OpenGL -> POVRay axes */ pos[0] *= -1.0; pos[1] *= -1.0; pos[2] *= -1.0; quat_rotate(pos, camera->q); switch (light->type) { case POSITIONAL: fprintf(fp,"light_source\n {\n <%f,%f,%f>\n", pos[0], pos[1], pos[2]); break; case DIRECTIONAL: /* move away far enough so the rays are ~ // */ VEC3MUL(pos, 100.0*data->rmax); fprintf(fp,"light_source\n {\n <%f,%f,%f>\n", pos[0], pos[1], pos[2]); break; default: continue; } /* simulate OpenGL style lights */ ARR3SET(colour, light->colour); VEC3MUL(colour, light->specular); if (sysenv.render.shadowless) fprintf(fp," color rgb<%f,%f,%f> shadowless }\n", colour[0], colour[1], colour[2]); else { /* old style lighting */ /* fprintf(fp," color rgb<%f,%f,%f> }\n", colour[0], colour[1], colour[2]); */ fprintf (fp,"color White\n"); fprintf (fp," area_light <5, 0, 0,>, <0, 0, 5>, 5, 5\n"); fprintf (fp," adaptive 1\n jitter\n}\n"); } } /* fill-light to bring out the shadows */ fprintf(fp,"light_source{<%f,%f,%f> color Gray80 shadowless}\n", pos[0], pos[1], pos[2]); /* morph is too dark with just the above, sky_sphere is *nice* */ /* TODO - choice of colour eg white/grey/light blue */ /* NB: white is a bit too bright (even with 0 ambience) */ if (data->id == MORPH) { if (!sysenv.render.wire_surface && !sysenv.render.shadowless) { fprintf(fp,"sky_sphere { pigment {gradient y color_map " "{[0, 1 color Gray20 color White]} rotate x*45}}\n"); } } /* POVRay is a bit darker than OpenGL */ amb = 20.0*sysenv.render.ambience; fprintf(fp,"global_settings { ambient_light rgb<%f, %f, %f> assumed_gamma 2.2}\n",amb,amb,amb); } /* TODO -rename these something sensible */ /*********************/ /* forward algorithm */ /*********************/ void povray_rgb_decode(gint n, gdouble *c) { c[0] = ((n >> 10) & 31)/31.0; c[1] = ((n >> 5) & 31)/31.0; c[2] = (n & 31)/31.0; } /**********************/ /* backward algorithm */ /**********************/ gint povray_rgb_encode(gdouble *c) { gint n; n = nearest_int(c[2]*31); n += nearest_int(c[1]*31) << 5; n += nearest_int(c[0]*31) << 10; return(n); } /********************************************/ /* write a set of pre-defined textures to */ /* a POV-Ray file. These textures describe */ /* 256 HSV colours for linearly mapping */ /* a property from red to blue */ /********************************************/ void write_povray_colour_textures(FILE *povfile, struct model_pak *data, int colour_style) { int i; float hue, red,green,blue; switch (colour_style) { case HSV: for (i=0; i<360; i++) { hue = (float)i; hsv2rgb(hue,1.0,1.0,&red,&green,&blue); fprintf(povfile,"#declare HSV%d = texture{pigment{color rgbt<%.2f,%.2f,%.2f,%.1f>}",i,red,green,blue,1.0-sysenv.render.transmit); fprintf(povfile," finish { Phong_Shiny } }\n"); } break; /* FIXME - we only need to do this texture declaration for meshes (ie smooth tri spatials) */ case REDWHITEBLUE: for (i=0 ; i<32768 ; i++) { gdouble c[3]; fprintf(povfile,"#declare RGB_%d = texture{pigment{color rgb ", i); povray_rgb_decode(i, c); fprintf(povfile," <%f,%f,%f> } finish { Phong_Shiny } }\n", c[0], c[1], c[2]); /* debug */ /* { gint j; printf("[%d] : <%f,%f,%f> :", i, c[0], c[1], c[2]); j = povray_rgb_encode(c); printf("[%d]\n", j); } */ } break; } } /****************************/ /* make a POVRAY input file */ /****************************/ /* TODO - eliminate redundancy between this and the opengl code */ /* TODO - put this stuff in file_povray.c */ /* Note by JJM. Need to minimise unnecessary blankspaces in the POV-Ray file - it can get very big! */ #define DEBUG_MKPOV 0 gint write_povray(gchar *povfile, struct model_pak *data) { gint n, m, i, j; gint r, g, b; gint style; /* for selecting the colour style of iso-surfaces */ gdouble rad, scale, len; gdouble x1, y1, z1, x2, y2, z2; gdouble xmin, ymin, zmin, xmax, ymax, zmax; gdouble rf, gf, bf; gdouble vec[3], vec1[3], vec2[3]; gdouble v1[4], v2[4], v3[3], n1[3], n2[3], n3[3]; gdouble ctrl[8][3], mat4[16]; gint colour_index[3]; GSList *list, *ilist, *plist, *rlist, *pipe_list[4]; struct core_pak *core1; struct object_pak *object; struct ribbon_pak *ribbon; struct spatial_pak *spatial; struct pipe_pak *pipe; struct image_pak *image; struct vec_pak *p1, *p2, *p3; struct elem_pak elem; FILE *fp; /* checks */ g_assert(data != NULL); /* open file & init */ fp = fopen(povfile, "w"); if (!fp) { printf("Error, render(): can't open %s!\n", povfile); return(1); } /* strcpy(povfile,models[model].filename); */ /* file_extension -> .pov */ /* setup */ /* JJM temporary solution for picking the colour-style of surfaces */ //style = HSV; style = REDWHITEBLUE; povray_hdr(fp,data); write_povray_colour_textures(fp,data,style); /* limits - for intelligent axes placement */ xmin = ymin = zmin = 99999999.9; xmax = ymax = zmax = -99999999.9; /* pixel to coord scaling factor */ scale = sysenv.subscale * 0.5 / data->rmax; /* FIXME - can we just sub in data->display_lattice??? */ /* precalc matrix products */ ARR3SET(&mat4[0], &data->latmat[0]); ARR3SET(&mat4[4], &data->latmat[3]); ARR3SET(&mat4[8], &data->latmat[6]); ARR3SET(v1, data->centroid); vecmat(data->latmat, v1); mat4[3] = -v1[0]; mat4[7] = -v1[1]; mat4[11] = -v1[2]; VEC4SET(&mat4[12], 0.0, 0.0, 0.0, 1.0); /* do atoms */ #if DEBUG_MKPOV printf("Doing atoms...\n"); #endif /* enumerate periodic images */ plist=NULL; do { if (plist) { /* image */ image = plist->data; ARR3SET(vec, image->rx); plist = g_slist_next(plist); } else { /* original */ VEC3SET(vec, 0.0, 0.0, 0.0); plist = data->images; } /* only if same type */ for (list=data->cores ; list ; list=g_slist_next(list)) { core1 = list->data; if (core1->status & (DELETED | HIDDEN)) continue; ARR3SET(vec1, core1->rx); ARR3ADD(vec1, vec); /* get current colour */ r = core1->colour[0]; g = core1->colour[1]; b = core1->colour[2]; /* convert to povray rgb format */ rf = (gdouble) (r) / 65535.0; gf = (gdouble) (g) / 65535.0; bf = (gdouble) (b) / 65535.0; switch(core1->render_mode) { /* rounded end are now draw in the bond section */ case LIQUORICE: case STICK: if (core1->bonds) break; case BALL_STICK: fprintf(fp,"sphere { <%f, %f, %f>, %f ",vec1[0],vec1[1],vec1[2], sysenv.render.ball_rad); /* TODO - can we adjust this to get a wire frame sphere? */ fprintf(fp,"texture{pigment{color rgb<%f,%f,%f>",rf,gf,bf); if (core1->ghost) fprintf(fp, " transmit 0.6}\n"); else fprintf(fp, "}\n"); fprintf(fp, " finish{Phong_Shiny}}}\n"); /* fprintf(fp," finish{phong %f phong_size %d }}}\n", sysenv.render.ahl_strength, (gint) sysenv.render.ahl_size); */ /* fprintf(fp," finish{specular 0.6 diffuse 0.8 }}}\n"); */ break; case CPK: /* FIXME - calling get_elem_data() all the time is inefficient */ get_elem_data(core1->atom_code, &elem, data); rad = elem.vdw; rad *= sysenv.render.cpk_scale; fprintf(fp,"sphere { <%f, %f, %f>, %f ",vec1[0],vec1[1],vec1[2],rad); fprintf(fp,"texture{pigment{color rgb<%f,%f,%f>",rf,gf,bf); if (core1->ghost) fprintf(fp, " transmit 0.6}\n"); else fprintf(fp, "}\n"); fprintf(fp, " finish{Phong_Shiny}}}\n"); /* fprintf(fp," finish{phong %f phong_size %d }}}\n", sysenv.render.ahl_strength, (gint) sysenv.render.ahl_size); */ /* fprintf(fp," finish{specular 0.6 diffuse 0.8 }}}\n"); */ break; } } } while (plist); #if DEBUG_MKPOV printf("Doing bonds...\n"); #endif /* calculate all bonds */ render_make_pipes(pipe_list, data); /* enumerate the supplied pipes (half bonds) */ for (i=0 ; i<4 ; i++) { for (list=pipe_list[i] ; list ; list=g_slist_next(list)) { pipe = list->data; /* original + image iteration */ ilist = NULL; do { /* original */ ARR3SET(v1, pipe->v1); ARR3SET(v2, pipe->v2); if (ilist) { image = ilist->data; /* image */ ARR3ADD(v1, image->rx); ARR3ADD(v2, image->rx); ilist = g_slist_next(ilist); } else ilist = data->images; /* bond type */ switch(i) { /* normal */ case 0: fprintf(fp,"cylinder { <%f,%f,%f>,\n<%f,%f,%f>, %f\n", v1[0],v1[1],v1[2],v2[0],v2[1],v2[2], sysenv.render.stick_rad); fprintf(fp,"open texture{pigment{color rgb<%f,%f,%f>}\n", pipe->colour[0], pipe->colour[1], pipe->colour[2]); fprintf(fp, " finish{Phong_Shiny}}}\n"); /* fprintf(fp," finish{phong %f phong_size %d }}}\n", sysenv.render.ahl_strength, (gint) sysenv.render.ahl_size); */ break; /* ghosts */ case 1: fprintf(fp,"cylinder { <%f,%f,%f>,\n<%f,%f,%f>, %f\n", v1[0],v1[1],v1[2],v2[0],v2[1],v2[2], sysenv.render.stick_rad); fprintf(fp,"open texture{pigment{color rgb<%f,%f,%f> transmit 0.6}", pipe->colour[0], pipe->colour[1], pipe->colour[2]); fprintf(fp, " finish{Phong_Shiny}}}\n"); /* fprintf(fp," finish{phong %f phong_size %d }}}\n", sysenv.render.ahl_strength, (gint) sysenv.render.ahl_size); */ break; /* line */ case 3: /* FIXME - need a better way to set "line" thicknesses */ fprintf(fp,"cylinder { <%f,%f,%f>,\n<%f,%f,%f>, %f\n", v1[0],v1[1],v1[2],v2[0],v2[1],v2[2], 2.0/p2a); fprintf(fp,"open texture{pigment{color rgb<%f,%f,%f>}\n", pipe->colour[0], pipe->colour[1], pipe->colour[2]); fprintf(fp, " finish{Phong_Shiny}}}\n"); /* fprintf(fp," finish{phong %f phong_size %d }}}\n", sysenv.render.ahl_strength, (gint) sysenv.render.ahl_size); */ break; /* TODO - wire frame bonds??? */ default: break; } } while (ilist); } } /* free all pipes */ for (i=4 ; i-- ; ) free_slist(pipe_list[i]); #if DEBUG_MKPOV printf("Doing special objects...\n"); #endif /********/ /* AXES */ /********/ /* FIXME - stuffs up under new camera stuff */ if (0) if (data->show_axes) { /* origin */ VEC3SET(vec1, 1.0, 1.0, 0.0); VEC3MUL(vec1, data->rmax); /* cope with scaling */ vec1[2] -= 4.0*sysenv.rsize; for (j=0 ; j<3 ; j++) { /* get end point */ ARR3SET(vec2, data->axes[j].rx); ARR3ADD(vec2, vec1); /* cope with scaling */ vec2[2] -= 4.0*sysenv.rsize; /* HACK for degenerate cylinders (povray spews on these) */ ARR3SET(v3, vec1); ARR3SUB(v3, vec2); if (VEC3MAGSQ(v3) < 0.1) continue; /* draw */ fprintf(fp,"cylinder { <%f,%f,%f>,<%f,%f,%f>, %f\n", vec1[0],vec1[1],vec1[2],vec2[0],vec2[1],vec2[2], 2.0/p2a); fprintf(fp," texture { pigment {White} } }\n"); } } /********/ /* CELL */ /********/ if (data->show_cell && data->periodic) { rad = sysenv.render.frame_thickness / p2a; /* ends */ for (j=0 ; j<8 ; j++) { m = 2*(j/2) + 1; n = 4*(j/4); ARR3SET(vec, data->cell[m].rx); x1 = vec[0]; y1 = vec[1]; z1 = vec[2]; ARR3SET(vec, data->cell[n].rx); x2 = vec[0]; y2 = vec[1]; z2 = vec[2]; /* HACK for degenerate cylinders (povray spews on these) */ ARR3SET(v3, data->cell[m].rx); ARR3SUB(v3, data->cell[n].rx); if (VEC3MAGSQ(v3) < 0.1) continue; fprintf(fp,"cylinder { <%f,%f,%f>,<%f,%f,%f>, %f\n", x1,y1,z1,x2,y2,z2,rad); fprintf(fp," texture { pigment {White} } }\n"); /* HACK for degenerate cylinders (povray spews on these) */ ARR3SET(v3, data->cell[m].rx); ARR3SUB(v3, data->cell[n+2].rx); if (VEC3MAGSQ(v3) < 0.1) continue; ARR3SET(vec, data->cell[n+2].rx); x2 = vec[0]; y2 = vec[1]; z2 = vec[2]; fprintf(fp,"cylinder { <%f,%f,%f>,<%f,%f,%f>, %f\n", x1,y1,z1,x2,y2,z2,rad); fprintf(fp," texture { pigment {White} } }\n"); } /* sides */ /* skip for 2D periodic models */ if (data->periodic == 3) { m = 0; n = 4; for (j=0 ; j<4 ; j++) { ARR3SET(vec, data->cell[m].rx); x1 = vec[0]; y1 = vec[1]; z1 = vec[2]; ARR3SET(vec, data->cell[n].rx); x2 = vec[0]; y2 = vec[1]; z2 = vec[2]; fprintf(fp,"cylinder { <%f,%f,%f>,<%f,%f,%f>, %f\n", x1,y1,z1,x2,y2,z2,rad); fprintf(fp," texture { pigment {White} } }\n"); m++; n++; } } } /***********/ /* ribbons */ /***********/ for (list=data->ribbons ; list ; list=g_slist_next(list)) { object = list->data; g_assert(object->type == RIBBON); rlist = (GSList *) object->data; while (rlist) { ribbon = rlist->data; fprintf(fp, "bicubic_patch {\n type 1 flatness 0.001\n"); /* NB: POVRay is very slow at rendering ribbons, so halve the quality */ fprintf(fp, " u_steps %d v_steps 2\n", (gint) (sysenv.render.ribbon_quality/2.0)); /* end points */ ARR3SET(&ctrl[0][0], ribbon->r1); ARR3SET(&ctrl[3][0], ribbon->r2); /* get distance between ribbon points */ ARR3SET(vec1, ribbon->x1); ARR3SUB(vec1, ribbon->x2); len = VEC3MAG(vec1); /* shape control points */ ARR3SET(&ctrl[1][0], ribbon->r1); ARR3SET(&ctrl[2][0], ribbon->r2); /* segment length based curvature - controls how flat it is at the cyclic group */ ARR3SET(vec1, ribbon->o1); VEC3MUL(vec1, len*sysenv.render.ribbon_curvature); ARR3ADD(&ctrl[1][0], vec1); ARR3SET(vec2, ribbon->o2); VEC3MUL(vec2, len*sysenv.render.ribbon_curvature); ARR3ADD(&ctrl[2][0], vec2); /* compute offsets for ribbon thickness */ crossprod(vec1, ribbon->n1, ribbon->o1); crossprod(vec2, ribbon->n2, ribbon->o2); normalize(vec1, 3); normalize(vec2, 3); /* thickness vectors for the two ribbon endpoints */ VEC3MUL(vec1, 0.5*sysenv.render.ribbon_thickness); VEC3MUL(vec2, 0.5*sysenv.render.ribbon_thickness); /* ensure these are pointing the same way */ if (via(vec1, vec2, 3) > PI/2.0) { VEC3MUL(vec2, -1.0); } /* init the bottom edge control points */ ARR3SET(&ctrl[4][0], &ctrl[0][0]); ARR3SET(&ctrl[5][0], &ctrl[1][0]); ARR3SET(&ctrl[6][0], &ctrl[2][0]); ARR3SET(&ctrl[7][0], &ctrl[3][0]); /* lift points to make the top edge */ ARR3ADD(&ctrl[0][0], vec1); ARR3ADD(&ctrl[1][0], vec1); ARR3ADD(&ctrl[2][0], vec2); ARR3ADD(&ctrl[3][0], vec2); /* lower points to make the bottom edge */ ARR3SUB(&ctrl[4][0], vec1); ARR3SUB(&ctrl[5][0], vec1); ARR3SUB(&ctrl[6][0], vec2); ARR3SUB(&ctrl[7][0], vec2); fprintf(fp, "<%f, %f, %f>\n", ctrl[0][0], ctrl[0][1], ctrl[0][2]); for (i=1 ; i<4 ; i++) fprintf(fp, ", <%f, %f, %f>\n", ctrl[i][0], ctrl[i][1], ctrl[i][2]); for (i=0 ; i<4 ; i++) fprintf(fp, ", <%f, %f, %f>\n", ctrl[i][0], ctrl[i][1], ctrl[i][2]); for (i=4 ; i<8 ; i++) fprintf(fp, ", <%f, %f, %f>\n", ctrl[i][0], ctrl[i][1], ctrl[i][2]); for (i=4 ; i<8 ; i++) fprintf(fp, ", <%f, %f, %f>\n", ctrl[i][0], ctrl[i][1], ctrl[i][2]); fprintf(fp," texture { pigment { color rgbt<%f, %f, %f, %f> } } no_shadow }\n", ribbon->colour[0], ribbon->colour[1], ribbon->colour[2], 1.0-sysenv.render.transmit); rlist = g_slist_next(rlist); } } /******************/ /* spatial planes */ /******************/ /* FIXME - currently broken for morphology display */ for (list=data->spatial ; list ; list=g_slist_next(list)) { spatial = list->data; switch(spatial->type) { /* special spatials */ case SPATIAL_VECTOR: break; /* generic spatials */ default: /* enumerate periodic images */ plist=NULL; do { if (plist) { /* image */ image = plist->data; ARR3SET(vec2, image->rx); plist = g_slist_next(plist); } else { /* original */ VEC3SET(vec2, 0.0, 0.0, 0.0); plist = data->images; } /* enumerate vertices */ rlist = spatial->list; p1 = NULL; /* TODO - the best way of doing this would be through smooth_triangle() and mesh() */ /* note that these two seem to have to be used together ie can't just use smooth triangle */ /* by itself. Unfortunately, a mesh is something that can have only one colour which makes */ /* it harder to implement - a rewrite would be needed. */ /* TODO - the normal calcs are redundant at present, but may be used in the future */ switch(spatial->method) { case GL_TRIANGLES: fprintf(fp, "#declare Surface=mesh{\n"); while (rlist) { fprintf(fp, "smooth_triangle{ \n"); for (i=3 ; i-- ; ) { p1 = rlist->data; ARR3SET(vec1, vec2); ARR3ADD(vec1, p1->rx); /* can we supply normal at the vertex as well? - YES! */ ARR3SET(vec, p1->rn); fprintf(fp, "<%f,%f,%f><%f,%f,%f>\n", vec1[0], vec1[1], vec1[2], vec[0], vec[1], vec[2]); colour_index[i] = povray_rgb_encode(p1->colour); rlist = g_slist_next(rlist); } fprintf(fp,"texture_list { "); fprintf(fp,"RGB_%d RGB_%d RGB_%d ", colour_index[2],colour_index[1],colour_index[0]); fprintf(fp,"}}\n"); /* CURRENT - attempting to fix up Josh's dodgy colour stuff :-) */ /* switch (style) { case HSV: fprintf(fp,"texture_list{HSV%d HSV%d HSV%d}}\n", colour_index[2],colour_index[1],colour_index[0]); break; case REDWHITEBLUE: fprintf(fp,"texture_list { "); fprintf(fp,"RGB_%d RGB_%d RGB_%d ", colour_index[2],colour_index[1],colour_index[0]); fprintf(fp,"}}\n"); break; } */ } fprintf(fp,"}\nobject { Surface translate <0,0,0> rotate <0,0,0> }\n"); break; case GL_TRIANGLE_STRIP: p1 = rlist->data; ARR3SET(v1, vec2); ARR3ADD(v1, p1->rx); ARR3SET(n1, p1->rn); rlist = g_slist_next(rlist); p2 = rlist->data; ARR3SET(v2, vec2); ARR3ADD(v2, p2->rx); ARR3SET(n2, p2->rn); rlist = g_slist_next(rlist); while (rlist) { p3 = rlist->data; ARR3SET(v3, vec2); ARR3ADD(v3, p3->rx); ARR3SET(n3, p3->rn); fprintf(fp, "triangle { \n"); fprintf(fp, "< %f, %f, %f>", v1[0], v1[1], v1[2]); fprintf(fp, "< %f, %f, %f>", v2[0], v2[1], v2[2]); fprintf(fp, "< %f, %f, %f>\n", v3[0], v3[1], v3[2]); /* FIXME - can we have individual colours at each vertex? */ fprintf(fp, " texture { \n"); fprintf(fp, " pigment { color rgbt<%f, %f, %f, %f> } }\n", p3->colour[0], p3->colour[1], p3->colour[2], 1.0-sysenv.render.transmit); /* NB: POVRay highlight size has reverse sense. */ fprintf(fp, " finish{Phong_Shiny}}}\n"); /* fprintf(fp, " finish { phong %f phong_size %d } }\n", sysenv.render.shl_strength, (gint) sysenv.render.shl_size);*/ ARR3SET(v1, v2); ARR3SET(v2, v3); ARR3SET(n1, n2); ARR3SET(n2, n3); rlist = g_slist_next(rlist); } break; /* general case */ default: fprintf(fp, "polygon { %d\n", g_slist_length(rlist)); while (rlist) { p1 = rlist->data; ARR3SET(vec1, vec2); ARR3ADD(vec1, p1->rx); fprintf(fp, "< %f, %f, %f>", vec1[0], vec1[1], vec1[2]); rlist = g_slist_next(rlist); if (rlist) fprintf(fp, ",\n"); else fprintf(fp, "\n"); } /* FIXME - can we have individual colours at each vertex? */ fprintf(fp, " texture { \n"); fprintf(fp, " pigment { color rgbt<%f, %f, %f, %f> }\n", p1->colour[0], p1->colour[1], p1->colour[2], 1.0-sysenv.render.transmit); /* NB: POVRay highlight size has reverse sense. */ fprintf(fp, " finish{Phong_Shiny}}}\n"); /* fprintf(fp, " finish { phong %f phong_size %d } }\n", sysenv.render.shl_strength, (gint) sysenv.render.shl_size); */ } } while (plist); break; } } fclose(fp); return(0); } gdis-0.90/gui_help.c0000644000175000017500000003213010600706736012772 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #ifdef __APPLE__ #include #else #include #endif #include "gdis.h" #include "gui_shorts.h" #include "dialog.h" #include "scan.h" #include "parse.h" #include "interface.h" #include "gui_image.h" extern struct sysenv_pak sysenv; #define MANUAL_FILE "gdis.manual" GtkTextTag *help_tag_bold, *help_tag_italic, *help_tag_invisible, *help_tag_fixed; /**********************/ /* add a single topic */ /**********************/ void help_topic_new(gchar *topic, gchar *text) { if (topic) { if (text) g_hash_table_insert(sysenv.manual, g_strdup(topic), g_strdup(text)); else g_hash_table_insert(sysenv.manual, g_strdup(topic), "\n"); } else g_hash_table_insert(sysenv.manual, "error", "manual file was probably not found\n"); } /**************************************************/ /* load the help file and process the manual text */ /**************************************************/ void help_init(void) { gint n; gchar *filename, *line, *topic; gpointer scan; GString *buffer; /* hash table with topic label as the key */ sysenv.manual = g_hash_table_new(g_str_hash, g_str_equal); /* open the manual file for scanning */ filename = g_build_filename(sysenv.gdis_path, MANUAL_FILE, NULL); printf("scanning: %s\n", filename); scan = scan_new(filename); g_free(filename); if (!scan) { help_topic_new(NULL, NULL); return; } /* process the manual file */ topic=NULL; buffer = g_string_new(NULL); line = scan_get_line(scan); while (!scan_complete(scan)) { if (g_strncasecmp(line, "%topic ", 7) == 0) { /* add any old data */ if (topic && buffer->len) { help_topic_new(topic, buffer->str); buffer = g_string_set_size(buffer, 0); g_free(topic); } /* remove trailing */ n = strlen(&line[7]); topic = g_strndup(&line[7], n-1); } else { /* append everything that's not a topic to the current buffer */ if (topic) g_string_append(buffer, line); } line = scan_get_line(scan); } /* done - add the last topic found */ if (topic) help_topic_new(topic, buffer->str); g_string_free(buffer, TRUE); g_free(topic); scan_free(scan); } /**********************/ /* add a single entry */ /**********************/ void gui_help_populate(gpointer key, gpointer value, gpointer data) { gchar *topic = key; GtkTreeIter iter; GtkListStore *list = data; gtk_list_store_append(list, &iter); gtk_list_store_set(list, &iter, 0, topic, -1); } /****************************************/ /* fill out the available manual topics */ /****************************************/ void gui_help_refresh(GtkListStore *list) { g_assert(sysenv.manual != NULL); gtk_list_store_clear(list); g_hash_table_foreach(sysenv.manual, gui_help_populate, list); } /*********************************************/ /* process and display appropriate help text */ /*********************************************/ void gui_help_topic_show(GtkTextBuffer *buffer, gchar *source) { gint i, j, n, start, stop; gchar *text; GdkPixbuf *pixbuf; GtkTextIter a, b; /* initialize help tags */ if (!help_tag_bold) help_tag_bold = gtk_text_buffer_create_tag(buffer, "bold", "weight", PANGO_WEIGHT_BOLD, NULL); if (!help_tag_italic) help_tag_italic = gtk_text_buffer_create_tag(buffer, "italic", "style", PANGO_STYLE_ITALIC, NULL); /* invisible tag not implemented as of GTK 2.2 */ /* if (!help_tag_invisible) help_tag_invisible = gtk_text_buffer_create_tag(buffer, "invisible", "invisible", TRUE, NULL); */ /* FIXME - hack due to above */ if (!help_tag_invisible) { GdkColor white = {0, 65535, 65535, 65535}; help_tag_invisible = gtk_text_buffer_create_tag(buffer, "invisible", "foreground-gdk", &white, NULL); } if (!help_tag_fixed) { help_tag_fixed = gtk_text_buffer_create_tag(buffer, "fixed", "font", "Fixed 10", NULL); } /* tag_bold = gtk_text_buffer_create_tag(buffer, "bold", "style", PANGO_WEIGHT_OBLIQUE, NULL); */ gtk_text_buffer_set_text(buffer, source, -1); n = strlen(source); start = i = 0; stop = -1; while (ivbox), hbox, TRUE, TRUE, 1); /* left pane - topics browser */ swin = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(swin), GTK_POLICY_NEVER, GTK_POLICY_NEVER); gtk_box_pack_start(GTK_BOX(hbox), swin, FALSE, TRUE, 0); /* list */ list = gtk_list_store_new(1, G_TYPE_STRING); tree = gtk_tree_view_new_with_model(GTK_TREE_MODEL(list)); gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(swin), tree); r = gtk_cell_renderer_text_new(); c = gtk_tree_view_column_new_with_attributes(" ", r, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(tree), c); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(tree), FALSE); /* auto sort the topic list */ gtk_tree_sortable_set_default_sort_func(GTK_TREE_SORTABLE(GTK_TREE_MODEL(list)), help_sort_topics, NULL, NULL); gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE(GTK_TREE_MODEL(list)), GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID, GTK_SORT_ASCENDING); /* set the width of the topics pane */ gtk_widget_set_size_request(swin, 15*sysenv.gtk_fontsize, -1); /* right pane - text */ swin = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(swin), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_box_pack_start(GTK_BOX(hbox), swin, TRUE, TRUE, 0); view = gtk_text_view_new(); gtk_text_view_set_editable(GTK_TEXT_VIEW(view), FALSE); gtk_container_add(GTK_CONTAINER(swin), view); /* configure the text viewing area */ gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(view), GTK_WRAP_WORD); /* NB: GTK_JUSTIFY_FILL was not supported at the time this was written */ /* gtk_text_view_set_justification(GTK_TEXT_VIEW(view), GTK_JUSTIFY_FILL); */ gtk_text_view_set_left_margin(GTK_TEXT_VIEW(view), PANEL_SPACING); gtk_text_view_set_right_margin(GTK_TEXT_VIEW(view), PANEL_SPACING); /* NB: these are associated with the text buffer and must be reallocated each */ /* time a new text buffer is created */ help_tag_bold=NULL; help_tag_italic=NULL; help_tag_invisible=NULL; help_tag_fixed=NULL; /* topic selection handler */ select = gtk_tree_view_get_selection(GTK_TREE_VIEW(tree)); gtk_tree_selection_set_mode(select, GTK_SELECTION_SINGLE); g_signal_connect(G_OBJECT(select), "changed", G_CALLBACK(gui_help_topic_selected), view); /* terminating button */ gui_stock_button(GTK_STOCK_CLOSE, dialog_destroy, dialog, GTK_DIALOG(window)->action_area); /* populate the manual page */ gui_help_refresh(list); /* expose the dialog */ gtk_widget_show_all(window); } /***************/ /* help dialog */ /***************/ /* g_string_assign(title,"OpenGL"); g_string_sprintf(buff,"GL_RENDERER %s\n", glGetString(GL_RENDERER)); g_string_sprintfa(buff,"GL_VERSION %s\n", glGetString(GL_VERSION)); g_string_sprintfa(buff,"GL_VENDOR %s\n", glGetString(GL_VENDOR)); */ gdis-0.90/render_setup.xpm0000644000175000017500000000270207717054756014276 0ustar seansean/* XPM */ static char * render_setup_xpm[] = { "16 16 73 1", " c None", ". c #8E8E8E", "+ c #FCE787", "@ c #FAE063", "# c #F5DA5A", "$ c #ECD773", "% c #E9DEAA", "& c #FDEA92", "* c #FEE053", "= c #FEE055", "- c #FEDF51", "; c #FCDE4F", "> c #EACD47", ", c #FDEC9A", "' c #FEE25F", ") c #FEE76B", "! c #FEE46B", "~ c #FEE65F", "{ c #DAC345", "] c #BFAB50", "^ c #FBDD4E", "/ c #E2CA47", "( c #CEB12B", "_ c #FCEE9D", ": c #FEE367", "< c #FEEC99", "[ c #FEF5CD", "} c #FEF6C7", "| c #FEEE93", "1 c #FADC4F", "2 c #D2B42B", "3 c #FAE57F", "4 c #FEE365", "5 c #FEEB95", "6 c #FEF4C3", "7 c #FEF2B9", "8 c #FEEA8B", "9 c #F6D84D", "0 c #DBC146", "a c #CCB42B", "b c #F5E276", "c c #FEE15B", "d c #FEE975", "e c #FEE987", "f c #FEE46D", "g c #EAD149", "h c #D6BB3D", "i c #C1A628", "j c #EDDD92", "k c #FADC4D", "l c #FEE159", "m c #FCDE53", "n c #D9C346", "o c #B19B24", "p c #E3C746", "q c #F6DC4B", "r c #FADB4D", "s c #F5D74C", "t c #D3B630", "u c #BCA527", "v c #9F8820", "w c #D3C37A", "x c #D7C144", "y c #E0C445", "z c #DAC045", "A c #D5BA3C", "B c #A08A21", "C c #BDAF66", "D c #D0B62B", "E c #CAC4A1", "F c #AD9D46", "G c #A28C27", "H c #9E8823", " ", " ........ ", " . +@#$% .. ", " .&*==-;>. . ", " .,=')!~*.{]. ", " .........^/(. ", " ._=:<[}|.1/2. ", " .3*45678.90a. ", " .b-cd8ef.ghi. ", " .jk-l''m.n2o. ", " . pqkrsg.tuv. ", " . wxyyzA.uB. ", " . CaDai.v. ", " . EFGH.. ", " ......... ", " "}; gdis-0.90/file.c0000644000175000017500000012760011063452661012123 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include #include #include #include #include "gdis.h" #include "coords.h" #include "error.h" #include "file.h" #include "parse.h" #include "matrix.h" #include "model.h" #include "space.h" #include "zone.h" #include "render.h" #include "select.h" #include "gui_shorts.h" #include "interface.h" #include "dialog.h" #include "opengl.h" #define DEBUG_MORE 0 #define MAX_KEYS 15 /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /***************************************/ /* setup the recognized file type list */ /***************************************/ #define DEBUG_FILE_INIT 0 void file_init(void) { GSList *rlist=NULL; struct file_pak *file_data; /* NEW - build a recognized image read format list */ /* also used in picture writing as it avoids overlap */ /* problems when getting the file_data structure by extension */ #define PICTURE_SUPPORT 0 #if PICTURE_SUPPORT for (list=gdk_pixbuf_get_formats() ; list ; list=g_slist_next(list)) { gint i; gchar **ext; ext = gdk_pixbuf_format_get_extensions(list->data); i = 0; while (*(ext+i)) { /* if (gdk_pixbuf_format_is_writable(list->data)) wlist = g_slist_prepend(wlist, g_strdup(*(ext+i))); */ rlist = g_slist_prepend(rlist, g_strdup(*(ext+i))); i++; } } #endif #if DEBUG_FILE_INIT printf("read: "); for (list=rlist ; list ; list=g_slist_next(list)) { printf("[%s] ", (gchar *) list->data); } printf("\n"); #endif /* build the recognized file type list */ sysenv.file_list = NULL; /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = DATA; /* unique identifier */ file_data->group = DATA; /* used to group inp/out types */ file_data->menu = TRUE; /* include in menu listing */ file_data->label = g_strdup("All known types"); /* text info for the user */ file_data->ext = NULL; /* extension matching */ file_data->write_file = NULL; /* file creation */ file_data->read_file = NULL; /* file reading */ file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = ABINIT_OUT; file_data->group = ABINIT; file_data->menu = FALSE; file_data->label = g_strdup("ABINIT output"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "about"); file_data->ext = g_slist_prepend(file_data->ext, "abot"); file_data->write_file = NULL; file_data->read_file = read_about; file_data->read_frame = read_about_frame; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = MD_ANALYSIS; file_data->group = MD_ANALYSIS; file_data->menu = FALSE; file_data->label = g_strdup("Analysis"); file_data->ext = NULL; file_data->ext = NULL; /* import/export handled in analysis as a special case */ file_data->write_file = NULL; file_data->read_file = NULL; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = BIOGRAF; file_data->group = BIOGRAF; file_data->menu = TRUE; file_data->label = g_strdup("Biograf"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "bgf"); file_data->write_file = write_bgf; file_data->read_file = read_bgf; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = BIOSYM; file_data->group = BIOSYM; file_data->menu = TRUE; file_data->label = g_strdup("Biosym"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "car"); file_data->ext = g_slist_prepend(file_data->ext, "cor"); file_data->ext = g_slist_prepend(file_data->ext, "arc"); file_data->write_file = write_arc; file_data->read_file = read_arc; file_data->read_frame = read_arc_frame; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = CASTEP; file_data->group = CASTEP; file_data->menu = TRUE; file_data->label = g_strdup("CASTEP"); file_data->ext = NULL; file_data->ext = g_slist_append(file_data->ext, "cell"); file_data->write_file = write_castep_cell; file_data->read_file = NULL; file_data->read_frame = NULL; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = CASTEP_OUT; file_data->group = CASTEP; file_data->menu = FALSE; file_data->label = g_strdup("CASTEP output"); file_data->ext = NULL; file_data->ext = g_slist_append(file_data->ext, "castep"); file_data->write_file = NULL; file_data->read_file = read_castep_out; file_data->read_frame = read_castep_out_frame; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = CIF; file_data->group = CIF; file_data->menu = TRUE; file_data->label = g_strdup("CIF"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "cif"); file_data->write_file = write_cif; file_data->read_file = read_cif; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* NEW: monty crystal graph file format */ /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = CRYSTAL_GRAPH; file_data->group = CRYSTAL_GRAPH; file_data->menu = TRUE; file_data->label = g_strdup("Crystal Graph Files"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "cgf"); file_data->write_file = write_cgf; file_data->read_file = read_cgf; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = CSSR; file_data->group = CSSR; file_data->menu = TRUE; file_data->label = g_strdup("CSSR"); file_data->ext = NULL; file_data->ext = g_slist_append(file_data->ext, "cssr"); file_data->write_file = write_cssr; file_data->read_file = read_cssr; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = DIFFAX_INP; file_data->group = DIFFAX_INP; file_data->menu = FALSE; file_data->label = g_strdup("DIFFaX"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "dfx"); file_data->write_file = write_diffax; file_data->read_file = read_diffax; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = DLP; file_data->group = DLP; file_data->menu = TRUE; file_data->label = g_strdup("DLP"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "dlp"); file_data->write_file = write_dlp; file_data->read_file = read_dlp; file_data->read_frame = NULL; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = DMOL_INPUT; file_data->group = DMOL_INPUT; file_data->menu = TRUE; file_data->label = g_strdup("DMOL"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "dmol"); file_data->write_file = write_dmol; file_data->read_file = read_dmol; file_data->read_frame = read_dmol_frame; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = DLPOLY; file_data->group = DLPOLY; file_data->menu = TRUE; file_data->label = g_strdup("DL_POLY"); file_data->ext = NULL; file_data->ext = g_slist_append(file_data->ext, ""); file_data->ext = g_slist_append(file_data->ext, "dlpoly"); file_data->write_file = write_dlpoly; file_data->read_file = read_dlpoly; file_data->read_frame = read_dlpoly_frame; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = GAMESS; file_data->group = GAMESS; file_data->menu = TRUE; file_data->label = g_strdup("GAMESS"); file_data->ext = NULL; file_data->ext = g_slist_append(file_data->ext, "inp"); file_data->write_file = write_gms; file_data->read_file = read_gms; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = GAMESS_OUT; file_data->group = GAMESS; file_data->menu = FALSE; file_data->label = g_strdup("GAMESS Output"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "gmout"); file_data->ext = g_slist_prepend(file_data->ext, "gmot"); file_data->write_file = NULL; file_data->read_file = read_gms_out; file_data->read_frame = read_gms_out_frame; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = GAUSS; file_data->group = GAUSS; file_data->menu = TRUE; file_data->label = g_strdup("GAUSSIAN"); file_data->ext = NULL; file_data->ext = g_slist_append(file_data->ext, "com"); file_data->write_file = write_gauss; file_data->read_file = NULL; file_data->read_frame = NULL; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = GAUSS_OUT; file_data->group = GAUSS; file_data->menu = FALSE; file_data->label = g_strdup("GAUSSIAN output"); file_data->ext = NULL; file_data->ext = g_slist_append(file_data->ext, "log"); file_data->write_file = NULL; file_data->read_file = read_gauss_out; file_data->read_frame = read_gauss_out_frame; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = GROMACS; file_data->group = GROMACS; file_data->menu = FALSE; file_data->label = g_strdup("GROMACS input"); file_data->ext = NULL; file_data->ext = g_slist_append(file_data->ext, "gro"); file_data->write_file = write_gromacs; file_data->read_file = read_gromacs_gro; file_data->read_frame = NULL; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = MORPH; file_data->group = MORPH; file_data->menu = TRUE; file_data->label = g_strdup("GDIS Morphology"); file_data->ext = NULL; file_data->ext = g_slist_append(file_data->ext, "gmf"); file_data->write_file = write_gmf; file_data->read_file = read_gmf; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = GEOMVIEW_OFF; file_data->group = GEOMVIEW_OFF; file_data->menu = TRUE; file_data->label = g_strdup("Geomview OFF"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "off"); file_data->write_file = NULL; file_data->read_file = read_off; file_data->read_frame = NULL; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = GULP; file_data->group = GULP; file_data->menu = TRUE; file_data->label = g_strdup("GULP"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "gin"); file_data->ext = g_slist_prepend(file_data->ext, "res"); file_data->write_file = write_gulp; file_data->read_file = read_gulp; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = GULPOUT; file_data->group = GULP; file_data->menu = FALSE; file_data->label = g_strdup("GULP output"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "got"); file_data->ext = g_slist_prepend(file_data->ext, "gout"); file_data->write_file = NULL; file_data->read_file = read_gulp_output; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = MARVIN; file_data->group = MARVIN; file_data->menu = TRUE; file_data->label = g_strdup("MARVIN"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "mar"); file_data->ext = g_slist_prepend(file_data->ext, "mvn"); file_data->ext = g_slist_prepend(file_data->ext, "mvn-r"); file_data->write_file = write_marvin; file_data->read_file = read_marvin; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = MVNOUT; file_data->group = MARVIN; file_data->menu = FALSE; file_data->label = g_strdup("MARVIN output"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "mot"); file_data->ext = g_slist_prepend(file_data->ext, "mvout"); file_data->ext = g_slist_prepend(file_data->ext, "mvnout"); file_data->write_file = NULL; file_data->read_file = read_mvnout; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = META_DATA; file_data->group = META_DATA; file_data->menu = FALSE; file_data->label = g_strdup("Meta data"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "meta"); file_data->write_file = write_meta; file_data->read_file = NULL; file_data->read_frame = NULL; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = NWCHEM; file_data->group = NWCHEM; file_data->menu = TRUE; file_data->label = g_strdup("NWChem"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "nwin"); file_data->write_file = NULL; file_data->read_file = read_nw; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = NWCHEM_OUT; file_data->group = NWCHEM; file_data->menu = FALSE; file_data->label = g_strdup("NWChem output"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "nwout"); file_data->ext = g_slist_prepend(file_data->ext, "nwot"); file_data->write_file = NULL; file_data->read_file = read_nwout; file_data->read_frame = read_nwout_frame; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = PDB; file_data->group = PDB; file_data->menu = TRUE; file_data->label = g_strdup("PDB"); file_data->ext = NULL; file_data->ext = g_slist_append(file_data->ext, "pdb"); file_data->write_file = write_pdb; file_data->read_file = read_pdb; file_data->read_frame = read_pdb_frame; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = PICTURE; file_data->group = PICTURE; file_data->menu = FALSE; /* TODO - check supported image types with glib - add to string */ file_data->label = g_strdup("Picture (jpg)"); file_data->ext = rlist; file_data->write_file = NULL; file_data->read_file = NULL; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = POVRAY; file_data->group = POVRAY; file_data->menu = FALSE; file_data->label = g_strdup("POVRay"); file_data->ext = NULL; file_data->ext = g_slist_append(file_data->ext, "pov"); file_data->write_file = write_povray; file_data->read_file = NULL; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = PROJECT; file_data->group = PROJECT; file_data->menu = FALSE; file_data->label = g_strdup("Project"); file_data->ext = NULL; file_data->ext = g_slist_append(file_data->ext, "pcf"); file_data->write_file = NULL; file_data->read_file = project_read; file_data->read_frame = NULL; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = CEL; file_data->group = CEL; file_data->menu = TRUE; file_data->label = g_strdup("PowderCell"); file_data->ext = NULL; file_data->ext = g_slist_append(file_data->ext, "cel"); file_data->write_file = NULL; file_data->read_file = read_cel; file_data->read_frame = NULL; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = RIETICA; file_data->group = RIETICA; file_data->menu = TRUE; file_data->label = g_strdup("Rietica"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "inp"); file_data->write_file = NULL; file_data->read_file = read_rietica; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = FDF; file_data->group = FDF; file_data->menu = TRUE; file_data->label = g_strdup("SIESTA"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "fdf"); file_data->write_file = write_fdf; file_data->read_file = read_fdf; file_data->read_frame = NULL; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = SIESTA_OUT; file_data->group = FDF; file_data->menu = FALSE; file_data->label = g_strdup("SIESTA output"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "sout"); file_data->ext = g_slist_prepend(file_data->ext, "sot"); file_data->write_file = NULL; file_data->read_file = read_sout; file_data->read_frame = read_sout_frame; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = TEXT; file_data->group = TEXT; file_data->menu = FALSE; file_data->label = g_strdup("Text file"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "txt"); file_data->write_file = NULL; file_data->read_file = NULL; file_data->read_frame = NULL; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = XML; file_data->group = XML; file_data->menu = TRUE; file_data->label = g_strdup("XML"); file_data->ext = NULL; file_data->ext = g_slist_prepend(file_data->ext, "xml"); file_data->write_file = write_xml; file_data->read_file = read_xml; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = XTL; file_data->group = XTL; file_data->menu = TRUE; file_data->label = g_strdup("XTL"); file_data->ext = NULL; file_data->ext = g_slist_append(file_data->ext, "xtl"); file_data->write_file = write_xtl; file_data->read_file = read_xtl; file_data->read_frame = NULL; /* frame reading */ sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); /* supported file type */ file_data = g_malloc(sizeof(struct file_pak)); file_data->id = XYZ; file_data->group = XYZ; file_data->menu = TRUE; file_data->label = g_strdup("XYZ"); file_data->ext = NULL; /* file_data->ext = g_slist_append(file_data->ext, "ani"); file_data->ext = g_slist_append(file_data->ext, "xmol"); */ file_data->ext = g_slist_append(file_data->ext, "xyz"); file_data->write_file = write_xyz; file_data->read_file = read_xyz; file_data->read_frame = read_xyz_frame; sysenv.file_list = g_slist_prepend(sysenv.file_list, file_data); sysenv.file_list = g_slist_reverse(sysenv.file_list); } /******************************/ /* free file recognition list */ /******************************/ void file_free(void) { GSList *list; /* free data embedded in the file structure */ for (list=sysenv.file_list ; list ; list=g_slist_next(list)) { struct file_pak *file_data = list->data; g_slist_free(file_data->ext); g_free(file_data->label); } /* free the list and the file structure pointers */ free_slist(sysenv.file_list); } /************************/ /* current version info */ /************************/ void gdis_blurb(FILE *fp) { fprintf(fp, "Created by GDIS version %4.2f.%d\n", VERSION, PATCH); } /*********************************************/ /* alphabetically sort the directory listing */ /*********************************************/ gint alpha_slist_sort(gpointer ptr1, gpointer ptr2) { return(g_ascii_strcasecmp((gchar *) ptr1, (gchar *) ptr2)); } /*********************************************/ /* an all-platform directory listing routine */ /*********************************************/ GSList *file_dir_list(const gchar *path, gint sort) { const gchar *name; GDir *dir; GSList *files=NULL; /* ensure we can go up a directory */ files = g_slist_prepend(files, g_strdup("..")); /* build the directory list */ dir = g_dir_open(path, 0, NULL); name = g_dir_read_name(dir); while (name) { if (g_ascii_strncasecmp(".", name, 1) != 0) files = g_slist_prepend(files, g_strdup(name)); name = g_dir_read_name(dir); } g_dir_close(dir); if (sort) files = g_slist_sort(files, (gpointer) alpha_slist_sort); return(files); } /*********************************************************************/ /* get a directory listing matched against a supplied (glob) pattern */ /*********************************************************************/ #define DEBUG_FILE_PATTERN 0 GSList *file_dir_list_pattern(const gchar *dir, const gchar *pattern) { gchar *name; GPatternSpec *ps; GSList *list, *files; g_assert(dir != NULL); files = file_dir_list(dir, FALSE); if (pattern) ps = g_pattern_spec_new(pattern); else return(files); list = files; while (list) { name = list->data; list = g_slist_next(list); if (!g_pattern_match_string(ps, name)) { files = g_slist_remove(files, name); g_free(name); } } g_pattern_spec_free(ps); #if DEBUG_FILE_PATTERN printf("Found %d matches\n", g_slist_length(files)); #endif return(files); } /*******************************************************/ /* allocate a new string containing the file extension */ /*******************************************************/ gchar *file_extension_get(const gchar *name) { gint i,n; gchar *ext; if (!name) return(NULL); /* search for '.' character in reverse order */ i = n = strlen(name); /* minimum size, avoids troublesome cases (eg "..") */ if (n > 2) { for (i=n-1 ; i-- ; ) { if (name[i] == '.') { ext = g_strndup(name+i+1, n-i-1); /* ignore any .# extension */ if (!str_is_float(ext)) return(ext); g_free(ext); /* mark the .# as the new end */ n = i; } } } return(NULL); } /************************************************/ /* routine to determine if a file is recognized */ /************************************************/ /* returns pointer to file info if found, NULL otherwise */ #define DEBUG_GET_FILE_INFO 0 struct file_pak *get_file_info(gpointer ptr, gint type) { gint code=-1; gchar *text=NULL, *ext; GSList *file, *ext_list; struct file_pak *file_data; /* checks */ g_return_val_if_fail(ptr != NULL, NULL); /* init for search */ switch(type) { case BY_LABEL: text = g_strdup(ptr); #if DEBUG_GET_FILE_INFO printf("Searching for type [%s]\n", text); #endif break; case BY_EXTENSION: /* fix to get around the quotes needed to properly pass win32 filesnames with spaces */ #if __WIN32 { gchar *tmp = g_shell_unquote(ptr, NULL); text = file_extension_get(tmp); g_free(tmp); } #else text = file_extension_get(ptr); #endif if (!text) return(NULL); #if DEBUG_GET_FILE_INFO printf("Searching for extension [%s]\n", text); #endif break; case BY_FILE_ID: code = GPOINTER_TO_INT(ptr); #if DEBUG_GET_FILE_INFO printf("Searching for code [%d]\n", code); #endif break; } /* search */ for (file=sysenv.file_list ; file ; file=g_slist_next(file)) { file_data = file->data; switch (type) { /* compare to all extensions in list */ case BY_EXTENSION: /* go through all extensions listed under this file type */ for (ext_list=file_data->ext ; ext_list ; ext_list=g_slist_next(ext_list)) { ext = ext_list->data; if (strlen(text) == strlen(ext)) { if (g_ascii_strcasecmp(text, ext) == 0) { #if DEBUG_GET_FILE_INFO printf("Matched: %s\n", file_data->label); #endif g_free(text); return(file_data); } } } break; /* compare with label */ case BY_LABEL: if (strlen(text) != strlen(file_data->label)) break; if (g_ascii_strcasecmp(text, file_data->label) == 0) { #if DEBUG_GET_FILE_INFO printf("Matched: %s\n", file_data->label); #endif g_free(text); return(file_data); } break; case BY_FILE_ID: if (code == file_data->id) { #if DEBUG_GET_FILE_INFO printf("Matched: %s\n", file_data->label); #endif return(file_data); } break; default: printf("get_file_info() error: bad search type.\n"); } } if (text) g_free(text); return(NULL); } /**************************/ /* detect valid filetypes */ /**************************/ gint file_extension_valid(const gchar *name) { gchar *ext; GSList *item, *list; struct file_pak *file; /* locate the extension */ /*FIXME: can find_char be replaced by standard strchr()/strrchr() functions? - MW */ ext = find_char(name, '.', LAST); if (ext) ext++; if (sysenv.file_type == DATA) /* compare against all extension types - any match is allowed */ { if (!ext) /* files without extensions are matched only in strict case */ return(FALSE); for (list=sysenv.file_list ; list ; list=g_slist_next(list)) { file = list->data; for (item=file->ext ; item ; item=g_slist_next(item)) if (g_ascii_strcasecmp(item->data, ext) == 0) return(TRUE); } } else /* strict case - file must match the dialog filter */ { for (list=sysenv.file_list ; list ; list=g_slist_next(list)) { file = list->data; if (sysenv.file_type == file->group) for (item=file->ext ; item ; item=g_slist_next(item)) if ((ext && g_ascii_strcasecmp(item->data, ext) == 0) || (!ext && strlen(item->data) == 0)) return(TRUE); } } return(FALSE); } /*******************************************************/ /* get an unused BASENAME (of supplied extension type) */ /*******************************************************/ /* TODO - supply a basename+ext & this inserts _? until new? */ #define DEBUG_GUN 0 gchar *gun(const gchar *ext) { gint i; gchar *name; GString *filename; FILE *fp; /* seek a file name that doesn't exist (avoid background overwriting) */ filename = g_string_new(NULL); i=0; do { g_string_sprintf(filename,"dummy_%d.%s", i, ext); #if DEBUG_GUN printf("testing: %s\n", filename->str); #endif i++; } while (g_file_test(filename->str, G_FILE_TEST_EXISTS)); /* create the file to prevent another process from taking it */ /* b4 the current caller gets around to writing anything to it */ fp = fopen(filename->str, "wt"); if (fp) { fprintf(fp, "locked.\n"); fclose(fp); } else { printf("Fatal error in gun()\n"); return(NULL); } name = g_string_free(filename, FALSE); #if DEBUG_GUN printf("using base: %s\n", name); #endif return(name); } /**************************************************************/ /* correct numbers in binary files with reverse byte ordering */ /**************************************************************/ void swap_bytes(void *ptr, const gint size) { gint i,j; gchar tmp; /* printf("start: "); for (i=0 ; istr, float_val, units); text_str = text->str; g_string_free(format_string, TRUE); g_string_free(text, FALSE); g_strfreev(buff); return (text_str); } /************************************************/ /* read in a raw frame (animation and analysis) */ /************************************************/ #define DEBUG_READ_RAW 0 gint read_raw_frame(FILE *fp, gint n, struct model_pak *model) { gint i, flag=99; gchar *filename; fpos_t *offset; FILE *fp2; struct file_pak *file; g_assert(fp != NULL); g_assert(model != NULL); file = get_file_info(GINT_TO_POINTER(model->id), BY_FILE_ID); #if DEBUG_READ_RAW printf("reading frame: %d\n", n); #endif /* position the file pointer */ if (model->id != GULP) { offset = g_list_nth_data(model->frame_list, n); #if DEBUG_READ_RAW printf("offset = %d\n", offset); #endif if (!offset) return(1); if (fsetpos(fp, offset)) { printf("Error positioning file pointer.\n"); return(2); } /* use supplied routine (if available) */ if (file->read_frame) flag = file->read_frame(fp, model); else gui_text_show(ERROR, "No animation read routine.\n"); } else { /* GULP exception */ if (!n) { /* NEW - 0th frame exception - load original GULP coords */ if (model->cores) g_assert(model->gulp.orig_cores != NULL); if (model->shels) g_assert(model->gulp.orig_shells != NULL); /* free connectivity lists */ free_slist(model->bonds); free_slist(model->moles); model->bonds = NULL; model->moles = NULL; /* restore coords */ free_slist(model->cores); free_slist(model->shels); model->cores = dup_core_list(model->gulp.orig_cores); model->shels = dup_shell_list(model->gulp.orig_shells); /* restore lattice */ /* model->fractional = model->gulp.orig_fractional; */ /* FIXME - I don't know why this works (and the above doesn't)... */ model->fractional = TRUE; model->construct_pbc = model->gulp.orig_construct_pbc; memcpy(model->latmat, model->gulp.orig_latmat, 9*sizeof(gdouble)); memcpy(model->pbc, model->gulp.orig_pbc, 6*sizeof(gdouble)); /* turn space group lookup on */ model->sginfo.lookup = TRUE; flag = 0; } else { /* turn off space group lookup */ /* trg files contain ALL atoms & symmetry may be broken */ model->sginfo.lookup = FALSE; filename = g_strdup_printf("%s/%s", sysenv.cwd, model->gulp.trj_file); /* NB: GULP binary trajectory files - MUST specify "rb" */ /* FIXME - some GULP traj files may be ascii I think? */ fp2 = fopen(filename, "rb"); if (!fp2) { printf("Failed to open: %s\n", filename); g_free(filename); return(3); } /* FIXME - ugly hack to get the nth frame */ #define CRAP 0 #if CRAP read_trj_header(fp2, model); for (i=0 ; iframe_list, n); if (fsetpos(fp2, offset)) { printf("Error positioning file pointer.\n"); g_free(filename); return(2); } read_trj_frame(fp2, model, TRUE); #endif g_free(filename); flag = 0; } } return(flag); } /***********************************/ /* handler for normal file loading */ /***********************************/ #define DEBUG_FILE_LOAD 0 void file_load(gchar *filename, struct model_pak *mdata) { gint j; gint flag, status=-1; gchar *fullname; GSList *list; struct model_pak *data; struct file_pak *file_data; #if DEBUG_FILE_LOAD printf("loading: [%s] into: %p\n", filename, mdata); #endif /* FIXME - new error reporting - doesnt work for gulp */ error_table_clear(); error_table_enable(); /* get the file structure required to parse the file */ switch (sysenv.file_type) { /* cases for which duplicate extensions occur */ case RIETICA: case GAMESS: case DLPOLY: file_data = get_file_info(GINT_TO_POINTER(sysenv.file_type), BY_FILE_ID); break; /* cases for which extensions must be used to determine type (eg .gin/.got) */ default: file_data = get_file_info((gpointer *) filename, BY_EXTENSION); } if (!file_data) return; #if DEBUG_FILE_LOAD printf("Using file load routine for: [%s] files.\n", file_data->label); #endif if (mdata) data = mdata; else { /* get the new model number */ data = model_new(); if (!data) { gui_text_show(ERROR, "Model memory allocation failed.\n"); return; } } data->id = file_data->id; /* read file if exists, else try prepending current working directory */ if (file_data->read_file) { if (g_path_is_absolute(filename)) { status = file_data->read_file(filename, data); } else { fullname = g_build_filename(sysenv.cwd, filename, NULL); status = file_data->read_file(fullname, data); g_free(fullname); } } else gui_text_show(ERROR, "No read routine for this type. "); /* NEW - display error (if any) */ if ((data->error_file_read)->len) { gui_text_show(ERROR, (data->error_file_read)->str); } /* check for successful file load */ if (status) { gui_text_show(ERROR, "Load failed.\n"); printf("Load failed, error code: %d\n", status); model_delete(data); } else { /* we don't know how many new models were loaded so */ /* scan through them all & check for initialization */ for (list=sysenv.mal ; list ; list=g_slist_next(list)) { data = list->data; /* skip if already on the tree */ if (data->grafted) continue; /* NEW - big model display mode exceptions */ /* CURRENT - this doesn't work - something not set up? */ /* TODO - automaticaly choose an appropriate zone size */ /* if (data->num_atoms > 100000) { gpointer za; core_render_mode_set(ZONE, data->cores); za = zone_make(10.0, data); zone_display_init(za, data); zone_free(za); } else */ { if (data->num_atoms > 1000) core_render_mode_set(STICK, data->cores); } /* surfaces are always conv by default */ if (data->periodic == 2) data->gulp.method = CONV; /* not on tree - must have just been loaded */ tree_model_add(data); /* create gulp supercells */ flag=0; for (j=0 ; j<3 ; j++) { if (data->gulp.super[j] > 1) { data->image_limit[2*j+1] = data->gulp.super[j]; data->expected_cores *= data->gulp.super[j]; data->expected_shells *= data->gulp.super[j]; flag++; } } if (flag) { space_make_images(CREATE, data); space_make_supercell(data); model_prep(data); } /* NEW - store initial frame, as trajectory animation will overwrite */ if (data->gulp.trj_file && !data->gulp.orig_cores) { /* FIXME - saving fractional type here instead of at the end of read_gulp() stuffs things up - why? */ /* NB: we need to save the coords here (and not earlier) in case a supercell was created */ memcpy(data->gulp.orig_pbc, data->pbc, 6*sizeof(gdouble)); memcpy(data->gulp.orig_latmat, data->latmat, 9*sizeof(gdouble)); data->gulp.orig_cores = dup_core_list(data->cores); data->gulp.orig_shells = dup_shell_list(data->shels); } sysenv.active_model = data; } } /* finished - only now we destroy the file dialog */ dialog_destroy_type(FILE_SELECT); tree_select_active(); error_table_print_all(); } /****************/ /* load dialog */ /***************/ #ifdef WITH_GUI void file_load_dialog(void) { /* revert to data filetypes for special cases */ switch (sysenv.file_type) { case MD_ANALYSIS: case PICTURE: case PROJECT: case GEOMVIEW_OFF: sysenv.file_type = DATA; } file_dialog("Load file", NULL, FILE_LOAD, (gpointer) file_load, sysenv.file_type); } #endif /**********************************/ /* save file with name */ /**********************************/ gint file_save_as(gchar *filename, struct model_pak *model) { gint id, ret; gchar *name; struct file_pak *file_data; /* setup & checks */ if (!model) model = sysenv.active_model; if (!filename || !model) return(1); file_data = get_file_info((gpointer *) filename, BY_EXTENSION); if (file_data) { /* use extension */ id = file_data->id; strcpy(model->filename, filename); g_free(model->basename); model->basename = parse_strip(filename); } else { gchar *ext; /* no extension - attempt to use filter type */ file_data = get_file_info(GINT_TO_POINTER(sysenv.file_type), BY_FILE_ID); if (!file_data) return(2); ext = g_slist_nth_data(file_data->ext, 0); if (!ext) return(2); id = file_data->id; g_free(model->basename); model->basename = parse_strip(filename); name = g_strdup_printf("%s.%s", model->basename, ext); strcpy(model->filename, name); g_free(name); } /* file info indicates routine to call */ if (file_data->write_file == NULL) { printf("No write routine for this type.\n"); return(3); } else { /* build the full name */ name = g_build_filename(sysenv.cwd, model->filename, NULL); ret = file_data->write_file(name, model); g_free(name); } /* update */ if (ret) gui_text_show(ERROR, "Save failed.\n"); else { gui_text_show(STANDARD, "Saved model.\n"); dialog_destroy_type(FILE_SELECT); tree_model_refresh(model); redraw_canvas(SINGLE); } return(ret); } /*************************************/ /* save active model using same name */ /*************************************/ void file_save(void) { gchar *name; struct model_pak *model; model = sysenv.active_model; if (!model) return; /* strip the path, as file_save_as() prepends the cwd */ name = g_path_get_basename(model->filename); file_save_as(name, model); g_free(name); } /******************/ /* save as dialog */ /******************/ #ifdef WITH_GUI void file_save_dialog(void) { gchar *text=NULL; struct model_pak *model; model = sysenv.active_model; if (model) text = model->basename; file_dialog("File save", text, FILE_SAVE, (gpointer) file_save_as, sysenv.file_type); } #endif /*************************************/ /* get the size of a file (in bytes) */ /*************************************/ gint file_byte_size(const gchar *filename) { struct stat buff; stat(filename, &buff); return(buff.st_size); } /************************************/ /* search for an executable program */ /************************************/ /* TODO - put elsewhere ... look for a program ... ask for a path (can cancel) if not found */ gchar *file_find_program(const gchar *name) { gchar *path; path = g_find_program_in_path(name); return(path); } /***********************************/ /* change to a specified directory */ /***********************************/ #define DEBUG_SET_PATH 0 gint set_path(const gchar *txt) { gint i, n, status=0; gchar **buff, *text; GString *path; /* split by directory separator */ text = g_strdup(txt); g_strstrip(text); buff = g_strsplit(text, DIR_SEP, 0); path = g_string_new(NULL); /* find the number of tokens */ n=0; while(*(buff+n)) { #if DEBUG_SET_PATH printf("[%s] ", *(buff+n)); #endif n++; } #if DEBUG_SET_PATH printf(": found %d tokens.\n", n); #endif /* truncate token list if parent directory selected */ if (n > 1) if (g_ascii_strncasecmp("..",*(buff+n-1),2) == 0) n -= 2; /* build new path */ /* this is a bit fiddly, as we don't want a dir_sep on the end */ /* EXCEPT if it's the root directory (blame windows for this) */ g_string_sprintf(path, "%s", *buff); i=1; while (i < n) { g_string_sprintfa(path, "%s%s", DIR_SEP, *(buff+i)); i++; } if (n < 2) g_string_sprintfa(path, "%s", DIR_SEP); #if DEBUG_SET_PATH printf("testing path [%s] ... \n", path->str); #endif if (g_file_test(path->str, G_FILE_TEST_IS_DIR)) { g_free(sysenv.cwd); sysenv.cwd = g_strdup(path->str); } else { #if DEBUG_SET_PATH printf(" Not a directory.\n"); #endif status++; } g_free(text); g_strfreev(buff); g_string_free(path, TRUE); return(status); } gdis-0.90/gl_stereo.c0000644000175000017500000002756611024411242013164 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #ifdef __APPLE__ #include #else #include #endif #include "gdis.h" #include "coords.h" #include "matrix.h" #include "opengl.h" #include "render.h" #include "interface.h" /* externals */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; extern GtkWidget *window; /* extern GLint viewport[4]; extern GLdouble mvmatrix[16], projmatrix[16]; */ /* defs */ #define SGI_STEREO_X 148 #define SGI_STEREO_Y 532 #define SGI_STEREO_WIDTH 982 #define SGI_STEREO_HEIGHT 491 enum { STEREO_ACTIVE, STEREO_PASSIVE, }; /* globals */ gint cb_key_press(GtkWidget *, GdkEventKey *, gpointer); gint stereo_x=0, stereo_y=0, stereo_width=0, stereo_height=0, stereo_depth=0; /*******************/ /* redraw handling */ /*******************/ #define DEBUG_STEREO_REDRAW 0 void stereo_redraw(void) { gint x1, y1, x2, y2, width, height, dim; gdouble s, x, y; gdouble dist, eye, off; struct model_pak *model; struct canvas_pak left, right; struct camera_pak *camera=NULL; model = sysenv.active_model; if (model) camera = model->camera; glClearColor(sysenv.render.bg_colour[0], sysenv.render.bg_colour[1], sysenv.render.bg_colour[2], 1.0); glClearStencil(0x4); #if DEBUG_STEREO_REDRAW printf(" --- STEREO ---\n"); printf("x+y = %d + %d\n", stereo_x, stereo_y); printf("wxh = %d x %d\n", stereo_width, stereo_height); printf(" --- CANVAS ---\n"); printf("x+y = %d + %d\n", sysenv.x, sysenv.y); printf("wxh = %d x %d\n", sysenv.width, sysenv.height); printf(" r = %f\n", sysenv.rsize); printf("eye = %f\n", eye); #endif #ifdef __sgi /* TOP/BOTTOM viewports */ x1 = SGI_STEREO_X; y1 = SGI_STEREO_Y; x2 = SGI_STEREO_X; y2 = 0; width = SGI_STEREO_WIDTH; height = SGI_STEREO_HEIGHT; #else if (sysenv.stereo_fullscreen && !sysenv.render.stereo_quadbuffer) { /* fullscreen with no quad buffer -> assume dual head */ dim = stereo_width/2 < stereo_height ? stereo_width/2 : stereo_height; x1 = (stereo_width/2 - dim)/2; y1 = (stereo_height - dim)/2; x2 = stereo_width/2 + x1; y2 = (stereo_height - dim)/2; width = dim; height = dim; } else { x1 = x2 = stereo_x; y1 = y2 = stereo_y; width = stereo_width; height = stereo_height; } #endif /* full canvas perspective projection */ s = sysenv.size; x = sysenv.rsize * width/s; y = sysenv.rsize * height/s; /* NEW - fudge to make old code work with new canvas scheme */ left.x = x1; right.x = x2; left.y = y1; right.y = y2; left.width = stereo_width; right.width = stereo_width; left.height = stereo_height; right.height = stereo_height; left.size = right.size = sysenv.size; left.active = right.active = TRUE; left.resize = right.resize = TRUE; left.model = right.model = model; /* calculate distance to frustum (ie near) based on desired field of view */ /* wrong ... changing doesnt affect FOV, only correct/incorrect clipping */ #define STEREO_FOV D2R*70.0 /* playing with these seems to do nothing at all to the perspective FOV */ #define FAR_CLIP 100.0 #define NEAR_CLIP 0.5 dist = sysenv.rsize / tan(0.5*STEREO_FOV); eye = 0.01 * sysenv.render.stereo_eye_offset * dist; /* NEW */ off = 0.01 * sysenv.render.stereo_parallax * dist; /* large eye sep - small parallax -> +ve para -> everything BEHIND */ /* small eye sep - large parallax -> -ve papa -> some stuff in FRONT */ /* always clear the canvas first (eliminates left over images if left/right eyes are turned off) */ glDrawBuffer(GL_BACK); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT); if (sysenv.render.stereo_left) { if (model) { gl_init_projection(&left, model); /* CURRENT - with the new camera code things have been messed up a bit */ /* easy solution - just stick to perspective view in the standard */ /* gl_init_projection() and translate for each eye. But, there may be */ /* viewing errors this way - proper way (via frustum) is more awkward */ /* due to clipping and scaling problems */ if (sysenv.render.stereo_use_frustum) { gdouble r; glMatrixMode(GL_PROJECTION); glLoadIdentity(); r = sysenv.rsize; if (camera) r *= camera->zoom; if (sysenv.aspect > 1.0) glFrustum(-r*sysenv.aspect+off, r*sysenv.aspect+off, -r, r, NEAR_CLIP*dist, dist+FAR_CLIP*sysenv.rsize); else glFrustum(-r+off, r+off, -r/sysenv.aspect, r/sysenv.aspect, NEAR_CLIP*dist, dist+FAR_CLIP*sysenv.rsize); glTranslatef(0.0, 0.0, -sysenv.rsize*0.5); } // CURRENT - reverse eye glTranslatef(+eye, 0.0, 0.0); glDrawBuffer(GL_BACK_LEFT); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); draw_objs(NULL, model); } } /* RIGHT */ if (sysenv.render.stereo_right) { if (model) { /* only draw to right buffer if it exists, otherwise stay with same (left) one */ gl_init_projection(&right, model); if (sysenv.render.stereo_use_frustum) { gdouble r; glMatrixMode(GL_PROJECTION); glLoadIdentity(); r = sysenv.rsize; if (camera) r *= camera->zoom; if (sysenv.aspect > 1.0) glFrustum(-r*sysenv.aspect-off, r*sysenv.aspect-off, -r, r, NEAR_CLIP*dist, dist+FAR_CLIP*sysenv.rsize); else glFrustum(-r-off, r-off, -r/sysenv.aspect, r/sysenv.aspect, NEAR_CLIP*dist, dist+FAR_CLIP*sysenv.rsize); glTranslatef(0.0, 0.0, -sysenv.rsize*0.5); } // CURRENT - reverse eye glTranslatef(-eye, 0.0, 0.0); if (sysenv.render.stereo_quadbuffer) glDrawBuffer(GL_BACK_RIGHT); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); draw_objs(NULL, model); } } /* NEW - store matrices for proj/unproj operations */ /* FIXME - doesn't seem to work */ /* glGetIntegerv(GL_VIEWPORT, viewport); glGetDoublev(GL_MODELVIEW_MATRIX, mvmatrix); glGetDoublev(GL_PROJECTION_MATRIX, projmatrix); */ } /********************************/ /* stereo window expose handler */ /********************************/ gint stereo_expose_event(GtkWidget *w, GdkEventExpose *event) { GdkGLContext *glcontext; GdkGLDrawable *gldrawable; glcontext = gtk_widget_get_gl_context(w); gldrawable = gtk_widget_get_gl_drawable(w); if (!gdk_gl_drawable_gl_begin(gldrawable, glcontext)) return(FALSE); stereo_redraw(); gdk_gl_drawable_swap_buffers(gldrawable); gdk_gl_drawable_gl_end(gldrawable); return(TRUE); } /**************************/ /* refresh stereo drawing */ /**************************/ GtkWidget *stereo_window=NULL, *stereo_glarea=NULL; void stereo_draw(void) { if (!sysenv.stereo_fullscreen) { stereo_expose_event(sysenv.glarea, NULL); } else { /* g_assert(stereo_window != NULL); */ g_assert(stereo_glarea != NULL); stereo_expose_event(stereo_glarea, NULL); } } /*****************************/ /* init WINDOWED stereo mode */ /*****************************/ void stereo_init_window(struct canvas_pak *canvas) { if (sysenv.stereo_fullscreen) return; stereo_x = canvas->x; stereo_y = canvas->y; stereo_width = canvas->width; stereo_height = canvas->height; } /*******************************/ /* init FULLSCREEN stereo mode */ /*******************************/ #define DEBUG_FULLSCREEN 0 void stereo_open_window(void) { GdkWindow *win; GdkGLConfig *glconfig=NULL; if (!sysenv.stereo_fullscreen) return; #ifdef __sgi if (system("/usr/gfx/setmon -n STR_RECT") != 0) { printf("setmon attempt failed!\n"); return; } /* NB: stereo visual not needed with STR_RECT mode */ glconfig = gdk_gl_config_new_by_mode(GDK_GL_MODE_RGB | GDK_GL_MODE_DEPTH | GDK_GL_MODE_DOUBLE); #else /* non SGI - request a proper stereo canvas */ glconfig = gdk_gl_config_new_by_mode(GDK_GL_MODE_RGB | GDK_GL_MODE_DEPTH | GDK_GL_MODE_DOUBLE | GDK_GL_STEREO); if (!glconfig) { /* can't get a stereo visual - assume dual head stereo in a normal visual */ glconfig = gdk_gl_config_new_by_mode(GDK_GL_MODE_RGB | GDK_GL_MODE_DEPTH | GDK_GL_MODE_DOUBLE); } #endif if (!glconfig) { printf("ERROR: Failed to acquire a visual for stereo display.\n"); return; } /* get root window dimensions so we can create a fullscreen window */ win = gdk_get_default_root_window(); gdk_window_get_geometry(win, &stereo_x, &stereo_y, &stereo_width, &stereo_height, &stereo_depth); stereo_window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_decorated(GTK_WINDOW(stereo_window), FALSE); #if DEBUG_FULLSCREEN printf("canvas x,y = %d,%d : w,h = %d,%d\n", stereo_x, stereo_y, stereo_width, stereo_height); #endif gtk_window_set_default_size(GTK_WINDOW(stereo_window), stereo_width-stereo_x, stereo_height-stereo_y); g_signal_connect(GTK_OBJECT(stereo_window), "key_press_event", (GtkSignalFunc) cb_key_press, NULL); stereo_glarea = gtk_drawing_area_new(); gtk_widget_set_gl_capability(stereo_glarea, glconfig, NULL, TRUE, GDK_GL_RGBA_TYPE); gtk_container_add(GTK_CONTAINER(stereo_window), stereo_glarea); /* the only missing handler is configure - which is not */ /* needed anyway as a resize is not permitted */ g_signal_connect(GTK_OBJECT(stereo_glarea), "expose_event", (GtkSignalFunc) stereo_expose_event, NULL); g_signal_connect(GTK_OBJECT(stereo_glarea), "motion_notify_event", (GtkSignalFunc) gui_motion_event, NULL); /* g_signal_connect(GTK_OBJECT(stereo_glarea), "button_press_event", (GtkSignalFunc) gui_press_event, NULL); g_signal_connect(GTK_OBJECT(stereo_glarea), "button_release_event", (GtkSignalFunc) gui_release_event, NULL); */ g_signal_connect(GTK_OBJECT(stereo_glarea), "scroll_event", (GtkSignalFunc) gui_scroll_event, NULL); gtk_widget_set_events(GTK_WIDGET(stereo_glarea), GDK_EXPOSURE_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_SCROLL_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK); gtk_widget_show_all(stereo_window); /* invisible cursor */ #if CURSOR_OFF { GdkCursor *cursor; GdkPixmap *source, *mask; GdkGLWindow *glwindow; GdkColor fg = { 0, 0, 0, 0 }; GdkColor bg = { 0, 0, 0, 0 }; static unsigned char cursor1_bits[] = {0x00}; static unsigned char mask1_bits[] = {0x00}; /* create empty cursor */ source = gdk_bitmap_create_from_data(NULL, cursor1_bits, 1, 1); mask = gdk_bitmap_create_from_data(NULL, mask1_bits, 1, 1); cursor = gdk_cursor_new_from_pixmap(source, mask, &fg, &bg, 0, 0); /* set cursor */ glwindow = gtk_widget_get_gl_window(stereo_glarea); gdk_window_set_cursor(gdk_gl_window_get_window(glwindow), cursor); } #endif } /************************************/ /* shut down fullscreen stereo mode */ /************************************/ void stereo_close_window(void) { if (stereo_window) gtk_widget_destroy(stereo_window); stereo_window = NULL; stereo_glarea = NULL; #ifdef __sgi system("/usr/gfx/setmon -n 72hz"); #endif } gdis-0.90/split_both.xpm0000644000175000017500000000137707717054756013755 0ustar seansean/* XPM */ static char * split_both_xpm[] = { "16 16 26 1", " c None", ". c #7F7F7F", "+ c #4D4D4D", "@ c #808080", "# c #5F5F5F", "$ c #505050", "% c #8A8A8A", "& c #777777", "* c #B9B9B9", "= c #3E3E3E", "- c #A7A7A7", "; c #BEBEBE", "> c #424242", ", c #757575", "' c #BABABA", ") c #C4C4C4", "! c #CACACA", "~ c #797978", "{ c #CCCCCC", "] c #6A6A6A", "^ c #3F3F3F", "/ c #828282", "( c #434343", "_ c #494949", ": c #4E4E4E", "< c #BFBFBF", ".++++++@#+++++$%", "+& *= -+", "+ ;> +", "+ ;> +", "+ ;> +", "+ ;> +", "+ ;> +", ",')))))!~))))){,", "]^>>>>>/(>>>>>_]", "+ ;> +", "+ ;> +", "+ ;> +", "+ ;> +", "+ ;> +", ": <> +", "%++++++@#++++++%"}; gdis-0.90/camera.c0000644000175000017500000002003710647556603012440 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include "gdis.h" #include "matrix.h" #include "render.h" #include "opengl.h" #include "dialog.h" #include "quaternion.h" #include "numeric.h" #include "interface.h" /* externals */ extern struct sysenv_pak sysenv; /*****************************/ /* initialize default camera */ /*****************************/ void camera_default(gdouble r, gpointer data) { struct camera_pak *camera = data; camera->mode = LOCKED; camera->perspective = FALSE; camera->fov = 70.0; /* FIXME - not sure why the < 1.0 case is needed ... */ if (r < 1.0) camera->zoom = r; else camera->zoom = 1.0; VEC4SET(camera->q, 1.0, 0.0, 0.0, 0.0); VEC3SET(camera->x, 0.0, -2.0*r, 0.0); VEC3SET(camera->o, 0.0, 0.0, 1.0); VEC3SET(camera->v, 0.0, 1.0, 0.0); VEC3SET(camera->e, 1.0, 0.0, 0.0); } /**************************/ /* restore default camera */ /**************************/ void camera_init(struct model_pak *model) { g_assert(model != NULL); if (!model->camera_default) model->camera_default = g_malloc(sizeof(struct camera_pak)); model->camera = model->camera_default; camera_default(model->rmax, model->camera); } /*************/ /* debugging */ /*************/ void camera_dump(gpointer data) { struct camera_pak *camera = data; printf("camera [%p]\n", camera); P4VEC("q: ", camera->q); P3VEC("x: ", camera->x); P3VEC("o: ", camera->o); P3VEC("v: ", camera->v); } /***************************/ /* default camera location */ /***************************/ gpointer camera_new(void) { struct camera_pak *camera; camera = g_malloc(sizeof(struct camera_pak)); camera_default(10.0, camera); return(camera); } /**********************/ /* duplicate a camera */ /**********************/ gpointer camera_dup(gpointer data) { struct camera_pak *cam1, *cam2 = data; cam1 = g_malloc(sizeof(struct camera_pak)); memcpy(cam1, cam2, sizeof(struct camera_pak)); return(cam1); } /*****************/ /* copy a camera */ /*****************/ void camera_copy(gpointer a, gpointer b) { struct camera_pak *cam1=a, *cam2 = b; memcpy(cam1, cam2, sizeof(struct camera_pak)); } /****************************************************************/ /* adjust camera position for a new model scale (ie rmax value) */ /****************************************************************/ void camera_rescale(gdouble r, gpointer data) { gdouble x[3]; struct camera_pak *camera = data; ARR3SET(x, camera->x); normalize(x, 3); VEC3MUL(x, r); ARR3SET(camera->x, x); } /**********************/ /* extract quaternion */ /**********************/ gdouble *camera_q(gpointer data) { struct camera_pak *camera = data; return(camera->q); } /***************************************************************/ /* extract the cartesian viewing vector (for visibility tests) */ /***************************************************************/ void camera_view(gdouble *v, gpointer data) { struct camera_pak *camera = data; g_assert(data != NULL); ARR3SET(v, camera->v); if (camera->mode == LOCKED) quat_rotate(v, camera->q); } /*****************************************************/ /* create an animation from a rotation specification */ /*****************************************************/ void camera_rotate_animate(gint axis, gdouble *angle, gint overwrite, struct model_pak *model) { gdouble a, radian[3]; GSList *journey; struct camera_pak *camera; g_assert(model != NULL); dialog_destroy_type(ANIM); /* TODO - angle checks */ ARR3SET(radian, angle); VEC3MUL(radian, D2R); journey = NULL; for (a=radian[0] ; acamera); switch (axis) { case 1: quat_concat_euler(camera->q, ROLL, a); break; case 2: quat_concat_euler(camera->q, YAW, a); break; default: quat_concat_euler(camera->q, PITCH, a); } journey = g_slist_prepend(journey, camera); } journey = g_slist_reverse(journey); if (overwrite) { free_slist(model->transform_list); model->transform_list = journey; } else model->transform_list = g_slist_concat(model->transform_list, journey); model->num_frames = g_slist_length(model->transform_list); model->animation = TRUE; redraw_canvas(SINGLE); } /*****************************************************/ /* create an animation from the camera waypoint list */ /*****************************************************/ #define DEBUG_CAMERA_ANIMATE 0 void camera_waypoint_animate(gint frames, gint overwrite, struct model_pak *model) { gint i; gdouble a, af, v[3], e[3], o[3], tmp[3]; gdouble jf, jv[3], x[3], mat[9]; GSList *list, *journey; struct camera_pak *cam, *cam1, *cam2; /* checks */ g_assert(model != NULL); g_assert(frames > 0); if (g_slist_length(model->waypoint_list) < 2) { gui_text_show(ERROR, "You need to make at least 2 waypoint.\n"); return; } /* close any active animation dialog */ dialog_destroy_type(ANIM); #if DEBUG_CAMERA_ANIMATE printf("frames for each traversal: %d\n", frames); #endif list = model->waypoint_list; cam1 = list->data; list = g_slist_next(list); /* create the camera journey */ journey = NULL; while (list) { cam2 = list->data; /* setup camera journey vector */ ARR3SET(jv, cam2->x); ARR3SUB(jv, cam1->x); /* add starting camera over journey leg */ for (i=0 ; ix, x); journey = g_slist_prepend(journey, cam); } /* approx 5 degrees */ #define ROTATION_INCREMENT 0.08727 /* (v x e plane alignment) */ proj_vop(v, cam2->v, cam1->o); a = via(v, cam1->v, 3); /* compute rotation increment */ af = (gint) nearest_int(a / ROTATION_INCREMENT); if (!af) af = 1.0; /* test rotation sense */ matrix_v_rotation(mat, cam1->o, a); ARR3SET(tmp, cam1->v); vecmat(mat, tmp); if (via(tmp, v, 3) > 0.1) a *= -1.0; /* build rotaton */ matrix_v_rotation(mat, cam1->o, a/af); /* apply to camera */ ARR3SET(v, cam1->v); ARR3SET(e, cam1->e); for (i=af ; i-- ; ) { cam = camera_dup(cam1); ARR3SET(cam->x, cam2->x); vecmat(mat, v); vecmat(mat, e); ARR3SET(cam->v, v); ARR3SET(cam->e, e); journey = g_slist_prepend(journey, cam); } /* TODO - apply elevation to get v in complete coincidence */ /* rotate about e to achieve coincidence */ a = via(v, cam2->v, 3); /* compute rotation increment */ af = (gint) nearest_int(a / ROTATION_INCREMENT); if (!af) af = 1.0; /* test rotation sense */ matrix_v_rotation(mat, e, a); ARR3SET(tmp, v); vecmat(mat, tmp); if (via(tmp, cam2->v, 3) > 0.1) a *= -1.0; /* build rotaton */ matrix_v_rotation(mat, e, a/af); /* apply to camera */ ARR3SET(o, cam1->o); for (i=af ; i-- ; ) { cam = camera_dup(cam1); ARR3SET(cam->x, cam2->x); vecmat(mat, v); vecmat(mat, o); ARR3SET(cam->v, v); ARR3SET(cam->o, o); ARR3SET(cam->e, e); journey = g_slist_prepend(journey, cam); } /* endpoint camera */ journey = g_slist_prepend(journey, camera_dup(cam2)); /* get next journey leg */ cam1 = cam2; list = g_slist_next(list); } journey = g_slist_reverse(journey); if (overwrite) { free_slist(model->transform_list); model->transform_list = journey; } else model->transform_list = g_slist_concat(model->transform_list, journey); model->num_frames = g_slist_length(model->transform_list); model->animation = TRUE; redraw_canvas(SINGLE); } gdis-0.90/count.c0000644000175000017500000000713211007463174012330 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include "gdis.h" #include "count.h" #include "numeric.h" /**************************/ /* construction primitive */ /**************************/ #define DEBUG_COUNT_NEW 0 gpointer count_new(gdouble start, gdouble stop, gdouble step) { struct count_pak *count; g_assert(stop > step); g_assert(stop-step >= step); g_assert(step >= 0.0); count = g_malloc(sizeof(struct count_pak)); /* copy extents */ count->start = start; count->stop = stop; count->step = step; /* compute and allocate bin array */ count->size = nearest_int (0.5 + ((stop-start) / step) ); count->bins = g_malloc0(count->size * sizeof(gint)); #if DEBUG_COUNT_NEW printf("new count from: %f - %f, step: %f, size: %d\n", start, stop, step, count->size); #endif return(count); } /*************************/ /* destruction primitive */ /*************************/ void count_free(gpointer data) { struct count_pak *count = data; g_assert(count != NULL); g_free(count->bins); g_free(count); } /***************************/ /* debug/contents function */ /***************************/ void count_stats(gpointer data) { gint i, value, sum, nonzero; struct count_pak *count = data; g_assert(count != NULL); sum = nonzero = 0; for (i=count->size ; i-- ; ) { value = *(count->bins+i); sum += value; } printf("Count %p: size=%d : sum=%d\n", count, count->size, sum); } /*************************/ /* data access primitive */ /*************************/ gint *count_bins(gpointer data) { struct count_pak *count = data; return(count->bins); } gint count_size(gpointer data) { struct count_pak *count = data; return(count->size); } gdouble count_stop(gpointer data) { struct count_pak *count = data; return(count->stop); } /**************************/ /* attempt to bin a value */ /**************************/ /* NB: returns -1, 0, 1 if value is less, within, or outside the count range */ gint count_insert(gdouble value, gpointer data) { gint n; gdouble offset; struct count_pak *count = data; g_assert(count != NULL); if (value < count->start) return(-1); if (value > count->stop) return(1); offset = value - count->start; offset /= count->step; n = nearest_int(offset); g_assert(n >= 0); if (n >= count->size) { printf("BAD VALUE = %f : size = %d\n", value, n); } g_assert(n < count->size); *(count->bins+n) += 1; return(0); } /*********************************************************/ /* assuming congruent, merge the bin data for two counts */ /*********************************************************/ void count_add(gpointer a, gpointer b) { gint i; struct count_pak *c1=a, *c2=b; g_assert(c1 != NULL); g_assert(c2 != NULL); /* TODO - can get more fancy with the merge st mismatch range / size etc are handled */ g_assert(c1->size == c2->size); for (i=c1->size ; i-- ; ) *(c1->bins+i) += *(c2->bins+i); } gdis-0.90/file_geomview.c0000644000175000017500000001327510600706735014027 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #ifdef __APPLE__ #include #else #include #endif #include "gdis.h" #include "coords.h" #include "model.h" #include "file.h" #include "parse.h" #include "scan.h" #include "matrix.h" #include "spatial.h" #include "interface.h" /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /****************/ /* file reading */ /****************/ #define DEBUG_READ_OFF 0 gint read_off(gchar *filename, struct model_pak *model) { gint a, b, c, i, n, v, num_tokens, remaining, v_limit; gint colour_flag, normal_flag, texture_flag; gchar **buff, *text; gdouble norm[3]; gpointer scan; struct spatial_pak *spatial; struct vec_pak **vec, *vec1; /* checks */ g_return_val_if_fail(model != NULL, 1); scan = scan_new(filename); if (!scan) return(2); /* setup flags */ colour_flag = normal_flag = texture_flag = FALSE; /* parse header */ buff = scan_get_tokens(scan, &num_tokens); if (num_tokens) { text = *buff; n = strlen(text); for (i=0 ; i 0); g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); vec = g_malloc(v_limit * sizeof(struct vec_pak *)); v=0; while (!scan_complete(scan)) { vec[v] = g_malloc(sizeof(struct vec_pak)); i = 0; remaining = num_tokens; if (remaining > 2) { vec[v]->x[0] = str_to_float(*(buff+i++)); vec[v]->x[1] = str_to_float(*(buff+i++)); vec[v]->x[2] = str_to_float(*(buff+i++)); vecmat(model->ilatmat, vec[v]->x); remaining -= 3; } /* TODO - if no normal - calculate? */ if (normal_flag) { if (remaining > 2) { vec[v]->n[0] = str_to_float(*(buff+i++)); vec[v]->n[1] = str_to_float(*(buff+i++)); vec[v]->n[2] = str_to_float(*(buff+i++)); } remaining -= 3; } /* FIXME - can get quite tricky here with colour map indices etc. */ if (colour_flag) { /* rgb */ if (remaining > 2) { vec[v]->colour[0] = str_to_float(*(buff+i++)); vec[v]->colour[1] = str_to_float(*(buff+i++)); vec[v]->colour[2] = str_to_float(*(buff+i++)); if (VEC3MAGSQ(vec[v]->colour) < FRACTION_TOLERANCE) { /* black -> GDIS's re-entrant surface colour */ ARR3SET(vec[v]->colour, sysenv.render.rsurf_colour); } } remaining -= 3; /* alpha */ /* if (remaining) vec[v]->colour[3] = str_to_float(*(buff+i++)); sysenv.render.transmit = str_to_float(*(buff+i++)); remaining--; */ } else { /* default (no colour specified) */ ARR3SET(vec[v]->colour, sysenv.render.rsurf_colour); } if (++v == v_limit) break; g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); } g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); while (!scan_complete(scan)) { if (num_tokens) { n = str_to_float(*buff); g_assert(num_tokens > n); /* only create spatial for 3 or more vertices */ /* TODO - some files have lines with only 2 vertices - create line */ if (n > 2) { /* TODO - only create one spatial - add vertices to this */ /* TODO - if no normals - use method that makes OpenGL calculate */ spatial = spatial_new(NULL, SPATIAL_GENERIC, 0, TRUE, model); /* check vertices have the correct ordering */ /* might not be necessary - geomview might already do this */ a = str_to_float(*(buff+1)); b = str_to_float(*(buff+2)); c = str_to_float(*(buff+3)); /* TODO - convert to cartesian (general case) */ calc_norm(norm, vec[a]->x, vec[b]->x, vec[c]->x); normalize(norm, 3); /* fill out the vertices */ for (i=0 ; i= 0); g_assert(v < v_limit); /* copy vector, as normals may change depending on current polygon */ vec1 = g_malloc(sizeof(struct vec_pak)); ARR3SET(vec1->x, vec[v]->x); if (normal_flag) { ARR3SET(vec1->n, vec[v]->n); } else { ARR3SET(vec1->n, norm); } ARR3SET(vec1->colour, vec[v]->colour); spatial->list = g_slist_prepend(spatial->list, vec1); } spatial->list = g_slist_reverse(spatial->list); } } g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); } /* cleanup */ g_strfreev(buff); for (i=v_limit ; i-- ; ) g_free(*(vec+i)); g_free(vec); /* model setup */ strcpy(model->filename, filename); g_free(model->basename); model->basename = parse_strip(filename); model->id = GEOMVIEW_OFF; model->fractional = FALSE; model_prep(model); return(0); } gdis-0.90/select.c0000644000175000017500000011771211035034372012460 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include "gdis.h" #include "coords.h" #include "edit.h" #include "matrix.h" #include "quaternion.h" #include "measure.h" #include "spatial.h" #include "opengl.h" #include "render.h" #include "select.h" #include "zone.h" #include "interface.h" #include "gui_shorts.h" extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; gint backbone = 0; /*********************************/ /* update selection connectivity */ /*********************************/ void select_connect_update(struct model_pak *model) { GSList *list; /* remove all old bonds first */ for (list=model->selection ; list ; list=g_slist_next(list)) connect_atom_clear(list->data, model); /* now create the new connectivity */ for (list=model->selection ; list ; list=g_slist_next(list)) connect_atom_compute(list->data, model); connect_molecules(model); } /****************************/ /* mark selection as ghosts */ /****************************/ void select_flag_ghost(void) { GSList *list; struct core_pak *core; struct model_pak *data; data = sysenv.active_model; if (!data) return; /* clean up selection highlighting */ for (list=data->selection ; list ; list=g_slist_next(list)) { core = list->data; core->ghost = TRUE; init_atom_colour(core, data); } redraw_canvas(SINGLE); } /****************************/ /* mark selection as normal */ /****************************/ void select_flag_normal(void) { GSList *list; struct core_pak *core; struct model_pak *data; data = sysenv.active_model; if (!data) return; /* clean up selection highlighting */ for (list=data->selection ; list ; list=g_slist_next(list)) { core = list->data; core->ghost = FALSE; init_atom_colour(core, data); } redraw_canvas(SINGLE); } /***********************************/ /* change selection rendering mode */ /***********************************/ void core_render_mode_set(gint mode, GSList *cores) { GSList *list; struct core_pak *core; for (list=cores ; list ; list=g_slist_next(list)) { core = list->data; core->render_mode = mode; } } void core_render_wire_set(gint wire, GSList *cores) { GSList *list; struct core_pak *core; for (list=cores ; list ; list=g_slist_next(list)) { core = list->data; core->render_wire = wire; } } /*******************/ /* clear selection */ /*******************/ void select_clear(struct model_pak *model) { GSList *list; struct core_pak *core; g_assert(model != NULL); /* clean up selection highlighting */ for (list=model->selection ; list ; list=g_slist_next(list)) { core = list->data; core->status &= ~SELECT; } g_slist_free(model->selection); model->selection=NULL; } /******************/ /* copy selection */ /******************/ void select_copy(void) { struct model_pak *model; /* setup & check */ model = sysenv.active_model; if (!model) return; if (!model->selection) return; sysenv.select_source = model; } /*********************/ /* paste a selection */ /*********************/ void select_paste(void) { struct model_pak *data, *src; struct core_pak *core, *orig; GSList *clist, *slist; /* checks */ data = sysenv.active_model; src = sysenv.select_source; if (data == NULL || src == NULL) return; if (data->id == NODATA || !src->selection) return; /* copy the selection - just in case src == data */ slist = g_slist_copy(src->selection); /* ensure pasted atoms will be the only ones that are selected */ select_clear(data); /* duplicate cores */ for (clist=slist ; clist ; clist=g_slist_next(clist)) { orig = clist->data; /* duplicate the core & transform into the new model's lattice space */ core = copy_core(orig, src, data); /* NEW - if destination model is 2D, force to region 1 */ if (src->periodic == 2) core->region = REGION1A; /* add core to the selection */ select_add_core(core, data); } g_slist_free(slist); /* updates */ coords_compute(data); zone_init(data); connect_bonds(data); connect_molecules(data); redraw_canvas(SINGLE); } /*****************************/ /* colour selection callback */ /*****************************/ void cb_select_colour(gpointer *csd) { gdouble colour[3]; GSList *list; struct core_pak *core; struct model_pak *model; model = sysenv.active_model; if (!model) return; gtk_color_selection_get_color((GtkColorSelection *) csd, colour); /* P3VEC("colour: ", colour); */ for (list=model->selection ; list ; list=g_slist_next(list)) { core = list->data; ARR3SET(core->colour, colour); VEC3MUL(core->colour, 65535.0); } /* TODO - close the csd */ redraw_canvas(SINGLE); } /********************/ /* colour selection */ /********************/ void select_colour(void) { #ifdef WITH_GUI /* no action if nothing is loaded */ if (sysenv.active_model) new_csd("Selection colour", (gpointer) cb_select_colour); #endif } /********************/ /* delete selection */ /********************/ void select_delete(void) { GSList *list; struct model_pak *data; struct core_pak *core; /* deletion for the active model only */ data = sysenv.active_model; if (!data) return; /* delete */ list = data->selection; while (list) { core = list->data; list = g_slist_next(list); /* delete_core(core); */ /* NEW */ core_delete_single(core, data); } /* delete_commit(data); */ data->selection = NULL; sysenv.select_source = NULL; redraw_canvas(SINGLE); } /******************/ /* hide selection */ /******************/ void select_hide(void) { GSList *list; struct model_pak *data; struct core_pak *core; /* deletion for the active model only */ data = sysenv.active_model; if (!data) return; /* exit if nothing selected */ if (!data->selection) return; /* hide */ for (list=data->selection ; list ; list=g_slist_next(list)) { core = list->data; core->status |= HIDDEN; core->status &= ~SELECT; } sysenv.select_source = NULL; /* clear the selection, so subsequent selection operations */ /* (ctrl+whatever) don't move invisible things around & cause havoc */ g_slist_free(data->selection); data->selection = NULL; /* update */ redraw_canvas(SINGLE); } /********************/ /* select all cores */ /********************/ void select_all(void) { GSList *list; struct core_pak *core; struct model_pak *data; /* deletion for the active model only */ data = sysenv.active_model; if (!data) return; /* assign the new selection */ g_slist_free(data->selection); data->selection = g_slist_copy(data->cores); /* update the highlighting */ for (list=data->selection ; list ; list=g_slist_next(list)) { core = list->data; core->status |= SELECT; } redraw_canvas(SINGLE); } /************************/ /* invert the selection */ /************************/ void select_invert(void) { GSList *new, *list; struct core_pak *core; struct model_pak *data; /* deletion for the active model only */ data = sysenv.active_model; if (!data) return; /* copy the core list */ new = g_slist_copy(data->cores); /* remove the old selection */ for (list=data->selection ; list ; list=g_slist_next(list)) { core = list->data; core->status &= ~SELECT; new = g_slist_remove(new, core); } /* assign the new selection */ g_slist_free(data->selection); data->selection = new; /* update the highlighting */ for (list=data->selection ; list ; list=g_slist_next(list)) { core = list->data; core->status |= SELECT; } redraw_canvas(SINGLE); } /*************************************************/ /* request that a core be added to the selection */ /*************************************************/ #define DEBUG_ADD_SELECT 0 gint select_add_core(struct core_pak *core, struct model_pak *data) { g_return_val_if_fail(core != NULL, 0); g_return_val_if_fail(data != NULL, 0); /* should we add? */ if (g_slist_find(data->selection, core)) return(1); if (core->status & HIDDEN) return(0); data->selection = g_slist_append(data->selection, core); core->status |= SELECT; gui_refresh(GUI_MODEL_PROPERTIES); return(0); } /***********************************************/ /* select all cores of a given atom label type */ /***********************************************/ void select_all_types(struct core_pak *core, struct model_pak *model) { GSList *list; struct core_pak *comp; for (list=model->cores ; list ; list=g_slist_next(list)) { comp = list->data; if (core->atom_type) if (g_ascii_strcasecmp(comp->atom_type, core->atom_type) == 0) select_add_core(comp, model); } } /***********************************************/ /* select all cores of a given atom label type */ /***********************************************/ void select_all_labels(struct core_pak *core, struct model_pak *model) { GSList *list; struct core_pak *comp; for (list=model->cores ; list ; list=g_slist_next(list)) { comp = list->data; if (g_ascii_strcasecmp(comp->atom_label, core->atom_label) == 0) select_add_core(comp, model); } } /**********************************************************/ /* select all elements of given type from a list of cores */ /**********************************************************/ void select_all_elem(gint code, struct model_pak *model) { GSList *list; struct core_pak *core; g_assert(model != NULL); for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->atom_code == code) select_add_core(core, model); } } /**********************************************************/ /* select all elements of given type from a list of cores */ /**********************************************************/ void select_all_elem_in_mol(struct core_pak *core, struct model_pak *model) { GSList *list; struct core_pak *comp; g_assert(model != NULL); g_assert(core != NULL); for (list=model->cores ; list ; list=g_slist_next(list)) { comp = list->data; if (core->atom_code == comp->atom_code && core->molecule == comp->molecule) select_add_core(comp, model); } } /**********************************************/ /* add a particular molecule to the selection */ /**********************************************/ void select_add_mol(struct mol_pak *mol, struct model_pak *model) { GSList *list; struct core_pak *core; g_assert(model != NULL); if (!mol) return; for (list=mol->cores ; list ; list=g_slist_next(list)) { core = list->data; select_add_core(core, model); } } /**********************************************/ /* add a particular molecule to the selection */ /**********************************************/ #define DEBUG_ADD_FRAGMENT 0 void select_add_fragment(struct core_pak *core, struct model_pak *model) { GSList *list, *cores; static struct core_pak *first=NULL; /* test for first or second call */ if (model->state) { g_assert(first != NULL); /* aqcuire the fragment */ connect_fragment_init(model); cores = connect_fragment_get(first, core, model); /* add all cores to the selection */ select_add_core(first, model); for (list=cores ; list ; list=g_slist_next(list)) select_add_core(list->data, model); g_slist_free(list); model->state = 0; first = NULL; } else { first = core; select_add_core(core, model); model->state++; } } /******************************************/ /* add all cores of the same region label */ /******************************************/ void select_add_region(struct core_pak *core, struct model_pak *model) { GSList *list; struct core_pak *comp; g_assert(model != NULL); g_assert(core != NULL); for (list=model->cores ; list ; list=g_slist_next(list)) { comp = list->data; if (core->region == comp->region) select_add_core(comp, model); } } /******************************************/ /* remove an atom from the selection list */ /******************************************/ void select_del_core(struct core_pak *core, struct model_pak *model) { g_assert(model != NULL); g_assert(core != NULL); core->status &= ~SELECT; model->selection = g_slist_remove(model->selection, core); } /******************************************************/ /* select atom(s) according to current selection mode */ /******************************************************/ void select_core(struct core_pak *core, gint toggle, struct model_pak *model) { switch (sysenv.select_mode) { case ATOM_LABEL: select_all_labels(core, model); break; case ATOM_TYPE: select_all_types(core, model); break; case CORE: /* toggle = true -> if selected already; deselect */ /* toggle = false -> if selected already; remain selected */ if (toggle) { if (select_add_core(core, model)) select_del_core(core, model); } else select_add_core(core, model); break; case ELEM: select_all_elem(core->atom_code, model); break; case ELEM_MOL: select_all_elem_in_mol(core, model); break; case MOL: select_add_mol(core->mol, model); break; case FRAGMENT: select_add_fragment(core, model); break; case REGION: select_add_region(core, model); break; } } /********************************/ /* rotate the current selection */ /********************************/ #define DEBUG_ROTATE_SELECT 0 void rotate_select(struct model_pak *data, gdouble *mat) { gint n; gdouble scent[3], vec[3]; GSList *list; struct core_pak *core; struct shel_pak *shell; g_assert(data != NULL); n = g_slist_length(data->selection); if (!n) return; #if DEBUG_ROTATE_SELECT P3MAT("rot: ", mat); #endif /* calculate selection's centroid */ VEC3SET(scent, 0.0, 0.0, 0.0); for (list=data->selection ; list ; list=g_slist_next(list)) { core = list->data; ARR3ADD(scent, core->x); } VEC3MUL(scent, 1.0 / (gdouble) n); /* FIXME - why is this different for INITIAL orientation */ #if DEBUG_ROTATE_SELECT P3VEC("scent: ", scent); #endif for (list=data->selection ; list ; list=g_slist_next(list)) { core = list->data; ARR3SET(vec, core->x); ARR3SUB(vec, scent); vecmat(mat, vec); ARR3ADD(vec, scent); ARR3SET(core->x, vec); /* shells */ if (core->shell) { shell = core->shell; ARR3SET(vec, shell->x); ARR3SUB(vec, scent); /* rotate to get on screen positions, and store the values */ vecmat(mat, vec); ARR3ADD(vec, scent); ARR3SET(shell->x, vec); } } /* updates */ coords_compute(data); zone_init(data); /* FIXME - fine grained approach sometimes misses bonds */ /* select_connect_update(data); */ connect_bonds(data); connect_molecules(data); meas_graft_model(data); } /*************************/ /* translate a selection */ /*************************/ void select_translate(gint px, gint py, struct model_pak *model) { gdouble x[3], r[3], qi[9], tm[9], ti[9]; GSList *list; struct core_pak *core; struct shel_pak *shel; g_assert(model != NULL); /* translation */ VEC3SET(x, px, 0.0, -py); VEC3MUL(x, 0.01); /* lattice transformation */ memcpy(ti, model->latmat, 9*sizeof(gdouble)); /* camera transformation */ quat_matrix(tm, camera_q(model->camera)); quat_matrix(qi, camera_q(model->camera)); matrix_invert(qi); /* build transform matrices */ matmat(qi, ti); matmat(model->ilatmat, tm); for (list=model->selection ; list ; list=g_slist_next(list)) { core = list->data; /* transform */ ARR3SET(r, core->x); vecmat(ti, r); ARR3ADD(r, x); vecmat(tm, r); ARR3SET(core->x, r); if (core->shell) { shel = core->shell; /* transform */ ARR3SET(r, shel->x); vecmat(ti, r); ARR3ADD(r, x); vecmat(tm, r); ARR3SET(shel->x, r); } } /* updates */ coords_compute(model); zone_init(model); /* FIXME - fine grained approach sometimes misses bonds */ /* select_connect_update(model); */ connect_bonds(model); connect_molecules(model); meas_graft_model(model); } /************************************/ /* total pathways from a given atom */ /************************************/ gint total_branches(struct core_pak *core) { gint branches=0; GSList *list; struct bond_pak *bond; struct core_pak *exit; for (list=core->bonds ; list ; list=g_slist_next(list)) { bond = list->data; if (core == bond->atom1) exit = bond->atom2; else exit = bond->atom1; /* NEW - preprocess has removed all the dead end branches */ if (exit->status & PRUNED) continue; if (backbone) if (exit->atom_code == backbone) branches++; } return(branches); } /****************************************/ /* exit pathways from atom2, given 1->2 */ /****************************************/ GSList *exit_branches(struct core_pak *core1, struct core_pak *core2) { GSList *list1, *exits=NULL; struct bond_pak *bond; struct core_pak *exit; /* checks */ if (backbone) if (core2->atom_code != backbone) return(NULL); for (list1=core2->bonds ; list1 ; list1=g_slist_next(list1)) { bond = list1->data; if (bond->type == BOND_HBOND) continue; /* get exits */ if (core2 == bond->atom1) exit = bond->atom2; else exit = bond->atom1; /* ignore entry point */ if (exit == core1) continue; /* ignore marked (pruned) branches */ if (exit->status & PRUNED) continue; /* if constructing ribbon first atom is backbone type */ if (backbone) { if (exit->atom_code != backbone) continue; } exits = g_slist_prepend(exits, exit); } return(exits); } /**************************/ /* node creation and init */ /**************************/ #define DEBUG_CREATE_NODE 0 struct node_pak *create_node(struct core_pak *core) { struct node_pak *node_data; node_data = g_malloc(sizeof(struct node_pak)); node_data->core = core; ARR3SET(node_data->x, core->x); node_data->num_branches = total_branches(core); #if DEBUG_CREATE_NODE printf(" >>> NEW NODE @ atom: %s [%p], order: %d\n", core->label, core, node_data->num_branches); #endif /* number of exits traversed */ node_data->num_explored = 0; /* these are filled out by the traverse function */ node_data->exit_list=NULL; node_data->link_list=NULL; return(node_data); } /***************/ /* find a node */ /***************/ struct node_pak *get_node_by_atom(struct core_pak *core, GList *node_list) { GList *list; struct node_pak *node_data; for (list=node_list ; list ; list=g_list_next(list)) { node_data = list->data; if (node_data->core == core) return(node_data); } return(NULL); } /**************************/ /* link creation and init */ /**************************/ #define DEBUG_CREATE_LINK 0 struct link_pak *create_link(GList *chain) { GList *list; struct link_pak *link; static gint link_id=0; /* first time init */ if (!chain) { link_id = 0; return(NULL); } link = g_malloc(sizeof(struct link_pak)); link->chain = NULL; link->size = 0; link->id = link_id++; list = g_list_last(chain); link->last = list->data; list = chain; link->first = list->data; while (list) { /* need to do this? */ link->chain = g_list_append(link->chain, list->data); link->size++; list = g_list_next(list); } #if DEBUG_CREATE_LINK printf("Creating link [%p:%p], size = %d\n", link->first, link->last, link->size); #endif return(link); } /*****************************************************/ /* return the atom number for the next in a sequence */ /*****************************************************/ #define DEBUG_TRAVERSE 0 struct core_pak *traverse(struct node_pak *node, GList *chain) { GList *list; GSList *slist, *slist2; struct link_pak *last_link; struct core_pak *curr=NULL, *prev=NULL, *next=NULL; /* FIXME - if chain is NULL -> previous list on current node? */ /* current atom */ list = g_list_last(chain); curr = list->data; /* attempt to get the atom we last left */ list = g_list_previous(list); if (list) prev = list->data; else { /* last submitted link of current node */ list = g_list_last(node->link_list); /* last atom in this list should be the current one - get previous */ if (list) { last_link = list->data; list = g_list_last(last_link->chain); list = g_list_previous(list); g_assert(list != NULL); prev = list->data; } } /* get available pathways */ slist = exit_branches(prev, curr); /* are we at a node? */ if (node->core == curr) { /* go through candidate pathways */ while (slist) { next = slist->data; /* if explored previously, then skip */ slist2 = node->exit_list; while (slist2) { if (next == slist2->data) break; slist2 = g_slist_next(slist2); } /* no match found - this pathways is unexplored */ if (!slist2) break; slist = g_slist_next(slist); } /* that's one more branch done */ if (slist) { node->exit_list = g_slist_append(node->exit_list, next); node->num_explored++; } else g_assert_not_reached(); #if DEBUG_TRAVERSE printf("traverse() node @ atom: %p\n", node->core); printf("traverse() branches: %d\n", node->num_branches); printf("traverse() explored: %d\n", node->num_explored); #endif } else if (slist) next = slist->data; #if DEBUG_TRAVERSE printf("traverse() next atom: %p\n", next); #endif return(next); } /***********************************/ enum { OPEN, CLOSED }; /***********************************/ #define DEBUG_SUBMIT_LINK 0 void submit_link(struct node_pak *rnode, struct node_pak *cnode, GList *chain, struct model_pak *data) { gint type; /* only really important to flag cyclic/noncyclic ie 4 drawing */ struct link_pak *dest_link=NULL, *temp_link=NULL; GList *list; GList *dest_list; struct core_pak *core; g_return_if_fail(cnode != NULL); type = OPEN; if (rnode) { rnode->num_explored++; /* get atom before the repeat node */ list = chain; list = g_list_last(list); list = g_list_previous(list); g_assert(list != NULL); core = list->data; /* CURRENT - add to node's explored list */ rnode->exit_list = g_slist_append(rnode->exit_list, core); /* one node in cycle case... */ if (cnode->core == rnode->core) { type = CLOSED; #if DEBUG_SUBMIT_LINK printf("terminating cyclic group.\n"); #endif } /* two node in cyclic group case... */ /* TODO - general case of multiple nodes */ list = cnode->link_list; while(list) { temp_link = list->data; /* TODO - other cases where only one of these match - eg type = JOINED */ /* loop: A-C-B-D */ /* A-C-B + A-D-B case */ if (temp_link->first == cnode->core && temp_link->last == rnode->core) { #if DEBUG_SUBMIT_LINK printf("terminating cyclic group.\n"); #endif dest_link = temp_link; type = CLOSED; /* reverse input chain to make the sequence continuous */ chain = g_list_reverse(chain); break; } /* loop: A-C-B-D */ /* A-C-B + B-D-A case */ if (temp_link->first == rnode->core && temp_link->last == cnode->core) { /*if this happens - same as above, except chain won't need to be reversed */ g_assert_not_reached(); } list = g_list_next(list); } } /* NB: remember the supplied chain will be destroyed by the calling routine */ /* so we must duplicate, rather than copy the list of atoms */ if (dest_link) { /* modify existing link to indicate that it has common first & last */ /* nodes with another link - ie it's a cyclic link */ dest_link->type = type; /* NB: for cyclic chains - first & last become entry & exit point */ /* for the cyclic group (used for drawing?) */ list = chain; /* skip 1st element of input chain - as we only want a repeat of the ends */ /* not a repeat of the two in the middle */ list = g_list_next(list); /* append the supplied chain to ALREADY EXISTING link list */ dest_list = dest_link->chain; /* loop through the input chain & store at destination */ while (list) { core = list->data; dest_list = g_list_append(dest_list, core); dest_link->size++; list = g_list_next(list); } } else { /* create new link */ dest_link = create_link(chain); dest_link->type = type; /* input chain */ list = chain; /* store the completed chain as a link */ cnode->link_list = g_list_append(cnode->link_list, dest_link); } } /*********************************************/ /* hides a carbon and any attached hydrogens */ /*********************************************/ void hide_carbon(struct core_pak *core) { GSList *list; struct bond_pak *bond; g_return_if_fail(core->atom_code == 6); core->status |= HIDDEN; for (list=core->bonds ; list ; list=g_slist_next(list)) { bond = (struct bond_pak *) list->data; if ((bond->atom1)->atom_code == 1) (bond->atom1)->status |= HIDDEN; if ((bond->atom2)->atom_code == 1) (bond->atom2)->status |= HIDDEN; } } /*********************************************/ /* eliminate (prune) all dead end type links */ /*********************************************/ #define DEBUG_PREPROCESS 0 void preprocess(struct core_pak *start, struct model_pak *data) { gint flag; GSList *list; struct core_pak *core; g_assert (data != NULL); /* set global - yuck */ if (start) backbone = start->atom_code; else backbone = 0; /* clear the pruned flag for backbone & prune all others */ for (list=data->cores ; list ; list=g_slist_next(list)) { core = list->data; if (backbone) { if (core->atom_code == backbone) core->status &= ~PRUNED; else core->status |= PRUNED; } else core->status &= ~PRUNED; } /* prune "dangling" backbone type links */ if (backbone) { flag=1; while (flag) { flag=0; for (list=data->cores ; list ; list=g_slist_next(list)) { core = list->data; /* only prune once */ if (core->status & PRUNED) continue; /* prune off dead-ends */ if (total_branches(core) < 2) { core->status |= PRUNED; flag++; } /* hack's for nasty disordered structures */ /* hack 1 - discard bonds if more than 4 */ if (total_branches(core) > 4) { core->status |= PRUNED; flag++; } /* hack 2 - prune off partial occupancies */ if (core->sof < 1.0) { core->status |= PRUNED; flag++; } } } } #if DEBUG_PREPROCESS for (list=data->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->status & PRUNED) core->status |= HIDDEN; } #endif } /****************************************/ /* select connected atom types for the */ /* carbon backbone/ribbon drawing stuff */ /****************************************/ #define DEBUG_CONSTRUCT_BACKBONE 0 void construct_backbone(struct core_pak *start, struct model_pak *data) { gint match, num_exits; GList *list, *list2, *node_list=NULL, *link_list; GList *current_chain=NULL; GSList *tmp_list; struct node_pak *current_node, *repeat_node, *temp_node; struct link_pak *current_link; struct core_pak *core, *path; /* checks */ g_assert(start != NULL); g_assert(data != NULL); /* clicked atom */ core = start; /* prune the model first (ie remove dangling chains) */ /* to make tracing the connectivity easier */ preprocess(start, data); /* attempt to set up initial node */ switch(total_branches(core)) { /* no pathways out of this atom - we're done already */ case 0: current_node = NULL; break; /* should have already been pruned */ case 1: #if DEBUG_CONSTRUCT_BACKBONE printf("Isolated chain.\n"); #endif return; /* if first atom is not a node - traverse until find one */ case 2: #if DEBUG_CONSTRUCT_BACKBONE printf("atom: %p is not a node.\n", core); #endif /* get next atom & append to current chain */ tmp_list = exit_branches(NULL, core); if (!tmp_list) return; path = tmp_list->data; g_slist_free(tmp_list); while (total_branches(path) < 3) { tmp_list = exit_branches(core, path); core = path; path = (struct core_pak *) tmp_list->data; g_slist_free(tmp_list); /* failsafe */ if (path == start) { #if DEBUG_CONSTRUCT_BACKBONE printf("Lone cyclic group.\n"); #endif return; } } #if DEBUG_CONSTRUCT_BACKBONE printf("starting at atom: %p\n", path); #endif core = path; /* at a node */ default: current_node = create_node(core); node_list = g_list_append(node_list, current_node); current_chain = g_list_append(current_chain, core); hide_carbon(core); } /* init linkages */ create_link(NULL); list=list2=link_list=NULL; /* while we have a node to explore... */ while (current_node) { /* get next atom & append to current chain */ core = traverse(current_node, current_chain); g_assert(core != NULL); /* NEW - hide all atoms traversed */ /* FIXME - make more sophisticated? eg hide "danglers" as well */ hide_carbon(core); current_chain = g_list_append(current_chain, core); /* NB: num_exits is one less than number of bonds - since we ignore the */ /* bond that we came in by when traversing the connectivity tree */ num_exits = total_branches(core) - 1; /* FIXME - hack - the one possiblity we've missed: */ /* if current atom is a node BUT, only one exit branch */ /* ie it's the first atom clicked - which is automatically */ /* made a node */ /* make the switch statement trigger the node case */ if (core == current_node->core) num_exits = 2; switch (num_exits) { /* pre-process should remove all such possibilities */ case 0: g_assert_not_reached(); break; /* only 1 possible exit - continue to traverse the current chain */ case 1: break; /* >= 2 : this atom is a node */ default: /* is it a pre-existing node? */ match=0; #if GOK repeat_node = NULL; list = node_list; while (list) { temp_node = list->data; if (core == temp_node->core) { /* repeated node - join incomplete chains of the current node */ /* NB: this is the part that will fail on more complex chain structures */ /* such as a cyclic structure that has more than two nodes */ /* TODO - maybe repeat_node could be replaced by a list of common nodes */ /* that build up the cyclic structure */ repeat_node = temp_node; break; } list = g_list_next(list); } #endif repeat_node = get_node_by_atom(core, node_list); /* store the current chain (repeat_node is NULL if node is new) */ /* this routine is the core of the whole thing, it should match */ /* up uncompleted chains to form cyclic chains, update number */ /* of explored pathways etc. etc. */ /* NB: the current chain must be duplicated before it's stored, */ /* since this routine will re-used the pointer for the next */ /* atom traversing loop */ submit_link(repeat_node, current_node, current_chain, data); /* if the node is not a repeat (ie new) then create */ if (!repeat_node) { temp_node = create_node(core); /* add the path we came in by */ list = g_list_last(current_chain); list = g_list_previous(list); g_assert(list != NULL); path = list->data; temp_node->exit_list = g_slist_append(temp_node->exit_list, path); temp_node->num_explored++; /* add to main list */ node_list = g_list_append(node_list, temp_node); } /* scan previous nodes for unexplored pathways */ current_node = NULL; list = node_list; while (list) { current_node = list->data; if (current_node->num_explored < current_node->num_branches) break; list = g_list_next(list); current_node = NULL; } /* init for the next traverse call */ if (current_node) { #if DEBUG_CONSTRUCT_BACKBONE printf("init traverse with node [%p] (%d/%d)\n", current_node->core, current_node->num_explored, current_node->num_branches); #endif core = current_node->core; } /* new pathway => new chain to explore */ g_list_free(current_chain); current_chain = NULL; current_chain = g_list_append(current_chain, core); break; } } #if DEBUG_CONSTRUCT_BACKBONE printf("node list traversed.\n"); printf("-------------------------\n"); #endif /* summary (stop compiler warnings) */ current_link=NULL; #if DEBUG_CONSTRUCT_BACKBONE list = node_list; while (list) { current_node = list->data; printf("node: %p, branches: %d, explored: %d\n", current_node->core, current_node->num_branches, current_node->num_explored); link_list = current_node->link_list; while (link_list) { current_link = link_list->data; printf("link type: %d, size: %d\n", current_link->type, current_link->size); printf("\t"); list2 = current_link->chain; while (list2) { printf("[%p] ", list2->data); list2 = g_list_next(list2); } printf("\n"); link_list = g_list_next(link_list); } printf("-------------------------\n"); list = g_list_next(list); } #endif /* cleanup */ g_list_free(current_chain); for (tmp_list=data->cores ; tmp_list ; tmp_list=g_slist_next(tmp_list)) { core = tmp_list->data; core->status &= ~PRUNED; } /* use cyclic/single linkages to construct ribbon */ construct_ribbon(node_list, data); backbone = 0; /* recalc coords (ie the ribbon coords) & draw */ coords_init(REDO_COORDS, data); redraw_canvas(SINGLE); } /******************************************************/ /* general function for initializing a special object */ /******************************************************/ /* deprec by the new spatial code */ struct object_pak *create_object(gint type, struct model_pak *data) { struct object_pak *obj_data; obj_data = g_malloc(sizeof(struct object_pak)); obj_data->id = 0; /* don't bother with this? */ obj_data->type = type; obj_data->data = NULL; switch (type) { case RIBBON: break; default: g_assert_not_reached(); } /* is this quicker than an append??? */ data->ribbons = g_slist_reverse(data->ribbons); data->ribbons = g_slist_prepend(data->ribbons, (gpointer *) obj_data); data->ribbons = g_slist_reverse(data->ribbons); return(obj_data); } /***************************************/ /* use node data to construct a ribbon */ /***************************************/ #define DEBUG_CONSTRUCT_RIBBON 0 void construct_ribbon(GList *node_list, struct model_pak *data) { gdouble vec[3], norm[4], *v1, *v2; GList *list, *list2, *list3, *list4, *link_list; GSList *ribbon, *rlist1, *rlist2; struct link_pak *current_link, *link2, *group1, *group2; struct node_pak *current_node, *node2; struct ribbon_pak *ribbon1, *ribbon2; struct object_pak *object_data; struct core_pak *core, *join1, *join2; /* TODO - scan the SINGLE links & check if they reference */ /* two cyclic groups at their end points (this should always */ /* happen for cyclic groups) & if so - submit a ribbon segment */ /* comprising the cyclic group centroids/normals for the two */ /* connected cyclic groups */ /* drawing - 2 stub's for each ribbon segment (one for each planar group) */ /* and an evaluator ribbon connecting the two stubs */ object_data = create_object(RIBBON, data); ribbon = NULL; list = node_list; while (list) { current_node = list->data; link_list = current_node->link_list; while (link_list) { current_link = link_list->data; /* find open chains */ if (current_link->type == OPEN) { list2 = node_list; group1=group2=NULL; join1=join2=NULL; while (list2) { node2 = list2->data; list3 = node2->link_list; while (list3) { link2 = list3->data; /* match only cyclic groups */ if (link2->type == CLOSED) { list4 = link2->chain; while (list4) { core = list4->data; if (current_link->first == core) { group1 = link2; join1 = core; } if (current_link->last == core) { group2 = link2; join2 = core; } list4 = g_list_next(list4); } } list3 = g_list_next(list3); } list2 = g_list_next(list2); } /* two found - record a ribbon segment */ /* comprises two points + normals at each point */ /* probably need one extra vector - orientation (eg rectangle) */ /* maybe some intermediate points in the joining chain? */ if (group1 && group2) { #if DEBUG_CONSTRUCT_RIBBON printf("Two cyclic groups connected via: [%p] [%p], sizes: (%d) (%d)\n", join1, join2, group1->size, group2->size); #endif ribbon1 = g_malloc(sizeof(struct ribbon_pak)); ARR3SET(ribbon1->colour, sysenv.render.ribbon_colour); ribbon1->colour[3] = sysenv.render.transmit; /* append the ribbon segment */ ribbon = g_slist_append(ribbon, (gpointer *) ribbon1); /* save link ids */ ribbon1->id1 = group1->id; ribbon1->id2 = group2->id; /* compute centroid of group 1 */ VEC3SET(vec, 0.0, 0.0, 0.0); list2 = group1->chain; /* exclude the first point - it's the same as the first */ list2 = g_list_next(list2); while (list2) { core = list2->data; ARR3ADD(vec, core->x); list2 = g_list_next(list2); } VEC3MUL(vec, 1.0/(group1->size-1)); ARR3SET(ribbon1->x1, vec); /* compute centroid of group 1 */ VEC3SET(vec, 0.0, 0.0, 0.0); list2 = group2->chain; /* exclude the first point - it's the same as the first */ list2 = g_list_next(list2); while (list2) { core = list2->data; ARR3ADD(vec, core->x); list2 = g_list_next(list2); } VEC3MUL(vec, 1.0/(group2->size-1)); ARR3SET(ribbon1->x2, vec); /* compute normal of each */ /* NB: result is a 4D vector Ax+By+Cz+D = 0, even tho we only want the normal */ compute_plane(norm, group1->chain); normalize(norm, 3); ARR3SET(ribbon1->u1, norm); compute_plane(norm, group2->chain); normalize(norm, 3); ARR3SET(ribbon1->u2, norm); /* compute orientation 1->2 */ ARR3SET(vec, ribbon1->x2); ARR3SUB(vec, ribbon1->x1); normalize(vec, 3); proj_vop(ribbon1->v1, vec, ribbon1->u1); /* compute orientation 2->1 */ ARR3SET(vec, ribbon1->x1); ARR3SUB(vec, ribbon1->x2); normalize(vec, 3); proj_vop(ribbon1->v2, vec, ribbon1->u2); } } link_list = g_list_next(link_list); } list = g_list_next(list); } /* NEW - post process - ribbon segment smoothing */ rlist1 = ribbon; while (rlist1) { ribbon1 = rlist1->data; #if DEBUG_CONSTRUCT_RIBBON printf("ribbon segment: [%d] - [%d]\n", ribbon1->id1, ribbon1->id2); #endif /* "consistent" normal enforcement */ /* of dubious value, since ribbon lighing will be two sided */ /* also, not as easy as this (eg twisted ribbon) ... good enough though? */ if (via(ribbon1->x1, ribbon1->u1, 3) > PI/2.0) { VEC3MUL(ribbon1->u1, -1.0); } if (via(ribbon1->x2, ribbon1->u2, 3) > PI/2.0) { VEC3MUL(ribbon1->u2, -1.0); } /* search uniquely for a segment with common link id's */ rlist2 = g_slist_next(rlist1); while (rlist2) { ribbon2 = rlist2->data; /* if match - get the two orientation vectors at the ribbon meeting point */ v1 = v2 = NULL; if (ribbon1->id1 == ribbon2->id1) { v1 = ribbon1->v1; v2 = ribbon2->v1; } if (ribbon1->id1 == ribbon2->id2) { v1 = ribbon1->v1; v2 = ribbon2->v2; } if (ribbon1->id2 == ribbon2->id1) { v1 = ribbon1->v2; v2 = ribbon2->v1; } if (ribbon1->id2 == ribbon2->id2) { v1 = ribbon1->v2; v2 = ribbon2->v2; } /* if match - align */ if (v1 && v2) { /* subtract the normalized orientation vectors */ normalize(v1, 3); normalize(v2, 3); ARR3SET(vec, v1); ARR3SUB(vec, v2); /* assign according to subtraction order, so that v1 = -v2 */ normalize(vec, 3); ARR3SET(v1, vec); ARR3SET(v2, vec); VEC3MUL(v2, -1.0); } rlist2 = g_slist_next(rlist2); } rlist1 = g_slist_next(rlist1); } object_data->data = (gpointer *) ribbon; } gdis-0.90/job.h0000644000175000017500000000157011063452662011761 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ gint job_new(const gchar *, struct model_pak *); enum {JOB_UNKNOWN, JOB_GAMESS, JOB_GULP}; gdis-0.90/file_xtl.c0000644000175000017500000007020510600706735013010 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include "gdis.h" #include "coords.h" #include "model.h" #include "file.h" #include "parse.h" #include "matrix.h" #include "interface.h" #define DEBUG_MORE 0 #define MAX_KEYS 15 /* Added by C. Fisher 2004 */ #define CELL_LENGTH 10.0 /* Box length for non-periodic system */ /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /**********************/ /* save in XTL format */ /**********************/ gint write_xtl(gchar *filename, struct model_pak *data) { gint i; gint invert=FALSE; gint charge; gint num_tokens; gchar **buff, *t, *symbol; gdouble vec[3], tmat[9]; GSList *list; struct elem_pak elem_data; struct core_pak *core; FILE *fp; /* checks */ g_return_val_if_fail(data != NULL, 1); /* g_return_val_if_fail(data->periodic, 1); */ /* open the file */ fp = fopen(filename,"w"); if (!fp) return(1); gui_text_show(STANDARD, "Saving file in XTL format!\n"); /* header */ if( data->title) fprintf(fp,"TITLE %s\n",data->title); if( data->periodic > 0 ) { fprintf(fp,"DIMENSION %d\n",data->periodic); fprintf(fp,"CELL\n"); if (data->periodic == 3) { fprintf(fp,"%f %f %f %f %f %f\n",data->pbc[0],data->pbc[1],data->pbc[2], R2D*data->pbc[3], R2D*data->pbc[4], R2D*data->pbc[5]); fprintf(fp,"SYMMETRY NUMBER %d", data->sginfo.spacenum); /* Write space group after removing spaces */ if (data->sginfo.spacename) { buff = tokenize(data->sginfo.spacename, &num_tokens); fprintf(fp," LABEL "); for( i=0; i < num_tokens; i++) { t = *(buff+i); while( *t) { fprintf(fp,"%c",toupper(*t)); t++; } } } if( data->sginfo.spacenum > 1 && data->sginfo.spacenum < 16 ) { if( data->pbc[4] != 90.0/R2D ) fprintf(fp," QUALIFIER B_UNIQUE"); else if( data->pbc[3] != 90.0/R2D ) fprintf(fp," QUALIFIER A_UNIQUE"); else if( data->pbc[5] != 90.0/R2D ) fprintf(fp," QUALIFIER C_UNIQUE"); } if (data->sginfo.cellchoice) { if( data->sginfo.spacenum == 146 || data->sginfo.spacenum == 148 || data->sginfo.spacenum == 155 || data->sginfo.spacenum == 160 || data->sginfo.spacenum == 161 || data->sginfo.spacenum == 166 || data->sginfo.spacenum == 167 ) fprintf(fp," QUALIFIER %s", data->sginfo.cellchoice==1?"HEXAGONAL":"RHOMBOHEDRAL"); else if( data->sginfo.spacenum == 48 || data->sginfo.spacenum == 70 || data->sginfo.spacenum == 85 || data->sginfo.spacenum == 86 || data->sginfo.spacenum == 88 || data->sginfo.spacenum == 125 || data->sginfo.spacenum == 126 || data->sginfo.spacenum == 129 || data->sginfo.spacenum == 130 || data->sginfo.spacenum == 133 || data->sginfo.spacenum == 134 || data->sginfo.spacenum == 137 || data->sginfo.spacenum == 138 || data->sginfo.spacenum == 141 || data->sginfo.spacenum == 142 || data->sginfo.spacenum == 201 || data->sginfo.spacenum == 203 || data->sginfo.spacenum == 222 || data->sginfo.spacenum == 224 || data->sginfo.spacenum == 227 || data->sginfo.spacenum == 228 ) fprintf(fp," QUALIFIER ORIGIN_%d", data->sginfo.cellchoice); else if( data->sginfo.spacenum == 50 || data->sginfo.spacenum == 59 || data->sginfo.spacenum == 68 ) { if( data->sginfo.cellchoice % 2 == 1) fprintf(fp," QUALIFIER ORIGIN_1"); else fprintf(fp," QUALIFIER ORIGIN_2"); } } fprintf(fp,"\n"); } else fprintf(fp,"%f %f %f\n", data->pbc[0], data->pbc[1], R2D*data->pbc[5]); } else { fputs("CELL\n",fp); fprintf(fp," %f %f %f 90.00000 90.00000 90.00000\n",CELL_LENGTH, CELL_LENGTH, CELL_LENGTH); fputs("SYMMETRY LABEL P1\n",fp); } /* coords */ fprintf(fp,"\nATOMS\n"); if( data->periodic > 0 ) fprintf(fp,"NAME X Y Z CHARGE TEMP OCCUP SCAT\n"); else fprintf(fp,"NAME CARX CARY CARZ CHARGE TEMP OCCUP SCAT\n"); /* Cerius2 expects the opposite coordinate ordering for surfaces */ /* is it a surface with negative z? */ if (data->periodic == 2) { if (g_slist_length(data->cores)) { core = g_slist_nth_data(data->cores, 0); if (core->x[2] < 0.0) invert=TRUE; } } /* rot to make z positive */ matrix_rotation(&tmat[0], PI, PITCH); for (list=data->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->status & DELETED) continue; if (core->primary) { /* retrieve */ ARR3SET(vec, core->x); if (invert) vecmat(tmat, vec); if( !data->periodic ) { /* Shift non-periodic structure to centre of cell */ vec[0] += CELL_LENGTH / 2.0; vec[1] += CELL_LENGTH / 2.0; vec[2] += CELL_LENGTH / 2.0; } get_elem_data(core->atom_code, &elem_data, data); symbol = g_strdup(elem_data.symbol); charge = (gint)abs(elem_data.charge); fprintf(fp,"%4s %10.5f %10.5f %10.5f %7.4f 0.0000 1.0000 %-2s%d%c\n", core->atom_label, vec[0], vec[1], vec[2], atom_charge(core), symbol, charge, (elem_data.charge>=0?'+':'-')); } } fprintf(fp,"EOF\n"); /* done */ fclose(fp); return(0); } /****************/ /* read routine */ /****************/ #define DEBUG_READ_XTL 0 gint read_xtl(gchar *filename, struct model_pak *data) { gint i, offset, num_tokens, num_columns, n=0; guint shift; gchar **buff; gchar *symbol; struct core_pak *core; FILE *fp; gint column[9]; /* initialize columns */ for(i=9;i--;) column[i] = -1; /* checks */ g_return_val_if_fail(data != NULL, 1); g_return_val_if_fail(filename != NULL, 1); fp = fopen(filename, "rt"); if (!fp) return(1); /* defaults */ data->fractional = TRUE; data->periodic = 3; for (;;) { buff = get_tokenized_line(fp, &num_tokens); if (!num_tokens) break; if (g_ascii_strncasecmp("tit", *buff, 3) == 0) /* TITLE keyword */ { data->title = g_strdup(*(buff+1)); for(i=2; ititle = g_strjoin(" ", data->title, *(buff+i), NULL); } /* periodicity search */ if (g_ascii_strncasecmp("dim", *buff, 3) == 0) /* DIMENSION keyword */ { if (num_tokens > 1) data->periodic = (gint) str_to_float(*(buff+1)); } /* space group search */ if (g_ascii_strncasecmp("sym", *buff, 3) == 0) /* SYMMETRY keyword */ { for (i=1 ; isginfo.spacenum = (gint) str_to_float(*(buff+i+1)); /* seek space group label */ if (g_ascii_strncasecmp("lab", *(buff+i), 3) == 0) /* LABEL secondary keyword */ data->sginfo.spacename = g_strdup(*(buff+i+1)); /* If space group name not given, use number */ /* if( strcmp(data->sginfo.spacename,"P 1") == 0 && data->sginfo.spacenum > 1 ) { g_free(data->sginfo.spacename); data->sginfo.spacename = g_strdup_printf("%d",data->sginfo.spacenum); } */ /* Cell choice options added by C. Fisher 2004 */ /* TODO Read SYM MAT data */ if (g_ascii_strncasecmp("qua", *(buff+i), 3) == 0) /* QUALIFIER secondary keyword */ { if(g_ascii_strncasecmp("origin_", *(buff+i+1), 7) == 0) { data->sginfo.cellchoice = (gint) str_to_float(*(buff+i+1)+7); sprintf(data->sginfo.spacename, "%s:%d", data->sginfo.spacename, data->sginfo.cellchoice); } if(g_ascii_strcasecmp("hexagonal", *(buff+i+1)) == 0) { data->sginfo.spacename = g_strconcat(data->sginfo.spacename, ":h", NULL); data->sginfo.cellchoice = 1; } if(g_ascii_strcasecmp("rhombohedral", *(buff+i+1)) == 0) { data->sginfo.spacename = g_strconcat(data->sginfo.spacename, ":r", NULL); data->sginfo.cellchoice = 2; } if(g_ascii_strcasecmp("b_unique", *(buff+i+1)) == 0) { if( data->sginfo.spacenum == 3 || data->sginfo.spacenum == 4 || data->sginfo.spacenum == 6 || data->sginfo.spacenum == 10 || data->sginfo.spacenum == 11 ) { data->sginfo.cellchoice = 1; } /* Options for SG 5,7,8,9,12,13,14,15 */ else if( g_ascii_strncasecmp("c2",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("c121",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("pc",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("p1c1",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("cm",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("c1m1",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("cc",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("c1c1",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("c2/m",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("c12/m1",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p2/c",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("p12/c1",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p21/c",data->sginfo.spacename,5) == 0 || g_ascii_strncasecmp("p121/c1",data->sginfo.spacename,7) == 0 || g_ascii_strncasecmp("c2/c",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("c12/c1",data->sginfo.spacename,6) == 0 ) { data->sginfo.cellchoice = 1; } else if( g_ascii_strncasecmp("a2",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("a121",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("pn",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("p1n1",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("am",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("a1m1",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("an",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("a1n1",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("a2/m",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("a12/m1",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p2/n",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("p12/n1",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p21/n",data->sginfo.spacename,5) == 0 || g_ascii_strncasecmp("p121/n1",data->sginfo.spacename,7) == 0 || g_ascii_strncasecmp("a2/n",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("a12/n1",data->sginfo.spacename,6) == 0 ) { data->sginfo.cellchoice = 2; } else if( g_ascii_strncasecmp("i2",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("i121",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("pa",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("p1a1",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("im",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("i1m1",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("ia",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("i1a1",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("i2/m",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("i12/m1",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p2/a",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("p12/a1",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p21/a",data->sginfo.spacename,5) == 0 || g_ascii_strncasecmp("p121/a1",data->sginfo.spacename,7) == 0 || g_ascii_strncasecmp("i2/a",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("i12/a1",data->sginfo.spacename,6) == 0 ) { data->sginfo.cellchoice = 3; } else data->sginfo.spacename = g_strconcat(data->sginfo.spacename, ":b", NULL); } if(g_ascii_strcasecmp("c_unique", *(buff+i+1)) == 0) { if( data->sginfo.spacenum == 3 || data->sginfo.spacenum == 4 || data->sginfo.spacenum == 6 || data->sginfo.spacenum == 10 || data->sginfo.spacenum == 11 ) { data->sginfo.cellchoice = 2; } /* Options for SG 5,7,8,9,12,13,14,15 */ else if( g_ascii_strncasecmp("a2",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("a112",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("pa",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("p11a",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("am",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("a11m",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("aa",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("a11a",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("a2/m",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("a112/m",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p2/a",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("p112/a",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p21/a",data->sginfo.spacename,5) == 0 || g_ascii_strncasecmp("p1121/a",data->sginfo.spacename,7) == 0 || g_ascii_strncasecmp("a2/a",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("a112/a",data->sginfo.spacename,6) == 0 ) { data->sginfo.cellchoice = 4; } else if( g_ascii_strncasecmp("b2",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("b112",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("pn",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("p11n",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("bm",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("b11m",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("bn",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("b11n",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("b2/m",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("b112/m",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p2/n",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("p112/n",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p21/n",data->sginfo.spacename,5) == 0 || g_ascii_strncasecmp("p1121/n",data->sginfo.spacename,7) == 0 || g_ascii_strncasecmp("b2/n",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("b112/n",data->sginfo.spacename,6) == 0 ) { data->sginfo.cellchoice = 5; } else if( g_ascii_strncasecmp("i2",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("i112",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("pb",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("p11b",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("im",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("i11m",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("ib",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("i11b",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("i2/m",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("i112/m",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p2/b",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("p112/b",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p21/b",data->sginfo.spacename,5) == 0 || g_ascii_strncasecmp("p1121/b",data->sginfo.spacename,7) == 0 || g_ascii_strncasecmp("i2/b",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("i112/b",data->sginfo.spacename,6) == 0 ) { data->sginfo.cellchoice = 6; } else data->sginfo.spacename = g_strconcat(data->sginfo.spacename, ":c", NULL); } if(g_ascii_strcasecmp("a_unique", *(buff+i+1)) == 0) { if( data->sginfo.spacenum == 3 || data->sginfo.spacenum == 4 || data->sginfo.spacenum == 6 || data->sginfo.spacenum == 10 || data->sginfo.spacenum == 11 ) { data->sginfo.cellchoice = 3; } /* Options for SG 5,7,8,9,12,13,14.15 */ else if( g_ascii_strncasecmp("b2",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("b211",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("pb",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("pb11",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("bm",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("bm11",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("bb",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("bb11",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("b2/m",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("b2/m11",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p2/b",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("p2/b11",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p21/c",data->sginfo.spacename,5) == 0 || g_ascii_strncasecmp("p21/c11",data->sginfo.spacename,7) == 0 || g_ascii_strncasecmp("b2/b",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("b2/b11",data->sginfo.spacename,6) == 0 ) { data->sginfo.cellchoice = 7; } else if( g_ascii_strncasecmp("c2",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("c211",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("pn",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("pn11",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("cm",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("cm11",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("cn",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("cn11",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("c2/m",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("c2/m11",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p2/n",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("p2/n11",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p21/n",data->sginfo.spacename,5) == 0 || g_ascii_strncasecmp("p21/n11",data->sginfo.spacename,7) == 0 || g_ascii_strncasecmp("c2/n",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("c2/n11",data->sginfo.spacename,6) == 0 ) { data->sginfo.cellchoice = 8; } else if( g_ascii_strncasecmp("i2",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("i211",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("pc",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("pc11",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("im",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("im11",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("ic",data->sginfo.spacename,2) == 0 || g_ascii_strncasecmp("ic11",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("i2/m",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("i2/m11",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p2/c",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("p2/c11",data->sginfo.spacename,6) == 0 || g_ascii_strncasecmp("p21/c",data->sginfo.spacename,5) == 0 || g_ascii_strncasecmp("p21/c11",data->sginfo.spacename,7) == 0 || g_ascii_strncasecmp("i2/c",data->sginfo.spacename,4) == 0 || g_ascii_strncasecmp("i2/c11",data->sginfo.spacename,6) == 0 ) { data->sginfo.cellchoice = 9; } else data->sginfo.spacename = g_strconcat(data->sginfo.spacename, ":a", NULL); } } } } if( data->sginfo.spacenum == 50 || data->sginfo.spacenum == 59 || data->sginfo.spacenum == 68 ) { /* Set cellchoice to baseline 1 or 2 */ if( data->sginfo.cellchoice % 2 == 1 ) data->sginfo.cellchoice = 1; else data->sginfo.cellchoice = 2; if( g_ascii_strncasecmp(data->sginfo.spacename,"P N C B",7) == 0 || g_ascii_strncasecmp(data->sginfo.spacename,"P N M M",7) == 0 || g_ascii_strncasecmp(data->sginfo.spacename,"C C C B",7) == 0 ) data->sginfo.cellchoice += 2; if( g_ascii_strncasecmp(data->sginfo.spacename,"P C N A",7) == 0 || g_ascii_strncasecmp(data->sginfo.spacename,"P M N M",7) == 0 || g_ascii_strncasecmp(data->sginfo.spacename,"A B A A",7) == 0 ) data->sginfo.cellchoice += 4; if( g_ascii_strncasecmp(data->sginfo.spacename,"A C A A",7) == 0) data->sginfo.cellchoice += 6; if( g_ascii_strncasecmp(data->sginfo.spacename,"B B C B",7) == 0) data->sginfo.cellchoice += 8; if( g_ascii_strncasecmp(data->sginfo.spacename,"B B A B",7) == 0) data->sginfo.cellchoice += 10; } /* pbc search */ if (g_ascii_strncasecmp("cel", *buff, 3) == 0) /* CELL keyword */ { /* use this line if it has more tokens, otherwise get the next */ offset = 1; if (num_tokens == 1) { g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (!buff) return(2); offset = 0; } if (num_tokens > 1) { data->pbc[0] = str_to_float(*(buff+offset)); data->pbc[1] = str_to_float(*(buff+offset+1)); } else printf("Insufficient CELL tokens.\n"); switch(data->periodic) { case 2: if (num_tokens > 2) data->pbc[5] = D2R * str_to_float(*(buff+offset+2)); else printf("Insufficient CELL tokens.\n"); break; case 3: if (num_tokens > 5) { data->pbc[2] = str_to_float(*(buff+offset+2)); data->pbc[3] = D2R * str_to_float(*(buff+offset+3)); data->pbc[4] = D2R * str_to_float(*(buff+offset+4)); data->pbc[5] = D2R * str_to_float(*(buff+offset+5)); } else printf("Insufficient CELL tokens.\n"); break; } } /* coordinate search */ if (g_ascii_strncasecmp("ato", *buff, 3) == 0) /* ATOMS keyword */ { g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); /* Determine order of columns */ for(i=0; ifractional = FALSE; } /* CARY secondary keyword */ if (g_ascii_strncasecmp("cary", *(buff+i), 4) == 0) { column[7] = i; data->fractional = FALSE; } /* CARZ secondary keyword */ if (g_ascii_strncasecmp("carz", *(buff+i), 4) == 0) { column[8] = i; data->fractional = FALSE; } } for (;;) { g_strfreev(buff); buff = get_tokenized_line(fp, &num_columns); if (!buff) break; if (g_ascii_strncasecmp("eof", *buff, 3) == 0) break; /* enough tokens */ /* Use scattering element in lookup, as label not always element symbol */ /* otherwise check if first item is a valid atom type */ /* C. Fisher 2004 */ if (column[4] != -1) { symbol = g_strdup(*(buff+column[4])); if( num_columns > num_tokens) symbol = g_strconcat(symbol, *(buff+column[4]+1), NULL); } else if(column[0] != -1) symbol = g_strdup(*(buff+column[0])); else break; if( num_columns > num_tokens) /* SCATTER factor can exist as two items */ shift=1; /* Shift column by one to allow for extra scatter term */ else shift=0; /* add new atom if first item is a valid atom type */ if (elem_symbol_test(symbol)) { core = new_core(symbol, data); data->cores = g_slist_prepend(data->cores, core); if( data->fractional ) { if( column[1] > column[4] && shift==1 ) core->x[0] = str_to_float(*(buff+column[1]+shift)); else core->x[0] = str_to_float(*(buff+column[1])); if( column[2] > column[4] && shift==1 ) core->x[1] = str_to_float(*(buff+column[2]+shift)); else core->x[1] = str_to_float(*(buff+column[2])); if( column[3] > column[4] && shift==1 ) core->x[2] = str_to_float(*(buff+column[3]+shift)); else core->x[2] = str_to_float(*(buff+column[3])); } else { if( column[6] > column[4] && shift==1 ) core->x[0] = str_to_float(*(buff+column[6]+shift)); else core->x[0] = str_to_float(*(buff+column[6])); if( column[7] > column[4] && shift==1 ) core->x[1] = str_to_float(*(buff+column[7]+shift)); else core->x[1] = str_to_float(*(buff+column[7])); if( column[8] > column[4] && shift==1 ) core->x[2] = str_to_float(*(buff+column[8]+shift)); else core->x[2] = str_to_float(*(buff+column[8])); } if( column[5] != -1) { core->lookup_charge = FALSE; if( column[5] > column[4] && shift==1 ) core->charge = str_to_float(*(buff+column[5]+shift)); else core->charge = str_to_float(*(buff+column[5])); } n++; } } } } /* got everything */ data->num_asym = data->num_atoms = n; #if DEBUG_READ_XTL printf("SGname %s SGnum %d Option %d\n", data->sginfo.spacename, data->sginfo.spacenum, data->sginfo.cellchoice); printf("Found %d atoms.\n", n); #endif /* model setup */ strcpy(data->filename, filename); g_free(data->basename); data->basename = parse_strip(filename); model_prep(data); return(0); } gdis-0.90/gui_dialog.c0000644000175000017500000005540711035034370013304 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include #include #include #ifndef __WIN32 #include #endif #include "gdis.h" #include "file.h" #include "matrix.h" #include "parse.h" #include "gui_shorts.h" #include "interface.h" #include "dialog.h" /* top level data structure */ extern struct sysenv_pak sysenv; extern GtkWidget *window; GSList *dir_list=NULL; GtkListStore *file_path_ts=NULL, *file_name_ts=NULL; GtkWidget *file_path_tv=NULL, *file_name_tv=NULL; GtkWidget *curr_path, *file_name; enum {FILE_PATH, FILE_PATH_NCOLS}; enum {FILE_NAME, FILE_NAME_NCOLS}; /* replacement for dialog_pak */ struct dialog_pak { gint type; gpointer model; gpointer data; GHashTable *children; void (*refresh)(gpointer); void (*cleanup)(gpointer); GtkWidget *window; }; /************************************/ /* callback for destroying a dialog */ /************************************/ void destroy_widget(GtkWidget *w, gpointer target) { if (GTK_IS_WIDGET(target)) gtk_widget_destroy(target); } /*******************************/ /* dialog extraction primitive */ /*******************************/ gpointer dialog_window(gpointer data) { struct dialog_pak *dialog = data; return(dialog->window); } gpointer dialog_model(gpointer data) { struct dialog_pak *dialog = data; return(dialog->model); } /************************************/ /* dialog data extraction primitive */ /************************************/ gpointer dialog_child_get(gpointer data, const gchar *key) { struct dialog_pak *dialog = data; gpointer child = NULL; if (dialog->children) child = g_hash_table_lookup(dialog->children, key); return(child); } /**********************************/ /* dialog data addition primitive */ /**********************************/ /* used for associating a label with a child widget pointer within a dialog */ void dialog_child_set(gpointer data, const gchar *key, gpointer value) { struct dialog_pak *dialog = data; if (!dialog->children) dialog->children = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL); /* use replace, so old g_strdup() key gets freed */ g_hash_table_replace(dialog->children, g_strdup(key), value); } /******************/ /* debugging dump */ /******************/ void dialog_dump(void) { gint i=0; struct dialog_pak *dialog; GSList *list; for (list=sysenv.dialog_list ; list ; list=g_slist_next(list)) { dialog = list->data; printf("[%d] model: %p, type: %d\n", i++, dialog->model, dialog->type); } } /********************************************/ /* cleanup when a dialog has been destroyed */ /********************************************/ #define DEBUG_DIALOG_FREE 0 void dialog_free(GtkWidget *w, gpointer data) { struct dialog_pak *dialog = data; #if DEBUG_DIALOG_FREE printf("freeing dialog : %p...\n", data); #endif if (dialog->cleanup) dialog->cleanup(dialog->model); if (dialog->children) g_hash_table_destroy(dialog->children); sysenv.dialog_list = g_slist_remove(sysenv.dialog_list, dialog); g_free(dialog); } /***************************/ /* dialog destroy callback */ /***************************/ void dialog_destroy(GtkWidget *w, gpointer data) { struct dialog_pak *dialog = data; gtk_widget_destroy(dialog->window); } /***************************/ /* destroy dialogs by type */ /***************************/ void dialog_destroy_type(gint type) { GSList *list; struct dialog_pak *dialog; list = sysenv.dialog_list; while (list) { dialog = list->data; list = g_slist_next(list); if (dialog->type == type) dialog_destroy(NULL, dialog); } } /***********************************************/ /* destroy all dialogs associated with a model */ /***********************************************/ void dialog_destroy_model(struct model_pak *model) { GSList *list; struct dialog_pak *dialog; list = sysenv.dialog_list; while (list) { dialog = list->data; list = g_slist_next(list); if (dialog->model == model) dialog_destroy(NULL, dialog); } } /*******************************************************/ /* destroy a given dialog type associated with a model */ /*******************************************************/ void dialog_destroy_single(gint type, struct model_pak *model) { GSList *list; struct dialog_pak *dialog; list = sysenv.dialog_list; while (list) { dialog = list->data; list = g_slist_next(list); if (dialog->type == type && dialog->model == model) dialog_destroy(NULL, dialog); } } /*****************************/ /* sanity check for a dialog */ /*****************************/ gint dialog_valid(gpointer dialog) { if (g_slist_find(sysenv.dialog_list, dialog)) return(TRUE); return(FALSE); } /********************************************/ /* test if a specific type of dialog exists */ /********************************************/ gint dialog_exists(gint type, struct model_pak *model) { GSList *list; struct dialog_pak *dialog; for (list=sysenv.dialog_list ; list ; list=g_slist_next(list)) { dialog = list->data; if (model) { if (dialog->model == model && dialog->type == type) return(TRUE); } else { if (dialog->type == type) return(TRUE); } } return(FALSE); } /******************************/ /* update all current dialogs */ /******************************/ void dialog_refresh_all(void) { GSList *list; struct dialog_pak *dialog; for (list=sysenv.dialog_list ; list ; list=g_slist_next(list)) { dialog = list->data; if (dialog->refresh) dialog->refresh(dialog); } } /***********************************/ /* update dialog of specified type */ /***********************************/ void dialog_refresh_type(gint type) { GSList *list; struct dialog_pak *dialog; for (list=sysenv.dialog_list ; list ; list=g_slist_next(list)) { dialog = list->data; if (dialog->type == type) if (dialog->refresh) dialog->refresh(dialog); } } /*************************************/ /* update dialogs of specified model */ /*************************************/ void dialog_refresh_model(struct model_pak *model) { GSList *list; struct dialog_pak *dialog; for (list=sysenv.dialog_list ; list ; list=g_slist_next(list)) { dialog = list->data; if (dialog->model == model) if (dialog->refresh) dialog->refresh(dialog); } } /*****************************/ /* dialog creation primitive */ /*****************************/ #define DEBUG_DIALOG_REQUEST 0 gpointer dialog_request(gint type, gchar *title, gpointer refresh, gpointer cleanup, struct model_pak *model) { GSList *list; struct dialog_pak *dialog; #if DEBUG_DIALOG_REQUEST printf("request to open dialog type : %d, model : %p\n", type, model); #endif /* is another of the same type active? */ for (list=sysenv.dialog_list ; list ; list=g_slist_next(list)) { dialog = list->data; /* allow only one instance of these dialogs (eg because of globals) */ switch (type) { case CREATOR: case DOCKING: case GENSURF: case SURF: if (type == dialog->type) { gdk_window_show((dialog->window)->window); return(NULL); } } /* type dependent testing */ if (dialog->type == type && dialog->model == model) { #if DEBUG_DIALOG_REQUEST printf(" - Exists...\n"); #endif /* dialog already open - raise it to the fore & select assoc. model */ gdk_window_show((dialog->window)->window); if (model) gui_model_select(model); return(NULL); } } #if DEBUG_DIALOG_REQUEST printf(" - Creating...\n"); #endif /* dialog setup */ dialog = g_malloc(sizeof(struct dialog_pak)); sysenv.dialog_list = g_slist_prepend(sysenv.dialog_list, dialog); dialog->type = type; dialog->model = model; dialog->data = NULL; dialog->children = NULL; dialog->refresh = refresh; dialog->cleanup = cleanup; /* widget setup */ dialog->window = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(dialog->window), title); g_signal_connect(GTK_OBJECT(dialog->window), "destroy", GTK_SIGNAL_FUNC(dialog_free), (gpointer) dialog); return(dialog); } /******************************/ /* safely acquire tree models */ /******************************/ GtkTreeModel *file_path_treemodel(void) { if (!file_path_tv) return(NULL); if (!GTK_IS_TREE_VIEW(file_path_tv)) return(NULL); return(gtk_tree_view_get_model(GTK_TREE_VIEW(file_path_tv))); } GtkTreeModel *file_name_treemodel(void) { if (!file_name_tv) return(NULL); if (!GTK_IS_TREE_VIEW(file_name_tv)) return(NULL); return(gtk_tree_view_get_model(GTK_TREE_VIEW(file_name_tv))); } /***************************************/ /* update contents of file load widget */ /***************************************/ #define DEBUG_UPDATE_FILE_PANE 0 gint update_file_pane(void) { gint filter; gchar *name, *full; GSList *list; GtkTreeIter iter; struct stat buff; /* NEW */ filter = sysenv.file_type; /* getting from this directory */ gtk_label_set_text(GTK_LABEL(curr_path), sysenv.cwd); /* clear old data */ gtk_list_store_clear(file_path_ts); gtk_list_store_clear(file_name_ts); free_slist(dir_list); /* get directory listing */ /* NB: success will always return something, even if only ".." */ dir_list = file_dir_list(sysenv.cwd, TRUE); if (!dir_list) { gui_text_show(ERROR, "No directory listing; check your permissions.\n"); gtk_list_store_append(file_path_ts, &iter); gtk_list_store_set(file_path_ts, &iter, FILE_PATH, "..", -1); } list = dir_list; while (list) { /* stat the file (MUST have the full path) */ name = (gchar *) list->data; full = g_build_filename(sysenv.cwd, list->data, NULL); stat(full, &buff); #if DEBUG_UPDATE_FILE_PANE printf("[%s] : %d\n",full,buff.st_mode); #endif /* convert and check if directory */ if ((buff.st_mode & S_IFMT) == S_IFDIR) { gtk_list_store_append(file_path_ts, &iter); gtk_list_store_set(file_path_ts, &iter, FILE_PATH, name, -1); } else { /* is it a recognized type? */ if (file_extension_valid(list->data)) { gtk_list_store_append(file_name_ts, &iter); gtk_list_store_set(file_name_ts, &iter, FILE_NAME, name, -1); } #if OLD_GOK /* FIXME: can it be deleted? I haven't changed this code below to handle empty extensions */ file_data = get_file_info((gpointer *) list->data, BY_EXTENSION); if (file_data) { /* display name if matches current file filter */ if (filter == DATA) { /* don't add filetypes with no read/write routines - pictures */ if (file_data->read_file || file_data->write_file) { gtk_list_store_append(file_name_ts, &iter); gtk_list_store_set(file_name_ts, &iter, FILE_NAME, name, -1); } } else { /* add if specifically requested (ie even if not in menu) */ if (filter == file_data->group) { gtk_list_store_append(file_name_ts, &iter); gtk_list_store_set(file_name_ts, &iter, FILE_NAME, name, -1); } } } #endif } list = g_slist_next(list); g_free(full); } return(TRUE); } /*****************************/ /* file type/filter handlers */ /*****************************/ void type_change(GtkWidget *w) { G_CONST_RETURN gchar *tmp; struct file_pak *file_data; tmp = gtk_entry_get_text(GTK_ENTRY(w)); /* update if valid type */ file_data = get_file_info((gpointer *) tmp, BY_LABEL); if (file_data) { sysenv.file_type = file_data->id; update_file_pane(); } } /********************************************/ /* primary event handler for file selection */ /********************************************/ void file_event_handler(GtkWidget *w, gpointer secondary_handler(gchar *, struct model_pak *)) { gchar *name, *fullname; /* get the current name */ /* NB: we strdup, so we don't have to make name a gconst pointer */ name = g_strdup(gtk_entry_get_text(GTK_ENTRY(file_name))); /* attempt to use name to change the path */ fullname = g_build_filename(sysenv.cwd, name, NULL); if (set_path(fullname)) secondary_handler(name, NULL); g_free(fullname); g_free(name); } /********************************/ /* cartesian/fractional toggles */ /********************************/ void toggle_save_type(GtkWidget *w, struct model_pak *data) { data->fractional ^= 1; } /**********************/ /* selection handlers */ /**********************/ static void file_path_activate(GtkTreeView *treeview, GtkTreePath *treepath) { gchar *text, *path; GtkTreeIter iter; GtkTreeModel *treemodel; treemodel = gtk_tree_view_get_model(treeview); gtk_tree_model_get_iter(treemodel, &iter, treepath); gtk_tree_model_get(treemodel, &iter, FILE_PATH, &text, -1); path = g_build_path(DIR_SEP, sysenv.cwd, text, NULL); set_path(path); g_free(text); g_free(path); update_file_pane(); } static void cb_file_name_changed(GtkTreeSelection *selection, gpointer data) { gchar *text; GtkTreeIter iter; GtkTreeModel *treemodel; treemodel = file_name_treemodel(); if (!treemodel) return; if (gtk_tree_selection_get_selected(selection, &treemodel, &iter)) { gtk_tree_model_get(treemodel, &iter, FILE_NAME, &text, -1); gtk_entry_set_text(GTK_ENTRY(file_name), text); g_free(text); } } static void file_name_activate(GtkTreeView *treeview, GtkTreePath *treepath) { gchar *text; GtkTreeIter iter; GtkTreeModel *treemodel; treemodel = gtk_tree_view_get_model(treeview); gtk_tree_model_get_iter(treemodel, &iter, treepath); gtk_tree_model_get(treemodel, &iter, FILE_PATH, &text, -1); file_load(text, NULL); g_free(text); } /*******************/ /* cleanup on exit */ /*******************/ void file_cleanup(void) { /* NB: since the tree store is independant of the model's geom list */ /* it must be completely removed (and then restored) with the dialog */ gtk_list_store_clear(file_path_ts); gtk_list_store_clear(file_name_ts); free_slist(dir_list); /* TODO - free row data (ie FILE_PATH/FILE_NAME strings) */ file_path_tv = NULL; file_path_ts = NULL; file_name_tv = NULL; file_name_ts = NULL; } /*************************************************/ /* customized load widget (with filetype filter) */ /*************************************************/ void file_dialog(gchar *title, gchar *name, gint type, gpointer secondary_handler(gchar *, struct model_pak *), gint filter) { gpointer dialog; GSList *flist; GList *elist; GtkWidget *window, *swin, *hbox, *combo, *label; GtkCellRenderer *renderer; GtkTreeViewColumn *column; GtkTreeSelection *select; struct model_pak *data=NULL; struct file_pak *fdata; /* if save type, check we have a loaded model */ if (secondary_handler == (gpointer) file_save_as) { data = sysenv.active_model; if (!data) return; } /* get a dialog if possible */ dialog = dialog_request(FILE_SELECT, "File dialog", NULL, NULL, NULL); if (!dialog) return; window = dialog_window(dialog); /* make and set up the dialog window */ gtk_window_set_title(GTK_WINDOW(window), title); gtk_window_set_default_size(GTK_WINDOW(window), 600, 400); gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER); gtk_container_set_border_width(GTK_CONTAINER(GTK_BOX(GTK_DIALOG(window)->vbox)),10); /* TOP ROW - cwd printed */ hbox = gtk_hbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox),hbox,FALSE,FALSE,0); label = gtk_label_new("Current path: "); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); curr_path = gtk_label_new("dummy"); gtk_box_pack_start(GTK_BOX(hbox), curr_path, FALSE, FALSE, 0); /* option to save as cartesian or fractional coords */ if (secondary_handler == (gpointer) file_save_as) { g_assert(data != NULL); if (data->periodic) { hbox = gtk_hbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), hbox,FALSE,FALSE,0); new_check_button("Save as cartesian coordinates", toggle_save_type, data, !data->fractional, hbox); } } /* SECOND ROW - sub directory & file listings */ hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), hbox, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(hbox), PANEL_SPACING); /* scrolled model pane */ swin = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW (swin), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_box_pack_start(GTK_BOX(hbox), swin, TRUE, TRUE, 0); /* path treestore/treeview */ file_path_ts = gtk_list_store_new(FILE_PATH_NCOLS, G_TYPE_STRING); file_path_tv = gtk_tree_view_new_with_model(GTK_TREE_MODEL(file_path_ts)); gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(swin), file_path_tv); renderer = gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes("Tree", renderer, "text", FILE_PATH, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(file_path_tv), column); /* NB: use this method instead of selections to handle events */ /* as selections will core dump if the handler clears the store */ g_signal_connect(file_path_tv, "row_activated", G_CALLBACK(file_path_activate), NULL); /* scrolled model pane */ swin = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW (swin), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_box_pack_start(GTK_BOX(hbox), swin, TRUE, TRUE, 0); /* filename treestore/treeview */ file_name_ts = gtk_list_store_new(FILE_NAME_NCOLS, G_TYPE_STRING); file_name_tv = gtk_tree_view_new_with_model(GTK_TREE_MODEL(file_name_ts)); gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(swin), file_name_tv); renderer = gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes("Files", renderer, "text", FILE_NAME, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(file_name_tv), column); /* setup the selection handler */ select = gtk_tree_view_get_selection(GTK_TREE_VIEW(file_name_tv)); gtk_tree_selection_set_mode(select, GTK_SELECTION_BROWSE); /* single click - update entry */ g_signal_connect(G_OBJECT(select), "changed", G_CALLBACK(cb_file_name_changed), NULL); /* double click - automatic load */ if (secondary_handler == (gpointer) file_load) g_signal_connect(file_name_tv, "row_activated", G_CALLBACK(file_name_activate), NULL); /* THIRD ROW - filename currently selected & file extension filter */ hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), hbox, FALSE, FALSE, 0); /* filename */ file_name = gtk_entry_new(); gtk_box_pack_start(GTK_BOX(hbox), file_name, TRUE, TRUE, 0); if (name) gtk_entry_set_text(GTK_ENTRY(file_name), name); gtk_entry_set_editable(GTK_ENTRY(file_name), TRUE); /* hook a event to the load action */ g_signal_connect(GTK_OBJECT(file_name), "activate", GTK_SIGNAL_FUNC(file_event_handler), secondary_handler); /* build the recognized extension list */ elist = NULL; flist = sysenv.file_list; while(flist != NULL) { fdata = flist->data; /* include in menu? */ if (fdata->menu) elist = g_list_append(elist, fdata->label); flist = g_slist_next(flist); } /* combo box for file filter */ combo = gtk_combo_new(); gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(combo)->entry), FALSE); gtk_combo_set_popdown_strings(GTK_COMBO(combo), elist); /* set the currently selected type (BEFORE the changed event is connected) */ fdata = get_file_info(GINT_TO_POINTER(filter), BY_FILE_ID); if (fdata) gtk_entry_set_text(GTK_ENTRY(GTK_COMBO(combo)->entry), fdata->label); gtk_box_pack_start(GTK_BOX (hbox), combo, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT(GTK_COMBO(combo)->entry), "changed", GTK_SIGNAL_FUNC(type_change), NULL); gtk_widget_set_size_request(combo, 6*sysenv.gtk_fontsize, -1); /* terminating buttons */ switch (type) { case FILE_LOAD: gui_stock_button(GTK_STOCK_OPEN, file_event_handler, secondary_handler, GTK_DIALOG(window)->action_area); break; case FILE_SAVE: gui_stock_button(GTK_STOCK_SAVE, file_event_handler, secondary_handler, GTK_DIALOG(window)->action_area); break; } gui_stock_button(GTK_STOCK_CANCEL, dialog_destroy, dialog, GTK_DIALOG(window)->action_area); /* all done */ gtk_widget_show_all(window); sysenv.file_type = filter; update_file_pane(); } /*************************************************/ /* callback to update a widget background colour */ /*************************************************/ void set_colour_widget(GtkWidget *cs, GtkWidget *w) { GdkColor colour; if (GTK_IS_WIDGET(cs)) gtk_color_selection_get_current_color(GTK_COLOR_SELECTION(cs), &colour); if (GTK_IS_WIDGET(w)) gtk_widget_modify_bg(w, GTK_STATE_NORMAL, &colour); } /***************************************/ /* callback to update the colour value */ /***************************************/ void set_colour_value(GtkWidget *cs, gdouble *x) { GdkColor colour; gtk_color_selection_get_current_color(GTK_COLOR_SELECTION(cs), &colour); x[0] = colour.red; x[1] = colour.green; x[2] = colour.blue; VEC3MUL(x, 1.0/65535.0); } /**********************************/ /* create a colour editing dialog */ /**********************************/ void dialog_colour_new(GtkWidget *w, gdouble *colour) { GtkWidget *csd; /* create colour selection dialog */ csd = gtk_color_selection_dialog_new("Edit colour"); /* set the initial colour */ gtk_color_selection_set_color(GTK_COLOR_SELECTION(GTK_COLOR_SELECTION_DIALOG(csd)->colorsel), colour); /* value colour update */ g_signal_connect(GTK_OBJECT(GTK_COLOR_SELECTION_DIALOG(csd)->colorsel), "color_changed", GTK_SIGNAL_FUNC(set_colour_value), (gpointer) colour); /* widget colour update */ if (w) g_signal_connect(GTK_OBJECT(GTK_COLOR_SELECTION_DIALOG(csd)->colorsel), "color_changed", GTK_SIGNAL_FUNC(set_colour_widget), (gpointer) w); g_signal_connect(GTK_OBJECT(GTK_COLOR_SELECTION_DIALOG(csd)->ok_button), "clicked", GTK_SIGNAL_FUNC(destroy_widget), (gpointer) csd); gtk_widget_hide(GTK_COLOR_SELECTION_DIALOG(csd)->cancel_button); gtk_widget_show(csd); /* g_signal_connect(GTK_OBJECT(w), "destroy", GTK_SIGNAL_FUNC(destroy_widget), csd); */ } gdis-0.90/grid.c0000644000175000017500000005261011066571460012131 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #ifndef __WIN32 #include #endif #include "gdis.h" #include "file.h" #include "grid.h" #include "job.h" #include "task.h" #include "parse.h" #include "model.h" #include "grisu_client.h" #include "interface.h" extern struct sysenv_pak sysenv; /* CURRENT - register apps for a GRID destination */ /* NULL -> not on grid */ /* TODO - consider storing structs containing more info */ /* ie site, app details etc - for faster job building */ GHashTable *grid_table=NULL; /* CURRENT - assume credential already uploaded for the time being */ gint grid_authenticated=FALSE; gchar *myproxy_init=NULL; void grid_application_set(const gchar *name, const gchar *value) { #ifdef WITH_GRISU if (grid_table) g_hash_table_replace(grid_table, g_strdup(name), g_strdup(value)); #else return(NULL); #endif } gchar *grid_application_get(const gchar *name) { #ifdef WITH_GRISU if (grid_table) return(g_hash_table_lookup(grid_table, name)); else return(NULL); #else return(NULL); #endif } void grid_application_remove(const gchar *name) { #ifdef WITH_GRISU if (grid_table) g_hash_table_remove(grid_table, name); #else return(NULL); #endif } GList *grid_application_all(void) { #ifdef WITH_GRISU return(g_hash_table_get_keys(grid_table)); #else return(NULL); #endif } GSList *grid_search_by_name(const gchar *name) { #ifdef WITH_GRISU return(grisu_submit_find(name)); #else return(NULL); #endif } /*********************************************/ /* allocate and initialize a grid job object */ /*********************************************/ gpointer grid_new(void) { struct grid_pak *grid; grid = g_malloc(sizeof(struct grid_pak)); grid->user_vo = NULL; grid->jobname = NULL; grid->exename = NULL; grid->exe_version = NULL; grid->jobcode = JOB_UNKNOWN; grid->remote_q = NULL; grid->remote_root = NULL; grid->remote_exe = NULL; grid->remote_exe_module = NULL; grid->remote_site = NULL; grid->remote_exe_type=-1; grid->remote_exe_np=1; grid->local_cwd = NULL; grid->local_input = NULL; grid->local_output = NULL; return(grid); } /**************************/ /* free a grid job object */ /**************************/ void grid_free(gpointer data) { struct grid_pak *grid=data; g_assert(grid != NULL); g_free(grid->user_vo); g_free(grid->jobname); g_free(grid->exename); g_free(grid->exe_version); g_free(grid->remote_q); g_free(grid->remote_root); g_free(grid->remote_exe); g_free(grid->remote_exe_module); g_free(grid->remote_site); g_free(grid->local_cwd); g_free(grid->local_input); g_free(grid->local_output); g_free(grid); } /***************************************/ /* get the DN from an x509 certificate */ /***************************************/ // openssl x509 -noout -in usercert.pem -subject gchar *grid_get_DN(gchar *certificate_fullpath) { gint i, j, status; gchar *cmd, *out, *err, *subject=NULL; GError *error=NULL; cmd = g_strdup_printf("openssl x509 -noout -in %s -subject", certificate_fullpath); /* TODO - get the output */ if (g_spawn_command_line_sync(cmd, &out, &err, &status, &error)) { for (i=0 ; i<8000 ; i++) { if (out[i] == '/') { /* not sure why but plain g_strdup adds a crappy char (null?) */ /* to the string, so scan for the end and use strndup instead */ for (j=i ; j<9000 ; j++) { if (out[j] == '\0') break; } subject = g_strndup(&out[i], j-i-1); break; } } } g_free(cmd); return(subject); } gboolean grid_credential_get() { return(FALSE); } /*******************************************************/ /* set valid auth in case of external means (eg) grisu */ /*******************************************************/ /* TODO - could chuck into sysenv eventually */ void grid_auth_set(gint value) { grid_authenticated=value; } /*********************************************/ /* verify current authentication information */ /*********************************************/ gint grid_auth_check(void) { #ifdef WITH_GRISU GSList *list; /* perform a grisu operation that requires authentication */ /* NB: use anything fast (as long as auth info is in the header) */ //list = grisu_fqans_get(); list = grisu_site_list(); if (list) { g_slist_free(list); grid_authenticated = TRUE; return(TRUE); } #endif grid_authenticated = FALSE; return(FALSE); } /****************************************************/ /* upload a temporary credential to a remote server */ /****************************************************/ /* TODO - if grid_passwd is NULL -> use stdin */ #define DEBUG_GRID_CREDENTIAL_INIT 0 void grid_credential_init(const gchar *grid_password) { #ifdef WITH_GRISU gint inp, out, err; gchar **argv, **envp; const gchar *username, *password, *server, *port; GError *error=NULL; GPid pid; FILE *fpi, *fpo, *fpe; /* TODO - informative user error messages */ if (!grid_password) return; if (grid_authenticated) return; if (!myproxy_init) return; username = grisu_username_get(); password = grisu_password_get(); server = grisu_myproxy_get(); port = grisu_myproxyport_get(); #if DEBUG_GRID_CREDENTIAL_INIT printf("Credential for: "); printf("%s : %s -> %s : %s\n", username, password, server, port); #endif /* FIXME - authentication issues with myproxy/myproxy2 */ /* solution is to point at myproxy2 and set */ /* MYPROXY_SERVER_DN /C=AU/O=APACGrid/OU=VPAC/CN=myproxy2.arcs.org.au */ /* FIXME - need to ensure enviroment has GT_PROXY_MODE set to "old" */ /* unless markus fixes grisu's credential retrieval */ /* build argument vector */ /* FIXME - implement this */ envp = g_malloc(3 * sizeof(gchar *)); *(envp) = g_strdup("GT_PROXYMODE=old"); *(envp+1) = g_strdup("MYPROXY_SERVER_DN=/C=AU/O=APACGrid/OU=VPAC/CN=myproxy2.arcs.org.au"); *(envp+2) = NULL; argv = g_malloc(10 * sizeof(gchar *)); /* NB: need full path to executable */ *(argv) = g_strdup(myproxy_init); *(argv+1) = g_strdup("-l"); *(argv+2) = g_strdup(username); /* small lifetime while we debug */ *(argv+3) = g_strdup("-c"); *(argv+4) = g_strdup("1"); *(argv+5) = g_strdup("-a"); *(argv+6) = g_strdup("-S"); *(argv+7) = g_strdup("-s"); *(argv+8) = g_strdup(server); *(argv+9) = NULL; /* spawn process */ if (g_spawn_async_with_pipes(NULL, argv, NULL, G_SPAWN_DO_NOT_REAP_CHILD, NULL, NULL, &pid, &inp, &out, &err, &error)) { if (pid) { /* parent - wait until child is done */ //printf("parent: waiting for child...\n"); fpi = fdopen(inp, "a"); fpo = fdopen(out, "r"); fpe = fdopen(err, "r"); /* NB: -S will make myproxy prompt for grid passphrase */ /* and then the credential password once only */ /* CURRENT - not sure why this isnt working - it seems */ /* to work if run manually from the command line */ fprintf(fpi, "%s\n", grid_password); fflush(fpi); /* CURRENT - this seems to fix the problem! */ /* obviously a delay is needed while myproxy-init processes the */ /* grid_password to generate a local proxy */ /* the problem is - how to we poll stdout to know when to send the */ /* passphrase ... which is probably better than an arbitrary sleep */ #ifndef WIN32 sleep(5); #endif /* test if process has terminated */ /* note that if it has - child is reaped and we cant call waitpid() again */ #ifndef __WIN32 if (waitpid(pid, NULL, WNOHANG) > 0) { printf("Bad password.\n"); g_spawn_close_pid(pid); grid_authenticated = FALSE; return; } #endif //printf("waitpid 4: %d\n", waitpid(pid, NULL, WEXITED | WNOHANG)); fprintf(fpi, "%s\n", password); fflush(fpi); fclose(fpi); #if DEBUG_GRID_CREDENTIAL_INIT gchar *line; do { line = file_read_line(fpo); printf("FORK, stdout: %s\n", line); g_free(line); } while(line != NULL); do { line = file_read_line(fpe); printf("FORK, stderr : %s\n", line); g_free(line); } while(line != NULL); #endif /* cleanup */ fclose(fpo); fclose(fpe); close(inp); close(out); close(err); #ifndef __WIN32 waitpid(pid, NULL, WEXITED); #endif g_spawn_close_pid(pid); grid_authenticated = TRUE; /* sleep - give the uploaded proxy some time to "stick" to the server */ /* FIXME - better to poll (myproxy-logon?) for the credential */ printf("Uploading Credential, please wait ...\n"); #ifndef WIN32 sleep(5); #endif printf("Done.\n"); } } else { printf("Failed to upload credential, myproxy-init not found or bad connectivity?\n"); } g_strfreev(argv); g_strfreev(envp); #endif return; } /****************************************************/ /* get short text message describing current status */ /****************************************************/ const gchar *grid_get_status() { if (grid_authenticated) return("Authenticated"); else return("Not authenticated"); } /***********************************************************/ /* generate a random alphabetical string of specified size */ /***********************************************************/ gchar *grid_random_alpha(gint length) { gint i; GRand *r; GString *text; r = g_rand_new(); text = g_string_new(NULL); for (i=length ; i-- ; ) { g_string_sprintfa(text, "%c", g_rand_int_range(r, 'a', 'z')); } g_rand_free(r); return(g_string_free(text, FALSE)); } /************************************************************/ /* generate a random alpha-numeric string of specified size */ /************************************************************/ gchar *grid_random_alphanum(gint length) { gint i, decide; GRand *r; GString *text; r = g_rand_new(); text = g_string_new(NULL); /* NB: some systems require an alphabetical character first */ g_string_sprintfa(text, "%c", g_rand_int_range(r, 'a', 'z')); i=1; while (idata; /* skip if no extension */ ext = file_extension_get(name); if (!ext) continue; /* load results file as preference for coords */ if (g_strncasecmp(ext, "res", 3) == 0) input = name; /* only load original input file if no results file found */ if (g_strncasecmp(ext, "gin", 3) == 0) { if (!input) input = name; } /* output file containing energies etc */ if (g_strncasecmp(ext, "go", 2) == 0) output = name; } if (!output) { printf("No GULP output file found. Failed job?\n"); break; } if (!input) { printf("No GULP input file found. Failed authentication?\n"); break; } /* create new model for the results */ model = model_new(); /* read main data from the res file (correct charges etc.) */ read_gulp(input, model); /* graft to the model tree, so subsequent GULP read doesn't replace coords */ /* CURRENT - give the loaded model the same name as the job ... better method? */ if (model->basename) { g_free(model->basename); // model->basename = g_strdup(job_name); // model->basename = g_strdup(input); model->basename = parse_strip(input); } sysenv.active_model = model; tree_model_add(model); /* get the output energy/phonons etc. */ read_gulp_output(output, model); /* FIXME - if the GULP job fails - model_prep() isnt called, and the */ /* model camera isnt initialized => error trap when gdis tries to visualize */ if (!model->camera) { printf("WARNING: GULP calculation has possibly failed.\n"); model_prep(model); } /* TODO - return model - so gui part decides whether to force a select/display or not */ //gui_model_select(model); break; case JOB_GAMESS: printf("processsing GAMESS job ... \n"); for (item=file_list ; item ; item=g_slist_next(item)) { name = item->data; ext = file_extension_get(name); /* skip if no extension */ if (!ext) continue; if (g_strncasecmp(ext, "gmot", 4) == 0) output = name; } if (output) { /* create new model for the results */ model = model_new(); /* read main data from the res file (correct charges etc.) */ read_gms_out(output, model); if (model->basename) { g_free(model->basename); model->basename = g_strdup(job_name); } sysenv.active_model = model; tree_model_add(model); /* FIXME - if the job fails - model_prep() isnt called, and the */ /* model camera isnt initialized => error trap when gdis tries to visualize */ if (!model->camera) { printf("WARNING: GAMESS calculation has possibly failed.\n"); model_prep(model); } /* TODO - return model - so gui part decides whether to force a select/display or not */ //gui_model_select(model); //sysenv.active_model = model; } else { printf("No GAMESS output file found. Failed job?\n"); } break; default: printf("Error, unknown job\n"); return; } #endif } /***************************/ /* download completed jobs */ /***************************/ GSList *grid_download_job(const gchar *name) { #ifdef WITH_GRISU gchar *remote_cwd, *local, *remote; GSList *item, *list, *results=NULL; printf("Getting result files for: %s\n", name); remote_cwd = grisu_job_cwd(name); /* TODO - get job type (GULP etc) from name (eg grisu_job_type()) and filter */ //printf("Working directory = %s\n", cwd); if (remote_cwd) { list = grisu_file_list(remote_cwd); for (item=list ; item ; item=g_slist_next(item)) { gchar *file = item->data; printf("[%s]\n", file); // TODO - strictly - should be the job's local_output destination here */ local = g_build_filename(sysenv.cwd, file, NULL); remote = g_build_filename(remote_cwd, file, NULL); //printf("Transferring [%s] -> [%s]\n", remote, local); /* if download is successful add to results list for post-processing */ if (grisu_file_download(remote, local)) results = g_slist_prepend(results, local); g_free(remote); } g_free(remote_cwd); } return(results); #else return(NULL); #endif } /**********************************/ /* background task job submission */ /**********************************/ void grid_job_start(gpointer data) { #ifdef WITH_GRISU gint alen, rlen; gchar *jobxml, *value, *tmp; gchar *fs_absolute, *fs_relative; gchar *local, *remote; GHashTable *details; GSList *list; struct grid_pak *grid=data; g_assert(grid != NULL); g_assert(grid->exename != NULL); g_assert(grid->remote_q != NULL); grid->jobcode = grisu_job_type(grid->exename); grid->user_vo = g_strdup(grisu_vo_get()); grid->remote_site = grisu_site_name(grid->remote_q); if (!grid->remote_site) { printf("Could not determine submission site.\n"); return; } list = grisu_application_versions(grid->exename, grid->remote_site); if (list) { /* CURRENT - just use the first entry */ if (grid->exe_version) g_free(grid->exe_version); grid->exe_version = g_strdup(list->data); } else { /* strictly, not all programs would require a version */ /* eg gamess does, but gulp doesnt */ printf("Warning: could not determine executable version of [%s] at [%s]\n", grid->exename, grid->remote_site); } details = grisu_application_details(grid->exename, grid->remote_site); if (details) { tmp = g_hash_table_lookup(details, "Executables"); if (!tmp) { printf("Failed to locate executable on remote site.\n"); return; } grid->remote_exe = g_strdup(tmp); tmp = g_hash_table_lookup(details, "Module"); if (tmp) grid->remote_exe_module = g_strdup(tmp); //printf("Requiring module [%s]\n", grid->remote_exe_module); /* CURRENT - prefer serial over parallel */ value = g_hash_table_lookup(details, "ParallelAvail"); if (g_strncasecmp(value, "true", 4) == 0) { grid->remote_exe_type = GRID_MPI; /* CURRENT - hack to force // ie mpi */ grid->remote_exe_np = 2; } /* CURRENT - prefer serial over parallel */ value = g_hash_table_lookup(details, "SerialAvail"); if (g_strncasecmp(value, "true", 4) == 0) { grid->remote_exe_type = GRID_SERIAL; grid->remote_exe_np = 1; } if (grid->remote_exe_type == -1) { printf("Failed to determine serial/parallel invocation method on remote site.\n"); return; } } else { printf("Failed to get application details from MDS.\n"); return; } // ----------------- grid->jobname = grisu_jobname_request(grid->jobcode); if (!grid->jobname) { printf("Failed to create job, not authenticated?\n"); return; } /* calculate mount point */ fs_absolute = grisu_absolute_job_dir(grid->jobname, grid->remote_q, grid->user_vo); if (!fs_absolute) { printf("Failed to locate a valid remote filesystem for VO [%s] at [%s]\n", grid->user_vo, grid->remote_site); return; } fs_relative = grisu_relative_job_dir(grid->jobname); g_assert(fs_relative != NULL); alen = strlen(fs_absolute); rlen = strlen(fs_relative); if (alen > rlen) grid->remote_root = g_strndup(fs_absolute, alen-rlen); else { printf("Bad filesystem returned by grisu.\n"); // cope as best we can grid->remote_root = g_strdup(fs_absolute); } //printf("Remote root: %s\n", grid->remote_root); /* upload stage */ /* TODO - stat the file to ensure it was written */ if (!grid->local_input || !grid->local_cwd) { printf("Error, job input file not correctly written.\n"); return; } /* TODO - could do this earlier as well ... */ switch (grid->jobcode) { case JOB_GAMESS: grid->local_output = parse_extension_set(grid->local_input, "gmot"); break; case JOB_GULP: grid->local_output = parse_extension_set(grid->local_input, "got"); break; } local = g_build_filename(grid->local_cwd, grid->local_input, NULL); remote = g_build_filename(fs_absolute, grid->local_input, NULL); //printf("upload [%s] -> [%s]\n", local, remote); grisu_file_upload(local, remote); g_free(local); g_free(remote); jobxml = grisu_xml_create(grid); //printf(" *** XML:\n%s\n", jobxml); grisu_job_configure(grid->jobname, jobxml); grisu_job_submit(grid->jobname, grid->user_vo); g_free(fs_absolute); g_free(fs_relative); g_free(jobxml); #endif } /*******************/ /* completion task */ /*******************/ void grid_job_stop(gpointer data) { struct grid_pak *grid=data; /* TODO - free the grid structre */ grid_free(grid); #ifdef WITH_GUI grid_task_stop(); #endif /* refresh all jobs */ /* FIXME - too expensive to keep doing all the time */ /* FIXME - do this at start (eg when connecting ... and only add/del subsequently) */ //gui_job_refresh_all(); } /*******************************************************/ /* submit a grid job (potentially from setup a dialog) */ /*******************************************************/ /* name = application name (eg "gulp") */ gint grid_job_submit(const gchar *name, gpointer data) { #ifdef WITH_GRISU gchar *remote_q; struct grid_pak *grid=data; /* checks */ g_assert(grid != NULL); /* test we have a valid grid destination */ remote_q = grid_application_get(name); if (!remote_q) { printf("No valid destination queue registered for: %s\n", name); return(FALSE); } #ifdef WITH_GUI if (!grid_task_start()) return(FALSE); #endif grid->exename = g_strdup(name); grid->remote_q = g_strdup(remote_q); /* submit and lock model */ task_new("grid", grid_job_start, grid, grid_job_stop, grid, NULL); return(TRUE); #else printf("No grid support installed.\n"); return(FALSE); #endif } gdis-0.90/zone.c0000644000175000017500000004174510600706736012165 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #ifdef __APPLE__ #include #else #include #endif #include "gdis.h" #include "coords.h" #include "interface.h" #include "gui_shorts.h" #include "matrix.h" #include "spatial.h" #include "numeric.h" #include "morph.h" #include "opengl.h" #include "select.h" #include "zone.h" /* data structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /***********************************/ /* spatial partitioning structures */ /***********************************/ /* zone data */ struct zone_pak { gboolean visible; gint grid[3]; GSList *cores; GSList *shells; }; /* zone array */ struct zone_array_pak { gdouble min[3]; /* min coord */ gdouble max[3]; /* max coord */ gdouble idx[3]; /* inverse dx - so can mult (not divide) to get index */ gint div[3]; /* divisions */ gint periodic; /* follows model periodicity */ gint size; /* num zones */ struct zone_pak **zone; }; /********************************/ /* free space partitioning data */ /********************************/ void zone_free(gpointer data) { gint i; struct zone_pak *zone; struct zone_array_pak *za=data; if (!za) return; /* free zone array core lists */ for (i=za->size ; i-- ; ) { zone = za->zone[i]; g_slist_free(zone->cores); g_slist_free(zone->shells); g_free(zone); } /* free the zone array */ g_free(za->zone); g_free(za); } /**********************************/ /* construct a space partitioning */ /**********************************/ /* after this distance - connectivity is no longer considered (worst case) */ #define DEBUG_ZONE_MAKE 0 gpointer zone_make(gdouble zone_size, struct model_pak *model) { gint i, j, k, zi, num_zones; gint div[3]; gdouble tmp, dx[3], min[3], max[3]; GSList *list; struct core_pak *core; struct shel_pak *shel; struct zone_pak *zone; struct zone_array_pak *za; g_assert(model != NULL); #if DEBUG_ZONE_MAKE printf("zone_make(%s) [%d D]\n", model->filename, model->periodic); #endif za = g_malloc(sizeof(struct zone_array_pak)); /* FIXME - will there be a problem for periodic models */ /* if atoms are not constrained ie in the range [0-1) */ /* TODO - allow zones "outside" pbc, but when comparing -> clamp to within */ /* get the (possibly mixed) frac/cart coord limits */ VEC3SET(min, 0.0, 0.0, 0.0); VEC3SET(max, 0.0, 0.0, 0.0); cor_calc_xlimits(min, max, model->cores); /* set number of divisions - CARTESIAN PART ONLY */ for (i=model->periodic ; i<3 ; i++) { /* safety margin */ max[i] += 0.1; min[i] -= 0.1; tmp = dx[i] = max[i] - min[i]; tmp /= zone_size; div[i] = nearest_int(tmp); } /* set number of divisions - FRACTIONAL PART ONLY */ for (i=model->periodic ; i-- ; ) { min[i] = 0.0; max[i] = 1.0-G_MINDOUBLE; dx[i] = 1.0-G_MINDOUBLE; tmp = model->pbc[i] / zone_size; div[i] = nearest_int(tmp); } /* division sizes */ for (i=3; i--; ) { if (!div[i]) div[i] = 1; dx[i] /= (gdouble) div[i]; } /* TODO - if periodic - extend zone by 1 in all directions (unfragment) */ /* ie div +=2 , min -= dx, max += dx */ /* TODO - OR (better) if we can just constrain to get the equivalent existing zone */ ARR3SET(za->min, min); ARR3SET(za->max, max); ARR3SET(za->div, div); for (i=3 ; i-- ; ) za->idx[i] = 1.0/dx[i]; za->periodic = model->periodic; num_zones = div[0] * div[1] * div[2]; za->size = num_zones; #if DEBUG_ZONE_MAKE for (i=0 ; i<3 ; i++) printf("[%d] : %11.4f - %11.4f (div = %d)(dx=%f)(idx = %f)\n", i, za->min[i], za->max[i], za->div[i], dx[i], za->idx[i]); printf("Allocating %dx%dx%d = %d zones...\n", div[0], div[1], div[2], num_zones); #endif za->zone = g_malloc(num_zones * sizeof(struct zone_pak *)); #if DEBUG_ZONE_MAKE printf("Initializing zone array: %p, size : %d\n", za, num_zones); #endif for (k=0 ; kzone[zi] = g_malloc(sizeof(struct zone_pak)); zone = za->zone[zi]; zone->cores = NULL; zone->shells = NULL; VEC3SET(zone->grid, i, j, k); zone->visible = TRUE; } } } /* TODO - check if no zonal division is required */ /* NB: only for isolated molecules, as periodic will */ /* always have zones to make unfragmenting easier */ #if DEBUG_ZONE_MAKE printf("Partioning %d cores, %d shells...\n", g_slist_length(model->cores), g_slist_length(model->shels)); #endif /* core assignment loop */ for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; /* zone index */ zi = zone_index(core->x, za); zone = za->zone[zi]; zone->cores = g_slist_prepend(zone->cores, core); /* DEBUG - use region colouring to show zones */ /* core->region = zi; */ } /* shell assignment loop */ for (list=model->shels ; list ; list=g_slist_next(list)) { shel = list->data; /* zone index */ zi = zone_index(shel->x, za); if (zi < 0 || zi >= za->size) { zi = 0; } /* add to the list */ zone = za->zone[zi]; zone->shells = g_slist_prepend(zone->shells, shel); /* DEBUG - use region colouring to show zones */ /* core->region = zi; */ } #if DEBUG_ZONE_MAKE for (i=0 ; izone[i]; j = g_slist_length(zone->cores); k = g_slist_length(zone->shells); if (j || k) printf("zone %d (%p) [%d %d %d] : %d cores, %d shells.\n", i, zone, zone->grid[0], zone->grid[1], zone->grid[2], j, k); } #endif return(za); } /*********************************************/ /* initialize space partitioning for a model */ /*********************************************/ void zone_init(struct model_pak *model) { zone_free(model->zone_array); model->zone_array = zone_make(4.0, model); } /******************/ /* zone debugging */ /******************/ void zone_info(gpointer data) { gint i, j, k; struct zone_pak *zone; struct zone_array_pak *za = data; g_assert(za != NULL); printf("zone_info() : %p\n", za); for (i=0 ; i<3 ; i++) printf("[%d] : %11.4f - %11.4f (%f)(%d)\n", i, za->min[i], za->max[i], za->idx[i], za->div[i]); for (i=0 ; isize ; i++) { zone = za->zone[i]; j = g_slist_length(zone->cores); k = g_slist_length(zone->shells); if (j || k) printf("zone %d: %d cores, %d shells, visible = %d\n", i, j, k, zone->visible); } } /**************************************/ /* get the zone index of the position */ /**************************************/ /* FIXME - if out of bounds -> need a re-zone & then return the index as well */ #define DEBUG_ZONE_INDEX 0 gint zone_index(gdouble *position, gpointer data) { gint i, zi, grid[3]; gdouble x[3]; struct zone_array_pak *za=data; g_assert(za != NULL); /* pbc constrain */ ARR3SET(x, position); #if DEBUG_ZONE_INDEX printf("x1: %.20f %.20f %.20f\n", x[0], x[1], x[2]); #endif /* NB: grid is just used as a dummy variable here */ fractional_clamp(x, grid, za->periodic); #if DEBUG_ZONE_INDEX printf("x2: %.20f %.20f %.20f\n", x[0], x[1], x[2]); #endif /* get the grid index */ for (i=0 ; i<3 ; i++) grid[i] = (x[i]-za->min[i]) * za->idx[i]; /* clamp to enforce bounds */ for (i=3 ; i-- ; ) grid[i] = CLAMP(grid[i], 0, za->div[i]-1); #if DEBUG_ZONE_INDEX printf(" g: %d %d %d\n", grid[0], grid[1], grid[2]); #endif /* get the zone index */ zi = grid[2]*za->div[1]*za->div[0]; zi += grid[1]*za->div[0]; zi += grid[0]; return(zi); } /*****************************************/ /* get the zone at the supplied position */ /*****************************************/ gpointer zone_get(gdouble *x, gpointer data) { gint zi; struct zone_array_pak *za=data; g_assert(za != NULL); zi = zone_index(x, za); return(za->zone[zi]); } /*********************/ /* extract zone data */ /*********************/ GSList *zone_cores(gpointer data) { struct zone_pak *zone = data; g_assert(zone != NULL); return(zone->cores); } /*********************/ /* extract zone data */ /*********************/ GSList *zone_shells(gpointer data) { struct zone_pak *zone=data; g_assert(zone != NULL); return(zone->shells); } /**********************************************/ /* construct core list from surrounding zones */ /**********************************************/ #define DEBUG_ZONE_AREA_CORES 0 GSList *zone_area_cores(gint buffer, gpointer data1, gpointer data2) { guint i; gint a, b, c, zi; gint g[3], start[3], stop[3]; GSList *list; struct zone_pak *zone=data1, *buffer_zone; struct zone_array_pak *za=data2; g_assert(buffer >= 0); g_assert(zone != NULL); g_assert(za != NULL); #if DEBUG_ZONE_AREA_CORES printf("zone_area_cores(%p)\n", zone); printf("[%2d %2d %2d]\n", zone->grid[0], zone->grid[1], zone->grid[2]); #endif /* setup scan limits */ ARR3SET(start, zone->grid); ARR3SET(stop, zone->grid); /* add buffering zones around the edge */ VEC3SUB(start, buffer, buffer, buffer); VEC3ADD(stop, buffer, buffer, buffer); /* eliminate non-periodic parts that exceed the boundary */ for (i=za->periodic ; i<3 ; i++) { start[i] = CLAMP(start[i], 0, za->div[i]-1); stop[i] = CLAMP(stop[i], 0, za->div[i]-1); } /* eliminate (redundant) periodic parts that exceed width */ for (i=0 ; iperiodic ; i++) { if ((stop[i] - start[i]) > za->div[i]-1) { start[i] = CLAMP(start[i], 0, za->div[i]-1); stop[i] = CLAMP(stop[i], 0, za->div[i]-1); } } #if DEBUG_ZONE_AREA_CORES printf("start: %d %d %d\n", start[0], start[1], start[2]); printf(" stop: %d %d %d\n", stop[0], stop[1], stop[2]); #endif g_assert(stop[0] < 1000); g_assert(stop[1] < 1000); g_assert(stop[2] < 1000); g_assert(start[0] > -1000); g_assert(start[1] > -1000); g_assert(start[2] > -1000); /* zone sweep */ list=NULL; for (c=start[2] ; c<=stop[2] ; c++) { for (b=start[1] ; b<=stop[1] ; b++) { for (a=start[0] ; a<=stop[0] ; a++) { /* constrain zone indexed */ VEC3SET(g, a, b, c); for (i=3 ; i-- ; ) while (g[i] < 0) g[i] += za->div[i]; for (i=3 ; i-- ; ) while (g[i] >= za->div[i]) g[i] -= za->div[i]; /* convert to a valid zone index */ zi = g[2]*za->div[1]*za->div[0]; zi += g[1]*za->div[0]; zi += g[0]; #if DEBUG_ZONE_AREA_CORES printf(" > [%2d %2d %2d] : zone = %d ", g[0], g[1], g[2], zi); #endif g_assert(zi >= 0); g_assert(zi < za->size); /* loop over cores in the corresponding zone */ buffer_zone = za->zone[zi]; g_assert(buffer_zone != NULL); /* NB: only add if core clist is non-NULL */ if (buffer_zone->cores) list = g_slist_concat(list, g_slist_copy(buffer_zone->cores)); #if DEBUG_ZONE_AREA_CORES printf("(adding cores: %d)\n", g_slist_length(buffer_zone->cores)); #endif } } } return(list); } /***************************************/ /* convert grid coords to world coords */ /***************************************/ void zone_coords_get(gdouble *x, gint a, gint b, gint c, struct zone_array_pak *za) { gint i; x[0] = (gdouble) a; x[1] = (gdouble) b; x[2] = (gdouble) c; for (i=3 ; i-- ; ) { x[i] /= za->idx[i]; x[i] += za->min[i]; } } /********************************/ /* checks if a point is visible */ /********************************/ gint zone_vertex_visible(gdouble *x) { /* FIXME */ /* gl_get_window_coords(x, p); if (p[0] < 0 || p[0] > sysenv.width) return(FALSE); if (p[1] < 0 || p[1] > sysenv.height) return(FALSE); */ return(TRUE); } /*******************************/ /* zone based visibility check */ /*******************************/ void zone_visible_init(struct model_pak *model) { gint i, n, flag, g[3]; gdouble x[4]; GSList *list; struct core_pak *core; struct zone_pak *zone; struct zone_array_pak *za; /* CURRENT - experimental */ /* probably far too slow to be useful, maybe a better approach would */ /* be to evaluate the viewing volume & loop over all atoms & hide/unhide */ g_assert(model != NULL); za = model->zone_array; g_assert(za != NULL); n = 0; x[3] = 1.0; /* TODO - rewrite so zone vertex visibility is evaluated only once */ for (i=za->size ; i-- ; ) { zone = za->zone[i]; zone->visible = TRUE; if (zone->cores) { ARR3SET(g, zone->grid); flag = 0; /* get cube vertices */ zone_coords_get(x, g[0], g[1], g[2], za); vec4mat(model->display_lattice, x); if (zone_vertex_visible(x)) continue; zone_coords_get(x, g[0]+1, g[1], g[2], za); vec4mat(model->display_lattice, x); if (zone_vertex_visible(x)) continue; zone_coords_get(x, g[0]+1, g[1]+1, g[2], za); vec4mat(model->display_lattice, x); if (zone_vertex_visible(x)) continue; zone_coords_get(x, g[0], g[1]+1, g[2], za); vec4mat(model->display_lattice, x); if (zone_vertex_visible(x)) continue; zone_coords_get(x, g[0], g[1], g[2]+1, za); vec4mat(model->display_lattice, x); if (zone_vertex_visible(x)) continue; zone_coords_get(x, g[0]+1, g[1], g[2]+1, za); vec4mat(model->display_lattice, x); if (zone_vertex_visible(x)) continue; zone_coords_get(x, g[0]+1, g[1]+1, g[2]+1, za); vec4mat(model->display_lattice, x); if (zone_vertex_visible(x)) continue; zone_coords_get(x, g[0], g[1]+1, g[2]+1, za); vec4mat(model->display_lattice, x); if (zone_vertex_visible(x)) continue; zone->visible = FALSE; n++; /* printf("zone: %p [%d %d %d] is not visible.\n", zone, g[0], g[1], g[2]); */ } } /* flag off screen cores as hidden (ie don't bother sending to the renderer) */ for (i=za->size ; i-- ; ) { zone = za->zone[i]; if (zone->visible) { for (list=zone->cores ; list ; list=g_slist_next(list)) { core = list->data; core->status &= ~HIDDEN; } } else { for (list=zone->cores ; list ; list=g_slist_next(list)) { core = list->data; core->status |= HIDDEN; } } } /* if (n) printf("Off-screen zones found: %d\n", n); zone_info(za); */ } /***********************************/ /* create quads for occupied zones */ /***********************************/ /* TODO - only if visible (ie on surface) */ void zone_display_init(gpointer data, struct model_pak *model) { gint i, g[3]; gpointer spatial; gdouble x1[3], x2[3], x3[3], x4[3], x5[3], x6[3], x7[3], x8[3]; gdouble n[3], c1[3], c2[3], c3[3]; struct zone_pak *zone; struct zone_array_pak *za = data; g_assert(model != NULL); g_assert(za != NULL); spatial = spatial_new("zones", SPATIAL_GENERIC, 4, TRUE, model); VEC3SET(c1, 1.0, 0.0, 0.0); VEC3SET(c2, 0.0, 1.0, 0.0); VEC3SET(c3, 0.0, 0.0, 1.0); for (i=za->size ; i-- ; ) { zone = za->zone[i]; if (zone->cores) { ARR3SET(g, zone->grid); /* get cube vertices */ zone_coords_get(x1, g[0], g[1], g[2], za); zone_coords_get(x2, g[0]+1, g[1], g[2], za); zone_coords_get(x3, g[0]+1, g[1]+1, g[2], za); zone_coords_get(x4, g[0], g[1]+1, g[2], za); zone_coords_get(x5, g[0], g[1], g[2]+1, za); zone_coords_get(x6, g[0]+1, g[1], g[2]+1, za); zone_coords_get(x7, g[0]+1, g[1]+1, g[2]+1, za); zone_coords_get(x8, g[0], g[1]+1, g[2]+1, za); /* FIXME normals (vertex orders probably) seem screwed up */ /* face 1234 */ VEC3SET(n, 0.0, 0.0, -1.0); spatial_vnorm_add(x1, n, c1, spatial); spatial_vnorm_add(x2, n, c1, spatial); spatial_vnorm_add(x3, n, c1, spatial); spatial_vnorm_add(x4, n, c1, spatial); /* face 5678 */ VEC3SET(n, 0.0, 0.0, 1.0); spatial_vnorm_add(x5, n, c1, spatial); spatial_vnorm_add(x6, n, c1, spatial); spatial_vnorm_add(x7, n, c1, spatial); spatial_vnorm_add(x8, n, c1, spatial); /* face 4378 */ VEC3SET(n, 0.0, 1.0, 0.0); spatial_vnorm_add(x4, n, c2, spatial); spatial_vnorm_add(x3, n, c2, spatial); spatial_vnorm_add(x7, n, c2, spatial); spatial_vnorm_add(x8, n, c2, spatial); /* face 1265 */ VEC3SET(n, 0.0, -1.0, 0.0); spatial_vnorm_add(x1, n, c2, spatial); spatial_vnorm_add(x2, n, c2, spatial); spatial_vnorm_add(x6, n, c2, spatial); spatial_vnorm_add(x5, n, c2, spatial); /* face 4158 */ VEC3SET(n, -1.0, 0.0, 0.0); spatial_vnorm_add(x4, n, c3, spatial); spatial_vnorm_add(x1, n, c3, spatial); spatial_vnorm_add(x5, n, c3, spatial); spatial_vnorm_add(x8, n, c3, spatial); /* face 2376 */ VEC3SET(n, 1.0, 0.0, 0.0); spatial_vnorm_add(x2, n, c3, spatial); spatial_vnorm_add(x3, n, c3, spatial); spatial_vnorm_add(x7, n, c3, spatial); spatial_vnorm_add(x6, n, c3, spatial); } } } gdis-0.90/go.xpm0000644000175000017500000000055610027776525012202 0ustar seansean/* XPM */ static char * go_xpm[] = { "17 13 3 1", " c None", ". c #3E3E34", "+ c #FFFFFF", " ....... ", " .+++++++. ", " .+++++++++. ", " .+++++++++++.", " .+++++++++++.", " .+++++++++++.", " .+++++++++++.", " .+++++++++++.", " .+++++++++++.", " .+++++++++++.", " .+++++++++. ", " .+++++++. ", " ....... "}; gdis-0.90/GPL.txt0000644000175000017500000004312707717054726012237 0ustar seansean GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. gdis-0.90/gui_diffract.c0000644000175000017500000005561410600706735013637 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include "gdis.h" #include "coords.h" #include "file.h" #include "graph.h" #include "parse.h" #include "sginfo.h" #include "matrix.h" #include "surface.h" #include "spatial.h" #include "task.h" #include "numeric.h" #include "interface.h" #include "dialog.h" #include "gui_shorts.h" #include "opengl.h" /* main pak structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; #define FWHM_GAUSSIAN 0.4246609 /* MEH = m*e*e/2*h*h */ #define MEH 0.026629795 GtkWidget *diff_rad_type, *diff_rad_length; GtkWidget *diff_broadening; GtkWidget *diff_filename, *diff_plot; enum {DIFF_XRAY, DIFF_NEUTRON, DIFF_ELECTRON, DIFF_GAUSSIAN, DIFF_LORENTZIAN, DIFF_PSEUDO_VOIGT}; gint diff_all_frames = TRUE; extern gint gl_fontsize; /*****************************/ /* eliminate repeated planes */ /*****************************/ /* NB: assumes the input plane list is Dhkl sorted */ GSList *diff_get_unique_faces(GSList *list, struct model_pak *model) { gdouble delta, dhkl; GSList *list1; struct plane_pak *plane=NULL, *refplane=NULL; dhkl = 999999999.9; list1=list; while (list1) { plane = list1->data; list1 = g_slist_next(list1); /* determine if this is a repeated plane */ delta = dhkl - plane->dhkl; if (delta > FRACTION_TOLERANCE) { /* printf("(%d %d %d) ", plane->index[0], plane->index[1], plane->index[2]); ret_list = g_slist_prepend(ret_list, plane); */ /* this is a new plane */ refplane = plane; dhkl = refplane->dhkl; refplane->multiplicity = 1; } else { /* related plane */ list = g_slist_remove(list, plane); g_free(plane); /* printf("(%d %d %d) ", plane->index[0], plane->index[1], plane->index[2]); */ refplane->multiplicity++; } } return(list); } /**************************/ /* hkl enumeration (exp.) */ /**************************/ /* TODO - merge common functionality with get_ranked_faces() in surface.c */ #define DEBUG_DIFF_RANK 0 GSList *diff_get_ranked_faces(gdouble min, struct model_pak *model) { gint h, k, l, hs, ks, ls; gdouble f1[3]; GSList *list1; struct plane_pak *plane; /* FIXME - should we have a Dhkl cutoff instead of a HKL limit?*/ #define HKL_LIMIT 19 /* enumerate all unique hkl within defined limit */ #if DEBUG_DIFF_RANK printf("trying:\n"); #endif list1 = NULL; for (hs=-1 ; hs<2 ; hs+= 2) { /* start at 0 for -ve and at 1 for +ve */ for (h=(hs+1)/2 ; hdhkl > min) list1 = g_slist_prepend(list1, plane); else break; } } } } } } /* sort via Dhkl */ list1 = g_slist_sort(list1, (gpointer) dhkl_compare); /* remove faces with same Dhkl (NB: assumes they are sorted!) */ list1 = diff_get_unique_faces(list1, model); return(list1); } /************************************/ /* compute atomic scattering factor */ /************************************/ /* FIXME - gain speed by prefeching for unique_atom_list */ gdouble diff_get_sfc(gint type, gdouble sol, struct core_pak *core) { gint i; gboolean flag; gdouble a, b, sfc, sol2; GSList *list; /* FIXME - CU will not match Cu in hash table lookup */ list = g_hash_table_lookup(sysenv.sfc_table, elements[core->atom_code].symbol); if (!list) { printf("No sfc found for [%s], fudging...\n", core->atom_label); return((gdouble) core->atom_code); } /* eforce list length */ g_assert(g_slist_length(list) > 8); flag = FALSE; switch (type) { case DIFF_ELECTRON: flag = TRUE; case DIFF_XRAY: /* wave form factor */ sfc = *((gdouble *) g_slist_nth_data(list, 8)); sol2 = sol*sol; for (i=0 ; i<4 ; i++) { a = *((gdouble *) g_slist_nth_data(list, 2*i)); b = *((gdouble *) g_slist_nth_data(list, 2*i+1)); sfc += a*exp(-b*sol2); } /* electron correction */ if (flag) sfc = MEH * ((gdouble) core->atom_code - sfc) / sol2; break; case DIFF_NEUTRON: sfc = *((gdouble *) g_slist_nth_data(list, 9)); break; default: printf("Unsupported radiation type, fudging...\n"); sfc = core->atom_code; break; } /* printf("[%s] %d : %f\n", core->label, core->atom_code, sfc); */ return(sfc); } /******************************/ /* diffraction output routine */ /******************************/ #define DEBUG_CALC_SPECTRUM 0 void diff_calc_spectrum(GSList *list, struct model_pak *model) { gint i, n; gint cur_peak, old_peak; gdouble angle, sol, f, g, lpf, dr; gdouble c1, sqrt_c1, sqrt_pi, sina, cosa, sin2a, cos2a, tana, fwhm, bf, intensity; gdouble *spectrum; gpointer graph; GSList *item; struct plane_pak *plane; FILE *fp; /* constant initialization */ c1 = 4.0*log(2.0); sqrt_c1 = sqrt(c1); sqrt_pi = sqrt(PI); /* initialize the output spectrum */ n = 1 + (model->diffract.theta[1] - model->diffract.theta[0])/model->diffract.theta[2]; spectrum = g_malloc(n * sizeof(gdouble)); for (i=0 ; idata; /* structure factor squared */ f = plane->f[0]*plane->f[0] + plane->f[1]*plane->f[1]; /* compute peak position and broadening parameters */ sol = 0.5/plane->dhkl; sina = sol * model->diffract.wavelength; angle = asin(sina); cosa = cos(angle); angle *= 2.0; cos2a = 1 - 2.0*sina*sina; sin2a = 2.0*sina*cosa; tana = sina/cosa; fwhm = sqrt(model->diffract.w + model->diffract.v*tana + model->diffract.u*tana*tana); /* lorentz polarization factor for powder (unpolarized incident beam) */ /* TODO - include polarization factor (default 0.5) */ if (model->diffract.radiation == DIFF_XRAY) lpf = 0.5*(1.0 + cos2a*cos2a); else lpf = 1.0; lpf /= (sina * sin2a); /* determine if the current peak lies on the same bin as the previous peak - this */ /* is the peak overlap problem (ie adding intensities over-emphasizes such peaks) */ dr = (R2D*angle - model->diffract.theta[0]) / model->diffract.theta[2]; /* cur_peak = (gint) dr; */ cur_peak = nearest_int(dr); old_peak = cur_peak; /* fill out the spectrum with the current peak */ for (i=0 ; idiffract.theta[2] * (gdouble) i) - model->diffract.theta[0]; */ /* quantized distance to peak */ dr = (gdouble) (i - cur_peak); dr *= model->diffract.theta[2]; /* compute broadening factor - peak contribution at current spectrum interval */ bf = 1.0 / model->diffract.theta[2]; if (fabs(fwhm) > 0.00001) { switch (model->diffract.broadening) { case DIFF_GAUSSIAN: bf = sqrt_c1*exp(-c1*dr*dr/(fwhm*fwhm))/(fwhm*sqrt_pi); break; case DIFF_LORENTZIAN: bf = fwhm/(2.0*PI*(dr*dr + 0.25*fwhm*fwhm)); break; case DIFF_PSEUDO_VOIGT: g = model->diffract.asym; bf = g * 2.0 / (fwhm * PI * (1.0 + 4.0*(dr*dr/(fwhm*fwhm)))); bf += (1-g) * sqrt_c1 * exp(-c1*dr*dr/(fwhm*fwhm)) / (fwhm*PI); break; default: g_assert_not_reached(); } } else { /* no contribution from peaks with zero FWHM outside their spectrum interval */ if (cur_peak != i) bf = 0.0; } /* compute intensity for the current bin */ intensity = plane->multiplicity*lpf*f*bf; spectrum[i] += intensity; } #if DEBUG_CALC_SPECTRUM printf("[%2d %2d %2d] : %2d : %6.4f : %6.3f : %6.3f : %11.4f : %11.4f\n", plane->index[0], plane->index[1], plane->index[2], plane->multiplicity, plane->dhkl, R2D*angle, lpf, sqrt(f), plane->multiplicity*lpf*f); #endif } /* create the plots */ if (model->animation && diff_all_frames) { /* printf("TODO - multiframe animation plotting.\n"); */ } else { /* try to make the 2theta scale nice */ i = model->diffract.theta[1] - model->diffract.theta[0]; if (i > 49) i /= 10; else if (i > 9) i /= 5; i++; /* create a new graph */ switch (model->diffract.radiation) { case DIFF_ELECTRON: graph = graph_new("Electron", model); break; case DIFF_NEUTRON: graph = graph_new("Neutron", model); break; default: graph = graph_new("X-Ray", model); } graph_add_data(n, spectrum, model->diffract.theta[0], model->diffract.theta[1], graph); graph_set_yticks(FALSE, 2, graph); graph_set_xticks(TRUE, i, graph); graph_set_wavelength(model->diffract.wavelength, graph); /* NEW - clear any other special objects displayed */ model->picture_active = NULL; /* display the new graph */ tree_model_refresh(model); } /* save the spectrum */ fp = fopen(gtk_entry_get_text(GTK_ENTRY(diff_filename)), "at"); if (!fp) { gui_text_show(ERROR, "Failed to open file for raw spectrum data.\n"); return; } for (i=0 ; idiffract.theta[0]+i*model->diffract.theta[2], spectrum[i]); fclose(fp); /* cleanup */ g_free(spectrum); redraw_canvas(SINGLE); } /****************************/ /* main diffraction routine */ /****************************/ #define DEBUG_DIFF_CALC 0 gint diff_calc(void) { gdouble dhkl_min, tmp, sfc, sol; gdouble vec[3], rdv[3]; const gchar *text; GSList *item, *list, *clist; struct model_pak *model; struct plane_pak *plane; struct core_pak *core; model = sysenv.active_model; if (!model) return(1); if (model->periodic != 3) { gui_text_show(WARNING, "Your model is not 3D periodic.\n"); return(1); } /* checks */ if (model->diffract.theta[0] >= model->diffract.theta[1]) { gui_text_show(ERROR, "Invalid 2theta range.\n"); return(2); } text = gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(diff_rad_type)->entry)); if (g_ascii_strncasecmp(text, "Electron", 8) == 0) model->diffract.radiation = DIFF_ELECTRON; if (g_ascii_strncasecmp(text, "Neutron", 7) == 0) model->diffract.radiation = DIFF_NEUTRON; if (g_ascii_strncasecmp(text, "X-Ray", 5) == 0) model->diffract.radiation = DIFF_XRAY; /* TODO - use str_is_float() to test first? */ text = gtk_entry_get_text(GTK_ENTRY(diff_rad_length)); model->diffract.wavelength = fabs(str_to_float(text)); text = gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(diff_broadening)->entry)); if (g_ascii_strncasecmp(text, "Gaussian", 8) == 0) model->diffract.broadening = DIFF_GAUSSIAN; if (g_ascii_strncasecmp(text, "Lorentzian", 10) == 0) model->diffract.broadening = DIFF_LORENTZIAN; if (g_ascii_strncasecmp(text, "Pseudo-Voigt", 13) == 0) model->diffract.broadening = DIFF_PSEUDO_VOIGT; /* get min Dhkl for (specified) 2theta max */ dhkl_min = 0.5*model->diffract.wavelength/tbl_sin(0.5*D2R*model->diffract.theta[1]); model->diffract.dhkl_min = dhkl_min; /* deal with the sin/lambda < 2.0 scattering restriction */ /* FIXME - check up on the necessity for this */ if (model->diffract.wavelength < 0.5) { tmp = R2D * asin(2.0 * model->diffract.wavelength); if (model->diffract.theta[1] > tmp) { model->diffract.theta[1] = tmp; gui_text_show(WARNING, "Your maximum theta value is too large.\n"); } if (model->diffract.theta[0] > tmp) { model->diffract.theta[1] = tmp; gui_text_show(WARNING, "Your minimum theta value is too large.\n"); } } #if DEBUG_DIFF_CALC printf(" radiation = %d\n", model->diffract.radiation); printf("wavelength = %f\n", model->diffract.wavelength); printf(" theta = %f %f %f\n", model->diffract.theta[0], model->diffract.theta[1], model->diffract.theta[2]); printf(" fwhm = %f %f %f\n", model->diffract.u, model->diffract.v, model->diffract.w); printf(" Dhkl min = %f\n", tmp); #endif /* NEW - setup for multiframe diffraction */ if (diff_all_frames) { if (model->animating) { gui_text_show(ERROR, "Can't do multiple animations.\n"); return(1); } if (!model->transform_list) { model->afp = fopen(model->filename, "r"); if (!model->afp) { gui_text_show(ERROR, "Failed to open animation stream.\n"); return(1); } } model->animating = TRUE; } /* NEW - handle multiple frames */ for (;;) { /* TODO - enforce theta min < max */ /* calculate and loop over all planes satisfying the above */ /* TODO - free the planes??? */ list = diff_get_ranked_faces(dhkl_min, model); for (item=list ; item ; item=g_slist_next(item)) { plane = item->data; /* sin(angle) / lambda */ sol = 0.5/plane->dhkl; /* valid range for scattering coefficients */ /* g_assert(sol < 2.0); */ plane->f[0] = 0.0; plane->f[1] = 0.0; for (clist=model->cores ; clist ; clist=g_slist_next(clist)) { core = clist->data; /* hkl * reciprocal lattice */ ARR3SET(rdv, plane->index); vecmat(model->rlatmat, rdv); /* core position */ ARR3SET(vec, core->x); vecmat(model->latmat, vec); /* 2pi * dot product */ ARR3MUL(rdv, vec); tmp = 2.0 * PI * (rdv[0] + rdv[1] + rdv[2]); /* get the atomic form factor */ sfc = diff_get_sfc(model->diffract.radiation, sol, core); /* structure factor sum */ plane->f[0] += sfc*tbl_cos(tmp); plane->f[1] += sfc*tbl_sin(tmp); } } /* compute/plot intensities */ diff_calc_spectrum(list, model); free_slist(list); /* NEW - multiframe diffraction */ if (diff_all_frames) { model->cur_frame++; if (model->cur_frame == model->num_frames) break; /* repeat until we run out of frames */ read_frame(model->afp, model->cur_frame, model); } else break; } return(0); } /******************************/ /* diffraction peak selection */ /******************************/ #define DEBUG_PEAK_SELECT 0 void diffract_select_peak(gint x, gint y, struct model_pak *model) { gdouble ox, dx, xmin, xmax, xval; gdouble dhkl, d, dmin, lambda; gpointer graph; GSList *item, *list; struct canvas_pak *canvas; struct plane_pak *plane, *plane_min; g_assert(model != NULL); g_assert(model->graph_active != NULL); graph = model->graph_active; xmin = graph_xmin(graph); xmax = graph_xmax(graph); lambda = graph_wavelength(graph); /* return if not a diffraction pattern */ if (lambda < 0.1) return; /* FIXME - this will break when we implement multi-canvas drawing */ canvas = g_slist_nth_data(sysenv.canvas_list, 0); g_assert(canvas != NULL); /* graph x offset */ ox = canvas->x + 4*gl_fontsize; if (graph_ylabel(graph)) ox += 4*gl_fontsize; /* graph pixel width */ dx = (canvas->width-2.0*ox); /* get graph x value */ xval = (x - ox)/dx; xval *= (xmax - xmin); xval += xmin; if (xval >= xmin && xval <= xmax) { dhkl = 0.5 * lambda / sin(0.5*xval*D2R); #if DEBUG_PEAK_SELECT printf("Peak seach (%d, %d) : %f (%f) : ", x, y, xval, dhkl); #endif list = diff_get_ranked_faces(model->diffract.dhkl_min, model); dmin = 1.0; plane_min = NULL; /* Dhkl difference based search */ for (item=list ; item ; item=g_slist_next(item)) { plane = item->data; d = fabs(plane->dhkl - dhkl); if (d < dmin) { plane_min = plane; dmin = d; } } if (plane_min && dmin < 0.1) { gint gcd, h, k, l; gchar *text; h = plane_min->index[0]; k = plane_min->index[1]; l = plane_min->index[2]; /* gcd = GCD(GCD(h, k), GCD(k, l)); */ gcd = 1; text = g_strdup_printf("(%d %d %d)", h/gcd, k/gcd, l/gcd); graph_set_select(xval, text, graph); g_free(text); #if DEBUG_PEAK_SELECT printf("Dhkl = %f (%f)\n", plane_min->dhkl, dmin); #endif } #if DEBUG_PEAK_SELECT else printf("(none)\n"); #endif free_slist(list); } } /****************************/ /* diffraction setup dialog */ /****************************/ void gui_diffract_dialog(void) { gpointer dialog; GtkWidget *window, *frame, *hbox, *hbox2, *vbox, *label; GList *list; struct model_pak *data; data = sysenv.active_model; if (!data) return; if (data->periodic != 3) { gui_text_show(ERROR, "Your model is not 3D periodic.\n"); return; } /* request a dialog */ dialog = dialog_request(DIFFAX, "Powder Diffraction", NULL, NULL, data); if (!dialog) return; window = dialog_window(dialog); /* radiation details */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, PANEL_SPACING); label = gtk_label_new(g_strdup_printf(" Radiation ")); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); list = NULL; list = g_list_prepend(list, "Electrons"); list = g_list_prepend(list, "Neutrons"); list = g_list_prepend(list, "X-Rays"); diff_rad_type = gtk_combo_new(); gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(diff_rad_type)->entry), FALSE); gtk_combo_set_popdown_strings(GTK_COMBO(diff_rad_type), list); gtk_box_pack_end(GTK_BOX(hbox), diff_rad_type, FALSE, FALSE, PANEL_SPACING); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, PANEL_SPACING); label = gtk_label_new(g_strdup_printf(" Wavelength ")); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); diff_rad_length = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(diff_rad_length), g_strdup_printf("%-9.6f", data->diffract.wavelength)); gtk_box_pack_end(GTK_BOX(hbox), diff_rad_length, FALSE, FALSE, 0); /* peak broadening */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, PANEL_SPACING); label = gtk_label_new(g_strdup_printf(" Broadening function ")); gtk_box_pack_start(GTK_BOX(hbox), label, TRUE, TRUE, 0); list = NULL; list = g_list_prepend(list, "Pseudo-Voigt"); list = g_list_prepend(list, "Lorentzian"); list = g_list_prepend(list, "Gaussian"); diff_broadening = gtk_combo_new(); gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(diff_broadening)->entry), FALSE); gtk_combo_set_popdown_strings(GTK_COMBO(diff_broadening), list); gtk_box_pack_end(GTK_BOX(hbox), diff_broadening, FALSE, FALSE, PANEL_SPACING); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, PANEL_SPACING); gui_auto_spin("Mixing parameter ", &data->diffract.asym, 0.0, 1.0, 0.01, NULL, NULL, hbox); /* split pane */ hbox2 = gtk_hbox_new(TRUE, 0); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), hbox2, TRUE, TRUE, 0); /* angle range */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(hbox2), frame, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, TRUE, TRUE, PANEL_SPACING); gui_auto_spin(" 2Theta min", &data->diffract.theta[0], 0.0, 160.0, 0.1, NULL, NULL, hbox); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, TRUE, TRUE, PANEL_SPACING); gui_auto_spin(" 2Theta max", &data->diffract.theta[1], 0.0, 170.0, 0.1, NULL, NULL, hbox); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, TRUE, TRUE, PANEL_SPACING); gui_auto_spin(" 2Theta step", &data->diffract.theta[2], 0.01, 1.0, 0.01, NULL, NULL, hbox); /* U V W broadening parameters */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(hbox2), frame, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, PANEL_SPACING); gui_auto_spin(" U ", &data->diffract.u, -9.9, 9.9, 0.05, NULL, NULL, hbox); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, PANEL_SPACING); gui_auto_spin(" V ", &data->diffract.v, -9.9, 9.9, 0.05, NULL, NULL, hbox); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, PANEL_SPACING); gui_auto_spin(" W ", &data->diffract.w, -9.9, 9.9, 0.05, NULL, NULL, hbox); /* output stuff */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, PANEL_SPACING); label = gtk_label_new(g_strdup_printf(" Output filename ")); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); diff_filename = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(diff_filename), data->basename); gtk_box_pack_end(GTK_BOX(hbox), diff_filename, FALSE, FALSE, 0); /* hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, PANEL_SPACING); if (sysenv.grace_path) diff_plot = new_check_button("Plot spectrum ", NULL, NULL, 1, hbox); else { diff_plot = new_check_button("Plot spectrum ", NULL, NULL, 0, hbox); gtk_widget_set_sensitive(GTK_WIDGET(diff_plot), FALSE); } */ if (data->animation) gui_direct_check("Calculate for all frames (output file only)", &diff_all_frames, NULL, NULL, vbox); else diff_all_frames = FALSE; /* terminating buttons */ gui_stock_button(GTK_STOCK_EXECUTE, diff_calc, NULL, GTK_DIALOG(window)->action_area); gui_stock_button(GTK_STOCK_CLOSE, dialog_destroy, dialog, GTK_DIALOG(window)->action_area); gtk_widget_show_all(window); } gdis-0.90/file_pdb.c0000644000175000017500000004463610600706735012757 0ustar seansean/* Copyright (C) 2003 by Andrew Lloyd Rohl andrew@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include "gdis.h" #include "coords.h" #include "model.h" #include "file.h" #include "parse.h" #include "matrix.h" #include "interface.h" /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /* FIXME - deal with res_name , chain values of NULL */ void write_pdb_core(FILE *fp, gint i, struct core_pak *core, struct model_pak *model) { gdouble x[3]; gchar *res_name, *chain; ARR3SET(x, core->x); vecmat(model->latmat, x); if (!core->res_name) res_name = "UNK"; else res_name = core->res_name; if (!core->chain) chain = "A"; else chain = core->chain; fprintf(fp,"ATOM %5d %-4s %3s %1s %3d %8.3f%8.3f%8.3f%6.2f%6.2f %-4s%2s%-2s\n", i, core->atom_label, res_name, chain, core->res_no, x[0], x[1], x[2], core->sof, 0.0, "", elements[core->atom_code].symbol, ""); } /******************/ /* PDB writing */ /******************/ gint write_pdb(gchar *filename, struct model_pak *model) { gdouble c; GSList *list, *list2; struct bond_pak *bond; struct core_pak *core, *core2; gint i; FILE *fp; /* checks */ g_return_val_if_fail(model != NULL, 1); g_return_val_if_fail(filename != NULL, 2); /* open the file */ fp = fopen(filename, "wt"); if (!fp) return(3); /* TODO - write multiple frames if it has them */ /* The CRYST1 record presents the unit cell parameters, space group, and Z value. If the structure was not determined by crystallographic means, CRYST1 simply defines a unit cube. COLUMNS DATA TYPE FIELD DEFINITION ------------------------------------------------------------- 1 - 6 Record name "CRYST1" 7 - 15 Real(9.3) a a (Angstroms). 16 - 24 Real(9.3) b b (Angstroms). 25 - 33 Real(9.3) c c (Angstroms). 34 - 40 Real(7.2) alpha alpha (degrees). 41 - 47 Real(7.2) beta beta (degrees). 48 - 54 Real(7.2) gamma gamma (degrees). 56 - 66 LString sGroup Space group. 67 - 70 Integer z Z value. */ if (model->periodic) { if (model->periodic == 2) /* saving a surface as a 3D model - make depth large enough to fit everything */ c = 2.0*model->rmax; else c = model->pbc[2]; if (model->sginfo.spacename) fprintf(fp,"CRYST1%9.3f%9.3f%9.3f%7.2f%7.2f%7.2f %-11s%4d\n", model->pbc[0], model->pbc[1], c, 180.0*model->pbc[3]/PI, 180.0*model->pbc[4]/PI, 180.0*model->pbc[5]/PI, model->sginfo.spacename, 0); else fprintf(fp,"CRYST1%9.3f%9.3f%9.3f%7.2f%7.2f%7.2f %-11s%4d\n", model->pbc[0], model->pbc[1], c, 180.0*model->pbc[3]/PI, 180.0*model->pbc[4]/PI, 180.0*model->pbc[5]/PI, "P1", 0); } /* The ATOM records present the atomic coordinates for standard residues. They also present the occupancy and temperature factor for each atom. Heterogen coordinates use the HETATM record type. The element symbol is always present on each ATOM record; segment identifier and charge are optional. COLUMNS DATA TYPE FIELD DEFINITION --------------------------------------------------------------------------------- 1 - 6 Record name "ATOM " 7 - 11 Integer serial Atom serial number. 13 - 16 Atom name Atom name. 17 Character altLoc Alternate location indicator. 18 - 20 Residue name resName Residue name. 22 Character chainID Chain identifier. 23 - 26 Integer resSeq Residue sequence number. 27 AChar iCode Code for insertion of residues. 31 - 38 Real(8.3) x Orthogonal coordinates for X in Angstroms. 39 - 46 Real(8.3) y Orthogonal coordinates for Y in Angstroms. 47 - 54 Real(8.3) z Orthogonal coordinates for Z in Angstroms. 55 - 60 Real(6.2) occupancy Occupancy. 61 - 66 Real(6.2) tempFactor Temperature factor. 73 - 76 LString(4) segID Segment identifier, left-justified. 77 - 78 LString(2) element Element symbol, right-justified. 79 - 80 LString(2) charge Charge on the atom. */ i=1; for (list=model->cores ; list ; list=g_slist_next(list)) { write_pdb_core(fp, i++, list->data, model); } /* CURRENT */ /* connectivity */ i=1; for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->bonds) { fprintf(fp, "CONECT"); fprintf(fp, " %4d", i); for (list2=core->bonds ; list2 ; list2=g_slist_next(list2)) { bond = list2->data; if (connect_split(bond)) continue; if (core == bond->atom1) core2 = bond->atom2; else core2 = bond->atom1; fprintf(fp, " %4d", 1+g_slist_index(model->cores, core2)); } fprintf(fp, "\n"); } i++; } fclose(fp); return(0); } /***********************************************/ /* read a line of FORTRAN output padding to 80 */ /* characters (with nulls) if required */ /***********************************************/ gint fort_read_line(FILE *fp, gchar **line) { gint ret_val; gchar the_line[LINELEN]; ret_val = fgetline(fp, the_line); if (!ret_val) { *line = g_strndup(the_line, 80); } return(ret_val); } /**********************************************/ /* read a gint from a line of FORTRAN output */ /**********************************************/ gint fort_read_gint(char *line, gint start_col, gint end_col) { gchar *field; gdouble value; g_return_val_if_fail(start_col > 0, 0.0); g_return_val_if_fail(start_col <= end_col, 0.0); field = g_strndup(line+start_col-1, end_col-start_col+1); value = (gint) str_to_float(field); g_free(field); return(value); } /*************************************************/ /* read a gdouble from a line of FORTRAN output */ /*************************************************/ gdouble fort_read_gdouble(char *line, gint start_col, gint end_col) { gchar *field; gdouble value; g_return_val_if_fail(start_col > 0, 0.0); g_return_val_if_fail(start_col <= end_col, 0.0); field = g_strndup(line+start_col-1, end_col-start_col+1); value = str_to_float(field); g_free(field); return(value); } /*************************************************/ /* read a string from a line of FORTRAN output */ /*************************************************/ gchar *fort_read_string(char *line, gint start_col, gint end_col) { gchar *field; g_return_val_if_fail(start_col > 0, ""); g_return_val_if_fail(start_col <= end_col, ""); field = g_strndup(line+start_col-1, end_col-start_col+1); return(field); } /*************************************************/ /* read a PDB block into the model structure */ /*************************************************/ gint read_pdb_block(FILE *fp, struct model_pak *data) { gchar *line, *atom_name, *res_name, *element; struct core_pak *core; GSList *clist; clist = data->cores; /* loop while there's data */ while (!fort_read_line(fp, &line)) { /* 3-D structure? */ if (g_ascii_strncasecmp("CRYST1", line, 6) == 0) /* The CRYST1 record presents the unit cell parameters, space group, and Z value. If the structure was not determined by crystallographic means, CRYST1 simply defines a unit cube. COLUMNS DATA TYPE FIELD DEFINITION ------------------------------------------------------------- 1 - 6 Record name "CRYST1" 7 - 15 Real(9.3) a a (Angstroms). 16 - 24 Real(9.3) b b (Angstroms). 25 - 33 Real(9.3) c c (Angstroms). 34 - 40 Real(7.2) alpha alpha (degrees). 41 - 47 Real(7.2) beta beta (degrees). 48 - 54 Real(7.2) gamma gamma (degrees). 56 - 66 LString sGroup Space group. 67 - 70 Integer z Z value. */ { data->periodic = 3; data->pbc[0] = fort_read_gdouble(line, 7, 15); data->pbc[1] = fort_read_gdouble(line, 16, 24); data->pbc[2] = fort_read_gdouble(line, 25, 33); data->pbc[3] = fort_read_gdouble(line, 34, 40) * PI/180.0; data->pbc[4] = fort_read_gdouble(line, 41, 47) * PI/180.0; data->pbc[5] = fort_read_gdouble(line, 48, 54) * PI/180.0; data->sginfo.spacename = fort_read_string(line, 56, 66); /* indicate that name should used in lookup (IF a spacegroup was found) */ if (strlen(data->sginfo.spacename)) data->sginfo.spacenum = -1; } else if ((g_ascii_strncasecmp("ATOM", line, 4) == 0) || (g_ascii_strncasecmp("HETATM", line, 6) == 0)) { /* The ATOM records present the atomic coordinates for standard residues. They also present the occupancy and temperature factor for each atom. Heterogen coordinates use the HETATM record type. The element symbol is always present on each ATOM record; segment identifier and charge are optional. COLUMNS DATA TYPE FIELD DEFINITION --------------------------------------------------------------------------------- 1 - 6 Record name "ATOM " 7 - 11 Integer serial Atom serial number. 13 - 16 Atom name Atom name. 17 Character altLoc Alternate location indicator. 18 - 20 Residue name resName Residue name. 22 Character chainID Chain identifier. 23 - 26 Integer resSeq Residue sequence number. 27 AChar iCode Code for insertion of residues. 31 - 38 Real(8.3) x Orthogonal coordinates for X in Angstroms. 39 - 46 Real(8.3) y Orthogonal coordinates for Y in Angstroms. 47 - 54 Real(8.3) z Orthogonal coordinates for Z in Angstroms. 55 - 60 Real(6.2) occupancy Occupancy. 61 - 66 Real(6.2) tempFactor Temperature factor. 73 - 76 LString(4) segID Segment identifier, left-justified. 77 - 78 LString(2) element Element symbol, right-justified. 79 - 80 LString(2) charge Charge on the atom. */ atom_name = fort_read_string(line, 13, 16); if (clist) { core = clist->data; clist = g_slist_next(clist); } else { element = fort_read_string(line, 77, 78); element = g_strchug(element); /* printf("\"%s\"\n", element);*/ if (*element != '\0') core = core_new(element, atom_name, data); else core = new_core(atom_name, data); data->cores = g_slist_append(data->cores, core); } g_free(atom_name); g_free(core->res_name); res_name = fort_read_string(line, 18, 20); core->res_name = g_strdup(res_name); g_free(res_name); core->chain = fort_read_string(line, 22, 22); core->res_no = fort_read_gint(line, 23, 26); core->x[0] = fort_read_gdouble(line, 31, 38); core->x[1] = fort_read_gdouble(line, 39, 46); core->x[2] = fort_read_gdouble(line, 47, 54); core->sof = fort_read_gdouble(line, 55, 60); } else if (g_ascii_strncasecmp("ENDMDL", line, 6) == 0) /* The ENDMDL records are paired with MODEL records to group individual structures found in a coordinate entry. COLUMNS DATA TYPE FIELD DEFINITION ------------------------------------------------------------------ 1 - 6 Record name "ENDMDL" */ return(0); g_free(line); } return(-1); } /*********************/ /* PDB frame read */ /*********************/ gint read_pdb_frame(FILE *fp, struct model_pak *data) { /* frame overwrite */ read_pdb_block(fp, data); return(0); } /******************/ /* PDB reading */ /******************/ #define DEBUG_READ_PDB 0 gint read_pdb(gchar *filename, struct model_pak *data) { gint frame=0; FILE *fp; /* checks */ g_return_val_if_fail(data != NULL, 1); g_return_val_if_fail(filename != NULL, 2); /* initialisers */ data->periodic = 0; data->protein = TRUE; data->fractional = FALSE; fp = fopen(filename, "rt"); if (!fp) return(3); add_frame_offset(fp, data); while (read_pdb_block(fp, data) == 0) { add_frame_offset(fp, data); /* increment counter */ frame++; } /* model setup */ strcpy(data->filename, filename); g_free(data->basename); data->basename = parse_strip(filename); data->num_frames = data->cur_frame = frame; data->cur_frame--; model_prep(data); return(0); } /* The MODEL record specifies the model serial number when multiple structures are presented in a single coordinate entry, as is often the case with structures determined by NMR. COLUMNS DATA TYPE FIELD DEFINITION ---------------------------------------------------------------------- 1 - 6 Record name "MODEL " 11 - 14 Integer serial Model serial number. */ // if ((line80.startsWith("ATOM") || line80.startsWith("HETATM"))) { /* The ATOM records present the atomic coordinates for standard residues. They also present the occupancy and temperature factor for each atom. Heterogen coordinates use the HETATM record type. The element symbol is always present on each ATOM record; segment identifier and charge are optional. COLUMNS DATA TYPE FIELD DEFINITION --------------------------------------------------------------------------------- 1 - 6 Record name "ATOM " 7 - 11 Integer serial Atom serial number. 13 - 16 Atom name Atom name. 17 Character altLoc Alternate location indicator. 18 - 20 Residue name resName Residue name. 22 Character chainID Chain identifier. 23 - 26 Integer resSeq Residue sequence number. 27 AChar iCode Code for insertion of residues. 31 - 38 Real(8.3) x Orthogonal coordinates for X in Angstroms. 39 - 46 Real(8.3) y Orthogonal coordinates for Y in Angstroms. 47 - 54 Real(8.3) z Orthogonal coordinates for Z in Angstroms. 55 - 60 Real(6.2) occupancy Occupancy. 61 - 66 Real(6.2) tempFactor Temperature factor. 73 - 76 LString(4) segID Segment identifier, left-justified. 77 - 78 LString(2) element Element symbol, right-justified. 79 - 80 LString(2) charge Charge on the atom. */ /* serial = Integer.valueOf(line80.substring(6, 11).trim()).intValue(); if (countOnly) { if (serial > nAtoms) nAtoms = serial; } else { name = line80.substring(12, 16).trim(); x = Double.valueOf(line80.substring(30, 38).trim()).doubleValue(); y = Double.valueOf(line80.substring(38, 46).trim()).doubleValue(); z = Double.valueOf(line80.substring(46, 54).trim()).doubleValue(); atomlist[serial] = new Atom (name, x, y, z, blackBackground); sortindex[serial] = serial; } } */ /* The ENDMDL records are paired with MODEL records to group individual structures found in a coordinate entry. COLUMNS DATA TYPE FIELD DEFINITION ------------------------------------------------------------------ 1 - 6 Record name "ENDMDL" */ /* The CONECT records specify connectivity between atoms for which coordinates are supplied. The connectivity is described using the atom serial number as found in the entry. CONECT records are mandatory for HET groups (excluding water) and for other bonds not specified in the standard residue connectivity table which involve atoms in standard residues (see Appendix 4 for the list of standard residues). COLUMNS DATA TYPE FIELD DEFINITION --------------------------------------------------------------------------------- 1 - 6 Record name "CONECT" 7 - 11 Integer serial Atom serial number 12 - 16 Integer serial Serial number of bonded atom 17 - 21 Integer serial Serial number of bonded atom 22 - 26 Integer serial Serial number of bonded atom 27 - 31 Integer serial Serial number of bonded atom 32 - 36 Integer serial Serial number of hydrogen bonded atom 37 - 41 Integer serial Serial number of hydrogen bonded atom 42 - 46 Integer serial Serial number of salt bridged atom 47 - 51 Integer serial Serial number of hydrogen bonded atom 52 - 56 Integer serial Serial number of hydrogen bonded atom 57 - 61 Integer serial Serial number of salt bridged atom */ gdis-0.90/ff.h0000644000175000017500000000271710602710070011572 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ /* types */ enum { FF_HARMONIC, FF_MORSE, FF_BUCKINGHAM, FF_LENNARD, FF_3B_HARMONIC, FF_DIHEDRAL, FF_IMPROPER, FF_DIHEDRAL_RB }; /* units */ enum { FF_UNKNOWN, FF_ANG, FF_AU, FF_DEG, FF_RAD, FF_EV, FF_KJ, FF_KCAL }; /* prototypes */ gpointer ff_type_new(gint); gpointer ff_dup(gpointer); gint ff_type_get(gpointer); gint ff_data_size_get(gpointer); gint ff_data_add(gpointer, gchar *); gdouble *ff_data_get(gpointer); gpointer ff_search(struct core_pak **, gint, GSList *); GSList *ff_filter_list(gint, GSList *); void ff_dump_all(GSList *); void ff_dump_type(gint, GSList *); GSList *ff_gulp_parse(const gchar *); gpointer ff_gulp_new(const gchar *); gchar *ff_gulp_string(gpointer); gdis-0.90/hirshfeld.c0000644000175000017500000003674610323146447013166 0ustar seansean/* * hirshfeld.c * newsurface * * Created by Anthony S. Mitchell and Joshua J. McKinnon. * Contact: Joshua.McKinnon@une.edu.au * Copyright (c) 2004 University of New England. All rights reserved. * * This file contains (almost) all of the routines required to calculate * w(r) for the Hirshfeld surface. * This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include #include "gdis.h" #include "coords.h" #include "matrix.h" #include "space.h" #include "numeric.h" #include "hirshfeld.h" #include "hirshfeld_data.h" #include "molsurf.h" #define MAXATOMS 54 #define NPOINTS 700 /* spline limits (in Angstroms) */ #define MAXR 7.4084815 /* crystal environment cutoff */ //#define HFS_RMAX 10.0 /* JJM DEBUG try a smaller cutoff */ #define HFS_RMAX 5.0 gboolean hfs_rho_init = FALSE; struct rho_pak { gdouble x[NPOINTS]; gdouble y[NPOINTS]; gdouble y2[NPOINTS]; } atomdata[MAXATOMS]; /************************************************************/ /* initialization routine for Hirshfeld surface calculation */ /************************************************************/ void hfs_init(void) { gint i, j; gdouble x /* , delta, big, small */ ; /* only compute spline once */ if (hfs_rho_init) return; /* setup data array for spline fit */ for (i=0 ; icores ; list ; list=g_slist_next(list)) { core = list->data; ARR3SET(r, core->x); vecmat(model->latmat, r); /* P3VEC("core: ", r); */ ARR3SUB(r, x); dr = VEC3MAGSQ(r); if (dr < min) { mol = core->mol; min = dr; } } /* printf("min = %f\n", min); */ if (mol) return(mol->cores); return(NULL); } /***********************************/ /* generate atoms around selection */ /***********************************/ GSList *hfs_calc_env(GSList *select, struct model_pak *model) { gboolean flag, primary; gint i, imax[3]; gdouble r2, dx[3]; GSList *ilist, *list, *list2, *nlist; struct image_pak *image; struct core_pak *core, *copy, *test; /* checks */ g_assert(model != NULL); /* construct periodic image vectors */ for (i=0 ; iperiodic ; i++) imax[i] = HFS_RMAX/model->pbc[i] + 1; model->image_limit[0] = imax[0]; model->image_limit[1] = imax[0]+1; model->image_limit[2] = imax[1]; model->image_limit[3] = imax[1]+1; model->image_limit[4] = imax[2]; model->image_limit[5] = imax[2]+1; space_make_images(CREATE, model); coords_compute(model); /* original + image iteration */ nlist = NULL; for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; /* mark cores in the central molecule */ if (g_slist_find(select, core)) primary = TRUE; else primary = FALSE; /* add the atom */ ilist = NULL; do { /* add coordinates */ /* NB: probably don't need to worry about shells, as this is */ /* a temporary model and the algorithm will ignore them anyway */ copy = dup_core(core); if (ilist) { /* image translation */ image = ilist->data; ARR3ADD(copy->rx, image->rx); ilist = g_slist_next(ilist); } else ilist = model->images; /* set cartesian coords */ ARR3SET(copy->x, copy->rx); /* JJM added line below so that copy->x contains fractional coords. Should I take account of the centroid here? */ vecmat(model->ilatmat,copy->x); ARR3ADD(copy->x, model->centroid); copy->primary = primary; /* test if core satisfies distance condition */ flag = FALSE; for (list2=select ; list2 ; list2=g_slist_next(list2)) { test = list2->data; ARR3SET(dx, test->rx); ARR3SUB(dx, copy->rx); r2 = VEC3MAGSQ(dx); if (r2 < HFS_RMAX*HFS_RMAX) { flag = TRUE; break; } } if (flag) nlist = g_slist_prepend(nlist, copy); } while (ilist); } /* reset source model's images */ space_make_images(INITIAL, model); #if DEBUG_HFS_CALC_ENV printf("hfs_calc_env: %d cores\n", g_slist_length(nlist)); #endif return(nlist); } /************************************/ /* retrieve an interpolated density */ /************************************/ gdouble hfs_calc_density(gint n, gdouble r2) { gdouble value; /* FIXME - no support for atoms up to (and not including) Ba */ /* g_assert(n < MAXATOMS); */ n = CLAMP(n, 1, MAXATOMS); if (r2 > atomdata[n].x[NPOINTS-1]) return(0.0); splint(atomdata[n].x, atomdata[n].y, atomdata[n].y2, NPOINTS, r2, &value); return(value); } /********************************************/ /* Use the selection to calculate */ /* sensible (but not foolproof!!) limits */ /* for the marching cubes search, of the */ /* extremeties of the selection atoms in */ /* x,y,z plus in each direction */ /********************************************/ int hfs_calulation_limits(GSList *selection, struct model_pak *model, gdouble *min, gdouble *max) { gdouble tolerance[3] = {3.0, 3.0, 3.0}; /* Angstrom */ GSList *list; struct core_pak *thisAtom; int i; for (i=0; i<3; i++){ min[i] = 3e10; max[i] =-3e10; } vecmat(model->ilatmat,tolerance); for (list = selection; list; list=g_slist_next(list)){ thisAtom = list->data; for (i=0; i<3; i++){ if ( thisAtom->x[i] < min[i]) min[i] = thisAtom->x[i]; if ( thisAtom->x[i] > max[i]) max[i] = thisAtom->x[i]; } } for (i=0; i<3; i++) { min[i] = min[i] - tolerance[i]; max[i] = max[i] + tolerance[i]; } return(0); } /*************************************/ /* Use the gradient of the Hirshfeld */ /* surface to calculate the normal */ /*************************************/ int hfs_calc_normals(GSList *points, struct model_pak *model, GSList *myThing) { gdouble delta = 5.0e-3; gdouble gx, gy, gz; gdouble wPoint, wgx, wgy, wgz; gdouble xDelta[3],yDelta[3],zDelta[3]; gdouble temp[3]; GSList *pointList; struct smv_pak *thisPoint; time_t jobStartTime, jobEndTime; jobStartTime = time(NULL); delta = 5.0e-3; for (pointList=points; pointList; pointList=g_slist_next(pointList)){ thisPoint = pointList->data; if (!thisPoint->adj) continue; ARR3SET(temp, thisPoint->rx); gx = thisPoint->rx[0] + delta; gy = thisPoint->rx[1] + delta; gz = thisPoint->rx[2] + delta; VEC3SET(xDelta,gx,thisPoint->rx[1],thisPoint->rx[2]); VEC3SET(yDelta,thisPoint->rx[0],gy,thisPoint->rx[2]); VEC3SET(zDelta,thisPoint->rx[0],thisPoint->rx[1],gz); wPoint = hfs_calc_wf(thisPoint->rx[0],thisPoint->rx[1],thisPoint->rx[2],model,myThing); wgx = hfs_calc_wf(xDelta[0],xDelta[1],xDelta[2],model,myThing); wgy = hfs_calc_wf(yDelta[0],yDelta[1],yDelta[2],model,myThing); wgz = hfs_calc_wf(zDelta[0],zDelta[1],zDelta[2],model,myThing); thisPoint->nx[0] = (wgx - wPoint)/delta; thisPoint->nx[1] = (wgy - wPoint)/delta; thisPoint->nx[2] = (wgz - wPoint)/delta; // normalize(thisPoint->nx,3); ARR3SET(thisPoint->n, thisPoint->nx); // P3VEC("Normal:",thisPoint->nx); } jobEndTime = time(NULL); #if DEBUG_HFS_NORMALS fprintf(stderr," [%.1fs]\n",(float)(jobEndTime - jobStartTime)); #endif return(0); } /*************************************/ /* Use the gradient of the promolecule */ /* surface to calculate the normal */ /*************************************/ int ssatoms_calc_normals(GSList *points, struct model_pak *model) { gdouble delta = 5.0e-3; gdouble gx, gy, gz; gdouble wPoint, wgx, wgy, wgz; gdouble xDelta[3],yDelta[3],zDelta[3]; gdouble temp[3]; GSList *pointList; struct smv_pak *thisPoint; time_t jobStartTime, jobEndTime; jobStartTime = time(NULL); delta = 5.0e-3; for (pointList=points; pointList; pointList=g_slist_next(pointList)){ thisPoint = pointList->data; if (!thisPoint->adj) continue; ARR3SET(temp, thisPoint->rx); gx = thisPoint->rx[0] + delta; gy = thisPoint->rx[1] + delta; gz = thisPoint->rx[2] + delta; VEC3SET(xDelta,gx,thisPoint->rx[1],thisPoint->rx[2]); VEC3SET(yDelta,thisPoint->rx[0],gy,thisPoint->rx[2]); VEC3SET(zDelta,thisPoint->rx[0],thisPoint->rx[1],gz); wPoint = ssatoms_calc_density(thisPoint->rx[0],thisPoint->rx[1],thisPoint->rx[2],model); wgx = ssatoms_calc_density(xDelta[0],xDelta[1],xDelta[2],model); wgy = ssatoms_calc_density(yDelta[0],yDelta[1],yDelta[2],model); wgz = ssatoms_calc_density(zDelta[0],zDelta[1],zDelta[2],model); thisPoint->nx[0] = (wgx - wPoint)/delta; thisPoint->nx[1] = (wgy - wPoint)/delta; thisPoint->nx[2] = (wgz - wPoint)/delta; normalize(thisPoint->nx,3); ARR3SET(thisPoint->n, thisPoint->nx); // P3VEC("Normal:",thisPoint->nx); } jobEndTime = time(NULL); #if DEBUG_HFS_NORMALS fprintf(stderr," [%.1fs]\n",(float)(jobEndTime - jobStartTime)); #endif return(0); } /******************************************/ /* compute the weight function at a point */ /* */ /* Note we now pass three doubles (x,y,z) */ /* instead of a single vector because it */ /* makes life much easier for the second */ /* derivative calculations */ /******************************************/ gdouble hfs_calc_wf(gdouble x, gdouble y, gdouble z, struct model_pak *model, GSList *myThing) { gdouble r2; gdouble weight_r=0.0, r[3]; gdouble point[3]; /*vector for the point (x,y,z) */ gdouble rhoNugget, rhoMol, rhoXtal; GSList *list, *mlist; struct core_pak *core; VEC3SET(point,x,y,z); /* checks */ g_assert(model != NULL); g_assert(hfs_rho_init == TRUE); /* add up the density contribution from the molecule */ /*** JJM The 'molecule' that we're calculating the Hirshfeld surface of should be the selected molecule. Hence the new definition of mlist here ***/ mlist = model->selection; rhoMol=0.0; /***J loop over the atoms in the selected molecule J***/ for (list=mlist ; list ; list=g_slist_next(list)) { core = list->data; /* compute cartesian distance squared (in Angs) */ // vecmat(model->latmat,core->x); ARR3SET(r, core->rx); vecmat(model->ilatmat,r); ARR3ADD(r, model->centroid); vecmat(model->latmat,r); ARR3SUB(r, point); r2 = VEC3MAGSQ(r); /* ARR3SET(coreCartesian, core->x); vecmat(model->latmat,coreCartesian); ARR3SUB(coreCartesian,x); r2 = VEC3MAGSQ(r); */ rhoNugget = hfs_calc_density(core->atom_code, r2); rhoMol += rhoNugget; } /* add up the total density */ rhoXtal=0.0; /***JJM loop over the atoms in the crystal J***/ for (list=myThing ; list ; list=g_slist_next(list)) { core = list->data; /* compute cartesian distance squared (in Angs) */ // vecmat(model->latmat,core->x); ARR3SET(r, core->rx); vecmat(model->ilatmat,r); ARR3ADD(r, model->centroid); vecmat(model->latmat,r); #ifdef JJM_DEBUG_EXTREME02 P3VEC(" r: ", r); P3VEC(" x: ", point); #endif ARR3SUB(r, point); r2 = VEC3MAGSQ(r); /* ARR3SET(coreCartesian, core->x); vecmat(model->latmat,coreCartesian); ARR3SUB(coreCartesian,x); r2 = VEC3MAGSQ(r); */ rhoNugget = hfs_calc_density(core->atom_code, r2); rhoXtal += rhoNugget; } #ifdef JJM_DEBUG02 if ( rhoMol > 0.0 || rhoXtal > 0.0){ fprintf(stderr,"rhoMol: %.3f ___ rhoXtal: %.3f\n",rhoMol,rhoXtal); } #endif /* calc ratio */ if (rhoXtal != 0.0){ /* NEW */ if (rhoXtal > rhoMol) weight_r = rhoMol/rhoXtal; else { fprintf(stderr,"WARNING: Weight function > 1.0. Value: %f\n",weight_r); weight_r = 0.0; } } else weight_r = 0.0; #define STRICT 1 #if STRICT g_assert(weight_r <= 1.0); #else if (weight_r > 1.0) weight_r = 1.0; #endif /* JJM debug if (weight_r > 0.5){ fprintf(stderr,"w %.2f ",weight_r); P3VEC("at ",x); } */ return(weight_r); } /*********************************************************************/ /* compute the sum of spherical atom density at a point */ /* a.k.a. Promolecule */ /* See Mitchell & Spackman, J. Comp. Chem., v. 21, pp 933-942 (2000) */ /* */ /* */ /* */ /* Note we now pass three doubles (x,y,z) */ /* instead of a single vector because it */ /* makes life much easier for the second */ /* derivative calculations */ /*********************************************************************/ gdouble ssatoms_calc_density(gdouble x, gdouble y, gdouble z, struct model_pak *model) { gdouble r2; gdouble r[3]; gdouble point[3]; /*vector for the point (x,y,z) */ gdouble rhoNugget, rhoMol; GSList *list, *mlist; struct core_pak *core; VEC3SET(point,x,y,z); /* checks */ g_assert(model != NULL); g_assert(hfs_rho_init == TRUE); /* add up the density contribution from the molecule */ /*** JJM The 'molecule' that we're calculating the surface of should be the selected molecule. Hence the new definition of mlist here ***/ mlist = model->selection; rhoMol=0.0; /***J loop over the atoms in the selected molecule J***/ for (list=mlist ; list ; list=g_slist_next(list)) { core = list->data; /* compute cartesian distance squared (in Angs) */ // vecmat(model->latmat,core->x); ARR3SET(r, core->rx); vecmat(model->ilatmat,r); ARR3ADD(r, model->centroid); vecmat(model->latmat,r); ARR3SUB(r, point); r2 = VEC3MAGSQ(r); /* ARR3SET(coreCartesian, core->x); vecmat(model->latmat,coreCartesian); ARR3SUB(coreCartesian,x); r2 = VEC3MAGSQ(r); */ rhoNugget = hfs_calc_density(core->atom_code, r2); rhoMol += rhoNugget; } #ifdef JJM_DEBUG02 if ( rhoMol > 0.0 ){ fprintf(stderr,"rhoMol: %.3f\n",rhoMol); } #endif return(rhoMol); } gdis-0.90/spatial.c0000644000175000017500000005161510600706736012644 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include "gdis.h" #include "coords.h" #include "geometry.h" #include "matrix.h" #include "morph.h" #include "numeric.h" #include "spatial.h" #include "select.h" #include "interface.h" #include "gui_shorts.h" #ifdef __APPLE__ #include #else #include "opengl.h" #include #endif /* main structure */ extern struct sysenv_pak sysenv; /* handle all the vector/plane creation, intersections etc. */ /* add all the vector normalization/crossprod etc. stuff as well */ /**************************/ /* spatial free primitive */ /**************************/ void spatial_free(gpointer data) { GSList *list; struct spatial_pak *spatial=data; g_assert(spatial != NULL); for (list=spatial->list ; list ; list=g_slist_next(list)) { struct vec_pak *v = list->data; g_free(v->data); g_free(v); } g_slist_free(spatial->list); g_free(spatial->data); g_free(spatial); } /*****************************/ /* destroy spatial primitive */ /*****************************/ void spatial_destroy(gpointer data, struct model_pak *model) { struct spatial_pak *spatial=data; if (spatial && model) { model->spatial = g_slist_remove(model->spatial, spatial); spatial_free(spatial); } } /*********************************/ /* destroy all spatial primitive */ /*********************************/ void spatial_destroy_all(struct model_pak *model) { GSList *list; struct spatial_pak *spatial; g_assert(model != NULL); list = model->spatial; while (list) { spatial = list->data; list = g_slist_next(list); spatial_free(spatial); } g_slist_free(model->spatial); model->spatial = NULL; } /**************************/ /* destroy by type number */ /**************************/ void spatial_destroy_by_type(gint type, struct model_pak *model) { GSList *list; struct spatial_pak *spatial; list = model->spatial; while (list) { spatial = list->data; list = g_slist_next(list); if (type == spatial->type) spatial_destroy(spatial, model); } } /***********************************/ /* destroy spatial by id primitive */ /***********************************/ void spatial_destroy_by_label(const gchar *label, struct model_pak *model) { gint a, b; GSList *list; struct spatial_pak *spatial; g_assert(label != NULL); g_assert(model != NULL); a = strlen(label); list = model->spatial; while (list) { spatial = list->data; list = g_slist_next(list); b = strlen(spatial->label); if (a == b) if (g_strncasecmp(label, spatial->label, a) == 0) spatial_destroy(spatial, model); } } /************************************/ /* primitives for creating spatials */ /************************************/ gpointer spatial_new(const gchar *label, gint type, gint size, gint periodic, struct model_pak *model) { static gint n=0; struct spatial_pak *spatial; g_assert(model != NULL); spatial = g_malloc(sizeof(struct spatial_pak)); model->spatial = g_slist_append(model->spatial, spatial); if (label) spatial->label = g_strdup(label); else { /* FIXME - better facility for creating a unique name */ spatial->label = g_strdup_printf("unknown_%d", n++); } spatial->type = type; spatial->size = size; spatial->periodic = periodic; spatial->show_label = FALSE; spatial->data = NULL; spatial->list = NULL; ARR3SET(spatial->c, sysenv.render.fg_colour); switch (size) { case 1: spatial->method = GL_POINTS; spatial->material = SPATIAL_LINE; break; case 2: spatial->method = GL_LINES; spatial->material = SPATIAL_LINE; break; case 3: spatial->method = GL_TRIANGLES; spatial->material = SPATIAL_SURFACE; break; case 4: spatial->method = GL_QUADS; spatial->material = SPATIAL_SURFACE; break; default: spatial->method = GL_POLYGON; spatial->material = SPATIAL_SURFACE; } /* special case - composite objects */ switch (type) { case SPATIAL_VECTOR: spatial->method = -1; spatial->material = SPATIAL_SOLID; } return(spatial); } /************************************************************/ /* associates a general purpose data pointer with a spatial */ /************************************************************/ void spatial_data_set(gpointer data, gpointer ptr) { struct spatial_pak *spatial=ptr; spatial->data = data; } /***********************************************************/ /* retrieves a general purpose data pointer from a spatial */ /***********************************************************/ gpointer spatial_data_get(gpointer ptr) { struct spatial_pak *spatial=ptr; return(spatial->data); } /*************************************/ /* structure manipulation primitives */ /*************************************/ void spatial_label_show(gpointer data) { struct spatial_pak *spatial=data; spatial->show_label = TRUE; } void spatial_label_hide(gpointer data) { struct spatial_pak *spatial=data; spatial->show_label = FALSE; } /*****************************/ /* vertex creation primitive */ /*****************************/ gpointer vertex_new(gdouble *x, gdouble *n, gdouble *c) { struct vec_pak *v; v = g_malloc(sizeof(struct vec_pak)); if (x) { ARR3SET(v->x, x); } else { VEC3SET(v->x, 0.0, 0.0, 0.0); } if (n) { ARR3SET(v->n, n); } else { VEC3SET(v->n, 0.0, 0.0, 1.0); } if (c) { ARR3SET(v->colour, c); } else { ARR3SET(v->colour, sysenv.render.fg_colour); } v->data = NULL; return(v); } /**************************/ /* add vertex with colour */ /**************************/ void spatial_vertex_add(gdouble *x, gdouble *colour, gpointer ptr) { struct spatial_pak *spatial = ptr; struct vec_pak *vec; vec = vertex_new(x, NULL, colour); spatial->list = g_slist_prepend(spatial->list, vec); } /*************************************/ /* add vertex with normal and colour */ /*************************************/ void spatial_vnorm_add(gdouble *x, gdouble *n, gdouble *colour, gpointer ptr) { struct spatial_pak *spatial = ptr; struct vec_pak *vec; vec = vertex_new(x, n, colour); spatial->list = g_slist_prepend(spatial->list, vec); } /********************************************/ /* add vertex with additional property data */ /********************************************/ void spatial_vdata_add(gdouble *x, gdouble *n, gdouble *colour, gpointer data, gpointer ptr) { struct spatial_pak *spatial = ptr; struct vec_pak *vec; vec = vertex_new(x, n, colour); vec->data = data; spatial->list = g_slist_prepend(spatial->list, vec); } /****************************************************/ /* compute normal for the plane containing 3 points */ /****************************************************/ void compute_normal(gdouble *n, gdouble *c1, gdouble *c2, gdouble *c3) { gdouble v0[3], v1[3], v2[3]; ARR3SET(v0, c1); ARR3SET(v1, c2); ARR3SET(v2, c3); /* make vectors 0->1 & 0->2 */ ARR3SUB(v1, v0); ARR3SUB(v2, v0); /* get normal */ crossprod(n, v1, v2); normalize(n, 3); } /************************************************************/ /* compute normal for a facet defined by a list of vertices */ /************************************************************/ void compute_facet_normal(gdouble *n, GSList *vlist) { gint i, j; struct vertex_pak *v1, *v2, *v3; g_assert(g_slist_length(vlist) > 2); j = g_slist_length(vlist); printf("[size = %d] -------------------------------\n", j); for (i=0 ; ix, v2->x, v3->x); P3VEC("n: ", n); } } /***********************************************/ /* compute best fit plane for a list of atoms */ /**********************************************/ #define DEBUG_COMPUTE_PLANE 0 void compute_plane(gdouble *res, GList *cores) { gdouble tmp[3], vec1[3], vec2[3]; struct core_pak *core1, *core2, *core3; /* FIXME - this only uses the 1st 3 points, in future - an average for n pts */ /* http://www.geocities.com/CollegePark/Campus/1278/JBook/LSQ_Plane.html */ /* shouldn't matter when this routine is properly implemented, as we'll go */ /* through the atom_list in the usual fashoin & terminate when it is NULL, */ /* not when it's data ptr is NULL */ g_assert(cores != NULL); g_assert(g_list_length(cores) > 2); core1 = g_list_nth_data(cores, 0); core2 = g_list_nth_data(cores, 1); core3 = g_list_nth_data(cores, 2); #if DEBUG_COMPUTE_PLANE printf("computing normal from atoms: %p, %p, %p\n", core1, core2, core3); #endif ARR3SET(tmp, core1->x); ARR3SET(vec1, core2->x); ARR3SET(vec2, core3->x); /* make vectors 0->1 & 0->2 */ ARR3SUB(vec1, tmp); ARR3SUB(vec2, tmp); /* get normal */ crossprod(res, vec1, vec2); } /******************************************/ /* get vertex from list with common facet */ /******************************************/ gpointer vertex_common_facet(struct vertex_pak *v, GSList *vlist) { GSList *list1, *list2; struct vertex_pak *v1; for (list1=vlist ; list1 ; list1=g_slist_next(list1)) { v1 = list1->data; for (list2=v->adj ; list2 ; list2=g_slist_next(list2)) { if (g_slist_find(v1->adj, list2->data)) return(v1); } } return(NULL); } /*****************************************/ /* compute the angle between two vectors */ /*****************************************/ /* TODO - replace all via() calls with this */ gdouble vector_angle(gdouble *vec1, gdouble *vec2, gint dim) { gint i; gdouble lenprod, dot=0.0; gdouble *ptr1=vec1, *ptr2=vec2; gdouble cosa=0.0; for (i=0 ; i FRACTION_TOLERANCE) cosa = dot / lenprod; /* enforce range */ cosa = CLAMP(cosa, -1.0, 1.0); return(acos(cosa)); } /**********************************************************/ /* order a set of input coplanar vertices to be clockwise */ /**********************************************************/ /* n is the surface normal */ #define DEBUG_SPATIAL_ORDER_FACET 0 GSList *spatial_order_facet(gdouble *norm, GSList *source, struct model_pak *model) { gint new, old; gdouble total, angle, min; gdouble a[3], b[3], c[3], m[3], n[3]; GSList *list, *pool, *sorted; struct vertex_pak *v1, *v2, *v3; g_assert (model != NULL); /* convert input miller to cartesian space normal */ ARR3SET(n, norm); vecmat(model->latmat, n); normalize(n, 3); /* compute midpoint (acts as orientation vector) */ total = 0.0; VEC3SET(m, 0.0, 0.0, 0.0); for (list=source ; list ; list=g_slist_next(list)) { v1 = list->data; ARR3ADD(m, v1->x); total++; } VEC3MUL(m, 1.0/total); /* vertex pool */ pool = g_slist_copy(source); old = g_slist_length(source); v1 = pool->data; pool = g_slist_remove(pool, v1); /* build a sorted list */ sorted = NULL; sorted = g_slist_append(sorted, v1); new = 1; /* loop until we assign all source vertices */ while (new < old) { /* search the current pool for correct normal orientations */ min = 2.0*G_PI; v3 = NULL; /* vector from midpoint to current reference vertex */ ARR3SET(a, v1->x); ARR3SUB(a, m); for (list=pool ; list ; list=g_slist_next(list)) { v2 = list->data; ARR3SET(b, v2->x); ARR3SUB(b, m); crossprod(c, a, b); /* consider vertex only if it satisfies clockwise condition */ /* if (vector_angle(c, n, 3) < 0.1) */ if (vector_angle(c, n, 3) < 0.5*G_PI) { /* search for minimum angle separation */ angle = vector_angle(a, b, 3); if (angle < min) { min = angle; v3 = v2; } } } /* best vertex is now the reference */ if (v3) { sorted = g_slist_prepend(sorted, v3); pool = g_slist_remove(pool, v3); v1 = v3; } else gui_text_show(ERROR, "Failed to find next vertex.\n"); new++; } return(sorted); } /***************************************************/ /* build a polygon spatial from a list of vertices */ /***************************************************/ #define DEBUG_SPATIAL_BUILD_FACET 0 gpointer spatial_build_facet(gdouble *n, GSList *source, struct model_pak *model) { GSList *list, *vlist; gpointer spatial; struct vertex_pak *v; g_assert(model != NULL); /* CURRENT */ vlist = spatial_order_facet(n, source, model); spatial = spatial_new(NULL, SPATIAL_MORPHOLOGY, 0, FALSE, model); spatial_label_show(spatial); for (list=vlist ; list ; list=g_slist_next(list)) { v = list->data; spatial_vnorm_add(v->x, v->n, sysenv.render.morph_colour, spatial); } g_slist_free(vlist); return(spatial); } /************************************/ /* create a unit cell bounded plane */ /************************************/ #define DEBUG_SPATIAL_CELL_PLANE 0 void spatial_cell_plane(GSList *cores, struct model_pak *model) { gint i, j, k, flag; gdouble a1[3], a2[3], a3[3]; gdouble x1[3], x2[3], x3[3]; gdouble n1[4], n2[4], n3[4]; gdouble walls[24]; gpointer spatial; #if DEBUG_SPATIAL_CELL_PLANE GSList *list; #endif GSList *vlist; struct core_pak *core1, *core2, *core3; struct vertex_pak *v; g_assert(cores != NULL); g_assert(model != NULL); /* get cell vectors */ a1[0] = model->latmat[0]; a1[1] = model->latmat[3]; a1[2] = model->latmat[6]; a2[0] = model->latmat[1]; a2[1] = model->latmat[4]; a2[2] = model->latmat[7]; a3[0] = model->latmat[2]; a3[1] = model->latmat[5]; a3[2] = model->latmat[8]; /* setup bc walls */ crossprod(&walls[0], a2, a3); walls[3] = model->pbc[0]; normalize(&walls[0], 3); ARR3SET(&walls[4], &walls[0]); VEC3MUL(&walls[4], -1.0); walls[7] = 0.0; /* get separation between (origin containing) plane to end of a vector */ vector_point2plane(x1, a1, &walls[4]); walls[3] = VEC3MAG(x1); /* setup ca walls */ crossprod(&walls[8], a3, a1); walls[11] = model->pbc[1]; normalize(&walls[8], 3); ARR3SET(&walls[12], &walls[8]); VEC3MUL(&walls[12], -1.0); walls[15] = 0.0; /* get separation between (origin containing) plane to end of a vector */ vector_point2plane(x1, a2, &walls[12]); walls[11] = VEC3MAG(x1); /* setup ab walls */ crossprod(&walls[16], a1, a2); walls[19] = model->pbc[2]; normalize(&walls[16], 3); ARR3SET(&walls[20], &walls[16]); VEC3MUL(&walls[20], -1.0); walls[23] = 0.0; /* get separation between (origin containing) plane to end of a vector */ vector_point2plane(x1, a3, &walls[20]); walls[19] = VEC3MAG(x1); #if DEBUG_SPATIAL_CELL_PLANE P3MAT("latmat: ", model->latmat); for (i=0 ; i<6 ; i++) { P4VEC("wall: ", &walls[4*i]); } #endif core1 = g_slist_nth_data(cores, 0); core2 = g_slist_nth_data(cores, 1); core3 = g_slist_nth_data(cores, 2); g_assert(core1 != NULL); g_assert(core2 != NULL); g_assert(core3 != NULL); /* get cartesian normal */ ARR3SET(x1, core1->x); ARR3SET(x2, core2->x); ARR3SET(x3, core3->x); vecmat(model->latmat, x1); vecmat(model->latmat, x2); vecmat(model->latmat, x3); calc_norm(n1, x1, x2, x3); normalize(n1, 3); /* compute distance (from origin) to plane */ /* NB: sign is important */ ARR3SET(x1, core1->x); vecmat(model->latmat, x1); ARR3SET(x2, x1); ARR3MUL(x2, n1); n1[3] = x2[0] + x2[1] + x2[2]; #if DEBUG_SPATIAL_CELL_PLANE P4VEC("n1: ", n1); #endif /* compute intersections with cell walls */ vlist = NULL; for (i=0 ; i<5 ; i++) { for (j=i+1 ; j<6 ; j++) { ARR4SET(n2, &walls[4*i]); ARR4SET(n3, &walls[4*j]); if (plane_intersect(x1, n1, n2, n3)) { flag = 0; /* eliminate intersections outside the unit cell */ ARR3SET(x2, x1); vecmat(model->ilatmat, x2); for (k=3 ; k-- ; ) { /* NB: precision errors may be a factor here */ if (x2[k] > 1.0+FRACTION_TOLERANCE || x2[k] < -FRACTION_TOLERANCE) flag++; } if (!flag) { /* printf("====================================\n"); P4VEC("n2: ", n2); P4VEC("n3: ", n3); P4VEC("x1: ", x1); */ /* store the intersection point */ v = g_malloc(sizeof(struct vertex_pak)); vlist = g_slist_prepend(vlist, v); ARR3SET(v->x, x2); v->adj = NULL; /* compute facet adjacencies */ for (k=0 ; k<6 ; k++) { /* get distance of point to facets */ vector_point2plane(x2, x1, &walls[4*k]); if (VEC3MAGSQ(x2) < FRACTION_TOLERANCE) { /* printf(" + (%d)\n", k); */ v->adj = g_slist_prepend(v->adj, GINT_TO_POINTER(k)); } } } } } } k = g_slist_length(vlist); /* order the vertices (via common facets) */ if (k > 2) { spatial = spatial_new("plane", SPATIAL_GENERIC, 0, TRUE, model); v = vlist->data; spatial_vertex_add(v->x, NULL, spatial); #if DEBUG_SPATIAL_CELL_PLANE P3VEC("v: ", v->x); for (list=v->adj ; list ; list=g_slist_next(list)) { printf(" + (%d)\n", GPOINTER_TO_INT(list->data)); } #endif vlist = g_slist_remove(vlist, v); v = vertex_common_facet(v, vlist); while (v) { spatial_vertex_add(v->x, NULL, spatial); #if DEBUG_SPATIAL_CELL_PLANE P3VEC("v: ", v->x); for (list=v->adj ; list ; list=g_slist_next(list)) { printf(" + (%d)\n", GPOINTER_TO_INT(list->data)); } #endif vlist = g_slist_remove(vlist, v); v = vertex_common_facet(v, vlist); } } g_slist_free(vlist); } /**************************************/ /* spatial point definition primitive */ /**************************************/ void spatial_point_add(struct core_pak *core, struct model_pak *data) { gint reset=0; gchar *label; gdouble plane[4], x1[3], x2[3], ortho1[3], ortho2[3]; GSList *list; struct core_pak *core1, *core2; struct spatial_pak *spatial; static guint count=0; static GSList *cores=NULL; g_assert(core != NULL); g_assert(data != NULL); /* add the new atom */ cores = g_slist_append(cores, core); select_add_core(core, data); data->state++; switch( data->mode) { case DEFINE_VECTOR: if (data->state==2) { /* new vector */ label = g_strdup_printf("vector_%d", count++); spatial = spatial_new(label, SPATIAL_VECTOR, 2, FALSE, data); g_free(label); /* get the (lattice space) separation vector */ core1 = g_slist_nth_data(cores, 0); g_assert(core1 != NULL); ARR3SET(x1, core1->x); ARR3SET(x2, core->x); ARR3SUB(x2, core1->x); /* convert to real space & scale */ vecmat(data->latmat, x2); normalize(x2, 3); VEC3MUL(x2, 0.7); /* convert back to lattice space */ vecmat(data->ilatmat, x2); ARR3ADD(x2, x1); /* add the vertices */ spatial_vertex_add(x2, NULL, spatial); spatial_vertex_add(x1, NULL, spatial); /* drawing update */ coords_compute(data); sysenv.refresh_dialog=TRUE; redraw_canvas(SINGLE); reset++; } break; case DEFINE_PLANE: if (data->state == 3) { /* CURRENT */ if (data->periodic == 3) { spatial_cell_plane(cores, data); } else { /* new plane */ label = g_strdup_printf("plane_%d", count++); spatial = spatial_new(label, SPATIAL_GENERIC, 4, FALSE, data); g_free(label); core1 = g_slist_nth_data(cores, 0); core2 = g_slist_nth_data(cores, 1); g_assert(core1 != NULL); g_assert(core2 != NULL); /* compute plane normal */ calc_norm(plane, core1->rx, core2->rx, core->rx); /* vector from first to second point (NB: normalized in cartesian space) */ ARR3SET(ortho1, core2->x); ARR3SUB(ortho1, core1->x); vecmat(data->latmat, ortho1); normalize(ortho1, 3); vecmat(data->ilatmat, ortho1); /* get orthogonal vector */ crossprod(ortho2, plane, ortho1); vecmat(data->latmat, ortho2); normalize(ortho2, 3); vecmat(data->ilatmat, ortho2); /* define 4 points for the plane */ ARR3SET(x1, core1->x); ARR3ADD(x1, ortho1); ARR3ADD(x1, ortho2); spatial_vertex_add(x1, NULL, spatial); ARR3SET(x1, core1->x); ARR3ADD(x1, ortho1); ARR3SUB(x1, ortho2); spatial_vertex_add(x1, NULL, spatial); ARR3SET(x1, core1->x); ARR3SUB(x1, ortho1); ARR3SUB(x1, ortho2); spatial_vertex_add(x1, NULL, spatial); ARR3SET(x1, core1->x); ARR3SUB(x1, ortho1); ARR3ADD(x1, ortho2); spatial_vertex_add(x1, NULL, spatial); } /* drawing update */ coords_init(REDO_COORDS, data); sysenv.refresh_dialog=TRUE; redraw_canvas(SINGLE); reset++; } break; } /* completed an object */ if (reset) { for (list=cores ; list ; list=g_slist_next(list)) { core1 = list->data; select_del_core(core1, data); } g_slist_free(cores); cores=NULL; data->state = 0; } } gdis-0.90/matrix.c0000644000175000017500000006126011043221176012500 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include "gdis.h" #include "coords.h" #include "edit.h" #include "matrix.h" #include "quaternion.h" #include "model.h" #include "morph.h" #include "opengl.h" #include "render.h" #include "select.h" #include "space.h" #include "spatial.h" #include "interface.h" /* main structure */ extern struct sysenv_pak sysenv; /**********************************************************/ /* adjust a rotation matrix wrt curent camera position */ /**********************************************************/ void matrix_camera_transform(gdouble *rot, struct model_pak *model) { gdouble q[9], qi[9], mat[9]; g_assert(model != NULL); /* build component matrices */ quat_matrix(qi, camera_q(model->camera)); quat_matrix(q, camera_q(model->camera)); matrix_invert(qi); /* build transformation */ memcpy(mat, model->latmat, 9*sizeof(gdouble)); matmat(qi, mat); matmat(rot, mat); matmat(q, mat); matmat(model->ilatmat, mat); memcpy(rot, mat, 9*sizeof(gdouble)); } /**********************************************************/ /* construct a rotation matrix wrt curent camera position */ /**********************************************************/ void matrix_relative_rotation(gdouble *m, gdouble a, gint type, struct model_pak *model) { g_assert(model != NULL); /* get rotation and transform according to camera */ matrix_rotation(m, a, type); matrix_camera_transform(m, model); } /*******************************/ /* multiply two (3x3) matrices */ /*******************************/ void matmat(gdouble *mat1, gdouble *mat2) /* mat2 -> mat1*mat2 */ { gint i; gdouble tmp[9], *res, *ptr1, *ptr2; /* init */ matrix_transpose(mat2); res = tmp; ptr1 = mat1; /* mult - loop over rows of mat 1*/ for (i=3 ; i-- ; ) { ptr2 = mat2; *res = *(ptr1++) * (*(ptr2++)); *res += *(ptr1++) * (*(ptr2++)); *(res++) += *(ptr1--) * (*(ptr2++)); ptr1--; *res = *(ptr1++) * (*(ptr2++)); *res += *(ptr1++) * (*(ptr2++)); *(res++) += *(ptr1--) * (*(ptr2++)); ptr1--; *res = *(ptr1++) * (*(ptr2++)); *res += *(ptr1++) * (*(ptr2++)); *(res++) += *(ptr1++) * (*ptr2); } /* copy result to mat2 */ memcpy(mat2,tmp,9*sizeof(gdouble)); } /*******************************/ /* multiply two (4x4) matrices */ /*******************************/ void mat4mat(gdouble *mat1, gdouble *mat2) /* mat2 -> mat1*mat2 */ { gint i; gdouble tmp[16], *res, *ptr1, *ptr2; /* init */ matrix_transpose_44(mat2); res = tmp; ptr1 = mat1; /* mult - loop over rows of mat 1*/ for (i=4 ; i-- ; ) { ptr2 = mat2; *res = *(ptr1++) * (*(ptr2++)); *res += *(ptr1++) * (*(ptr2++)); *res += *(ptr1++) * (*(ptr2++)); *(res++) += *(ptr1--) * (*(ptr2++)); ptr1--; ptr1--; *res = *(ptr1++) * (*(ptr2++)); *res += *(ptr1++) * (*(ptr2++)); *res += *(ptr1++) * (*(ptr2++)); *(res++) += *(ptr1--) * (*(ptr2++)); ptr1--; ptr1--; *res = *(ptr1++) * (*(ptr2++)); *res += *(ptr1++) * (*(ptr2++)); *res += *(ptr1++) * (*(ptr2++)); *(res++) += *(ptr1--) * (*(ptr2++)); ptr1--; ptr1--; *res = *(ptr1++) * (*(ptr2++)); *res += *(ptr1++) * (*(ptr2++)); *res += *(ptr1++) * (*(ptr2++)); *(res++) += *(ptr1++) * (*ptr2); } /* copy result to mat2 */ memcpy(mat2,tmp,16*sizeof(gdouble)); return; } /****************************************/ /* transform a 3D vector by matrix mult */ /****************************************/ void vecmat(gdouble *mat, gdouble *vec) { gdouble x, y, z; gdouble *mptr=mat, *vptr=vec; /* init */ x = *vptr++; y = *vptr++; z = *vptr--; /* mult */ *(--vptr) *= *mptr++; *vptr += *mptr++ * y; *vptr++ += *mptr++ * z; *vptr = *mptr++ * x; *vptr += *mptr++ * y; *vptr++ += *mptr++ * z; *vptr = *mptr++ * x; *vptr += *mptr++ * y; *vptr += *mptr * z; } /****************************************/ /* transform a 4D vector by matrix mult */ /****************************************/ void vec4mat(gdouble *mat, gdouble *vec) { gdouble x, y, z, t; gdouble *mptr=mat, *vptr=vec; /* init */ x = *vptr++; y = *vptr++; z = *vptr++; t = *vptr--; vptr--; vptr--; /* mult */ *vptr *= *mptr++; *vptr += *mptr++ * y; *vptr += *mptr++ * z; *vptr++ += *mptr++ * t; *vptr = *mptr++ * x; *vptr += *mptr++ * y; *vptr += *mptr++ * z; *vptr++ += *mptr++ * t; *vptr = *mptr++ * x; *vptr += *mptr++ * y; *vptr += *mptr++ * z; *vptr++ += *mptr++ * t; *vptr = *mptr++ * x; *vptr += *mptr++ * y; *vptr += *mptr++ * z; *vptr += *mptr * t; } /************************************************************/ /* transform a 3D vector by matrix mult (transposed matrix) */ /************************************************************/ void vectmat(gdouble *mat, gdouble *vec) { gdouble x, y, z; gdouble *mptr=mat, *vptr=vec; /* init */ x = *vptr++; y = *vptr++; z = *vptr--; /* mult */ *(--vptr) *= *mptr++; *(++vptr) *= *mptr++; *(++vptr) *= *mptr++; vptr--; *(--vptr) += *mptr++ * y; *(++vptr) += *mptr++ * y; *(++vptr) += *mptr++ * y; vptr--; *(--vptr) += *mptr++ * z; *(++vptr) += *mptr++ * z; *(++vptr) += *mptr * z; } /*****************/ /* transpose 4x4 */ /*****************/ void matrix_transpose_44(gdouble *mat) { gdouble tmp[16], *ptr=mat; memcpy(tmp, mat, 16*sizeof(gdouble)); ptr++; *ptr++ = tmp[4]; *ptr++ = tmp[8]; *ptr++ = tmp[12]; *ptr++ = tmp[1]; ptr++; *ptr++ = tmp[9]; *ptr++ = tmp[13]; *ptr++ = tmp[2]; *ptr++ = tmp[6]; ptr++; *ptr++ = tmp[14]; *ptr++ = tmp[3]; *ptr++ = tmp[7]; *ptr = tmp[11]; } /*****************/ /* transpose 3x3 */ /*****************/ void matrix_transpose(gdouble *mat) { gdouble tmp[9], *ptr=mat; memcpy(tmp, mat, 9*sizeof(gdouble)); ptr++; *ptr++ = tmp[3]; *ptr++ = tmp[6]; *ptr++ = tmp[1]; ptr++; *ptr++ = tmp[7]; *ptr++ = tmp[2]; *ptr = tmp[5]; } void make_cofmat(gdouble *cof, gdouble *mat) { cof[0] = mat[4]*mat[8] - mat[5]*mat[7]; cof[1] = mat[5]*mat[6] - mat[3]*mat[8]; cof[2] = mat[3]*mat[7] - mat[4]*mat[6]; cof[3] = mat[2]*mat[7] - mat[1]*mat[8]; cof[4] = mat[0]*mat[8] - mat[2]*mat[6]; cof[5] = mat[1]*mat[6] - mat[0]*mat[7]; cof[6] = mat[1]*mat[5] - mat[2]*mat[4]; cof[7] = mat[2]*mat[3] - mat[0]*mat[5]; cof[8] = mat[0]*mat[4] - mat[1]*mat[3]; } /********************************/ /* new matrix inversion routine */ /********************************/ #define DEBUG_INVMAT 0 gint matrix_invert(gdouble *mat) { gdouble d, id; gdouble cof[9]; /* determinant */ d = matrix_determinant(mat); #if DEBUG_INVMAT P3MAT("input:", mat); printf("determinant = %f\n", d); #endif /* FIXME - what is a good value to use here??? */ if (fabs(d) < 0.0001) { gui_text_show(ERROR, "Bad lattice matrix."); return(1); } id = 1.0/d; /* compute co-factor matrix */ make_cofmat(cof, mat); matrix_transpose(cof); VEC3MUL(&cof[0], id); VEC3MUL(&cof[3], id); VEC3MUL(&cof[6], id); #if DEBUG_INVMAT P3MAT("inverse matrix: ", cof); #endif matmat(cof, mat); /* TODO - checks */ #if DEBUG_INVMAT P3MAT("Should be I: ", mat); #endif memcpy(mat,cof,9*sizeof(gdouble)); return(0); } /****************************/ /* general vector magnitude */ /****************************/ gdouble magnitude(gdouble *vec, gint dim) { gint i; gdouble sum=0.0; for (i=0 ; i FRACTION_TOLERANCE) cosa = dot / lenprod; /* enforce range */ cosa = CLAMP(cosa, -1.0, 1.0); return(acos(cosa)); } /*************************/ /* cross product for 3x3 */ /*************************/ void crossprod(gdouble *res, gdouble *vec1, gdouble *vec2) { *(res+0) = *(vec1+1) * *(vec2+2) - *(vec1+2) * *(vec2+1); *(res+1) = *(vec1+2) * *(vec2) - *(vec1) * *(vec2+2); *(res+2) = *(vec1) * *(vec2+1) - *(vec1+1) * *(vec2); } /***************************************************/ /* calculate normal of a plane defined by 3 points */ /***************************************************/ void calc_norm(gdouble *res, gdouble *a, gdouble *b, gdouble *c) { gdouble vec1[3], vec2[3]; /* a-b */ ARR3SET(vec1, b); ARR3SUB(vec1, a); /* a-c */ ARR3SET(vec2, c); ARR3SUB(vec2, a); /* normal */ crossprod(res, vec1, vec2); } /*********************************************/ /* calculate the distance between two points */ /*********************************************/ gdouble calc_sep(gdouble *a, gdouble *b) { gdouble x[3]; ARR3SET(x, a); ARR3SUB(x, b); return(VEC3MAG(x)); } /*****************************/ /* project vector onto plane */ /*****************************/ void proj_vop(gdouble *res, gdouble *vec, gdouble *plane_norm) { gdouble len; gdouble tmp[3]; /* project vector onto normal */ /* NB: assumes plane_norm is normalized */ ARR3SET(tmp, plane_norm); ARR3MUL(tmp, vec); len = tmp[0] + tmp[1] + tmp[2]; /* get vector to plane */ ARR3SET(tmp, plane_norm); VEC3MUL(tmp, len); /* subtract to get projected vector */ ARR3SET(res, vec); ARR3SUB(res, tmp); } /***********************/ /* determinant for 3x3 */ /***********************/ gdouble matrix_determinant(gdouble *mat) { gdouble vec1[3], vec2[3], vec3[3], tmp[3]; /* make vectors from columns */ VEC3SET(vec1, mat[0], mat[3], mat[6]); VEC3SET(vec2, mat[1], mat[4], mat[7]); VEC3SET(vec3, mat[2], mat[5], mat[8]); /* get cross product of 2 & 3 */ crossprod(tmp, vec2, vec3); /* return dot prod with 1 */ ARR3MUL(vec1, tmp); return(vec1[0]+vec1[1]+vec1[2]); } /**********************************************/ /* compute volume, assuming 3D lattice matrix */ /**********************************************/ gdouble calc_volume(gdouble *latmat) { gdouble vec[3], tmat[9]; /* NB: latmat has cell vectors in columns */ memcpy(tmat, latmat, 9*sizeof(gdouble)); matrix_transpose(tmat); /* compute volume */ crossprod(vec, &tmat[0], &tmat[3]); ARR3MUL(vec, &tmat[6]); return(fabs(vec[0]+vec[1]+vec[2])); } /****************************************************/ /* compute surface area, assuming 2D lattice matrix */ /****************************************************/ gdouble calc_area(gdouble *latmat) { gdouble a, b, c, tmat[9]; /* NB: latmat has cell vectors in columns */ memcpy(tmat, latmat, 9*sizeof(gdouble)); matrix_transpose(tmat); /* get lengths and angle between */ a = VEC3MAG(&tmat[0]); b = VEC3MAG(&tmat[3]); c = via(&tmat[0], &tmat[3], 3); /* return volume */ return(a * b * sin(c)); } /*****************************/ /* initialize a 3x3 identity */ /*****************************/ void matrix_identity(gdouble *mat) { VEC3SET(&mat[0], 1.0, 0.0, 0.0); VEC3SET(&mat[3], 0.0, 1.0, 0.0); VEC3SET(&mat[6], 0.0, 0.0, 1.0); } /************************************************************/ /* assign a transformation matrix that aligns a vector to z */ /************************************************************/ #define DEBUG_Z_ALIGNMENT 0 void matrix_z_alignment(gdouble *mat, gdouble *vec) { gdouble len, proj, iproj, n[3], mop[9]; /* default return matrix */ matrix_identity(mat); ARR3SET(n, vec); /* check */ len = VEC3MAG(n); if (len < FRACTION_TOLERANCE) { printf("matrix_z_alignment(): bad orientation vector.\n"); return; } /* normalize */ VEC3MUL(n, 1.0/len); proj = sqrt(n[0]*n[0] + n[1]*n[1]); iproj = 1.0 / proj; /* rot z -> yz plane */ if (proj > FRACTION_TOLERANCE) { VEC3SET(&mop[0], n[1]*iproj, -n[0]*iproj, 0.0); VEC3SET(&mop[3], n[0]*iproj, n[1]*iproj, 0.0); VEC3SET(&mop[6], 0.0, 0.0, 1.0); matmat(mop, mat); } /* rot x -> colinear with z */ VEC3SET(&mop[0], 1.0, 0.0, 0.0); VEC3SET(&mop[3], 0.0, n[2], -proj); VEC3SET(&mop[6], 0.0, proj, n[2]); matmat(mop, mat); #if DEBUG_Z_ALIGNMENT ARR3SET(n, vec); vecmat(mat, n); P3MAT("mat: ", mat); P3VEC("v0: ", vec); P3VEC("v1: ", n); #endif } /********************************************************/ /* arbitrary alignment, maps v1 to be co-linear with v2 */ /********************************************************/ #define DEBUG_V_ALIGNMENT 0 void matrix_v_alignment(gdouble *m1, gdouble *v1, gdouble *v2) { gdouble m2[9]; /* map v1 to z, then to v2 via inverse of v2's z alignment */ matrix_z_alignment(m1, v1); matrix_z_alignment(m2, v2); matrix_invert(m2); matmat(m2, m1); } /****************************************************/ /* construct rotation matrix about arbitrary vector */ /****************************************************/ void matrix_v_rotation(gdouble *mat, gdouble *v, gdouble angle) { gdouble m1[9], m2[9]; /* align with z */ matrix_z_alignment(m1, v); memcpy(mat, m1, 9*sizeof(gdouble)); /* rotation operation (about z) */ matrix_rotation(m2, angle, YAW); matmat(m2, mat); /* inverse z alignment */ matrix_invert(m1); matmat(m1, mat); } /****************************************************/ /* construct rotation matrix about arbitrary vector */ /****************************************************/ void matrix_v_reflection(gdouble *mat, gdouble *v) { gdouble m1[9], m2[9]; /* align with z */ matrix_z_alignment(m1, v); memcpy(mat, m1, 9*sizeof(gdouble)); /* reflection about z */ matrix_identity(m2); m2[8] = -1.0; matmat(m2, mat); /* inverse z alignment */ matrix_invert(m1); matmat(m1, mat); } /*******************************/ /* construct a rotation matrix */ /*******************************/ void matrix_rotation(gdouble *rot, gdouble da, gint type) { gdouble cosa, sina; /* precalc */ cosa = cos(da); sina = sin(da); /* dependant matrix elements */ switch(type) { case PITCH: VEC3SET(&rot[0], 1.0, 0.0, 0.0); VEC3SET(&rot[3], 0.0, cosa,-sina); VEC3SET(&rot[6], 0.0, sina, cosa); break; case YAW: VEC3SET(&rot[0], cosa, sina, 0.0); VEC3SET(&rot[3], -sina, cosa, 0.0); VEC3SET(&rot[6], 0.0, 0.0, 1.0); break; case ROLL: VEC3SET(&rot[0], cosa, 0.0,-sina); VEC3SET(&rot[3], 0.0, 1.0, 0.0); VEC3SET(&rot[6], sina, 0.0, cosa); break; case INITIAL: default: VEC3SET(&rot[0], 1.0, 0.0, 0.0); VEC3SET(&rot[3], 0.0, 1.0, 0.0); VEC3SET(&rot[6], 0.0, 0.0, 1.0); break; } } /**************************************************************/ /* get reciprocal lattice vectors from direct lattice vectors */ /**************************************************************/ #define DEBUG_RLAT 0 void matrix_reciprocal_init(struct model_pak *data) { gdouble norm; gdouble a[3], b[3], c[3]; gdouble axb[3], bxc[3], cxa[3]; #if DEBUG_RLAT P3MAT("direct lattice matrix:",data->latmat); #endif /* extract direct lattice vectors */ a[0] = data->latmat[0]; a[1] = data->latmat[3]; a[2] = data->latmat[6]; b[0] = data->latmat[1]; b[1] = data->latmat[4]; b[2] = data->latmat[7]; c[0] = data->latmat[2]; c[1] = data->latmat[5]; c[2] = data->latmat[8]; /* calc intermediate products */ crossprod(bxc, b, c); crossprod(cxa, c, a); crossprod(axb, a, b); norm = 1.0/(a[0]*bxc[0] + a[1]*bxc[1] + a[2]*bxc[2]); /* create reciprocal lattice vectors */ ARR3SET(a, bxc); ARR3SET(b, cxa); ARR3SET(c, axb); VEC3MUL(a, norm); VEC3MUL(b, norm); VEC3MUL(c, norm); /* store */ data->rlatmat[0] = a[0]; data->rlatmat[3] = a[1]; data->rlatmat[6] = a[2]; data->rlatmat[1] = b[0]; data->rlatmat[4] = b[1]; data->rlatmat[7] = b[2]; data->rlatmat[2] = c[0]; data->rlatmat[5] = c[1]; data->rlatmat[8] = c[2]; #if DEBUG_RLAT P3MAT("reciprocal lattice matrix:",data->rlatmat); #endif } /******************************************/ /* construct the unit translation vectors */ /******************************************/ #define DEBUG_XLAT 0 void matrix_lattice_init(struct model_pak *data) { gdouble n[3], v1[3], v2[3], v3[3]; gdouble b1, b2, b3, c1, c2, c3; /* use a supplied latmat, rather than generating from pbc's */ /* NB: should be in gdis style colum vector format (gulp/marvin are in rows) */ if (data->construct_pbc) { #if DEBUG_XLAT printf("constructing pbc...\n"); #endif /* get lattice vector lengths */ VEC3SET(v1, data->latmat[0], data->latmat[3], data->latmat[6]); VEC3SET(v2, data->latmat[1], data->latmat[4], data->latmat[7]); VEC3SET(v3, data->latmat[2], data->latmat[5], data->latmat[8]); /* set lengths */ data->pbc[0] = VEC3MAG(v1); data->pbc[1] = VEC3MAG(v2); data->pbc[2] = VEC3MAG(v3); /* get cell angles */ data->pbc[3] = via(v2,v3,3); data->pbc[4] = via(v1,v3,3); data->pbc[5] = via(v1,v2,3); /* NEW - handle cell angle signs */ crossprod(n, v2 ,v3); ARR3MUL(n, v3); if (n[0]+n[1]+n[2] < 0.0) data->pbc[3] *= -1.0; crossprod(n, v1 ,v3); ARR3MUL(n, v3); if (n[0]+n[1]+n[2] < 0.0) data->pbc[4] *= -1.0; crossprod(n, v1 ,v2); ARR3MUL(n, v3); if (n[0]+n[1]+n[2] < 0.0) data->pbc[5] *= -1.0; } else { #if DEBUG_XLAT printf("constructing latmat...\n"); #endif /* construct lattice matrix from the unit cell lengths & angles */ /* this basically works by using the cosine rule in conjunction */ /* with a few geometric constraints (eg normalized vectors) */ /* FIXME - correction needed for 1D case as well? */ if (data->periodic == 2) { /* lattice code requires non existent c parameter to be 1 */ data->pbc[2] = 1.0; } /* compute the translation vector for b */ b1 = cos(data->pbc[5]); b2 = sin(data->pbc[5]); b3 = 0.0; /* constrain a,b to remain on the x,y plane */ if (b2 == 0.0) { printf("matrix_lattice_init(): bad cell parameters.\n"); b2 = 1.0; } /* compute the translation vector for c */ c1 = cos(data->pbc[4]); c2 = (2.0*cos(data->pbc[3]) + b1*b1 + b2*b2 - 2.0*b1*c1 - 1.0)/(2.0*b2); c3 = sqrt(1.0 - c1*c1 - c2*c2); /* assign in rows to make it easier to scale */ /* x & a are assumed co-linear */ VEC3SET(&data->latmat[0], data->pbc[0], 0.0, 0.0); VEC3SET(&data->latmat[3], b1, b2, b3); VEC3SET(&data->latmat[6], c1, c2, c3); /* scale b & c vectors up */ VEC3MUL(&data->latmat[3], data->pbc[1]); VEC3MUL(&data->latmat[6], data->pbc[2]); /* get vectors in cols */ matrix_transpose(data->latmat); } /* update dependents */ make_axes(data); make_cell(data); memcpy(data->ilatmat, data->latmat, 9*sizeof(gdouble)); matrix_invert(data->ilatmat); matrix_reciprocal_init(data); switch(data->periodic) { case 3: data->volume = calc_volume(data->latmat); break; case 2: data->area = calc_area(data->latmat); break; } /* NEW - store angles in degrees as well as radians */ ARR3SET(data->cell_angles, &data->pbc[3]); VEC3MUL(data->cell_angles, R2D); #if DEBUG_XLAT printf("cell dimensions: [%6.2f %6.2f %6.2f] (%6.2f %6.2f %6.2f)\n", data->pbc[0], data->pbc[1], data->pbc[2], data->cell_angles[0], data->cell_angles[1], data->cell_angles[2]); P3MAT("lattice matrix:",data->latmat); #endif return; } /****************************/ /* build new lattice matrix */ /****************************/ /* v - new orientation (may need projection if model is 2D) */ /* ix - which lattice vector to replace (0-2) */ #define DEBUG_NEW_LATTICE 0 void matrix_lattice_new(gdouble *latmat, struct model_pak *model) { gint i; gint ia, ib, ic, ma, mb, mc; gdouble tmat[9], mat1[9], mat2[9]; gdouble vec[3]; GSList *list; struct core_pak *core; struct shel_pak *shel; struct model_pak *dest; /* checks */ g_assert(latmat != NULL); g_assert(model != NULL); #if DEBUG_NEW_LATTICE P3MAT("transformation matrix: :", latmat); P3MAT("old latmat:", model->latmat); #endif /* get the transformation matrix */ memcpy(tmat, latmat, 9*sizeof(gdouble)); /* transpose the source lattice matrix */ memcpy(mat1, model->latmat, 9*sizeof(gdouble)); matrix_transpose(mat1); /* get the new lattice matrix */ matmat(tmat, mat1); matrix_transpose(mat1); #if DEBUG_NEW_LATTICE P3MAT("new latmat:", mat1); #endif memcpy(mat2, mat1, 9*sizeof(gdouble)); if (matrix_invert(mat2)) { gui_text_show(ERROR, "Two or more lattice vectors are not independant."); return; } /* transformation -> new model */ dest = model_new(); dest->periodic = model->periodic; memcpy(dest->latmat, mat1, 9*sizeof(gdouble)); gulp_data_copy(model, dest); gulp_extra_copy(model, dest); /* setup repeats required to fill the new cell */ ma=mb=mc=1; /* a direction repeat */ for (i=0 ; i<3 ; i++) { /* NB: add tolerance, since precision can be a problem */ ia = (gint) (FRACTION_TOLERANCE + fabs(tmat[i])); if (ia > ma) ma = ia; } /* b direction repeat */ for (i=3 ; i<6 ; i++) { /* NB: add tolerance, since precision can be a problem */ ib = (gint) (FRACTION_TOLERANCE + fabs(tmat[i])); if (ib > mb) mb = ib; } /* c direction repeat */ for (i=6 ; i<9 ; i++) { /* NB: add tolerance, since precision can be a problem */ ic = (gint) (FRACTION_TOLERANCE + fabs(tmat[i])); if (ic > mc) mc = ic; } /* TODO - check if these values are very large - warn user */ /* TDOO - implement a correct y/n/continue? popup */ #if DEBUG_NEW_LATTICE printf("ma=%d, mb=%d, mc=%d\n", ma, mb, mc); #endif /* modify bulk energy */ dest->gulp.sbulkenergy *= ma*mb*mc; /* full loop required to cover one cell in the transformed coordinates */ for (ic=0 ; iccores ; list ; list=g_slist_next(list)) { core = dup_core(list->data); core->primary = TRUE; core->primary_core = NULL; core->orig = TRUE; ARR3ADD(core->x, vec); vecmat(model->latmat, core->x); dest->cores = g_slist_prepend(dest->cores, core); if (core->shell) { shel = core->shell; shel->primary = TRUE; shel->primary_shell = NULL; shel->orig = TRUE; ARR3ADD(shel->x, vec); vecmat(model->latmat, shel->x); dest->shels = g_slist_prepend(dest->shels, shel); } } } } } /* init new model */ dest->fractional = FALSE; dest->construct_pbc = TRUE; model_prep(dest); tree_model_add(dest); redraw_canvas(SINGLE); } /************************/ /* distinguish identity */ /************************/ gint matrix_is_identity(gdouble *mat) { if (*(mat+0) != 1.0) return(FALSE); if (*(mat+4) != 1.0) return(FALSE); if (*(mat+8) != 1.0) return(FALSE); if (*(mat+1) != 0.0) return(FALSE); if (*(mat+2) != 0.0) return(FALSE); if (*(mat+3) != 0.0) return(FALSE); if (*(mat+5) != 0.0) return(FALSE); if (*(mat+6) != 0.0) return(FALSE); if (*(mat+7) != 0.0) return(FALSE); return(TRUE); } /*************************/ /* distinguish inversion */ /*************************/ gint matrix_is_inversion(gdouble *mat) { if (*(mat+0) != -1.0) return(FALSE); if (*(mat+4) != -1.0) return(FALSE); if (*(mat+8) != -1.0) return(FALSE); if (*(mat+1) != 0.0) return(FALSE); if (*(mat+2) != 0.0) return(FALSE); if (*(mat+3) != 0.0) return(FALSE); if (*(mat+5) != 0.0) return(FALSE); if (*(mat+6) != 0.0) return(FALSE); if (*(mat+7) != 0.0) return(FALSE); return(TRUE); } /**************************************/ /* get the order of a symmetry matrix */ /**************************************/ gint matrix_order(gdouble *mat) { gint i; gdouble m1[9], m2[9]; ARR3SET(&m1[0], (mat+0)); ARR3SET(&m1[3], (mat+3)); ARR3SET(&m1[6], (mat+6)); ARR3SET(&m2[0], (mat+0)); ARR3SET(&m2[3], (mat+3)); ARR3SET(&m2[6], (mat+6)); /* keep applying until get the identity */ i=1; while(i<17) { if (matrix_is_identity(m2)) return(i); matmat(m1, m2); i++; } /* not a symmetry operator */ return(0); } /************************************************/ /* return the order if a matrix is a z rotation */ /************************************************/ /* FIXME - only does 2 fold (for defect setup) */ gint matrix_is_z_rotation(gdouble *mat) { if (*(mat+0) != -1.0) return(0); if (*(mat+1) != 0.0) return(0); if (*(mat+2) != 0.0) return(0); if (*(mat+3) != 0.0) return(0); if (*(mat+4) != -1.0) return(0); if (*(mat+5) != 0.0) return(0); if (*(mat+6) != 0.0) return(0); if (*(mat+7) != 0.0) return(0); if (*(mat+8) != 1.0) return(0); return(2); } gdis-0.90/gdis.elements0000644000175000017500000011640507721346034013527 0ustar seansean%gdis_elem symbol: X name: Dummy number: 0 weight: 0.000000 cova: 0.100000 vdw: 1.000000 charge: 0.000000 colour: 0 0 65535 %gdis_end %gdis_elem symbol: H name: Hydrogen number: 1 weight: 1.007900 cova: 0.330000 vdw: 1.170000 charge: 1.000000 colour: 65535 65535 65535 %gdis_end %gdis_elem symbol: He name: Helium number: 2 weight: 4.002600 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 65535 65535 65535 %gdis_end %gdis_elem symbol: Li name: Lithium number: 3 weight: 6.941000 cova: 0.680000 vdw: 1.010000 charge: 1.000000 colour: 30000 52600 60600 %gdis_end %gdis_elem symbol: Be name: Beryllium number: 4 weight: 9.012200 cova: 0.350000 vdw: 0.520000 charge: 1.000000 colour: 5000 35700 50600 %gdis_end %gdis_elem symbol: B name: Boron number: 5 weight: 10.811000 cova: 0.820000 vdw: 1.700000 charge: 3.000000 colour: 65535 40700 64300 %gdis_end %gdis_elem symbol: C name: Carbon number: 6 weight: 12.011000 cova: 0.770000 vdw: 1.750000 charge: 4.000000 colour: 35500 60570 39600 %gdis_end %gdis_elem symbol: N name: Nitrogen number: 7 weight: 14.006700 cova: 0.750000 vdw: 1.550000 charge: -3.000000 colour: 53500 30300 65535 %gdis_end %gdis_elem symbol: O name: Oxygen number: 8 weight: 15.999400 cova: 0.730000 vdw: 1.400000 charge: -2.000000 colour: 65535 20000 16000 %gdis_end %gdis_elem symbol: F name: Fluorine number: 9 weight: 18.998400 cova: 0.720000 vdw: 1.300000 charge: -1.000000 colour: 22600 61600 53500 %gdis_end %gdis_elem symbol: Ne name: Neon number: 10 weight: 20.179701 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 65535 65535 65535 %gdis_end %gdis_elem symbol: Na name: Sodium number: 11 weight: 22.989799 cova: 0.970000 vdw: 1.450000 charge: 1.000000 colour: 30000 52600 60600 %gdis_end %gdis_elem symbol: Mg name: Magnesium number: 12 weight: 24.305000 cova: 1.100000 vdw: 1.640000 charge: 2.000000 colour: 5000 35700 50600 %gdis_end %gdis_elem symbol: Al name: Aluminum number: 13 weight: 26.981501 cova: 1.180000 vdw: 2.010000 charge: 3.000000 colour: 22600 61600 53500 %gdis_end %gdis_elem symbol: Si name: Silicon number: 14 weight: 28.085501 cova: 1.110000 vdw: 2.000000 charge: 4.000000 colour: 65535 40700 64300 %gdis_end %gdis_elem symbol: P name: Phosphorus number: 15 weight: 30.973801 cova: 1.060000 vdw: 1.900000 charge: 5.000000 colour: 65535 56950 49000 %gdis_end %gdis_elem symbol: S name: Sulfur number: 16 weight: 32.066002 cova: 1.020000 vdw: 1.800000 charge: 6.000000 colour: 65300 65535 38150 %gdis_end %gdis_elem symbol: Cl name: Chlorine number: 17 weight: 35.452702 cova: 0.990000 vdw: 1.770000 charge: -1.000000 colour: 22600 61600 53500 %gdis_end %gdis_elem symbol: Ar name: Argon number: 18 weight: 39.948002 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 65535 65535 65535 %gdis_end %gdis_elem symbol: K name: Potassium number: 19 weight: 39.098301 cova: 1.330000 vdw: 1.990000 charge: 1.000000 colour: 30000 52600 60600 %gdis_end %gdis_elem symbol: Ca name: Calcium number: 20 weight: 40.077999 cova: 0.990000 vdw: 1.480000 charge: 2.000000 colour: 5000 35700 50600 %gdis_end %gdis_elem symbol: Sc name: Scandium number: 21 weight: 44.955898 cova: 1.440000 vdw: 2.150000 charge: 3.000000 colour: 42300 61000 48600 %gdis_end %gdis_elem symbol: Ti name: Titanium number: 22 weight: 47.880001 cova: 1.470000 vdw: 2.190000 charge: 4.000000 colour: 42300 61000 48600 %gdis_end %gdis_elem symbol: V name: Vanadium number: 23 weight: 50.941502 cova: 1.330000 vdw: 1.990000 charge: 4.000000 colour: 42300 61000 48600 %gdis_end %gdis_elem symbol: Cr name: Chromium number: 24 weight: 51.996101 cova: 1.350000 vdw: 2.010000 charge: 3.000000 colour: 42300 61000 48600 %gdis_end %gdis_elem symbol: Mn name: Manganese number: 25 weight: 54.938000 cova: 1.350000 vdw: 2.010000 charge: 2.000000 colour: 42300 61000 48600 %gdis_end %gdis_elem symbol: Fe name: Iron number: 26 weight: 55.847000 cova: 1.340000 vdw: 2.000000 charge: 3.000000 colour: 42300 61000 48600 %gdis_end %gdis_elem symbol: Co name: Cobalt number: 27 weight: 58.933201 cova: 1.330000 vdw: 1.990000 charge: 2.000000 colour: 42300 61000 48600 %gdis_end %gdis_elem symbol: Ni name: Nickel number: 28 weight: 58.693401 cova: 1.500000 vdw: 1.810000 charge: 2.000000 colour: 42300 61000 48600 %gdis_end %gdis_elem symbol: Cu name: Copper number: 29 weight: 63.546001 cova: 1.520000 vdw: 1.540000 charge: 2.000000 colour: 42300 61000 48600 %gdis_end %gdis_elem symbol: Zn name: Zinc number: 30 weight: 65.389999 cova: 1.450000 vdw: 2.160000 charge: 2.000000 colour: 42300 61000 48600 %gdis_end %gdis_elem symbol: Ga name: Gallium number: 31 weight: 69.723000 cova: 1.220000 vdw: 1.820000 charge: 3.000000 colour: 22600 61600 53500 %gdis_end %gdis_elem symbol: Ge name: Germanium number: 32 weight: 72.610001 cova: 1.170000 vdw: 1.750000 charge: 4.000000 colour: 22600 61600 53500 %gdis_end %gdis_elem symbol: As name: Arsenic number: 33 weight: 74.921600 cova: 1.210000 vdw: 2.200000 charge: 3.000000 colour: 65535 40700 64300 %gdis_end %gdis_elem symbol: Se name: Selenium number: 34 weight: 78.959999 cova: 1.220000 vdw: 2.000000 charge: 4.000000 colour: 65535 52860 59880 %gdis_end %gdis_elem symbol: Br name: Bromine number: 35 weight: 79.903999 cova: 1.210000 vdw: 1.950000 charge: -1.000000 colour: 58600 44600 32200 %gdis_end %gdis_elem symbol: Kr name: Krypton number: 36 weight: 83.800003 cova: 1.890000 vdw: 2.820000 charge: 0.000000 colour: 65535 65535 65535 %gdis_end %gdis_elem symbol: Rb name: Rubidium number: 37 weight: 85.467796 cova: 1.470000 vdw: 2.190000 charge: 1.000000 colour: 30000 52600 60600 %gdis_end %gdis_elem symbol: Sr name: Strontium number: 38 weight: 87.620003 cova: 1.120000 vdw: 1.670000 charge: 2.000000 colour: 5000 35700 50600 %gdis_end %gdis_elem symbol: Y name: Yttrium number: 39 weight: 88.905899 cova: 1.780000 vdw: 2.660000 charge: 3.000000 colour: 7100 52600 54100 %gdis_end %gdis_elem symbol: Zr name: Zirconium number: 40 weight: 91.223999 cova: 1.560000 vdw: 2.330000 charge: 4.000000 colour: 7100 52600 54100 %gdis_end %gdis_elem symbol: Nb name: Niobium number: 41 weight: 92.906403 cova: 1.480000 vdw: 2.210000 charge: 4.000000 colour: 7100 52600 54100 %gdis_end %gdis_elem symbol: Mo name: Molybdenum number: 42 weight: 95.940002 cova: 1.470000 vdw: 2.190000 charge: 4.000000 colour: 7100 52600 54100 %gdis_end %gdis_elem symbol: Tc name: Technetium number: 43 weight: 97.907204 cova: 1.350000 vdw: 2.010000 charge: 7.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Ru name: Ruthenium number: 44 weight: 101.070000 cova: 1.400000 vdw: 2.090000 charge: 4.000000 colour: 7100 52600 54100 %gdis_end %gdis_elem symbol: Rh name: Rhodium number: 45 weight: 102.905502 cova: 1.450000 vdw: 2.160000 charge: 3.000000 colour: 7100 52600 54100 %gdis_end %gdis_elem symbol: Pd name: Palladium number: 46 weight: 106.419998 cova: 1.500000 vdw: 2.240000 charge: 4.000000 colour: 7100 52600 54100 %gdis_end %gdis_elem symbol: Ag name: Silver number: 47 weight: 107.868202 cova: 1.590000 vdw: 2.370000 charge: 2.000000 colour: 7100 52600 54100 %gdis_end %gdis_elem symbol: Cd name: Cadmium number: 48 weight: 112.411003 cova: 1.690000 vdw: 2.520000 charge: 2.000000 colour: 7100 52600 54100 %gdis_end %gdis_elem symbol: In name: Indium number: 49 weight: 114.818001 cova: 1.630000 vdw: 2.430000 charge: 3.000000 colour: 22600 61600 53500 %gdis_end %gdis_elem symbol: Sn name: Tin number: 50 weight: 118.709999 cova: 1.460000 vdw: 2.180000 charge: 2.000000 colour: 22600 61600 53500 %gdis_end %gdis_elem symbol: Sb name: Antimony number: 51 weight: 121.760002 cova: 1.460000 vdw: 2.170000 charge: 3.000000 colour: 22600 61600 53500 %gdis_end %gdis_elem symbol: Te name: Tellurium number: 52 weight: 127.599998 cova: 1.470000 vdw: 2.200000 charge: 4.000000 colour: 65535 40700 64300 %gdis_end %gdis_elem symbol: I name: Iodine number: 53 weight: 126.904503 cova: 1.330000 vdw: 2.100000 charge: -1.000000 colour: 61900 18300 65535 %gdis_end %gdis_elem symbol: Xe name: Xenon number: 54 weight: 131.289993 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 65535 65535 65535 %gdis_end %gdis_elem symbol: Cs name: Cesium number: 55 weight: 132.905396 cova: 1.670000 vdw: 2.490000 charge: 1.000000 colour: 30000 52600 60600 %gdis_end %gdis_elem symbol: Ba name: Barium number: 56 weight: 137.326996 cova: 1.340000 vdw: 2.000000 charge: 2.000000 colour: 5000 35700 50600 %gdis_end %gdis_elem symbol: La name: Lanthanum number: 57 weight: 138.905502 cova: 1.870000 vdw: 2.790000 charge: 3.000000 colour: 3600 54100 40600 %gdis_end %gdis_elem symbol: Ce name: Cerium number: 58 weight: 140.115005 cova: 1.830000 vdw: 2.730000 charge: 3.000000 colour: 3600 54100 40600 %gdis_end %gdis_elem symbol: Pr name: Praseodymium number: 59 weight: 140.907593 cova: 1.820000 vdw: 2.720000 charge: 3.000000 colour: 3600 54100 40600 %gdis_end %gdis_elem symbol: Nd name: Neodymium number: 60 weight: 144.240005 cova: 1.810000 vdw: 2.700000 charge: 3.000000 colour: 3600 54100 40600 %gdis_end %gdis_elem symbol: Pm name: Promethium number: 61 weight: 144.912704 cova: 1.800000 vdw: 2.690000 charge: 3.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Sm name: Samarium number: 62 weight: 150.360001 cova: 1.800000 vdw: 2.690000 charge: 3.000000 colour: 3600 54100 40600 %gdis_end %gdis_elem symbol: Eu name: Europium number: 63 weight: 151.964996 cova: 1.990000 vdw: 2.970000 charge: 3.000000 colour: 3600 54100 40600 %gdis_end %gdis_elem symbol: Gd name: Gadolinium number: 64 weight: 157.250000 cova: 1.790000 vdw: 2.670000 charge: 3.000000 colour: 3600 54100 40600 %gdis_end %gdis_elem symbol: Tb name: Terbium number: 65 weight: 158.925293 cova: 1.760000 vdw: 2.630000 charge: 3.000000 colour: 3600 54100 40600 %gdis_end %gdis_elem symbol: Dy name: Dysprosium number: 66 weight: 162.500000 cova: 1.750000 vdw: 2.610000 charge: 3.000000 colour: 3600 54100 40600 %gdis_end %gdis_elem symbol: Ho name: Holmium number: 67 weight: 164.930298 cova: 1.740000 vdw: 2.600000 charge: 3.000000 colour: 3600 54100 40600 %gdis_end %gdis_elem symbol: Er name: Erbium number: 68 weight: 167.259995 cova: 1.730000 vdw: 2.580000 charge: 3.000000 colour: 3600 54100 40600 %gdis_end %gdis_elem symbol: Tm name: Thulium number: 69 weight: 168.934204 cova: 1.720000 vdw: 2.570000 charge: 3.000000 colour: 3600 54100 40600 %gdis_end %gdis_elem symbol: Yb name: Ytterbium number: 70 weight: 173.039993 cova: 1.940000 vdw: 2.900000 charge: 3.000000 colour: 3600 54100 40600 %gdis_end %gdis_elem symbol: Lu name: Lutetium number: 71 weight: 174.966995 cova: 1.720000 vdw: 2.570000 charge: 3.000000 colour: 3600 54100 40600 %gdis_end %gdis_elem symbol: Hf name: Hafnium number: 72 weight: 178.490005 cova: 1.570000 vdw: 2.340000 charge: 4.000000 colour: 6600 35000 44000 %gdis_end %gdis_elem symbol: Ta name: Tantalum number: 73 weight: 180.947906 cova: 1.430000 vdw: 2.130000 charge: 5.000000 colour: 6600 35000 44000 %gdis_end %gdis_elem symbol: W name: Tungsten number: 74 weight: 183.839996 cova: 1.370000 vdw: 2.040000 charge: 4.000000 colour: 6600 35000 44000 %gdis_end %gdis_elem symbol: Re name: Rhenium number: 75 weight: 186.207001 cova: 1.350000 vdw: 2.010000 charge: 4.000000 colour: 6600 35000 44000 %gdis_end %gdis_elem symbol: Os name: Osmium number: 76 weight: 190.229996 cova: 1.370000 vdw: 2.040000 charge: 4.000000 colour: 6600 35000 44000 %gdis_end %gdis_elem symbol: Ir name: Iridium number: 77 weight: 192.220001 cova: 1.320000 vdw: 1.970000 charge: 4.000000 colour: 6600 35000 44000 %gdis_end %gdis_elem symbol: Pt name: Platinum number: 78 weight: 195.080002 cova: 1.500000 vdw: 1.970000 charge: 4.000000 colour: 6600 35000 44000 %gdis_end %gdis_elem symbol: Au name: Gold number: 79 weight: 196.966507 cova: 1.500000 vdw: 1.850000 charge: 3.000000 colour: 6600 35000 44000 %gdis_end %gdis_elem symbol: Hg name: Mercury number: 80 weight: 200.589996 cova: 1.700000 vdw: 1.900000 charge: 2.000000 colour: 6600 35000 44000 %gdis_end %gdis_elem symbol: Tl name: Thallium number: 81 weight: 204.383301 cova: 1.550000 vdw: 2.310000 charge: 3.000000 colour: 22600 61600 53500 %gdis_end %gdis_elem symbol: Pb name: Lead number: 82 weight: 207.199997 cova: 1.540000 vdw: 2.300000 charge: 2.000000 colour: 22600 61600 53500 %gdis_end %gdis_elem symbol: Bi name: Bismuth number: 83 weight: 208.980392 cova: 1.540000 vdw: 2.300000 charge: 3.000000 colour: 22600 61600 53500 %gdis_end %gdis_elem symbol: Po name: Polonium number: 84 weight: 208.982407 cova: 1.680000 vdw: 2.510000 charge: 6.000000 colour: 22600 61600 53500 %gdis_end %gdis_elem symbol: At name: Astatine number: 85 weight: 209.987106 cova: 0.000000 vdw: 0.000000 charge: 7.000000 colour: 65535 40700 64300 %gdis_end %gdis_elem symbol: Rn name: Radon number: 86 weight: 222.017593 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 65535 65535 65535 %gdis_end %gdis_elem symbol: Fr name: Francium number: 87 weight: 223.019699 cova: 0.000000 vdw: 0.000000 charge: 1.000000 colour: 30000 52600 60600 %gdis_end %gdis_elem symbol: Ra name: Radium number: 88 weight: 226.025406 cova: 1.900000 vdw: 2.840000 charge: 2.000000 colour: 5000 35700 50600 %gdis_end %gdis_elem symbol: Ac name: Actinium number: 89 weight: 227.027802 cova: 1.880000 vdw: 2.810000 charge: 3.000000 colour: 740 41700 35600 %gdis_end %gdis_elem symbol: Th name: Thorium number: 90 weight: 232.038101 cova: 1.790000 vdw: 2.670000 charge: 4.000000 colour: 740 41700 35600 %gdis_end %gdis_elem symbol: Pa name: Protactinium number: 91 weight: 231.035904 cova: 1.610000 vdw: 2.400000 charge: 3.000000 colour: 740 41700 35600 %gdis_end %gdis_elem symbol: U name: Uranium number: 92 weight: 238.028900 cova: 1.580000 vdw: 2.360000 charge: 4.000000 colour: 740 41700 35600 %gdis_end %gdis_elem symbol: Np name: Neptunium number: 93 weight: 237.048004 cova: 1.550000 vdw: 2.310000 charge: 3.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Pu name: Plutonium number: 94 weight: 244.064194 cova: 1.530000 vdw: 2.280000 charge: 3.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Am name: Americium number: 95 weight: 243.061401 cova: 1.510000 vdw: 2.250000 charge: 3.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Cm name: Curium number: 96 weight: 247.070297 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Bk name: Berkelium number: 97 weight: 247.070297 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Cf name: Californium number: 98 weight: 251.079605 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Es name: Einsteinium number: 99 weight: 252.082993 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Fm name: Fermium number: 100 weight: 257.095093 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Md name: Mendelevium number: 101 weight: 258.100006 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: No name: Nobelium number: 102 weight: 259.100891 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Lr name: Lawrencium number: 103 weight: 262.109985 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Rf name: Rutherfordium number: 104 weight: 261.000000 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Db name: Dubnium number: 105 weight: 262.000000 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Sg name: Seaborgium number: 106 weight: 266.000000 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Bh name: Bohrium number: 107 weight: 264.000000 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Hs name: Hassium number: 108 weight: 269.000000 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 53100 53100 53100 %gdis_end %gdis_elem symbol: Mt name: Meitnerium number: 109 weight: 268.000000 cova: 0.000000 vdw: 0.000000 charge: 0.000000 colour: 53100 53100 53100 %gdis_end %gdis_sfc Rh3+ 18.878500 0.764252 14.125900 7.844380 3.325150 21.248699 -6.198900 -0.010360 11.867800 0.593000 45.000000 Ce4+ 20.323500 2.659410 19.818600 0.218850 12.123300 15.799200 0.144583 62.235500 1.591800 0.484000 58.000000 U4+ 35.371498 0.516598 22.532600 3.050530 12.029100 12.572300 4.798400 23.458200 13.267100 0.842000 92.000000 Mo6+ 17.887100 1.036490 11.175000 8.480610 6.578910 0.058881 0.000000 0.000000 0.344941 0.695000 42.000000 Bi5+ 33.536400 0.916540 25.094601 0.039042 19.249701 5.714140 6.915550 12.828500 -6.799400 0.853300 83.000000 Tm3+ 27.308300 1.787110 19.332001 0.136974 12.333900 7.967780 5.383480 17.292200 1.639290 0.705000 69.000000 Fr 35.929901 0.646453 23.054701 4.176190 12.143900 23.105200 2.112530 150.645004 13.724700 0.000000 87.000000 C. 2.260690 22.690701 1.561650 0.656665 1.050750 9.756180 0.839259 55.594898 0.286977 0.664800 6.000000 Al 6.420200 3.038700 1.900200 0.742600 1.593600 31.547199 1.964600 85.088600 1.115100 0.344900 13.000000 Pt2+ 29.842899 1.329270 16.722401 7.389790 13.215300 0.263297 6.352340 22.942600 9.853290 0.950000 78.000000 O2- 4.191600 12.857300 1.639690 4.172360 1.526730 47.017899 -20.306999 -0.014040 21.941200 0.580500 8.000000 Am 36.670601 0.483629 24.099199 3.206470 17.341499 14.313600 3.493310 102.273003 13.359200 0.830000 95.000000 Ca2+ 15.634800 -0.007400 7.951800 0.608900 8.437200 10.311600 0.853700 25.990499 -14.875000 0.490000 20.000000 Lu3+ 28.462799 1.682160 18.121000 0.142292 12.842900 7.337270 5.594150 16.353500 2.975730 0.730000 71.000000 La 20.577999 2.948170 19.599001 0.244475 11.372700 18.772600 3.287190 133.123993 2.146780 0.827000 57.000000 Ir3+ 30.415600 1.343230 15.862000 7.109090 13.614500 0.204633 5.820080 20.325399 8.279030 1.060000 77.000000 Hg1+ 25.085300 1.395070 18.497299 7.651050 16.888300 0.443378 6.482160 28.226200 12.020500 1.266000 80.000000 Ar 7.484500 0.907200 6.772300 14.840700 0.653900 43.898300 1.644200 33.392899 1.444500 0.188400 18.000000 As 16.672300 2.634500 6.070100 0.264700 3.431300 12.947900 4.277900 47.797199 2.531000 0.658000 33.000000 Ge4+ 12.917200 2.537180 6.700030 0.205855 6.067910 5.479130 0.859041 11.603000 1.455720 0.819300 32.000000 Pd4+ 19.249300 0.683839 14.790000 7.148330 2.892890 17.914400 -7.949200 0.005127 13.017400 0.591000 46.000000 At 35.316299 0.685870 19.021099 3.974580 9.498870 11.382400 7.425180 45.471500 13.710800 0.000000 85.000000 Mg2+ 3.498800 2.167600 3.837800 4.754200 1.328400 0.185000 0.849700 10.141100 0.485300 0.537500 12.000000 Au 16.881901 0.461100 18.591299 8.621600 25.558201 1.482600 5.860000 36.395599 12.065800 0.763000 79.000000 Li 1.128200 3.954600 0.750800 1.052400 0.617500 85.390503 0.465300 168.261002 0.037700 -0.203000 3.000000 Ga 15.235400 3.066900 6.700600 0.241200 4.359100 10.780500 2.962300 61.413502 1.718900 0.729000 31.000000 Np3+ 35.707401 0.502322 22.613001 3.038070 12.989800 12.144900 5.432270 25.492800 13.254400 1.060000 93.000000 Fe3+ 11.176400 4.614700 7.386300 0.300500 3.394800 11.672900 0.072400 38.556599 0.970700 0.954000 26.000000 Pu3+ 35.840000 0.484938 22.716900 2.961180 13.580700 11.533100 5.660160 24.399200 13.199100 0.750000 94.000000 Gd 25.070900 2.253410 19.079800 0.181951 13.851800 12.933100 3.545450 101.398003 2.419600 0.950000 64.000000 Tl3+ 30.869499 1.100800 18.384100 6.538520 11.932800 0.219074 7.005740 17.211399 9.802700 0.879000 81.000000 Ge 16.081600 2.850900 6.374700 0.251600 3.706800 11.446800 3.683000 54.762501 2.131300 0.819300 32.000000 La3+ 20.248899 2.920700 19.376301 0.250698 11.632300 17.821100 0.336048 54.945301 2.408600 0.827000 57.000000 Ba 20.336100 3.216000 19.297001 0.275600 10.888000 20.207300 2.695900 167.201996 2.773100 0.525000 56.000000 Tb3+ 24.955900 2.056010 20.327101 0.149525 12.247100 10.049900 3.773000 21.277300 0.691967 0.738000 65.000000 Be 1.591900 43.642700 1.127800 1.862300 0.539100 103.483002 0.702900 0.542000 0.038500 0.779000 4.000000 Lu 28.947599 1.901820 15.220800 9.985190 15.100000 0.261033 3.716010 84.329803 7.976280 0.730000 71.000000 Rh4+ 18.854500 0.760825 13.980600 7.624360 2.534640 19.331699 -5.652600 -0.010200 11.283500 0.593000 45.000000 Ra 35.763000 0.616341 22.906401 3.871350 12.473900 19.988701 3.210970 142.324997 13.621100 1.000000 88.000000 Rb 17.178400 1.788800 9.643500 17.315100 5.139900 0.274800 1.529200 164.934006 3.487300 0.708000 37.000000 Bi 33.368900 0.704000 12.951000 2.923800 16.587700 8.793700 6.469200 48.009300 13.578200 0.853300 83.000000 Sb2+ 18.975500 0.467196 18.933001 5.221260 5.107890 19.590200 0.288753 55.511299 4.696260 0.564000 51.000000 Re 28.762100 1.671910 15.718900 9.092270 14.556400 0.350500 5.441740 52.086102 10.472000 0.920000 75.000000 Au1+ 28.010900 1.353210 17.820400 7.739500 14.335900 0.356752 6.580770 26.404301 11.229900 0.763000 79.000000 Rh 19.295700 0.751536 14.350100 8.217580 4.734250 25.874901 1.289180 98.606201 5.328000 0.593000 45.000000 Ti2+ 9.114230 7.524300 7.621740 0.457585 2.279300 19.536100 0.087899 61.655800 0.897155 -0.343800 22.000000 I1- 20.233200 4.357900 18.997000 0.381500 7.806900 29.525900 2.886800 84.930397 4.071400 0.528000 53.000000 Rb1+ 17.581600 1.713900 7.659800 14.795700 5.898100 0.160300 2.781700 31.208700 2.078200 0.708000 37.000000 Sm3+ 23.150400 2.316410 20.259899 0.174081 11.920200 12.157100 2.714880 24.824200 0.954586 0.800000 62.000000 Ir4+ 30.705799 1.309230 15.551200 6.719830 14.232600 0.167252 5.536720 17.491100 6.968240 1.060000 77.000000 Hg2+ 29.564100 1.211520 18.059999 7.056390 12.837400 0.284738 6.899120 20.748199 10.626800 1.266000 80.000000 Br 17.178900 2.172300 5.235800 16.579599 5.637700 0.260900 3.985100 41.432800 2.955700 0.679000 35.000000 Cr2+ 9.540340 5.660780 7.750900 0.344261 3.582740 13.307500 0.509107 32.422401 0.616898 0.363500 24.000000 Ba2+ 20.180700 3.213670 19.113600 0.283310 10.905400 20.055799 0.773634 51.745998 3.029020 0.525000 56.000000 Rn 35.563099 0.663100 21.281601 4.069100 8.003700 14.042200 7.443300 44.247299 13.690500 0.000000 86.000000 Mg 5.420400 2.827500 2.173500 79.261101 1.226900 0.380800 2.307300 7.193700 0.858400 0.537500 12.000000 Zr4+ 18.166800 1.214800 10.056200 10.148300 1.011180 21.605400 -2.647900 -0.102760 9.414540 0.716000 40.000000 Na1+ 3.256500 2.667100 3.936200 6.115300 1.399800 0.200100 1.003200 14.039000 0.404000 0.363000 11.000000 Pb4+ 32.124401 1.005660 18.800301 6.109260 12.017500 0.147041 6.968860 14.714000 8.084280 0.940100 82.000000 Sc3+ 13.400800 0.298540 8.027300 7.962900 1.659430 -0.286040 1.579360 16.066200 -6.666700 1.230000 21.000000 Np4+ 35.510300 0.498626 22.578699 2.966270 12.776600 11.948400 4.921590 22.750200 13.211600 1.060000 93.000000 Ga3+ 12.692000 2.812620 6.698830 0.227890 6.066920 6.364410 1.006600 14.412200 1.535450 0.729000 31.000000 Pu4+ 35.649300 0.481422 22.646000 2.890200 13.359500 11.316000 5.188310 21.830099 13.155500 0.750000 94.000000 Ru 19.267401 0.808520 12.918200 8.434670 4.863370 24.799700 1.567560 94.292801 5.378740 0.721000 44.000000 He 0.873400 9.103700 0.630900 3.356800 0.311200 22.927601 0.178000 0.982100 0.006400 0.326000 2.000000 Br1- 17.171801 2.205900 6.333800 19.334499 5.575400 0.287100 3.727200 58.153500 3.177600 0.679000 35.000000 Zn2+ 11.971900 2.994600 7.386200 0.203100 6.466800 7.082600 1.394000 18.099501 0.780700 0.568000 30.000000 Mn 11.281900 5.340900 7.357300 0.343200 3.019300 17.867399 2.244100 83.754303 1.089600 -0.373000 25.000000 Hf 29.143999 1.832620 15.172600 9.599900 14.758600 0.275116 4.300130 72.028999 8.581540 0.770000 72.000000 Mo 3.702500 0.277200 17.235600 1.095800 12.887600 11.004000 3.742900 61.658401 4.387500 0.695000 42.000000 Hg 20.680901 0.545000 19.041700 8.448400 21.657499 1.572900 5.967600 38.324600 12.608900 1.266000 80.000000 Sn4+ 18.933300 5.764000 19.713100 0.465500 3.418200 14.004900 0.019300 -0.758300 3.918200 0.622800 50.000000 Ca 8.626600 10.442100 7.387300 0.659900 1.589900 85.748398 1.021100 178.436996 1.375100 0.490000 20.000000 Mn2+ 10.806100 5.279600 7.362000 0.343500 3.526800 14.343000 0.218400 41.323502 1.087400 -0.373000 25.000000 Nd3+ 21.961000 2.527220 19.933901 0.199237 12.120000 14.178300 1.510310 30.871700 1.475880 0.769000 60.000000 Cd 19.221399 0.594600 17.644400 6.908900 4.461000 24.700800 1.602900 87.482498 5.069400 0.500000 48.000000 Xe 20.293301 3.928200 19.029800 0.344000 8.976700 26.465900 1.990000 64.265800 3.711800 0.489000 54.000000 Ce 21.167101 2.812190 19.769501 0.226836 11.851300 17.608299 3.330490 127.112999 1.862640 0.484000 58.000000 Ho 26.904900 2.070510 17.294001 0.197940 14.558300 11.440700 3.638370 92.656601 4.567960 0.808000 67.000000 U6+ 34.850899 0.507079 22.758400 2.890300 14.009900 13.176700 1.214570 25.201700 13.166500 0.842000 92.000000 V2+ 10.106000 6.881800 7.354100 0.440900 2.288400 20.300400 0.022300 115.122002 1.229800 -0.038200 23.000000 Sb 19.641800 5.303400 19.045500 0.460700 5.037100 27.907400 2.682700 75.282501 4.590900 0.564000 51.000000 Sc 9.189000 9.021300 7.367900 0.572900 1.640900 136.108002 1.468000 51.353100 1.332900 1.230000 21.000000 B 2.054500 23.218500 1.332600 1.021000 1.097900 60.349800 0.706800 0.140300 -0.193200 0.535000 5.000000 Se 17.000601 2.409800 5.819600 0.272600 3.973100 15.237200 4.354300 43.816299 2.840900 0.797000 34.000000 Cl 11.460400 0.010400 7.196400 1.166200 6.255600 18.519400 1.645500 47.778400 -9.557400 0.957900 17.000000 Pt4+ 30.961201 1.248130 15.982900 6.608340 13.734800 0.168640 5.920340 16.939199 7.395340 0.950000 78.000000 C 2.310000 20.843901 1.020000 10.207500 1.588600 0.568700 0.865000 51.651199 0.215600 0.664800 6.000000 Cm 36.648800 0.465154 24.409599 3.089970 17.399000 13.434600 4.216650 88.483398 13.288700 0.950000 96.000000 D 0.489918 20.659300 0.262003 7.740390 0.196767 49.551899 0.049879 2.201590 0.001305 0.667400 1.000000 Co 12.284100 4.279100 7.340900 0.278400 4.003400 13.535900 2.348800 71.169197 1.011800 0.253000 27.000000 Pr3+ 21.372700 2.645200 19.749100 0.214299 12.132900 15.323000 0.975180 36.406502 1.771320 0.445000 59.000000 Na 4.762600 3.285000 3.173600 8.842200 1.267400 0.313600 1.112800 129.423996 0.676000 0.363000 11.000000 F 3.539200 10.282500 2.641200 4.294400 1.517000 0.261500 1.024300 26.147600 0.277600 0.565000 9.000000 Ti3+ 17.734400 0.220610 8.738160 7.047160 5.256910 -0.157620 1.921340 15.976800 -14.652000 -0.343800 22.000000 Si 6.291500 2.438600 3.035300 32.333698 1.989100 0.678500 1.541000 81.693703 1.140700 0.414900 14.000000 Mo3+ 21.166401 0.014734 18.201700 1.030310 11.742300 9.536590 2.309510 26.630699 -14.421000 0.695000 42.000000 Nb 17.614201 1.188650 12.014400 11.766000 4.041830 0.204785 3.533460 69.795700 3.755910 0.705400 41.000000 H 0.493002 10.510900 0.322912 26.125700 0.140191 3.142360 0.040810 57.799702 0.003038 -0.374100 1.000000 Cr 10.640600 6.103800 7.353700 0.392000 3.324000 20.262600 1.492200 98.739899 1.183200 0.363500 24.000000 I 20.147200 4.347000 18.994900 0.381400 7.513800 27.766001 2.273500 66.877602 4.071200 0.528000 53.000000 Cs 20.389200 3.569000 19.106199 0.310700 10.662000 24.387899 1.495300 213.904007 3.335200 0.542000 55.000000 Nd 22.684500 2.662480 19.684700 0.210628 12.774000 15.885000 2.851370 137.903000 1.984860 0.769000 60.000000 Cr3+ 9.680900 5.594630 7.811360 0.334393 2.876030 12.828800 0.113575 32.876099 0.518275 0.363500 24.000000 Ne 3.955300 8.404200 3.112500 3.426200 1.454600 0.230600 1.125100 21.718399 0.351500 0.455000 10.000000 Sm 24.004200 2.472740 19.425800 0.196451 13.439600 14.399600 2.896040 128.007004 2.209630 0.800000 62.000000 Sn 19.188900 5.830300 19.100500 0.503100 4.458500 26.890900 2.466300 83.957100 4.782100 0.622800 50.000000 Cu 13.338000 3.582800 7.167600 0.247000 5.615800 11.396600 1.673500 64.812599 1.191000 0.771800 29.000000 K 8.218600 12.794900 7.439800 0.774800 1.051900 213.186996 0.865900 41.684101 1.422800 0.367000 19.000000 In3+ 19.104500 0.551522 18.110800 6.324700 3.788970 17.359501 0.000000 0.000000 4.996350 0.406000 49.000000 H1- 0.897661 53.136799 0.565616 15.187000 0.415815 186.576004 0.116973 3.567090 0.002389 -0.374100 1.000000 Ni 12.837600 3.878500 7.292000 0.256500 4.443800 12.176300 2.380000 66.342102 1.034100 1.030000 28.000000 N 12.212600 0.005700 3.132200 9.893300 2.012500 28.997499 1.166300 0.582600 -11.529000 0.930000 7.000000 Sr 17.566299 1.556400 9.818400 14.098800 5.422000 0.166400 2.669400 132.376007 2.506400 0.702000 38.000000 O 3.048500 13.277100 2.286800 5.701100 1.546300 0.323900 0.867000 32.908901 0.250800 0.580500 8.000000 Eu2+ 24.006300 2.277830 19.950399 0.173530 11.803400 11.609600 3.872430 26.515600 1.363890 0.600000 63.000000 Ac3+ 35.173599 0.579689 22.111200 3.414370 8.192160 12.918700 7.055450 25.944300 13.463700 0.000000 89.000000 P 6.434500 1.906700 4.179100 27.157000 1.780000 0.526000 1.490800 68.164497 1.114900 0.513000 15.000000 Dy3+ 25.539499 1.980400 20.286100 0.143384 11.981200 9.349720 4.500730 19.580999 0.689690 1.690000 66.000000 S 6.905300 1.467900 5.203400 22.215099 1.437900 0.253600 1.586300 56.172001 0.866900 0.284700 16.000000 U 36.022800 0.529300 23.412800 3.325300 14.949100 16.092699 4.188000 100.612999 13.396600 0.842000 92.000000 Np 36.187401 0.511929 23.596399 3.253960 15.640200 15.362200 4.185500 97.490799 13.357300 1.060000 93.000000 V 10.297100 6.865700 7.351100 0.438500 2.070300 26.893801 2.057100 102.477997 1.219900 -0.038200 23.000000 Yb 28.664101 1.988900 15.434500 0.257119 15.308700 10.664700 2.989630 100.417000 7.566720 1.240000 70.000000 Sr2+ 18.087400 1.490700 8.137300 12.696300 2.565400 24.565100 -34.193001 -0.013800 41.402500 0.702000 38.000000 W 29.081800 1.720290 15.430000 9.225900 14.432700 0.321703 5.119820 57.056000 9.887500 0.477000 74.000000 Mn3+ 9.845210 4.917970 7.871940 0.294393 3.565310 10.817100 0.323613 24.128099 0.393974 -0.373000 25.000000 Ra2+ 35.215000 0.604909 21.670000 3.576700 7.913420 12.601000 7.650780 29.843599 13.543100 1.000000 88.000000 Al3+ 4.174480 1.938160 3.387600 4.145530 1.202960 0.228753 0.528137 8.285240 0.706786 0.344900 13.000000 Y 17.775999 1.402900 10.294600 12.800600 5.726290 0.125599 3.265880 104.353996 1.912130 0.775000 39.000000 Nb3+ 19.881201 0.019175 18.065300 1.133050 11.017700 10.162100 1.947150 28.338900 -12.912000 0.705400 41.000000 In 19.162399 0.547600 18.559601 6.377600 4.294800 25.849899 2.039600 92.802902 4.939100 0.406000 49.000000 Ta 29.202400 1.773330 15.229300 9.370460 14.513500 0.295977 4.764920 63.364399 9.243540 0.691000 73.000000 V3+ 9.431410 6.395350 7.741900 0.383349 2.153430 15.190800 0.016865 63.969002 0.656565 -0.038200 23.000000 Co2+ 11.229600 4.123100 7.388300 0.272600 4.739300 10.244300 0.710800 25.646601 0.932400 0.253000 27.000000 Tb 25.897600 2.242560 18.218500 0.196143 14.316700 12.664800 2.953540 115.362000 3.583240 0.738000 65.000000 Tc 19.130100 0.864132 11.094800 8.144870 4.649010 21.570700 2.712630 86.847198 5.404280 0.680000 43.000000 Ir 27.304899 1.592790 16.729601 8.865530 15.611500 0.417916 5.833770 45.001099 11.472200 1.060000 77.000000 Si. 5.662690 2.665200 3.071640 38.663399 2.624460 0.916946 1.393200 93.545799 1.247070 0.414900 14.000000 Te 19.964399 4.817420 19.013800 0.420885 6.144870 28.528400 2.523900 70.840302 4.352000 0.580000 52.000000 Ho3+ 26.129601 1.910720 20.099400 0.139358 11.978800 8.800180 4.936760 18.590799 0.852795 0.808000 67.000000 Au3+ 30.688601 1.219900 16.902901 6.828720 12.780100 0.212867 6.523540 18.659000 9.096800 0.763000 79.000000 Pr4+ 20.941299 2.544670 20.053900 0.202481 12.466800 14.813700 0.296689 45.464298 1.242850 0.445000 59.000000 Th 35.564499 0.563359 23.421900 3.462040 12.747300 17.830900 4.807030 99.172203 13.431400 0.984000 90.000000 Ti4+ 19.511400 0.178847 8.234730 6.670180 2.013410 -0.292630 1.520800 12.946400 -13.280000 -0.343800 22.000000 Ti 9.759500 7.850800 7.355800 0.500000 1.699100 35.633801 1.902100 116.105003 1.280700 -0.343800 22.000000 Bi3+ 21.805300 1.235600 19.502600 6.241490 19.105301 0.469999 7.102950 20.318501 12.471100 0.853300 83.000000 Ni2+ 11.416600 3.676600 7.400500 0.244900 5.344200 8.873000 0.977300 22.162600 0.861400 1.030000 28.000000 Tl 27.544600 0.655150 19.158400 8.707510 15.538000 1.963470 5.525930 45.814899 13.174600 0.879000 81.000000 Ru3+ 18.563801 0.847329 13.288500 8.371640 9.326020 0.017662 3.009640 22.886999 -3.189200 0.721000 44.000000 Tm 28.181900 2.028590 15.885100 0.238849 15.154200 10.997500 2.987060 102.960999 6.756210 0.705000 69.000000 Ta5+ 29.158701 1.507110 18.840700 0.116741 12.826800 6.315240 5.386950 12.424400 1.785550 0.691000 73.000000 Np6+ 35.013599 0.489810 22.728600 2.810990 14.388400 12.330000 1.756690 22.658100 13.113000 1.060000 93.000000 Eu3+ 23.749701 2.222580 20.374500 0.163940 11.850900 11.311000 3.265030 22.996599 0.759344 0.600000 63.000000 Dy 26.507000 2.180200 17.638300 0.202172 14.559600 12.189900 2.965770 111.874001 4.297280 1.690000 66.000000 Pu6+ 35.173599 0.473204 22.718100 2.738480 14.763500 11.553000 2.286780 20.930300 13.058200 0.750000 94.000000 Ag1+ 19.181200 0.646179 15.971900 7.191230 5.274750 21.732599 0.357534 66.114700 5.215720 0.597000 47.000000 Pd2+ 19.170099 0.696219 15.209600 7.555730 4.322340 22.505699 0.000000 0.000000 5.291600 0.591000 46.000000 Cl1- 18.291500 0.006600 7.208400 1.171700 6.533700 19.542400 2.338600 60.448601 -16.378000 0.957900 17.000000 Cd2+ 19.151400 0.597922 17.253500 6.806390 4.471280 20.252100 0.000000 0.000000 5.119370 0.500000 48.000000 Th4+ 35.100700 0.555054 22.441799 3.244980 9.785540 13.466100 5.294440 23.953300 13.376000 0.984000 90.000000 Mn4+ 9.962530 4.848500 7.970570 0.283303 2.760670 10.485200 0.054447 27.573000 0.251877 -0.373000 25.000000 Hf4+ 28.813101 1.591360 18.460100 0.128903 12.728500 6.762320 5.599270 14.036600 2.396990 0.770000 72.000000 Os 28.189400 1.629030 16.155001 8.979480 14.930500 0.382661 5.675890 48.164700 11.000500 1.070000 76.000000 Tl1+ 21.398500 1.471100 20.472300 0.517394 18.747801 7.434630 6.828470 28.848200 12.525800 0.879000 81.000000 Os4+ 30.419001 1.371130 15.263700 6.847060 14.745800 0.165191 5.067950 18.003000 6.498040 1.070000 76.000000 Cu1+ 11.947500 3.366900 7.357300 0.227400 6.245500 8.662500 1.557800 25.848700 0.890000 0.771800 29.000000 K1+ 7.957800 12.633100 7.491700 0.767400 6.359000 -0.002000 1.191500 31.912800 -4.997800 0.367000 19.000000 Co3+ 10.338000 3.909690 7.881730 0.238668 4.767950 8.355830 0.725591 18.349100 0.286667 0.253000 27.000000 Sb5+ 19.868500 5.448530 19.030199 0.467973 2.412530 14.125900 0.000000 0.000000 4.692630 0.564000 51.000000 Zn 14.074300 3.265500 7.031800 0.233300 5.165200 10.316300 2.410000 58.709702 1.304100 0.568000 30.000000 Yb2+ 28.120899 1.785030 17.681700 0.159970 13.333500 8.183040 5.146570 20.389999 3.709830 1.240000 70.000000 Ce3+ 20.803600 2.776910 19.559000 0.231540 11.936900 16.540800 0.612376 43.169201 2.090130 0.484000 58.000000 Pa 35.884701 0.547751 23.294800 3.415190 14.189100 16.923500 4.172870 105.250999 13.428700 0.910000 91.000000 U3+ 35.574699 0.520480 22.525900 3.122930 12.216500 12.714800 5.370730 26.339399 13.309200 0.842000 92.000000 Zr 17.876499 1.276180 10.948000 11.916000 5.417320 0.117622 3.657210 87.662697 2.069290 0.716000 40.000000 Mo5+ 21.014900 0.014345 18.099199 1.022380 11.463200 8.788090 0.740625 23.345200 -14.316000 0.695000 42.000000 Pb 31.061701 0.690200 13.063700 2.357600 18.441999 8.618000 5.969600 47.257900 13.411800 0.940100 82.000000 Er 27.656300 2.073560 16.428499 0.223545 14.977900 11.360400 2.982330 105.703003 5.920460 0.803000 68.000000 Pd 19.331900 0.698655 15.501700 7.989290 5.295370 25.205200 0.605844 76.898598 5.265930 0.591000 46.000000 Ni3+ 10.780600 3.547700 7.758680 0.223140 5.227460 7.644680 0.847114 16.967300 0.386044 1.030000 28.000000 Ru4+ 18.500299 0.844582 13.178700 8.125340 4.713040 0.036495 2.185350 20.850401 1.423570 0.721000 44.000000 O1- 4.191600 12.857300 1.639690 4.172360 1.526730 47.017899 -20.306999 -0.014040 21.941200 0.580500 8.000000 Eu 24.627399 2.387900 19.088600 0.194200 13.760300 13.754600 2.922700 123.174004 2.574500 0.600000 63.000000 Si4+ 4.439180 1.641670 3.203450 3.437570 1.194530 0.214900 0.416530 6.653650 0.746297 0.414900 14.000000 Be2+ 6.260300 0.002700 0.884900 0.831300 0.799300 2.275800 0.164700 5.114600 -6.109200 0.779000 4.000000 Ag2+ 19.164301 0.645643 16.245600 7.185440 4.370900 21.407200 0.000000 0.000000 5.214040 0.597000 47.000000 Y3+ 17.926800 1.354170 9.153100 11.214500 1.767950 22.659901 -33.108002 -0.013190 40.260201 0.775000 39.000000 Pm 23.340500 2.562700 19.609501 0.202088 13.123500 15.100900 2.875160 132.720993 2.028760 1.260000 61.000000 Po 34.672600 0.700999 15.473300 3.550780 13.113800 9.556420 7.025880 47.004501 13.677000 0.000000 84.000000 Pb2+ 21.788601 1.336600 19.568199 0.488383 19.140600 6.772700 7.011070 23.813200 12.473400 0.940100 82.000000 Li1+ 0.696800 4.623700 0.788800 1.955700 0.341400 0.631600 0.156300 10.095300 0.016700 -0.203000 3.000000 Pr 22.044001 2.773930 19.669701 0.222087 12.385600 16.766899 2.824280 143.643997 2.058300 0.445000 59.000000 W6+ 29.493601 1.427550 19.376301 0.104621 13.054400 5.936670 5.064120 11.197200 1.010740 0.477000 74.000000 Fe2+ 11.042400 4.653800 7.374000 0.305300 4.134600 12.054600 0.439900 31.280899 1.009700 0.954000 26.000000 Pt 27.005899 1.512930 17.763901 8.811740 15.713100 0.424593 5.783700 38.610298 11.688300 0.950000 78.000000 Fe 11.769500 4.761100 7.357300 0.307200 3.522200 15.353500 2.304500 76.880501 1.036900 0.954000 26.000000 Pu 36.525398 0.499384 23.808300 3.263710 16.770700 14.945500 3.479470 105.980003 13.381200 0.750000 94.000000 F1- 3.632200 5.277560 3.510570 14.735300 1.260640 0.442258 0.940706 47.343700 0.653396 0.565000 9.000000 Nb5+ 17.916300 1.124460 13.341700 0.028781 10.799000 9.282060 0.337905 25.722799 -6.393400 0.705400 41.000000 Pm3+ 22.552700 2.417400 20.110800 0.185769 12.067100 13.127500 2.074920 27.449100 1.194990 1.260000 61.000000 Cu2+ 11.816800 3.374840 7.111810 0.244078 5.781350 7.987600 1.145230 19.896999 1.144310 0.771800 29.000000 Sn2+ 19.109400 0.503600 19.054800 5.837800 4.564800 23.375200 0.487000 62.206100 4.786100 0.622800 50.000000 V5+ 15.688700 0.679003 8.142080 5.401350 2.030810 9.972780 -9.576000 0.940464 1.714300 -0.038200 23.000000 Kr 17.355499 1.938400 6.728600 16.562300 5.549300 0.226100 3.537500 39.397202 2.825000 0.785000 36.000000 Cs1+ 20.352400 3.552000 19.127800 0.308600 10.282100 23.712799 0.961500 59.456501 3.279100 0.542000 55.000000 Ac 35.659698 0.589092 23.103201 3.651550 12.597700 18.599001 4.086550 117.019997 13.526600 0.000000 89.000000 H. 0.489918 20.659300 0.262003 7.740390 0.196767 49.551899 0.049879 2.201590 0.001305 -0.374100 1.000000 Gd3+ 24.346600 2.135530 20.420799 0.155525 11.870800 10.578200 3.714900 21.702900 0.645089 0.950000 64.000000 Er3+ 26.722000 1.846590 19.774799 0.137290 12.150600 8.362250 5.173790 17.897400 1.176130 0.803000 68.000000 Ag 19.280800 0.644600 16.688499 7.472600 4.804500 24.660500 1.046300 99.815598 5.179000 0.597000 47.000000 Yb3+ 27.891701 1.732720 18.761400 0.138790 12.607200 7.644120 5.476470 16.815300 2.260010 1.240000 70.000000 %gdis_end gdis-0.90/gui_main.c0000644000175000017500000015665511066063675013016 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include #include #include #include #include "gdis.h" #include "coords.h" #include "edit.h" #include "file.h" #include "graph.h" #include "task.h" #include "morph.h" #include "model.h" #include "module.h" #include "matrix.h" #include "render.h" #include "select.h" #include "space.h" #include "sginfo.h" #include "spatial.h" #include "opengl.h" #include "quaternion.h" #include "surface.h" #include "gui_shorts.h" #include "interface.h" #include "dialog.h" #include "zmatrix.h" #include "gui_image.h" #include "undo.h" #include "logo_left.xpm" #include "logo_right.xpm" /* top level data structure */ extern struct sysenv_pak sysenv; extern GMutex *gdk_threads_mutex; /* bit messy - put some of these in sysenv? */ /* main window */ GtkWidget *window; /* backing pixmap */ GdkPixmap *pixmap = NULL; /* model tree (put in sysenv?) */ GtkWidget *tree; /* model pane stuff */ GtkWidget *scrolled_window, *clist; /* gdisrc? */ gint pane_width=65; /* current viewing mode combo box */ GtkWidget *viewing_mode; /************************/ /* EVENT - button press */ /************************/ #define DEBUG_BUTTON_PRESS_EVENT 0 gint gui_press_event(GtkWidget *w, GdkEventButton *event) { gint refresh=0, x, y; gint shift=FALSE, ctrl=FALSE; GdkModifierType state; struct model_pak *data; struct bond_pak *bond; struct core_pak *core; /* HACK */ if (sysenv.stereo) return(FALSE); /* get model */ data = sysenv.active_model; if (!data) return(FALSE); /* event info */ x = event->x; y = event->y; sysenv.moving = FALSE; canvas_select(x, y); /* analyse the current state */ state = (GdkModifierType) event->state; if ((state & GDK_SHIFT_MASK)) shift = TRUE; if ((state & GDK_CONTROL_MASK)) ctrl = TRUE; /* only want button 1 (for now) */ if (event->button != 1) return(FALSE); /* NEW - diffraction peak search */ if (data->graph_active) { diffract_select_peak(x, y, data); return(FALSE); } /* can we assoc. with a single atom */ core = gl_seek_core(x, y, data); /* allow shift+click to add/remove single atoms in the selection */ /* TODO - depending on mode add/remove objects in selection eg atom/mols */ if (shift) { switch(data->mode) { default: if (core) { select_core(core, TRUE, data); refresh++; } else { /* otherwise start a box selection */ update_box(x,y,data,START); } break; } } else { /* determine the type of action required */ switch(data->mode) { case BOND_INFO: info_bond(w,x,y,data); break; case BOND_DELETE: /* or by bond midpoints */ bond = gl_seek_bond(x,y,data); if (bond) { connect_user_bond(bond->atom1, bond->atom2, BOND_DELETE, data); refresh++; } break; case BOND_SINGLE: case BOND_DOUBLE: case BOND_TRIPLE: if (core) { connect_make_bond(core, data->mode, data); refresh++; } break; case ATOM_ADD: add_atom(x, y, data); refresh++; break; case DEFINE_RIBBON: if (core) construct_backbone(core, data); break; case DEFINE_VECTOR: case DEFINE_PLANE: if (core) spatial_point_add(core, data); break; /* selection stuff */ default: select_clear(data); /* don't select if a core is under the mouse */ /* instead we allow the selection box to be drawn */ update_box(x,y,data,START); refresh++; break; } } /* CURRENT */ if (refresh) gui_active_refresh(); return(FALSE); } /***************************/ /* EVENT - button released */ /***************************/ gint gui_release_event(GtkWidget *w, GdkEventButton *event) { gint x, y; struct model_pak *data; GdkModifierType state; /* get model */ data = sysenv.active_model; if (!data) return(FALSE); /* get event info */ x = event->x; y = event->y; state = (GdkModifierType) event->state; /* NEW - motion flag */ sysenv.moving = FALSE; /* first mouse button */ switch (event->button) { case 1: /* HACK */ if (sysenv.stereo) return(FALSE); /* clean up after move operations */ switch(data->mode) { case DIST_INFO: info_dist(x,y,data); break; case ANGLE_INFO: info_angle(x,y,data); break; case DIHEDRAL_INFO: info_torsion(x,y,data); break; default: /* commit the box contents to the selection */ /* if shift pressed - append selection, otherwise create new */ if (data->box_on) gl_select_box(w); /* turn the box off */ data->box_on = FALSE; break; } break; case 2: /* hack to only update zoom factor when button released */ /* ie continuous update causes significant slowdown */ gui_camera_refresh(); break; } redraw_canvas(SINGLE); return(FALSE); } /************************/ /* EVENT - mouse scroll */ /************************/ gint gui_scroll_event(GtkWidget *w, GdkEventScroll *event) { /* change zoom -- based on "zoom section" of gui_press_event() */ const gdouble scroll_factor = 10.0; gdouble scroll, v[3]; struct model_pak *data; struct camera_pak *camera; /* get model */ data = sysenv.active_model; if (!data) return(FALSE); camera = data->camera; sysenv.moving = FALSE; switch (event->direction) { case GDK_SCROLL_UP: scroll = -scroll_factor; break; case GDK_SCROLL_DOWN: scroll = scroll_factor; break; default: /* left and right are not used yet */ return FALSE; } scroll *= PIX2SCALE; if (camera->perspective) { ARR3SET(v, camera->v); VEC3MUL(v, -scroll*10.0); ARR3ADD(camera->x, v); } else camera->zoom += scroll; data->zoom = data->rmax; gui_camera_refresh(); sysenv.moving = TRUE; redraw_canvas(SINGLE); return FALSE; } /************************/ /* EVENT - mouse motion */ /************************/ #define DEBUG_MOTION 0 gint gui_motion_event(GtkWidget *w, GdkEventMotion *event) { gint x, y, dx, dy, fx, fy, refresh; gint shift=FALSE, ctrl=FALSE; gdouble da, dv, zoom, v[3], mat[9]; GdkModifierType state; static gint ox=0, oy=0; struct model_pak *data; struct camera_pak *camera; /* get model */ data = sysenv.active_model; if (!data) return(FALSE); camera = data->camera; /* get mouse data */ if (event->is_hint) gdk_window_get_pointer(event->window, &x, &y, &state); else { /* MS windows apparently reaches this */ x = event->x; y = event->y; state = (GdkModifierType) event->state; } /* discard discontinuous jumps (ie ox,oy are invalid on 1st call) */ if (!sysenv.moving) { ox = x; oy = y; sysenv.moving = TRUE; return(TRUE); } /* convert relative mouse motion to an increment */ dx = x-ox; dy = oy-y; /* inverted y */ /* single update */ refresh=0; /* analyse the current state */ if ((state & GDK_SHIFT_MASK)) shift = TRUE; if ((state & GDK_CONTROL_MASK)) ctrl = TRUE; /* first mouse button - mostly selection stuff */ if (state & GDK_BUTTON1_MASK) { switch(data->mode) { case FREE: update_box(x, y, data, UPDATE); refresh++; break; default: break; } /* don't switch to low quality drawing */ sysenv.moving = FALSE; if (refresh) redraw_canvas(SINGLE); ox=x; oy=y; return(TRUE); } /* NEW - disallow rotations (redraws) when graph is displayed */ if (data->graph_active) return(TRUE); /* second mouse button */ if (state & GDK_BUTTON2_MASK) { if (shift) { /* zoom */ zoom = PIX2SCALE * (dx+dy); if (camera->perspective) { ARR3SET(v, camera->v); VEC3MUL(v, zoom*10.0); ARR3ADD(camera->x, v); } else { camera->zoom -= zoom; data->zoom = data->rmax; } sysenv.moving = TRUE; refresh++; } else { if (ctrl) { /* selection only translation */ select_translate(x-ox, y-oy, data); sysenv.moving = TRUE; refresh++; } else { /* horizontal camera translation */ dv = ox-x; ARR3SET(v, camera->e); VEC3MUL(v, dv*PIX2ANG); ARR3ADD(camera->x, v); /* vertical camera translation */ dv = y-oy; ARR3SET(v, camera->o); VEC3MUL(v, dv*PIX2ANG); ARR3ADD(camera->x, v); sysenv.moving = TRUE; refresh++; } } } /* third mouse button clicked? */ if (state & GDK_BUTTON3_MASK) { /* shift clicked? */ if (shift) { /* yaw */ if (dx || dy) { /* rotation amount */ da = abs(dx) + abs(dy); /* vector from center to mouse pointer (different for OpenGL window) */ /* FIXME - if ctrl is pressed, the center should be the selection */ /* centroid & not the middle of the window */ fx = x - data->offset[0] - (sysenv.x + sysenv.width/2); fy = data->offset[1] + (sysenv.y + sysenv.height/2 - y); /* rotation direction via z component of cross product (+=clock, -=anti) */ if ((fx*dy - dx*fy) < 0) da *= -1.0; #if DEBUG_MOTION printf("(%d,%d) x (%d,%d) : %f\n",dx,dy,fx,fy, da); #endif /* assign and calculate */ da *= D2R * ROTATE_SCALE; if (ctrl) { matrix_relative_rotation(mat, da, ROLL, data); rotate_select(data, mat); } else { if (camera->mode == LOCKED) quat_concat_euler(camera->q, ROLL, da); else { matrix_v_rotation(mat, camera->v, -da); vecmat(mat, camera->o); vecmat(mat, camera->e); } } } sysenv.moving = TRUE; refresh++; } else { #if DEBUG_MOTION printf("(%d,%d)\n",dx,dy); #endif /* pitch and roll */ if (dy) { da = D2R * ROTATE_SCALE * dy; if (ctrl) { matrix_relative_rotation(mat, -da, PITCH, data); rotate_select(data, mat); } else { if (camera->mode == LOCKED) quat_concat_euler(camera->q, PITCH, da); else { matrix_v_rotation(mat, camera->e, -da); vecmat(mat, camera->v); vecmat(mat, camera->o); } } sysenv.moving = TRUE; refresh++; } if (dx) { da = D2R * ROTATE_SCALE * dx; if (ctrl) { matrix_relative_rotation(mat, -da, YAW, data); rotate_select(data, mat); } else { if (camera->mode == LOCKED) quat_concat_euler(camera->q, YAW, -da); else { matrix_v_rotation(mat, camera->o, da); vecmat(mat, camera->v); vecmat(mat, camera->e); } } sysenv.moving = TRUE; refresh++; } } } /* save old values */ ox=x; oy=y; /* redraw? */ if (refresh) redraw_canvas(SINGLE); return(TRUE); } /***************************/ /* expose all hidden atoms */ /***************************/ void unhide_atoms(void) { GSList *list; struct model_pak *data; struct core_pak *core; /* deletion for the active model only */ data = sysenv.active_model; /* unhide */ for (list=data->cores ; list ; list=g_slist_next(list)) { core = list->data; core->status &= ~HIDDEN; } /* update */ redraw_canvas(SINGLE); } /****************/ /* change mode */ /***************/ void gui_mode_switch(gint new_mode) { GSList *list; struct model_pak *data; struct core_pak *core1; /* get selected model */ data = sysenv.active_model; if (!data) return; /* special case for morphology */ if (data->id == MORPH) { switch(new_mode) { case FREE: case RECORD: break; default: gui_text_show(WARNING, "Disallowed mode.\n"); return; } } /* clean up (if necessary) from previous mode */ switch (data->mode) { case DIST_INFO: case BOND_INFO: for (list=data->cores ; list ; list=g_slist_next(list)) { core1 = list->data; core1->status &= ~SELECT; } break; case RECORD: if (data->num_frames > 2) { /* CURRENT - I don't know why, but we seem to get a duplicate of the 1st frame */ /* revert to original orientation */ camera_init(data); data->num_frames = g_slist_length(data->transform_list); } else { /* if no extra frames - it's not an animation any more */ data->num_frames = 1; data->animation = FALSE; } break; } /* special initialization */ switch (new_mode) { case RECORD: /* NEW - disallow transformation record mode if file is */ /* a standard animation as this will confuse read_frame() */ if (data->frame_list || data->gulp.trj_file) { gui_text_show(ERROR, "Disallowed mode change.\n"); return; } data->animation = TRUE; break; } /* general initialization */ select_clear(data); data->mode = new_mode; data->state = 0; redraw_canvas(SINGLE); } /* Need this for the menu item factory widget */ void gtk_mode_switch(GtkWidget *w, gint new_mode) { gui_mode_switch(new_mode); } /***************/ /* change view */ /***************/ void switch_view(gint new_mode) { } /************/ /* GTK hook */ /************/ void gtk_switch_view(GtkWidget *w, gint new_mode) { switch_view(new_mode); } /**************************************/ /* symmetry list store free primitive */ /**************************************/ gboolean symmetry_free(GtkTreeModel *treemodel, GtkTreePath *path, GtkTreeIter *iter, gpointer data) { gchar *a, *b; gtk_tree_model_get(treemodel, iter, 0, &a, 1, &b, -1); if (a) g_free(a); if (b) g_free(b); return(TRUE); } /*****************************/ /* redraw the content widget */ /*****************************/ void gui_content_refresh(GtkWidget *box) { GSList *list; GtkTreeIter iter; GtkCellRenderer *renderer; GtkTreeViewColumn *column; static GtkListStore *ls=NULL; static GtkWidget *tv=NULL; if (box) { g_assert(ls == NULL); g_assert(tv == NULL); /* new tree list */ ls = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_STRING); tv = gtk_tree_view_new_with_model(GTK_TREE_MODEL(ls)); gtk_box_pack_start(GTK_BOX(box), tv, TRUE, TRUE, 0); /* setup cell renderers */ renderer = gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes(" ", renderer, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(tv), column); renderer = gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes(" ", renderer, "text", 1, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(tv), column); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(tv), FALSE); /* currently, allow nothing to be selected */ gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(tv)), GTK_SELECTION_NONE); } else { struct model_pak *model = sysenv.active_model; g_assert(ls != NULL); g_assert(tv != NULL); gtk_list_store_clear(ls); if (!model) return; /* model content */ model_content_refresh(model); for (list=model->property_list ; list ; list=g_slist_next(list)) { if (property_rank(list->data)) { gtk_list_store_append(ls, &iter); gtk_list_store_set(ls, &iter, 0, property_label(list->data), -1); gtk_list_store_set(ls, &iter, 1, property_value(list->data), -1); } } } } /*************************/ /* module widget gloabls */ /*************************/ GtkTreeStore *module_ts=NULL; GtkWidget *module_tv=NULL; /******************************/ /* module invocation callback */ /******************************/ void cb_module_activate(GtkTreeView *tree_view, GtkTreePath *tree_path, GtkTreeViewColumn *tree_view_column, gpointer data) { gchar *symbol; gpointer module; GtkTreeModel *tree_model; GtkTreeIter iter; struct model_pak *model; model = sysenv.active_model; tree_model = gtk_tree_view_get_model(GTK_TREE_VIEW(tree_view)); if (gtk_tree_model_get_iter(tree_model, &iter, tree_path)) { gtk_tree_model_get(tree_model, &iter, 0, &symbol, 1, &module, -1); if (module) module_invoke(symbol, model, module); else gui_text_show(ERROR, "Please select function(s) listed below the module.\n"); } } /***********************/ /* refresh module list */ /***********************/ void module_widget_redraw(void) { GSList *list1, *list2; GtkTreeIter root, branch; /* checks */ g_assert(GTK_IS_TREE_STORE(module_ts)); g_assert(GTK_IS_TREE_VIEW(module_tv)); /* populate with valid modules */ for (list1=sysenv.module_list ; list1 ; list1=g_slist_next(list1)) { gtk_tree_store_append(module_ts, &root, NULL); gtk_tree_store_set(module_ts, &root, 0, module_label(list1->data), -1); gtk_tree_store_set(module_ts, &root, 1, NULL, -1); /* populate with module symbols */ for (list2=module_symbols(list1->data) ; list2 ; list2=g_slist_next(list2)) { gtk_tree_store_append(module_ts, &branch, &root); gtk_tree_store_set(module_ts, &branch, 0, (gchar *) list2->data, -1); gtk_tree_store_set(module_ts, &branch, 1, (gpointer) list1->data, -1); } } } /***********************************************/ /* init the available module (plug-in) listing */ /***********************************************/ void module_widget_setup(GtkWidget *box) { GtkWidget *label; GtkCellRenderer *renderer; GtkTreeViewColumn *column; label = gtk_label_new("Loaded modules"); gtk_box_pack_start(GTK_BOX(box), label, FALSE, FALSE, 0); /* underlying data storage */ module_ts = gtk_tree_store_new(2, G_TYPE_STRING, G_TYPE_POINTER); /* actual tree widget */ module_tv = gtk_tree_view_new_with_model(GTK_TREE_MODEL(module_ts)); gtk_box_pack_start(GTK_BOX(box), module_tv, TRUE, TRUE, 0); /* setup the text rendering colum */ renderer = gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes("a", renderer, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(module_tv), column); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(module_tv), FALSE); /* fill in with valid modules */ module_widget_redraw(); /* setup the selection handler */ g_signal_connect(G_OBJECT(module_tv), "row-activated", G_CALLBACK(cb_module_activate), NULL); } /************************************/ /* pick a (loaded) model to display */ /************************************/ #define DEBUG_PICK_MODEL 0 void gui_model_select(struct model_pak *model) { /* checks */ if (!model) return; /* make the model active */ sysenv.active_model = model; model->graph_active = NULL; /* TODO - combine all these into a dialog refresh callback */ gui_relation_update(model); /* this update could replace the auto version of the relation shortcuts */ dialog_refresh_all(); canvas_shuffle(); gui_refresh(GUI_MODEL_PROPERTIES); gui_refresh(GUI_CANVAS); } /************************************************/ /* reset the scale and viewing angle to default */ /************************************************/ void gui_view_default(void) { struct model_pak *model; /* do we have a loaded model? */ model = sysenv.active_model; if (!model) return; /* NEW - recentre (eg if atoms added -> centroid change) */ coords_init(CENT_COORDS, model); /* make the changes */ VEC3SET(model->offset, 0.0, 0.0, 0.0); /* update */ camera_init(model); /* trigger any dialog updates */ gui_model_select(model); } /************************/ /* view down the x axis */ /************************/ void gui_view_x(void) { struct camera_pak *camera; struct model_pak *model = sysenv.active_model; if (model) { camera_init(model); camera = model->camera; quat_concat_euler(camera->q, YAW, 0.5*G_PI); gui_model_select(model); } } /************************/ /* view down the y axis */ /************************/ void gui_view_y(void) { struct camera_pak *camera; struct model_pak *model = sysenv.active_model; if (model) { camera_init(model); camera = model->camera; quat_concat_euler(camera->q, YAW, G_PI); gui_model_select(model); } } /************************/ /* view down the z axis */ /************************/ void gui_view_z(void) { struct camera_pak *camera; struct model_pak *model = sysenv.active_model; if (model) { camera_init(model); camera = model->camera; quat_concat_euler(camera->q, PITCH, -0.5*G_PI); gui_model_select(model); } } /************************/ /* view down the a axis */ /************************/ void gui_view_a(void) { gui_view_x(); } /************************/ /* view down the b axis */ /************************/ void gui_view_b(void) { struct camera_pak *camera; struct model_pak *model = sysenv.active_model; if (model) { if (model->periodic > 1 || model->id == MORPH) { gui_view_x(); camera = model->camera; quat_concat_euler(camera->q, YAW, model->pbc[5]); gui_model_select(model); } else gui_view_y(); } } /************************/ /* view down the c axis */ /************************/ void gui_view_c(void) { gdouble a, c[3], v[3]; struct camera_pak *camera; struct model_pak *model = sysenv.active_model; if (model) { if (model->periodic > 2 || model->id == MORPH) { camera_init(model); camera = model->camera; /* c axis vector */ VEC3SET(c, 0.0, 0.0, -1.0); vecmat(model->latmat, c); /* angle */ a = via(camera->v,c,3); /* rotation axis */ crossprod(v, camera->v, c); normalize(v, 3); /* align */ quat_concat(camera->q, v, a); gui_model_select(model); } else gui_view_z(); } } /**********************/ /* viewing widget box */ /**********************/ /* TODO - add camera properties? */ void gui_view_widget(GtkWidget *w) { GtkWidget *hbox; hbox = gtk_hbox_new(TRUE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(w), hbox, FALSE, FALSE, 0); gui_button(" x ", gui_view_x, NULL, hbox, TT); gui_button(" y ", gui_view_y, NULL, hbox, TT); gui_button(" z ", gui_view_z, NULL, hbox, TT); gui_button(" a ", gui_view_a, NULL, hbox, TT); gui_button(" b ", gui_view_b, NULL, hbox, TT); gui_button(" c ", gui_view_c, NULL, hbox, TT); } /***************************/ /* create/update text tray */ /***************************/ void gui_text_show(gint type, gchar *message) { static GtkWidget *view=NULL; static GtkTextBuffer *buffer=NULL; static GtkTextIter iter; /* checks */ if (!message) return; /* try this for improved stability of tasks */ /* if (sysenv.running_tasks) return; */ if (sysenv.canvas) { if (!buffer) { /* first time init */ view = gtk_text_view_new(); gtk_text_view_set_editable(GTK_TEXT_VIEW(view), FALSE); buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(view)); gtk_container_add(GTK_CONTAINER(sysenv.tpane), view); gtk_widget_show(view); /* tags */ gtk_text_buffer_create_tag(buffer, "fg_blue", "foreground", "blue", NULL); gtk_text_buffer_create_tag(buffer, "fg_red", "foreground", "red", NULL); gtk_text_buffer_create_tag(buffer, "italic", "style", PANGO_STYLE_ITALIC, NULL); /* position iterator */ gtk_text_buffer_get_iter_at_line(buffer, &iter, 0); } /* assign colour via message type */ switch(type) { case ERROR: gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, message, -1, "fg_red", NULL); break; case WARNING: gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, message, -1, "fg_blue", NULL); break; case ITALIC: gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, message, -1, "italic", NULL); break; default: gtk_text_buffer_insert(buffer, &iter, message, -1); } /* NEW - scroll to the end, so recent message is visible */ if (GTK_IS_TEXT_VIEW(view)) { /* FIXME - doesn't quite work as this only ensures the 1st printed line is visible */ gtk_text_view_scroll_to_iter(GTK_TEXT_VIEW(view), &iter, 0.0, FALSE, 0.0, 0.0); } /* TODO - delete items from buffer when line gets too big */ } else printf("[%s]\n", message); } /***********************************/ /* general panel visibility toggle */ /***********************************/ void pane_toggle(GtkWidget *w, GtkWidget *frame) { sysenv.write_gdisrc = TRUE; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w))) gtk_widget_show(frame); else gtk_widget_hide(frame); } /*****************************************/ /* cleanup/save state before actual exit */ /*****************************************/ void gdis_exit(void) { /* if user has changed element colours, but doesn't want them saved */ /* this will do it anyway - but they can just click reset next time */ if (sysenv.write_gdisrc) { sysenv.x = sysenv.display_box->allocation.x; sysenv.y = sysenv.display_box->allocation.y; sysenv.width = sysenv.display_box->allocation.width; sysenv.height = sysenv.display_box->allocation.height; write_gdisrc(); } /* cleanup */ sys_free(); /* unlink("gdis.ps"); */ task_queue_free(); if (sysenv.canvas) { gtk_widget_pop_visual(); gtk_widget_pop_colormap(); gtk_exit(0); } exit(0); } /************************************************/ /* exit confirmation if jobs are still runnning */ /************************************************/ gint gdis_exit_event(void) { gint button; GtkWidget *dialog; if (g_thread_pool_get_num_threads(sysenv.thread_pool)) { dialog = gtk_message_dialog_new(GTK_WINDOW(window), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_WARNING, GTK_BUTTONS_YES_NO, "There are running tasks. Really exit?"); button = gtk_dialog_run(GTK_DIALOG(dialog)); gtk_widget_destroy(dialog); if (button != -8) return(TRUE); } return(FALSE); } /************************************************/ /* exit confirmation if jobs are still runnning */ /************************************************/ void gdis_exit_test(void) { gint button; GtkWidget *dialog; if (g_thread_pool_get_num_threads(sysenv.thread_pool)) { dialog = gtk_message_dialog_new(GTK_WINDOW(window), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_WARNING, GTK_BUTTONS_YES_NO, "There are running tasks. Really exit?"); button = gtk_dialog_run(GTK_DIALOG(dialog)); gtk_widget_destroy(dialog); if (button != -8) return; } gdis_exit(); } /***************************************/ /* display available modules & symbols */ /***************************************/ void mod_widget(void) { GSList *list, *list2; for (list=sysenv.module_list ; list ; list=g_slist_next(list)) { printf("module: %s\n", module_label(list->data)); for (list2=module_symbols(list->data) ; list2 ; list2=g_slist_next(list2)) { printf(" - %s\n", (gchar *) list2->data); } } } /**********************/ /* geomview importing */ /**********************/ /* TODO - put elsewhere */ void import_off(gchar *filename) { struct model_pak *model; model = sysenv.active_model; if (!model) return; read_off(filename, model); redraw_canvas(SINGLE); } void gui_import_geomview(void) { file_dialog("Import Geomview", NULL, FILE_LOAD, (gpointer) import_off, GEOMVIEW_OFF); } /*********************/ /* project importing */ /*********************/ void import_pcf(gchar *filename) { struct model_pak *model; dialog_destroy_type(FILE_SELECT); model = sysenv.active_model; if (!model) return; project_read(filename, model); redraw_canvas(SINGLE); } void gui_import_project(void) { file_dialog("Import Project", NULL, FILE_LOAD, (gpointer) import_pcf, PROJECT); } void gui_import_graph(void) { file_dialog("Import Graph", NULL, FILE_LOAD, (gpointer) graph_read, TEXT); } /*****************/ /* mode switches */ /*****************/ void gui_mode_record(void) { gui_mode_switch(RECORD); } void gui_mode_default(void) { gui_mode_switch(FREE); } /******************/ /* MENU structure */ /******************/ static GtkItemFactoryEntry menu_items[] = { { "/_File", NULL, NULL, 0, "" }, /* { "/File/_New", NULL, create_new_model, 1, NULL }, { "/File/sep1", NULL, NULL, 0, "" }, */ { "/File/_Open...", NULL, file_load_dialog, 1, NULL }, { "/File/_Save...", NULL, file_save_dialog, 1, NULL }, { "/File/_Close", NULL, tree_select_delete, 1, NULL }, { "/File/sep1", NULL, NULL, 0, "" }, { "/File/Import", NULL, NULL, 0, "" }, { "/File/Import/Geomview...", NULL, gui_import_geomview, 1, NULL }, { "/File/Import/Project...", NULL, gui_import_project, 1, NULL }, { "/File/Import/Graph...", NULL, gui_import_graph, 1, NULL }, { "/File/Export", NULL, NULL, 0, "" }, { "/File/Export/Canvas snapshot...", NULL, image_export_dialog, 1, NULL }, { "/File/Export/Graph data...", NULL, analysis_export_dialog, 1, NULL }, { "/File/sep1", NULL, NULL, 0, "" }, { "/File/_Quit", NULL, gdis_exit_test, 0, NULL }, { "/_Edit", NULL, NULL, 0, "" }, { "/Edit/_Copy", NULL, select_copy, 0, NULL }, { "/Edit/_Paste", NULL, select_paste, 0, NULL }, { "/Edit/sep1", NULL, NULL, 0, "" }, { "/Edit/Delete", NULL, select_delete, 0, NULL }, { "/Edit/Undo", NULL, undo_active, 0, NULL }, { "/Edit/sep1", NULL, NULL, 0, "" }, { "/Edit/Colour...", NULL, select_colour, 0, NULL }, { "/Edit/Hide", NULL, select_hide, 0, NULL }, { "/Edit/Unhide all", NULL, unhide_atoms, 0, NULL }, { "/Edit/sep1", NULL, NULL, 0, "" }, { "/Edit/Select all", NULL, select_all, 0, NULL }, { "/Edit/Invert", NULL, select_invert, 0, NULL }, { "/_Tools", NULL, NULL, 0, "" }, { "/Tools/Visualization", NULL, NULL, 0, "" }, { "/Tools/Visualization/Animation...", NULL, gui_animate_dialog, 0, NULL }, { "/Tools/Visualization/Iso-surfaces...", NULL, gui_isosurf_dialog, 0, NULL }, { "/Tools/Visualization/Periodic table...", NULL, gui_gperiodic_dialog, 0, NULL }, { "/Tools/Building", NULL, NULL, 0, "" }, { "/Tools/Building/Editing...", NULL, gui_edit_dialog, 0, NULL }, { "/Tools/Building/Dislocations...", NULL, gui_defect_dialog, 0, NULL }, { "/Tools/Building/Docking...", NULL, gui_dock_dialog, 0, NULL }, { "/Tools/Building/Dynamics...", NULL, gui_mdi_dialog, 0, NULL }, { "/Tools/Building/Surfaces...", NULL, surface_dialog, 0, NULL }, { "/Tools/Building/Zmatrix...", NULL, gui_zmat_dialog, 0, NULL }, { "/Tools/Computation", NULL, NULL, 0, "" }, { "/Tools/Computation/Diffraction...", NULL, gui_diffract_dialog, 0, NULL }, { "/Tools/Computation/GULP...", NULL, gulp_dialog, 0, NULL }, { "/Tools/Computation/GAMESS...", NULL, gamess_dialog, 0, NULL }, { "/Tools/Computation/Monty...", NULL, monty_dialog, 0, NULL }, { "/Tools/Computation/SIESTA...", NULL, gui_siesta_dialog, 0, NULL }, { "/Tools/Analysis", NULL, NULL, 0, "" }, { "/Tools/Analysis/Dynamics...", NULL, gui_analysis_dialog, 0, NULL }, { "/Tools/Analysis/Measurements...", NULL, gui_measure_dialog, 0, NULL }, { "/_View", NULL, NULL, 0, ""}, { "/View/Display properties...", NULL, gui_render_dialog, 0, NULL}, { "/View/sep1", NULL, NULL, 0, ""}, { "/View/Reset model images", NULL, space_image_widget_reset, 0, NULL}, { "/View/sep1", NULL, NULL, 0, ""}, { "/View/Normal mode", NULL, gui_mode_default, 0, NULL}, { "/View/Recording mode", NULL, gui_mode_record, 0, NULL}, { "/View/sep1", NULL, NULL, 0, ""}, { "/View/Task manager...", NULL, task_dialog, 0, NULL}, #ifdef WITH_GRISU { "/View/Grid manager...", NULL, gui_grid_dialog, 0, NULL}, #endif { "/View/Executable paths...", NULL, gui_setup_dialog, 0, NULL}, { "/_Help", NULL, NULL, 0, ""}, /* about info -> manual acknowlegements */ /* { "/Help/About...", NULL, gui_help_dialog, 0, NULL}, */ { "/Help/Manual...", NULL, gui_help_dialog, 0, NULL}, }; /********************************/ /* process key presses directly */ /********************************/ gint cb_key_press(GtkWidget *w, GdkEventKey *event, gpointer dummy) { switch(event->keyval) { /* selection delete */ case GDK_Insert: undo_active(); break; /* selection delete */ case GDK_Delete: select_delete(); break; /* fullscreen */ case GDK_F1: if (!sysenv.stereo) { sysenv.stereo = TRUE; sysenv.stereo_fullscreen = TRUE; sysenv.render.perspective = TRUE; stereo_open_window(); } break; /* windowed */ /* CURRENT - hacked to work with new camera code */ case GDK_F2: /* if (!sysenv.stereo && sysenv.stereo_windowed) */ if (!sysenv.stereo) { sysenv.stereo = TRUE; sysenv.stereo_fullscreen = FALSE; sysenv.render.perspective = TRUE; redraw_canvas(SINGLE); } break; /* NEW - switching between windowed/fullscreen stereo while in */ /* stereo mode can screw things up - so just use esc to exit */ /* for both. ie F1/F2 do not act as stereo toggles */ case GDK_Escape: sysenv.stereo = FALSE; sysenv.render.perspective = FALSE; stereo_close_window(); redraw_canvas(SINGLE); break; } return(FALSE); } /*******************************************************/ /* record current model/property pane divider position */ /*******************************************************/ gboolean cb_pane_refresh(GtkPaned *w, gpointer data) { sysenv.tree_divider = gtk_paned_get_position(w); return(FALSE); } /***************************************/ /* update the GDIS information widgets */ /***************************************/ gint gui_widget_handler(void) { /* TODO - all components of the gui */ if (sysenv.refresh_properties) { gui_active_refresh(); sysenv.refresh_properties = FALSE; } return(TRUE); } /*****************************/ /* schedule widget update(s) */ /*****************************/ /* TODO - include all update request (including canvas) */ /* TODO - make type a mask so that multiple updates can be done */ void gui_refresh(gint type) { switch (type) { case GUI_CANVAS: redraw_canvas(SINGLE); break; case GUI_MODEL_TREE: sysenv.refresh_tree = TRUE; break; case GUI_MODEL_PROPERTIES: sysenv.refresh_properties = TRUE; break; case GUI_TEXT_BUFFER: sysenv.refresh_text = TRUE; break; } } /****************************/ /* selection model callback */ /****************************/ void gui_selection_mode_set(GtkWidget *w, gpointer dummy) { const gchar *line; g_assert(GTK_IS_ENTRY(w)); line = gtk_entry_get_text(GTK_ENTRY(w)); gui_mode_switch(FREE); if (g_strrstr(line, "Atoms")) { sysenv.select_mode = CORE; return; } if (g_strrstr(line, "Label")) { sysenv.select_mode = ATOM_LABEL; return; } if (g_strrstr(line, "Type")) { sysenv.select_mode = ATOM_TYPE; return; } if (g_strrstr(line, "Elements")) { if (g_strrstr(line, "molecule")) sysenv.select_mode = ELEM_MOL; else sysenv.select_mode = ELEM; return; } if (g_strrstr(line, "Molecules")) { sysenv.select_mode = MOL; return; } if (g_strrstr(line, "fragments")) { sysenv.select_mode = FRAGMENT; gui_mode_switch(SELECT_FRAGMENT); return; } if (g_strrstr(line, "Regions")) { sysenv.select_mode = REGION; return; } } /* CURRENT */ /* functionality for extending active model pulldown capabilities */ /* TODO - put in shortcuts */ struct active_pak { gchar *label; void (*setup)(gpointer); void (*refresh)(gpointer); GtkWidget *vbox; }; GList *active_list=NULL; struct active_pak *active_data=NULL; /***********************************/ /* refresh the active model widget */ /***********************************/ void gui_active_refresh(void) { GList *list; struct active_pak *current; for (list=active_list ; list ; list=g_list_next(list)) { current = list->data; if (active_data == current) { /* restore "proper" size */ gtk_widget_set_size_request(current->vbox, -1, -1); gtk_widget_show(current->vbox); } else gtk_widget_hide(current->vbox); } if (active_data) { if (active_data->refresh) active_data->refresh(NULL); } } /****************************************/ /* active pulldown change event handler */ /****************************************/ void gui_active_handler(GtkWidget *w, gpointer dummy) { const gchar *tmp; GList *list; struct active_pak *active; tmp = gtk_entry_get_text(GTK_ENTRY(w)); for (list=active_list ; list ; list=g_list_next(list)) { active = list->data; if (g_strcasecmp(active->label, tmp) == 0) { active_data = active; gui_active_refresh(); return; } } } /*********************************/ /* setup the active model widget */ /*********************************/ void gui_active_setup(GtkWidget *box) { gpointer entry; GList *list, *menu; struct active_pak *active; /* build the list of labels */ menu = NULL; for (list=active_list ; list ; list=g_list_next(list)) { active = list->data; menu = g_list_append(menu, g_strdup(active->label)); } /* create the header pulldown */ entry = gui_pulldown_new(NULL, menu, FALSE, box); /* create and pack the data boxes */ for (list=active_list ; list ; list=g_list_next(list)) { active = list->data; gtk_box_pack_start(GTK_BOX(box), active->vbox, FALSE, FALSE, 0); /* stop GTK maxing out the allocated height for all active model children */ gtk_widget_set_size_request(active->vbox, -1, 1); if (active->setup) active->setup(active->vbox); } /* top item is active by default */ if (active_list) active_data = active_list->data; g_signal_connect(GTK_OBJECT(entry), "changed", GTK_SIGNAL_FUNC(gui_active_handler), NULL); } /*************************************************/ /* create a new entry in the active model widget */ /*************************************************/ void gui_active_new(const gchar *label, gpointer setup, gpointer refresh) { struct active_pak *active; active = g_malloc(sizeof(struct active_pak)); active->label = g_strdup(label); active->setup = setup; active->refresh = refresh; active->vbox = gtk_vbox_new(FALSE, 0); active_list = g_list_append(active_list, active); } /*********/ /* SETUP */ /*********/ void gui_init(int argc, char *argv[]) { gint nmenu_items = sizeof (menu_items) / sizeof (menu_items[0]); gchar *text; GList *list; gpointer ptr; GtkWidget *gdis_wid; GtkWidget *hpaned, *vpaned; GtkWidget *vbox, *hbox, *vbox_lower, *menu_bar, *toolbar; GtkWidget *frame, *event_box; GdkBitmap *mask; GdkPixmap *gdis_pix=NULL; GdkPixbuf *pixbuf; GtkStyle *style; GtkItemFactory *item; GdkColor colour; gtk_init(&argc, &argv); gtk_gl_init(&argc, &argv); /* enforce true colour (fixes SG problems) */ sysenv.visual = gdk_visual_get_best_with_type(GDK_VISUAL_TRUE_COLOR); if (!sysenv.visual) { printf("Error: could not get requested visual.\n"); exit(1); } sysenv.depth = sysenv.visual->depth; sysenv.colourmap = gdk_colormap_new(sysenv.visual, TRUE); if (!sysenv.colourmap) { printf("Error: could not allocate colourmap.\n"); exit(1); } gtk_widget_push_colormap(sysenv.colourmap); gtk_widget_push_visual(sysenv.visual); /* NB: GTK graphical init needs to be done before this is called, */ /* NB: but this must be done before we build the GDIS interface */ image_table_init(); /* main window */ window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_policy(GTK_WINDOW(window), TRUE, TRUE, FALSE); gtk_window_set_title(GTK_WINDOW(window),"GTK Display Interface for Structures"); gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER); g_signal_connect(GTK_OBJECT(window), "key_press_event", (GtkSignalFunc) cb_key_press, NULL); /* vbox for the menubar */ vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(window), vbox); /* item factory menu creation */ item = gtk_item_factory_new(GTK_TYPE_MENU_BAR, "
", NULL); gtk_item_factory_create_items(item, nmenu_items, menu_items, NULL); menu_bar = gtk_item_factory_get_widget(item, "
"); /* FALSE,FALSE => don't expand to fill (eg on resize) */ gtk_box_pack_start(GTK_BOX(vbox), menu_bar, FALSE, FALSE, 0); /* hbox for the toolbar */ hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); toolbar = gtk_toolbar_new(); gtk_box_pack_start(GTK_BOX(hbox), toolbar, FALSE, FALSE, 0); /* extract some important style info */ gtk_widget_realize(window); style = gtk_widget_get_style(window); sysenv.gtk_fontsize = pango_font_description_get_size(style->font_desc) / PANGO_SCALE; /* printf("psize = %d\n", pango_font_description_get_size(style->font_desc)); printf("scale = %d\n", PANGO_SCALE); printf(" size = %d\n", sysenv.gtk_fontsize); */ /* load button */ pixbuf = image_table_lookup("image_folder"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), NULL, "Open new model", "Private", gdis_wid, GTK_SIGNAL_FUNC(file_load_dialog), NULL); /* save button */ pixbuf = image_table_lookup("image_disk"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR (toolbar), NULL, "Save active model", "Private", gdis_wid, GTK_SIGNAL_FUNC(file_save_dialog), NULL); /* NEW: a 'new model' button */ pixbuf = image_table_lookup("image_plus"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR (toolbar), NULL, "New model", "Private", gdis_wid, GTK_SIGNAL_FUNC(edit_model_create), NULL); /* delete button */ pixbuf = image_table_lookup("image_cross"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR (toolbar), NULL, "Close active model", "Private", gdis_wid, GTK_SIGNAL_FUNC(tree_select_delete), NULL); gtk_toolbar_append_space(GTK_TOOLBAR(toolbar)); /* animation */ pixbuf = image_table_lookup("image_animate"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR (toolbar), NULL, "Animation", "Private", gdis_wid, GTK_SIGNAL_FUNC(gui_animate_dialog), NULL); /* model editing */ pixbuf = image_table_lookup("image_tools"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR (toolbar), NULL, "Model editing", "Private", gdis_wid, GTK_SIGNAL_FUNC(gui_edit_dialog), NULL); /* iso surfaces */ pixbuf = image_table_lookup("image_isosurface"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR (toolbar), NULL, "Iso-surfaces", "Private", gdis_wid, GTK_SIGNAL_FUNC(gui_isosurf_dialog), NULL); /* gperiodic button */ pixbuf = image_table_lookup("image_element"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR (toolbar), NULL, "Periodic table", "Private", gdis_wid, GTK_SIGNAL_FUNC(gui_gperiodic_dialog), NULL); gtk_toolbar_append_space(GTK_TOOLBAR(toolbar)); /* diffraction button */ pixbuf = image_table_lookup("image_diffraction"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR (toolbar), NULL, "Diffraction", "Private", gdis_wid, GTK_SIGNAL_FUNC(gui_diffract_dialog), NULL); /* surface button */ pixbuf = image_table_lookup("image_surface"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR (toolbar), NULL, "Surface construction", "Private", gdis_wid, GTK_SIGNAL_FUNC(surface_dialog), NULL); gtk_toolbar_append_space(GTK_TOOLBAR(toolbar)); /* geometry button */ pixbuf = image_table_lookup("image_compass"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR (toolbar), NULL, "Measurements", "Private", gdis_wid, GTK_SIGNAL_FUNC(gui_measure_dialog), NULL); gtk_toolbar_append_space(GTK_TOOLBAR(toolbar)); /* display properties */ pixbuf = image_table_lookup("image_palette"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR (toolbar), NULL, "Display properties", "Private", gdis_wid, GTK_SIGNAL_FUNC(gui_render_dialog), NULL); /* model geomtry */ pixbuf = image_table_lookup("image_axes"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), NULL, "Reset model geometry", "Private", gdis_wid, GTK_SIGNAL_FUNC(gui_view_default), NULL); /* model images */ pixbuf = image_table_lookup("image_periodic"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), NULL, "Reset model images", "Private", gdis_wid, GTK_SIGNAL_FUNC(space_image_widget_reset), NULL); /* transformation record button */ pixbuf = image_table_lookup("image_camera"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR (toolbar), NULL, "Record mode", "Private", gdis_wid, GTK_SIGNAL_FUNC(gtk_mode_switch), GINT_TO_POINTER(RECORD)); gtk_toolbar_append_space(GTK_TOOLBAR(toolbar)); /* single canvas */ pixbuf = image_table_lookup("image_canvas_single"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR (toolbar), NULL, "Single canvas", "Private", gdis_wid, GTK_SIGNAL_FUNC(canvas_single), GINT_TO_POINTER(CANVAS_SINGLE)); /* create canvas */ pixbuf = image_table_lookup("image_canvas_create"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR (toolbar), NULL, "increase canvases", "Private", gdis_wid, GTK_SIGNAL_FUNC(canvas_create), NULL); /* delete canvas */ pixbuf = image_table_lookup("image_canvas_delete"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR (toolbar), NULL, "decrease canvases", "Private", gdis_wid, GTK_SIGNAL_FUNC(canvas_delete), NULL); gtk_toolbar_append_space(GTK_TOOLBAR(toolbar)); /* normal viewing button */ pixbuf = image_table_lookup("image_arrow"); gdis_wid = gtk_image_new_from_pixbuf(pixbuf); gtk_toolbar_append_item(GTK_TOOLBAR (toolbar), NULL, "Reset model mode", "Private", gdis_wid, GTK_SIGNAL_FUNC(gtk_mode_switch), GINT_TO_POINTER(FREE)); /* MAIN LEFT/RIGHT HBOX PANE */ /* paned window */ hpaned = gtk_hpaned_new(); gtk_container_add(GTK_CONTAINER(GTK_BOX(vbox)), hpaned); /* LEFT PANE */ sysenv.mpane = gtk_vbox_new(FALSE, 0); gtk_paned_pack1(GTK_PANED(hpaned), sysenv.mpane, TRUE, TRUE); gtk_widget_set_size_request(sysenv.mpane, sysenv.tree_width, -1); /* model tree box */ vbox = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(sysenv.mpane), vbox, TRUE, TRUE, 0); tree_init(vbox); /* model pulldown */ vbox_lower = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(sysenv.mpane), vbox_lower, FALSE, FALSE, 0); /* general model data box */ vbox = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox_lower), vbox, FALSE, FALSE, 0); /* CURRENT */ gui_active_new("Model : Content", gui_content_refresh, gui_content_refresh); gui_active_new("Model : Editing", gui_edit_widget, gui_refresh_selection); gui_active_new("Model : Display", gui_display_widget, NULL); gui_active_new("Model : Images", space_image_widget_setup, space_image_widget_redraw); gui_active_new("Model : Symmetry", gui_symmetry_refresh, gui_symmetry_refresh); gui_active_new("Model : Viewing", gui_view_widget, NULL); gui_active_setup(vbox); /* GTK is a bit dumb when it sets the initial sizes of the two panes */ /* set the pane position and store when changed */ /* gtk_paned_set_position(GTK_PANED(vpaned), sysenv.tree_divider); g_signal_connect(GTK_OBJECT(vpaned), "size-request", G_CALLBACK(cb_pane_refresh), NULL); */ /* selection pulldown */ vbox_lower = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(sysenv.mpane), vbox_lower, FALSE, FALSE, 0); list = NULL; list = g_list_append(list, "Select : Atoms"); list = g_list_append(list, "Select : Atom Label"); list = g_list_append(list, "Select : Atom FF Type"); list = g_list_append(list, "Select : Elements"); list = g_list_append(list, "Select : Elements in Molecule"); list = g_list_append(list, "Select : Molecules"); list = g_list_append(list, "Select : Molecule Fragments"); list = g_list_append(list, "Select : Regions"); ptr = gui_pulldown_new(NULL, list, FALSE, vbox_lower); g_signal_connect(GTK_OBJECT(ptr), "changed", GTK_SIGNAL_FUNC(gui_selection_mode_set), NULL); /* GDIS logo */ frame = gtk_frame_new(NULL); gtk_box_pack_end(GTK_BOX(sysenv.mpane), frame, FALSE, TRUE, 0); /* event box (get an x window for setting black background) */ event_box = gtk_event_box_new(); gtk_container_add(GTK_CONTAINER(frame), event_box); /* black background */ colour.red = 0.0; colour.green = 0.0; colour.blue = 0.0; gtk_widget_modify_bg(event_box, GTK_STATE_NORMAL, &colour); hbox = gtk_hbox_new (FALSE, 10); gtk_container_add (GTK_CONTAINER(event_box), hbox); gtk_container_set_border_width(GTK_CONTAINER(hbox), PANEL_SPACING); gdis_pix = gdk_pixmap_create_from_xpm_d(window->window, &mask, &style->bg[GTK_STATE_NORMAL], logo_left_xpm); gdis_wid = gtk_image_new_from_pixmap(gdis_pix, mask); gtk_box_pack_start(GTK_BOX(hbox), gdis_wid, FALSE, FALSE, 0); gdis_pix = gdk_pixmap_create_from_xpm_d(window->window, &mask, &style->bg[GTK_STATE_NORMAL], logo_right_81_xpm); gdis_wid = gtk_image_new_from_pixmap(gdis_pix, mask); gtk_box_pack_end(GTK_BOX(hbox), gdis_wid, FALSE, FALSE, 0); /* RIGHT PANE */ vbox = gtk_vbox_new(FALSE, 0); gtk_paned_pack2(GTK_PANED(hpaned), vbox, TRUE, TRUE); /* paned window */ vpaned = gtk_vpaned_new(); gtk_container_add(GTK_CONTAINER(vbox), vpaned); sysenv.display_box = gtk_vbox_new(FALSE, 0); gtk_paned_pack1(GTK_PANED(vpaned), sysenv.display_box, TRUE, TRUE); /* create the main drawing area */ if (gl_init_visual()) exit(1); canvas_init(sysenv.display_box); canvas_new(0, 0, sysenv.width, sysenv.height); /* text status pane */ sysenv.tpane = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sysenv.tpane), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_paned_pack2(GTK_PANED(vpaned), sysenv.tpane, TRUE, TRUE); gtk_widget_set_size_request(sysenv.tpane, -1, sysenv.tray_height); gtk_widget_show(sysenv.tpane); text = g_strdup_printf("This is free software, distributed under the terms of the GNU public license (GPL).\nFor more information visit http://www.gnu.org\n"); gui_text_show(WARNING, text); g_free(text); text = g_strdup_printf("Welcome to GDIS version %4.2f.%d, Copyright (C) %d by Sean Fleming\n",VERSION,PATCH,YEAR); gui_text_show(STANDARD, text); g_free(text); /* confirmation callback (ie really exit?) */ g_signal_connect(GTK_OBJECT(window), "delete-event", GTK_SIGNAL_FUNC(gdis_exit_event), NULL); /* save gdisrc callback */ g_signal_connect(GTK_OBJECT(window), "destroy", GTK_SIGNAL_FUNC(gdis_exit), NULL); /* show all */ gtk_widget_show_all(window); /* CURRENT */ gui_active_refresh(); } gdis-0.90/rewind.xpm0000644000175000017500000000343407737207625013067 0ustar seansean/* XPM */ static char * rewind_xpm[] = { "24 24 73 1", " c None", ". c #989C98", "+ c #585858", "@ c #B0B0B0", "# c #B8BCB8", "$ c #505060", "% c #484C60", "& c #989CA0", "* c #B0B4B0", "= c #787C80", "- c #484C58", "; c #787C98", "> c #8084B0", ", c #404868", "' c #C0C4C0", ") c #808080", "! c #606470", "~ c #707890", "{ c #9098C0", "] c #8088B8", "^ c #707CB0", "/ c #485070", "( c #909490", "_ c #606068", ": c #707488", "< c #989CB8", "[ c #98A0C8", "} c #808CB8", "| c #505870", "1 c #606070", "2 c #A0A8D0", "3 c #98A0D0", "4 c #9098C8", "5 c #8890C0", "6 c #8894C0", "7 c #9094C0", "8 c #586078", "9 c #A0A0A0", "0 c #808480", "a c #585C68", "b c #A8ACD0", "c c #A0A4D0", "d c #989CC8", "e c #606480", "f c #D0D0D0", "g c #787C78", "h c #585860", "i c #707088", "j c #888CB0", "k c #909CC8", "l c #98A4D0", "m c #606880", "n c #B8B8B8", "o c #707470", "p c #505460", "q c #586080", "r c #7880B0", "s c #D8DCD8", "t c #606468", "u c #383C50", "v c #585C88", "w c #707CA8", "x c #585C78", "y c #989898", "z c #383840", "A c #404060", "B c #686CA0", "C c #98A0A0", "D c #787878", "E c #303440", "F c #282C38", "G c #C0C0C0", "H c #888888", " ", " ", " ", " ", " ", " ", " .+@ .+ ", " #+$%& #+$% ", " *=-;>,& *=-;>, ", " ')!~{]^/& ')!~{]^/ ", " (_:<[}}}|& (_:<[}}}| ", "#+1<23456789#+1<2345678 ", "0a #include #include #include "gdis.h" #include "host.h" #include "dialog.h" #include "interface.h" #include "gui_shorts.h" extern struct sysenv_pak sysenv; GtkListStore *host_ls=NULL; GtkWidget *host_tv=NULL; /* TODO - list of queued/running/etc jobs */ /* TODO - intended to replace task manager ... since those are just jobs running on localhost */ void gui_job_page(GtkWidget *box) { } /**********************************************/ /* host program list GUI population primitive */ /**********************************************/ void gui_host_service_add(gchar *name, gpointer service, gpointer data) { gint flags; gchar *available, *invoke; GtkTreeIter iter; flags = host_service_flags(service); invoke = ""; switch (flags) { case SERVICE_BACKGROUND: invoke = "background job"; break; case SERVICE_MPI: invoke = "mpi job"; break; case SERVICE_QSUB: invoke = "queued job"; break; case SERVICE_QSUB_MPI: invoke = "queued mpi job"; break; } gtk_list_store_append(host_ls, &iter); /* test if the service configuration is available */ if (host_service_available(service)) available = "yes"; else available = "no"; gtk_list_store_set(host_ls, &iter, 0, name, 1, invoke, 2, available, -1); } /*****************************************/ /* write out host info to host info list */ /*****************************************/ void gui_host_update(gpointer host, gpointer dialog) { if (!host_ls) return; gtk_list_store_clear(host_ls); host_service_foreach(host, gui_host_service_add, dialog); } /****************************/ /* connect to host callback */ /****************************/ void gui_host_connect(GtkWidget *w, gpointer dialog) { gchar *text; gpointer host; GtkEntry *user_entry, *host_entry; user_entry = dialog_child_get(dialog, "user"); host_entry = dialog_child_get(dialog, "host"); text = g_strdup_printf("%s@%s", gtk_entry_get_text(user_entry), gtk_entry_get_text(host_entry)); host = host_new(text); g_free(text); if (host_connect(host)) printf("host_connect(): success!\n"); else printf("host_connect(): failed!\n"); gui_host_update(host, dialog); } /*********************************/ /* service method cycle callback */ /*********************************/ void gui_job_method_change(GtkWidget *w, gpointer dialog) { gint flags; gchar *name, *invoke; gpointer host, service; GtkTreeModel *treemodel; GtkTreeSelection *selection; GtkTreeIter iter; /* TODO - active host, rather than 1st on list */ if (sysenv.host_list) host = sysenv.host_list->data; else { printf("No active host connections.\n"); return; } treemodel = gtk_tree_view_get_model(GTK_TREE_VIEW(host_tv)); selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(host_tv)); if (gtk_tree_selection_get_selected(selection, &treemodel, &iter)) { gtk_tree_model_get (treemodel, &iter, 0, &name, -1); host_service_cycle(host, name); service = host_service_get(host, name); flags = host_service_flags(service); invoke = ""; switch (flags) { case SERVICE_BACKGROUND: invoke = "background job"; break; case SERVICE_MPI: invoke = "mpi job"; break; case SERVICE_QSUB: invoke = "queued job"; break; case SERVICE_QSUB_MPI: invoke = "queued mpi job"; break; } if (host_service_available(service)) gtk_list_store_set(host_ls, &iter, 1, invoke, 2, "yes", -1); else gtk_list_store_set(host_ls, &iter, 1, invoke, 2, "no", -1); } } /************************/ /* host setup/info page */ /************************/ void gui_host_page(GtkWidget *box, gpointer dialog) { gchar *titles[] = {" Service ", " Method ", " Available "}; GtkWidget *swin, *table, *label, *entry, *button; GtkCellRenderer *renderer; GtkTreeViewColumn *column; table = gtk_table_new(3, 3, FALSE); gtk_box_pack_start(GTK_BOX(box), table, FALSE, FALSE, 0); label = gtk_label_new("Hostname"); gtk_table_attach_defaults(GTK_TABLE(table),label,0,1,0,1); label = gtk_label_new("Username"); gtk_table_attach_defaults(GTK_TABLE(table),label,0,1,1,2); /* label = gtk_label_new("Password"); gtk_table_attach_defaults(GTK_TABLE(table),label,0,1,2,3); */ entry = gtk_entry_new(); gtk_table_attach_defaults(GTK_TABLE(table),entry,1,2,0,1); dialog_child_set(dialog, "host", entry); entry = gtk_entry_new(); gtk_table_attach_defaults(GTK_TABLE(table),entry,1,2,1,2); dialog_child_set(dialog, "user", entry); /* TODO - leave this out until the security/privacy implications have been dealt with */ /* entry = gtk_entry_new(); gtk_table_attach_defaults(GTK_TABLE(table),entry,1,2,2,3); */ button = gtk_button_new_with_label(" Connect "); gtk_table_attach_defaults(GTK_TABLE(table),button,2,3,0,1); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(gui_host_connect), dialog); /* current connected host properties */ swin = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW (swin), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_box_pack_start(GTK_BOX(box), swin, TRUE, TRUE, 0); host_ls = gtk_list_store_new(3, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING); host_tv = gtk_tree_view_new_with_model(GTK_TREE_MODEL(host_ls)); gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(swin), host_tv); renderer = gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes(titles[0], renderer, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(host_tv), column); gtk_tree_view_column_set_expand(column, FALSE); renderer = gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes(titles[1], renderer, "text", 1, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(host_tv), column); gtk_tree_view_column_set_expand(column, TRUE); gtk_tree_view_column_set_clickable(column, TRUE); g_signal_connect(GTK_OBJECT(column), "clicked", GTK_SIGNAL_FUNC(gui_job_method_change), dialog); renderer = gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes(titles[2], renderer, "text", 2, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(host_tv), column); gtk_tree_view_column_set_expand(column, FALSE); } /*****************************/ /* the gdis job setup dialog */ /*****************************/ void gui_job_dialog(void) { gpointer dialog; GtkWidget *window, *notebook, *page, *label; dialog = dialog_request(777, "Remote job manager", NULL, NULL, NULL); if (!dialog) return; window = dialog_window(dialog); gtk_widget_set_size_request(window, 400, 400); notebook = gtk_notebook_new(); gtk_notebook_set_tab_pos(GTK_NOTEBOOK(notebook), GTK_POS_TOP); gtk_container_add(GTK_CONTAINER(GTK_DIALOG(window)->vbox), notebook); gtk_notebook_set_show_border(GTK_NOTEBOOK(notebook), FALSE); /* run type page */ page = gtk_vbox_new(FALSE, 0); label = gtk_label_new(" Hosts "); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); gui_host_page(page, dialog); /* run type page */ page = gtk_vbox_new(FALSE, 0); label = gtk_label_new(" Jobs "); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); gui_job_page(page); gtk_widget_show_all(window); /* FIXME - active host */ if (sysenv.host_list) gui_host_update(sysenv.host_list->data, dialog); } #endif gdis-0.90/grid.h0000644000175000017500000000471111066427320012130 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ void grid_application_set(const gchar *, const gchar *); gchar *grid_application_get(const gchar *); void grid_application_remove(const gchar *); GList *grid_application_all(void); GSList *grid_search_by_name(const gchar *); gchar *grid_get_DN(gchar *); const gchar *grid_get_status(void); gchar *grid_random_alpha(gint); gchar *grid_random_alphanum(gint); gint grid_task_start(void); void grid_task_stop(void); void grid_job_start(gpointer); void grid_job_stop(gpointer); gint grid_job_new(const gchar *, gpointer); gint grid_connect(gint); gint grid_auth_check(void); void grid_auth_set(gint); void grid_credential_init(const gchar *); gint grid_job_submit(const gchar *, gpointer); GSList *grid_download_job(const gchar *); void grid_process_job(const gchar *, GSList *); // TODO grid_test -> grid_submit void grid_test(const gchar *, const gchar *); void grid_setup(void); void grid_cleanup(void); void grid_free(gpointer); gpointer grid_new(void); enum {GRID_MYPROXY, GRID_LOCALPROXY, GRID_SHIBBOLETH}; enum {GRID_SERIAL, GRID_MPI}; // other parallel types? /* stuff in a job xml file - can be filled out by querying the server */ struct grid_pak { /* CURRENT - bit of a hack for MDS query/setup */ gint jobcode; gchar *exename; gchar *exe_version; /* auth */ gchar *user_vo; /* submission */ gchar *jobname; gchar *remote_q; gchar *remote_root; gchar *remote_exe; gchar *remote_exe_module; gchar *remote_site; /* processor specific */ gint remote_exe_type; gint remote_exe_np; /* source/output destination for the job */ gchar *local_cwd; // if NULL on download - ask user gchar *local_input; gchar *local_output; /* TODO - local_upload_list if multiple data files need to be sent eg basis */ }; gdis-0.90/soapClient.c0000644000175000017500000042433411066571734013317 0ustar seansean/* soapClient.c Generated by gSOAP 2.7.9k from grisu_ws.h Copyright(C) 2000-2007, Robert van Engelen, Genivia Inc. All Rights Reserved. This part of the software is released under one of the following licenses: GPL, the gSOAP public license, or Genivia's license for commercial use. */ #include "soapH.h" #ifdef __cplusplus extern "C" { #endif SOAP_SOURCE_STAMP("@(#) soapClient.c ver 2.7.9k 2008-09-25 02:13:49 GMT") SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getChildrenFiles(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getChildrenFiles *ns1__getChildrenFiles, struct _ns1__getChildrenFilesResponse *ns1__getChildrenFilesResponse) { struct __ns1__getChildrenFiles soap_tmp___ns1__getChildrenFiles; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getChildrenFiles.ns1__getChildrenFiles = ns1__getChildrenFiles; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getChildrenFiles(soap, &soap_tmp___ns1__getChildrenFiles); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getChildrenFiles(soap, &soap_tmp___ns1__getChildrenFiles, "-ns1:getChildrenFiles", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getChildrenFiles(soap, &soap_tmp___ns1__getChildrenFiles, "-ns1:getChildrenFiles", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getChildrenFilesResponse(soap, ns1__getChildrenFilesResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getChildrenFilesResponse(soap, ns1__getChildrenFilesResponse, "ns1:getChildrenFilesResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getJobFqan(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getJobFqan *ns1__getJobFqan, struct _ns1__getJobFqanResponse *ns1__getJobFqanResponse) { struct __ns1__getJobFqan soap_tmp___ns1__getJobFqan; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getJobFqan.ns1__getJobFqan = ns1__getJobFqan; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getJobFqan(soap, &soap_tmp___ns1__getJobFqan); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getJobFqan(soap, &soap_tmp___ns1__getJobFqan, "-ns1:getJobFqan", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getJobFqan(soap, &soap_tmp___ns1__getJobFqan, "-ns1:getJobFqan", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getJobFqanResponse(soap, ns1__getJobFqanResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getJobFqanResponse(soap, ns1__getJobFqanResponse, "ns1:getJobFqanResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__mount(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__mount *ns1__mount, struct _ns1__mountResponse *ns1__mountResponse) { struct __ns1__mount soap_tmp___ns1__mount; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__mount.ns1__mount = ns1__mount; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__mount(soap, &soap_tmp___ns1__mount); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__mount(soap, &soap_tmp___ns1__mount, "-ns1:mount", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__mount(soap, &soap_tmp___ns1__mount, "-ns1:mount", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__mountResponse(soap, ns1__mountResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__mountResponse(soap, ns1__mountResponse, "ns1:mountResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__login(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__login *ns1__login, struct _ns1__loginResponse *ns1__loginResponse) { struct __ns1__login soap_tmp___ns1__login; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__login.ns1__login = ns1__login; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__login(soap, &soap_tmp___ns1__login); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__login(soap, &soap_tmp___ns1__login, "-ns1:login", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__login(soap, &soap_tmp___ns1__login, "-ns1:login", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__loginResponse(soap, ns1__loginResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__loginResponse(soap, ns1__loginResponse, "ns1:loginResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getTemplate(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getTemplate *ns1__getTemplate, struct _ns1__getTemplateResponse *ns1__getTemplateResponse) { struct __ns1__getTemplate soap_tmp___ns1__getTemplate; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getTemplate.ns1__getTemplate = ns1__getTemplate; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getTemplate(soap, &soap_tmp___ns1__getTemplate); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getTemplate(soap, &soap_tmp___ns1__getTemplate, "-ns1:getTemplate", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getTemplate(soap, &soap_tmp___ns1__getTemplate, "-ns1:getTemplate", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getTemplateResponse(soap, ns1__getTemplateResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getTemplateResponse(soap, ns1__getTemplateResponse, "ns1:getTemplateResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getFqans(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getFqans *ns1__getFqans, struct _ns1__getFqansResponse *ns1__getFqansResponse) { struct __ns1__getFqans soap_tmp___ns1__getFqans; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getFqans.ns1__getFqans = ns1__getFqans; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getFqans(soap, &soap_tmp___ns1__getFqans); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getFqans(soap, &soap_tmp___ns1__getFqans, "-ns1:getFqans", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getFqans(soap, &soap_tmp___ns1__getFqans, "-ns1:getFqans", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getFqansResponse(soap, ns1__getFqansResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getFqansResponse(soap, ns1__getFqansResponse, "ns1:getFqansResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__df(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__df *ns1__df, struct _ns1__dfResponse *ns1__dfResponse) { struct __ns1__df soap_tmp___ns1__df; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__df.ns1__df = ns1__df; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__df(soap, &soap_tmp___ns1__df); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__df(soap, &soap_tmp___ns1__df, "-ns1:df", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__df(soap, &soap_tmp___ns1__df, "-ns1:df", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__dfResponse(soap, ns1__dfResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__dfResponse(soap, ns1__dfResponse, "ns1:dfResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__downloadByteArray(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__downloadByteArray *ns1__downloadByteArray, struct _ns1__downloadByteArrayResponse *ns1__downloadByteArrayResponse) { struct __ns1__downloadByteArray soap_tmp___ns1__downloadByteArray; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__downloadByteArray.ns1__downloadByteArray = ns1__downloadByteArray; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__downloadByteArray(soap, &soap_tmp___ns1__downloadByteArray); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__downloadByteArray(soap, &soap_tmp___ns1__downloadByteArray, "-ns1:downloadByteArray", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__downloadByteArray(soap, &soap_tmp___ns1__downloadByteArray, "-ns1:downloadByteArray", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__downloadByteArrayResponse(soap, ns1__downloadByteArrayResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__downloadByteArrayResponse(soap, ns1__downloadByteArrayResponse, "ns1:downloadByteArrayResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getSubmissionLocationsForApplication2(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getSubmissionLocationsForApplication2 *ns1__getSubmissionLocationsForApplication2, struct _ns1__getSubmissionLocationsForApplication2Response *ns1__getSubmissionLocationsForApplication2Response) { struct __ns1__getSubmissionLocationsForApplication2 soap_tmp___ns1__getSubmissionLocationsForApplication2; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getSubmissionLocationsForApplication2.ns1__getSubmissionLocationsForApplication2 = ns1__getSubmissionLocationsForApplication2; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getSubmissionLocationsForApplication2(soap, &soap_tmp___ns1__getSubmissionLocationsForApplication2); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getSubmissionLocationsForApplication2(soap, &soap_tmp___ns1__getSubmissionLocationsForApplication2, "-ns1:getSubmissionLocationsForApplication2", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getSubmissionLocationsForApplication2(soap, &soap_tmp___ns1__getSubmissionLocationsForApplication2, "-ns1:getSubmissionLocationsForApplication2", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getSubmissionLocationsForApplication2Response(soap, ns1__getSubmissionLocationsForApplication2Response); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getSubmissionLocationsForApplication2Response(soap, ns1__getSubmissionLocationsForApplication2Response, "ns1:getSubmissionLocationsForApplication2Response", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__ps(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__ps *ns1__ps, struct _ns1__psResponse *ns1__psResponse) { struct __ns1__ps soap_tmp___ns1__ps; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__ps.ns1__ps = ns1__ps; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__ps(soap, &soap_tmp___ns1__ps); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__ps(soap, &soap_tmp___ns1__ps, "-ns1:ps", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__ps(soap, &soap_tmp___ns1__ps, "-ns1:ps", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__psResponse(soap, ns1__psResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__psResponse(soap, ns1__psResponse, "ns1:psResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getStagingFileSystemForSubmissionLocation *ns1__getStagingFileSystemForSubmissionLocation, struct _ns1__getStagingFileSystemForSubmissionLocationResponse *ns1__getStagingFileSystemForSubmissionLocationResponse) { struct __ns1__getStagingFileSystemForSubmissionLocation soap_tmp___ns1__getStagingFileSystemForSubmissionLocation; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getStagingFileSystemForSubmissionLocation.ns1__getStagingFileSystemForSubmissionLocation = ns1__getStagingFileSystemForSubmissionLocation; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getStagingFileSystemForSubmissionLocation(soap, &soap_tmp___ns1__getStagingFileSystemForSubmissionLocation); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getStagingFileSystemForSubmissionLocation(soap, &soap_tmp___ns1__getStagingFileSystemForSubmissionLocation, "-ns1:getStagingFileSystemForSubmissionLocation", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getStagingFileSystemForSubmissionLocation(soap, &soap_tmp___ns1__getStagingFileSystemForSubmissionLocation, "-ns1:getStagingFileSystemForSubmissionLocation", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getStagingFileSystemForSubmissionLocationResponse(soap, ns1__getStagingFileSystemForSubmissionLocationResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getStagingFileSystemForSubmissionLocationResponse(soap, ns1__getStagingFileSystemForSubmissionLocationResponse, "ns1:getStagingFileSystemForSubmissionLocationResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getUserProperty(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getUserProperty *ns1__getUserProperty, struct _ns1__getUserPropertyResponse *ns1__getUserPropertyResponse) { struct __ns1__getUserProperty soap_tmp___ns1__getUserProperty; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getUserProperty.ns1__getUserProperty = ns1__getUserProperty; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getUserProperty(soap, &soap_tmp___ns1__getUserProperty); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getUserProperty(soap, &soap_tmp___ns1__getUserProperty, "-ns1:getUserProperty", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getUserProperty(soap, &soap_tmp___ns1__getUserProperty, "-ns1:getUserProperty", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getUserPropertyResponse(soap, ns1__getUserPropertyResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getUserPropertyResponse(soap, ns1__getUserPropertyResponse, "ns1:getUserPropertyResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__mkdir(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__mkdir *ns1__mkdir, struct _ns1__mkdirResponse *ns1__mkdirResponse) { struct __ns1__mkdir soap_tmp___ns1__mkdir; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__mkdir.ns1__mkdir = ns1__mkdir; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__mkdir(soap, &soap_tmp___ns1__mkdir); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__mkdir(soap, &soap_tmp___ns1__mkdir, "-ns1:mkdir", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__mkdir(soap, &soap_tmp___ns1__mkdir, "-ns1:mkdir", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__mkdirResponse(soap, ns1__mkdirResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__mkdirResponse(soap, ns1__mkdirResponse, "ns1:mkdirResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getDataLocationsForVO(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getDataLocationsForVO *ns1__getDataLocationsForVO, struct _ns1__getDataLocationsForVOResponse *ns1__getDataLocationsForVOResponse) { struct __ns1__getDataLocationsForVO soap_tmp___ns1__getDataLocationsForVO; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getDataLocationsForVO.ns1__getDataLocationsForVO = ns1__getDataLocationsForVO; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getDataLocationsForVO(soap, &soap_tmp___ns1__getDataLocationsForVO); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getDataLocationsForVO(soap, &soap_tmp___ns1__getDataLocationsForVO, "-ns1:getDataLocationsForVO", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getDataLocationsForVO(soap, &soap_tmp___ns1__getDataLocationsForVO, "-ns1:getDataLocationsForVO", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getDataLocationsForVOResponse(soap, ns1__getDataLocationsForVOResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getDataLocationsForVOResponse(soap, ns1__getDataLocationsForVOResponse, "ns1:getDataLocationsForVOResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getSubmissionLocationsPerVersionOfApplication *ns1__getSubmissionLocationsPerVersionOfApplication, struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *ns1__getSubmissionLocationsPerVersionOfApplicationResponse) { struct __ns1__getSubmissionLocationsPerVersionOfApplication soap_tmp___ns1__getSubmissionLocationsPerVersionOfApplication; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getSubmissionLocationsPerVersionOfApplication.ns1__getSubmissionLocationsPerVersionOfApplication = ns1__getSubmissionLocationsPerVersionOfApplication; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getSubmissionLocationsPerVersionOfApplication(soap, &soap_tmp___ns1__getSubmissionLocationsPerVersionOfApplication); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getSubmissionLocationsPerVersionOfApplication(soap, &soap_tmp___ns1__getSubmissionLocationsPerVersionOfApplication, "-ns1:getSubmissionLocationsPerVersionOfApplication", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getSubmissionLocationsPerVersionOfApplication(soap, &soap_tmp___ns1__getSubmissionLocationsPerVersionOfApplication, "-ns1:getSubmissionLocationsPerVersionOfApplication", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(soap, ns1__getSubmissionLocationsPerVersionOfApplicationResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(soap, ns1__getSubmissionLocationsPerVersionOfApplicationResponse, "ns1:getSubmissionLocationsPerVersionOfApplicationResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getTemplate1(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getTemplate1 *ns1__getTemplate1, struct _ns1__getTemplate1Response *ns1__getTemplate1Response) { struct __ns1__getTemplate1 soap_tmp___ns1__getTemplate1; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getTemplate1.ns1__getTemplate1 = ns1__getTemplate1; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getTemplate1(soap, &soap_tmp___ns1__getTemplate1); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getTemplate1(soap, &soap_tmp___ns1__getTemplate1, "-ns1:getTemplate1", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getTemplate1(soap, &soap_tmp___ns1__getTemplate1, "-ns1:getTemplate1", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getTemplate1Response(soap, ns1__getTemplate1Response); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getTemplate1Response(soap, ns1__getTemplate1Response, "ns1:getTemplate1Response", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__downloadByteArray1(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__downloadByteArray1 *ns1__downloadByteArray1, struct _ns1__downloadByteArray1Response *ns1__downloadByteArray1Response) { struct __ns1__downloadByteArray1 soap_tmp___ns1__downloadByteArray1; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__downloadByteArray1.ns1__downloadByteArray1 = ns1__downloadByteArray1; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__downloadByteArray1(soap, &soap_tmp___ns1__downloadByteArray1); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__downloadByteArray1(soap, &soap_tmp___ns1__downloadByteArray1, "-ns1:downloadByteArray1", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__downloadByteArray1(soap, &soap_tmp___ns1__downloadByteArray1, "-ns1:downloadByteArray1", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__downloadByteArray1Response(soap, ns1__downloadByteArray1Response); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__downloadByteArray1Response(soap, ns1__downloadByteArray1Response, "ns1:downloadByteArray1Response", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__listHostedApplicationTemplates(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__listHostedApplicationTemplates *ns1__listHostedApplicationTemplates, struct _ns1__listHostedApplicationTemplatesResponse *ns1__listHostedApplicationTemplatesResponse) { struct __ns1__listHostedApplicationTemplates soap_tmp___ns1__listHostedApplicationTemplates; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__listHostedApplicationTemplates.ns1__listHostedApplicationTemplates = ns1__listHostedApplicationTemplates; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__listHostedApplicationTemplates(soap, &soap_tmp___ns1__listHostedApplicationTemplates); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__listHostedApplicationTemplates(soap, &soap_tmp___ns1__listHostedApplicationTemplates, "-ns1:listHostedApplicationTemplates", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__listHostedApplicationTemplates(soap, &soap_tmp___ns1__listHostedApplicationTemplates, "-ns1:listHostedApplicationTemplates", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__listHostedApplicationTemplatesResponse(soap, ns1__listHostedApplicationTemplatesResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__listHostedApplicationTemplatesResponse(soap, ns1__listHostedApplicationTemplatesResponse, "ns1:listHostedApplicationTemplatesResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__deleteFiles(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__deleteFiles *ns1__deleteFiles, struct _ns1__deleteFilesResponse *ns1__deleteFilesResponse) { struct __ns1__deleteFiles soap_tmp___ns1__deleteFiles; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__deleteFiles.ns1__deleteFiles = ns1__deleteFiles; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__deleteFiles(soap, &soap_tmp___ns1__deleteFiles); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__deleteFiles(soap, &soap_tmp___ns1__deleteFiles, "-ns1:deleteFiles", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__deleteFiles(soap, &soap_tmp___ns1__deleteFiles, "-ns1:deleteFiles", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__deleteFilesResponse(soap, ns1__deleteFilesResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__deleteFilesResponse(soap, ns1__deleteFilesResponse, "ns1:deleteFilesResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getMessagesSince(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getMessagesSince *ns1__getMessagesSince, struct _ns1__getMessagesSinceResponse *ns1__getMessagesSinceResponse) { struct __ns1__getMessagesSince soap_tmp___ns1__getMessagesSince; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getMessagesSince.ns1__getMessagesSince = ns1__getMessagesSince; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getMessagesSince(soap, &soap_tmp___ns1__getMessagesSince); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getMessagesSince(soap, &soap_tmp___ns1__getMessagesSince, "-ns1:getMessagesSince", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getMessagesSince(soap, &soap_tmp___ns1__getMessagesSince, "-ns1:getMessagesSince", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getMessagesSinceResponse(soap, ns1__getMessagesSinceResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getMessagesSinceResponse(soap, ns1__getMessagesSinceResponse, "ns1:getMessagesSinceResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__calculateAbsoluteJobDirectory(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__calculateAbsoluteJobDirectory *ns1__calculateAbsoluteJobDirectory, struct _ns1__calculateAbsoluteJobDirectoryResponse *ns1__calculateAbsoluteJobDirectoryResponse) { struct __ns1__calculateAbsoluteJobDirectory soap_tmp___ns1__calculateAbsoluteJobDirectory; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__calculateAbsoluteJobDirectory.ns1__calculateAbsoluteJobDirectory = ns1__calculateAbsoluteJobDirectory; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__calculateAbsoluteJobDirectory(soap, &soap_tmp___ns1__calculateAbsoluteJobDirectory); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__calculateAbsoluteJobDirectory(soap, &soap_tmp___ns1__calculateAbsoluteJobDirectory, "-ns1:calculateAbsoluteJobDirectory", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__calculateAbsoluteJobDirectory(soap, &soap_tmp___ns1__calculateAbsoluteJobDirectory, "-ns1:calculateAbsoluteJobDirectory", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__calculateAbsoluteJobDirectoryResponse(soap, ns1__calculateAbsoluteJobDirectoryResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__calculateAbsoluteJobDirectoryResponse(soap, ns1__calculateAbsoluteJobDirectoryResponse, "ns1:calculateAbsoluteJobDirectoryResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__ls_USCOREstring(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__ls_USCOREstring *ns1__ls_USCOREstring, struct _ns1__ls_USCOREstringResponse *ns1__ls_USCOREstringResponse) { struct __ns1__ls_USCOREstring soap_tmp___ns1__ls_USCOREstring; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__ls_USCOREstring.ns1__ls_USCOREstring = ns1__ls_USCOREstring; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__ls_USCOREstring(soap, &soap_tmp___ns1__ls_USCOREstring); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__ls_USCOREstring(soap, &soap_tmp___ns1__ls_USCOREstring, "-ns1:ls_string", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__ls_USCOREstring(soap, &soap_tmp___ns1__ls_USCOREstring, "-ns1:ls_string", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__ls_USCOREstringResponse(soap, ns1__ls_USCOREstringResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__ls_USCOREstringResponse(soap, ns1__ls_USCOREstringResponse, "ns1:ls_stringResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getSubmissionLocationsForApplication1(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getSubmissionLocationsForApplication1 *ns1__getSubmissionLocationsForApplication1, struct _ns1__getSubmissionLocationsForApplication1Response *ns1__getSubmissionLocationsForApplication1Response) { struct __ns1__getSubmissionLocationsForApplication1 soap_tmp___ns1__getSubmissionLocationsForApplication1; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getSubmissionLocationsForApplication1.ns1__getSubmissionLocationsForApplication1 = ns1__getSubmissionLocationsForApplication1; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getSubmissionLocationsForApplication1(soap, &soap_tmp___ns1__getSubmissionLocationsForApplication1); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getSubmissionLocationsForApplication1(soap, &soap_tmp___ns1__getSubmissionLocationsForApplication1, "-ns1:getSubmissionLocationsForApplication1", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getSubmissionLocationsForApplication1(soap, &soap_tmp___ns1__getSubmissionLocationsForApplication1, "-ns1:getSubmissionLocationsForApplication1", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getSubmissionLocationsForApplication1Response(soap, ns1__getSubmissionLocationsForApplication1Response); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getSubmissionLocationsForApplication1Response(soap, ns1__getSubmissionLocationsForApplication1Response, "ns1:getSubmissionLocationsForApplication1Response", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getApplicationDetails(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getApplicationDetails *ns1__getApplicationDetails, struct _ns1__getApplicationDetailsResponse *ns1__getApplicationDetailsResponse) { struct __ns1__getApplicationDetails soap_tmp___ns1__getApplicationDetails; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getApplicationDetails.ns1__getApplicationDetails = ns1__getApplicationDetails; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getApplicationDetails(soap, &soap_tmp___ns1__getApplicationDetails); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getApplicationDetails(soap, &soap_tmp___ns1__getApplicationDetails, "-ns1:getApplicationDetails", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getApplicationDetails(soap, &soap_tmp___ns1__getApplicationDetails, "-ns1:getApplicationDetails", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getApplicationDetailsResponse(soap, ns1__getApplicationDetailsResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getApplicationDetailsResponse(soap, ns1__getApplicationDetailsResponse, "ns1:getApplicationDetailsResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__createJob1(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__createJob1 *ns1__createJob1, struct _ns1__createJob1Response *ns1__createJob1Response) { struct __ns1__createJob1 soap_tmp___ns1__createJob1; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__createJob1.ns1__createJob1 = ns1__createJob1; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__createJob1(soap, &soap_tmp___ns1__createJob1); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__createJob1(soap, &soap_tmp___ns1__createJob1, "-ns1:createJob1", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__createJob1(soap, &soap_tmp___ns1__createJob1, "-ns1:createJob1", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__createJob1Response(soap, ns1__createJob1Response); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__createJob1Response(soap, ns1__createJob1Response, "ns1:createJob1Response", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getSubmissionLocationsForApplication(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getSubmissionLocationsForApplication *ns1__getSubmissionLocationsForApplication, struct _ns1__getSubmissionLocationsForApplicationResponse *ns1__getSubmissionLocationsForApplicationResponse) { struct __ns1__getSubmissionLocationsForApplication soap_tmp___ns1__getSubmissionLocationsForApplication; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getSubmissionLocationsForApplication.ns1__getSubmissionLocationsForApplication = ns1__getSubmissionLocationsForApplication; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getSubmissionLocationsForApplication(soap, &soap_tmp___ns1__getSubmissionLocationsForApplication); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getSubmissionLocationsForApplication(soap, &soap_tmp___ns1__getSubmissionLocationsForApplication, "-ns1:getSubmissionLocationsForApplication", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getSubmissionLocationsForApplication(soap, &soap_tmp___ns1__getSubmissionLocationsForApplication, "-ns1:getSubmissionLocationsForApplication", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getSubmissionLocationsForApplicationResponse(soap, ns1__getSubmissionLocationsForApplicationResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getSubmissionLocationsForApplicationResponse(soap, ns1__getSubmissionLocationsForApplicationResponse, "ns1:getSubmissionLocationsForApplicationResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getDN(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getDN *ns1__getDN, struct _ns1__getDNResponse *ns1__getDNResponse) { struct __ns1__getDN soap_tmp___ns1__getDN; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getDN.ns1__getDN = ns1__getDN; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getDN(soap, &soap_tmp___ns1__getDN); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getDN(soap, &soap_tmp___ns1__getDN, "-ns1:getDN", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getDN(soap, &soap_tmp___ns1__getDN, "-ns1:getDN", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getDNResponse(soap, ns1__getDNResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getDNResponse(soap, ns1__getDNResponse, "ns1:getDNResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getAllJobnames(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getAllJobnames *ns1__getAllJobnames, struct _ns1__getAllJobnamesResponse *ns1__getAllJobnamesResponse) { struct __ns1__getAllJobnames soap_tmp___ns1__getAllJobnames; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getAllJobnames.ns1__getAllJobnames = ns1__getAllJobnames; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getAllJobnames(soap, &soap_tmp___ns1__getAllJobnames); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getAllJobnames(soap, &soap_tmp___ns1__getAllJobnames, "-ns1:getAllJobnames", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getAllJobnames(soap, &soap_tmp___ns1__getAllJobnames, "-ns1:getAllJobnames", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getAllJobnamesResponse(soap, ns1__getAllJobnamesResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getAllJobnamesResponse(soap, ns1__getAllJobnamesResponse, "ns1:getAllJobnamesResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getAllJobProperties(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getAllJobProperties *ns1__getAllJobProperties, struct _ns1__getAllJobPropertiesResponse *ns1__getAllJobPropertiesResponse) { struct __ns1__getAllJobProperties soap_tmp___ns1__getAllJobProperties; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getAllJobProperties.ns1__getAllJobProperties = ns1__getAllJobProperties; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getAllJobProperties(soap, &soap_tmp___ns1__getAllJobProperties); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getAllJobProperties(soap, &soap_tmp___ns1__getAllJobProperties, "-ns1:getAllJobProperties", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getAllJobProperties(soap, &soap_tmp___ns1__getAllJobProperties, "-ns1:getAllJobProperties", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getAllJobPropertiesResponse(soap, ns1__getAllJobPropertiesResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getAllJobPropertiesResponse(soap, ns1__getAllJobPropertiesResponse, "ns1:getAllJobPropertiesResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__download(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__download *ns1__download, struct _ns1__downloadResponse *ns1__downloadResponse) { struct __ns1__download soap_tmp___ns1__download; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__download.ns1__download = ns1__download; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__download(soap, &soap_tmp___ns1__download); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__download(soap, &soap_tmp___ns1__download, "-ns1:download", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__download(soap, &soap_tmp___ns1__download, "-ns1:download", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__downloadResponse(soap, ns1__downloadResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__downloadResponse(soap, ns1__downloadResponse, "ns1:downloadResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__isFolder(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__isFolder *ns1__isFolder, struct _ns1__isFolderResponse *ns1__isFolderResponse) { struct __ns1__isFolder soap_tmp___ns1__isFolder; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__isFolder.ns1__isFolder = ns1__isFolder; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__isFolder(soap, &soap_tmp___ns1__isFolder); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__isFolder(soap, &soap_tmp___ns1__isFolder, "-ns1:isFolder", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__isFolder(soap, &soap_tmp___ns1__isFolder, "-ns1:isFolder", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__isFolderResponse(soap, ns1__isFolderResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__isFolderResponse(soap, ns1__isFolderResponse, "ns1:isFolderResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__kill(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__kill *ns1__kill, struct _ns1__killResponse *ns1__killResponse) { struct __ns1__kill soap_tmp___ns1__kill; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__kill.ns1__kill = ns1__kill; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__kill(soap, &soap_tmp___ns1__kill); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__kill(soap, &soap_tmp___ns1__kill, "-ns1:kill", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__kill(soap, &soap_tmp___ns1__kill, "-ns1:kill", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__killResponse(soap, ns1__killResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__killResponse(soap, ns1__killResponse, "ns1:killResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getAllAvailableApplications(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getAllAvailableApplications *ns1__getAllAvailableApplications, struct _ns1__getAllAvailableApplicationsResponse *ns1__getAllAvailableApplicationsResponse) { struct __ns1__getAllAvailableApplications soap_tmp___ns1__getAllAvailableApplications; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getAllAvailableApplications.ns1__getAllAvailableApplications = ns1__getAllAvailableApplications; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getAllAvailableApplications(soap, &soap_tmp___ns1__getAllAvailableApplications); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getAllAvailableApplications(soap, &soap_tmp___ns1__getAllAvailableApplications, "-ns1:getAllAvailableApplications", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getAllAvailableApplications(soap, &soap_tmp___ns1__getAllAvailableApplications, "-ns1:getAllAvailableApplications", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getAllAvailableApplicationsResponse(soap, ns1__getAllAvailableApplicationsResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getAllAvailableApplicationsResponse(soap, ns1__getAllAvailableApplicationsResponse, "ns1:getAllAvailableApplicationsResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__addJobProperties(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__addJobProperties *ns1__addJobProperties, struct _ns1__addJobPropertiesResponse *ns1__addJobPropertiesResponse) { struct __ns1__addJobProperties soap_tmp___ns1__addJobProperties; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__addJobProperties.ns1__addJobProperties = ns1__addJobProperties; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__addJobProperties(soap, &soap_tmp___ns1__addJobProperties); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__addJobProperties(soap, &soap_tmp___ns1__addJobProperties, "-ns1:addJobProperties", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__addJobProperties(soap, &soap_tmp___ns1__addJobProperties, "-ns1:addJobProperties", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__addJobPropertiesResponse(soap, ns1__addJobPropertiesResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__addJobPropertiesResponse(soap, ns1__addJobPropertiesResponse, "ns1:addJobPropertiesResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__addJobProperty(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__addJobProperty *ns1__addJobProperty, struct _ns1__addJobPropertyResponse *ns1__addJobPropertyResponse) { struct __ns1__addJobProperty soap_tmp___ns1__addJobProperty; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__addJobProperty.ns1__addJobProperty = ns1__addJobProperty; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__addJobProperty(soap, &soap_tmp___ns1__addJobProperty); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__addJobProperty(soap, &soap_tmp___ns1__addJobProperty, "-ns1:addJobProperty", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__addJobProperty(soap, &soap_tmp___ns1__addJobProperty, "-ns1:addJobProperty", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__addJobPropertyResponse(soap, ns1__addJobPropertyResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__addJobPropertyResponse(soap, ns1__addJobPropertyResponse, "ns1:addJobPropertyResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getAllSubmissionLocations(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getAllSubmissionLocations *ns1__getAllSubmissionLocations, struct _ns1__getAllSubmissionLocationsResponse *ns1__getAllSubmissionLocationsResponse) { struct __ns1__getAllSubmissionLocations soap_tmp___ns1__getAllSubmissionLocations; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getAllSubmissionLocations.ns1__getAllSubmissionLocations = ns1__getAllSubmissionLocations; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getAllSubmissionLocations(soap, &soap_tmp___ns1__getAllSubmissionLocations); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getAllSubmissionLocations(soap, &soap_tmp___ns1__getAllSubmissionLocations, "-ns1:getAllSubmissionLocations", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getAllSubmissionLocations(soap, &soap_tmp___ns1__getAllSubmissionLocations, "-ns1:getAllSubmissionLocations", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getAllSubmissionLocationsResponse(soap, ns1__getAllSubmissionLocationsResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getAllSubmissionLocationsResponse(soap, ns1__getAllSubmissionLocationsResponse, "ns1:getAllSubmissionLocationsResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getInterfaceVersion(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getInterfaceVersion *ns1__getInterfaceVersion, struct _ns1__getInterfaceVersionResponse *ns1__getInterfaceVersionResponse) { struct __ns1__getInterfaceVersion soap_tmp___ns1__getInterfaceVersion; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getInterfaceVersion.ns1__getInterfaceVersion = ns1__getInterfaceVersion; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getInterfaceVersion(soap, &soap_tmp___ns1__getInterfaceVersion); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getInterfaceVersion(soap, &soap_tmp___ns1__getInterfaceVersion, "-ns1:getInterfaceVersion", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getInterfaceVersion(soap, &soap_tmp___ns1__getInterfaceVersion, "-ns1:getInterfaceVersion", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getInterfaceVersionResponse(soap, ns1__getInterfaceVersionResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getInterfaceVersionResponse(soap, ns1__getInterfaceVersionResponse, "ns1:getInterfaceVersionResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__createJob(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__createJob *ns1__createJob, struct _ns1__createJobResponse *ns1__createJobResponse) { struct __ns1__createJob soap_tmp___ns1__createJob; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__createJob.ns1__createJob = ns1__createJob; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__createJob(soap, &soap_tmp___ns1__createJob); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__createJob(soap, &soap_tmp___ns1__createJob, "-ns1:createJob", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__createJob(soap, &soap_tmp___ns1__createJob, "-ns1:createJob", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__createJobResponse(soap, ns1__createJobResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__createJobResponse(soap, ns1__createJobResponse, "ns1:createJobResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getAllSubmissionLocations1(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getAllSubmissionLocations1 *ns1__getAllSubmissionLocations1, struct _ns1__getAllSubmissionLocations1Response *ns1__getAllSubmissionLocations1Response) { struct __ns1__getAllSubmissionLocations1 soap_tmp___ns1__getAllSubmissionLocations1; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getAllSubmissionLocations1.ns1__getAllSubmissionLocations1 = ns1__getAllSubmissionLocations1; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getAllSubmissionLocations1(soap, &soap_tmp___ns1__getAllSubmissionLocations1); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getAllSubmissionLocations1(soap, &soap_tmp___ns1__getAllSubmissionLocations1, "-ns1:getAllSubmissionLocations1", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getAllSubmissionLocations1(soap, &soap_tmp___ns1__getAllSubmissionLocations1, "-ns1:getAllSubmissionLocations1", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getAllSubmissionLocations1Response(soap, ns1__getAllSubmissionLocations1Response); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getAllSubmissionLocations1Response(soap, ns1__getAllSubmissionLocations1Response, "ns1:getAllSubmissionLocations1Response", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getVersionsOfApplicationOnSite(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getVersionsOfApplicationOnSite *ns1__getVersionsOfApplicationOnSite, struct _ns1__getVersionsOfApplicationOnSiteResponse *ns1__getVersionsOfApplicationOnSiteResponse) { struct __ns1__getVersionsOfApplicationOnSite soap_tmp___ns1__getVersionsOfApplicationOnSite; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getVersionsOfApplicationOnSite.ns1__getVersionsOfApplicationOnSite = ns1__getVersionsOfApplicationOnSite; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getVersionsOfApplicationOnSite(soap, &soap_tmp___ns1__getVersionsOfApplicationOnSite); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getVersionsOfApplicationOnSite(soap, &soap_tmp___ns1__getVersionsOfApplicationOnSite, "-ns1:getVersionsOfApplicationOnSite", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getVersionsOfApplicationOnSite(soap, &soap_tmp___ns1__getVersionsOfApplicationOnSite, "-ns1:getVersionsOfApplicationOnSite", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getVersionsOfApplicationOnSiteResponse(soap, ns1__getVersionsOfApplicationOnSiteResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getVersionsOfApplicationOnSiteResponse(soap, ns1__getVersionsOfApplicationOnSiteResponse, "ns1:getVersionsOfApplicationOnSiteResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__uploadByteArray1(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__uploadByteArray1 *ns1__uploadByteArray1, struct _ns1__uploadByteArray1Response *ns1__uploadByteArray1Response) { struct __ns1__uploadByteArray1 soap_tmp___ns1__uploadByteArray1; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__uploadByteArray1.ns1__uploadByteArray1 = ns1__uploadByteArray1; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__uploadByteArray1(soap, &soap_tmp___ns1__uploadByteArray1); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__uploadByteArray1(soap, &soap_tmp___ns1__uploadByteArray1, "-ns1:uploadByteArray1", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__uploadByteArray1(soap, &soap_tmp___ns1__uploadByteArray1, "-ns1:uploadByteArray1", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__uploadByteArray1Response(soap, ns1__uploadByteArray1Response); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__uploadByteArray1Response(soap, ns1__uploadByteArray1Response, "ns1:uploadByteArray1Response", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__ps_USCOREstring(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__ps_USCOREstring *ns1__ps_USCOREstring, struct _ns1__ps_USCOREstringResponse *ns1__ps_USCOREstringResponse) { struct __ns1__ps_USCOREstring soap_tmp___ns1__ps_USCOREstring; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__ps_USCOREstring.ns1__ps_USCOREstring = ns1__ps_USCOREstring; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__ps_USCOREstring(soap, &soap_tmp___ns1__ps_USCOREstring); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__ps_USCOREstring(soap, &soap_tmp___ns1__ps_USCOREstring, "-ns1:ps_string", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__ps_USCOREstring(soap, &soap_tmp___ns1__ps_USCOREstring, "-ns1:ps_string", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__ps_USCOREstringResponse(soap, ns1__ps_USCOREstringResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__ps_USCOREstringResponse(soap, ns1__ps_USCOREstringResponse, "ns1:ps_stringResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getSite(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getSite *ns1__getSite, struct _ns1__getSiteResponse *ns1__getSiteResponse) { struct __ns1__getSite soap_tmp___ns1__getSite; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getSite.ns1__getSite = ns1__getSite; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getSite(soap, &soap_tmp___ns1__getSite); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getSite(soap, &soap_tmp___ns1__getSite, "-ns1:getSite", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getSite(soap, &soap_tmp___ns1__getSite, "-ns1:getSite", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getSiteResponse(soap, ns1__getSiteResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getSiteResponse(soap, ns1__getSiteResponse, "ns1:getSiteResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__lastModified(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__lastModified *ns1__lastModified, struct _ns1__lastModifiedResponse *ns1__lastModifiedResponse) { struct __ns1__lastModified soap_tmp___ns1__lastModified; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__lastModified.ns1__lastModified = ns1__lastModified; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__lastModified(soap, &soap_tmp___ns1__lastModified); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__lastModified(soap, &soap_tmp___ns1__lastModified, "-ns1:lastModified", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__lastModified(soap, &soap_tmp___ns1__lastModified, "-ns1:lastModified", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__lastModifiedResponse(soap, ns1__lastModifiedResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__lastModifiedResponse(soap, ns1__lastModifiedResponse, "ns1:lastModifiedResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__ls(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__ls *ns1__ls, struct _ns1__lsResponse *ns1__lsResponse) { struct __ns1__ls soap_tmp___ns1__ls; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__ls.ns1__ls = ns1__ls; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__ls(soap, &soap_tmp___ns1__ls); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__ls(soap, &soap_tmp___ns1__ls, "-ns1:ls", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__ls(soap, &soap_tmp___ns1__ls, "-ns1:ls", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__lsResponse(soap, ns1__lsResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__lsResponse(soap, ns1__lsResponse, "ns1:lsResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getApplicationDetails1(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getApplicationDetails1 *ns1__getApplicationDetails1, struct _ns1__getApplicationDetails1Response *ns1__getApplicationDetails1Response) { struct __ns1__getApplicationDetails1 soap_tmp___ns1__getApplicationDetails1; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getApplicationDetails1.ns1__getApplicationDetails1 = ns1__getApplicationDetails1; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getApplicationDetails1(soap, &soap_tmp___ns1__getApplicationDetails1); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getApplicationDetails1(soap, &soap_tmp___ns1__getApplicationDetails1, "-ns1:getApplicationDetails1", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getApplicationDetails1(soap, &soap_tmp___ns1__getApplicationDetails1, "-ns1:getApplicationDetails1", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getApplicationDetails1Response(soap, ns1__getApplicationDetails1Response); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getApplicationDetails1Response(soap, ns1__getApplicationDetails1Response, "ns1:getApplicationDetails1Response", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__calculateRelativeJobDirectory(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__calculateRelativeJobDirectory *ns1__calculateRelativeJobDirectory, struct _ns1__calculateRelativeJobDirectoryResponse *ns1__calculateRelativeJobDirectoryResponse) { struct __ns1__calculateRelativeJobDirectory soap_tmp___ns1__calculateRelativeJobDirectory; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__calculateRelativeJobDirectory.ns1__calculateRelativeJobDirectory = ns1__calculateRelativeJobDirectory; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__calculateRelativeJobDirectory(soap, &soap_tmp___ns1__calculateRelativeJobDirectory); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__calculateRelativeJobDirectory(soap, &soap_tmp___ns1__calculateRelativeJobDirectory, "-ns1:calculateRelativeJobDirectory", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__calculateRelativeJobDirectory(soap, &soap_tmp___ns1__calculateRelativeJobDirectory, "-ns1:calculateRelativeJobDirectory", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__calculateRelativeJobDirectoryResponse(soap, ns1__calculateRelativeJobDirectoryResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__calculateRelativeJobDirectoryResponse(soap, ns1__calculateRelativeJobDirectoryResponse, "ns1:calculateRelativeJobDirectoryResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__setJobDescription_USCOREstring(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__setJobDescription_USCOREstring *ns1__setJobDescription_USCOREstring, struct _ns1__setJobDescription_USCOREstringResponse *ns1__setJobDescription_USCOREstringResponse) { struct __ns1__setJobDescription_USCOREstring soap_tmp___ns1__setJobDescription_USCOREstring; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__setJobDescription_USCOREstring.ns1__setJobDescription_USCOREstring = ns1__setJobDescription_USCOREstring; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__setJobDescription_USCOREstring(soap, &soap_tmp___ns1__setJobDescription_USCOREstring); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__setJobDescription_USCOREstring(soap, &soap_tmp___ns1__setJobDescription_USCOREstring, "-ns1:setJobDescription_string", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__setJobDescription_USCOREstring(soap, &soap_tmp___ns1__setJobDescription_USCOREstring, "-ns1:setJobDescription_string", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__setJobDescription_USCOREstringResponse(soap, ns1__setJobDescription_USCOREstringResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__setJobDescription_USCOREstringResponse(soap, ns1__setJobDescription_USCOREstringResponse, "ns1:setJobDescription_stringResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__logout(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__logout *ns1__logout, struct _ns1__logoutResponse *ns1__logoutResponse) { struct __ns1__logout soap_tmp___ns1__logout; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__logout.ns1__logout = ns1__logout; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__logout(soap, &soap_tmp___ns1__logout); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__logout(soap, &soap_tmp___ns1__logout, "-ns1:logout", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__logout(soap, &soap_tmp___ns1__logout, "-ns1:logout", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__logoutResponse(soap, ns1__logoutResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__logoutResponse(soap, ns1__logoutResponse, "ns1:logoutResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__submitJob(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__submitJob *ns1__submitJob, struct _ns1__submitJobResponse *ns1__submitJobResponse) { struct __ns1__submitJob soap_tmp___ns1__submitJob; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__submitJob.ns1__submitJob = ns1__submitJob; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__submitJob(soap, &soap_tmp___ns1__submitJob); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__submitJob(soap, &soap_tmp___ns1__submitJob, "-ns1:submitJob", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__submitJob(soap, &soap_tmp___ns1__submitJob, "-ns1:submitJob", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__submitJobResponse(soap, ns1__submitJobResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__submitJobResponse(soap, ns1__submitJobResponse, "ns1:submitJobResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__uploadByteArray(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__uploadByteArray *ns1__uploadByteArray, struct _ns1__uploadByteArrayResponse *ns1__uploadByteArrayResponse) { struct __ns1__uploadByteArray soap_tmp___ns1__uploadByteArray; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__uploadByteArray.ns1__uploadByteArray = ns1__uploadByteArray; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__uploadByteArray(soap, &soap_tmp___ns1__uploadByteArray); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__uploadByteArray(soap, &soap_tmp___ns1__uploadByteArray, "-ns1:uploadByteArray", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__uploadByteArray(soap, &soap_tmp___ns1__uploadByteArray, "-ns1:uploadByteArray", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__uploadByteArrayResponse(soap, ns1__uploadByteArrayResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__uploadByteArrayResponse(soap, ns1__uploadByteArrayResponse, "ns1:uploadByteArrayResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__cp(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__cp *ns1__cp, struct _ns1__cpResponse *ns1__cpResponse) { struct __ns1__cp soap_tmp___ns1__cp; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__cp.ns1__cp = ns1__cp; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__cp(soap, &soap_tmp___ns1__cp); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__cp(soap, &soap_tmp___ns1__cp, "-ns1:cp", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__cp(soap, &soap_tmp___ns1__cp, "-ns1:cp", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__cpResponse(soap, ns1__cpResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__cpResponse(soap, ns1__cpResponse, "ns1:cpResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getFileSize(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getFileSize *ns1__getFileSize, struct _ns1__getFileSizeResponse *ns1__getFileSizeResponse) { struct __ns1__getFileSize soap_tmp___ns1__getFileSize; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getFileSize.ns1__getFileSize = ns1__getFileSize; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getFileSize(soap, &soap_tmp___ns1__getFileSize); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getFileSize(soap, &soap_tmp___ns1__getFileSize, "-ns1:getFileSize", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getFileSize(soap, &soap_tmp___ns1__getFileSize, "-ns1:getFileSize", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getFileSizeResponse(soap, ns1__getFileSizeResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getFileSizeResponse(soap, ns1__getFileSizeResponse, "ns1:getFileSizeResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__deleteFile(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__deleteFile *ns1__deleteFile, struct _ns1__deleteFileResponse *ns1__deleteFileResponse) { struct __ns1__deleteFile soap_tmp___ns1__deleteFile; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__deleteFile.ns1__deleteFile = ns1__deleteFile; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__deleteFile(soap, &soap_tmp___ns1__deleteFile); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__deleteFile(soap, &soap_tmp___ns1__deleteFile, "-ns1:deleteFile", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__deleteFile(soap, &soap_tmp___ns1__deleteFile, "-ns1:deleteFile", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__deleteFileResponse(soap, ns1__deleteFileResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__deleteFileResponse(soap, ns1__deleteFileResponse, "ns1:deleteFileResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__upload(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__upload *ns1__upload, struct _ns1__uploadResponse *ns1__uploadResponse) { struct __ns1__upload soap_tmp___ns1__upload; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__upload.ns1__upload = ns1__upload; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__upload(soap, &soap_tmp___ns1__upload); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__upload(soap, &soap_tmp___ns1__upload, "-ns1:upload", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__upload(soap, &soap_tmp___ns1__upload, "-ns1:upload", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__uploadResponse(soap, ns1__uploadResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__uploadResponse(soap, ns1__uploadResponse, "ns1:uploadResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getJobDirectory(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getJobDirectory *ns1__getJobDirectory, struct _ns1__getJobDirectoryResponse *ns1__getJobDirectoryResponse) { struct __ns1__getJobDirectory soap_tmp___ns1__getJobDirectory; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getJobDirectory.ns1__getJobDirectory = ns1__getJobDirectory; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getJobDirectory(soap, &soap_tmp___ns1__getJobDirectory); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getJobDirectory(soap, &soap_tmp___ns1__getJobDirectory, "-ns1:getJobDirectory", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getJobDirectory(soap, &soap_tmp___ns1__getJobDirectory, "-ns1:getJobDirectory", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getJobDirectoryResponse(soap, ns1__getJobDirectoryResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getJobDirectoryResponse(soap, ns1__getJobDirectoryResponse, "ns1:getJobDirectoryResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__setJobDescription(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__setJobDescription *ns1__setJobDescription, struct _ns1__setJobDescriptionResponse *ns1__setJobDescriptionResponse) { struct __ns1__setJobDescription soap_tmp___ns1__setJobDescription; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__setJobDescription.ns1__setJobDescription = ns1__setJobDescription; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__setJobDescription(soap, &soap_tmp___ns1__setJobDescription); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__setJobDescription(soap, &soap_tmp___ns1__setJobDescription, "-ns1:setJobDescription", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__setJobDescription(soap, &soap_tmp___ns1__setJobDescription, "-ns1:setJobDescription", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__setJobDescriptionResponse(soap, ns1__setJobDescriptionResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__setJobDescriptionResponse(soap, ns1__setJobDescriptionResponse, "ns1:setJobDescriptionResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getAllSites(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getAllSites *ns1__getAllSites, struct _ns1__getAllSitesResponse *ns1__getAllSitesResponse) { struct __ns1__getAllSites soap_tmp___ns1__getAllSites; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getAllSites.ns1__getAllSites = ns1__getAllSites; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getAllSites(soap, &soap_tmp___ns1__getAllSites); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getAllSites(soap, &soap_tmp___ns1__getAllSites, "-ns1:getAllSites", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getAllSites(soap, &soap_tmp___ns1__getAllSites, "-ns1:getAllSites", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getAllSitesResponse(soap, ns1__getAllSitesResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getAllSitesResponse(soap, ns1__getAllSitesResponse, "ns1:getAllSitesResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getJobDetails_USCOREstring(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getJobDetails_USCOREstring *ns1__getJobDetails_USCOREstring, struct _ns1__getJobDetails_USCOREstringResponse *ns1__getJobDetails_USCOREstringResponse) { struct __ns1__getJobDetails_USCOREstring soap_tmp___ns1__getJobDetails_USCOREstring; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getJobDetails_USCOREstring.ns1__getJobDetails_USCOREstring = ns1__getJobDetails_USCOREstring; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getJobDetails_USCOREstring(soap, &soap_tmp___ns1__getJobDetails_USCOREstring); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getJobDetails_USCOREstring(soap, &soap_tmp___ns1__getJobDetails_USCOREstring, "-ns1:getJobDetails_string", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getJobDetails_USCOREstring(soap, &soap_tmp___ns1__getJobDetails_USCOREstring, "-ns1:getJobDetails_string", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getJobDetails_USCOREstringResponse(soap, ns1__getJobDetails_USCOREstringResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getJobDetails_USCOREstringResponse(soap, ns1__getJobDetails_USCOREstringResponse, "ns1:getJobDetails_stringResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getJobStatus(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getJobStatus *ns1__getJobStatus, struct _ns1__getJobStatusResponse *ns1__getJobStatusResponse) { struct __ns1__getJobStatus soap_tmp___ns1__getJobStatus; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getJobStatus.ns1__getJobStatus = ns1__getJobStatus; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getJobStatus(soap, &soap_tmp___ns1__getJobStatus); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getJobStatus(soap, &soap_tmp___ns1__getJobStatus, "-ns1:getJobStatus", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getJobStatus(soap, &soap_tmp___ns1__getJobStatus, "-ns1:getJobStatus", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getJobStatusResponse(soap, ns1__getJobStatusResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getJobStatusResponse(soap, ns1__getJobStatusResponse, "ns1:getJobStatusResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__umount(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__umount *ns1__umount, struct _ns1__umountResponse *ns1__umountResponse) { struct __ns1__umount soap_tmp___ns1__umount; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__umount.ns1__umount = ns1__umount; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__umount(soap, &soap_tmp___ns1__umount); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__umount(soap, &soap_tmp___ns1__umount, "-ns1:umount", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__umount(soap, &soap_tmp___ns1__umount, "-ns1:umount", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__umountResponse(soap, ns1__umountResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__umountResponse(soap, ns1__umountResponse, "ns1:umountResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getJobDetails(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getJobDetails *ns1__getJobDetails, struct _ns1__getJobDetailsResponse *ns1__getJobDetailsResponse) { struct __ns1__getJobDetails soap_tmp___ns1__getJobDetails; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getJobDetails.ns1__getJobDetails = ns1__getJobDetails; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getJobDetails(soap, &soap_tmp___ns1__getJobDetails); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getJobDetails(soap, &soap_tmp___ns1__getJobDetails, "-ns1:getJobDetails", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getJobDetails(soap, &soap_tmp___ns1__getJobDetails, "-ns1:getJobDetails", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getJobDetailsResponse(soap, ns1__getJobDetailsResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getJobDetailsResponse(soap, ns1__getJobDetailsResponse, "ns1:getJobDetailsResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__mount1(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__mount1 *ns1__mount1, struct _ns1__mount1Response *ns1__mount1Response) { struct __ns1__mount1 soap_tmp___ns1__mount1; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__mount1.ns1__mount1 = ns1__mount1; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__mount1(soap, &soap_tmp___ns1__mount1); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__mount1(soap, &soap_tmp___ns1__mount1, "-ns1:mount1", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__mount1(soap, &soap_tmp___ns1__mount1, "-ns1:mount1", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__mount1Response(soap, ns1__mount1Response); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__mount1Response(soap, ns1__mount1Response, "ns1:mount1Response", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getJobProperty(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getJobProperty *ns1__getJobProperty, struct _ns1__getJobPropertyResponse *ns1__getJobPropertyResponse) { struct __ns1__getJobProperty soap_tmp___ns1__getJobProperty; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getJobProperty.ns1__getJobProperty = ns1__getJobProperty; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getJobProperty(soap, &soap_tmp___ns1__getJobProperty); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getJobProperty(soap, &soap_tmp___ns1__getJobProperty, "-ns1:getJobProperty", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getJobProperty(soap, &soap_tmp___ns1__getJobProperty, "-ns1:getJobProperty", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getJobPropertyResponse(soap, ns1__getJobPropertyResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getJobPropertyResponse(soap, ns1__getJobPropertyResponse, "ns1:getJobPropertyResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__submitSupportRequest(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__submitSupportRequest *ns1__submitSupportRequest, struct _ns1__submitSupportRequestResponse *ns1__submitSupportRequestResponse) { struct __ns1__submitSupportRequest soap_tmp___ns1__submitSupportRequest; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__submitSupportRequest.ns1__submitSupportRequest = ns1__submitSupportRequest; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__submitSupportRequest(soap, &soap_tmp___ns1__submitSupportRequest); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__submitSupportRequest(soap, &soap_tmp___ns1__submitSupportRequest, "-ns1:submitSupportRequest", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__submitSupportRequest(soap, &soap_tmp___ns1__submitSupportRequest, "-ns1:submitSupportRequest", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__submitSupportRequestResponse(soap, ns1__submitSupportRequestResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__submitSupportRequestResponse(soap, ns1__submitSupportRequestResponse, "ns1:submitSupportRequestResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getAllHosts(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getAllHosts *ns1__getAllHosts, struct _ns1__getAllHostsResponse *ns1__getAllHostsResponse) { struct __ns1__getAllHosts soap_tmp___ns1__getAllHosts; if (!soap_endpoint) soap_endpoint = "https://ngportaldev.vpac.org/grisu-ws/services/grisu"; if (!soap_action) soap_action = ""; soap->encodingStyle = NULL; soap_tmp___ns1__getAllHosts.ns1__getAllHosts = ns1__getAllHosts; soap_begin(soap); soap_serializeheader(soap); soap_serialize___ns1__getAllHosts(soap, &soap_tmp___ns1__getAllHosts); if (soap_begin_count(soap)) return soap->error; if (soap->mode & SOAP_IO_LENGTH) { if (soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getAllHosts(soap, &soap_tmp___ns1__getAllHosts, "-ns1:getAllHosts", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap)) return soap->error; } if (soap_end_count(soap)) return soap->error; if (soap_connect(soap, soap_endpoint, soap_action) || soap_envelope_begin_out(soap) || soap_putheader(soap) || soap_body_begin_out(soap) || soap_put___ns1__getAllHosts(soap, &soap_tmp___ns1__getAllHosts, "-ns1:getAllHosts", "") || soap_body_end_out(soap) || soap_envelope_end_out(soap) || soap_end_send(soap)) return soap_closesock(soap); soap_default__ns1__getAllHostsResponse(soap, ns1__getAllHostsResponse); if (soap_begin_recv(soap) || soap_envelope_begin_in(soap) || soap_recv_header(soap) || soap_body_begin_in(soap)) return soap_closesock(soap); soap_get__ns1__getAllHostsResponse(soap, ns1__getAllHostsResponse, "ns1:getAllHostsResponse", ""); if (soap->error) { if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2) return soap_recv_fault(soap); return soap_closesock(soap); } if (soap_body_end_in(soap) || soap_envelope_end_in(soap) || soap_end_recv(soap)) return soap_closesock(soap); return soap_closesock(soap); } #ifdef __cplusplus } #endif /* End of soapClient.c */ gdis-0.90/gui_space.c0000644000175000017500000002310210600706736013134 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include "gdis.h" #include "coords.h" #include "matrix.h" #include "space.h" #include "gui_shorts.h" #include "interface.h" #include "dialog.h" #include "opengl.h" /* main structure */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /************************/ /* draw periodic images */ /************************/ void gtk_refresh_images(GtkWidget *w, gpointer dummy) { struct model_pak *model; model = sysenv.active_model; g_assert(model != NULL); /* atom colour/display updates */ space_make_images(CREATE, model); coords_init(CENT_COORDS, model); redraw_canvas(SINGLE); } /****************************/ /* display property updates */ /****************************/ void cb_make_asymmetric(GtkWidget *w, gpointer dummy) { GSList *list; struct core_pak *core; struct shel_pak *shel; struct model_pak *model; model = sysenv.active_model; g_assert(model != NULL); if (model->periodic) { for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->primary) continue; if (model->asym_on) core->status |= HIDDEN; else core->status &= ~HIDDEN; } for (list=model->shels ; list ; list=g_slist_next(list)) { shel = list->data; if (shel->primary) continue; if (model->asym_on) shel->status |= HIDDEN; else shel->status &= ~HIDDEN; } } /* update */ coords_compute(model); redraw_canvas(SINGLE); } /***************************/ /* perioidic image globals */ /***************************/ gboolean image_update = TRUE; GtkWidget *image_spin[6]; /****************************/ /* periodic image callbacks */ /****************************/ void cb_space_image_spinner(GtkWidget *w, gpointer data) { gint i; struct model_pak *model; model = sysenv.active_model; if (!model) return; /* alter the spinner value */ i = GPOINTER_TO_INT(data); g_assert(i >= 0); g_assert(i < 6); model->image_limit[i] = SPIN_FVAL(GTK_SPIN_BUTTON(w)); /* update only if this is a genuine call for perioidic image creation */ if (image_update) { space_make_images(CREATE, model); coords_init(CENT_COORDS, model); redraw_canvas(SINGLE); } } /********************************/ /* periodic image widget update */ /********************************/ void space_image_widget_redraw(void) { gint i, periodic; struct model_pak *model; /* setup */ model = sysenv.active_model; if (!model) periodic = 0; else periodic = model->periodic; /* NB: don't allow updates as we're not making periodic images, */ /* we're setting the widget values to what they should be */ image_update = FALSE; for (i=0 ; i<3 ; i++) { if (i < periodic) { /* show and set available spinners */ gtk_widget_set_sensitive(GTK_WIDGET(image_spin[2*i]), TRUE); gtk_widget_set_sensitive(GTK_WIDGET(image_spin[2*i+1]), TRUE); gtk_spin_button_set_value(GTK_SPIN_BUTTON(image_spin[2*i]), model->image_limit[2*i]); gtk_spin_button_set_value(GTK_SPIN_BUTTON(image_spin[2*i+1]), model->image_limit[2*i+1]); } else { /* reset unavailable spinners to default values */ gtk_spin_button_set_value(GTK_SPIN_BUTTON(image_spin[2*i]), 0.0); gtk_spin_button_set_value(GTK_SPIN_BUTTON(image_spin[2*i+1]), 1.0); /* hide unavailable spinners */ gtk_widget_set_sensitive(GTK_WIDGET(image_spin[2*i]), FALSE); gtk_widget_set_sensitive(GTK_WIDGET(image_spin[2*i+1]), FALSE); } } image_update = TRUE; } /**********************************/ /* periodic image default setting */ /**********************************/ void space_image_widget_reset(void) { struct model_pak *model; /* update model (if exists) */ model = sysenv.active_model; if (model) { space_make_images(INITIAL, model); coords_init(CENT_COORDS, model); } /* update widget and canvas */ gui_refresh(GUI_MODEL_PROPERTIES); gui_refresh(GUI_CANVAS); } /*********************************************/ /* periodic image creation for the main pane */ /*********************************************/ void space_image_widget_setup(GtkWidget *box) { gint i; GtkWidget *table, *label; /* use table for nice spacing */ table = gtk_table_new(3, 4, FALSE); gtk_box_pack_start(GTK_BOX(box), table, FALSE, FALSE, 0); /* image directions */ label = gtk_label_new ("-"); gtk_table_attach_defaults(GTK_TABLE(table),label,1,2,0,1); label = gtk_label_new ("+"); gtk_table_attach_defaults(GTK_TABLE(table),label,2,3,0,1); /* labels and spinners */ for (i=0 ; i<3 ; i++) { /* negative direction */ image_spin[2*i] = new_spinner(NULL, 0, 10, 1, cb_space_image_spinner, GINT_TO_POINTER(2*i), NULL); /* TODO - set these to 1, when fractional periodic images are working */ gtk_spin_button_set_digits(GTK_SPIN_BUTTON(image_spin[2*i]), 0); gtk_table_attach_defaults(GTK_TABLE(table), image_spin[2*i], 1, 2, i+1, i+2); /* positive direction */ image_spin[2*i+1] = new_spinner(NULL, 1, 10, 1, cb_space_image_spinner, GINT_TO_POINTER(2*i+1), NULL); /* TODO - set these to 1, when fractional periodic images are working */ gtk_spin_button_set_digits(GTK_SPIN_BUTTON(image_spin[2*i+1]), 0); gtk_table_attach_defaults(GTK_TABLE(table), image_spin[2*i+1], 2, 3, i+1, i+2); } /* set the spinner values */ gui_refresh(GUI_MODEL_PROPERTIES); } /***************************/ /* Space Group info dialog */ /***************************/ void periodicity_page(GtkWidget *box) { GString *info, *item; GtkWidget *frame, *vbox; struct model_pak *model; /* checks */ model = sysenv.active_model; if (!model) return; if (!model->periodic) return; item = g_string_new(NULL); info = g_string_new(NULL); #if GENPOS /* FRAME */ frame = gtk_frame_new ("General positions"); gtk_box_pack_start(GTK_BOX(main_box),frame,TRUE,TRUE,0); gtk_container_set_border_width (GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new (FALSE, 5); gtk_container_set_border_width(GTK_CONTAINER(vbox), PANEL_SPACING); gtk_container_add (GTK_CONTAINER(frame),vbox); /* table for nice spacing */ /* more intelligent dimension choice? */ cols = 4; rows = model->sginfo.order / cols; table = gtk_table_new(cols, rows, FALSE); gtk_container_add(GTK_CONTAINER(vbox), table); /* order of the group (ie mth matrix) */ m=0; /* loop over rows */ while (msginfo.order) { /* get row(i) and column(j) */ i = m / cols; j = m % cols; /* construct the three generator elements */ mat = *(model->sginfo.matrix+m); g_string_sprintf(info," "); for (k=0 ; k<3 ; k++) { /* offset elements */ value = *(*(model->sginfo.offset+m)+k); need_sign = 0; /* separate 2nd and 3rd elements with a comma */ if (k) g_string_append(info, ", "); /* clear the string for the new element to append */ g_string_assign(item, ""); /* append the offset */ if (fabs(2.0*value-1.0) < FRACTION_TOLERANCE) { g_string_sprintfa(item, "1/2"); need_sign++; } if (fabs(2.0*value+1.0) < FRACTION_TOLERANCE) { g_string_sprintfa(item, "-1/2"); need_sign++; } if (fabs(3.0*value-1.0) < FRACTION_TOLERANCE) { g_string_sprintfa(item, "1/3"); need_sign++; } if (fabs(3.0*value+1.0) < FRACTION_TOLERANCE) { g_string_sprintfa(item, "-1/3"); need_sign++; } if (fabs(4.0*value-1.0) < FRACTION_TOLERANCE) { g_string_sprintfa(item, "1/4"); need_sign++; } if (fabs(4.0*value+1.0) < FRACTION_TOLERANCE) { g_string_sprintfa(item, "-1/4"); need_sign++; } /* append the appropriate matrix element(s) */ for (l='x' ; l<='z' ; l++) { if (*mat > FRACTION_TOLERANCE) { if (need_sign) g_string_sprintfa(item, "+%c", l); else { g_string_sprintfa(item, "%c", l); need_sign++; } } if (*mat < -FRACTION_TOLERANCE) { g_string_sprintfa(item, "-%c",l); need_sign++; } mat++; } g_string_append(info, item->str); } /* write the generator to the table */ label = gtk_label_new(info->str); gtk_table_attach_defaults(GTK_TABLE(table),label,j,j+1,i,i+1); m++; } #endif /* FRAME */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX (box), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, PANEL_SPACING); gtk_container_add(GTK_CONTAINER(frame), vbox); gtk_container_set_border_width(GTK_CONTAINER(GTK_BOX(vbox)), PANEL_SPACING); gui_auto_check("Asymmetric cell", cb_make_asymmetric, NULL, &model->asym_on, vbox); /* done, draw, exit */ gtk_widget_show_all(box); g_string_free(info, TRUE); g_string_free(item, TRUE); } gdis-0.90/parse.c0000644000175000017500000003671111066427324012321 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include #ifndef __WIN32 #include #endif #include #include #include #ifndef __WIN32 #include #include #endif #include "gdis.h" #include "file.h" #include "parse.h" #include "keywords.h" #include "interface.h" /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /***********************/ /* strip off extension */ /***********************/ gchar *parse_strip_extension(const gchar *name) { gint i; gchar *base, *temp; temp = g_strdup(name); /* get the rightmost '.' */ for (i=strlen(temp) ; i-- ; ) if (*(temp+i) == '.') { base = g_strndup(temp, i); g_free(temp); return(base); } /* not found - return the whole thing */ return(temp); } /***************************/ /* strip newline character */ /***************************/ gchar *parse_strip_newline(const gchar *text) { gint i; for (i=0 ; i 1) { #if DEBUG_STR_IS_FLOAT printf(" = not a number (contains more than one exponential character)\n"); #endif return(FALSE); } } #if DEBUG_STR_IS_FLOAT printf(" = a number.\n"); #endif return(TRUE); } /*******************************************************/ /* get a float from a string (even in fraction format) */ /*******************************************************/ /* TODO - fortran prints a bunch of *'s if the number is too big - */ /* find a way to cope with this */ #define DEBUG_STR_TO_FLOAT 0 gdouble str_to_float(const gchar *txt) { gint i, j=0; gchar *str; gdouble den, val; /* return 0.0 for NULL string */ if (txt == NULL) return(0.0); /* if we have a backslash, process number as a fraction */ str = g_strdup(txt); #if DEBUG_STR_TO_FLOAT printf("[%s] : ", str); #endif /* scan string and do any substitutions */ for (i=strlen(str) ; i-- ; ) { switch (*(str+i)) { /* process as fraction? */ case '/': if (i < strlen(str)-1) j = i+1; break; /* remove any equal signs */ case '=': *(str+i) = ' '; break; /* Gaussian uses D instead of E in scientific notation - convert back */ case 'd': case 'D': *(str+i) = 'E'; break; } } /* main conversion */ val = g_ascii_strtod(str, NULL); /* fraction processing */ if (j) { den = g_ascii_strtod(str+j, NULL); if (den != 0.0) val /= den; } #if DEBUG_STR_TO_FLOAT printf(" (%f)\n", val); #endif g_free(str); return(val); } /* Return a list of keywords found */ /* NEW - match all keywords, not just space separated ones */ #define DEBUG_GET_KEYWORDS_ANYWHERE 0 GSList *get_keywords_anywhere(gchar *str) { gint i, j=0; GSList *list=NULL; #if DEBUG_GET_KEYWORD_ANYWHERE printf("extracted: "); #endif i = 0; while (keywords[i].code != -1) { if (strstr(str, keywords[i].label) != NULL) { #if DEBUG_GET_KEYWORD_ANYWHERE printf(" %d",keywords[i].code); #endif list = g_slist_prepend(list, GINT_TO_POINTER(keywords[i].code)); j++; } i++; } list = g_slist_reverse(list); #if DEBUG_GET_KEYWORD_ANYWHERE printf("\nKeywords found: %d\n", j); #endif return(list); } /* Return a list of keywords found (iff space separated!) */ /* NEW - replacement for below routine, avoids alloc/free worries */ #define DEBUG_GET_KEYWORDS 0 GSList *get_keywords(gchar *str) { gint i, j, n, len, num_tokens; gchar **buff; GSList *list=NULL; #if DEBUG_GET_KEYWORDS printf("extracting from: %s\n", str); #endif buff = tokenize(str, &num_tokens); i=n=0; while(i < num_tokens) { if (*(buff+i) == NULL) break; /* default keyword code - nothing */ j=0; while(keywords[j].code != -1) { len = strlen(keywords[j].label); if (g_ascii_strncasecmp(*(buff+i), keywords[j].label, len) == 0) { #if DEBUG_GET_KEYWORDS printf(" %d",keywords[j].code); #endif list = g_slist_prepend(list, GINT_TO_POINTER(keywords[j].code)); n++; } j++; } i++; } list = g_slist_reverse(list); g_strfreev(buff); #if DEBUG_GET_KEYWORDS printf("\nKeywords found: %d\n", n); #endif return(list); } /***********************************************************/ /* hash table function for comparing two character strings */ /***********************************************************/ gint hash_strcmp(gconstpointer a, gconstpointer b) { if (g_ascii_strcasecmp(a, b) == 0) return(TRUE); return(FALSE); } /**************************************************************/ /* return a string of keyword code (if any) found in a string */ /**************************************************************/ /* 1st item -> number actually found */ #define DEBUG_GET_KEYWORD 0 gint *get_keyword(gchar *str, gint max) { gint i, j, n, len, num_tokens; gchar **buff; gint *list; #if DEBUG_GET_KEYWORD printf("extracted: "); #endif list = g_malloc((max+1) * sizeof(gint)); buff = tokenize(str, &num_tokens); n=1; i=0; while(i < num_tokens) { /* default keyword code - nothing */ *(list+n) = -1; j=0; while(keywords[j].code != -1) { len = strlen(keywords[j].label); if (g_ascii_strncasecmp(*(buff+i), keywords[j].label, len) == 0) { #if DEBUG_GET_KEYWORD printf(" %d",keywords[j].code); #endif *(list+n) = keywords[j].code; if (++n == max+1) goto get_keyword_done; } j++; } i++; } get_keyword_done:; g_strfreev(buff); *list = n-1; #if DEBUG_GET_KEYWORD printf("\n"); #endif return(list); } gint num_keys(void) { gint n; n=0; while (keywords[n].code != -1) n++; /* printf("Found %d keywords\n",n); */ return(n); } /*****************************************/ /* get a token's keyword number (if any) */ /*****************************************/ gint get_keyword_code(const gchar *token) { gint j, len; j=0; while(keywords[j].code != -1) { len = strlen(keywords[j].label); if (g_ascii_strncasecmp(token, keywords[j].label, len) == 0) return(j); j++; } return(-1); } /*********************/ /* tokenize a string */ /*********************/ /* replacement routine for get_tokens() */ /* will get as many tokens as available (no more messing with MAX_TOKENS) */ #define DEBUG_TOKENIZE 0 gchar **tokenize(const gchar *src, gint *num) { gint i, j, n, len; gchar *tmp, *ptr; gchar **dest; GSList *list=NULL, *item=NULL; /* checks */ if (!src) { *num=0; return(NULL); } /* duplicate & replace all whitespace with a space */ tmp = g_strdup(src); for (i=0 ; i last ptr is NULL, so g_strfreev works */ dest = g_malloc((n+1)*sizeof(gchar *)); i=0; /* fill in the non empty tokens */ item = list; while (idata; if (*ptr == '#') break; *(dest+i) = g_strdup(ptr); #if DEBUG_TOKENIZE printf(" (%s)", ptr); #endif item = g_slist_next(item); } else { /* fake item */ *(dest+i) = g_strdup(" ");; #if DEBUG_TOKENIZE printf(" (empty token)"); #endif } i++; } /* terminate */ *(dest+i) = NULL; *num = i; #if DEBUG_TOKENIZE printf(" %p",*(dest+i)); printf(": found %d tokens\n", *num); #endif /* done */ g_free(tmp); free_slist(list); return(dest); } /************************************************/ /* get the next (non-trivial) line and tokenize */ /************************************************/ /* NULL is returned on EOF */ gchar **get_tokenized_line(FILE *fp, gint *num_tokens) { gchar **buff, line[LINELEN]; do { if (fgetline(fp, line)) { *num_tokens = 0; return(NULL); } buff = tokenize(line, num_tokens); } while (!buff); return(buff); } /*********************/ /* tokenize a string */ /*********************/ /* can be useful if you want a definite number of tokens */ /* also, doesnt skip # lines (useful for processing GROMACS stuff) */ #define DEBUG_GET_TOKENS 0 gchar **get_tokens(gchar *src, gint num) { gint i, j; gchar **buff, **dest, *tmp; /* duplicate & replace all whitespace with a space */ /* strange errors can be avoided if a strstrip is done */ tmp = g_strdup(src); for (i=0 ; i last ptr is NULL, so g_strfreev works */ dest = g_malloc((num+1)*sizeof(gchar *)); i=j=0; /* fill in the non empty tokens */ while (*(buff+i) != NULL && j #include #include #include #include "gdis.h" #include "coords.h" #include "matrix.h" #include "numeric.h" #include "opengl.h" #ifdef __APPLE__ #include #else #include #endif /* externals */ extern struct sysenv_pak sysenv; struct varray_pak { /* config */ gint gl_method; gint periodic; gint num_indices; gint num_vertices; /* data */ GLuint *indices; /* GLdouble *vertices; GLdouble *new_vertices; GLdouble *normals; */ GLfloat *interleaved; GLdouble *colours; }; /**********************/ /* creation primitive */ /**********************/ gpointer va_init(void) { struct varray_pak *va; va = g_malloc(sizeof(struct varray_pak)); va->gl_method = 0; va->periodic = FALSE; va->num_indices = 0; va->num_vertices = 0; va->indices = NULL; /* va->vertices = NULL; va->new_vertices = NULL; va->normals = NULL; */ va->interleaved = NULL; va->colours = NULL; return(va); } /*************************/ /* destruction primitive */ /*************************/ void va_free(gpointer ptr_varray) { struct varray_pak *va = ptr_varray; g_free(va->indices); /* g_free(va->vertices); g_free(va->new_vertices); g_free(va->normals); */ g_free(va->interleaved); g_free(va->colours); g_free(va); } /* FIXME - these should really be guints */ gint cyclic_clamp(gint n, gint start, gint stop) { gint range, offset; range = stop - start + 1; offset = n - start; offset /= range; return(n - offset*range); } gint cyclic_inc(gint n, gint start, gint stop) { if (n < stop) return(n+1); else return(start); } gint cyclic_dec(gint n, gint start, gint stop) { if (n > start) return(n-1); else return(stop); } /* CURRENT */ #define DEBUG_VA_GENERATE_INDICES 0 void va_generate_indices(gint depth, struct varray_pak *va) { gint d, i, j, m, n; gint mdiv, div, mstart, nstart; g_assert(va != NULL); n = 18 * depth*depth; #if DEBUG_VA_GENERATE_INDICES printf("allocating for indices: %d\n", n); #endif va->num_indices = n; va->indices = g_malloc(n * sizeof(GLuint)); i = 0; n=1; mstart = 0; for (d=1 ; dindices+i++) = n; #if DEBUG_VA_GENERATE_INDICES printf(" %d", *(va->indices+i-1)); #endif *(va->indices+i++) = cyclic_dec(n, nstart, nstart+div-1); #if DEBUG_VA_GENERATE_INDICES printf(" %d", *(va->indices+i-1)); #endif n++; *(va->indices+i++) = m++; #if DEBUG_VA_GENERATE_INDICES printf(" %d", *(va->indices+i-1)); #endif if ((j+1) % d == 0) m--; else { /* missing triangle */ *(va->indices+i++) = cyclic_dec(m, mstart, nstart-1); #if DEBUG_VA_GENERATE_INDICES printf(" (%d", *(va->indices+i-1)); #endif *(va->indices+i++) = cyclic_clamp(m, mstart, nstart-1); #if DEBUG_VA_GENERATE_INDICES printf(" %d", *(va->indices+i-1)); #endif *(va->indices+i++) = cyclic_dec(n, nstart, nstart+div-1); #if DEBUG_VA_GENERATE_INDICES printf(" %d)", *(va->indices+i-1)); #endif } if (m >= nstart) { m -= nstart; m += mstart; } } #if DEBUG_VA_GENERATE_INDICES printf("\n"); #endif mstart = nstart; } } /*******************************/ /* sphere array initialization */ /*******************************/ #define DEBUG_MAKE_SPHERE 0 void va_make_sphere(gpointer ptr_varray) { gint i, j, k, n; gdouble layers, divisions, alpha, beta, phi, theta, sp, cp, st, ct; struct varray_pak *va = ptr_varray; va->gl_method = GL_TRIANGLES; /* number of layers - azimuthal sweep */ layers = sysenv.render.sphere_quality+1.0; alpha = 0.5*PI/layers; /* alloc */ n=0; for (i=0 ; i<(gint) 1.0+layers ; i++) n += i; n *= 6; n++; /* TODO - index & vertices depend on quality */ /* sysenv.render.sphere_quality; */ /* setup indices */ va_generate_indices(layers, va); /* va->num_indices = 18; va->indices = g_malloc(va->num_indices * sizeof(GLuint)); memcpy(va->indices, sphere_indices, va->num_indices*sizeof(GLuint)); */ /* setup vertices and normals */ va->num_vertices = n; /* va->vertices = g_malloc(3 * n * sizeof(GLdouble)); va->new_vertices = g_malloc(3 * n * sizeof(GLdouble)); va->normals = g_malloc(3 * n * sizeof(GLdouble)); */ va->interleaved = g_malloc(6 * n * sizeof(GLfloat)); /* initial vertex */ VEC3SET((va->interleaved), 0.0, 0.0, -1.0); VEC3SET((va->interleaved+3), 0.0, 0.0, -1.0); /* compute vertices */ k = 2; for (i=1 ; i<(gint) 1.0+layers ; i++) { #if DEBUG_MAKE_SPHERE printf("[%d/%d]\n", i, (gint) layers); #endif phi = i*alpha; sp = tbl_sin(phi); cp = tbl_cos(phi); /* divisions at this level - hexagonal sweep */ divisions = i*6.0; beta = 2.0*PI/divisions; for (j=0 ; j<(gint) divisions ; j++) { theta = j*beta; st = tbl_sin(theta); ct = tbl_cos(theta); VEC3SET((va->interleaved+3*k), ct*sp, st*sp, -cp); k++; VEC3SET((va->interleaved+3*k), ct*sp, st*sp, -cp); k++; #if DEBUG_MAKE_SPHERE printf("%7.4f %7.4f %7.4f\n", ct*sp, st*sp, -cp); #endif } } #if DEBUG_MAKE_SPHERE printf("k = %d, n = %d\n", k, n); #endif /* memcpy(va->normals, va->vertices, 3*n*sizeof(GLdouble)); */ } /*********************/ /* drawing primitive */ /*********************/ void va_draw_sphere(gpointer ptr_varray, gdouble *x, gdouble r) { gint i; GLfloat *interleaved; struct varray_pak *va = ptr_varray; /* setup vertex/normal arrays */ interleaved = va->interleaved; /* memcpy(vertices, va->vertices, 3*va->num_vertices*sizeof(GLdouble)); */ /* expand to required radius and move to desired location */ for (i=va->num_vertices ; i-- ; ) { ARR3SET((interleaved+6*i), (va->interleaved+6*i+3)); VEC3MUL((interleaved+6*i), r); ARR3ADD((interleaved+6*i), x); } /* draw vertex array */ /* glVertexPointer(3, GL_DOUBLE, 0, vertices); if (va->normals) glNormalPointer(GL_DOUBLE, 0, va->normals); */ glVertexPointer(3, GL_FLOAT, 6*sizeof(GLfloat), &interleaved[0]); glNormalPointer(GL_FLOAT, 6*sizeof(GLfloat), &interleaved[3]); glDrawElements(va->gl_method, va->num_indices, GL_UNSIGNED_INT, va->indices); } gdis-0.90/gl_primitives.c0000644000175000017500000003164110445461563014064 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include "gdis.h" #include "coords.h" #include "matrix.h" #include "numeric.h" #include "quaternion.h" #include "opengl.h" #include "render.h" #include "interface.h" #ifdef __APPLE__ #include #else #include #endif /* externals */ extern struct sysenv_pak sysenv; /***************************/ /* free an array of points */ /***************************/ void gl_free_points(struct point_pak *p) { g_return_if_fail(p->num_points != 0); if (p->num_points) { g_free(p->x[0]); g_free(p->x[1]); g_free(p->x[2]); p->num_points = 0; } } /***********************************/ /* more efficient point generation */ /***********************************/ #define DEBUG_GLO_INIT_SPHERE 0 void gl_init_sphere(struct point_pak *p, struct model_pak *model) { gint i, j, n; gdouble layers, divisions, alpha, beta, phi, theta, sp, cp, st, ct; gdouble x[3], y[3], mat[9]; struct camera_pak *camera; g_assert(model != NULL); g_assert(model->camera != NULL); /* number of layers - azimuthal sweep */ layers = sysenv.render.sphere_quality+1.0; alpha = 0.5*PI/layers; /* alloc */ n=0; for (i=0 ; i<(gint) 1.0+layers ; i++) n += i; n *= 6; n++; p->x[0] = g_malloc(n * sizeof(gdouble)); p->x[1] = g_malloc(n * sizeof(gdouble)); p->x[2] = g_malloc(n * sizeof(gdouble)); p->num_points = n; p->type = sysenv.render.sphere_quality; /* TODO - make it use camera_init() as this is just the initial v->x vector */ VEC3SET(x, 0.0, -1.0, 0.0); /* orient so hemisphere is facing the camera */ camera = model->camera; if (camera->mode == LOCKED) quat_rotate(x, camera->q); else { /* in the case of a free camera - compute alignment transformation */ ARR3SET(y, camera->v); VEC3MUL(y, -1.0); matrix_v_alignment(mat, x, y); vecmat(mat, x); } *(p->x[0]+0) = x[0]; *(p->x[1]+0) = x[1]; *(p->x[2]+0) = x[2]; n=1; for (i=1 ; i<(gint) 1.0+layers ; i++) { #if DEBUG_GLO_INIT_SPHERE printf("[%d/%d]\n", i, (gint) layers); #endif phi = i*alpha; sp = tbl_sin(phi); cp = tbl_cos(phi); /* divisions at this level - hexagonal sweep */ divisions = i*6.0; beta = 2.0*PI/divisions; for (j=0 ; j<(gint) divisions ; j++) { theta = j*beta; st = tbl_sin(theta); ct = tbl_cos(theta); /* NEW - quat camera */ VEC3SET(x, st*sp, -cp, ct*sp); /* FIXME - FREE camera mode case */ if (camera->mode == LOCKED) quat_rotate(x, camera->q); else vecmat(mat, x); *(p->x[0]+n) = x[0]; *(p->x[1]+n) = x[1]; *(p->x[2]+n) = x[2]; n++; #if DEBUG_GLO_INIT_SPHERE printf("%7.4f %7.4f %7.4f\n", ct*sp, st*sp, -cp); #endif } } g_assert(p->num_points == n); } /**********************/ /* draw half a sphere */ /**********************/ void gl_draw_hemisphere(struct point_pak *p, gdouble *x, gdouble rad) { gint i, j, div, m, n, mstart, nstart; gdouble vec[3]; g_return_if_fail(p->num_points != 0); /* top cap - split drawing to minimize vertices */ glBegin(GL_TRIANGLE_FAN); vec[0] = *(p->x[0]); vec[1] = *(p->x[1]); vec[2] = *(p->x[2]); glNormal3dv(vec); VEC3MUL(vec, rad); ARR3ADD(vec, x); glVertex3dv(vec); for (i=6 ; i-- ; ) { vec[0] = *(p->x[0]+i+1); vec[1] = *(p->x[1]+i+1); vec[2] = *(p->x[2]+i+1); glNormal3dv(vec); VEC3MUL(vec, rad); ARR3ADD(vec, x); glVertex3dv(vec); } vec[0] = *(p->x[0]+6); vec[1] = *(p->x[1]+6); vec[2] = *(p->x[2]+6); glNormal3dv(vec); VEC3MUL(vec, rad); ARR3ADD(vec, x); glVertex3dv(vec); glEnd(); /* remaining layers */ n=7; mstart = 1; for (i=2 ; itype+2 ; i++) { nstart = n; div = i*6.0; m = mstart; #if DEBUG_GLO_DRAW_SPHERE printf("%d : [m,n start = %d,%d]\n", i, mstart, nstart); #endif /* strip loop (theta) */ glBegin(GL_TRIANGLE_STRIP); for (j=0 ; j
: m,n = %d,%d\n", m, n); #endif /* lower */ vec[0] = *(p->x[0]+n); vec[1] = *(p->x[1]+n); vec[2] = *(p->x[2]+n); glNormal3dv(vec); VEC3MUL(vec, rad); ARR3ADD(vec, x); glVertex3dv(vec); n++; /* upper */ vec[0] = *(p->x[0]+m); vec[1] = *(p->x[1]+m); vec[2] = *(p->x[2]+m); glNormal3dv(vec); VEC3MUL(vec, rad); ARR3ADD(vec, x); glVertex3dv(vec); /* staggered doubling */ m++; if ((j+1) % i == 0) m--; /* cycle around */ if (m >= nstart) { m -= nstart; m += mstart; } } /* finish off the triangle layer */ vec[0] = *(p->x[0]+nstart); vec[1] = *(p->x[1]+nstart); vec[2] = *(p->x[2]+nstart); glNormal3dv(vec); VEC3MUL(vec, rad); ARR3ADD(vec, x); glVertex3dv(vec); vec[0] = *(p->x[0]+mstart); vec[1] = *(p->x[1]+mstart); vec[2] = *(p->x[2]+mstart); glNormal3dv(vec); VEC3MUL(vec, rad); ARR3ADD(vec, x); glVertex3dv(vec); /* finished current layer */ glEnd(); mstart = nstart; } #if DEBUG_GLO_DRAW_SPHERE printf("n : %d\n", n); #endif } /*********************************/ /* more efficient sphere drawing */ /*********************************/ #define DEBUG_GLO_DRAW_SPHERE 0 void gl_draw_sphere(struct point_pak *p, gdouble *x, gdouble rad) { gl_draw_hemisphere(p, x, rad); } /***************************/ /* create digitized circle */ /***************************/ void gl_init_circle(struct point_pak *circle, gint segments, struct model_pak *model) { gint i; gdouble da, theta; gdouble n[3], x[3], y[3], mat[9]; struct camera_pak *camera; g_assert(model != NULL); g_assert(model->camera != NULL); g_return_if_fail(segments != 0); camera = model->camera; /* allocate for digitized circle */ circle->x[0] = g_malloc((segments+1) * sizeof(gdouble)); circle->x[1] = g_malloc((segments+1) * sizeof(gdouble)); circle->x[2] = g_malloc((segments+1) * sizeof(gdouble)); circle->num_points = segments + 1; /* first point */ VEC3SET(x, 1.0, 0.0, 0.0); if (camera->mode == LOCKED) quat_rotate(x, camera->q); else { /* in the case of a free camera - compute alignment transformation */ VEC3SET(n, 0.0, -1.0, 0.0); ARR3SET(y, camera->v); matrix_v_alignment(mat, n, y); vecmat(mat, x); } *(circle->x[0]) = x[0]; *(circle->x[1]) = x[1]; *(circle->x[2]) = x[2]; /* sweep in x,z */ da = 2.0 * PI / (gdouble) segments; for (i=1 ; imode == LOCKED) quat_rotate(x, camera->q); else vecmat(mat, x); *(circle->x[0]+i) = x[0]; *(circle->x[1]+i) = x[1]; *(circle->x[2]+i) = x[2]; } /* duplicate first point, so the circle is closed */ *(circle->x[0]+segments) = *(circle->x[0]); *(circle->x[1]+segments) = *(circle->x[1]); *(circle->x[2]+segments) = *(circle->x[2]); } /*******************************/ /* draw a pre-digitized circle */ /*******************************/ void gl_draw_circle(struct point_pak *circle, gdouble *x, gdouble rad) { gint i; gdouble vec[3]; g_return_if_fail(circle->num_points != 0); glBegin(GL_POLYGON); for (i=0 ; inum_points ; i++) { /* get points */ vec[0] = *(circle->x[0]+i); vec[1] = *(circle->x[1]+i); vec[2] = *(circle->x[2]+i); VEC3MUL(vec, rad); ARR3ADD(vec, x); glVertex3dv(vec); } glEnd(); } /*****************************/ /* draw a pre-digitized ring */ /*****************************/ void gl_draw_ring(struct point_pak *circle, gdouble *x, gdouble rad1, gdouble rad2) { gint i; gdouble vec[3]; g_return_if_fail(circle->num_points != 0); glBegin(GL_QUAD_STRIP); for (i=0 ; inum_points ; i++) { /* inner point */ vec[0] = *(circle->x[0]+i); vec[1] = *(circle->x[1]+i); vec[2] = *(circle->x[2]+i); VEC3MUL(vec, rad2); ARR3ADD(vec, x); glVertex3dv(vec); /* outer point */ vec[0] = *(circle->x[0]+i); vec[1] = *(circle->x[1]+i); vec[2] = *(circle->x[2]+i); VEC3MUL(vec, rad1); ARR3ADD(vec, x); glVertex3dv(vec); } glEnd(); } /******************************************/ /* draw a cylinder between points va & vb */ /******************************************/ /* NB: used for drawing vectors */ void gl_draw_cylinder(gdouble *va, gdouble *vb, gdouble rad, guint segments) { gint i; gdouble theta, st, ct; gdouble v1[3], v2[3], v[3], v12[3], p[3], q[3]; g_return_if_fail(segments != 0); /* force ordering of v1 & v2 to get correct quad normals */ if (va[2] > vb[2]) { ARR3SET(v1, vb); ARR3SET(v2, va); } else { ARR3SET(v1, va); ARR3SET(v2, vb); } /* vector from v1 to v2 */ ARR3SET(v12, v2); ARR3SUB(v12, v1); /* make a guess at a vector with some orthogonal component to v12 */ VEC3SET(p, 1.0, 1.0, 1.0); crossprod(q, p, v12); /* our guess was bad - so fix it */ if (VEC3MAGSQ(q) < FRACTION_TOLERANCE) { VEC3SET(p, 0.0, 1.0, 0.0); crossprod(q, p, v12); } crossprod(p, v12, q); /* p and q are orthonormal and in the plane of the cylinder's cross section */ normalize(p, 3); normalize(q, 3); /* build the cylinder from rectangular segments */ /* TODO - see if vertex arrays give any speedup here */ glBegin(GL_QUAD_STRIP); for (i=segments+1 ; i-- ; ) { /* sweep out a circle */ theta = (gdouble) i * 2.0 * PI / (gdouble) segments; st = tbl_sin(theta); ct = tbl_cos(theta); /* construct normal */ v12[0] = ct * p[0] + st * q[0]; v12[1] = ct * p[1] + st * q[1]; v12[2] = ct * p[2] + st * q[2]; /* set the normal for the two subseqent points */ glNormal3dv(v12); /* get the vector from centre to rim */ VEC3MUL(v12, rad); /* point on disk 1 */ ARR3SET(v, v2); ARR3ADD(v, v12); glVertex3dv(v); /* point on disk 2 */ ARR3SET(v, v1); ARR3ADD(v, v12); glVertex3dv(v); } glEnd(); } /*************************************/ /* draw a cone defined by two points */ /*************************************/ void draw_cone(gdouble *va, gdouble *vb, gdouble base, gint segments) { gint i; gdouble theta, st, ct, da; gdouble v[3], p[3], q[3], v12[3]; g_return_if_fail(segments != 0); /* vector from va to vb */ ARR3SET(v12, vb); ARR3SUB(v12, va); /* create normal vectors p and q, co-planar with the cylinder's cross-sectional disk */ /* make a guess at a vector with some orthogonal component to v12 */ VEC3SET(p, 1.0, 1.0, 1.0); crossprod(q, p, v12); /* if our guess was bad - fix it */ if (VEC3MAGSQ(q) < FRACTION_TOLERANCE) { VEC3SET(p, 0.0, 1.0, 0.0); crossprod(q, p, v12); } crossprod(p, v12, q); normalize(p, 3); normalize(q, 3); /* build the cone */ da = 2.0 * PI / (gdouble) segments; glBegin(GL_TRIANGLE_FAN); glVertex3dv(vb); for (i=segments+1 ; i-- ; ) { /* sweep out a circle */ theta = (gdouble) i * da; st = tbl_sin(theta); ct = tbl_cos(theta); /* construct normal */ v12[0] = ct * p[0] + st * q[0]; v12[1] = ct * p[1] + st * q[1]; v12[2] = ct * p[2] + st * q[2]; glNormal3dv(v12); /* point 1 on disk 1 */ ARR3SET(v, va); v[0] += base*v12[0]; v[1] += base*v12[1]; v[2] += base*v12[2]; glVertex3dv(v); } glEnd(); } /*********************************************/ /* draw a vector cylinder between two points */ /*********************************************/ void draw_vector(gdouble *va, gdouble *vb, gdouble size) { gdouble vec[3]; gl_draw_cylinder(va, vb, size, 5); ARR3SET(vec, vb); ARR3SUB(vec, va); normalize(vec, 3); VEC3MUL(vec, 4.0*size); ARR3ADD(vec, vb); draw_cone(vb, vec, 3*size, 9); } /*********************************************************/ /* draw a circular arc from p1 to p2, with p0 the centre */ /*********************************************************/ void draw_arc(gdouble *p0, gdouble *p1, gdouble *p2) { gint i, num_points; gdouble angle, theta, st, ct; gdouble v[3], v1[3], v2[3], len1, len2; /* get vector to arc start */ ARR3SET(v1, p1); ARR3SUB(v1, p0); /* get vector to arc end */ ARR3SET(v2, p2); ARR3SUB(v2, p0); /* scale back a bit */ VEC3MUL(v1, 0.5); VEC3MUL(v2, 0.5); /* get lengths */ len1 = VEC3MAG(v1); len2 = VEC3MAG(v2); /* make them both equal to the smaller */ if (len2 > len1) { VEC3MUL(v2, len1/len2); } else { VEC3MUL(v1, len2/len1); } angle = via(v1, v2, 3); num_points = 32; glBegin(GL_LINE_STRIP); /* sweep from start to end */ for (i=0 ; i<=num_points ; i++) { /* sweep out a circle */ theta = (gdouble) i * 0.5 * PI / (gdouble) num_points; st = tbl_sin(theta); ct = tbl_cos(theta); /* construct normal */ ARR3SET(v, p0); v[0] += ct * v1[0] + st * v2[0]; v[1] += ct * v1[1] + st * v2[1]; v[2] += ct * v1[2] + st * v2[2]; glVertex3dv(v); } glEnd(); } gdis-0.90/type_pak.h0000644000175000017500000000204710463323141013013 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ /* typing rule structures */ struct type_pak { /* atom assignment flags */ gint set_ff; gint set_charge; /* atom assignment values */ gchar *ff; gdouble charge; /* matching rules */ GSList *rules; }; struct rule_pak { gint atom_number; gint count; gint level; }; gdis-0.90/step_forward.xpm0000644000175000017500000000406007737207625014272 0ustar seansean/* XPM */ static char * step_forward_xpm[] = { "24 24 91 1", " c None", ". c #585C58", "+ c #303030", "@ c #A8ACA8", "# c #686868", "$ c #B8BCB8", "% c #E0E4E0", "& c #202838", "* c #6B729B", "= c #283048", "- c #404440", "; c #485068", "> c #505058", ", c #808480", "' c #D0D4D0", ") c #282C38", "! c #797CA8", "~ c #303450", "{ c #7880A8", "] c #8084A8", "^ c #606070", "/ c #505458", "( c #A8ACB0", "_ c #D8DCD8", ": c #283040", "< c #8083A8", "[ c #303850", "} c #8084B0", "| c #7078A8", "1 c #8890B8", "2 c #888CB0", "3 c #505060", "4 c #707078", "5 c #B8B8B8", "6 c #303040", "7 c #868DAF", "8 c #383C50", "9 c #8088B0", "0 c #7880B0", "a c #8890C0", "b c #A0A4D0", "c c #707890", "d c #585860", "e c #C8C8C8", "f c #303840", "g c #8D94B6", "h c #404458", "i c #8088B8", "j c #98A0C8", "k c #8088A8", "l c #586078", "m c #989898", "n c #383C48", "o c #9094C0", "p c #8894C0", "q c #9098C8", "r c #808CB8", "s c #687090", "t c #404858", "u c #D0D0D0", "v c #98A0D0", "w c #384050", "x c #909CC8", "y c #606490", "z c #303440", "A c #A0A4A0", "B c #687098", "C c #505070", "D c #484C50", "E c #888C88", "F c #E0E0E0", "G c #989CD0", "H c #989CC8", "I c #585C78", "J c #484C60", "K c #707478", "L c #7078A0", "M c #606468", "N c #A8A8A8", "O c #D8D8D8", "P c #888CB8", "Q c #383C40", "R c #909090", "S c #686C90", "T c #404450", "U c #C8CCC8", "V c #505050", "W c #505870", "X c #606060", "Y c #B0B0B0", "Z c #909490", " ", " ", " ", " ", " ", " .+++. @#$% ", " &***= -;>,'% ", " )!!!~ +{]^/(_ ", " :<<<[ +}|12345_ ", " 67778 +900abcd,e ", " fgggh +9iiiajkldm% ", " nooon +iooppqqrst.u ", " nvvvw +1vjjvjxi|yzA ", " nooon +1vbbbviBCDEF ", " ngggf +1xGHq9IJK$% ", " 87776 +1poaLhMNO ", " [<<<: +Pr}IQRu ", " ~!!!) +9ST#U% ", " =***& VWXY% ", " .+++. $Zu ", " ", " ", " ", " "}; gdis-0.90/gl_main.c0000644000175000017500000020746211066427320012614 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include #ifdef __APPLE__ #include #include #else #include #include #endif #include "gdis.h" #include "coords.h" #include "edit.h" #include "geometry.h" #include "graph.h" #include "matrix.h" #include "molsurf.h" #include "morph.h" #include "model.h" #include "spatial.h" #include "zone.h" #include "opengl.h" #include "render.h" #include "select.h" #include "surface.h" #include "numeric.h" #include "measure.h" #include "quaternion.h" #include "interface.h" #include "dialog.h" #include "gl_varray.h" /* externals */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; #define DRAW_PICTURE 0 /* transformation/projection matrices */ /* GLint viewport[4]; GLdouble mvmatrix[16], projmatrix[16]; */ gdouble gl_acm[9]; gdouble halo_fade[16]; gint halo_segments=16; gpointer gl_font; gint gl_fontsize=10; gint font_offset=-1; /***********************************/ /* world to canvas size conversion */ /***********************************/ gdouble gl_pixel_offset(gdouble r, struct canvas_pak *canvas) { gint p[2]; gdouble x[3]; VEC3SET(x, r, 0.0, 0.0); gl_unproject(p, x, canvas); return(sqrt(p[0]*p[0]+p[1]*p[1])); } /*****************************************************/ /* is a given normal aligned with the viewing vector */ /*****************************************************/ gint gl_visible(gdouble *n, struct model_pak *model) { gdouble v[3]; struct camera_pak *camera; g_assert(model != NULL); camera = model->camera; ARR3SET(v, camera->v); if (camera->mode == LOCKED) quat_rotate(v, camera->q); if (vector_angle(v, n, 3) < 0.5*G_PI) return(FALSE); return(TRUE); } /***************************************************/ /* setup the visual for subsequent canvas creation */ /***************************************************/ gint gl_init_visual(void) { /* attempt to get best visual */ /* order: stereo, double buffered, depth buffered */ /* CURRENT - disabled, as a (windowed) stereo capable visual is slow, even when not used for stereo */ /* sysenv.glconfig = gdk_gl_config_new_by_mode(GDK_GL_MODE_RGB | GDK_GL_MODE_DEPTH | GDK_GL_MODE_DOUBLE); */ sysenv.glconfig = gdk_gl_config_new_by_mode(GDK_GL_MODE_RGB | GDK_GL_MODE_DEPTH | GDK_GL_MODE_DOUBLE | GDK_GL_STEREO); /* windowed stereo possible? */ sysenv.render.stereo_use_frustum = TRUE; if (sysenv.glconfig) { sysenv.stereo_windowed = TRUE; sysenv.render.stereo_quadbuffer = TRUE; } else { sysenv.glconfig = gdk_gl_config_new_by_mode(GDK_GL_MODE_RGB | GDK_GL_MODE_DEPTH | GDK_GL_MODE_DOUBLE); sysenv.stereo_windowed = FALSE; sysenv.render.stereo_quadbuffer = FALSE; } if (!sysenv.glconfig) { printf("WARNING: cannot create a double-buffered visual.\n"); sysenv.glconfig = gdk_gl_config_new_by_mode(GDK_GL_MODE_RGB | GDK_GL_MODE_DEPTH); if (!sysenv.glconfig) { printf("ERROR: no appropriate visual could be acquired.\n"); return(1); } } return(0); } /****************************************/ /* setup the camera and projection mode */ /****************************************/ #define DEBUG_INIT_PROJ 0 void gl_init_projection(struct canvas_pak *canvas, struct model_pak *model) { gdouble r, a; gdouble pix2ang; gdouble x[3], o[3], v[3]; struct camera_pak *camera; g_assert(canvas != NULL); /* setup matrices even if no model in the current canvas */ glViewport(canvas->x, canvas->y, canvas->width, canvas->height); if (!model) { if (canvas) { glMatrixMode(GL_MODELVIEW); glLoadIdentity(); glMatrixMode(GL_PROJECTION); glLoadIdentity(); glGetIntegerv(GL_VIEWPORT, canvas->viewport); glGetDoublev(GL_MODELVIEW_MATRIX, canvas->modelview); glGetDoublev(GL_PROJECTION_MATRIX, canvas->projection); } return; } g_assert(model->camera != NULL); /* pad model with a small amount of space */ r = 1.0 + model->rmax; /* yet another magic number (0.427) - works reasonably well */ pix2ang = sysenv.size; pix2ang *= 0.427 / model->rmax; sysenv.rsize = r; /* viewing */ glMatrixMode(GL_MODELVIEW); glLoadIdentity(); /* setup camera */ camera = model->camera; ARR3SET(x, camera->x); ARR3SET(o, camera->o); ARR3SET(v, camera->v); #if DEBUG_INIT_PROJ camera_dump(camera); #endif switch (camera->mode) { case FREE: break; default: case LOCKED: quat_rotate(x, camera->q); quat_rotate(o, camera->q); quat_rotate(v, camera->q); break; } /* convert viewing vector to a location */ ARR3ADD(v, x); gluLookAt(x[0], x[1], x[2], v[0], v[1], v[2], o[0], o[1], o[2]); /* CURRENT - projection volume defined AFTER modelview has been set */ /* it's easier to get the right effect with the new free moving camera */ glMatrixMode(GL_PROJECTION); glLoadIdentity(); /* prevent inversion due to -ve zoom */ if (camera->zoom < 0.05) camera->zoom = 0.05; /* TODO - r = fn of zoom */ if (canvas) { a = canvas->width; a /= canvas->height; } else { /* stereo - doesn't get the canvas passed to it (wholescreen) */ a = sysenv.width; a /= sysenv.height; } sysenv.aspect = a; if (camera->perspective) { /* NB: if near distance is 0.0 it causes drawing problems */ gluPerspective(camera->fov, a, 0.1, 4.0*sysenv.rsize); } else { r *= camera->zoom; if (a > 1.0) glOrtho(-r*a, r*a, -r, r, 0.0, 4.0*sysenv.rsize); else glOrtho(-r, r, -r/a, r/a, 0.0, 4.0*sysenv.rsize); } /* store matrices for proj/unproj operations */ /* FIXME - this will break stereo ... */ if (canvas) { glGetIntegerv(GL_VIEWPORT, canvas->viewport); glGetDoublev(GL_MODELVIEW_MATRIX, canvas->modelview); glGetDoublev(GL_PROJECTION_MATRIX, canvas->projection); } /* opengl -> gdis coordinate conversion */ VEC3SET(&gl_acm[0], -1.0, 0.0, 0.0); VEC3SET(&gl_acm[3], 0.0, -1.0, 0.0); VEC3SET(&gl_acm[6], 0.0, 0.0, -1.0); } /***************************/ /* setup all light sources */ /***************************/ void gl_init_lights(struct model_pak *data) { gint i; gfloat light[4]; gdouble x, tmp[4]; GSList *list; struct light_pak *ldata; struct camera_pak *camera; g_assert(data != NULL); g_assert(data->camera != NULL); camera = data->camera; /* go through all OpenGL lights (enable/disable as required) */ list = sysenv.render.light_list; for (i=GL_LIGHT0 ; i<=GL_LIGHT7 ; i++) { /* do we have an active light */ if (list) { glEnable(i); /* get light data */ ldata = list->data; /* position/direction */ ARR3SET(light, ldata->x); ARR3SET(tmp, light); vecmat(gl_acm, tmp); /* FIXME - FREE camera mode case */ if (camera->mode == LOCKED) quat_rotate(tmp, camera->q); ARR3SET(light, tmp); switch (ldata->type) { case DIRECTIONAL: light[3] = 0.0; break; case POSITIONAL: default: VEC3MUL(light, -1.0); light[3] = 1.0; } glLightfv(i, GL_POSITION, light); /* light properties */ ARR3SET(light, ldata->colour); VEC3MUL(light, ldata->ambient); glLightfv(i, GL_AMBIENT, light); ARR3SET(light, ldata->colour); VEC3MUL(light, ldata->diffuse); glLightfv(i, GL_DIFFUSE, light); ARR3SET(light, ldata->colour); VEC3MUL(light, ldata->specular); glLightfv(i, GL_SPECULAR, light); /* next */ list = g_slist_next(list); } else glDisable(i); } /* halo diminishing function */ for (i=0 ; irender_mode) { case CPK: /* TODO - calling get_elem_data() all the time is inefficient */ get_elem_data(core->atom_code, &elem, model); radius *= sysenv.render.cpk_scale * elem.vdw; break; case LIQUORICE: /* only one bond - omit as it's a terminating atom */ /* FIXME - this will skip isolated atoms with one periodic bond */ if (g_slist_length(core->bonds) == 1) radius *= -1.0; /* more than one bond - put in a small sphere to smooth bond joints */ /* no bonds (isolated) - use normal ball radius */ if (core->bonds) radius *= sysenv.render.stick_rad; else radius *= sysenv.render.ball_rad; break; case STICK: radius *= sysenv.render.stick_rad; if (core->bonds) radius *= -1.0; break; case BALL_STICK: radius *= sysenv.render.ball_rad; break; } return(radius); } /*********************************************/ /* window to real space conversion primitive */ /*********************************************/ void gl_project(gdouble *w, gint x, gint y, struct canvas_pak *canvas) { gint ry; GLdouble r[3]; ry = sysenv.height - y - 1; /* z = 0.0 (near clipping plane) z = 1.0 (far clipping plane) */ /* z = 0.5 is in the middle of the viewing volume (orthographic) */ /* and is right at the fore for perspective projection */ gluUnProject(x, ry, 0.5, canvas->modelview, canvas->projection, canvas->viewport, &r[0], &r[1], &r[2]); ARR3SET(w, r); } /*********************************************/ /* real space to window conversion primitive */ /*********************************************/ void gl_unproject(gint *x, gdouble *w, struct canvas_pak *canvas) { GLdouble r[3]; gluProject(w[0],w[1],w[2],canvas->modelview,canvas->projection,canvas->viewport,&r[0],&r[1],&r[2]); x[0] = r[0]; x[1] = sysenv.height - r[1] - 1; } /********************************/ /* checks if a point is visible */ /********************************/ /* gint gl_vertex_visible(gdouble *x) { gint p[2]; gl_get_window_coords(x, p); if (p[0] < 0 || p[0] > sysenv.width) return(FALSE); if (p[1] < 0 || p[1] > sysenv.height) return(FALSE); return(TRUE); } */ /*************************************************/ /* checks if a point is visible (with tolerance) */ /*************************************************/ /* gint gl_vertex_tolerate(gdouble *x, gint dx) { gint p[2]; gl_get_window_coords(x, p); if (p[0] < -dx || p[0] > sysenv.width+dx) return(FALSE); if (p[1] < -dx || p[1] > sysenv.height+dx) return(FALSE); return(TRUE); } */ /*******************************************/ /* set opengl RGB colour for gdis RGB data */ /*******************************************/ void set_gl_colour(gint *rgb) { gdouble col[3]; col[0] = (gdouble) *rgb; col[1] = (gdouble) *(rgb+1); col[2] = (gdouble) *(rgb+2); VEC3MUL(col, 1.0/65535.0); glColor4f(col[0], col[1], col[2], 1.0); } /*************************************************************/ /* adjust fg colour for visibility against current bg colour */ /*************************************************************/ void make_fg_visible(void) { gdouble fg[3], bg[3]; #define F_COLOUR_SCALE 65535.0 ARR3SET(fg, sysenv.render.fg_colour); ARR3SET(bg, sysenv.render.bg_colour); VEC3MUL(fg, F_COLOUR_SCALE); VEC3MUL(bg, F_COLOUR_SCALE); /* XOR to get a visible colour */ fg[0] = (gint) bg[0] ^ (gint) F_COLOUR_SCALE; fg[1] = (gint) bg[1] ^ (gint) F_COLOUR_SCALE; fg[2] = (gint) bg[2] ^ (gint) F_COLOUR_SCALE; VEC3MUL(fg, 1.0/F_COLOUR_SCALE); ARR3SET(sysenv.render.fg_colour, fg); /* adjust label colour for visibility against the current background */ ARR3SET(fg, sysenv.render.label_colour); VEC3MUL(fg, F_COLOUR_SCALE); /* XOR to get a visible colour */ fg[0] = (gint) bg[0] ^ (gint) F_COLOUR_SCALE; fg[1] = (gint) bg[1] ^ (gint) F_COLOUR_SCALE; VEC3MUL(fg, 1.0/F_COLOUR_SCALE); /* force to zero, so we get yellow (not white) for a black background */ fg[2] = 0.0; ARR3SET(sysenv.render.label_colour, fg); /* adjust title colour for visibility against the current background */ /* ARR3SET(fg, sysenv.render.title_colour); VEC3MUL(fg, F_COLOUR_SCALE); */ /* force to zero, so we get cyan (not white) for a black background */ fg[0] = 0.0; /* XOR to get a visible colour */ fg[0] = (gint) bg[0] ^ (gint) F_COLOUR_SCALE; fg[1] = (gint) bg[1] ^ (gint) F_COLOUR_SCALE; fg[2] = (gint) bg[2] ^ (gint) F_COLOUR_SCALE; /* faded dark blue */ fg[0] *= 0.3; fg[1] *= 0.65; fg[2] *= 0.85; /* apricot */ /* fg[0] *= 0.9; fg[1] *= 0.7; fg[2] *= 0.4; */ VEC3MUL(fg, 1.0/F_COLOUR_SCALE); ARR3SET(sysenv.render.title_colour, fg); /* printf("fg: %lf %lf %lf\n",fg[0],fg[1],fg[2]); */ } /*******************************/ /* return approx. string width */ /*******************************/ gint gl_text_width(gchar *str) { return(strlen(str) * gl_fontsize); } /******************************/ /* print at a window position */ /******************************/ void gl_print_window(gchar *str, gint x, gint y, struct canvas_pak *canvas) { gdouble w[3]; if (!str) return; /* the use of 3 coords allows us to put text above everything else */ gl_project(w, x, y, canvas); glRasterPos3f(w[0], w[1], w[2]); glListBase(font_offset); glCallLists(strlen(str), GL_UNSIGNED_BYTE, str); } /*****************************/ /* print at a world position */ /*****************************/ void gl_print_world(gchar *str, gdouble x, gdouble y, gdouble z) { /* set the raster position & draw the text */ glRasterPos3f(x,y,z); glListBase(font_offset); glCallLists(strlen(str), GL_UNSIGNED_BYTE, str); } /********************************/ /* vertex at 2D screen position */ /********************************/ void gl_vertex_window(gint x, gint y, struct canvas_pak *canvas) { gdouble w[3]; gl_project(w, x, y, canvas); glVertex3dv(w); } /*********************************/ /* draw a box at screen position */ /*********************************/ void gl_draw_box(gint px1, gint py1, gint px2, gint py2, struct canvas_pak *canvas) { glBegin(GL_LINE_LOOP); gl_vertex_window(px1, py1, canvas); gl_vertex_window(px1, py2, canvas); gl_vertex_window(px2, py2, canvas); gl_vertex_window(px2, py1, canvas); glEnd(); } /*********************************************************/ /* determines if input position is close to a drawn core */ /*********************************************************/ #define PIXEL_TOLERANCE 5 gint gl_core_proximity(gint x, gint y, struct core_pak *core, struct canvas_pak *canvas) { gint dx, dy, dr, p[2], itol; gdouble tol; struct model_pak *model; if (!canvas || !core) return(G_MAXINT); model = canvas->model; if (!model) return(G_MAXINT); gl_unproject(p, core->rx, canvas); tol = gl_get_radius(core, model); tol *= sysenv.size; tol /= model->rmax; /* HACK - ensure tolerance is at least a few pixels */ itol = nearest_int(tol); if (itol < PIXEL_TOLERANCE*PIXEL_TOLERANCE) itol = PIXEL_TOLERANCE; dx = p[0] - x; dy = p[1] - y; dr = dx*dx + dy*dy; if (dr < itol) return(dr); return(G_MAXINT); } /**********************************************/ /* seek nearest core to window pixel position */ /**********************************************/ #define DEBUG_SEEK_CORE 0 gpointer gl_seek_core(gint x, gint y, struct model_pak *model) { gint dr, rmin; GSList *list; struct core_pak *core, *found=NULL; struct canvas_pak *canvas; #if DEBUG_SEEK_CORE printf("mouse: [%d, %d]\n", x, y); #endif /* canvas aware */ canvas = canvas_find(model); g_assert(canvas != NULL); /* default tolerance */ rmin = sysenv.size; for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; dr = gl_core_proximity(x, y, core, canvas); if (dr < rmin) { found = core; rmin = dr; } } return(found); } /********************************/ /* OpenGL atom location routine */ /********************************/ #define DEBUG_GL_SEEK_BOND 0 gpointer gl_seek_bond(gint x, gint y, struct model_pak *model) { gint p1[2], p2[2]; gdouble r[3]; gdouble dx, dy, d2; gdouble tol; gpointer match=NULL; GSList *list; struct bond_pak *bdata; struct core_pak *core1, *core2; /* default (squared) tolerance */ tol = sysenv.size; tol /= model->rmax; #if DEBUG_GL_SEEK_BOND printf("input: %d,%d [%f]\n", x, y, tol); #endif /* search */ for (list=model->bonds ; list ; list=g_slist_next(list)) { bdata = list->data; core1 = bdata->atom1; core2 = bdata->atom2; ARR3SET(r, core1->rx); gl_unproject(p1, r, canvas_find(model)); ARR3SET(r, core2->rx); gl_unproject(p2, r, canvas_find(model)); #if DEBUG_GL_SEEK_BOND printf("[%s-%s] @ [%f,%f]\n", core1->atom_label, core2->atom_label, 0.5*(p1[0]+p2[0]), 0.5*(p1[1]+p2[1])); #endif dx = 0.5*(p1[0]+p2[0]) - x; dy = 0.5*(p1[1]+p2[1]) - y; d2 = dx*dx + dy*dy; if (d2 < tol) { /* keep searching - return the best match */ tol = d2; match = bdata; } } return(match); } /***************************************************/ /* compute atoms that lie within the selection box */ /***************************************************/ #define DEBUG_GL_SELECT_BOX 0 #define GL_SELECT_TOLERANCE 10 void gl_select_box(GtkWidget *w) { gint i, tmp, x[2]; gdouble r[3], piv[3]; GSList *list, *ilist=NULL; struct model_pak *data; struct core_pak *core; struct image_pak *image; /* valid model */ data = sysenv.active_model; if (!data) return; if (data->graph_active) return; if (data->picture_active) return; /* ensure box limits have the correct order (ie low to high) */ for (i=0 ; i<2 ; i++) { if (data->select_box[i] > data->select_box[i+2]) { tmp = data->select_box[i]; data->select_box[i] = data->select_box[i+2]; data->select_box[i+2] = tmp; } } /* add pixel tolerance for (approx) single clicks */ if ((data->select_box[2] - data->select_box[0]) < GL_SELECT_TOLERANCE) { data->select_box[0] -= GL_SELECT_TOLERANCE; data->select_box[2] += GL_SELECT_TOLERANCE; } if ((data->select_box[1] - data->select_box[3]) < GL_SELECT_TOLERANCE) { data->select_box[1] -= GL_SELECT_TOLERANCE; data->select_box[3] += GL_SELECT_TOLERANCE; } #if DEBUG_GL_SELECT_BOX printf("[%d,%d] - [%d,%d]\n", data->select_box[0], data->select_box[1], data->select_box[2], data->select_box[3]); #endif /* find matches */ do { /* periodic images */ if (ilist) { image = ilist->data; ARR3SET(piv, image->rx); ilist = g_slist_next(ilist); } else { VEC3SET(piv, 0.0, 0.0, 0.0); ilist = data->images; } /* cores */ for (list=data->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->status & DELETED) continue; /* get core pixel position */ /* CURRENT */ ARR3SET(r, core->rx); ARR3ADD(r, piv); gl_unproject(x, r, canvas_find(data)); /* check bounds */ if (x[0] > data->select_box[0] && x[0] < data->select_box[2]) { if (x[1] > data->select_box[1] && x[1] < data->select_box[3]) { select_core(core, FALSE, data); } } } } while (ilist); redraw_canvas(SINGLE); } /********************************************/ /* build lists for respective drawing types */ /********************************************/ #define DEBUG_BUILD_CORE_LISTS 0 void gl_build_core_lists(GSList **solid, GSList **ghost, GSList **wire, struct model_pak *model) { GSList *list; struct core_pak *core; g_assert(model != NULL); *solid = *ghost = *wire = NULL; for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; /* bailout checks */ if (core->status & (HIDDEN | DELETED)) continue; if (core->render_mode == ZONE) continue; /* build appropriate lists */ if (core->render_wire) *wire = g_slist_prepend(*wire, core); else if (core->ghost) *ghost = g_slist_prepend(*ghost, core); else *solid = g_slist_prepend(*solid, core); } #if DEBUG_BUILD_CORE_LISTS printf("solid: %d\n", g_slist_length(*solid)); printf("ghost: %d\n", g_slist_length(*ghost)); printf(" wire: %d\n", g_slist_length(*wire)); #endif } /************************/ /* draw a list of cores */ /************************/ #define DEBUG_DRAW_CORES 0 void gl_draw_cores(GSList *cores, struct model_pak *model) { gint max, quality, dx; gdouble radius, x[3], colour[4]; GSList *list, *ilist; struct core_pak *core; struct point_pak sphere; struct image_pak *image; /* NEW - limit the quality based on physical model size */ /* FIXME - broken due to moving camera */ quality = sysenv.render.sphere_quality; if (sysenv.render.auto_quality) { radius = sysenv.size / model->zoom; max = radius/10; dx = 10; #if DEBUG_DRAW_CORES printf("%f : %d [%d]\n", radius, max, quality); #endif if (quality > max) sysenv.render.sphere_quality = max; } /* setup geometric primitve */ gl_init_sphere(&sphere, model); /* draw desired cores */ for (list=cores ; list ; list=g_slist_next(list)) { core = list->data; /* set colour */ ARR3SET(colour, core->colour); VEC3MUL(colour, 1.0/65535.0); colour[3] = core->colour[3]; glColor4dv(colour); radius = gl_get_radius(core, model); if (radius > 0.0) { /* original + image iteration */ ilist = NULL; do { ARR3SET(x, core->rx); if (ilist) { /* image translation */ image = ilist->data; ARR3ADD(x, image->rx); ilist = g_slist_next(ilist); } else ilist = model->images; /* if (gl_vertex_tolerate(x, dx)) */ gl_draw_sphere(&sphere, x, radius); } while (ilist); } } gl_free_points(&sphere); sysenv.render.sphere_quality = quality; } /* CURRENT - implement fractional image_limits */ /* possibility is draw extra whole unit (ie plus bonds) then use clipping planes to trim */ #if EXPERIMENTAL { gint i, j, a, b, c, flag, limit[6], test[6]; gdouble t[4], frac[6], whole; struct mol_pak *mol; /* set up integer limits */ for (i=6 ; i-- ; ) { frac[i] = modf(data->image_limit[i], &whole); limit[i] = (gint) whole; /* if we have a fractional part - extend the periodic image boundary */ if (frac[i] > FRACTION_TOLERANCE) { /* printf("i = %d, frac = %f\n", i, frac[i]); */ test[i] = TRUE; limit[i]++; } else test[i] = FALSE; } limit[0] *= -1; limit[2] *= -1; limit[4] *= -1; /* setup for pic iteration */ a = limit[0]; b = limit[2]; c = limit[4]; for (;;) { /* image increment */ if (a == limit[1]) { a = limit[0]; b++; if (b == limit[3]) { b = limit[2]; c++; if (c == limit[5]) break; } } VEC3SET(t, a, b, c); /* NEW - include fractional cell images */ /* TODO - include the testing as part of image increment testing? (ie above) */ flag = TRUE; for (i=0 ; iperiodic ; i++) { /* +ve fractional extent test */ if (test[2*i+1]) if (t[i] == limit[2*i+1]-1) { for (j=0 ; jperiodic ; j++) if (test[2*j+1]) { /* check molecule centroid, rather than atom coords */ mol = core->mol; if (mol->centroid[j] > frac[2*j+1]) flag = FALSE; } } /* -ve fractional extent test */ if (test[2*i]) if (t[i] == limit[2*i]) { /* + ve fractional extent test */ for (j=0 ; jperiodic ; j++) if (test[2*j]) { /* check molecule centroid, rather than atom coords */ mol = core->mol; /* TODO - pre-sub 1.0 from frac for this test */ if (mol->centroid[j] < (1.0-frac[2*j])) flag = FALSE; } } } if (flag) { t[3] = 0.0; vec4mat(data->display_lattice, t); ARR3SET(vec, core->rx); ARR3ADD(vec, t); gl_draw_sphere(&sphere, vec, radius); } a++; } } #endif /**********************************/ /* draw the selection halo/circle */ /**********************************/ void gl_draw_halo_list(GSList *list, struct model_pak *data) { gint h; gdouble radius, dr; gdouble vec[3], halo[4]; GSList *item, *ilist; struct point_pak circle; struct core_pak *core; struct image_pak *image; g_assert(data != NULL); /* variable quality halo */ h = 2 + sysenv.render.sphere_quality; h = h*h; gl_init_circle(&circle, h, data); /* halo colour */ VEC4SET(halo, 1.0, 0.95, 0.45, 1.0); for (item=list ; item ; item=g_slist_next(item)) { core = item->data; glColor4dv(halo); radius = gl_get_radius(core, data); if (radius == 0.0) continue; /* halo ring size increment */ /* a fn of the radius? eg 1/2 */ dr = 0.6*radius/halo_segments; /* original + image iteration */ ilist = NULL; do { ARR3SET(vec, core->rx); if (ilist) { /* image translation */ image = ilist->data; ARR3ADD(vec, image->rx); ilist = g_slist_next(ilist); } else ilist = data->images; if (sysenv.render.halos) { /* halo fade loop */ for (h=0 ; hrx[2] > c2->rx[2]) return(-1); return(1); } /***********************/ /* draw model's shells */ /***********************/ void gl_draw_shells(struct model_pak *data) { gint omit_atom, mode; gdouble radius; gdouble vec[3], colour[4]; GSList *list, *ilist; struct point_pak sphere; struct core_pak *core; struct shel_pak *shel; struct image_pak *image; g_assert(data != NULL); gl_init_sphere(&sphere, data); for (list=data->shels ; list ; list=g_slist_next(list)) { shel = list->data; if (shel->status & (DELETED | HIDDEN)) continue; /* shell colour */ ARR3SET(colour, shel->colour); colour[3] = 0.5; /* render mode */ core = shel->core; if (core) mode = core->render_mode; else mode = BALL_STICK; /* bailout modes */ switch (mode) { case LIQUORICE: case ZONE: continue; } /* position */ ilist=NULL; do { ARR3SET(vec, shel->rx); if (ilist) { /* image */ image = ilist->data; ARR3ADD(vec, image->rx); ilist = g_slist_next(ilist); } else { ilist = data->images; } /* set appropriate radius */ omit_atom = FALSE; radius = 1.0; switch (mode) { case BALL_STICK: radius *= sysenv.render.ball_rad; break; case CPK: radius *= elements[shel->atom_code].vdw; break; case STICK: radius *= sysenv.render.stick_rad; break; } if (!omit_atom) { glColor4dv(colour); gl_draw_sphere(&sphere, vec, radius); } } while (ilist); } glEnable(GL_LIGHTING); gl_free_points(&sphere); } /*******************************************/ /* draw model pipes (separate bond halves) */ /*******************************************/ /* stage (drawing stage) ie colour materials/lines/etc. */ /* TODO - only do minimum necessary for each stage */ void gl_draw_pipes(gint line, GSList *pipe_list, struct model_pak *model) { gint dx; guint q; gdouble v1[3], v2[3]; GSList *list, *ilist; struct pipe_pak *pipe; struct image_pak *image; /* setup for bond drawing */ q = sysenv.render.cylinder_quality; /* FIXME - this is broken by the new camera code */ if (sysenv.render.auto_quality) { if (!line) { /* only use desired quality if less than our guess at the useful maximum */ q = sysenv.size / (10.0 * model->rmax); q++; if (q > sysenv.render.cylinder_quality) q = sysenv.render.cylinder_quality; } } dx = 10; /* enumerate the supplied pipes (half bonds) */ for (list=pipe_list ; list ; list=g_slist_next(list)) { pipe = list->data; /* original + image iteration */ ilist = NULL; do { /* original */ ARR3SET(v1, pipe->v1); ARR3SET(v2, pipe->v2); if (ilist) { image = ilist->data; /* image */ ARR3ADD(v1, image->rx); ARR3ADD(v2, image->rx); ilist = g_slist_next(ilist); } else ilist = model->images; /* NEW - don't render if both endpoints are off screen */ /* if (gl_vertex_tolerate(v1, dx) && gl_vertex_tolerate(v2, dx)) */ { glColor4dv(pipe->colour); if (line) { glBegin(GL_LINES); glVertex3dv(v1); glVertex3dv(v2); glEnd(); } else gl_draw_cylinder(v1, v2, pipe->radius, q); } } while (ilist); } } /***************************/ /* draw crystal morphology */ /***************************/ /* deprec */ #define DEBUG_DRAW_MORPH 0 void gl_draw_morph(struct model_pak *data) { gdouble x[3]; GSList *list1, *list2; struct plane_pak *plane; struct vertex_pak *v; /* checks */ g_assert(data != NULL); /* turn lighting off for wire frame drawing - looks esp ugly */ /* when hidden (stippled) lines and normal lines are overlayed */ if (0.5*sysenv.render.wire_surface) glDisable(GL_LIGHTING); glLineWidth(sysenv.render.frame_thickness); /* visibility calculation */ for (list1=data->planes ; list1 ; list1=g_slist_next(list1)) { plane = list1->data; /* CURRENT */ /* if (plane->present) { struct vertex_pak *v1, *v2, *v3; if (plane->m[0] == 0 && plane->m[1] == 2 && plane->m[2] == -1) { printf(" ==== (%f %f %f)\n", plane->m[0], plane->m[1], plane->m[2]); P3VEC("n: ", plane->norm); for (list2=plane->vertices ; list2 ; list2=g_slist_next(list2)) { v1 = list2->data; P3VEC("v: ", v1->rx); } } } */ if (plane->present) plane->visible = facet_visible(data, plane); } /* draw hidden lines first */ if (sysenv.render.wire_surface && sysenv.render.wire_show_hidden) { glEnable(GL_LINE_STIPPLE); glLineStipple(1, 0x0303); for (list1=data->planes ; list1 ; list1=g_slist_next(list1)) { plane = list1->data; if (!plane->present) continue; /* start the face */ glBegin(GL_POLYGON); for (list2=plane->vertices ; list2 ; list2=g_slist_next(list2)) { v = list2->data; ARR3SET(x, v->rx); glNormal3dv(plane->norm); glVertex3dv(x); } glEnd(); } } /* draw the visible facets */ glDisable(GL_LINE_STIPPLE); for (list1=data->planes ; list1 ; list1=g_slist_next(list1)) { plane = list1->data; if (!plane->visible) continue; if (!plane->present) continue; #if DEBUG_DRAW_MORPH printf("(%f %f %f) :\n", plane->m[0], plane->m[1], plane->m[2]); #endif /* start the face */ glBegin(GL_POLYGON); for (list2=plane->vertices ; list2 ; list2=g_slist_next(list2)) { v = list2->data; #if DEBUG_DRAW_MORPH P3VEC(" : ", v->rx); #endif ARR3SET(x, v->rx); glNormal3dv(plane->norm); glVertex3dv(x); } glEnd(); } /* if wire frame draw - turn lighting back on */ if (sysenv.render.wire_surface) glEnable(GL_LIGHTING); } /***********************************/ /* draw the cartesian/lattice axes */ /***********************************/ void gl_draw_axes(gint mode, struct canvas_pak *canvas, struct model_pak *data) { gint i, ry; gdouble f, x1[3], x2[3]; gchar label[3]; if (!canvas) return; if (!data) return; glDisable(GL_FOG); /* axes type setup */ if (data->axes_type == CARTESIAN) strcpy(label, " x"); else strcpy(label, " a"); /* inverted y sense correction */ ry = sysenv.height - canvas->y - canvas->height + 40; gl_project(x1, canvas->x+40, ry, canvas); gl_project(x2, canvas->x+20, ry, canvas); ARR3SUB(x2, x1); /* yet another magic number */ f = 20.0 * VEC3MAG(x2) / data->rmax; if (mode) { /* set colour */ glColor4f(sysenv.render.fg_colour[0], sysenv.render.fg_colour[1], sysenv.render.fg_colour[2], 1.0); /* draw the axes */ for (i=3 ; i-- ; ) { ARR3SET(x2, data->axes[i].rx); VEC3MUL(x2, f); ARR3ADD(x2, x1); /* yet another magic number for the vector thickness */ draw_vector(x1, x2, 0.005*f*data->rmax); } } else { /* draw the labels - offset by fontsize? */ glColor4f(sysenv.render.title_colour[0], sysenv.render.title_colour[1], sysenv.render.title_colour[2], 1.0); for (i=0 ; i<3 ; i++) { ARR3SET(x2, data->axes[i].rx); VEC3MUL(x2, f); ARR3ADD(x2, x1); gl_print_world(label, x2[0], x2[1], x2[2]); label[1]++; } } if (sysenv.render.fog) glEnable(GL_FOG); } /*******************************************/ /* draw the cell frame for periodic models */ /*******************************************/ void gl_draw_cell(struct model_pak *data) { gint i, j; gdouble v1[3], v2[3], v3[3], v4[3]; /* draw the opposite ends of the frame */ for (i=0 ; i<5 ; i+=4) { glBegin(GL_LINE_LOOP); ARR3SET(v1, data->cell[i+0].rx); ARR3SET(v2, data->cell[i+1].rx); ARR3SET(v3, data->cell[i+2].rx); ARR3SET(v4, data->cell[i+3].rx); glVertex3dv(v1); glVertex3dv(v2); glVertex3dv(v3); glVertex3dv(v4); glEnd(); } /* draw the sides of the frame */ glBegin(GL_LINES); for (i=4 ; i-- ; ) { j = i+4; /* retrieve coordinates */ ARR3SET(v1, data->cell[i].rx); ARR3SET(v2, data->cell[j].rx); /* draw */ glVertex3dv(v1); glVertex3dv(v2); } glEnd(); } /***************************************/ /* draw the cell frame periodic images */ /***************************************/ void gl_draw_cell_images(struct model_pak *model) { gint i, j; gdouble v1[3], v2[3], v3[3], v4[3]; GSList *ilist; struct image_pak *image; /* image iteration (don't do original) */ ilist = model->images; for (ilist=model->images ; ilist ; ilist=g_slist_next(ilist)) { /* image translation */ image = ilist->data; /* draw the opposite ends of the frame */ for (i=0 ; i<5 ; i+=4) { glBegin(GL_LINE_LOOP); ARR3SET(v1, model->cell[i+0].rx); ARR3SET(v2, model->cell[i+1].rx); ARR3SET(v3, model->cell[i+2].rx); ARR3SET(v4, model->cell[i+3].rx); ARR3ADD(v1, image->rx); ARR3ADD(v2, image->rx); ARR3ADD(v3, image->rx); ARR3ADD(v4, image->rx); glVertex3dv(v1); glVertex3dv(v2); glVertex3dv(v3); glVertex3dv(v4); glEnd(); } /* draw the sides of the frame */ glBegin(GL_LINES); for (i=4 ; i-- ; ) { j = i+4; /* retrieve coordinates */ ARR3SET(v1, model->cell[i].rx); ARR3SET(v2, model->cell[j].rx); ARR3ADD(v1, image->rx); ARR3ADD(v2, image->rx); /* draw */ glVertex3dv(v1); glVertex3dv(v2); } glEnd(); } } /***************************/ /* draw core - shell links */ /***************************/ void gl_draw_links(struct model_pak *model) { GSList *list; struct core_pak *core; struct shel_pak *shell; g_assert(model != NULL); glBegin(GL_LINES); for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->shell) { shell = core->shell; glVertex3dv(core->rx); glVertex3dv(shell->rx); } } glEnd(); } /*********************/ /* draw measurements */ /*********************/ void gl_draw_measurements(struct model_pak *model) { gint type; gdouble colour[3], a1[3], a2[3], a3[3], a4[3], v1[3], v2[3], v3[3], n[3]; GSList *list; /* draw the lines */ for (list=model->measure_list ; list ; list=g_slist_next(list)) { type = measure_type_get(list->data); measure_colour_get(colour, list->data); glColor4f(colour[0], colour[1], colour[2], 1.0); switch (type) { case MEASURE_BOND: case MEASURE_DISTANCE: case MEASURE_INTER: case MEASURE_INTRA: measure_coord_get(v1, 0, list->data, model); measure_coord_get(v2, 1, list->data, model); glBegin(GL_LINES); glVertex3dv(v1); glVertex3dv(v2); glEnd(); break; case MEASURE_ANGLE: measure_coord_get(v1, 0, list->data, model); measure_coord_get(v2, 1, list->data, model); measure_coord_get(v3, 2, list->data, model); /* NB: central atom should be first */ draw_arc(v2, v1, v3); break; case MEASURE_TORSION: /* get constituent core coordinates */ measure_coord_get(a1, 0, list->data, model); measure_coord_get(a2, 1, list->data, model); measure_coord_get(a3, 2, list->data, model); measure_coord_get(a4, 3, list->data, model); /* middle 2 cores define the axis */ ARR3SET(n, a3); ARR3SUB(n, a2); normalize(n, 3); /* arm 1 */ ARR3SET(v3, a1); ARR3SUB(v3, a2); proj_vop(v1, v3, n); normalize(v1, 3); /* arm 2 */ ARR3SET(v3, a4); ARR3SUB(v3, a3); proj_vop(v2, v3, n); normalize(v2, 3); /* axis centre */ ARR3SET(v3, a2); ARR3ADD(v3, a3); VEC3MUL(v3, 0.5); /* arm endpoints are relative to axis centre */ ARR3ADD(v1, v3); ARR3ADD(v2, v3); /* draw arc */ draw_arc(v3, v1, v2); /* draw lines */ glBegin(GL_LINE_STRIP); glVertex3dv(v1); glVertex3dv(v3); glVertex3dv(v2); glEnd(); break; } } } /***************************/ /* draw morphology indices */ /***************************/ void gl_draw_miller(struct model_pak *data) { gchar *label; gdouble vec[3]; GSList *plist; struct plane_pak *plane; /* draw facet labels */ plist = data->planes; while (plist != NULL) { plane = plist->data; if (plane->present && plane->visible) { /* TODO - scale the font with data->scale? (vanishes if too small) */ /* print the hkl label */ label = g_strdup_printf("%d%d%d", plane->index[0], plane->index[1], plane->index[2]); ARR3SET(vec, plane->rx); gl_print_world(label, vec[0], vec[1], vec[2]); g_free(label); /* TODO - vector font (display list) with number + overbar number */ /* glBegin(GL_LINES); if (plane->index[0] < 0) { glVertex3d(plane->rx, plane->ry-gl_fontsize, plane->rz); glVertex3d(plane->rx+gl_fontsize, plane->ry-gl_fontsize, plane->rz); } if (plane->index[1] < 0) { glVertex3d(plane->rx+1*gl_fontsize, plane->ry-gl_fontsize, plane->rz); glVertex3d(plane->rx+2*gl_fontsize, plane->ry-gl_fontsize, plane->rz); } if (plane->index[2] < 0) { glVertex3d(plane->rx+2*gl_fontsize, plane->ry-gl_fontsize, plane->rz); glVertex3d(plane->rx+3*gl_fontsize, plane->ry-gl_fontsize, plane->rz); } glEnd(); */ } plist = g_slist_next(plist); } } /************************************************/ /* draw the colour scale for molecular surfaces */ /************************************************/ /* FIXME - siesta epot */ void gl_draw_colour_scale(gint x, gint y, struct model_pak *data) { gint i, n; gdouble z1, dz; gdouble colour[3], w1[3], w2[3]; GString *text; struct canvas_pak *canvas = canvas_find(data); g_assert(data != NULL); /* init */ n = data->epot_div; z1 = data->epot_max; dz = (data->epot_max - data->epot_min)/ (gdouble) (n-1); /* colour boxes */ glPolygonMode(GL_FRONT, GL_FILL); glBegin(GL_QUADS); for (i=0 ; ims_colour_method) { case MS_SOLVENT: ms_dock_colour(colour, z1, data->epot_min, data->epot_max); break; default: ms_epot_colour(colour, z1, data->epot_min, data->epot_max); } glColor3f(colour[0], colour[1], colour[2]); z1 -= dz; gl_project(w1, x, y+i*20, canvas); gl_project(w2, x, y+19+i*20, canvas); glVertex3dv(w1); glVertex3dv(w2); gl_project(w1, x+19, y+19+i*20, canvas); gl_project(w2, x+19, y+i*20, canvas); glVertex3dv(w1); glVertex3dv(w2); } glEnd(); /* init */ text = g_string_new(NULL); z1 = data->epot_max; glColor3f(1.0, 1.0, 1.0); /* box labels */ for (i=0 ; istr, x+30, y+i*20+18, canvas); z1 -= dz; } g_string_free(text, TRUE); } /**************************************/ /* draw text we wish to be unobscured */ /**************************************/ void gl_draw_text(struct canvas_pak *canvas, struct model_pak *data) { gint i, j, type; gchar *text; gdouble q, v1[3], v2[3], v3[3]; GSList *list; GString *label; struct vec_pak *v; struct spatial_pak *spatial; struct core_pak *core[4]; struct shel_pak *shell; if (!canvas) return; if (!data) return; /* print mode */ text = get_mode_label(data); gl_print_window(text, canvas->x+canvas->width-gl_text_width(text), sysenv.height-canvas->y-20, canvas); g_free(text); /* print some useful info */ if (sysenv.render.show_energy) { text = property_lookup("Energy", data); if (text) gl_print_window(text, canvas->x+20, sysenv.height-canvas->y-20, canvas); } /* print current frame */ if (data->show_frame_number) { if (data->animation) { text = g_strdup_printf("[%d:%d]", data->cur_frame, data->num_frames-1); gl_print_window(text, canvas->x+canvas->width-gl_text_width(text), sysenv.height-canvas->y-canvas->height+40, canvas); g_free(text); } } /* hkl labels */ /* if (data->num_vertices && data->morph_label) gl_draw_miller(data); */ /* unit cell lengths */ if (data->show_cell_lengths) { j=2; for (i=0 ; iperiodic ; i++) { j += pow(-1, i) * (i+1); text = g_strdup_printf("%5.2f", data->pbc[i]); ARR3SET(v1, data->cell[0].rx); ARR3ADD(v1, data->cell[j].rx); VEC3MUL(v1, 0.5); gl_print_world(text, v1[0], v1[1], v1[2]); g_free(text); } } /* epot scale */ if (data->ms_colour_scale) gl_draw_colour_scale(canvas->x+1, sysenv.height - canvas->y - canvas->height + 80, data); /* NEW - camera waypoint number */ if (data->show_waypoints && !data->animating) { i=0; glColor3f(0.0, 0.0, 1.0); for (list=data->waypoint_list ; list ; list=g_slist_next(list)) { struct camera_pak *camera = list->data; i++; if (camera == data->camera) continue; text = g_strdup_printf("%d", i); gl_print_world(text, camera->x[0], camera->x[1], camera->x[2]); g_free(text); } } /* TODO - incorporate scaling etc. in camera waypoint drawing */ /* the following text is likely to have partial */ /* overlapping, so XOR text fragments for clearer display */ glEnable(GL_COLOR_LOGIC_OP); glLogicOp(GL_XOR); glColor4f(1.0, 1.0, 1.0, 1.0); /* TODO - all atom related printing -> construct a string */ label = g_string_new(NULL); if (data->show_selection_labels) list = data->selection; else list = data->cores; /* for (list=data->selection ; list ; list=g_slist_next(list)) for (list=data->cores ; list ; list=g_slist_next(list)) */ while (list) { core[0] = list->data; if (core[0]->status & (DELETED | HIDDEN)) { list = g_slist_next(list); continue; } label = g_string_assign(label, ""); /* show the order the atom was read in (start from 1 - helps with zmatrix debugging) */ if (data->show_atom_index) { i = g_slist_index(data->cores, core[0]); g_string_sprintfa(label, "[%d]", i+1); } /* setup atom labels */ if (data->show_atom_labels) { g_string_sprintfa(label, "(%s)", core[0]->atom_label); } if (data->show_atom_types) { if (core[0]->atom_type) { g_string_sprintfa(label, "(%s)", core[0]->atom_type); } else { g_string_sprintfa(label, "(?)"); } } /*VZ*/ if (data->show_nmr_shifts) { g_string_sprintfa(label, "(%4.2f)", core[0]->atom_nmr_shift); } if (data->show_nmr_csa) { g_string_sprintfa(label, "(%4.2f;", core[0]->atom_nmr_aniso); g_string_sprintfa(label, "%4.2f)", core[0]->atom_nmr_asym); } if (data->show_nmr_efg) { g_string_sprintfa(label, "(%g;", core[0]->atom_nmr_cq); g_string_sprintfa(label, "%4.2f)", core[0]->atom_nmr_efgasym); } /* get atom charge, add shell charge (if any) to get net result */ if (data->show_atom_charges) { q = core[0]->charge; if (core[0]->shell) { shell = core[0]->shell; q += shell->charge; } g_string_sprintfa(label, "{%6.3f}", q); } /* print */ if (label->str) { ARR3SET(v1, core[0]->rx); gl_print_world(label->str, v1[0], v1[1], v1[2]); } list = g_slist_next(list); } g_string_free(label, TRUE); /* geom measurement labels */ if (data->show_geom_labels) for (list=data->measure_list ; list ; list=g_slist_next(list)) { type = measure_type_get(list->data); switch(type) { case MEASURE_BOND: case MEASURE_DISTANCE: case MEASURE_INTER: case MEASURE_INTRA: measure_coord_get(v1, 0, list->data, data); measure_coord_get(v2, 1, list->data, data); ARR3ADD(v1, v2); VEC3MUL(v1, 0.5); gl_print_world(measure_value_get(list->data), v1[0], v1[1], v1[2]); break; case MEASURE_ANGLE: /* angle is i-j-k */ measure_coord_get(v1, 0, list->data, data); measure_coord_get(v2, 1, list->data, data); measure_coord_get(v3, 2, list->data, data); /* angle label */ /* FIXME - should use a similar process to the draw_arc code to */ /* determine which arm is shorter & use that to determine label position */ ARR3ADD(v1, v2); ARR3ADD(v1, v3); VEC3MUL(v1, 0.3333); gl_print_world(measure_value_get(list->data), v1[0], v1[1], v1[2]); break; } } /* spatial object labels */ glDisable(GL_COLOR_LOGIC_OP); /* FIXME - need to change the variable name */ if (data->morph_label) for (list=data->spatial ; list ; list=g_slist_next(list)) { spatial = list->data; if (spatial->show_label) { glColor4f(spatial->c[0], spatial->c[1], spatial->c[2], 1.0); v = g_slist_nth_data(spatial->list, 0); if (gl_visible(v->rn, data)) gl_print_world(spatial->label, spatial->x[0], spatial->x[1], spatial->x[2]); } } } /********************************/ /* draw a ribbon special object */ /********************************/ void gl_draw_ribbon(struct model_pak *data) { gdouble len, vec1[3], vec2[3]; GSList *list, *rlist; struct ribbon_pak *ribbon; struct object_pak *object; GLfloat ctrl[8][3]; for (list=data->ribbons ; list ; list=g_slist_next(list)) { object = list->data; g_assert(object->type == RIBBON); /* go through the ribbon segment list */ rlist = (GSList *) object->data; while (rlist != NULL) { ribbon = rlist->data; glColor4f(ribbon->colour[0], ribbon->colour[1], ribbon->colour[2], sysenv.render.transmit); /* end points */ ARR3SET(&ctrl[0][0], ribbon->r1); ARR3SET(&ctrl[3][0], ribbon->r2); /* get distance between ribbon points */ ARR3SET(vec1, ribbon->r1); ARR3SUB(vec1, ribbon->r2); len = VEC3MAG(vec1); /* shape control points */ ARR3SET(&ctrl[1][0], ribbon->r1); ARR3SET(&ctrl[2][0], ribbon->r2); /* segment length based curvature - controls how flat it is at the cyclic group */ ARR3SET(vec1, ribbon->o1); VEC3MUL(vec1, len*sysenv.render.ribbon_curvature); ARR3ADD(&ctrl[1][0], vec1); ARR3SET(vec2, ribbon->o2); VEC3MUL(vec2, len*sysenv.render.ribbon_curvature); ARR3ADD(&ctrl[2][0], vec2); /* compute offsets for ribbon thickness */ crossprod(vec1, ribbon->n1, ribbon->o1); crossprod(vec2, ribbon->n2, ribbon->o2); normalize(vec1, 3); normalize(vec2, 3); /* thickness vectors for the two ribbon endpoints */ VEC3MUL(vec1, 0.5*sysenv.render.ribbon_thickness); VEC3MUL(vec2, 0.5*sysenv.render.ribbon_thickness); /* ensure these are pointing the same way */ if (via(vec1, vec2, 3) > PI/2.0) { VEC3MUL(vec2, -1.0); } /* FIXME - 2D evaluators have mysteriously just stopped working */ /* FIXME - fedora / driver problem? */ /* FIXME - seems to be specific to jago (diff video card) -> update driver */ if (sysenv.render.wire_surface) { /* CURRENT - exp using a 1D workaround (only use half the control points) */ glLineWidth(sysenv.render.ribbon_thickness); glMap1f(GL_MAP1_VERTEX_3, 0.0, 1.0, 3, 4, &ctrl[0][0]); glEnable(GL_MAP1_VERTEX_3); glMapGrid1f(sysenv.render.ribbon_quality, 0.0, 1.0); glEvalMesh1(GL_LINE, 0, sysenv.render.ribbon_quality); /* { GLfloat f; glBegin(GL_LINE_STRIP); for (f=0.0 ; f<1.0 ; f+=0.01) { glEvalCoord1f(f); } glEnd(); } */ } else { /* init the bottom edge control points */ ARR3SET(&ctrl[4][0], &ctrl[0][0]); ARR3SET(&ctrl[5][0], &ctrl[1][0]); ARR3SET(&ctrl[6][0], &ctrl[2][0]); ARR3SET(&ctrl[7][0], &ctrl[3][0]); /* lift points to make the top edge */ ARR3ADD(&ctrl[0][0], vec1); ARR3ADD(&ctrl[1][0], vec1); ARR3ADD(&ctrl[2][0], vec2); ARR3ADD(&ctrl[3][0], vec2); /* lower points to make the bottom edge */ ARR3SUB(&ctrl[4][0], vec1); ARR3SUB(&ctrl[5][0], vec1); ARR3SUB(&ctrl[6][0], vec2); ARR3SUB(&ctrl[7][0], vec2); /* drawing */ /* CURRENT - 2D evaluators have mysteriously just stopped working */ glMap2f(GL_MAP2_VERTEX_3, 0.0, 1.0, 3, 4, 0.0, 1.0, 12, 2, &ctrl[0][0]); glEnable(GL_MAP2_VERTEX_3); glEnable(GL_AUTO_NORMAL); glMapGrid2f(sysenv.render.ribbon_quality, 0.0, 1.0, 3, 0.0, 1.0); glEvalMesh2(GL_FILL, 0, sysenv.render.ribbon_quality, 0, 3); } rlist = g_slist_next(rlist); } } } /**************************/ /* spatial object drawing */ /**************************/ /* NB: different setup for vectors/planes - draw in seperate iterations */ void gl_draw_spatial(gint material, struct model_pak *data) { gdouble size, v0[3], v1[3], v2[3], vi[3], mp[3], mn[3]; GSList *list, *list1, *list2, *ilist; struct vec_pak *p1, *p2; struct spatial_pak *spatial; struct image_pak *image; struct camera_pak *camera; g_assert(data != NULL); camera = data->camera; g_assert(camera != NULL); ARR3SET(v0, camera->v); quat_rotate(v0, camera->q); for (list=data->spatial ; list ; list=g_slist_next(list)) { spatial = list->data; /* NEW - normal check for wire frame and show hidden */ if (sysenv.render.wire_surface && !sysenv.render.wire_show_hidden) { p1 = g_slist_nth_data(spatial->list, 0); if (via(v0, p1->rn, 3) < 0.5*PI) continue; } if (spatial->material == material) { /* enumerate periodic images */ ilist=NULL; do { if (ilist) { /* image */ image = ilist->data; ARR3SET(vi, image->rx); ilist = g_slist_next(ilist); } else { /* original */ VEC3SET(vi, 0.0, 0.0, 0.0); if (spatial->periodic) ilist = data->images; } switch (spatial->type) { /* vector spatials (special object) */ case SPATIAL_VECTOR: list1 = spatial->list; list2 = g_slist_next(list1); while (list1 && list2) { p1 = list1->data; p2 = list2->data; ARR3SET(v1, p1->rx); ARR3SET(v2, p2->rx); draw_vector(v1, v2, 0.04); list1 = g_slist_next(list2); list2 = g_slist_next(list1); } break; /* generic spatials (method + vertices) */ default: size = 0.0; VEC3SET(mp, 0.0, 0.0, 0.0); VEC3SET(mn, 0.0, 0.0, 0.0); p1 = g_slist_nth_data(spatial->list, 0); /* CURRENT */ /* sysenv.render.wire_show_hidden */ glBegin(spatial->method); for (list1=spatial->list ; list1 ; list1=g_slist_next(list1)) { p1 = list1->data; ARR3SET(v1, p1->rx); ARR3ADD(v1, vi); ARR3ADD(mp, v1); ARR3SET(mn, p1->rn); size++; glColor4f(p1->colour[0], p1->colour[1], p1->colour[2], sysenv.render.transmit); glNormal3dv(p1->rn); glVertex3dv(v1); } glEnd(); if (size > 0.1) { VEC3MUL(mp, 1.0/size); } ARR3SET(spatial->x, mp); break; } } while (ilist); } } } /***************************************/ /* draw a picture in the OpenGL window */ /***************************************/ #if DRAW_PICTURE void gl_picture_draw(struct canvas_pak *canvas, struct model_pak *model) { GdkPixbuf *raw_pixbuf, *scaled_pixbuf; GError *error; g_assert(model->picture_active != NULL); /* read in the picture */ error = NULL; raw_pixbuf = gdk_pixbuf_new_from_file(model->picture_active, &error); /* error checking */ if (!raw_pixbuf) { if (error) { printf("%s\n", error->message); g_error_free(error); } else printf("Failed to load: %s\n", (gchar *) model->picture_active); return; } /* scale and draw the picture */ scaled_pixbuf = gdk_pixbuf_scale_simple(raw_pixbuf, canvas->width, canvas->height, GDK_INTERP_TILES); gdk_draw_pixbuf((canvas->glarea)->window, NULL, scaled_pixbuf, 0, 0, 0, 0, canvas->width, canvas->height, GDK_RGB_DITHER_NONE, 0, 0); } #endif /*************************/ /* draw camera waypoints */ /*************************/ void gl_camera_waypoints_draw(struct model_pak *model) { gdouble x[3], o[3], e[3], b1[3], b2[3], b3[3], b4[4]; GSList *list; struct point_pak sphere; gl_init_sphere(&sphere, model); for (list=model->waypoint_list ; list ; list=g_slist_next(list)) { struct camera_pak *camera = list->data; if (camera == model->camera) continue; /* offset the sphere so it doesn't interfere with viewing */ ARR3SET(x, camera->v); VEC3MUL(x, -0.1); ARR3ADD(x, camera->x); glColor3f(0.5, 0.5, 0.5); gl_draw_sphere(&sphere, x, 0.1); #define CONE_SIZE 0.3 /* get vector orthogonal to viewing and orientation vectors */ ARR3SET(e, camera->e); VEC3MUL(e, CONE_SIZE); /* compute base of the cone */ ARR3SET(b1, camera->v); VEC3MUL(b1, CONE_SIZE); ARR3ADD(b1, camera->x); ARR3SET(b2, b1); ARR3SET(b3, b1); ARR3SET(b4, b1); ARR3SET(o, camera->o); VEC3MUL(o, CONE_SIZE); /* compute 4 base points of the FOY square cone */ ARR3ADD(b1, o); ARR3ADD(b1, e); ARR3ADD(b2, o); ARR3SUB(b2, e); ARR3SUB(b3, o); ARR3SUB(b3, e); ARR3SUB(b4, o); ARR3ADD(b4, e); /* square cone = FOV */ glBegin(GL_TRIANGLE_FAN); glVertex3dv(camera->x); glVertex3dv(b2); glVertex3dv(b3); glVertex3dv(b4); glVertex3dv(b1); glEnd(); /* complete the cone - different colour to indicate this is the UP orientation direction */ glColor3f(1.0, 0.0, 0.0); glBegin(GL_TRIANGLES); glVertex3dv(camera->x); glVertex3dv(b1); glVertex3dv(b2); glEnd(); } gl_free_points(&sphere); } /************************/ /* main drawing routine */ /************************/ void draw_objs(struct canvas_pak *canvas, struct model_pak *data) { gint i; gulong time; gdouble r; gfloat specular[4], fog[4]; gdouble fog_mark; GSList *pipes[4]; GSList *solid=NULL, *ghost=NULL, *wire=NULL; time = mytimer(); /* NEW - playing around with the idea of zone visibility */ /* zone_visible_init(data); */ /* transformation recording */ if (data->mode == RECORD) { struct camera_pak *camera; /* hack to prevent duplicate recording of the 1st frame */ /* FIXME - this will fail for multiple (concatenated) recordings */ if (data->num_frames > 1) { camera = camera_dup(data->camera); data->transform_list = g_slist_append(data->transform_list, camera); } data->num_frames++; } /* setup the lighting */ gl_init_lights(data); /* scaling affects placement to avoid near/far clipping */ r = sysenv.rsize; /* main drawing setup */ glFrontFace(GL_CCW); glEnable(GL_LIGHTING); glDepthMask(GL_TRUE); glEnable(GL_DEPTH_TEST); glDepthFunc(GL_LESS); glEnable(GL_CULL_FACE); glShadeModel(GL_SMOOTH); glPolygonMode(GL_FRONT_AND_BACK, GL_FILL); glLineWidth(sysenv.render.line_thickness); glPointSize(2.0); /* NEW - vertex arrarys */ #if VERTEX_ARRAYS glEnableClientState(GL_VERTEX_ARRAY); glEnableClientState(GL_NORMAL_ARRAY); #endif /* turn off antialiasing, in case it was previously on */ glDisable(GL_LINE_SMOOTH); glDisable(GL_POINT_SMOOTH); glDisable(GL_BLEND); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); /* depth queuing via fog */ /* FIXME - broken due to new camera code */ if (sysenv.render.fog) { glEnable(GL_FOG); ARR3SET(fog, sysenv.render.bg_colour); glFogfv(GL_FOG_COLOR, fog); glFogf(GL_FOG_MODE, GL_LINEAR); glHint(GL_FOG_HINT, GL_DONT_CARE); /* NB: only does something if mode is EXP */ /* glFogf(GL_FOG_DENSITY, 0.1); */ fog_mark = r; glFogf(GL_FOG_START, fog_mark); fog_mark += (1.0 - sysenv.render.fog_density) * 4.0*r; glFogf(GL_FOG_END, fog_mark); } else glDisable(GL_FOG); /* solid drawing */ glPolygonMode(GL_FRONT, GL_FILL); glLightModeli(GL_LIGHT_MODEL_TWO_SIDE, GL_FALSE); /* material shininess control (atoms) */ VEC3SET(specular, sysenv.render.ahl_strength , sysenv.render.ahl_strength , sysenv.render.ahl_strength); glMaterialf(GL_FRONT, GL_SHININESS, sysenv.render.ahl_size); glMaterialfv(GL_FRONT, GL_SPECULAR, specular); /* colour-only change for spheres */ glEnable(GL_COLOR_MATERIAL); glColorMaterial(GL_FRONT, GL_AMBIENT_AND_DIFFUSE); /* TODO - speedup - if atoms are v small - disable lighting */ /* draw solid cores */ if (data->show_cores) gl_build_core_lists(&solid, &ghost, &wire, data); gl_draw_cores(solid, data); /* pipe lists should be build AFTER core list (OFF_SCREEN flag tests) */ render_make_pipes(pipes, data); /* double sided drawing for all spatial objects */ glLightModeli(GL_LIGHT_MODEL_TWO_SIDE, GL_TRUE); glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, specular); glColorMaterial(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE); glDisable(GL_CULL_FACE); /* draw solid bonds */ glPolygonMode(GL_FRONT_AND_BACK, GL_FILL); gl_draw_pipes(FALSE, pipes[0], data); /* material shininess control (surfaces) */ VEC3SET(specular, sysenv.render.shl_strength , sysenv.render.shl_strength , sysenv.render.shl_strength); glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, specular); glMaterialf(GL_FRONT_AND_BACK, GL_SHININESS, sysenv.render.shl_size); glColorMaterial(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE); glColor4f(sysenv.render.fg_colour[0], sysenv.render.fg_colour[1], sysenv.render.fg_colour[2], 1.0); /* draw camera waypoint locations */ if (data->show_waypoints && !data->animating) gl_camera_waypoints_draw(data); gl_draw_spatial(SPATIAL_SOLID, data); /* wire frame stuff */ glPolygonMode(GL_FRONT_AND_BACK, GL_LINE); if (sysenv.render.antialias) { glEnable(GL_LINE_SMOOTH); glEnable(GL_POINT_SMOOTH); glEnable(GL_BLEND); } gl_draw_cores(wire, data); /* cancel wire frame if spatials are to be solid */ if (!sysenv.render.wire_surface) { glPolygonMode(GL_FRONT_AND_BACK, GL_FILL); /* spatials are potentially translucent */ if (sysenv.render.transmit < 0.99) { /* alpha blending for translucent surfaces */ glEnable(GL_BLEND); /* NB: make depth buffer read only - for translucent objects */ /* see the red book p229 */ glDepthMask(GL_FALSE); } } /* NEW - all spatials drawn with this line thickness */ glLineWidth(sysenv.render.frame_thickness); /* FIXME - translucent spatials are not drawn back to front & can look funny */ gl_draw_spatial(SPATIAL_SURFACE, data); /* ensure solid surfaces from now on */ glPolygonMode(GL_FRONT_AND_BACK, GL_FILL); if (data->show_axes) { /* always draw axes polygon fragments */ glDepthFunc(GL_ALWAYS); gl_draw_axes(TRUE, canvas, data); glDepthFunc(GL_LESS); } /* enforce transparency */ glEnable(GL_BLEND); glDepthMask(GL_FALSE); /* translucent ghost atoms */ ghost = g_slist_sort(ghost, (gpointer) gl_depth_sort); gl_draw_cores(ghost, data); /* ghost bonds */ /* NB: back to front ordering */ pipes[1] = render_sort_pipes(pipes[1]); gl_draw_pipes(FALSE, pipes[1], data); /* translucent shells */ if (data->show_shells) gl_draw_shells(data); /* CURRENT - ribbon drawing is broken */ gl_draw_ribbon(data); /* halos */ glDisable(GL_LIGHTING); glShadeModel(GL_FLAT); gl_draw_halo_list(data->selection, data); /* stop translucent drawing/depth buffering */ glDepthMask(GL_TRUE); /* at this point, should have completed all colour_material routines */ /* ie only simple line/text drawing stuff after this point */ glEnable(GL_CULL_FACE); glDisable(GL_COLOR_MATERIAL); gl_draw_spatial(SPATIAL_LINE, data); /* always visible foreground colour */ glColor4f(sysenv.render.fg_colour[0], sysenv.render.fg_colour[1], sysenv.render.fg_colour[2], 1.0); /* unit cell drawing */ if (data->show_cell && data->periodic) { glLineWidth(sysenv.render.frame_thickness); gl_draw_cell(data); } /* draw wire/line bond types */ glLineWidth(sysenv.render.stick_thickness); glColor4f(1.0, 0.85, 0.5, 1.0); glPolygonMode(GL_FRONT_AND_BACK, GL_LINE); /* wire frame cylinders bonds */ glDisable(GL_CULL_FACE); gl_draw_pipes(FALSE, pipes[2], data); glEnable(GL_CULL_FACE); /* stick (line) bonds */ gl_draw_pipes(TRUE, pipes[3], data); /* set up stippling */ glEnable(GL_LINE_STIPPLE); glLineStipple(1, 0x0F0F); glLineWidth(1.0); /* periodic cell images */ glColor3f(0.8, 0.7, 0.6); if (data->show_cell_images) gl_draw_cell_images(data); /* enforce no depth queuing from now on */ glDisable(GL_FOG); /* active/measurements colour (yellow) */ glColor4f(sysenv.render.label_colour[0], sysenv.render.label_colour[1], sysenv.render.label_colour[2], 1.0); /* selection box */ glLineWidth(1.5); if (data->box_on) gl_draw_box(data->select_box[0], data->select_box[1], data->select_box[2], data->select_box[3], canvas); /* measurements */ glLineWidth(sysenv.render.geom_line_width); gl_draw_measurements(data); /* CURRENT - core/shell links */ if (data->show_links) gl_draw_links(data); glDisable(GL_LINE_STIPPLE); /* text drawing - accept all fragments */ glDepthFunc(GL_ALWAYS); glColor4f(sysenv.render.fg_colour[0], sysenv.render.fg_colour[1], sysenv.render.fg_colour[2], 1.0); gl_draw_text(canvas, data); if (data->show_axes) gl_draw_axes(FALSE, canvas, data); /* free all core lists */ g_slist_free(solid); g_slist_free(ghost); g_slist_free(wire); /* free all pipes */ for (i=4 ; i-- ; ) free_slist(pipes[i]); /* save timing info */ data->redraw_current = mytimer() - time; data->redraw_cumulative += data->redraw_current; data->redraw_count++; } /************************/ /* total canvas refresh */ /************************/ /* void gl_draw(struct canvas_pak *canvas, struct model_pak *data) { gint flag; gdouble sq, cq; GdkGLContext *glcontext; GdkGLDrawable *gldrawable; PangoFontDescription *pfd; if (!data) { gui_atom_widget_update(NULL, NULL); return; } sq = sysenv.render.sphere_quality; cq = sysenv.render.cylinder_quality; if (sysenv.moving && sysenv.render.fast_rotation) { sysenv.render.sphere_quality = 1; sysenv.render.cylinder_quality = 5; } sysenv.render.sphere_quality = sq; sysenv.render.cylinder_quality = cq; } */ /****************************************************************************/ /* timing analysis, returns true if redraw timeout was adjusted, else false */ /****************************************************************************/ #define DEBUG_CANVAS_TIMING 0 gint canvas_timing_adjust(struct model_pak *model) { static gint n=1; gint m; gdouble time; /* timing analysis */ if (model->redraw_count >= 10) { time = model->redraw_cumulative; time /= model->redraw_count; time /= 1000.0; #if DEBUG_CANVAS_TIMING printf("[redraw] cumulative = %d us : average = %.1f ms : freq = %d x 25ms\n", model->redraw_cumulative, time, n); #endif model->redraw_count = 0; model->redraw_cumulative = 0; /* adjust redraw frequency? */ m = 1 + time/25; /* NEW - only increase if the difference is at least */ /* two greater to prevent flicking back and forth */ if (m > n+1) { n = m; #if DEBUG_CANVAS_TIMING printf("increasing delay between redraw: %d\n", n); #endif g_timeout_add(n*25, (GSourceFunc) &gui_canvas_handler, NULL); return(TRUE); } } else { /* redraw frequency test */ if (n > 1 && model->redraw_count) { time = model->redraw_current; time *= 0.001; m = 1 + time/25; /* adjust redraw frequency? */ if (m < n) { n = m; #if DEBUG_CANVAS_TIMING printf("decreasing delay between redraw: %d : %dus)\n", n, model->redraw_current); #endif g_timeout_add(n*25, (GSourceFunc) &gui_canvas_handler, NULL); return(TRUE); } } } return(FALSE); } /*********************************/ /* font initialization primitive */ /*********************************/ void gl_font_init(void) { PangoFontDescription *pfd; font_offset = glGenLists(128); if (font_offset) { pfd = pango_font_description_from_string(sysenv.gl_fontname); if (!gdk_gl_font_use_pango_font(pfd, 0, 128, font_offset)) gui_text_show(ERROR, "Failed to set up Pango font for OpenGL.\n"); gl_fontsize = pango_font_description_get_size(pfd) / PANGO_SCALE; pango_font_description_free(pfd); } else gui_text_show(ERROR, "Failed to allocate display lists for OpenGL fonts.\n"); } /***********************/ /* font free primitive */ /***********************/ void gl_font_free(void) { glDeleteLists(font_offset, 128); font_offset = -1; } /**************************/ /* handle redraw requests */ /**************************/ #define DEBUG_CANVAS_REFRESH 0 gint gl_canvas_refresh(void) { gint nc; GSList *list; GdkGLContext *glcontext; GdkGLDrawable *gldrawable; struct model_pak *model; struct canvas_pak *canvas; /* divert to stereo update? */ if (sysenv.stereo) { /* FIXME - this hack means windowed stereo will only display the 1st canvas */ stereo_init_window((sysenv.canvas_list)->data); stereo_draw(); return(TRUE); } /* is there anything to draw on? */ glcontext = gtk_widget_get_gl_context(sysenv.glarea); gldrawable = gtk_widget_get_gl_drawable(sysenv.glarea); if (!gdk_gl_drawable_gl_begin(gldrawable, glcontext)) return(FALSE); glClearColor(sysenv.render.bg_colour[0], sysenv.render.bg_colour[1], sysenv.render.bg_colour[2], 0.0); glClearStencil(0x0); glDrawBuffer(GL_BACK); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT); make_fg_visible(); /* pango fonts for OpenGL */ if (font_offset < 0) gl_font_init(); nc = g_slist_length(sysenv.canvas_list); for (list=sysenv.canvas_list ; list ; list=g_slist_next(list)) { canvas = list->data; model = canvas->model; #if DEBUG_CANVAS_REFRESH printf("canvas: %p\nactive: %d\nresize: %d\nmodel: %p\n", canvas, canvas->active, canvas->resize, canvas->model); #endif /* setup viewing transformations (even if no model - border) */ gl_init_projection(canvas, model); /* drawing (model only) */ if (model) { /* clear the atom info box */ /* CURRENT - always have 2 redraw each canvas as glClear() blanks the entire window */ /* TODO - can we clear/redraw only when redraw requested? */ /* if (model->redraw) */ { #if DEBUG_CANVAS_REFRESH printf("gl_draw(): %d,%d - %d x %d\n", canvas->x, canvas->y, canvas->width, canvas->height); #endif if (model->graph_active) graph_draw(canvas, model); else draw_objs(canvas, model); model->redraw = FALSE; if (canvas_timing_adjust(model)) { gdk_gl_drawable_swap_buffers(gldrawable); gdk_gl_drawable_gl_end(gldrawable); return(FALSE); } } } /* draw viewport frames if more than one canvas */ if (nc > 1) { glColor3f(1.0, 1.0, 1.0); if (sysenv.active_model) { if (canvas->model == sysenv.active_model) glColor3f(1.0, 1.0, 0.0); } glLineWidth(1.0); gl_draw_box(canvas->x+1, sysenv.height-canvas->y-1, canvas->x+canvas->width-1, sysenv.height-canvas->y-canvas->height, canvas); } } gdk_gl_drawable_swap_buffers(gldrawable); gdk_gl_drawable_gl_end(gldrawable); return(TRUE); } /**************************/ /* handle redraw requests */ /**************************/ gint gui_canvas_handler(gpointer *dummy) { static gulong start=0, time=0, frames=0; /* first time init */ if (!start) start = mytimer(); frames++; /* update FPS every nth frame */ if (frames > 10) { gdouble fps = frames * 1000000.0; time = mytimer() - start; sysenv.fps = nearest_int(fps / (gdouble) time); start = mytimer(); time = frames = 0; } if (sysenv.refresh_canvas) { gl_canvas_refresh(); sysenv.refresh_canvas = FALSE; } if (sysenv.refresh_dialog) { /* dialog redraw */ dialog_refresh_all(); /* model pane redraw */ tree_model_refresh(sysenv.active_model); /* selection redraw */ gui_active_refresh(); sysenv.refresh_dialog = FALSE; } if (sysenv.snapshot) image_write((sysenv.glarea)->window); return(TRUE); } gdis-0.90/quaternion.h0000644000175000017500000000212510445461565013376 0ustar seansean/* Copyright (C) 2003 by Craig Andrew James Fisher Copyright (C) 2000 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ void quat_mult(gdouble *, gdouble *); void quat_concat(gdouble *, gdouble *, gdouble); void quat_concat_euler(gdouble *, gint, gdouble); void quat_rotate(gdouble *, gdouble *); void quat_matrix(gdouble *, gdouble *); void quat_convert_matrix(gdouble *, gdouble *); gdis-0.90/defect.c0000644000175000017500000003250010600706735012430 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming and Andrew Walker sean@ivec.org andrew.m.walker@anu.edu.au This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include "gdis.h" #include "file.h" #include "scan.h" #include "parse.h" #include "coords.h" #include "defect.h" #include "edit.h" #include "graph.h" #include "dialog.h" #include "model.h" #include "matrix.h" #include "geometry.h" #include "numeric.h" #include "space.h" #include "surface.h" #include "task.h" #include "zone.h" #include "interface.h" #include "gui_shorts.h" extern struct sysenv_pak sysenv; /*************************/ /* check for 2-fold axes */ /*************************/ void defect_check_symmetry(struct model_pak *model) { gint i, n; for (i=1 ; isginfo.order ; i++) { n = matrix_is_z_rotation(*(model->sginfo.matrix+i)); if (n) { printf("matrix %d", i); P3MAT(" ", *(model->sginfo.matrix+i)); P3VEC("+", *(model->sginfo.offset+i)); printf(" : is a %d rotation axis\n", n); } } } /*****************************************/ /* acquire the elastic compliance matrix */ /*****************************************/ gint defect_compliance_get(gdouble *s, struct plane_pak *plane, struct model_pak *source) { gint i, j, tokens; gchar *inp, *out, *line, **buff; gchar *full_inp, *full_out; gpointer scan; struct model_pak *model; g_assert(source != NULL); /* I thought we could use the true cell stuff, but it's too messy */ /* given that the dislocation is based on distance from cylinder center */ printf("generating transformed cell.\n"); model = model_new(); source->surface.true_cell = TRUE; ARR3SET(model->surface.miller, plane->m); model->surface.region[0] = 1; model->surface.region[1] = 0; model->surface.shift = 0.0; generate_surface(source, model); /* setup "surface" for GULP calc */ gulp_data_copy(source, model); /* this can have crap in it that stuffs up the GULP run */ /* gulp_extra_copy(source, model); */ /* run the required GULP job */ model->gulp.prop = TRUE; model->gulp.run = E_OPTIMIZE; /* this tells GULP to output lattice vectors */ model->construct_pbc = TRUE; model->periodic = 3; /* get a temporary name */ inp = gun("gin"); out = gun("got"); full_inp = g_build_filename(sysenv.cwd, inp, NULL); full_out = g_build_filename(sysenv.cwd, out, NULL); g_free(inp); g_free(out); printf("acquiring elastic compliance matrix...\n"); write_gulp(full_inp, model); if (exec_gulp(full_inp, full_out)) return(1); /* process the output */ scan = scan_new(full_out); if (!scan) return(2); while (!scan_complete(scan)) { line = scan_get_line(scan); if (line) if (g_strncasecmp(line, " Elastic Compliance Matrix:", 28) == 0) { for (i=4 ; i-- ; ) scan_get_line(scan); for (i=0 ; i<6 ; i++) { buff = scan_get_tokens(scan, &tokens); if (tokens > 6) { for (j=0 ; j<6 ; j++) s[6*i+j] = str_to_float(*(buff+j+1)); } else printf("Error parsing constants.\n"); g_strfreev(buff); } } } scan_free(scan); unlink(full_inp); unlink(full_out); g_free(full_inp); g_free(full_out); model_free(model); sysenv.mal = g_slist_remove(sysenv.mal, model); g_free(model); return(0); } /********************************************************/ /* create a cylinder (xy cross section) of given radius */ /********************************************************/ void defect_make_cylinder(gdouble *o, gdouble r1, gdouble r2, struct model_pak *model) { gint region; gdouble r, rsq, r1sq, d2, x[3]; GSList *mlist, *clist; struct mol_pak *mol; struct core_pak *core; struct shel_pak *shell; g_assert(model != NULL); r = r1+r2; rsq = r*r; r1sq = r1*r1; /* generate enough unit cells to satisfy input radius */ /* NB: round up the image number required */ model->image_limit[0] = (gint) (1 + r / model->pbc[0]); model->image_limit[1] = (gint) (1 + r / model->pbc[0]); model->image_limit[2] = (gint) (1 + r / model->pbc[1]); model->image_limit[3] = (gint) (1 + r / model->pbc[1]); model->image_limit[4] = 0.0; model->image_limit[5] = 1.0; space_make_images(CREATE, model); space_make_supercell(model); /* convert to cartesian block */ coords_make_cartesian(model); model->periodic = 0; model->fractional = FALSE; coords_compute(model); zone_init(model); /* if we cleave by atoms - prevent bonding anything, so each molecule is an atom */ /* NB: not sure why, but source's bonds are transferred to model */ if (model->surface.ignore_bonding) wipe_bonds(model); else connect_bonds(model); connect_molecules(model); /* offset by desired amount and clip */ /* TODO - if (!cleave) else by atom */ for (mlist=model->moles ; mlist ; mlist=g_slist_next(mlist)) { mol = mlist->data; /* transform the centroid */ ARR3SET(x, mol->centroid); /* FIXME - o is fractional - x is not? */ x[0] -= o[0]; x[1] -= o[1]; d2 = x[0]*x[0] + x[1]*x[1]; if (d2 < rsq) { if (d2 < r1sq) region = 0; else region = 1; for (clist=mol->cores ; clist ; clist=g_slist_next(clist)) { core = clist->data; core->x[0] -= o[0]; core->x[1] -= o[1]; core->region = region; if (core->shell) { shell = core->shell; shell->x[0] -= o[0]; shell->x[1] -= o[1]; shell->region = region; } } } else { for (clist=mol->cores ; clist ; clist=g_slist_next(clist)) { core = clist->data; delete_core(core); } } } } /******************************/ /* displace the supplied core */ /******************************/ gdouble defect_anisotropic_1(gdouble *x, gdouble r44, gdouble r55, gdouble *b) { gdouble angle; angle = angle_x_compute(x[0], x[1]); /* -ve ??? */ angle *= sqrt(fabs(r44)/fabs(r55)); return(0.5 * VEC3MAG(b) * angle / G_PI); } /************************************************/ /* do coordinate offsets for a scew dislocation */ /************************************************/ void defect_screw_dislocate(gdouble *s, gdouble *v, struct model_pak *model) { gdouble dz, r44, r55, x[3]; GSList *clist, *mlist; struct mol_pak *mol; struct core_pak *core; struct shel_pak *shell; g_assert(model != NULL); /* r44 = s44 - (s34 s34 / s33) */ r44 = s[21] - ((s[15]*s[15])/s[14]); /* r55 = s55 - (s35 s35 / s33) */ r55 = s[28] - ((s[16]*s[16])/s[14]); printf("\nReduced elastic compliances: S44 = %f, S55 = %f\n", r44, r55); if (r44 == r55) printf("Isotropic case...\n"); if (fabs(r44) < FRACTION_TOLERANCE || fabs(r55) < FRACTION_TOLERANCE) { printf("Bad compliance matrix.\n"); return; } for (mlist=model->moles ; mlist ; mlist=g_slist_next(mlist)) { mol = mlist->data; ARR3SET(x, mol->centroid); dz = defect_anisotropic_1(x, r44, r55, v); for (clist=mol->cores ; clist ; clist=g_slist_next(clist)) { core = clist->data; core->x[2] += dz; if (core->shell) { shell = core->shell; shell->x[2] += dz; } } } } /*********************************************************************/ /* attempt to find an int which will multiply to make a float an int */ /*********************************************************************/ /* TODO - put in numeric */ gint numeric_make_whole(gdouble x) { gint i; gdouble frac, f; frac = fabs(x - nearest_int(x)); if (frac > FRACTION_TOLERANCE) { /* crude hack - look for common extensions */ for (i=2 ; i<9 ; i++) { f = 1.0 / (gdouble) i; if (fabs(frac-f) < FRACTION_TOLERANCE) return(i); } return(0); } else return(nearest_int(x)); } /********************/ /* build the defect */ /********************/ #define DEBUG_DEFECT_NEW 1 void defect_new(struct defect_pak *defect, struct model_pak *source) { gint height, gcd, mult1, mult2; gdouble r, len; gdouble o[2], v[3], b[3], m[9], s[36]; gdouble w[3], x[3], x1[3], x2[3], x3[3]; GSList *list; struct model_pak *model; struct plane_pak *plane; struct core_pak *core; struct shel_pak *shell; g_assert(defect != NULL); g_assert(source != NULL); /* check for 2-fold axes */ defect_check_symmetry(source); if (VEC3MAGSQ(defect->orient) < FRACTION_TOLERANCE) { gui_text_show(ERROR, "Please specify a non-zero dislocation vector.\n"); return; } /* setup the defect geometry */ ARR3SET(v, defect->orient); ARR3SET(b, defect->burgers); vecmat(source->latmat, v); vecmat(source->latmat, b); matrix_z_alignment(m, v); vecmat(m, v); vecmat(m, b); #if DEBUG_DEFECT_NEW P3VEC("input dislocation: ", defect->orient); P3VEC("input burgers: ", defect->burgers); P3VEC("transformed dislocation: ", v); P3VEC("transformed burgers: ", b); #endif /* get the transformed lattice vectors, so we know how deep the cell needs to be */ plane = plane_new(defect->orient, source); VEC3SET(x1, plane->lattice[0], plane->lattice[3], plane->lattice[6]); VEC3SET(x2, plane->lattice[1], plane->lattice[4], plane->lattice[7]); VEC3SET(x3, plane->lattice[2], plane->lattice[5], plane->lattice[8]); P3MAT("cell: ", plane->lattice); printf("%f x %f\n", VEC3MAG(x1), VEC3MAG(x2)); mult1 = mult2 = 1; /* check if periodicity along first surface vector needs help */ ARR3SET(x, x3); vector_v_project(x, x1); len = VEC3MAG(x); if (len > FRACTION_TOLERANCE) { printf("non-zero projection of depth onto surface vec 1 = %f\n", len); r = VEC3MAG(x1)/len; mult1 = numeric_make_whole(r); if (!mult1) mult1 = 1; } /* check if periodicity along second surface vector needs help */ ARR3SET(x, x3); vector_v_project(x, x2); len = VEC3MAG(x); if (len > FRACTION_TOLERANCE) { printf("non-zero projection of depth onto surface vec 2 = %f\n", len); r = VEC3MAG(x2)/len; mult2 = numeric_make_whole(r); if (!mult2) mult2 = 1; } /* compute compiance tensor */ if (defect_compliance_get(s, plane, source)) { printf("Failed - terminating.\n"); return; } else { printf("s44 = %f, s55 = %f\n", s[21], s[28]); } gcd = GCD(mult1, mult2); height = mult1 * mult2 / gcd; printf("mult1 = %d, mult2 = %d, gcd = %d\n", mult1, mult2, gcd); printf("height = %d\n", height); /* DEBUG - test that our new depth vector (in z) will hit a lattice point */ ARR3SET(w, x3); VEC3MUL(w, height); vector_v_project(w, x1); printf("lattice point along surface vector 1: %f\n", VEC3MAG(w)/VEC3MAG(x1)); ARR3SET(w, x3); VEC3MUL(w, height); vector_v_project(w, x2); printf("lattice point along surface vector 2: %f\n", VEC3MAG(w)/VEC3MAG(x2)); /* CURRENT - cope with reduced orientation vector (eg 220 = halved 110) */ gcd = GCD(GCD(defect->orient[0], defect->orient[1]), GCD(defect->orient[1], defect->orient[2])); height /= gcd; /* TODO - if threaded - do this in the gui *before* defect_new() is called */ model = model_new(); /* I thought we could use the true cell stuff, but it's too messy */ /* given that the dislocation is based on distance from cylinder center */ source->surface.true_cell = FALSE; ARR3SET(model->surface.miller, defect->orient); model->surface.region[0] = height; model->surface.region[1] = 0; model->surface.shift = 0.0; generate_surface(source, model); /* model is fractional - ie the transformed unit cell */ if (defect->cleave) model->surface.ignore_bonding = TRUE; matrix_lattice_init(model); /* convert fractional origin shift to cartesian */ printf("f origin: %f,%f\n", defect->origin[0], defect->origin[1]); o[0] = plane->lattice[0] * defect->origin[0] + plane->lattice[1] * defect->origin[1]; o[1] = plane->lattice[3] * defect->origin[0] + plane->lattice[4] * defect->origin[1]; printf("c origin: %f,%f\n", o[0], o[1]); defect_make_cylinder(o, defect->region[0], defect->region[1], model); /* coordinate dislocation */ if (via(v, b, 3) < 0.001) { printf("creating SCREW dislocation...\n"); defect_screw_dislocate(s, b, model); } else { printf("TODO - create EDGE dislocation...\n"); } /* CURRENT - rotate so that z (ie defect orientation) points along x */ VEC3SET(&m[0], 0.0, 0.0, 1.0); VEC3SET(&m[3], 0.0, 1.0, 0.0); VEC3SET(&m[6], -1.0, 0.0, 0.0); for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; vecmat(m, core->x); if (core->shell) { shell = core->shell; vecmat(m, shell->x); } } /* display the model - if threaded have to shunt this elsewhere */ sysenv.mal = g_slist_append(sysenv.mal, model); /* all solated cluster for debugging purposes */ if (defect->cluster) { matrix_identity(model->latmat); model->periodic = 0; } else { /* setup the lattice matrix */ matrix_identity(model->latmat); model->periodic = 1; /* get z projected length of depth vector */ VEC3SET(x, 0.0, 0.0, 1.0); vector_v_project(x3, x); model->latmat[0] = height * VEC3MAG(x3); } plane_free(plane); model->fractional = FALSE; model->id = GULP; gulp_data_copy(source, model); model_prep(model); sysenv.active_model = model; tree_model_add(model); tree_select_active(); } gdis-0.90/analysis.c0000644000175000017500000005006011006270731013013 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include "gdis.h" #include "coords.h" #include "model.h" #include "edit.h" #include "file.h" #include "matrix.h" #include "measure.h" #include "parse.h" #include "graph.h" #include "gui_shorts.h" #include "interface.h" #include "analysis.h" #include "numeric.h" #include "count.h" extern struct elem_pak elements[]; extern struct sysenv_pak sysenv; #define MAX_PIE_SHELL 0 /* determine number of vector repeats to satisfy a given distance requirement in a given direction */ /* NB: direction should be given in normalize form */ gint calc_rep_3d(gdouble *vec, gdouble *normal, gdouble max) { gdouble len, x[3]; /* project vector and compute length */ ARR3SET(x, vec); ARR3MUL(x, normal); len = VEC3MAG(x); /* orthogonal */ if (len < G_MINDOUBLE) return(0); /* one vector is all we need */ if (len > max) return(1); /* return multiple required (NB: round up for safety) */ return(0.999 + max/len); } /* separation + lattice => compute repetitions */ void test(gint *images, gdouble *latmat, gdouble max) { gint i, j, m; gdouble n[3], v[3]; /* compute minimum lattice images needed to ensure the 3 cartesian directions */ /* will be filled out to a specified minimum distance */ VEC3SET(images, G_MAXINT, G_MAXINT, G_MAXINT); for (i=0 ; i<3 ; i++) { /* normal */ VEC3SET(n, 0.0, 0.0, 0.0); n[i] = 1.0; for (j=0 ; j<3 ; j++) { /* iterate through lattice vectors */ VEC3SET(v, latmat[j], latmat[j+3], latmat[j+6]); /* record minimum non-zero value for each lattice vector */ m = calc_rep_3d(v, n, max); if (m > 0) { if (m < images[j]) images[j] = m; } } } /* for (i=0 ; i<3 ; i++) { printf("[%d] ", min[i]); } printf("\n"); */ } /* fill out bins (NB: +) for 2 points, given periodic boundrary conditions */ void count_pie_3d(gdouble *xsep, gdouble *latmat, gpointer count) { gint i, j, k, images[3]; gdouble r, x[3], xfa[3], xfb[3], x1[3], x2[3], offset[3]; /* relocate so centroid is at the middle of the cell */ ARR3SET(x, xsep); VEC3MUL(x, 0.5); VEC3SET(xfa, 0.5, 0.5, 0.5); ARR3SUB(xfa, x); VEC3SET(xfb, 0.5, 0.5, 0.5); ARR3ADD(xfb, x); /* compute images needed to satsify the count max distance */ test(images, latmat, count_stop(count)); /* FIXME - need to correct the volume */ printf("using extents: [%d][%d][%d]\n", images[0], images[1], images[2]); for (k=-(images[2]-1) ; k G_MINDOUBLE) { count_insert(r, count); } } } } } /****************************/ /* display analysis results */ /****************************/ void analysis_show(struct model_pak *model) { g_assert(model != NULL); /* clear any other special objects displayed */ model->picture_active = NULL; /* display the new plot */ /* tree_model_refresh(model); */ /* TODO - refresh_tree/gui/interface ? */ sysenv.refresh_dialog = TRUE; redraw_canvas(SINGLE); } /**************************/ /* read in all frame data */ /**************************/ #define DEBUG_LOAD_ANALYSIS 1 gint analysis_load(struct analysis_pak *analysis, struct model_pak *model, struct task_pak *task) { gint i, j, k, m, n; GSList *list; struct core_pak *core; struct model_pak temp; FILE *fp; /* checks */ g_assert(analysis != NULL); g_assert(model != NULL); g_assert(task != NULL); m = analysis->num_frames; n = analysis->num_atoms; #if DEBUG_LOAD_ANALYSIS printf("Allocating for %d frames and %d atoms.\n", m, n); #endif analysis->latmat = g_malloc((m+1)*sizeof(struct gd9_pak)); analysis->time = g_malloc((m+1)*sizeof(gdouble)); analysis->ke = g_malloc((m+1)*sizeof(gdouble)); analysis->pe = g_malloc((m+1)*sizeof(gdouble)); analysis->temp = g_malloc((m+1)*sizeof(gdouble)); analysis->position = g_malloc((m+1)*n*sizeof(struct gd3_pak)); analysis->velocity = g_malloc((m+1)*n*sizeof(struct gd3_pak)); /* init temp model */ model_init(&temp); temp.frame_list = g_list_copy(model->frame_list); temp.id = model->id; temp.periodic = model->periodic; temp.fractional = model->fractional; /* init to use external trj frames */ if (model->id == GULP) { temp.gulp.trj_file = g_strdup(model->gulp.trj_file); temp.header_size = model->header_size; temp.frame_size = model->frame_size; temp.file_size = model->file_size; temp.expected_cores = model->expected_cores; temp.expected_shells = model->expected_shells; temp.trj_swap = model->trj_swap; memcpy(temp.latmat, model->latmat, 9*sizeof(gdouble)); memcpy(temp.ilatmat, model->ilatmat, 9*sizeof(gdouble)); temp.construct_pbc = TRUE; } fp = fopen(model->filename, "r"); if (!fp) { printf("Could not open source file."); return(1); } else { #if DEBUG_LOAD_ANALYSIS printf("Reading frames from: %s\n", model->filename); #endif } /* read frames */ k=0; for (i=0 ; ilatmat+i)->m, temp.latmat, 9*sizeof(gdouble)); /* fill out analysis frame with data from file load */ if (!i) analysis->time_start = temp.frame_time; *(analysis->time+i) = temp.frame_time; *(analysis->ke+i) = temp.frame_ke; *(analysis->pe+i) = temp.frame_pe; *(analysis->temp+i) = temp.frame_temp; j = g_slist_length(temp.cores); /* fill out coordinates */ if (j == n) { j=0; for (list=temp.cores ; list ; list=g_slist_next(list)) { core = list->data; ARR3SET((analysis->position+i*n+j)->x, core->x); ARR3SET((analysis->velocity+i*n+j)->x, core->v); j++; } k++; } else printf("WARNING: inconsistent frame %d has %d/%d cores.\n", i, j, n); /* progress */ task->progress += 50.0/analysis->num_frames; } analysis->num_frames = k; analysis->time_stop = temp.frame_time; #if DEBUG_LOAD_ANALYSIS printf("Read in %d complete frames.\n", k); #endif /* NB: we only copied the list from source model */ /* so make sure we don't free the elements */ g_list_free(temp.frame_list); temp.frame_list = NULL; model_free(&temp); return(0); } /***********************/ /* free all frame data */ /***********************/ void analysis_free(struct analysis_pak *analysis) { if (!analysis) return; if (analysis->latmat) g_free(analysis->latmat); if (analysis->time) g_free(analysis->time); if (analysis->ke) g_free(analysis->ke); if (analysis->pe) g_free(analysis->pe); if (analysis->temp) g_free(analysis->temp); if (analysis->position) g_free(analysis->position); if (analysis->velocity) g_free(analysis->velocity); g_free(analysis); } /***********************************/ /* allocate the analysis structure */ /***********************************/ gpointer analysis_new(void) { struct analysis_pak *analysis; analysis = g_malloc(sizeof(struct analysis_pak)); analysis->latmat = NULL; analysis->time = NULL; analysis->ke = NULL; analysis->pe = NULL; analysis->temp = NULL; analysis->position = NULL; analysis->velocity = NULL; return(analysis); } /***********************************/ /* duplicate an analysis structure */ /***********************************/ /* intended to preserve the dialog values at the time a job is requested */ gpointer analysis_dup(gpointer data) { struct analysis_pak *src=data, *dest; g_assert(src != NULL); dest = analysis_new(); dest->start = src->start; dest->stop = src->stop; dest->step = src->step; dest->num_atoms = src->num_atoms; dest->num_frames = src->num_frames; dest->atom1 = g_strdup(src->atom1); dest->atom2 = g_strdup(src->atom2); dest->rdf_normalize = src->rdf_normalize; return(dest); } /**********************/ /* setup the analysis */ /**********************/ #define DEBUG_INIT_ANALYSIS 0 gint analysis_init(struct model_pak *model) { struct analysis_pak *analysis; /* checks */ g_assert(model != NULL); g_assert(model->analysis != NULL); analysis = model->analysis; analysis->num_atoms = g_slist_length(model->cores); analysis->atom1 = NULL; analysis->atom2 = NULL; analysis->num_frames = model->num_frames; /* TODO - should really be renamed eg rdf_start/stop/step */ analysis->start = 0.0; /* make integer - looks nicer */ analysis->stop = (gint) model->rmax; analysis->step = 0.1; analysis->rdf_normalize = TRUE; return(0); } /*******************/ /* RDF calculation */ /*******************/ #define DEBUG_CALC_RDF 0 void analysis_plot_rdf(struct analysis_pak *analysis, struct task_pak *task) { gint i, j, n; gint size; gint *bins; gdouble *cz, slice; gdouble volume, c, r1, r2, xi[3], xj[3]; gdouble *latmat; /* gdouble latmat[9]; */ gpointer graph, count1; gchar *label; struct core_pak *corei, *corej; struct model_pak *model; /* checks */ g_assert(analysis != NULL); g_assert(task != NULL); model = task->locked_model; g_assert(model != NULL); /* load frames? */ if (!analysis->position) { /* time slice - if load_analysis() needed assume it consumes half ie 50.0 */ slice = 50.0; if (analysis_load(analysis, model, task)) return; } else slice = 100.0; count1 = count_new(analysis->start, analysis->stop, analysis->step); #if DEBUG_CALC_RDF printf("%f - %f : %f\n", analysis->start, analysis->stop, analysis->step); printf("%s - %s\n", analysis->atom1, analysis->atom2); #endif /* loop over frames */ volume = 0.0; for (n=0 ; nnum_frames ; n++) { /* memcpy(latmat, (analysis->latmat+n)->m, 9*sizeof(gdouble)); */ latmat = (analysis->latmat+n)->m; volume += calc_volume(latmat); /* loop over unique atom pairs */ /* for (i=0 ; inum_atoms-1 ; i++) */ /* CURRENT - loop over all atoms - even duplicates so that we can record */ /* distance between an atom and it's periodic images (NB: correct for double counting) */ for (i=0 ; inum_atoms ; i++) { corei = g_slist_nth_data(model->cores, i); ARR3SET(xi, (analysis->position+n*analysis->num_atoms+i)->x); for (j=0 ; jnum_atoms ; j++) { corej = g_slist_nth_data(model->cores, j); if (!pair_match(analysis->atom1, analysis->atom2, corei, corej)) continue; /* calculate closest distance */ ARR3SET(xj, (analysis->position+n*analysis->num_atoms+j)->x); ARR3SUB(xj, xi); fractional_min(xj, model->periodic); #define OLD 0 #if OLD vecmat(latmat, xj); r1 = VEC3MAG(xj); count_insert(r1, count1); #else count_pie_3d(xj, latmat, count1); #endif } } /* update progess */ task->progress += slice/analysis->num_frames; } /* convert count integer array into gdouble array */ size = count_size(count1); bins = count_bins(count1); cz = g_malloc(size * sizeof(gdouble)); for (i=size ; i-- ; ) { *(cz+i) = (gdouble) *(bins+i); /* correct for double counting */ *(cz+i) *= 0.5; } count_free(count1); /* normalize against ideal gas with same AVERAGE volume */ if (analysis->rdf_normalize) { volume /= analysis->num_frames; c = 1.333333333*PI*analysis->num_atoms/volume; c *= analysis->num_atoms*analysis->num_frames; r1 = r2 = analysis->start; r2 += analysis->step; for (i=0 ; istep; r2 += analysis->step; } label = g_strdup_printf("RDF_%s_%s", analysis->atom1, analysis->atom2); } else label = g_strdup_printf("Pair_%s_%s", analysis->atom1, analysis->atom2); /* FIXME - alt method? (A&T p54) */ /* ntot = analysis->num_frames * analysis->num_atoms; c = volume / (ntot*ntot); for (i=0 ; istart, analysis->stop, graph); graph_set_yticks(TRUE, 2, graph); g_free(cz); analysis_free(analysis); } /**************************************/ /* plot the evolution of measurements */ /**************************************/ /* CURRENT - only do the 1st, until we figure out if we should */ /* distinguish bonds angles etc ans selectable issues etc */ void analysis_plot_meas(struct analysis_pak *analysis, struct task_pak *task) { gint i, j, n, type, index[4]; gdouble value, *data, x[4][3]; gpointer m, graph; GSList *list, *clist; struct model_pak *model; /* checks */ g_assert(analysis != NULL); g_assert(task != NULL); model = task->locked_model; g_assert(model != NULL); /* load frames? */ if (!analysis->position) if (analysis_load(analysis, model, task)) return; /* CURRENT - only dealing with 1st measurement */ m = g_slist_nth_data(model->measure_list, 0); if (!m) { printf("No measurements to plot.\n"); return; } type = measure_type_get(m); clist = measure_cores_get(m); /* printf("measurement cores: %d\n", g_slist_length(clist)); */ /* record the position of each core */ n=0; for (list=clist ; list ; list=g_slist_next(list)) { if (n<4) { index[n] = g_slist_index(model->cores, list->data); /* printf(" - %p (%d)\n", list->data, index[n]); */ n++; } else break; } /* allocation for graph plot */ data = g_malloc(model->num_frames*sizeof(gdouble)); /* loop over each frame */ for (i=0 ; inum_frames ; i++) { /* printf("frame: %d ", i); */ /* get cartesian coords for constituent atoms */ for (j=0 ; jposition+i*analysis->num_atoms+index[j])->x); vecmat(model->latmat, x[j]); } /* CURRENT - make measurement -> data */ switch (type) { case MEASURE_TORSION: /* FIXME - check this */ value = measure_dihedral(x[0], x[1], x[2], x[3]); break; case MEASURE_ANGLE: value = measure_angle(x[0], x[1], x[2]); break; default: value = measure_distance(x[0], x[1]); } /* printf(" (value = %f)\n", value); */ *(data+i) = value; } /* graph */ graph = graph_new("Measurement", model); graph_add_data(model->num_frames, data, 1, model->num_frames, graph); /* done */ g_free(data); g_slist_free(clist); analysis_free(analysis); } /*********************************************/ /* plot the FFT of the VACF (power spectrum) */ /*********************************************/ void analysis_plot_power(gint m, gdouble *vacf, gdouble step, struct model_pak *model) { gint i, e, n; gdouble r_power, s_power, *x, *y; struct graph_pak *graph; /* checks */ g_assert(vacf != NULL); g_assert(model != NULL); /* get the best n = 2^e >= m */ e = log((gdouble) m) / log(2.0); n = pow(2.0, ++e); /* printf("input size: %d, fft size: %d\n", m, n); */ g_assert(n >= m); x = g_malloc(2*n*sizeof(gdouble)); /* assign data */ r_power = 0.0; for (i=0 ; ilocked_model; g_assert(model != NULL); /* vacf setup */ vacf = g_malloc(analysis->num_frames * sizeof(gdouble)); /* load frames? */ if (!analysis->position) { /* time slice - if load_analysis() needed assume it consumes half ie 50.0 */ slice = 50.0; if (analysis_load(analysis, model, task)) return; } else slice = 100.0; for (n=0 ; nnum_frames ; n++) { #if DEBUG_CALC_VACF printf(" --- frame %d\n", n); #endif vacf[n] = 0.0; for (i=0 ; inum_atoms ; i++) { ARR3SET(v0, (analysis->velocity+i)->x); ARR3SET(vi, (analysis->velocity+n*analysis->num_atoms+i)->x); ARR3MUL(vi, v0); vacf[n] += vi[0]+vi[1]+vi[2]; #if DEBUG_CALC_VACF printf("atom %d, ", i); P3VEC("vi : ", vi); #endif } vacf[n] /= (gdouble) analysis->num_atoms; /* update progess */ task->progress += slice/analysis->num_frames; } step = analysis->time_stop - analysis->time_start; step /= (gdouble) (analysis->num_frames-1); #if DEBUG_CALC_VACF printf("t : [%f - %f](%d x %f)\n", analysis->time_start, analysis->time_stop, analysis->num_frames, step); #endif /* NB: add graph to the model's data structure, but don't update */ /* the model tree as we're still in a thread */ graph = graph_new("VACF", model); graph_add_data(analysis->num_frames, vacf, analysis->time_start, analysis->time_stop, graph); graph_set_yticks(FALSE, 2, graph); /* NEW */ /* TODO - make optional */ analysis_plot_power(analysis->num_frames, vacf, step, model); g_free(vacf); analysis_free(analysis); } /********************/ /* temperature plot */ /********************/ void analysis_plot_temp(struct analysis_pak *analysis, struct task_pak *task) { gpointer graph; struct model_pak *model; /* checks */ g_assert(analysis != NULL); g_assert(task != NULL); model = task->locked_model; g_assert(model != NULL); /* load frames? */ if (!analysis->position) if (analysis_load(analysis, model, task)) return; graph = graph_new("Temp", model); graph_add_data(analysis->num_frames, analysis->temp, analysis->time_start, analysis->time_stop, graph); analysis_free(analysis); } /***********************/ /* kinetic energy plot */ /***********************/ void analysis_plot_ke(struct analysis_pak *analysis, struct task_pak *task) { gpointer graph; struct model_pak *model; /* checks */ g_assert(analysis != NULL); g_assert(task != NULL); model = task->locked_model; g_assert(model != NULL); /* load frames? */ if (!analysis->position) if (analysis_load(analysis, model, task)) return; graph = graph_new("KE", model); graph_add_data(analysis->num_frames, analysis->ke, analysis->time_start, analysis->time_stop, graph); analysis_free(analysis); } /*************************/ /* potential energy plot */ /*************************/ void analysis_plot_pe(struct analysis_pak *analysis, struct task_pak *task) { gpointer graph; struct model_pak *model; /* checks */ g_assert(analysis != NULL); g_assert(task != NULL); model = task->locked_model; g_assert(model != NULL); /* load frames? */ if (!analysis->position) if (analysis_load(analysis, model, task)) return; graph = graph_new("PE", model); graph_add_data(analysis->num_frames, analysis->pe, analysis->time_start, analysis->time_stop, graph); analysis_free(analysis); } gdis-0.90/grisu.wsdl0000644000175000017500000031115611055421153013056 0ustar seansean gdis-0.90/mesch.c0000644000175000017500000000704510510115015012264 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include "mesch_pak.h" /*****************************/ /* matrix creation primitive */ /*****************************/ gpointer mesch_mat_new(gint i, gint j) { return(m_get(i,j)); } /*****************************/ /* vector creation primitive */ /*****************************/ gpointer mesch_vec_new(gint i) { return(v_get(i)); } /********************************/ /* matrix destruction primitive */ /********************************/ void mesch_m_free(gpointer data) { m_free(data); } /**********************/ /* element assignment */ /**********************/ void mesch_me_set(gpointer data, gint i, gint j, gdouble f) { MAT *mat = data; mat->me[i][j] = f; } /********************/ /* element addition */ /********************/ void mesch_me_add(gpointer data, gint i, gint j, gdouble f) { MAT *mat = data; mat->me[i][j] += f; } /**************************/ /* element multiplication */ /**************************/ void mesch_me_mul(gpointer data, gint i, gint j, gdouble f) { MAT *mat = data; mat->me[i][j] *= f; } /****************************/ /* matrix element retrieval */ /****************************/ gdouble mesch_me_get(gpointer data, gint i, gint j) { MAT *mat = data; return(mat->me[i][j]); } /****************************/ /* vector element retrieval */ /****************************/ gdouble mesch_ve_get(gpointer data, gint i) { VEC *vec = data; return(vec->ve[i]); } /****************************/ /* vector element assignment */ /****************************/ void mesch_ve_set(gpointer data, gint i, gdouble value) { VEC *vec = data; vec->ve[i] = value; } /***********************/ /* retrive matrix rows */ /***********************/ gint mesch_rows_get(gpointer data) { MAT *mat = data; return(mat->m); } /***********************/ /* retrive matrix cols */ /***********************/ gint mesch_cols_get(gpointer data) { MAT *mat = data; return(mat->n); } /***********************/ /* retrive vector dim */ /***********************/ gint mesch_dim_get(gpointer data) { VEC *vec = data; return(vec->dim); } /*******************************/ /* initialize a matrix to zero */ /*******************************/ void mesch_m_zero(gpointer data) { gint i, j; MAT *mat = data; for (i=mat->m ; i-- ; ) for (j=mat->n ; j-- ; ) mat->me[i][j] = 0.0; } /*******************************/ /* initialize a vector to zero */ /*******************************/ void mesch_v_zero(gpointer data) { gint i, n; n = mesch_dim_get(data); for (i=n ; i-- ; ) mesch_ve_set(data, i, 0.0); } /************************************************************/ /* interface to eigenvalue calculation for symmetric matrix */ /************************************************************/ void mesch_sev_compute(gpointer m1, gpointer m2, gpointer v) { symmeig(m1, m2, v); } gdis-0.90/job.c0000644000175000017500000001436510626473057011767 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #ifndef _WIN32 #include #include #include #include #include "gdis.h" #include "file.h" #include "host.h" #include "job.h" /* top level data structure */ extern struct sysenv_pak sysenv; /* the essential aim of the job structure is simply to establish a link between input/ouput file pairs (local <-> remote) so that jobs can be tracked/updated. NB: Place each remotely executed job in its own directory ( job1 job2 etc ) and give the user an option to copy ALL files in that directory back to the local machine (by default copy only the output file) This way we get addition data such as e density and anything else copied back if desired ... possible refinements include a list of all files with size and type that user can check/uncheck as transaction transfers ... binary files may be a problem */ struct job_pak { gint id; gint type; gint count; gint status; gchar *local_dir; gchar *local_input; gchar *local_output; gchar *remote_dir; gchar *remote_input; gchar *remote_output; gpointer host; }; /**********************/ /* free job structure */ /**********************/ void job_free(struct job_pak *job) { g_free(job->local_dir); g_free(job->local_input); g_free(job->local_output); g_free(job->remote_dir); g_free(job->remote_input); g_free(job->remote_output); g_free(job); } /******************************/ /* initialize a job structure */ /******************************/ gpointer job_setup(const gchar *name, struct model_pak *model) { static gint count=0; struct job_pak *job; job = g_malloc(sizeof(struct job_pak)); /* use this to give unique job names (within cwd of an ssh session) */ /* since the cwd is date/time based we wont get overwrites */ job->count = count++; job->host = NULL; job->local_dir = NULL; job->local_input = NULL; job->local_output = NULL; job->remote_dir = NULL; job->remote_input = NULL; job->remote_output = NULL; if (g_ascii_strncasecmp("gulp", name, 4) == 0) job->type = JOB_GULP; switch (job->type) { case JOB_GULP: job->local_dir = g_strdup(sysenv.cwd); job->local_input = g_strdup(model->gulp.temp_file); job->local_output = g_strdup(model->gulp.out_file); /* FIXME - filename is not the full path name ... which strictly it should be */ /* however - job->local_input is expected to contain only the filename (without */ /* the path) by the subsequent job_start() call */ write_gulp(job->local_input, model); break; default: printf("Error: unknown job type: %s\n", name); g_free(job); job = NULL; } return(job); } /********************************/ /* begin the execution of a job */ /********************************/ #define DEBUG_JOB_START 1 void job_start(gpointer host, gpointer data) { gchar *tmp; struct job_pak *job = data; /* assign host to job, and initialize */ job->host = host; job->remote_dir = g_strdup(host_cwd(host)); /* build full path remote names */ job->remote_input = g_build_filename(job->remote_dir, job->local_input, NULL); job->remote_output = g_build_filename(job->remote_dir, job->local_output, NULL); /* convert local names to full path names */ tmp = g_build_filename(job->local_dir, job->local_input, NULL); g_free(job->local_input); job->local_input = tmp; tmp = g_build_filename(job->local_dir, job->local_output, NULL); g_free(job->local_output); job->local_output = tmp; #if DEBUG_JOB_START printf("local dir: %s\n", job->local_dir); printf("local inp: %s\n", job->local_input); printf("local out: %s\n", job->local_output); printf("remote dir: %s\n", job->remote_dir); printf("remote inp: %s\n", job->remote_input); printf("remote out: %s\n", job->remote_output); #endif host_file_write(host, job->local_input, job->remote_input); /* TODO - execute ... bg or queued ... on remote host */ } /***************************/ /* create a new job object */ /***************************/ gint job_new(const gchar *name, struct model_pak *model) { gpointer host, service, job; if (!sysenv.host_list) { printf("No active connections.\n"); return(FALSE); } host = sysenv.host_list->data; service = host_service_get(host, name); if (!service) { printf("Unknown service: %s.\n", name); return(FALSE); } if (!host_service_available(service)) { printf("Service: %s not available on active host.\n", name); return(FALSE); } printf("Requesting service: %s on host %s\n", name, host_name(host)); job = job_setup(name, model); /* TODO - put elsewhere (some sort of scheduler decides the host part?) */ job_start(host, job); /* TODO - this'll get placed in job cleanup when jobs are actually run */ job_free(job); return(TRUE); } /********************************/ /* check on the status of a job */ /********************************/ void job_status_get(gpointer data) { struct job_pak *job = data; g_assert(job != NULL); /* TODO - more than one way of doing this ... eg could have qstat for queued jobs */ /* etc ... scanning output is more portable ... but wont determine if a job has crashed */ /* could record the last time the output file had new stuff added ... */ /* get output file */ host_file_read(job->host, job->local_output, job->remote_output); /* scan output */ } /************************************/ /* eg use to kill/stop/restart jobs */ /************************************/ void job_status_set() { } #endif gdis-0.90/error.h0000644000175000017500000000170210445461557012343 0ustar seansean/* Copyright (C) 2000 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ void error_table_clear(void); void error_table_entry(const gchar *); void error_table_print_all(void); void error_table_disable(void); void error_table_enable(void); gdis-0.90/gui_analysis.c0000644000175000017500000002053411006270731013662 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include "gdis.h" #include "coords.h" #include "file.h" #include "graph.h" #include "analysis.h" #include "dialog.h" #include "interface.h" #include "gui_shorts.h" extern struct elem_pak elements[]; extern struct sysenv_pak sysenv; /******************************/ /* export graphs as text data */ /******************************/ void analysis_export(gchar *name) { struct model_pak *model; model = sysenv.active_model; g_assert(model != NULL); dialog_destroy_type(FILE_SELECT); if (model->graph_active) { graph_write(name, model->graph_active); gui_text_show(STANDARD, "Successfully exported graph.\n"); } else gui_text_show(WARNING, "Current model is not a graph.\n"); } /******************************/ /* export graph file selector */ /******************************/ void analysis_export_dialog(void) { /* FIXME - dialog + model are linked */ if (sysenv.active_model) file_dialog("Export graph as text", NULL, FILE_SAVE, (gpointer) analysis_export, MD_ANALYSIS); } /**********************/ /* submit an rdf task */ /**********************/ void exec_analysis_task(GtkWidget *w, gpointer dialog) { const gchar *type; gpointer gui_menu_calc; struct analysis_pak *analysis; struct model_pak *model; /* duplicate the analysis structure at time of request */ g_assert(dialog != NULL); model = dialog_model(dialog); g_assert(model != NULL); analysis = analysis_dup(model->analysis); /* get the task type requested from the dialog */ gui_menu_calc = dialog_child_get(dialog, "gui_menu_calc"); type = gui_pulldown_text(gui_menu_calc); if (g_ascii_strncasecmp(type, "RDF", 3) == 0) { analysis->rdf_normalize = TRUE; task_new("RDF", &analysis_plot_rdf, analysis, &analysis_show, model, model); return; } if (g_ascii_strncasecmp(type, "Pair", 4) == 0) { analysis->rdf_normalize = FALSE; task_new("Pair", &analysis_plot_rdf, analysis, &analysis_show, model, model); return; } if (g_ascii_strncasecmp(type, "VACF", 4) == 0) { task_new("VACF", &analysis_plot_vacf, analysis, &analysis_show, model, model); return; } if (g_ascii_strncasecmp(type, "Temp", 4) == 0) { task_new("Temp", &analysis_plot_temp, analysis, &analysis_show, model, model); return; } if (g_ascii_strncasecmp(type, "Pot", 3) == 0) { task_new("Energy", &analysis_plot_pe, analysis, &analysis_show, model, model); return; } if (g_ascii_strncasecmp(type, "Kin", 3) == 0) { task_new("Energy", &analysis_plot_ke, analysis, &analysis_show, model, model); return; } if (g_ascii_strncasecmp(type, "Meas", 4) == 0) { task_new("Measure", &analysis_plot_meas, analysis, &analysis_show, model, model); return; } } /**********************/ /* atom entry changed */ /**********************/ void md_atom_changed(GtkWidget *w, gchar **atom) { g_assert(w != NULL); /* NB: we pass a pointer to the character pointer */ if (*atom) g_free(*atom); *atom = g_strdup(gtk_entry_get_text(GTK_ENTRY(w))); } /*******************************/ /* multi-frame analysis dialog */ /*******************************/ void gui_analysis_dialog(void) { gpointer dialog; GtkWidget *window, *combo, *label; GtkWidget *frame, *main_hbox, *main_vbox, *hbox, *vbox; GtkWidget *gui_menu_calc, *gui_vbox_rdf; GSList *list, *item; GList *match_list=NULL, *calc_list=NULL; struct model_pak *model; struct analysis_pak *analysis; /* checks and setup */ model = sysenv.active_model; if (!model) return; if (!model->animation) return; if (analysis_init(model)) return; analysis = model->analysis; /* create new dialog */ dialog = dialog_request(MD_ANALYSIS, "MD analysis", NULL, NULL, model); if (!dialog) return; window = dialog_window(dialog); /* --- main box */ main_hbox = gtk_hbox_new(TRUE, 0); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), main_hbox, TRUE, TRUE, 0); /* --- left pane */ main_vbox = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(main_hbox), main_vbox, TRUE, TRUE, 0); /* --- analysis dialogs are specific to the active model when initiated */ frame = gtk_frame_new("Model"); gtk_box_pack_start(GTK_BOX(main_vbox), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); hbox = gtk_hbox_new(TRUE, PANEL_SPACING); gtk_container_add(GTK_CONTAINER(frame), hbox); label = gtk_label_new(model->basename); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); /* --- calculation menu */ frame = gtk_frame_new("Calculate"); gtk_box_pack_start(GTK_BOX(main_vbox), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, PANEL_SPACING); gtk_container_add(GTK_CONTAINER(frame), vbox); /* --- menu items */ if (g_file_test(model->gulp.trj_file, G_FILE_TEST_EXISTS)) { calc_list = g_list_prepend(calc_list, "Potential E"); calc_list = g_list_prepend(calc_list, "Kinetic E"); calc_list = g_list_prepend(calc_list, "Temperature"); calc_list = g_list_prepend(calc_list, "VACF"); } else { calc_list = g_list_prepend(calc_list, "Measurements"); } calc_list = g_list_prepend(calc_list, "RDF"); calc_list = g_list_prepend(calc_list, "Pair count"); gui_menu_calc = gui_pulldown_new("Perform ", calc_list, FALSE, vbox); dialog_child_set(dialog, "gui_menu_calc", gui_menu_calc); /* --- right pane */ gui_vbox_rdf = gtk_vbox_new(FALSE, 0); dialog_child_set(dialog, "gui_vbox_rdf", gui_vbox_rdf); gtk_box_pack_start(GTK_BOX(main_hbox), gui_vbox_rdf, TRUE, TRUE, 0); /* --- interval setup */ frame = gtk_frame_new("Analysis Interval"); gtk_box_pack_start(GTK_BOX(gui_vbox_rdf), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, PANEL_SPACING); gtk_container_add(GTK_CONTAINER(frame), vbox); /* TODO - some warning about the RDF being valid only for < L/2? */ /* see Allan & Tildesley pg 199 */ gui_direct_spin("Start", &analysis->start, 0.0, 10.0*model->rmax, 0.1, NULL, NULL, vbox); gui_direct_spin("Stop", &analysis->stop, 0.1, 10.0*model->rmax, 0.1, NULL, NULL, vbox); gui_direct_spin("Step", &analysis->step, 0.1, model->rmax, 0.1, NULL, NULL, vbox); /* --- RDF atom setup */ frame = gtk_frame_new("Analysis Atoms"); gtk_box_pack_start(GTK_BOX(gui_vbox_rdf), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, PANEL_SPACING); gtk_container_add(GTK_CONTAINER(frame), vbox); /* setup unique element label list */ list = find_unique(LABEL, model); match_list = g_list_append(match_list, "Any"); for (item=list ; item ; item=g_slist_next(item)) { match_list = g_list_append(match_list, item->data); } g_slist_free(list); /* match 1 */ combo = gtk_combo_new(); gtk_combo_set_popdown_strings(GTK_COMBO(combo), match_list); gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(combo)->entry), TRUE); gtk_box_pack_start(GTK_BOX(vbox), combo, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT(GTK_COMBO(combo)->entry), "changed", GTK_SIGNAL_FUNC(md_atom_changed), (gpointer) &analysis->atom1); /* match 2 */ combo = gtk_combo_new(); gtk_combo_set_popdown_strings(GTK_COMBO(combo), match_list); gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(combo)->entry), TRUE); gtk_box_pack_start(GTK_BOX(vbox), combo, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT(GTK_COMBO(combo)->entry), "changed", GTK_SIGNAL_FUNC(md_atom_changed), (gpointer) &analysis->atom2); /* terminating buttons */ gui_stock_button(GTK_STOCK_EXECUTE, exec_analysis_task, dialog, GTK_DIALOG(window)->action_area); gui_stock_button(GTK_STOCK_CLOSE, dialog_destroy, dialog, GTK_DIALOG(window)->action_area); gtk_widget_show_all(window); } gdis-0.90/plus.xpm0000644000175000017500000000063710323073304012540 0ustar seansean/* XPM */ static char * plus_xpm[] = { "16 16 3 1", " c None", ". c #6FBA7D", "+ c #247A3A", " ", " ", " .... ", " .++. ", " .++. ", " .++. ", " .....++..... ", " .++++++++++. ", " .++++++++++. ", " .....++..... ", " .++. ", " .++. ", " .++. ", " .... ", " ", " "}; gdis-0.90/file_gulp.c0000644000175000017500000033320111035034370013136 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include "gdis.h" #include "coords.h" #include "edit.h" #include "error.h" #include "file.h" #include "gulp_keyword.h" #include "parse.h" #include "scan.h" #include "space.h" #include "matrix.h" #include "model.h" #include "numeric.h" #include "interface.h" #include "ff.h" #define DEBUG_MORE 0 #define MAX_KEYS 15 /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /*********************************/ /* GULP structure initialization */ /*********************************/ void gulp_init(gpointer data) { struct gulp_pak *gulp = data; g_assert(gulp != NULL); /* gulp template init */ gulp->maxcyc=0; gulp->energy = 0.0; gulp->no_esurf=FALSE; gulp->esurf[0]=0.0; gulp->esurf[1]=0.0; gulp->esurf_units=g_strdup(" "); gulp->no_eatt=FALSE; gulp->eatt[0]=0.0; gulp->eatt[1]=0.0; gulp->eatt_units=g_strdup(" "); gulp->sbulkenergy=0.0; gulp->sdipole=999999999.0; gulp->gnorm = -1.0; gulp->qsum = 0.0; gulp->no_exec = FALSE; gulp->run = E_SINGLE; gulp->rigid = FALSE; gulp->rigid_move = g_strdup("z"); gulp->qeq = FALSE; gulp->free = FALSE; gulp->zsisa = FALSE; gulp->compare = FALSE; gulp->prop = FALSE; gulp->nosym = FALSE; gulp->fix = FALSE; gulp->noautobond = FALSE; gulp->method = CONP; /* dynamics info */ /* gulp->frame_time = 0.0; gulp->frame_ke = 0.0; gulp->frame_pe = 0.0; gulp->frame_temp = 0.0; */ /* NEW - original frame data (stored since reading in trajectory overwrites) */ gulp->orig_fractional = FALSE; gulp->orig_construct_pbc = FALSE; gulp->orig_cores = NULL; gulp->orig_shells = NULL; gulp->potentials = NULL; gulp->elements = NULL; gulp->species = NULL; /* potgrid replacement */ gulp->epot_vecs = NULL; gulp->epot_vals = NULL; gulp->epot_min = 999999999.9; gulp->epot_max = -999999999.9; gulp->optimiser = -1; gulp->optimiser2 = SWITCH_OFF; gulp->switch_type = -1; gulp->switch_value = 0.1; gulp->unit_hessian = FALSE; gulp->ensemble = -1; gulp->pressure = NULL; gulp->temperature = NULL; VEC3SET(gulp->super, 1, 1, 1); gulp->coulomb = NOBUILD; gulp->libfile = NULL; gulp->output_extra_keywords = TRUE; gulp->output_extra = FALSE; gulp->extra_keywords = NULL; gulp->extra = NULL; gulp->timestep = NULL; gulp->equilibration = NULL; gulp->production = NULL; gulp->sample = NULL; gulp->write = NULL; /* io filenames */ gulp->temp_file = NULL; gulp->dump_file = NULL; gulp->out_file = NULL; gulp->trj_file = NULL; gulp->mov_file = NULL; /* io options */ gulp->print_charge = TRUE; gulp->solvation_model = GULP_SOLVATION_NONE; gulp->cosmo_sas = TRUE; gulp->cosmo_shape = 0; gulp->cosmo_shape_index[0] = 5; gulp->cosmo_shape_index[1] = 0; gulp->cosmo_points = 974; gulp->cosmo_segments = 110; gulp->cosmo_smoothing = 0.0; gulp->cosmo_solvent_epsilon = 1.0; gulp->cosmo_solvent_radius = 1.0; gulp->cosmo_solvent_delta = 0.1; gulp->cosmo_solvent_rmax = 10.0; } /***********************************************************/ /* use number of points and shape to compute shape indices */ /***********************************************************/ #define COSMO_SHAPE_INDEX_MAX 10 gint gulp_shape_indices_compute(struct gulp_pak *gulp) { gint i, j, n; gdouble a, b, c; g_assert(gulp != NULL); switch (gulp->cosmo_shape) { case 0: c = 4.0; break; default: c = 10.0; break; } a = gulp->cosmo_points; a = log((a - 2.0) / c) / log(3.0); b = log(4.0) / log(3.0); /* simple for loop search for suitable index values */ for (j=0 ; jcosmo_points); */ if (!(n - gulp->cosmo_points)) { gulp->cosmo_shape_index[0] = i; gulp->cosmo_shape_index[1] = j; return(TRUE); } } return(FALSE); } /*****************************/ /* core file print primitive */ /*****************************/ void fprint_core(FILE *fp, struct core_pak *core, struct model_pak *model) { gint i; gdouble vec[3]; /* get cartesian coords */ ARR3SET(vec, core->x); vecmat(model->latmat, vec); /* set fractional part */ for (i=0 ; iperiodic ; i++) if (model->fractional) vec[i] = core->x[i]; /* only print specific atom charges if we read them in */ /* in that fashion (ie lookup_charge is false) */ if (core->breathe) fprintf(fp,"%-4s bcore %11.6f %11.6f %11.6f", core->atom_label, vec[0], vec[1], vec[2]); else fprintf(fp,"%-4s core %11.6f %11.6f %11.6f", core->atom_label, vec[0], vec[1], vec[2]); /* NB: 7 dp for charges - 8 occasionally introduced small errors (cf GULP) */ if (model->gulp.print_charge) if (!core->lookup_charge) fprintf(fp," %11.7lf", core->charge); /* 7dp for occupancy - to cover cases like 1/3 */ if (core->has_sof) fprintf(fp," %9.7f", core->sof); if (core->radius != 0.0) fprintf(fp," %7.5f", core->radius); if (core->flags) fprintf(fp," %s", core->flags); if (model->periodic == 2) if (core->growth) fprintf(fp, " %%"); if (core->translate) fprintf(fp, " T"); fprintf(fp,"\n"); } /******************************/ /* shell file print primitive */ /******************************/ void fprint_shell(FILE *fp, struct shel_pak *shell, struct model_pak *model) { gint i; gdouble vec[3]; /* get cartesian coordinates */ ARR3SET(vec, shell->x); vecmat(model->latmat, vec); /* set fractional part */ for (i=0 ; iperiodic ; i++) if (model->fractional) vec[i] = shell->x[i]; if (shell->breathe) fprintf(fp,"%-4s bshel %11.6f %11.6f %11.6f", shell->shell_label, vec[0], vec[1], vec[2]); else fprintf(fp,"%-4s shel %11.6f %11.6f %11.6f", shell->shell_label, vec[0], vec[1], vec[2]); /* only print specific atom charges if we read them in */ if (model->gulp.print_charge) if (!shell->lookup_charge) fprintf(fp," %11.7lf", shell->charge); /* 7dp for occupancy - to cover cases like 1/3 */ if (shell->has_sof) fprintf(fp," %9.7f", shell->sof); if (shell->radius != 0.0) fprintf(fp," %7.5f", shell->radius); if (shell->flags) fprintf(fp," %s", shell->flags); if (model->periodic == 2) if ((shell->core)->growth) fprintf(fp, " %%"); if (shell->translate) fprintf(fp, " T"); fprintf(fp,"\n"); } /*********************************************/ /* enforce valid input/output GULP filenames */ /*********************************************/ void gulp_files_init(struct model_pak *model) { gchar *basename; g_assert(model != NULL); g_assert(model->basename != NULL); /* remove spaces from basename */ basename = g_strdup(model->basename); parse_space_replace(basename, '_'); /* must have input and ouptut filenames */ if (!model->gulp.temp_file) { model->gulp.temp_file = g_strdup_printf("%s.gin", model->basename); parse_space_replace(model->gulp.temp_file, '_'); } if (!model->gulp.out_file) { model->gulp.out_file = g_strdup_printf("%s.got", model->basename); parse_space_replace(model->gulp.out_file, '_'); } /* default dump file - gulp opti ASSUMES a dump file - see proc_gulp_task() */ if (!model->gulp.dump_file) { model->gulp.dump_file = g_strdup_printf("%s.res", model->basename); parse_space_replace(model->gulp.dump_file, '_'); } } /*********************************/ /* cleanup for GULP file control */ /*********************************/ void gulp_files_free(struct model_pak *model) { g_assert(model != NULL); g_free(model->gulp.temp_file); g_free(model->gulp.dump_file); g_free(model->gulp.out_file); } /**********************************/ /* free memory used for gulp data */ /**********************************/ #define DEBUG_FREE_GULP_DATA 0 void gulp_data_free(struct model_pak *model) { g_assert(model != NULL); /* NEW - GULP files with associated trajectory only */ if (model->gulp.orig_cores) free_slist(model->gulp.orig_cores); if (model->gulp.orig_shells) free_slist(model->gulp.orig_shells); g_free(model->gulp.potentials); g_free(model->gulp.elements); g_free(model->gulp.species); g_free(model->gulp.kpoints); model->gulp.potentials=NULL; model->gulp.elements=NULL; model->gulp.species=NULL; model->gulp.kpoints=NULL; if (model->gulp.epot_vecs) free_slist(model->gulp.epot_vecs); if (model->gulp.epot_vals) free_slist(model->gulp.epot_vals); model->gulp.epot_vecs=NULL; model->gulp.epot_vals=NULL; g_free(model->gulp.libfile); g_free(model->gulp.extra); g_free(model->gulp.eatt_units); g_free(model->gulp.esurf_units); g_free(model->gulp.pressure); g_free(model->gulp.temperature); model->gulp.libfile=NULL; model->gulp.extra=NULL; model->gulp.eatt_units=NULL; model->gulp.esurf_units=NULL; model->gulp.pressure=NULL; model->gulp.temperature=NULL; } /***********************************************/ /* copy unrecognized gulp keywords and options */ /***********************************************/ void gulp_extra_copy(struct model_pak *src, struct model_pak *dest) { if (src->gulp.extra) { g_free(dest->gulp.extra); dest->gulp.extra = g_strdup(src->gulp.extra); } if (src->gulp.extra_keywords) { g_free(dest->gulp.extra_keywords); dest->gulp.extra_keywords = g_strdup(src->gulp.extra_keywords); } } /**********************/ /* transfer gulp data */ /**********************/ void gulp_data_copy(struct model_pak *src, struct model_pak *dest) { /* free any old data in the destination model */ gulp_data_free(dest); /* copy keywords */ dest->gulp.no_exec = src->gulp.no_exec; dest->gulp.run = src->gulp.run; dest->gulp.method = src->gulp.method; dest->gulp.optimiser = src->gulp.optimiser; dest->gulp.optimiser2 = src->gulp.optimiser2; dest->gulp.switch_type = src->gulp.switch_type; dest->gulp.switch_value = src->gulp.switch_value; dest->gulp.free = src->gulp.free; dest->gulp.qeq = src->gulp.qeq; dest->gulp.zsisa = src->gulp.zsisa; dest->gulp.compare = src->gulp.compare; dest->gulp.nosym = src->gulp.nosym; dest->gulp.fix = src->gulp.fix; dest->gulp.cycles = src->gulp.cycles; dest->gulp.ensemble = src->gulp.ensemble; dest->gulp.coulomb = src->gulp.coulomb; dest->gulp.maxcyc = src->gulp.maxcyc; /* FIXME AR change - copy over cosmo stuff - may cause problems with surfaces (but thats what I want) */ /* Note to SEAN would be a lot easier if were a separate struct as I could then replace with a single memcopy */ dest->gulp.solvation_model = src->gulp.solvation_model; dest->gulp.cosmo_sas = src->gulp.cosmo_sas; dest->gulp.cosmo_shape = src->gulp.cosmo_shape; dest->gulp.cosmo_shape_index[0] = src->gulp.cosmo_shape_index[0]; dest->gulp.cosmo_shape_index[1] = src->gulp.cosmo_shape_index[1]; dest->gulp.cosmo_points = src->gulp.cosmo_points; dest->gulp.cosmo_segments = src->gulp.cosmo_segments; dest->gulp.cosmo_smoothing = src->gulp.cosmo_smoothing; dest->gulp.cosmo_solvent_epsilon = src->gulp.cosmo_solvent_epsilon; dest->gulp.cosmo_solvent_radius = src->gulp.cosmo_solvent_radius; dest->gulp.cosmo_solvent_delta = src->gulp.cosmo_solvent_delta; dest->gulp.cosmo_solvent_rmax = src->gulp.cosmo_solvent_rmax; /* FIXME - may cause problems when creating surfaces from unit cells */ dest->gulp.output_extra_keywords = src->gulp.output_extra_keywords; dest->gulp.output_extra = src->gulp.output_extra; gulp_extra_copy(src, dest); /* copy surface related data */ if (dest->periodic == 2) dest->gulp.sbulkenergy = src->gulp.sbulkenergy; if (dest->periodic == 2 && src->periodic == 2) dest->surface.dspacing = src->surface.dspacing; /* duplicate gulp character data */ dest->gulp.libfile = g_strdup(src->gulp.libfile); dest->gulp.potentials = g_strdup(src->gulp.potentials); dest->gulp.elements = g_strdup(src->gulp.elements); dest->gulp.species = g_strdup(src->gulp.species); dest->gulp.pressure = g_strdup(src->gulp.pressure); dest->gulp.temperature = g_strdup(src->gulp.temperature); } /**********************************/ /* debugging - dump a phonon mode */ /**********************************/ /* NB: modes are from 1 - num_phonons */ void dump_phonon(gint atom, gint mode, struct model_pak *model) { gchar *freq; gdouble v[3]; GSList *xlist, *ylist, *zlist; struct core_pak *core; freq = g_slist_nth_data(model->phonons, mode-1); core = g_slist_nth_data(model->cores, atom-1); xlist = core->vibx_list; ylist = core->viby_list; zlist = core->vibz_list; v[0] = *((gdouble *) g_slist_nth_data(xlist, mode-1)); v[1] = *((gdouble *) g_slist_nth_data(ylist, mode-1)); v[2] = *((gdouble *) g_slist_nth_data(zlist, mode-1)); printf("[%s] : ", freq); printf("[%s]", core->atom_label); P3VEC(" : ", v); } /************************************************/ /* debugging - dump the vibrational frequencies */ /************************************************/ void dump_phonons(struct model_pak *model) { GSList *list; for (list=model->phonons ; list ; list=g_slist_next(list)) { printf("[%s]\n", (gchar *) list->data); } } /**********************************/ /* print appropriate region label */ /**********************************/ void write_region_header(FILE *fp, gint region, struct model_pak *model) { /* check periodicity */ switch (model->periodic) { case 1: if (model->fractional) fprintf(fp,"pfractional region %d", region+1); else fprintf(fp,"cartesian region %d", region+1); break; case 2: if (model->fractional) fprintf(fp,"sfractional region %d", region+1); else fprintf(fp,"cartesian region %d", region+1); break; case 3: if (model->fractional) fprintf(fp,"fractional"); else fprintf(fp,"cartesian"); break; default: fprintf(fp,"cartesian"); } /* NB: rigid xyz allows all translation as a rigid body */ /* rigid z allows vertical movement only -> mandatory for grid based dock */ if (model->gulp.rigid && region == 2) { fprintf(fp," rigid "); if (model->gulp.rigid_move) fprintf(fp,"%s ", model->gulp.rigid_move); } fprintf(fp,"\n"); } /*********************/ /* write a GULP file */ /*********************/ #define DEBUG_WRITE_GULP 0 gint write_gulp(gchar *filename, struct model_pak *data) { gint i, j, libflag, flag, region; gdouble x[3]; GString *line; GSList *list; struct core_pak *core, *core1, *core2; struct shel_pak *shell; struct bond_pak *bond; struct vec_pak *vec; FILE *fp; g_return_val_if_fail(data != NULL, 1); /* is this really necessary??? */ unlink(filename); /* is a valid potential library specified? */ libflag = 0; if (data->gulp.libfile) { if (strlen(data->gulp.libfile)) { /* test for library existance */ if (!access(data->gulp.libfile, R_OK)) libflag++; else printf("Warning: library %s not found.\n", data->gulp.libfile); } } /* off we go */ fp = fopen(filename, "wt"); if (!fp) { printf("Failed to open %s.\n", filename); return(2); } /* run type */ line = g_string_new(NULL); switch(data->gulp.run) { case E_SINGLE: g_string_assign(line,"single"); break; case E_OPTIMIZE: g_string_assign(line,"opti"); break; case MD: g_string_assign(line,"md"); break; /* no run -> single pt (valid default?) */ default: g_string_assign(line,"single"); break; } switch(data->gulp.method) { case CONP: g_string_append(line," conp"); break; case CONV: g_string_append(line," conv"); break; default: break; } switch(data->gulp.optimiser) { case BFGS_OPT: g_string_append(line," bfgs"); break; case CONJ_OPT: g_string_append(line," conjugate"); break; case RFO_OPT: g_string_append(line," rfo"); break; } if (data->gulp.unit_hessian) g_string_append(line," unit"); switch(data->gulp.coulomb) { case MOLE: g_string_append(line," mole"); break; case MOLMEC: g_string_append(line," molmec"); break; case MOLQ: g_string_append(line," molq"); break; default: break; } /* cosmo calc */ /* TODO - change variable name to solvation model */ switch (data->gulp.solvation_model) { case GULP_SOLVATION_COSMIC: g_string_append(line," cosmic"); break; case GULP_SOLVATION_COSMO: g_string_append(line," cosmo"); break; } /* phonon calc */ if (data->gulp.phonon) { g_string_append(line," phonon"); if (data->gulp.eigen) g_string_append(line," eigen"); } /* NEW - this makes it easy to use GULP to compute properties */ if (data->gulp.prop) g_string_append(line," eigen"); /* additional keywords */ if (data->gulp.qeq) g_string_append(line," qeq"); if (data->gulp.free) g_string_append(line," free"); if (data->gulp.zsisa) g_string_append(line," zsisa"); if (data->gulp.compare) g_string_append(line," comp"); if (data->gulp.fix) g_string_append(line," fix"); if (data->gulp.noautobond) g_string_append(line," noautobond"); /* if nosym specified, force output of non-prim cell for consistency */ /* FIXME - this will generate 2 x full if full is already specified, */ /* not a problem currently since gulp doesnt complain about duplication */ if (data->gulp.nosym) g_string_append(line," nosym full"); /* electrostatic potential calcs */ if (g_slist_length(data->gulp.epot_vecs)) g_string_append(line," epot"); /* print out the keywords line */ if (data->gulp.output_extra_keywords && data->gulp.extra_keywords) fprintf(fp,"%s %s\n\n", line->str, data->gulp.extra_keywords); else fprintf(fp,"%s\n\n",line->str); fprintf(fp, "# "); gdis_blurb(fp); fprintf(fp, "#\n\n"); if (data->periodic == 2) { /* NB: this surface data is only meaningful if generate from within GDIS */ if (VEC3MAGSQ(data->surface.depth_vec) > FRACTION_TOLERANCE) { fprintf(fp, "# miller: %d %d %d\n", (gint) data->surface.miller[0], (gint) data->surface.miller[1], (gint) data->surface.miller[2]); fprintf(fp, "# shift: %lf\n", data->surface.shift); fprintf(fp, "# region sizes: %d %d\n\n", (gint) data->surface.region[0], (gint) data->surface.region[1]); } } /* optional data */ if (data->gulp.maxcyc > 0) fprintf(fp,"maxcyc %d\n\n", (gint) data->gulp.maxcyc); if (data->gulp.optimiser2 != SWITCH_OFF) { fprintf(fp,"switch "); switch(data->gulp.optimiser2) { case CONJ_OPT: fprintf(fp,"conj "); break; case RFO_OPT: fprintf(fp,"rfo "); break; case BFGS_OPT: default: fprintf(fp,"bfgs "); break; } switch(data->gulp.switch_type) { case CYCLE: fprintf(fp,"cycle %d\n\n", (gint) data->gulp.switch_value); break; case GNORM: default: fprintf(fp,"gnorm %lf\n\n", data->gulp.switch_value); break; } } /* only write if we have a valid supplied library */ if (libflag) fprintf(fp,"library %s\n\n", data->gulp.libfile); fprintf(fp,"name %s\n\n", data->basename); if (data->gulp.dump_file) if (strlen(data->gulp.dump_file)) fprintf(fp,"\ndump %s\n\n", data->gulp.dump_file); if (data->gulp.temperature) if (strlen(data->gulp.temperature)) fprintf(fp,"temperature %s\n\n", data->gulp.temperature); if (data->gulp.pressure) if (strlen(data->gulp.pressure)) fprintf(fp,"pressure %s\n\n", data->gulp.pressure); /* dynamics stuff */ if (data->gulp.run == MD) { switch (data->gulp.ensemble) { case NVE: fprintf(fp,"ensemble nve\n\n"); break; case NVT: fprintf(fp,"ensemble nvt\n\n"); break; case NPT: fprintf(fp,"ensemble npt\n\n"); break; } fprintf(fp, "timestep %s\n", data->gulp.timestep); fprintf(fp, "equilibration %s\n", data->gulp.equilibration); fprintf(fp, "production %s\n", data->gulp.production); fprintf(fp, "sample %s\n", data->gulp.sample); fprintf(fp, "write %s\n", data->gulp.write); fprintf(fp, "\n"); if (data->gulp.trj_file) fprintf(fp, "output trajectory %s\n", data->gulp.trj_file); } if (data->gulp.mov_file) { fprintf(fp, "output movie arc %s\n", data->gulp.mov_file); if (data->gulp.run == MD) fprintf(fp, "mdarchive %s\n", data->gulp.mov_file); } /* NEW - cosmo stuff */ if (data->gulp.solvation_model != GULP_SOLVATION_NONE) { switch (data->gulp.cosmo_shape) { case 0: fprintf(fp, "cosmoshape octahedron\n"); break; default: fprintf(fp, "cosmoshape dodecahedron\n"); } fprintf(fp, "pointsperatom %d\n", data->gulp.cosmo_points); fprintf(fp, "segmentsperatom %d\n", data->gulp.cosmo_segments); fprintf(fp, "solventepsilon %f\n", data->gulp.cosmo_solvent_epsilon); fprintf(fp, "solventradius %f %f\n", data->gulp.cosmo_solvent_radius, data->gulp.cosmo_solvent_delta); fprintf(fp, "solventrmax %f\n", data->gulp.cosmo_solvent_rmax); fprintf(fp, "rangeforsmooth %f\n", data->gulp.cosmo_smoothing); fprintf(fp, "\n"); if (data->gulp.cosmo_sas) fprintf(fp, "output sas %s.sas\n", data->basename); } #if DEBUG_WRITE_GULP printf(" periodic: %d\n", data->periodic); printf("fractional: %d\n", data->fractional); #endif switch(data->periodic) { case 3: if (data->construct_pbc) { /* NB: gulp matrices are transposed wrt gdis */ fprintf(fp,"vectors\n"); fprintf(fp,"%15.10f %15.10f %15.10f\n", data->latmat[0], data->latmat[3], data->latmat[6]); fprintf(fp,"%15.10f %15.10f %15.10f\n", data->latmat[1], data->latmat[4], data->latmat[7]); fprintf(fp,"%15.10f %15.10f %15.10f\n", data->latmat[2], data->latmat[5], data->latmat[8]); } else { fprintf(fp,"cell\n"); fprintf(fp,"%lf %lf %lf %lf %lf %lf\n",data->pbc[0],data->pbc[1],data->pbc[2], data->pbc[3]*180/PI, data->pbc[4]*180/PI, data->pbc[5]*180/PI); } break; case 2: if (data->construct_pbc) { fprintf(fp,"svectors\n"); fprintf(fp,"%lf %lf\n%lf %lf\n",data->latmat[0], data->latmat[3], data->latmat[1], data->latmat[4]); } else { fprintf(fp,"scell\n"); fprintf(fp,"%lf %lf %lf\n",data->pbc[0], data->pbc[1], 180.0*data->pbc[5]/PI); } break; case 1: if (data->construct_pbc) { fprintf(fp,"pvector\n"); fprintf(fp,"%lf\n",data->latmat[0]); } else { fprintf(fp,"pcell\n"); fprintf(fp,"%lf\n",data->pbc[0]); } break; } /* coord section write */ flag = 0; /* CURRENT - no more than 3 regions allowed */ for (region=0 ; region<3 ; region++) { /* cores */ for (list=data->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->status & DELETED) continue; if (!core->primary) continue; if (core->region != region) continue; /* write suitable header if it hasn't yet been written */ if (!flag) { write_region_header(fp, region, data); flag++; } fprint_core(fp, core, data); } /* shells */ for (list=data->shels ; list ; list=g_slist_next(list)) { shell = list->data; if (shell->status & DELETED) continue; if (!shell->primary) continue; if (shell->region != region) continue; fprint_shell(fp, shell, data); } flag = 0; } /* post coord data */ switch(data->periodic) { case 2: /* write dhkl for Eatt calcs */ if (data->surface.dspacing > 0.1 && !data->gulp.no_eatt) fprintf(fp, "\ndhkl %lf\n",data->surface.dspacing); /* write surface bulk energy for Esurf calcs */ if (!data->gulp.no_esurf) fprintf(fp, "\nsbulkenergy %lf\n",data->gulp.sbulkenergy); break; /* SG info */ case 3: if (data->sginfo.spacename) { fprintf(fp,"\nspace\n%s\n",g_strstrip(data->sginfo.spacename)); if (data->sginfo.cellchoice) fprintf(fp,"\norigin %d\n",data->sginfo.cellchoice); } else { fprintf(fp,"\nspace\nP 1\n"); } break; } fprintf(fp,"\n"); /* NEW - output connectivity */ if (data->gulp.noautobond) { for (list=data->bonds ; list ; list=g_slist_next(list)) { bond = list->data; core1 = bond->atom1; core2 = bond->atom2; i = 1+g_slist_index(data->cores, core1); j = 1+g_slist_index(data->cores, core2); /* connect i j ix iy iz */ fprintf(fp, "connect %4d %4d", i, j); switch(bond->type) { case BOND_TRIPLE: fprintf(fp, " triple"); break; case BOND_DOUBLE: fprintf(fp, " double"); break; case BOND_SINGLE: default: fprintf(fp, " single"); break; } /* image : the translation of atom j needed to make the bond */ ARR3SET(x, bond->offset); VEC3MUL(x, 2.0); ARR3ADD(x, core1->x); ARR3SUB(x, core2->x); fprintf(fp, " %d %d %d\n", nearest_int(x[0]), nearest_int(x[1]), nearest_int(x[2])); fprintf(fp, "\n"); } fprintf(fp, "\n"); } /* output species data */ if (data->gulp.species) { strip_extra(data->gulp.species); if (strlen(data->gulp.species)) { fprintf(fp,"species\n"); fprintf(fp,"%s\n", data->gulp.species); fprintf(fp,"end\n\n"); } } /* output cova data */ /* FIXME - what if other element properties have been modified (within GDIS) */ if (data->gulp.elements) { strip_extra(data->gulp.elements); if (strlen(data->gulp.elements)) { fprintf(fp,"elements\n"); fprintf(fp,"%s\n", data->gulp.elements); fprintf(fp,"end\n\n"); } } /* potentials */ if (data->gulp.potentials) { if (strlen(data->gulp.potentials)) fprintf(fp,"%s\n", data->gulp.potentials); } else ff_gulp_write(fp, data); /* electrostatic potential sites */ if (data->gulp.epot_vecs) { fprintf(fp, "potsites cart\n"); for (list=data->gulp.epot_vecs ; list ; list=g_slist_next(list)) { vec = list->data; fprintf(fp, "%f %f %f\n", vec->rx[0], vec->rx[1], vec->rx[2]); } fprintf(fp,"\n"); } /* specified kpoints? */ if (data->periodic && data->gulp.kpoints) { strip_extra(data->gulp.kpoints); if (strlen(data->gulp.kpoints)) { fprintf(fp, "kpoints %d\n", 1+char_count(data->gulp.kpoints, '\n')); fprintf(fp, "%s\n\n", data->gulp.kpoints); } } /* unrecognized stuff */ if (data->gulp.output_extra) { if (data->gulp.extra) { fprintf(fp, "\n#--- Additional options/data\n\n"); fprintf(fp, "%s\n\n", data->gulp.extra); } } fprintf(fp, "print 1\n"); /* done */ fclose(fp); g_string_free(line, TRUE); return(0); } /*****************/ /* debugging aid */ /*****************/ void print_gulp_flags(gint *list, gint size) { gint i; printf("Flags:"); for (i=0 ; i flag_level) { flag_new = TRUE; flag_level = flag_table[trigger]; } break; } /* once the new coords flag is tripped - any subsequent new flag */ /* triggers should generate a new model. */ /* NB: name/cell options must come before the coords (GULP incompatibility?) */ if (trigger == GULP_NEW_COORDS) { for (i=GULP_NEW_FLAGS ; i-- ; ) flag_table[i] = flag_level; } /* printf("%d : %d : %d\n", flag_table[0], flag_table[1], flag_table[2]); */ /* return new model if flagged, else the old model */ if (flag_new) { /* printf(" + new model triggered!\n"); */ new = model_new(); new->id = -1; return(new); } return(model); } /*********************************/ /* yet another gulp read rewrite */ /*********************************/ #define DEBUG_READ_GULP 0 gint read_gulp(gchar *filename, struct model_pak *model) { gint i, j, nc, ns; gint keywords_found, keywords_expected, num_tokens, remaining; gint code, context, run, method, optimiser, optimiser2, unit, fix, switch_type; gint region, breathe, coulomb, maxcyc, qeq, free, zsisa, compare, nosym, phonon, eigen; gint type, gen_flag, temp_code, noflags, growth, translate, noautobond; gchar *tmp, *line, **buff; gdouble switch_value; gdouble x[3], vec1[3], vec2[3], vec3[3]; gpointer scan; GSList *item, *clist, *slist; GString *key_buff, *elem_buff, *ex_buff, *ff_buff, *species_buff, *kpoints_buff; struct gulp_pak gulp; struct elem_pak elem_data; struct core_pak *core, *core1, *core2; struct shel_pak *shell; struct bond_pak *bond; scan = scan_new(filename); if (!scan) return(1); /* init */ model->id = -1; keywords_found = keywords_expected = 0; /* deprec - use gulp_pak structure/gulp_init() instead */ code = context = run = method = optimiser = optimiser2 = switch_type = switch_value = -1; qeq = free = zsisa = compare = nosym = phonon = eigen = unit = fix = FALSE; /* NEW*/ noautobond = FALSE; gulp_init(&gulp); /* NEW - noflags assumed false now */ noflags = FALSE; maxcyc = 0; region = REGION1A; coulomb = NOBUILD; gulp_change_model(0, NULL); key_buff = g_string_new(NULL); elem_buff = g_string_new(NULL); ex_buff = g_string_new(NULL); ff_buff = g_string_new(NULL); species_buff = g_string_new(NULL); kpoints_buff = g_string_new(NULL); /* main parse loop */ buff = scan_get_tokens(scan, &num_tokens); while (!scan_complete(scan)) { g_assert(buff != NULL); if (!keywords_found) { /* keyword only search */ for (i=num_tokens ; i-- ; ) { code = gulp_is_keyword(*(buff+i)); switch (code) { case E_SINGLE: case E_OPTIMIZE: case MD: run = code; keywords_found++; keywords_expected = num_tokens; break; case RFO_OPT: case BFGS_OPT: case CONJ_OPT: optimiser = code; keywords_found++; keywords_expected = num_tokens; break; case UNIT_HESSIAN: unit = TRUE; keywords_found++; keywords_expected = num_tokens; break; case MOLE: case MOLMEC: case MOLQ: coulomb = code; keywords_found++; keywords_expected = num_tokens; break; case FIX: fix = TRUE; keywords_found++; break; case GULP_NOAUTOBOND: /* set flag incase we have more than one structure in the file */ noautobond = TRUE; keywords_found++; break; case QEQ: qeq = TRUE; keywords_found++; keywords_expected = num_tokens; break; case FREE_ENERGY: free = TRUE; keywords_found++; keywords_expected = num_tokens; break; case ZSISA: zsisa = TRUE; keywords_found++; keywords_expected = num_tokens; break; case COMPARE: compare = TRUE; keywords_found++; keywords_expected = num_tokens; break; case NOSYM: nosym = TRUE; keywords_found++; keywords_expected = num_tokens; break; case CONP: case CONV: method = code; keywords_found++; keywords_expected = num_tokens; noflags = TRUE; break; case CELL: case NOFLAGS: noflags = TRUE; break; case GULP_SOLVATION_COSMIC: case GULP_SOLVATION_COSMO: gulp.solvation_model = code; keywords_found++; keywords_expected = num_tokens; break; case PHONON: phonon = TRUE; keywords_found++; keywords_expected = num_tokens; break; case EIGEN: eigen = TRUE; keywords_found++; keywords_expected = num_tokens; break; default: g_string_sprintfa(key_buff, "%s ", *(buff+i)); } } /* FIXME - check if noflags should be made false */ } else { /* main option/setup parse */ /* acquire next option context? */ code = gulp_is_option(*buff); if (code != -1) context = code; /* pass everything we don't recognize to the extra string */ if (code == -1) { /* FIXME - should have finished all contextual stuff */ if (context != -1) { #if DEBUG_READ_GULP printf("Warning: context = %d\n", context); printf(" > %s", scan_cur_line(scan)); #endif } g_string_sprintfa(ex_buff, "%s", scan_cur_line(scan)); } /* printf("code: %d, context: %d\n", code, context); */ /* parse current option */ switch (code) { case GULP_CONNECT: if (num_tokens < 6) { /* FIXME - why isnt the error table working? */ error_table_entry("file_gulp(): bad connect line.\n"); break; } i = str_to_float(*(buff+1)); j = str_to_float(*(buff+2)); nc = g_slist_length(model->cores); /* TODO - print warning (bad connect entry) */ if (i > nc || j > nc) break; if (num_tokens == 6) { /* exactly 6 -> assume no bond type specified */ vec1[0] = str_to_float(*(buff+3)); vec1[1] = str_to_float(*(buff+4)); vec1[2] = str_to_float(*(buff+5)); } else { /* more than 6 -> assume bond type is specified */ vec1[0] = str_to_float(*(buff+4)); vec1[1] = str_to_float(*(buff+5)); vec1[2] = str_to_float(*(buff+6)); } /* reverse order (cores prepended) */ core1 = g_slist_nth_data(model->cores, nc - i); core2 = g_slist_nth_data(model->cores, nc - j); g_assert(core1 != NULL); g_assert(core2 != NULL); bond = g_malloc(sizeof(struct bond_pak)); model->bonds = g_slist_prepend(model->bonds, bond); core1->bonds = g_slist_prepend(core1->bonds, bond); core2->bonds = g_slist_prepend(core2->bonds, bond); bond->type = BOND_SINGLE; bond->status = NORMAL; bond->atom1 = core1; bond->atom2 = core2; ARR3SET(bond->offset, core2->x); ARR3SUB(bond->offset, core1->x); /* bond midpoint offset must be in fractionals */ if (!model->fractional) { matrix_lattice_init(model); vecmat(model->ilatmat, bond->offset); } /* compute the bond offset (midpoint vector in fractionals) */ ARR3ADD(bond->offset, vec1); VEC3MUL(bond->offset, 0.5); break; case GULP_COSMO_SHAPE: if (num_tokens > 1) { if (g_strncasecmp(*(buff+1), "dode", 4) == 0) gulp.cosmo_shape = 1; else gulp.cosmo_shape = 0; } break; case GULP_COSMO_POINTS: if (num_tokens > 1) gulp.cosmo_points = str_to_float(*(buff+1)); break; case GULP_COSMO_SEGMENTS: if (num_tokens > 1) gulp.cosmo_segments = str_to_float(*(buff+1)); break; case GULP_COSMO_SMOOTHING: if (num_tokens > 1) gulp.cosmo_smoothing = str_to_float(*(buff+1)); break; case GULP_COSMO_SOLVENT_EPSILON: if (num_tokens > 1) gulp.cosmo_solvent_epsilon = str_to_float(*(buff+1)); break; case GULP_COSMO_SOLVENT_RADIUS: if (num_tokens > 1) gulp.cosmo_solvent_radius = str_to_float(*(buff+1)); if (num_tokens > 2) gulp.cosmo_solvent_delta = str_to_float(*(buff+2)); break; case GULP_COSMO_SOLVENT_RMAX: if (num_tokens > 1) gulp.cosmo_solvent_rmax = str_to_float(*(buff+1)); break; case ENDFORCE: g_string_sprintfa(ex_buff, "%s", scan_cur_line(scan)); break; case PRINT: /* skip, don't store the print option as gdis always appends it */ if (num_tokens < 2) { while (!scan_complete(scan)) { g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); if (num_tokens) break; } } break; case MAXCYC: if (num_tokens > 1) maxcyc = str_to_float(*(buff+1)); else { while (!scan_complete(scan)) { g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); if (num_tokens) { maxcyc = str_to_float(*buff); break; } } } break; case SWITCH_ON: for (j=1 ; j 2) { if (g_ascii_strncasecmp("region",*(buff+1),6) == 0) region = str_to_float(*(buff+2)) - 1; model->region_empty[region] = FALSE; if (region == REGION1A) model = gulp_change_model(GULP_NEW_COORDS, model); } else model = gulp_change_model(GULP_NEW_COORDS, model); nc = ns = 0; break; /* another keyword that can initiate a new model (on repeat) */ case NAME: model = gulp_change_model(GULP_NEW_NAME, model); break; /* other keywords that can initiate a new model (on repeat) */ case CELL: case POLYMER_CELL: case POLYMER_VECTOR: case SURFACE_CELL: case SURFACE_VECTORS: case LATTICE_VECTORS: model = gulp_change_model(GULP_NEW_LATTICE, model); break; } } /* main option/data parse */ /* NB: after each case - set context = -1 if parsing for that option is completed */ switch (context) { /* pass through everything in these blocks */ case TITLE: case WEIGHT: case GULP_OBSERVABLES: case GULP_VARIABLES: g_string_sprintfa(ex_buff, "%s", scan_cur_line(scan)); while (!scan_complete(scan)) { g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); if (num_tokens) { /* check first item only */ code = gulp_is_option(*(buff)); if (code == -1) g_string_sprintfa(ex_buff, "%s", scan_cur_line(scan)); else { /* terminate when we hit a new option */ /* NB: if option was not an "end" - buffer it for the next parse cycle */ if (code != END) { scan_put_line(scan); } else g_string_sprintfa(ex_buff, "%s", scan_cur_line(scan)); break; } } } break; /* hack for getting an associated .trg file */ case OUTPUT: switch (num_tokens) { case 4: if (g_ascii_strncasecmp(*(buff+1),"mov",3) == 0) { if (model->gulp.mov_file); g_free(model->gulp.mov_file); model->gulp.mov_file = g_strdup(*(buff+3)); } break; case 3: if (g_ascii_strncasecmp(*(buff+1),"traj",4) == 0) { g_free(model->gulp.trj_file); model->gulp.trj_file = g_strdup(*(buff+2)); model->animation = TRUE; } break; } context = -1; break; case ENSEMBLE: if (num_tokens > 1) { if (g_ascii_strncasecmp(*(buff+1),"nve",3) == 0) model->gulp.ensemble = NVE; if (g_ascii_strncasecmp(*(buff+1),"nvt",3) == 0) model->gulp.ensemble = NVT; if (g_ascii_strncasecmp(*(buff+1),"npt",3) == 0) model->gulp.ensemble = NPT; } context = -1; break; case TEMPERATURE: if (num_tokens > 1) { g_free(model->gulp.temperature); model->gulp.temperature = g_strjoinv(" ", buff+1); } else { /* get next (non empty) line */ g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); if (buff) { g_free(model->gulp.temperature); model->gulp.temperature = g_strjoinv(" ", buff); } } context = -1; break; case PRESSURE: if (num_tokens > 1) { g_free(model->gulp.pressure); model->gulp.pressure = g_strjoinv(" ", buff+1); } else { /* get next (non empty) line */ g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); if (buff) { g_free(model->gulp.pressure); model->gulp.pressure = g_strjoinv(" ", buff); } } context = -1; break; case TIMESTEP: g_free(model->gulp.timestep); model->gulp.timestep = g_strdup(get_token_pos(scan_cur_line(scan), 1)); g_strstrip(model->gulp.timestep); break; case EQUILIBRATION: g_free(model->gulp.equilibration); model->gulp.equilibration = g_strdup(get_token_pos(scan_cur_line(scan), 1)); g_strstrip(model->gulp.equilibration); break; case PRODUCTION: g_free(model->gulp.production); model->gulp.production = g_strdup(get_token_pos(scan_cur_line(scan), 1)); g_strstrip(model->gulp.production); break; case SAMPLE: g_free(model->gulp.sample); model->gulp.sample = g_strdup(get_token_pos(scan_cur_line(scan), 1)); g_strstrip(model->gulp.sample); break; case WRITE: g_free(model->gulp.write); model->gulp.write = g_strdup(get_token_pos(scan_cur_line(scan), 1)); g_strstrip(model->gulp.write); break; case SUPER_CELL: if (num_tokens > 3) { model->gulp.super[0] = str_to_float(*(buff+1)); model->gulp.super[1] = str_to_float(*(buff+2)); model->gulp.super[2] = str_to_float(*(buff+3)); } break; case NAME: if (num_tokens > 1) { g_free(model->basename); model->basename = g_strjoinv(" ", buff+1); g_strstrip(model->basename); strcpy(model->filename, model->basename); } break; case GULP_LIBRARY: if (num_tokens > 1) { g_free(model->gulp.libfile); model->gulp.libfile = g_strdup(*(buff+1)); } break; case SPACE: if (num_tokens > 1) { line = scan_cur_line(scan); tmp = get_token_pos(line, 1); } else tmp = scan_get_line(scan); /* process for spacgroup symbol or number */ gen_flag=0; for (i=0 ; i space *name* */ if (g_ascii_isalpha(*(tmp+i))) { model->sginfo.spacename = g_strdup(tmp); /* indicate that name should used in lookup */ model->sginfo.spacenum = -1; gen_flag++; break; } } /* no alphabetic chars, assume space group number */ if (!gen_flag) model->sginfo.spacenum = str_to_float(tmp); context = -1; break; case ORIGIN: switch (num_tokens) { case 2: model->sginfo.cellchoice = str_to_float(*(buff+1)); break; default: printf("Warning: unsupported origin specification.\n"); } break; case POLYMER_CELL: g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); if (num_tokens) { model->pbc[0] = str_to_float(*buff); model->periodic = 1; } break; case POLYMER_VECTOR: g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); if (num_tokens) { model->latmat[0] = str_to_float(*(buff+0)); model->latmat[3] = 0.0; model->latmat[6] = 0.0; model->construct_pbc = TRUE; model->periodic = 1; matrix_lattice_init(model); } break; case SURFACE_CELL: g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); if (num_tokens > 2) { model->pbc[0] = str_to_float(*(buff+0)); model->pbc[1] = str_to_float(*(buff+1)); model->pbc[5] = str_to_float(*(buff+2)); model->pbc[5] *= D2R; model->periodic = 2; } break; case SURFACE_VECTORS: g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); if (num_tokens > 1) { /* FIXME - a is not necessarily colinear with x */ vec1[0] = str_to_float(*(buff+0)); vec2[0] = str_to_float(*(buff+1)); g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); if (num_tokens > 1) { vec1[1] = str_to_float(*(buff+0)); vec2[1] = str_to_float(*(buff+1)); /* NB: gdis wants transposed gulp matrix */ VEC3SET(&(model->latmat[0]), vec1[0], vec1[1], 0.0); VEC3SET(&(model->latmat[3]), vec2[0], vec2[1], 0.0); VEC3SET(&(model->latmat[6]), 0.0, 0.0, 1.0); model->construct_pbc = TRUE; model->periodic = 2; matrix_lattice_init(model); } } break; case CELL: /* get next line if insufficient tokens */ if (num_tokens < 2) { g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); i=0; } else i=1; /* parse for cell data */ if (num_tokens > 5) { model->pbc[0] = str_to_float(*(buff+i+0)); model->pbc[1] = str_to_float(*(buff+i+1)); model->pbc[2] = str_to_float(*(buff+i+2)); model->pbc[3] = str_to_float(*(buff+i+3)); model->pbc[4] = str_to_float(*(buff+i+4)); model->pbc[5] = str_to_float(*(buff+i+5)); /* hack to determine if 2D or 3D */ /* FIXME - possible for pbc[3] or pbc[4] to be 0 instead */ if (fabs(model->pbc[2]) < FRACTION_TOLERANCE) model->periodic = 2; else model->periodic = 3; model->pbc[3] *= D2R; model->pbc[4] *= D2R; model->pbc[5] *= D2R; } break; case LATTICE_VECTORS: VEC3SET(vec1, 1.0, 0.0, 0.0); VEC3SET(vec2, 0.0, 1.0, 0.0); VEC3SET(vec3, 0.0, 0.0, 1.0); model->periodic = 0; g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); if (num_tokens > 2) { vec1[0] = str_to_float(*(buff+0)); vec2[0] = str_to_float(*(buff+1)); vec3[0] = str_to_float(*(buff+2)); model->periodic++; } g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); if (num_tokens > 2) { vec1[1] = str_to_float(*(buff+0)); vec2[1] = str_to_float(*(buff+1)); vec3[1] = str_to_float(*(buff+2)); model->periodic++; } g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); if (num_tokens > 2) { vec1[2] = str_to_float(*(buff+0)); vec2[2] = str_to_float(*(buff+1)); vec3[2] = str_to_float(*(buff+2)); model->periodic++; } if (model->periodic == 3) { /* use the supplied lattice matrix */ ARR3SET(&(model->latmat[0]), vec1); ARR3SET(&(model->latmat[3]), vec2); ARR3SET(&(model->latmat[6]), vec3); model->construct_pbc = TRUE; matrix_lattice_init(model); } break; /* NB: errors -> break (not return) so we cope with empty regions */ case PFRAC: case SFRAC: case FRAC: model->fractional = TRUE; case CART: /* au check */ gen_flag = 0; if (num_tokens > 1) if (g_ascii_strncasecmp("au",*(buff+1),2) == 0) gen_flag++; /* get new line */ /* insufficient items => stupid gulp frac/cart \n number \n coords format */ g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); if (num_tokens < 4) { g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); } /* core, shell indices */ while (!scan_complete(scan)) { if (gulp_is_option(*buff) > -1) { scan_put_line(scan); break; } /* NEW - translation and growth slice check */ growth = translate = FALSE; switch (*(*(buff+num_tokens-1))) { case '%': growth = TRUE; break; case 'T': translate = TRUE; break; } /* sanity check for coordinate line, atom + x,y,z */ if (num_tokens < 4) break; /* if an atom type (ie core/shell) is specified - adjust data positions */ type = 0; /* next data token position */ i = 1; breathe = FALSE; if (*(buff+1)[0] == 'b' || *(buff+1)[0] == 'B') { breathe = TRUE; i++; if (*(buff+1)[1] == 'c' || *(buff+1)[1] == 'C') type = 1; else type = 2; } else { if (*(buff+1)[0] == 'c' || *(buff+1)[0] == 'C') { type = 1; i++; } if (*(buff+1)[0] == 's' || *(buff+1)[0] == 'S') { type = 2; i++; } } /* x y z for core and shell */ x[0] = str_to_float(*(buff+i)); x[1] = str_to_float(*(buff+i+1)); x[2] = str_to_float(*(buff+i+2)); if (gen_flag) { VEC3MUL(x, AU2ANG); } i+=3; if (growth || translate) i++; /* number of items after x y z */ remaining = num_tokens - i; /* do this so the switch still works (ie ignores anything more than what it expects) */ remaining = CLAMP(remaining, 0, 6); if (type == 2) { /* new shell */ shell = new_shell(*buff, model); ARR3SET(shell->x, x); shell->breathe = breathe; shell->region = region; shell->translate = translate; switch (remaining) { case 6: shell->lookup_charge = FALSE; shell->charge = str_to_float(*(buff+i)); shell->has_sof = TRUE; shell->sof = str_to_float(*(buff+i+1)); shell->radius = str_to_float(*(buff+i+2)); shell->flags = g_strdup_printf("%s %s %s", *(buff+i+3), *(buff+i+4), *(buff+i+5)); break; case 5: shell->lookup_charge = FALSE; shell->charge = str_to_float(*(buff+i)); shell->has_sof = TRUE; shell->sof = str_to_float(*(buff+i+1)); shell->flags = g_strdup_printf("%s %s %s", *(buff+i+2), *(buff+i+3), *(buff+i+4)); break; case 4: shell->lookup_charge = FALSE; shell->charge = str_to_float(*(buff+i)); shell->flags = g_strdup_printf("%s %s %s", *(buff+i+1), *(buff+i+2), *(buff+i+3)); break; case 3: if (noflags) { shell->lookup_charge = FALSE; shell->charge = str_to_float(*(buff+i)); shell->has_sof = TRUE; shell->sof = str_to_float(*(buff+i+1)); shell->radius = str_to_float(*(buff+i+2)); } else shell->flags = g_strdup_printf("%s %s %s", *(buff+i), *(buff+i+1), *(buff+i+2)); break; case 2: shell->has_sof = TRUE; shell->sof = str_to_float(*(buff+i+1)); case 1: shell->lookup_charge = FALSE; shell->charge = str_to_float(*(buff+i)); break; } model->shels = g_slist_prepend(model->shels, shell); ns++; } else { /* new core */ core = new_core(*buff, model); ARR3SET(core->x, x); core->breathe = breathe; core->region = region; core->growth = growth; core->translate = translate; switch (remaining) { case 6: core->lookup_charge = FALSE; core->charge = str_to_float(*(buff+i)); core->has_sof = TRUE; core->sof = str_to_float(*(buff+i+1)); core->radius = str_to_float(*(buff+i+2)); core->flags = g_strdup_printf("%s %s %s", *(buff+i+3), *(buff+i+4), *(buff+i+5)); break; case 5: core->lookup_charge = FALSE; core->charge = str_to_float(*(buff+i)); core->has_sof = TRUE; core->sof = str_to_float(*(buff+i+1)); core->flags = g_strdup_printf("%s %s %s", *(buff+i+2), *(buff+i+3), *(buff+i+4)); break; case 4: core->lookup_charge = FALSE; core->charge = str_to_float(*(buff+i)); core->flags = g_strdup_printf("%s %s %s", *(buff+i+1), *(buff+i+2), *(buff+i+3)); break; case 3: if (noflags) { core->lookup_charge = FALSE; core->charge = str_to_float(*(buff+i)); core->has_sof = TRUE; core->sof = str_to_float(*(buff+i+1)); core->radius = str_to_float(*(buff+i+2)); } else core->flags = g_strdup_printf("%s %s %s", *(buff+i), *(buff+i+1), *(buff+i+2)); break; case 2: core->has_sof = TRUE; core->sof = str_to_float(*(buff+i+1)); case 1: core->lookup_charge = FALSE; core->charge = str_to_float(*(buff+i)); break; } model->cores = g_slist_prepend(model->cores, core); nc++; } #if OLD_WAY if (breathe) { if (num_tokens > 5) core->radius = str_to_float(*(buff+5)); /* FIXME - what about charge? */ } else { i = 4+type; remaining = num_tokens - i; remaining = CLAMP(remaining, 0, 5); if (noflags) remaining = CLAMP(remaining, 0, 2); switch (remaining) { case 5: core->lookup_charge = FALSE; core->charge = str_to_float(*(buff+i)); core->has_sof = TRUE; core->sof = str_to_float(*(buff+i+1)); core->flags = g_strdup_printf("%s %s %s", *(buff+i+2), *(buff+i+3), *(buff+i+4)); break; case 4: core->lookup_charge = FALSE; core->charge = str_to_float(*(buff+i)); i++; case 3: core->flags = g_strdup_printf("%s %s %s", *(buff+i), *(buff+i+1), *(buff+i+2)); break; case 2: core->has_sof = TRUE; core->sof = str_to_float(*(buff+i+1)); case 1: core->lookup_charge = FALSE; core->charge = str_to_float(*(buff+i)); break; } } if (gen_flag) { VEC3MUL(core->x, AU2ANG); } nc++; break; case 2: if (num_tokens > 4) { shell = new_shell(*buff, model); model->shels = g_slist_prepend(model->shels, shell); shell->x[0] = str_to_float(*(buff+2)); shell->x[1] = str_to_float(*(buff+3)); shell->x[2] = str_to_float(*(buff+4)); } else break; shell->breathe = breathe; shell->region = region; shell->translate = translate; if (breathe) { if (num_tokens > 5) shell->radius = str_to_float(*(buff+5)); /* FIXME - what about charge? */ } else { i = 5; remaining = num_tokens - i; remaining = CLAMP(remaining, 0, 5); if (noflags) remaining = CLAMP(remaining, 0, 2); switch (remaining) { case 5: shell->lookup_charge = FALSE; shell->charge = str_to_float(*(buff+i)); shell->has_sof = TRUE; shell->sof = str_to_float(*(buff+i+1)); shell->flags = g_strdup_printf("%s %s %s", *(buff+i+2), *(buff+i+3), *(buff+i+4)); break; case 4: shell->lookup_charge = FALSE; shell->charge = str_to_float(*(buff+i)); i++; case 3: shell->flags = g_strdup_printf("%s %s %s", *(buff+i), *(buff+i+1), *(buff+i+2)); break; case 2: shell->has_sof = TRUE; shell->sof = str_to_float(*(buff+i+1)); case 1: shell->lookup_charge = FALSE; shell->charge = str_to_float(*(buff+i)); break; } } if (gen_flag) { VEC3MUL(shell->x, AU2ANG); } ns++; break; } #endif g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); } break; case D_HKL: if (num_tokens > 1) model->surface.dspacing = str_to_float(*(buff+1)); context = -1; break; case SBULK_ENERGY: if (num_tokens > 1) model->gulp.sbulkenergy = str_to_float(*(buff+1)); context = -1; break; case TOTAL_ENERGY: if (num_tokens > 1) model->gulp.energy = str_to_float(*(buff+1)); context = -1; break; case SPECIES: g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); while (!scan_complete(scan)) { /* end on an option */ if (num_tokens) { if (gulp_is_option(*buff) > -1) { scan_put_line(scan); break; } /* prevent core dump on comment */ if (**buff == '#') break; /* add new species data if the 1st item an element, otherwise end */ if (elem_test(*buff)) g_string_sprintfa(species_buff, "%s", scan_cur_line(scan)); else break; } g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); } context = -1; break; case ELEMENT: g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); while (!scan_complete(scan)) { if (num_tokens) { /* end on an option */ temp_code = gulp_is_option(*buff); if (temp_code != COVALENT && temp_code != IONIC && temp_code != VDW) { scan_put_line(scan); break; } else g_string_sprintfa(elem_buff, "%s", scan_cur_line(scan)); } g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); } context = -1; break; case KPOINTS: /* get all subsequent non-empty & numeric lines */ while (!scan_complete(scan)) { g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); if (num_tokens) { if (str_is_float(*buff)) g_string_sprintfa(kpoints_buff, "%s", scan_cur_line(scan)); } else break; } context = -1; break; case DUMP_FILE: if (num_tokens > 1) { /* NEW - grab everything except the dump option itself */ g_free(model->gulp.dump_file); line = scan_cur_line(scan); model->gulp.dump_file = g_strdup(get_token_pos(line,1)); strip_extra(model->gulp.dump_file); } context = -1; break; case IGNORE: /* read until hit an ERONGI */ while (!scan_complete(scan)) { line = scan_get_line(scan); if (gulp_is_option(line) == ERONGI) break; } context = -1; break; /* special case - only one line expected */ case GULP_SINGLE_LINE_POTENTIAL: g_string_sprintfa(ff_buff, "%s", scan_cur_line(scan)); context = -1; break; /* multi-line potentials */ case GULP_POTENTIAL: /* store potential header */ g_string_sprintfa(ff_buff, "%s", scan_cur_line(scan)); while (!scan_complete(scan)) { line = scan_get_line(scan); /* ignore (but keep reading) empty/blank lines */ /* NB - keep both tests below (NULL and \n tests) */ if (!line) continue; if (strlen(line) < 2) continue; /* terminate on option */ if (gulp_is_option(line) > -1) { context = -1; scan_put_line(scan); break; } /* terminate if some chars of 1st token are alphabetic and not an element */ g_strfreev(buff); buff = tokenize(line, &num_tokens); if (num_tokens) { tmp = NULL; for (i=strlen(*buff) ; i-- ; ) { if (g_ascii_isalpha((*buff)[i])) { tmp = *buff; break; } } if (tmp) { /* NEW - allow GULP wildcard element */ if (g_ascii_strncasecmp(tmp, "x\0", 2) != 0) { if (!elem_symbol_test(tmp)) { context = -1; scan_put_line(scan); break; } } } } /* store potential data */ g_string_sprintfa(ff_buff, "%s", line); } break; } /* get next non-empty line */ /* TODO - encapsulate in function call? (buff & line) */ g_strfreev(buff); buff = scan_get_tokens(scan, &num_tokens); } g_strfreev(buff); /* TODO - if keywords found > 0, but doesn't match num tokens */ /* then we've found an unrecognized keyword -> pass through?/print warning? */ /* printf("Keywords processed: %d/%d\n", keywords_found, keywords_expected); */ /* NEW */ if (gulp.solvation_model != GULP_SOLVATION_NONE) if (!gulp_shape_indices_compute(&gulp)) printf("WARNING: input points may be invalid.\n"); /* setup newly loaded models */ for (item=sysenv.mal ; item ; item=g_slist_next(item)) { model = item->data; if (model->id == -1) { model->id = GULP; strcpy(model->filename, filename); /* NEW - unrecognized keyword transfer */ if (keywords_found != keywords_expected) { g_free(model->gulp.extra_keywords); model->gulp.extra_keywords = g_strdup(key_buff->str); } /* no depth info for loaded surfaces, so pretend they're MARVIN style */ if (model->periodic == 2) model->surface.true_cell = FALSE; /* fill out current model with GULP data */ /* NEW - connectivity */ model->gulp.noautobond = noautobond; if (noautobond) model->build_molecules = FALSE; /* solvation */ model->gulp.solvation_model = gulp.solvation_model; model->gulp.cosmo_shape = gulp.cosmo_shape; model->gulp.cosmo_shape_index[0] = gulp.cosmo_shape_index[0]; model->gulp.cosmo_shape_index[1] = gulp.cosmo_shape_index[1]; model->gulp.cosmo_points = gulp.cosmo_points; model->gulp.cosmo_segments = gulp.cosmo_segments; model->gulp.cosmo_smoothing = gulp.cosmo_smoothing; model->gulp.cosmo_solvent_epsilon = gulp.cosmo_solvent_epsilon; model->gulp.cosmo_solvent_radius = gulp.cosmo_solvent_radius; model->gulp.cosmo_solvent_delta = gulp.cosmo_solvent_delta; model->gulp.cosmo_solvent_rmax = gulp.cosmo_solvent_rmax; /* transfer universal gulp data */ /* FIXME - deprec - use gulp_pak instead (see above cosmo stuff) */ model->gulp.run = run; model->gulp.method = method; model->gulp.optimiser = optimiser; if (optimiser2 > 0) { model->gulp.optimiser2 = optimiser2; model->gulp.switch_type = switch_type; model->gulp.switch_value = switch_value; } model->gulp.unit_hessian = unit; model->gulp.coulomb = coulomb; model->gulp.maxcyc = maxcyc; model->gulp.qeq = qeq; model->gulp.free = free; model->gulp.zsisa = zsisa; model->gulp.compare = compare; model->gulp.nosym = nosym; model->gulp.fix = fix; model->gulp.phonon = phonon; model->gulp.eigen = eigen; model->gulp.kpoints = g_strdup(kpoints_buff->str); model->gulp.potentials = g_strdup(ff_buff->str); /* NEW */ model->ff_list = ff_gulp_parse(ff_buff->str); /* duplicate species data */ model->gulp.species = g_strdup(species_buff->str); buff = tokenize(model->gulp.species, &num_tokens); i = 0; while (i < num_tokens) { type = elem_test(*(buff+i)); j = i; get_elem_data(type, &elem_data, model); if (type && ++i < num_tokens) { if (g_ascii_strncasecmp(*(buff+i), "shel", 4) == 0) { if (++i < num_tokens) { elem_data.shell_charge = str_to_float(*(buff+i)); for (slist=model->shels ; slist ; slist=g_slist_next(slist)) { shell = slist->data; if (shel_match(*(buff+j), shell)) { /* NEW - only assign species data if explict charges were absent */ if (shell->lookup_charge) { shell->charge = elem_data.shell_charge; shell->lookup_charge = FALSE; } } } } } else { if (g_ascii_strncasecmp(*(buff+i), "core", 4) == 0) { if (++i < num_tokens) elem_data.charge = str_to_float(*(buff+i)); else elem_data.charge = 0.0; } else elem_data.charge = str_to_float(*(buff+i)); for (clist=model->cores ; clist ; clist=g_slist_next(clist)) { core = clist->data; if (core_match(*(buff+j), core)) { /* NEW - only assign species data if explict charges were absent */ if (core->lookup_charge) { core->charge = elem_data.charge; core->lookup_charge = FALSE; } } } } } i++; } g_strfreev(buff); /* process element data */ model->gulp.elements = g_strdup(elem_buff->str); buff = tokenize(model->gulp.elements, &num_tokens); i = 0; type = -1; while (i < num_tokens) { switch (type) { case COVALENT: code = elem_test(*(buff+i)); i++; if (!get_elem_data(code, &elem_data, model) && istr)) model->gulp.extra = g_strdup(ex_buff->str); /* NEW - store initial frame coord type, as trajectory animation will overwrite */ model->gulp.orig_fractional = model->fractional; model->gulp.orig_construct_pbc = model->construct_pbc; /* ensure the ordering is correct, as GULP trajectory files depend on it */ model->cores = g_slist_reverse(model->cores); model->shels = g_slist_reverse(model->shels); /* display init */ model_prep(model); } } /* FIXME - duplicate ff list for all models */ /* if (model) { printf("FIXME - adding forcefields [%d] to model %p\n", g_slist_length(ff_list), model); ff_dump_all(ff_list); model->ff_list = ff_list; } */ /* cleanup */ g_string_free(key_buff, TRUE); g_string_free(elem_buff, TRUE); g_string_free(ex_buff, TRUE); g_string_free(ff_buff, TRUE); g_string_free(species_buff, TRUE); g_string_free(kpoints_buff, TRUE); scan_free(scan); return(0); } /*******************************************************************/ /* primitive for adding two strings to generate the property value */ /*******************************************************************/ void property_add_with_units(gint rank, gchar *key, gchar *value, gchar *units, struct model_pak *model) { gchar *text; text = g_strjoin(" ", value, units, NULL); property_add_ranked(rank, key, text, model); g_free(text); } /*****************************/ /* generic gulp output parse */ /*****************************/ /* NB: new model is not made, as only energy etc. values */ /* are of interest if we're parsing the results of a gulp run */ #define DEBUG_READ_GULP_OUTPUT 0 gint read_gulp_output(gchar *filename, struct model_pak *data) { gint i, j, m, n, flag, region, primitive=FALSE, comp=0, shift=0; gint status, count=0, dflag=0, fflag=0, pflag=0, read_pass=0, num_tokens; gchar line[LINELEN], **buff, *text, coord; gdouble *value; GSList *list, *flist=NULL, *ir_list=NULL, *raman_list=NULL, *model_list=NULL; GHashTable *types=NULL; struct model_pak *temp; struct core_pak *core; struct shel_pak *shell; FILE *fp; /* checks */ g_assert(data != NULL); g_assert(filename != NULL); fp = fopen(filename, "rt"); if (!fp) return(1); /* init */ data->region_empty[REGION1A] = FALSE; data->gulp.esurf[0] = 0.0; data->gulp.esurf[1] = 0.0; data->gulp.eatt[0] = 0.0; data->gulp.eatt[1] = 0.0; types = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free); #if DEBUG_READ_GULP_OUTPUT printf("Grafted: %d\n", data->grafted); #endif /* init for new model (ie not on the tree) */ if (!data->grafted) { data->id = GULPOUT; g_free(data->basename); data->basename = parse_strip(filename); strcpy(data->filename, filename); model_list = g_slist_prepend(model_list, data); } /* look for interesting output */ flag=status=0; while(!fgetline(fp,line)) { buff = tokenize(line, &num_tokens); /* GULP trapping */ if (g_ascii_strncasecmp("!! ERROR",line,8) == 0) { data->error_file_read = g_string_append(data->error_file_read, line); g_strfreev(buff); status = 2; break; } if (g_ascii_strncasecmp(" **** Unit cell is not charge neutral",line,38) == 0) { data->error_file_read = g_string_append(data->error_file_read, line); if (!fgetline(fp,line)) data->error_file_read = g_string_append(data->error_file_read, line); g_strfreev(buff); status = 2; break; } /* if (g_ascii_strncasecmp(" **** Warning", line, 14) == 0) gui_text_show(WARNING, line); */ /* periodicity */ if (g_ascii_strncasecmp(" Dimensionality", line, 16) == 0) { if (num_tokens > 2) data->periodic = str_to_float(*(buff+2)); } /* space group */ if (g_ascii_strncasecmp(" Space group ", line, 14) == 0) { if (!data->grafted) { for (i=strlen(line) ; i-- ; ) { if (line[i] == ':') { data->sginfo.spacenum = -1; data->sginfo.spacename = g_strstrip(g_strdup(&line[i+1])); /* if (data->sginfo.spacename[0] == 'R') primitive = TRUE; if (g_strrstr(data->sginfo.spacename, ":R") ) { printf("1 prim\n"); primitive = TRUE; } */ #if DEBUG_READ_GULP_OUTPUT printf("space group: %s\n", data->sginfo.spacename); #endif } } } else { /* NEW - check if we should be looking for the primitve cell */ /* if (g_strrstr(data->sginfo.spacename, ":R") ) { printf("2 prim\n"); primitive = TRUE; } */ } } /* NEW - process GULP's library symbols as FF types */ if (g_ascii_strncasecmp(" Species output", line, 16) == 0) { for (i=4 ; i-- ; ) { g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); } while (*buff) { g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (elem_symbol_test(*buff)) { if (num_tokens > 8) { g_hash_table_insert(types, g_strdup(*buff), g_strdup(*(buff+8))); } } else break; } } /* create new model if the calculation was a defect calc */ if (g_ascii_strncasecmp("* Defect calculation for configuration", line, 39) == 0) { /* create new model */ temp = model_new(); temp->id = GULPOUT; g_free(temp->basename); temp->basename = g_strdup_printf("%s_defect_r1", data->basename); /* this is now our new model */ data = temp; model_list = g_slist_prepend(model_list, data); } /* create new model on multiple instances of output data */ /* introducted to cope with output from the translate option */ if (g_ascii_strncasecmp(" Components of energy", line, 22) == 0) { if (comp && !(comp % 2)) { /* create new model */ temp = model_new(); temp->id = GULPOUT; /* pass model data through */ temp->fractional = data->fractional; temp->periodic = data->periodic; temp->sginfo.spacename = g_strdup(data->sginfo.spacename); temp->sginfo.spacenum = -1; temp->construct_pbc = data->construct_pbc; if (data->construct_pbc) memcpy(temp->latmat, data->latmat, 9*sizeof(gdouble)); else memcpy(temp->pbc, data->pbc, 6*sizeof(gdouble)); /* this is now our new model */ data = temp; model_list = g_slist_prepend(model_list, data); } comp++; } /* minimized energy search */ if (g_ascii_strncasecmp(" Final energy =",line,16) == 0) { if (num_tokens > 3) { /* record total energy */ data->gulp.energy = str_to_float(*(buff+3)); flag++; } } /* surface energy search */ if (g_ascii_strncasecmp(" Surface energy ",line,17) == 0) { if (num_tokens > 6) { if (data->gulp.esurf[0] == 0.0) { data->gulp.esurf[0] = str_to_float(*(buff+5)); property_add_with_units(3, "Esurf (u)", *(buff+5), *(buff+6), data); } else { data->gulp.esurf[1] = str_to_float(*(buff+5)); property_add_with_units(4, "Esurf (r)", *(buff+5), *(buff+6), data); } g_free(data->gulp.esurf_units); data->gulp.esurf_units = g_strdup(*(buff+6)); } } /* attachment energy search 1 */ if (g_ascii_strncasecmp(" Attachment energy ",line,20) == 0) { if (num_tokens > 4) { if (data->gulp.eatt[0] == 0.0) { data->gulp.eatt[0] = str_to_float(*(buff+3)); property_add_with_units(5, "Eatt (u)", *(buff+3), *(buff+4), data); } else { data->gulp.eatt[1] = str_to_float(*(buff+3)); property_add_with_units(6, "Eatt (r)", *(buff+3), *(buff+4), data); } g_free(data->gulp.eatt_units); data->gulp.eatt_units = g_strdup(*(buff+4)); } } /* attachment energy search 2 */ if (g_ascii_strncasecmp(" Attachment energy/",line,20) == 0) { if (num_tokens > 3) { /* NB: assumes this match occurs just after the previous match */ if (data->gulp.eatt[1] == 0.0) { data->gulp.eatt[0] = str_to_float(*(buff+3)); property_add_with_units(5, "Eatt (u)", *(buff+3), "eV/unit", data); } else { data->gulp.eatt[1] = str_to_float(*(buff+3)); property_add_with_units(6, "Eatt (r)", *(buff+3), "eV/unit", data); } g_free(data->gulp.eatt_units); data->gulp.eatt_units = g_strdup("eV/unit"); } } /* search for gnorm */ if (g_ascii_strncasecmp(" Final Gnorm =",line,16) == 0) { if (num_tokens > 3) { data->gulp.gnorm = str_to_float(*(buff+3)); property_add_ranked(9, "Gnorm", *(buff+3), data); flag++; } } /* single point energy search */ if (g_ascii_strncasecmp(" Total lattice energy",line,22) == 0) { /* NB: assumes we have the correct cell parameters */ primitive = space_primitive_cell(data); /* if nothing on the rest of this line, then should be on the next */ switch (num_tokens) { case 4: while(!fgetline(fp,line)) { if (primitive) { if (g_ascii_strncasecmp(" Primitive unit cell",line,23) == 0) { g_strfreev(buff); buff = tokenize(line, &num_tokens); if (num_tokens > 5) data->gulp.energy = str_to_float(*(buff+4)); break; } } else { if (g_ascii_strncasecmp(" Non-primitive unit cell",line,27) == 0) { g_strfreev(buff); buff = tokenize(line, &num_tokens); if (num_tokens > 5) data->gulp.energy = str_to_float(*(buff+4)); break; } } } break; case 6: if (g_ascii_strncasecmp("eV",*(buff+5),2) == 0) data->gulp.energy = str_to_float(*(buff+4)); break; } } /* single point free energy search */ if (g_ascii_strncasecmp(" Initial surface dipole ",line,25) == 0) { if (num_tokens > 4) data->gulp.sdipole = str_to_float(*(buff+4)); } /* single point free energy search */ if (g_ascii_strncasecmp(" Total free energy",line,19) == 0) { if (num_tokens > 5) if (g_ascii_strncasecmp("eV",*(buff+5),2) == 0) data->gulp.energy = str_to_float(*(buff+4)); } /* NEW - vibrational info search */ if (g_ascii_strncasecmp(" Frequencies (cm-1) and Eigenvectors",line,36) == 0) fflag++; if (g_ascii_strncasecmp(" Zero point energy",line,19) == 0) fflag=0; if (fflag && g_ascii_strncasecmp(" Frequency",line,10) == 0) { /* space group processing here, since we want to attach */ /* the vibration lists to ALL atoms in the full cell, */ /* not just the asymmetric ones. */ if (!data->grafted && !pflag) { model_prep(data); pflag++; } for (i=1 ; i 1) coord = **(buff+1); else coord = '?'; if (coord == 'x') break; } /* read the eigenvectors in */ m=0; while (m<3*g_slist_length(data->cores)) { g_strfreev(buff); buff = tokenize(line, &n); /* blank line termination */ if (!n) break; /* get reference atom number (NB: GULP starts at 1, list starts at 0) */ i = str_to_float(*buff); i--; /* FIXME - if we're reading in cores from this gulp file - order will be reverse */ /* due to prepending to core list */ core = g_slist_nth_data(data->cores, i); g_assert(core != NULL); /* if (i<0 || i>data->num_atoms-1) { printf("Bad line: %s\n", line); printf("ref atom: %d, num atoms: %d\n", i, data->num_atoms); g_assert_not_reached(); } */ for (j=2 ; jvibx_list = g_slist_append(core->vibx_list, (gpointer *) value); break; case 'y': core->viby_list = g_slist_append(core->viby_list, (gpointer *) value); break; case 'z': core->vibz_list = g_slist_append(core->vibz_list, (gpointer *) value); break; default: g_assert_not_reached(); } } /* next line (if available) */ if (fgetline(fp,line)) break; m++; } } /* minimized coords search */ /* TODO - unminimized coords? */ /* added 'of surface' to avoid reading in growth slice */ dflag=0; if (g_ascii_strncasecmp(" Final asymmetric unit coordinates",line,35) == 0 || g_ascii_strncasecmp(" Final fractional coordinates",line,30) == 0 || g_ascii_strncasecmp(" Fractional coordinates of asymmetric",line,38) == 0 || g_ascii_strncasecmp(" Final fractional/Cartesian coordinates", line, 40) == 0 || g_ascii_strncasecmp(" Mixed fractional/Cartesian coordinates", line, 40) == 0) { data->fractional = TRUE; dflag++; } else if (g_ascii_strncasecmp(" Final coordinates of region", line, 29) == 0) { dflag++; shift=1; } /* don't read in coords if already on the tree (eg single pt) */ if (dflag && !data->grafted) { /* enforce empty core/shell lists */ free_core_list(data); /* skip the two (minimum number) ----- dividers */ region = REGION1A; count=0; while (count < 2) { if (fgetline(fp,line)) return(4); if (g_ascii_strncasecmp("-------", line, 7) == 0) count++; } /* loop until we run out of atomic data lines */ i=j=n=0; flag=0; /* read as many atoms as we can */ while(!fgetline(fp,line)) { g_strfreev(buff); buff = tokenize(line, &num_tokens); /* TODO - dont exit if ----- (could be region divider) */ /* if (g_ascii_strncasecmp("-------", line, 7) == 0) continue; */ /* blank line termination */ if (!num_tokens) break; /* determine region */ if (g_ascii_strncasecmp(" Region ", line, 9) == 0) { if (num_tokens > 1) switch(*(*(buff+1))) { case '1': #if DEBUG_READ_GULP_OUTPUT printf("Labelling region 1...\n"); #endif region = REGION1A; break; case '2': #if DEBUG_READ_GULP_OUTPUT printf("Labelling region 2...\n"); #endif region = REGION2A; break; default: printf("WARNING: unknown region specification\n"); region = REGION1A; } data->region_empty[region] = FALSE; continue; } /* HACK - GULP sometimes puts *'s after coords (region 1 only?) */ if (num_tokens > 7) if (g_ascii_strncasecmp("*", *(buff+4), 1) == 0) { g_free(*(buff+4)); *(buff+4) = g_strdup(*(buff+5)); g_free(*(buff+5)); *(buff+5) = g_strdup(*(buff+7)); } /* exit only if insufficient data items (NB: changes b/w sections, min=6) */ if (num_tokens > 6) { /* read the data in - assume the same order */ if (g_ascii_strncasecmp("c", *(buff+2), 1) == 0) { core = new_core(*(buff+1), data); data->cores = g_slist_prepend(data->cores, core); if (!read_pass) core->region = region; core->x[0] = str_to_float(*(buff+3)); core->x[1] = str_to_float(*(buff+4)); core->x[2] = str_to_float(*(buff+5)); core->charge = str_to_float(*(buff+6+shift)); core->lookup_charge = FALSE; /* core->sof = str_to_float(*(buff+7)); */ i++; #if DEBUG_READ_GULP_OUTPUT printf("coords: %lf %lf %lf\n", core->x[0], core->x[1], core->x[2]); #endif } if (g_ascii_strncasecmp("s", *(buff+2), 1) == 0) { shell = new_shell(*(buff+1), data); data->shels = g_slist_prepend(data->shels, shell); if (!read_pass) shell->region = region; shell->x[0] = str_to_float(*(buff+3)); shell->x[1] = str_to_float(*(buff+4)); shell->x[2] = str_to_float(*(buff+5)); shell->charge = str_to_float(*(buff+6+shift)); shell->lookup_charge = FALSE; #if DEBUG_READ_GULP_OUTPUT printf("coords: %lf %lf %lf\n", shell->x[0], shell->x[1], shell->x[2]); #endif j++; } } } data->cores = g_slist_reverse(data->cores); data->shels = g_slist_reverse(data->shels); /* done one pass => read in unrelaxed coords if reading optimization */ read_pass++; #if DEBUG_READ_GULP_OUTPUT printf("Retrieved %d atoms & %d shells (periodic).\n",i,j); #endif } /* cell parameters - search 1 */ if (g_ascii_strncasecmp(" Final cell parameters",line,22) == 0 && !data->grafted) { /* skip to data */ fgetline(fp,line); fgetline(fp,line); /* get cell lengths */ for (i=0 ; i<6 ; i++) { if (fgetline(fp,line)) break; g_strfreev(buff); buff = tokenize(line, &num_tokens); if (num_tokens > 1) data->pbc[i] = str_to_float(*(buff+1)); } /* convert to radians */ data->pbc[3] *= D2R; data->pbc[4] *= D2R; data->pbc[5] *= D2R; } /* cell parameters - search 2 */ if (g_ascii_strncasecmp(" Non-primitive lattice parameters",line,34) == 0 && !data->grafted) { /* skip to data */ if (fgetline(fp,line)) break; if (fgetline(fp,line)) break; /* get cell lengths */ g_strfreev(buff); buff = tokenize(line, &num_tokens); if (num_tokens > 8) { data->pbc[0] = str_to_float(*(buff+2)); data->pbc[1] = str_to_float(*(buff+5)); data->pbc[2] = str_to_float(*(buff+8)); } /* get cell angles */ if (fgetline(fp,line)) break; g_strfreev(buff); buff = tokenize(line, &num_tokens); if (num_tokens > 5) { data->pbc[3] = D2R*str_to_float(*(buff+1)); data->pbc[4] = D2R*str_to_float(*(buff+3)); data->pbc[5] = D2R*str_to_float(*(buff+5)); } } /* cell parameters - search 3 */ if (g_ascii_strncasecmp(" Final surface cell parameters ",line,32) == 0 && !data->grafted) { data->periodic = 2; data->fractional = TRUE; data->pbc[2] = 0.0; data->pbc[3] = PI/2.0; data->pbc[4] = PI/2.0; /* skip to 1st line of data */ fgetline(fp,line); fgetline(fp,line); g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (num_tokens > 1) data->pbc[0] = str_to_float(*(buff+1)); g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (num_tokens > 1) data->pbc[1] = str_to_float(*(buff+1)); g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (num_tokens > 1) data->pbc[5] = D2R*str_to_float(*(buff+1)); } /* cell parameters - search 4 (eg a CONV surface calc) */ if (g_ascii_strncasecmp(" Surface cell parameters ",line, 26) == 0 && !data->grafted) { data->periodic = 2; data->fractional = TRUE; data->pbc[2] = 0.0; data->pbc[3] = PI/2.0; data->pbc[4] = PI/2.0; /* skip to 1st line of data */ fgetline(fp,line); g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (num_tokens > 5) { data->pbc[0] = str_to_float(*(buff+2)); data->pbc[5] = D2R*str_to_float(*(buff+5)); } g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (num_tokens > 1) data->pbc[1] = str_to_float(*(buff+2)); } /* cell parameters - search 5 (unrelaxed) */ if (g_ascii_strncasecmp(" Cell parameters (Angstroms/Degrees):",line,38) == 0 && !data->grafted) { /* skip blank line */ fgetline(fp,line); /* get cell lengths */ for (i=0 ; i<3 ; i++) { g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (num_tokens > 5) { data->pbc[i] = str_to_float(*(buff+2)); data->pbc[i+3] = D2R*str_to_float(*(buff+5)); } } } /* cell parameters - search 6 */ if (g_ascii_strncasecmp(" Surface Cartesian vectors (Angstroms) :",line,41) == 0 && !data->grafted) { data->periodic = 2; data->construct_pbc = TRUE; /* skip blank line */ fgetline(fp,line); /* get vec 1 */ g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (num_tokens > 1) { data->latmat[0] = str_to_float(*buff); data->latmat[3] = str_to_float(*(buff+1)); data->latmat[6] = 0.0; } /* get vec 2 */ g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (num_tokens > 1) { data->latmat[1] = str_to_float(*buff); data->latmat[4] = str_to_float(*(buff+1)); data->latmat[7] = 0.0; } /* set vec 3 */ data->latmat[2] = 0.0; data->latmat[5] = 0.0; data->latmat[8] = 1.0; } /* cell parameters - search 8 */ if (g_ascii_strncasecmp(" Primitive cell parameters :",line,29) == 0 && !data->grafted) { data->periodic = 3; /* skip blank line */ fgetline(fp,line); /* get line 1 */ g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (num_tokens > 11) { data->pbc[0] = str_to_float(*(buff+8)); data->pbc[3] = D2R*str_to_float(*(buff+11)); } /* get line 2 */ g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (num_tokens > 11) { data->pbc[1] = str_to_float(*(buff+8)); data->pbc[4] = D2R*str_to_float(*(buff+11)); } /* get line 3 */ g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (num_tokens > 11) { data->pbc[2] = str_to_float(*(buff+8)); data->pbc[5] = D2R*str_to_float(*(buff+11)); } } /* cell parameters - search 9 */ if (g_ascii_strncasecmp(" Polymer cell parameter",line,24) == 0 && !data->grafted) { /* init */ data->periodic = 1; data->construct_pbc = FALSE; /* blank line skip */ fgetline(fp,line); g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (num_tokens > 2) data->pbc[0] = str_to_float(*(buff+2)); } /* cell parameters - search 10 */ if (g_ascii_strncasecmp(" Final polymer cell parameter",line,30) == 0 && !data->grafted) { /* init */ data->periodic = 1; data->construct_pbc = FALSE; /* blank line skip */ fgetline(fp,line); fgetline(fp,line); g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (num_tokens > 2) data->pbc[0] = str_to_float(*(buff+1)); } /* isolated coords search */ if ((g_ascii_strncasecmp(" Final cartesian coordinates", line, 29) == 0 || g_ascii_strncasecmp(" Cartesian coordinates of cluster", line, 34) == 0 || g_ascii_strncasecmp(" Region 1 (absolute coordinates)", line, 33) == 0) && !data->grafted) { data->periodic = 0; data->fractional = FALSE; /* enforce empty core/shell lists */ free_core_list(data); for (i=0 ; i<5 ; i++) fgetline(fp,line); /* loop until we run out of atomic data lines */ i=j=n=0; flag=0; /* don't read any more than num_atoms -> memory allocation problems! */ while(!fgetline(fp,line) && !flag) { g_strfreev(buff); buff = tokenize(line, &num_tokens); /* blank line termination */ if (!num_tokens) break; /* exit if atom number is not consecutive */ m = str_to_float(*buff); if (m != ++n) flag=1; else { /* read the data in - assume the same order */ if (num_tokens > 6) { if (g_ascii_strncasecmp("c",*(buff+2),1) == 0) { core = new_core(*(buff+1), data); data->cores = g_slist_prepend(data->cores, core); core->x[0] = str_to_float(*(buff+3)); core->x[1] = str_to_float(*(buff+4)); core->x[2] = str_to_float(*(buff+5)); core->charge = str_to_float(*(buff+6)); core->lookup_charge = FALSE; } if (g_ascii_strncasecmp("s",*(buff+2),1) == 0) { shell = new_shell(*(buff+1), data); data->shels = g_slist_prepend(data->shels, shell); shell->x[0] = str_to_float(*(buff+3)); shell->x[1] = str_to_float(*(buff+4)); shell->x[2] = str_to_float(*(buff+5)); shell->charge = str_to_float(*(buff+6)); shell->lookup_charge = FALSE; } } } } data->cores = g_slist_reverse(data->cores); data->shels = g_slist_reverse(data->shels); #if DEBUG_READ_GULP_OUTPUT printf("Retrieved %d atoms & %d shells (cluster).\n",i,j); #endif } /* NEW */ if (g_ascii_strncasecmp(" Electrostatic potential at input sites", line, 40) == 0) { /* skip to data */ for (i=5 ; i-- ; ) fgetline(fp,line); /* clean the list */ if (data->gulp.epot_vals) free_slist(data->gulp.epot_vals); data->gulp.epot_vals = NULL; /* acquire lines */ while (!fgetline(fp, line)) { if (g_ascii_strncasecmp("----------",line,10) == 0) break; g_strfreev(buff); buff = tokenize(line, &num_tokens); if (num_tokens > 4) { /* get potential value */ value = g_malloc(sizeof(gdouble)); *value = str_to_float(*(buff+4)); data->gulp.epot_vals = g_slist_prepend(data->gulp.epot_vals, value); /* record min & max */ if (*value > data->gulp.epot_max && data->epot_autoscale) data->gulp.epot_max = *value; if (*value < data->gulp.epot_min && data->epot_autoscale) data->gulp.epot_min = *value; } } /* NB: prepend -> reverse to get matching direction with epot_vecs */ data->gulp.epot_vals = g_slist_reverse(data->gulp.epot_vals); /* confirm that we got sufficient points */ #if DEBUG_READ_GULP_OUTPUT printf("got: %d, expected: %d\n", g_slist_length(data->gulp.epot_vecs), g_slist_length(data->gulp.epot_vals)); printf("min: %f, max: %f\n", data->gulp.epot_min, data->gulp.epot_max); #endif } g_strfreev(buff); } #if DEBUG_READ_GULP_OUTPUT P3VEC("cell lengths ",&data->pbc[0]); P3VEC("cell angles ",&data->pbc[3]); #endif text = g_strdup_printf("%.5f eV", data->gulp.energy); property_add_ranked(2, "Energy", text, data); g_free(text); /* surfaces are always const vol */ if (data->periodic == 2) data->gulp.method = CONV; /* init lists */ if (flist) data->phonons = g_slist_reverse(flist); else data->phonons = NULL; data->num_phonons = g_slist_length(data->phonons); if (ir_list) data->ir_list = g_slist_reverse(ir_list); if (raman_list) data->raman_list = g_slist_reverse(raman_list); #if DEBUG_READ_GULP_OUTPUT printf("vibrational eigenvectors: %d\n", data->num_phonons); if (data->num_phonons) dump_phonons(data); #endif /* initialize the models for display */ model_list = g_slist_reverse(model_list); for (list=model_list ; list ; list=g_slist_next(list)) { temp = list->data; /* NEW - process the library symbols */ for (flist=temp->cores ; flist ; flist=g_slist_next(flist)) { core = flist->data; text = g_hash_table_lookup(types, core->atom_label); if (text) { g_free(core->atom_type); core->atom_type = g_strdup(text); } } /* init for display (if not already displayed) */ if (!temp->grafted && !pflag) { model_prep(temp); } } /* CURRENT */ /* dump_phonon(289, 873, data); */ g_hash_table_destroy(types); fclose(fp); return(0); } /**************************************/ /* show the current file stream error */ /**************************************/ void print_file_error(FILE *fp) { printf("error = %d\n", ferror(fp)); clearerr(fp); } /***********************************/ /* GULP dynamics trajectory header */ /***********************************/ /* macro for fortran start/end record padding */ /* int int_buffer=0; #define READ_RECORD fread(&int_buffer, sizeof(int), 1, fp) #define WRITE_RECORD fwrite(&int_buffer, sizeof(int), 1, fp) */ #define DEBUG_TRJ_HEADER 0 gint read_trj_header(FILE *fp, struct model_pak *model) { int num_atoms, periodic; double version; /* record 1 - version */ READ_RECORD; fread(&version, sizeof(version), 1, fp); if (fabs(version) > 100.0) { swap_bytes(&version, sizeof(version)); if (fabs(version) > 100.0) { printf("Error: file seems garbled.\n"); return(1); } model->trj_swap = TRUE; } READ_RECORD; /* record 2 */ READ_RECORD; /* # of atoms + shells */ fread(&num_atoms, sizeof(num_atoms), 1, fp); if (model->trj_swap) swap_bytes(&num_atoms, sizeof(num_atoms)); /* dimension */ fread(&periodic, sizeof(periodic), 1, fp); if (model->trj_swap) swap_bytes(&periodic, sizeof(periodic)); READ_RECORD; #if DEBUG_TRJ_HEADER printf("trj version: %lf\n", version); printf(" Swap bytes: %d\n", model->trj_swap); printf("total atoms: %d\n", num_atoms); printf("size of integer: %d\n", sizeof(int)); printf("size of double: %d\n", sizeof(double)); #endif return(0); } /**********************************/ /* GULP dynamics trajectory frame */ /**********************************/ #define DEBUG_TRJ_FRAME 0 gint read_trj_frame(FILE *fp, struct model_pak *model, gint replace_coords) { gint i, j; int num_atoms, periodic; double time, ke, pe, temp, *x[6]; double cell[9], velc[6]; GSList *list; struct core_pak *core; struct shel_pak *shell; /* standard frame read */ num_atoms = model->expected_cores + model->expected_shells; periodic = model->periodic; /* alloc for x,y,z & vx, vy, vz */ for (j=0 ; j<6 ; j++) x[j] = g_malloc(num_atoms * sizeof(double)); /* read one frame */ READ_RECORD; if (!fread(&time, sizeof(time), 1, fp)) print_file_error(fp); if (model->trj_swap) swap_bytes(&time, sizeof(time)); if (!fread(&ke, sizeof(ke), 1, fp)) print_file_error(fp); if (model->trj_swap) swap_bytes(&ke, sizeof(ke)); if (!fread(&pe, sizeof(pe), 1, fp)) print_file_error(fp); if (model->trj_swap) swap_bytes(&pe, sizeof(pe)); if (!fread(&temp, sizeof(temp), 1, fp)) print_file_error(fp); if (model->trj_swap) swap_bytes(&temp, sizeof(temp)); READ_RECORD; #if DEBUG_TRJ_FRAME printf("[%1dD][%d atoms]", periodic, num_atoms); printf("[t : %.2lf]",time); printf("[ke : %.2lf]",ke); printf("[pe : %.2lf]",pe); printf("[T : %.2lf][%d]\n",temp, replace_coords); #endif /* record dynamics frame */ model->frame_time = time; model->frame_ke = ke; model->frame_pe = pe; model->frame_temp = temp; /* loop over x,y,z & assoc velocity components */ for (j=0 ; j<6 ; j++) { /* NB: cores first, then shells */ READ_RECORD; for (i=0 ; itrj_swap) swap_bytes(x[j]+i, sizeof(double)); } READ_RECORD; } #if DEBUG_TRJ_FRAME printf("expected: cores = %d, shells = %d\n", model->expected_cores, model->expected_shells); printf("existing: cores = %d, shells = %d\n", g_slist_length(model->cores), g_slist_length(model->shels)); #endif /* read core data */ list = model->cores; if (replace_coords) { for (i=0 ; iexpected_cores ; i++) { if (list) core = list->data; else { core = new_core("X", model); model->cores = g_slist_append(model->cores, core); list = g_slist_last(model->cores); } core->x[0] = *(x[0]+i); core->x[1] = *(x[1]+i); core->x[2] = *(x[2]+i); core->v[0] = *(x[3]+i); core->v[1] = *(x[4]+i); core->v[2] = *(x[5]+i); list = g_slist_next(list); } } /* read shells data */ list = model->shels; if (replace_coords) { for (i=model->expected_cores ; idata; else { shell = new_shell("X", model); model->shels = g_slist_append(model->shels, shell); list = g_slist_last(model->shels); } shell->x[0] = *(x[0]+i); shell->x[1] = *(x[1]+i); shell->x[2] = *(x[2]+i); shell->v[0] = *(x[3]+i); shell->v[1] = *(x[4]+i); shell->v[2] = *(x[5]+i); list = g_slist_next(list); } } /* read cell info */ if (model->gulp.ensemble == NPT) { /* get cell vectors */ READ_RECORD; fread(cell, sizeof(double), 9, fp); READ_RECORD; /* get cell velocities */ READ_RECORD; /* calculate nstrains [0, 6] */ switch (model->periodic) { case 3: j=6; break; case 2: j=3; break; case 1: j=1; break; default: j=0; } fread(velc, sizeof(double), j, fp); READ_RECORD; /* compute latmat/ilatmat */ memcpy(model->latmat, cell, 9*sizeof(gdouble)); model->construct_pbc = TRUE; matrix_lattice_init(model); } /* convert input cartesian to fractional */ if (replace_coords) if (model->fractional) coords_make_fractional(model); /* clean up */ for (j=0 ; j<6 ; j++) g_free(x[j]); return(0); } /**********************************************/ /* process a TRJ file and get frame positions */ /**********************************************/ gint mark_trj_frames(struct model_pak *model) { gint i; FILE *fp; gchar *filename; filename = g_strdup_printf("%s/%s", sysenv.cwd, model->gulp.trj_file); /* NB: GULP binary trajectory files - MUST specify "rb" */ /* FIXME - some GULP traj files may be ascii I think? */ fp = fopen(filename, "rb"); if (!fp) { printf("Failed to open: %s\n", filename); g_free(filename); return(1); } read_trj_header(fp, model); for (i=0 ; inum_frames ; i++) { add_frame_offset(fp, model); read_trj_frame(fp, model, FALSE); } fclose(fp); g_free(filename); return(0); } /***********************************/ /* GULP dynamics trajectory header */ /***********************************/ gint write_trj_header(FILE *fp, struct model_pak *model) { int num_atoms, periodic; double version = 1.4; WRITE_RECORD; fwrite(&version, sizeof(version), 1, fp); WRITE_RECORD; WRITE_RECORD; num_atoms = g_slist_length(model->cores) + g_slist_length(model->shels); fwrite(&num_atoms, sizeof(num_atoms), 1, fp); periodic = model->periodic; fwrite(&periodic, sizeof(periodic), 1, fp); WRITE_RECORD; return(0); } /****************************************/ /* write GULP dynamics trajectory frame */ /****************************************/ gint write_trj_frame(FILE *fp, struct model_pak *model) { gint i, j; double temp, x[3]; GSList *list; struct core_pak *core; struct shel_pak *shell; /* fake time, ke, pe, and temp */ WRITE_RECORD; temp = 0.0; fwrite(&temp, sizeof(double), 4, fp); WRITE_RECORD; /* core/shell coordinate write */ for (i=0 ; i<3 ; i++) { WRITE_RECORD; for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; ARR3SET(x, core->x); vecmat(model->latmat, x); fwrite(&x[i], sizeof(double), 1, fp); } for (list=model->shels ; list ; list=g_slist_next(list)) { shell = list->data; ARR3SET(x, shell->x); vecmat(model->latmat, x); fwrite(&x[i], sizeof(double), 1, fp); } WRITE_RECORD; } /* core/shell velocity write */ for (i=0 ; i<3 ; i++) { WRITE_RECORD; for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; x[i] = core->v[i]; fwrite(&x[i], sizeof(double), 1, fp); } for (list=model->shels ; list ; list=g_slist_next(list)) { shell = list->data; x[i] = shell->v[i]; fwrite(&x[i], sizeof(double), 1, fp); } WRITE_RECORD; } /* lattice vector write */ if (model->gulp.ensemble == NPT) { WRITE_RECORD; /* TODO - check matrix storage order is ok (ie in rows or columns?) */ for (i=0 ; i<9 ; i++) { temp = model->latmat[i]; fwrite(&temp, sizeof(double), 1, fp); } WRITE_RECORD; /* calculate nstrains [0, 6] */ switch (model->periodic) { case 3: j=6; break; case 2: j=3; break; case 1: j=1; break; default: j=0; } /* fake lattice velocity write */ WRITE_RECORD; temp = 0.0; for (i=0 ; i %s", sysenv.gulp_path, input, output); #else cmd = g_strdup_printf("%s < %s > %s", sysenv.gulp_path, input, output); #endif #if DEBUG_EXEC_GULP printf("executing: [%s]\n",cmd); #endif task_sync(cmd); /* done */ g_free(cmd); return(status); } gdis-0.90/file_gauss.c0000644000175000017500000002576110600706735013332 0ustar seansean/* Copyright (C) 2004 by Andrew Lloyd Rohl andrew@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include "gdis.h" #include "coords.h" #include "file.h" #include "parse.h" #include "matrix.h" #include "model.h" #include "interface.h" /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /* global variables */ gint last_frame; /************************/ /* GAUSSIAN file saving */ /************************/ gint write_gauss(gchar *filename, struct model_pak *model) { gint i; gdouble x[3]; GSList *list; struct core_pak *core; FILE *fp; /* checks */ g_return_val_if_fail(model != NULL, 1); g_return_val_if_fail(filename != NULL, 2); /* open the file */ fp = fopen(filename,"wt"); if (!fp) return(3); g_free(model->basename); model->basename = parse_strip(filename); fprintf(fp, "%%chk=%s.chk\n", model->basename); fprintf(fp, "\n"); fprintf(fp, "# sp hf/sto-3g\n"); fprintf(fp, "\n"); gdis_blurb(fp); if (model->title) fprintf(fp, "%s\n", model->title); fprintf(fp, "\n"); fprintf(fp, "0 1\n"); for (list=model->cores ; list ; list=g_slist_next(list)) { core = (struct core_pak *) list->data; if (core->status & DELETED) continue; /* everything is cartesian after latmat mult */ ARR3SET(x, core->x); vecmat(model->latmat, x); fprintf(fp, "%-7s %14.9f %14.9f %14.9f\n", elements[core->atom_code].symbol, x[0], x[1], x[2]); } /* write out lattice vectors */ if (model->periodic > 0) for (i=0; iperiodic; i++) fprintf(fp, "%-7s %14.9f %14.9f %14.9f\n", "Tv", model->latmat[0+i], model->latmat[3+i], model->latmat[6+i]); fprintf(fp, "\n"); fclose(fp); return(0); } gchar **strip_empty_strings(gchar **str_array) { gchar **new_str_array = NULL; gint i=0, j=0; while (str_array[i] != NULL) { if (strlen(str_array[i]) != 0) { new_str_array = g_realloc(new_str_array, (j + 2)*sizeof(char *)); /* add one for NULL pointer */ new_str_array[j] = str_array[i]; j++; } else g_free(str_array[i]); i++; } new_str_array[j] = NULL; g_free(str_array); return(new_str_array); } gchar **read_gauss_keyword(gchar *string) { gint i; /* Options to keywords may be specified in any of the following forms: ÊÊÊÊÊÊÊÊÊ keyword = option ÊÊÊÊÊÊÊÊÊÊÊÊkeyword(option) ÊÊÊÊÊÊÊÊÊÊÊkeyword=(option1, option2, ...) ÊÊÊÊÊÊÊÊÊÊÊÊkeyword(option1, option2, ...) */ /* Spaces, tabs, commas, or forward slashes can be used in any combination to separate items within a line. Multiple spaces are treated as a single delimiter. */ for (i=0; icores; model->periodic = 0; model->fractional = FALSE; model->construct_pbc = FALSE; /* read to end of iteration */ while (TRUE) { if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file reading to end of iteration\n"); return(2); } /* if (g_ascii_strncasecmp(line, " GradGradGradGrad", 16) == 0) break;*/ /* read coordinates */ if (g_strrstr(line, "Center Atomic") != NULL) { for (i=0; i<3; i++) if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file skipping to coordinates\n"); return(2); } buff = tokenize(line, &num_tokens); while (num_tokens == 6) { /* atomic number greater than 0 => real atom */ if (str_to_float(*(buff+1)) > 0) { if (clist) { core = (struct core_pak *) clist->data; clist = g_slist_next(clist); } else { core = new_core(elements[(gint) str_to_float(*(buff+1))].symbol, model); model->cores = g_slist_append(model->cores, core); } core->x[0] = str_to_float(*(buff+3)); core->x[1] = str_to_float(*(buff+4)); core->x[2] = str_to_float(*(buff+5)); #if DEBUG_READ_GAUSSIAN_OUT printf("new coords %f %f %f\n", core->x[0], core->x[1], core->x[2]); #endif } /* atomic number = -2 => lattice vector */ if (str_to_float(*(buff+1)) == -2) { model->latmat[0+model->periodic] = str_to_float(*(buff+3)); model->latmat[3+model->periodic] = str_to_float(*(buff+4)); model->latmat[6+model->periodic] = str_to_float(*(buff+5)); model->periodic++; model->construct_pbc = TRUE; #if DEBUG_READ_GAUSSIAN_OUT printf(">> latmat: "); P3MAT(" ", model->latmat); #endif } /* get next line */ g_strfreev(buff); if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file reading coordinates\n"); return(2); } buff = tokenize(line, &num_tokens); } g_strfreev(buff); clist = model->cores; } /* Energy */ if (g_strrstr(line, "SCF Done:") != NULL) { buff = g_strsplit(line, "=", 2); text = format_value_and_units(g_ascii_strdown(*(buff+1), -1), 7); property_add_ranked(3, "Energy", text, model); g_free(text); g_strfreev(buff); } if (g_strrstr(line, "EUMP2") != NULL) { buff = g_strsplit(line, "=", 3); energy_string = g_string_new(""); g_string_append_printf(energy_string, "%.7f %s", str_to_float(*(buff+2)), "a.u."); property_add_ranked(3, "Energy", energy_string->str, model); g_string_free(energy_string, TRUE); g_strfreev(buff); } /* TODO higher order MP */ /* gradients */ if (g_strrstr(line, "Internal Forces:") != NULL) { buff = tokenize(line, &num_tokens); grad_string = g_string_new(""); g_string_append_printf(grad_string, "%.7f %s", str_to_float(*(buff+5)), "a.u./Bohr"); property_add_ranked(4, "RMS Gradient", grad_string->str, model); g_string_free(grad_string, TRUE); g_strfreev(buff); } if (g_strrstr(line, "Predicted change in Energy") != NULL) { if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file checking for succesful optimization\n"); return(2); } if (g_ascii_strcasecmp(property_lookup("Calculation", model), "Forces") == 0) last_frame = TRUE; if (g_strrstr(line, "Optimization completed") != NULL) last_frame = TRUE; /* fix me - better clue to stopping */ break; } if (g_strrstr(line, "Job cpu time") != NULL) { last_frame = TRUE; /* fix me - better clue to stopping */ break; } } return(0); } /*******************************/ /* GAUSSIAN output frame reading */ /*******************************/ gint read_gauss_out_frame(FILE *fp, struct model_pak *model) { return(read_gauss_out_block(fp, model)); } /********************************/ /* Read in a GAUSSIAN output file */ /********************************/ gint read_gauss_out(gchar *filename, struct model_pak *model) { gint frame, i, num_tokens; gint have_scan=FALSE; gchar **buff, **buff1, **tokens, line[LINELEN]; FILE *fp; fp = fopen(filename, "rt"); if (!fp) return(1); last_frame = FALSE; frame=0; /* defaults */ property_add_ranked(2, "Calculation", "Single Point", model); property_add_ranked(6, "Method", "HF", model); property_add_ranked(7, "Basis", "STO-3G", model); while (!fgetline(fp, line)) { /* find gaussian route section and store selected parameters in hash table */ if (g_ascii_strncasecmp(line, " #", 2) == 0) { /* Spaces, tabs, commas, or forward slashes can be used in any combination to separate items within a line. Multiple spaces are treated as a single delimiter. */ buff = tokenize((gchar *)(line) + 2, &num_tokens); for (i=0; ifilename, filename); g_free(model->basename); model->basename = parse_strip(filename); model->num_frames = model->cur_frame = frame; model->cur_frame--; model_prep(model); return(0); } gdis-0.90/zmatrix_pak.h0000644000175000017500000000242410445461565013544 0ustar seansean/* Copyright (C) 2000 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ struct zmat_pak { /* TODO - have 2 lists - the 1st includes the zval / variable format */ /* the second is the actual core_pak list subset - for easy updating */ gint fractional; gdouble distance_scale; gdouble angle_scale; gchar *distance_units; gchar *angle_units; GSList *zlines; GSList *zcores; GHashTable *vars; GHashTable *consts; }; struct zval_pak { gint type; gchar *elem; gint connect[3]; gint fitting[3]; gpointer name[3]; /* if NULL -> value only ie not a variable */ gdouble value[3]; }; gdis-0.90/README0000644000175000017500000000251507742452535011726 0ustar seanseanGDIS, Copyright (C) 2000-2003 by Sean Fleming sean@power.curtin.edu.au GDIS comes with ABSOLUTELY NO WARRANTY. This is free software. You are welcome to redistribute copies provided the conditions of the GPL (GNU Public License) are met. Although you are not required to do so, the author would consider it a courtesy if you submit to him any changes you consider to be worthwhile. The goal would be to keep the development of GDIS more or less centralized. Some cool features of GDIS are entirely due to the hard work that has gone into creating the following packages: 1. CDD for the computation of halfspace intersections (morphology display). (c) Komei Fukuda 2. GPeriodic for pretty Periodic Table display and editing. (c) 1999 Kyle R. Burton 3. SgInfo for Space Group generator lookup. (c) 1994-96 Ralf W. Grosse-Kunstleve 4. Brute force symmetry analyzer. (c) 1996 S. Pachkovsky Notes ----- There are a few optional packages that enhance the GDIS experience. 1. For rendering (and subsequent image viewing) you will need: - POVRay - ImageMagick (or an image viewer similar to 'display') 2. For rendered animations, you will need: - ImageMagick - mpeg2encode (if you want to output MPEG's) 3. For molecule minimization, you will need: - GULP 4. To load certain filetypes, such as PDB, you will need: - Babel gdis-0.90/step_backward.xpm0000644000175000017500000000406107737207625014405 0ustar seansean/* XPM */ static char * step_backward_xpm[] = { "24 24 91 1", " c None", ". c #D0D0D0", "+ c #909490", "@ c #B8BCB8", "# c #585C58", "$ c #303030", "% c #E0E4E0", "& c #B0B0B0", "* c #606060", "= c #505870", "- c #505050", "; c #202838", "> c #6B729B", ", c #283048", "' c #C8CCC8", ") c #686868", "! c #404450", "~ c #686C90", "{ c #8088B0", "] c #282C38", "^ c #797CA8", "/ c #303450", "( c #909090", "_ c #383C40", ": c #585C78", "< c #8084B0", "[ c #808CB8", "} c #888CB8", "| c #283040", "1 c #8083A8", "2 c #303850", "3 c #D8D8D8", "4 c #A8A8A8", "5 c #606468", "6 c #404458", "7 c #7078A0", "8 c #8890C0", "9 c #9094C0", "0 c #8894C0", "a c #8890B8", "b c #303040", "c c #868DAF", "d c #383C50", "e c #707478", "f c #484C60", "g c #9098C8", "h c #989CC8", "i c #989CD0", "j c #909CC8", "k c #303840", "l c #8D94B6", "m c #E0E0E0", "n c #888C88", "o c #484C50", "p c #505070", "q c #687098", "r c #8088B8", "s c #98A0D0", "t c #A0A4D0", "u c #383C48", "v c #A0A4A0", "w c #303440", "x c #606490", "y c #7078A8", "z c #98A0C8", "A c #384050", "B c #404858", "C c #687090", "D c #989898", "E c #585860", "F c #586078", "G c #8088A8", "H c #C8C8C8", "I c #808480", "J c #707890", "K c #7880B0", "L c #D8DCD8", "M c #B8B8B8", "N c #707078", "O c #505060", "P c #888CB0", "Q c #A8ACB0", "R c #505458", "S c #606070", "T c #8084A8", "U c #7880A8", "V c #D0D4D0", "W c #505058", "X c #485068", "Y c #404440", "Z c #A8ACA8", " ", " ", " ", " ", " .+@ #$$$# ", " %&*=- ;>>>, ", " %')!~{$ ]^^^/ ", " .(_:<[}$ |1112 ", " 34567890a$ bcccd ", " %@ef:{ghija$ klll6 ", " mnopqrstttsa$ u999u ", " vwxyrjzszzsa$ usssA ", " .#BC[gg0099r$ u999u ", " %DEFGz8rrr{$ ulllk ", " HIEJt8KK{$ dcccb ", " LMNOPay<$ 2111| ", " LQRSTU$ /^^^] ", " %VIWXY ,>>>; ", " %@)Z #$$$# ", " ", " ", " ", " ", " "}; gdis-0.90/undo.c0000644000175000017500000000525710556033543012154 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include "gdis.h" #include "coords.h" #include "interface.h" extern struct sysenv_pak sysenv; struct undo_pak { gint (*function) (gpointer, gpointer); GSList *pointers; }; /********************************/ /* initialize model's undo list */ /********************************/ void undo_init(struct model_pak *model) { model->undo_list = NULL; } /*************************************************/ /* removes all registered undo items for a model */ /*************************************************/ void undo_free(struct model_pak *model) { GSList *list; struct undo_pak *undo; g_assert(model != NULL); list = model->undo_list; while (list) { undo = list->data; list = g_slist_next(list); free_slist(undo->pointers); g_free(undo); } g_slist_free(model->undo_list); } /***********************************/ /* record an undo item for a model */ /***********************************/ void undo_register(struct model_pak *model, gpointer f, GSList *p) { struct undo_pak *undo; g_assert(model != NULL); undo = g_malloc(sizeof(struct undo_pak)); undo->function = f; undo->pointers = p; model->undo_list = g_slist_prepend(model->undo_list, undo); } /********************************************/ /* invoke the topmost undo item for a model */ /********************************************/ void undo_single(struct model_pak *model) { GSList *list; struct undo_pak *undo; if (!model) return; list = model->undo_list; if (list) { undo = list->data; g_assert(undo != NULL); if (undo->function) undo->function(model, undo->pointers); model->undo_list = g_slist_remove(model->undo_list, undo); } } /*************************************************/ /* undo most recent for the current active model */ /*************************************************/ void undo_active(void) { undo_single(sysenv.active_model); gui_refresh(GUI_CANVAS); } gdis-0.90/play.xpm0000644000175000017500000000347007743205067012537 0ustar seansean/* XPM */ static char * play_xpm[] = { "24 24 75 1", " c None", ". c #A8ACA8", "+ c #686868", "@ c #B8BCB8", "# c #E0E4E0", "$ c #404440", "% c #485068", "& c #505058", "* c #808480", "= c #D0D4D0", "- c #303030", "; c #7880A8", "> c #8084A8", ", c #606070", "' c #505458", ") c #A8ACB0", "! c #D8DCD8", "~ c #8084B0", "{ c #7078A8", "] c #8890B8", "^ c #888CB0", "/ c #505060", "( c #707078", "_ c #B8B8B8", ": c #8088B0", "< c #7880B0", "[ c #8890C0", "} c #A0A4D0", "| c #707890", "1 c #585860", "2 c #C8C8C8", "3 c #8088B8", "4 c #98A0C8", "5 c #8088A8", "6 c #586078", "7 c #989898", "8 c #9094C0", "9 c #8894C0", "0 c #9098C8", "a c #808CB8", "b c #687090", "c c #404858", "d c #585C58", "e c #D0D0D0", "f c #98A0D0", "g c #909CC8", "h c #606490", "i c #303440", "j c #A0A4A0", "k c #687098", "l c #505070", "m c #484C50", "n c #888C88", "o c #E0E0E0", "p c #989CD0", "q c #989CC8", "r c #585C78", "s c #484C60", "t c #707478", "u c #7078A0", "v c #404458", "w c #606468", "x c #A8A8A8", "y c #D8D8D8", "z c #888CB8", "A c #383C40", "B c #909090", "C c #686C90", "D c #404450", "E c #C8CCC8", "F c #505050", "G c #505870", "H c #606060", "I c #B0B0B0", "J c #909490", " ", " ", " ", " ", " ", " .+@# ", " $%&*=# ", " -;>,')! ", " -~{]^/(_! ", " -:<<[}|1*2 ", " -:333[45617# ", " -3889900abcde ", " -]f44f4g3{hij ", " -]f}}}f3klmno ", " -]gpq0:rst@# ", " -]98[uvwxy ", " -za~rABe ", " -:CD+E# ", " FGHI# ", " @Je ", " ", " ", " ", " "}; gdis-0.90/stderr.txt0000644000175000017500000001040511066566315013103 0ustar seanseancp butanol1_min.inp /jobfs/ng03/732077.beer/butanol1_min.F05 unset echo setenv ERICFMT /opt/gamess/20070324/ericfmt.dat setenv MCPPATH /opt/gamess/20070324/mcpdata setenv EXTBAS /dev/null setenv NUCBAS /dev/null setenv IRCDATA /jobfs/ng03/732077.beer/butanol1_min.irc setenv INPUT /jobfs/ng03/732077.beer/butanol1_min.F05 setenv PUNCH /jobfs/ng03/732077.beer/butanol1_min.dat setenv AOINTS /jobfs/ng03/732077.beer/butanol1_min.F08 setenv MOINTS /jobfs/ng03/732077.beer/butanol1_min.F09 setenv DICTNRY /jobfs/ng03/732077.beer/butanol1_min.F10 setenv DRTFILE /jobfs/ng03/732077.beer/butanol1_min.F11 setenv CIVECTR /jobfs/ng03/732077.beer/butanol1_min.F12 setenv CASINTS /jobfs/ng03/732077.beer/butanol1_min.F13 setenv CIINTS /jobfs/ng03/732077.beer/butanol1_min.F14 setenv WORK15 /jobfs/ng03/732077.beer/butanol1_min.F15 setenv WORK16 /jobfs/ng03/732077.beer/butanol1_min.F16 setenv CSFSAVE /jobfs/ng03/732077.beer/butanol1_min.F17 setenv FOCKDER /jobfs/ng03/732077.beer/butanol1_min.F18 setenv WORK19 /jobfs/ng03/732077.beer/butanol1_min.F19 setenv DASORT /jobfs/ng03/732077.beer/butanol1_min.F20 setenv DFTINTS /jobfs/ng03/732077.beer/butanol1_min.F21 setenv DFTGRID /jobfs/ng03/732077.beer/butanol1_min.F22 setenv JKFILE /jobfs/ng03/732077.beer/butanol1_min.F23 setenv ORDINT /jobfs/ng03/732077.beer/butanol1_min.F24 setenv EFPIND /jobfs/ng03/732077.beer/butanol1_min.F25 setenv PCMDATA /jobfs/ng03/732077.beer/butanol1_min.F26 setenv PCMINTS /jobfs/ng03/732077.beer/butanol1_min.F27 setenv SVPWRK1 /jobfs/ng03/732077.beer/butanol1_min.F26 setenv SVPWRK2 /jobfs/ng03/732077.beer/butanol1_min.F27 setenv MLTPL /jobfs/ng03/732077.beer/butanol1_min.F28 setenv MLTPLT /jobfs/ng03/732077.beer/butanol1_min.F29 setenv DAFL30 /jobfs/ng03/732077.beer/butanol1_min.F30 setenv SOINTX /jobfs/ng03/732077.beer/butanol1_min.F31 setenv SOINTY /jobfs/ng03/732077.beer/butanol1_min.F32 setenv SOINTZ /jobfs/ng03/732077.beer/butanol1_min.F33 setenv SORESC /jobfs/ng03/732077.beer/butanol1_min.F34 setenv SIMEN /jobfs/ng03/732077.beer/butanol1_min.simen setenv SIMCOR /jobfs/ng03/732077.beer/butanol1_min.simcor setenv GCILIST /jobfs/ng03/732077.beer/butanol1_min.F37 setenv HESSIAN /jobfs/ng03/732077.beer/butanol1_min.F38 setenv SOCCDAT /jobfs/ng03/732077.beer/butanol1_min.F40 setenv AABB41 /jobfs/ng03/732077.beer/butanol1_min.F41 setenv BBAA42 /jobfs/ng03/732077.beer/butanol1_min.F42 setenv BBBB43 /jobfs/ng03/732077.beer/butanol1_min.F43 setenv MCQD50 /jobfs/ng03/732077.beer/butanol1_min.F50 setenv MCQD51 /jobfs/ng03/732077.beer/butanol1_min.F51 setenv MCQD52 /jobfs/ng03/732077.beer/butanol1_min.F52 setenv MCQD53 /jobfs/ng03/732077.beer/butanol1_min.F53 setenv MCQD54 /jobfs/ng03/732077.beer/butanol1_min.F54 setenv MCQD55 /jobfs/ng03/732077.beer/butanol1_min.F55 setenv MCQD56 /jobfs/ng03/732077.beer/butanol1_min.F56 setenv MCQD57 /jobfs/ng03/732077.beer/butanol1_min.F57 setenv MCQD58 /jobfs/ng03/732077.beer/butanol1_min.F58 setenv MCQD59 /jobfs/ng03/732077.beer/butanol1_min.F59 setenv MCQD60 /jobfs/ng03/732077.beer/butanol1_min.F60 setenv MCQD61 /jobfs/ng03/732077.beer/butanol1_min.F61 setenv MCQD62 /jobfs/ng03/732077.beer/butanol1_min.F62 setenv MCQD63 /jobfs/ng03/732077.beer/butanol1_min.F63 setenv MCQD64 /jobfs/ng03/732077.beer/butanol1_min.F64 setenv NMRINT1 /jobfs/ng03/732077.beer/butanol1_min.F61 setenv NMRINT2 /jobfs/ng03/732077.beer/butanol1_min.F62 setenv NMRINT3 /jobfs/ng03/732077.beer/butanol1_min.F63 setenv NMRINT4 /jobfs/ng03/732077.beer/butanol1_min.F64 setenv NMRINT5 /jobfs/ng03/732077.beer/butanol1_min.F65 setenv NMRINT6 /jobfs/ng03/732077.beer/butanol1_min.F66 setenv DCPHFH2 /jobfs/ng03/732077.beer/butanol1_min.F67 setenv DCPHF21 /jobfs/ng03/732077.beer/butanol1_min.F68 setenv ELNUINT /jobfs/ng03/732077.beer/butanol1_min.F67 setenv NUNUINT /jobfs/ng03/732077.beer/butanol1_min.F68 setenv GVVPT /jobfs/ng03/732077.beer/butanol1_min.F69 setenv NUMOIN /jobfs/ng03/732077.beer/butanol1_min.F69 setenv NUMOCAS /jobfs/ng03/732077.beer/butanol1_min.F70 setenv NUELMO /jobfs/ng03/732077.beer/butanol1_min.F71 setenv NUELCAS /jobfs/ng03/732077.beer/butanol1_min.F72 setenv FCIINF /jobfs/ng03/732077.beer/butanol1_min.F90 setenv FCIINT /jobfs/ng03/732077.beer/butanol1_min.F91 unset echo /opt/gamess/20070324/bin/ddikick.x /opt/gamess/20070324/bin/gamess.24-Mar-2007.x butanol1_min -ddi 1 1 cognac:cpus=1 -scr /jobfs/ng03/732077.beer gdis-0.90/soapStub.h0000644000175000017500000024172711066571734013026 0ustar seansean/* soapStub.h Generated by gSOAP 2.7.9k from grisu_ws.h Copyright(C) 2000-2007, Robert van Engelen, Genivia Inc. All Rights Reserved. This part of the software is released under one of the following licenses: GPL, the gSOAP public license, or Genivia's license for commercial use. */ #ifndef soapStub_H #define soapStub_H #include "stdsoap2.h" #ifdef __cplusplus extern "C" { #endif /******************************************************************************\ * * * Enumerations * * * \******************************************************************************/ #ifndef SOAP_TYPE_xsd__boolean #define SOAP_TYPE_xsd__boolean (11) /* xsd:boolean */ enum xsd__boolean {xsd__boolean__false_ = 0, xsd__boolean__true_ = 1}; #endif /******************************************************************************\ * * * Classes and Structs * * * \******************************************************************************/ #ifndef SOAP_TYPE__xop__Include #define SOAP_TYPE__xop__Include (6) /* Base64 schema type: */ struct _xop__Include { unsigned char *__ptr; int __size; char *id; /* optional element of type xsd:string */ char *type; /* optional element of type xsd:string */ char *options; /* optional element of type xsd:string */ }; #endif #ifndef SOAP_TYPE_xsd__base64Binary #define SOAP_TYPE_xsd__base64Binary (10) /* Base64 schema type: */ struct xsd__base64Binary { unsigned char *__ptr; int __size; char *id; /* optional element of type xsd:string */ char *type; /* optional element of type xsd:string */ char *options; /* optional element of type xsd:string */ }; #endif #ifndef SOAP_TYPE_ns1__ArrayOfString #define SOAP_TYPE_ns1__ArrayOfString (12) /* ns1:ArrayOfString */ struct ns1__ArrayOfString { int __sizestring; /* sequence of elements */ char **string; /* optional element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__anyType2anyTypeMap_entry #define SOAP_TYPE__ns1__anyType2anyTypeMap_entry (15) /* ns1:anyType2anyTypeMap-entry */ struct _ns1__anyType2anyTypeMap_entry { char *key; /* optional element of type xsd:anyType */ char *value; /* optional element of type xsd:anyType */ }; #endif #ifndef SOAP_TYPE_ns1__anyType2anyTypeMap #define SOAP_TYPE_ns1__anyType2anyTypeMap (14) /* ns1:anyType2anyTypeMap */ struct ns1__anyType2anyTypeMap { int __sizeentry; /* sequence of elements */ struct _ns1__anyType2anyTypeMap_entry *entry; /* optional element of type ns1:anyType2anyTypeMap-entry */ }; #endif #ifndef SOAP_TYPE__ns1__getChildrenFiles #define SOAP_TYPE__ns1__getChildrenFiles (17) /* ns1:getChildrenFiles */ struct _ns1__getChildrenFiles { char *in0; /* required element of type xsd:string */ enum xsd__boolean in1; /* required element of type xsd:boolean */ }; #endif #ifndef SOAP_TYPE__ns1__getChildrenFilesResponse #define SOAP_TYPE__ns1__getChildrenFilesResponse (18) /* ns1:getChildrenFilesResponse */ struct _ns1__getChildrenFilesResponse { struct ns1__ArrayOfString *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__getJobFqan #define SOAP_TYPE__ns1__getJobFqan (20) /* ns1:getJobFqan */ struct _ns1__getJobFqan { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getJobFqanResponse #define SOAP_TYPE__ns1__getJobFqanResponse (21) /* ns1:getJobFqanResponse */ struct _ns1__getJobFqanResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__mount #define SOAP_TYPE__ns1__mount (22) /* ns1:mount */ struct _ns1__mount { char *in0; /* required element of type xsd:string */ char *in1; /* required element of type xsd:string */ enum xsd__boolean in2; /* required element of type xsd:boolean */ }; #endif #ifndef SOAP_TYPE__ns1__mountResponse #define SOAP_TYPE__ns1__mountResponse (23) /* ns1:mountResponse */ struct _ns1__mountResponse { struct ns3__MountPoint *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns3:MountPoint */ }; #endif #ifndef SOAP_TYPE__ns1__login #define SOAP_TYPE__ns1__login (26) /* ns1:login */ struct _ns1__login { char *in0; /* required element of type xsd:string */ struct ns1__ArrayOfString *in1; /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__loginResponse #define SOAP_TYPE__ns1__loginResponse (27) /* ns1:loginResponse */ struct _ns1__loginResponse { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__getTemplate #define SOAP_TYPE__ns1__getTemplate (28) /* ns1:getTemplate */ struct _ns1__getTemplate { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getTemplateResponse #define SOAP_TYPE__ns1__getTemplateResponse (29) /* ns1:getTemplateResponse */ struct _ns1__getTemplateResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:anyType */ }; #endif #ifndef SOAP_TYPE__ns1__getFqans #define SOAP_TYPE__ns1__getFqans (30) /* ns1:getFqans */ struct _ns1__getFqans { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__getFqansResponse #define SOAP_TYPE__ns1__getFqansResponse (31) /* ns1:getFqansResponse */ struct _ns1__getFqansResponse { struct ns1__ArrayOfString *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__df #define SOAP_TYPE__ns1__df (32) /* ns1:df */ struct _ns1__df { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__dfResponse #define SOAP_TYPE__ns1__dfResponse (33) /* ns1:dfResponse */ struct _ns1__dfResponse { struct ns3__ArrayOfMountPoint *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns3:ArrayOfMountPoint */ }; #endif #ifndef SOAP_TYPE__ns1__downloadByteArray #define SOAP_TYPE__ns1__downloadByteArray (36) /* ns1:downloadByteArray */ struct _ns1__downloadByteArray { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__downloadByteArrayResponse #define SOAP_TYPE__ns1__downloadByteArrayResponse (37) /* ns1:downloadByteArrayResponse */ struct _ns1__downloadByteArrayResponse { struct xsd__base64Binary *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:base64Binary */ }; #endif #ifndef SOAP_TYPE__ns1__getSubmissionLocationsForApplication2 #define SOAP_TYPE__ns1__getSubmissionLocationsForApplication2 (39) /* ns1:getSubmissionLocationsForApplication2 */ struct _ns1__getSubmissionLocationsForApplication2 { char *in0; /* required element of type xsd:string */ char *in1; /* required element of type xsd:string */ char *in2; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getSubmissionLocationsForApplication2Response #define SOAP_TYPE__ns1__getSubmissionLocationsForApplication2Response (40) /* ns1:getSubmissionLocationsForApplication2Response */ struct _ns1__getSubmissionLocationsForApplication2Response { struct ns1__ArrayOfString *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__ps #define SOAP_TYPE__ns1__ps (41) /* ns1:ps */ struct _ns1__ps { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__psResponse #define SOAP_TYPE__ns1__psResponse (42) /* ns1:psResponse */ struct _ns1__psResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:anyType */ }; #endif #ifndef SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocation #define SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocation (43) /* ns1:getStagingFileSystemForSubmissionLocation */ struct _ns1__getStagingFileSystemForSubmissionLocation { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocationResponse #define SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocationResponse (44) /* ns1:getStagingFileSystemForSubmissionLocationResponse */ struct _ns1__getStagingFileSystemForSubmissionLocationResponse { struct ns1__ArrayOfString *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__getUserProperty #define SOAP_TYPE__ns1__getUserProperty (45) /* ns1:getUserProperty */ struct _ns1__getUserProperty { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getUserPropertyResponse #define SOAP_TYPE__ns1__getUserPropertyResponse (46) /* ns1:getUserPropertyResponse */ struct _ns1__getUserPropertyResponse { struct ns1__ArrayOfString *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__mkdir #define SOAP_TYPE__ns1__mkdir (47) /* ns1:mkdir */ struct _ns1__mkdir { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__mkdirResponse #define SOAP_TYPE__ns1__mkdirResponse (48) /* ns1:mkdirResponse */ struct _ns1__mkdirResponse { enum xsd__boolean out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:boolean */ }; #endif #ifndef SOAP_TYPE__ns1__getDataLocationsForVO #define SOAP_TYPE__ns1__getDataLocationsForVO (49) /* ns1:getDataLocationsForVO */ struct _ns1__getDataLocationsForVO { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getDataLocationsForVOResponse #define SOAP_TYPE__ns1__getDataLocationsForVOResponse (50) /* ns1:getDataLocationsForVOResponse */ struct _ns1__getDataLocationsForVOResponse { struct ns1__anyType2anyTypeMap *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:anyType2anyTypeMap */ }; #endif #ifndef SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplication #define SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplication (52) /* ns1:getSubmissionLocationsPerVersionOfApplication */ struct _ns1__getSubmissionLocationsPerVersionOfApplication { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplicationResponse #define SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplicationResponse (53) /* ns1:getSubmissionLocationsPerVersionOfApplicationResponse */ struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse { struct ns1__anyType2anyTypeMap *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:anyType2anyTypeMap */ }; #endif #ifndef SOAP_TYPE__ns1__getTemplate1 #define SOAP_TYPE__ns1__getTemplate1 (54) /* ns1:getTemplate1 */ struct _ns1__getTemplate1 { char *in0; /* required element of type xsd:string */ char *in1; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getTemplate1Response #define SOAP_TYPE__ns1__getTemplate1Response (55) /* ns1:getTemplate1Response */ struct _ns1__getTemplate1Response { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:anyType */ }; #endif #ifndef SOAP_TYPE__ns1__downloadByteArray1 #define SOAP_TYPE__ns1__downloadByteArray1 (56) /* ns1:downloadByteArray1 */ struct _ns1__downloadByteArray1 { char *in0; /* required element of type xsd:string */ int in1; /* required element of type xsd:int */ int in2; /* required element of type xsd:int */ }; #endif #ifndef SOAP_TYPE__ns1__downloadByteArray1Response #define SOAP_TYPE__ns1__downloadByteArray1Response (57) /* ns1:downloadByteArray1Response */ struct _ns1__downloadByteArray1Response { struct xsd__base64Binary *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:base64Binary */ }; #endif #ifndef SOAP_TYPE__ns1__listHostedApplicationTemplates #define SOAP_TYPE__ns1__listHostedApplicationTemplates (58) /* ns1:listHostedApplicationTemplates */ struct _ns1__listHostedApplicationTemplates { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__listHostedApplicationTemplatesResponse #define SOAP_TYPE__ns1__listHostedApplicationTemplatesResponse (59) /* ns1:listHostedApplicationTemplatesResponse */ struct _ns1__listHostedApplicationTemplatesResponse { struct ns1__ArrayOfString *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__deleteFiles #define SOAP_TYPE__ns1__deleteFiles (60) /* ns1:deleteFiles */ struct _ns1__deleteFiles { struct ns1__ArrayOfString *in0; /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__deleteFilesResponse #define SOAP_TYPE__ns1__deleteFilesResponse (61) /* ns1:deleteFilesResponse */ struct _ns1__deleteFilesResponse { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__getMessagesSince #define SOAP_TYPE__ns1__getMessagesSince (62) /* ns1:getMessagesSince */ struct _ns1__getMessagesSince { time_t in0; /* required element of type xsd:dateTime */ }; #endif #ifndef SOAP_TYPE__ns1__getMessagesSinceResponse #define SOAP_TYPE__ns1__getMessagesSinceResponse (64) /* ns1:getMessagesSinceResponse */ struct _ns1__getMessagesSinceResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:anyType */ }; #endif #ifndef SOAP_TYPE__ns1__calculateAbsoluteJobDirectory #define SOAP_TYPE__ns1__calculateAbsoluteJobDirectory (65) /* ns1:calculateAbsoluteJobDirectory */ struct _ns1__calculateAbsoluteJobDirectory { char *in0; /* required element of type xsd:string */ char *in1; /* required element of type xsd:string */ char *in2; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__calculateAbsoluteJobDirectoryResponse #define SOAP_TYPE__ns1__calculateAbsoluteJobDirectoryResponse (66) /* ns1:calculateAbsoluteJobDirectoryResponse */ struct _ns1__calculateAbsoluteJobDirectoryResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__ls_USCOREstring #define SOAP_TYPE__ns1__ls_USCOREstring (67) /* ns1:ls_string */ struct _ns1__ls_USCOREstring { char *in0; /* required element of type xsd:string */ int in1; /* required element of type xsd:int */ enum xsd__boolean in2; /* required element of type xsd:boolean */ }; #endif #ifndef SOAP_TYPE__ns1__ls_USCOREstringResponse #define SOAP_TYPE__ns1__ls_USCOREstringResponse (68) /* ns1:ls_stringResponse */ struct _ns1__ls_USCOREstringResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getSubmissionLocationsForApplication1 #define SOAP_TYPE__ns1__getSubmissionLocationsForApplication1 (69) /* ns1:getSubmissionLocationsForApplication1 */ struct _ns1__getSubmissionLocationsForApplication1 { char *in0; /* required element of type xsd:string */ char *in1; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getSubmissionLocationsForApplication1Response #define SOAP_TYPE__ns1__getSubmissionLocationsForApplication1Response (70) /* ns1:getSubmissionLocationsForApplication1Response */ struct _ns1__getSubmissionLocationsForApplication1Response { struct ns1__ArrayOfString *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__getApplicationDetails #define SOAP_TYPE__ns1__getApplicationDetails (71) /* ns1:getApplicationDetails */ struct _ns1__getApplicationDetails { char *in0; /* required element of type xsd:string */ char *in1; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getApplicationDetailsResponse #define SOAP_TYPE__ns1__getApplicationDetailsResponse (72) /* ns1:getApplicationDetailsResponse */ struct _ns1__getApplicationDetailsResponse { struct ns1__anyType2anyTypeMap *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:anyType2anyTypeMap */ }; #endif #ifndef SOAP_TYPE__ns1__createJob1 #define SOAP_TYPE__ns1__createJob1 (73) /* ns1:createJob1 */ struct _ns1__createJob1 { char *in0; /* required element of type xsd:anyType */ int in1; /* required element of type xsd:int */ }; #endif #ifndef SOAP_TYPE__ns1__createJob1Response #define SOAP_TYPE__ns1__createJob1Response (74) /* ns1:createJob1Response */ struct _ns1__createJob1Response { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getSubmissionLocationsForApplication #define SOAP_TYPE__ns1__getSubmissionLocationsForApplication (75) /* ns1:getSubmissionLocationsForApplication */ struct _ns1__getSubmissionLocationsForApplication { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getSubmissionLocationsForApplicationResponse #define SOAP_TYPE__ns1__getSubmissionLocationsForApplicationResponse (76) /* ns1:getSubmissionLocationsForApplicationResponse */ struct _ns1__getSubmissionLocationsForApplicationResponse { struct ns1__ArrayOfString *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__getDN #define SOAP_TYPE__ns1__getDN (77) /* ns1:getDN */ struct _ns1__getDN { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__getDNResponse #define SOAP_TYPE__ns1__getDNResponse (78) /* ns1:getDNResponse */ struct _ns1__getDNResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getAllJobnames #define SOAP_TYPE__ns1__getAllJobnames (79) /* ns1:getAllJobnames */ struct _ns1__getAllJobnames { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__getAllJobnamesResponse #define SOAP_TYPE__ns1__getAllJobnamesResponse (80) /* ns1:getAllJobnamesResponse */ struct _ns1__getAllJobnamesResponse { struct ns1__ArrayOfString *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__getAllJobProperties #define SOAP_TYPE__ns1__getAllJobProperties (81) /* ns1:getAllJobProperties */ struct _ns1__getAllJobProperties { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getAllJobPropertiesResponse #define SOAP_TYPE__ns1__getAllJobPropertiesResponse (82) /* ns1:getAllJobPropertiesResponse */ struct _ns1__getAllJobPropertiesResponse { struct ns1__anyType2anyTypeMap *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:anyType2anyTypeMap */ }; #endif #ifndef SOAP_TYPE__ns1__download #define SOAP_TYPE__ns1__download (83) /* ns1:download */ struct _ns1__download { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__downloadResponse #define SOAP_TYPE__ns1__downloadResponse (84) /* ns1:downloadResponse */ struct _ns1__downloadResponse { struct xsd__base64Binary *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:base64Binary */ }; #endif #ifndef SOAP_TYPE__ns1__isFolder #define SOAP_TYPE__ns1__isFolder (85) /* ns1:isFolder */ struct _ns1__isFolder { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__isFolderResponse #define SOAP_TYPE__ns1__isFolderResponse (86) /* ns1:isFolderResponse */ struct _ns1__isFolderResponse { enum xsd__boolean out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:boolean */ }; #endif #ifndef SOAP_TYPE__ns1__kill #define SOAP_TYPE__ns1__kill (87) /* ns1:kill */ struct _ns1__kill { char *in0; /* required element of type xsd:string */ enum xsd__boolean in1; /* required element of type xsd:boolean */ }; #endif #ifndef SOAP_TYPE__ns1__killResponse #define SOAP_TYPE__ns1__killResponse (88) /* ns1:killResponse */ struct _ns1__killResponse { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__getAllAvailableApplications #define SOAP_TYPE__ns1__getAllAvailableApplications (89) /* ns1:getAllAvailableApplications */ struct _ns1__getAllAvailableApplications { struct ns1__ArrayOfString *in0; /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__getAllAvailableApplicationsResponse #define SOAP_TYPE__ns1__getAllAvailableApplicationsResponse (90) /* ns1:getAllAvailableApplicationsResponse */ struct _ns1__getAllAvailableApplicationsResponse { struct ns1__ArrayOfString *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__addJobProperties #define SOAP_TYPE__ns1__addJobProperties (91) /* ns1:addJobProperties */ struct _ns1__addJobProperties { char *in0; /* required element of type xsd:string */ struct ns1__anyType2anyTypeMap *in1; /* required element of type ns1:anyType2anyTypeMap */ }; #endif #ifndef SOAP_TYPE__ns1__addJobPropertiesResponse #define SOAP_TYPE__ns1__addJobPropertiesResponse (92) /* ns1:addJobPropertiesResponse */ struct _ns1__addJobPropertiesResponse { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__addJobProperty #define SOAP_TYPE__ns1__addJobProperty (93) /* ns1:addJobProperty */ struct _ns1__addJobProperty { char *in0; /* required element of type xsd:string */ char *in1; /* required element of type xsd:string */ char *in2; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__addJobPropertyResponse #define SOAP_TYPE__ns1__addJobPropertyResponse (94) /* ns1:addJobPropertyResponse */ struct _ns1__addJobPropertyResponse { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__getAllSubmissionLocations #define SOAP_TYPE__ns1__getAllSubmissionLocations (95) /* ns1:getAllSubmissionLocations */ struct _ns1__getAllSubmissionLocations { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__getAllSubmissionLocationsResponse #define SOAP_TYPE__ns1__getAllSubmissionLocationsResponse (96) /* ns1:getAllSubmissionLocationsResponse */ struct _ns1__getAllSubmissionLocationsResponse { struct ns1__ArrayOfString *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__getInterfaceVersion #define SOAP_TYPE__ns1__getInterfaceVersion (97) /* ns1:getInterfaceVersion */ struct _ns1__getInterfaceVersion { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__getInterfaceVersionResponse #define SOAP_TYPE__ns1__getInterfaceVersionResponse (98) /* ns1:getInterfaceVersionResponse */ struct _ns1__getInterfaceVersionResponse { double out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:double */ }; #endif #ifndef SOAP_TYPE__ns1__createJob #define SOAP_TYPE__ns1__createJob (100) /* ns1:createJob */ struct _ns1__createJob { char *in0; /* required element of type xsd:string */ int in1; /* required element of type xsd:int */ }; #endif #ifndef SOAP_TYPE__ns1__createJobResponse #define SOAP_TYPE__ns1__createJobResponse (101) /* ns1:createJobResponse */ struct _ns1__createJobResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getAllSubmissionLocations1 #define SOAP_TYPE__ns1__getAllSubmissionLocations1 (102) /* ns1:getAllSubmissionLocations1 */ struct _ns1__getAllSubmissionLocations1 { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getAllSubmissionLocations1Response #define SOAP_TYPE__ns1__getAllSubmissionLocations1Response (103) /* ns1:getAllSubmissionLocations1Response */ struct _ns1__getAllSubmissionLocations1Response { struct ns1__ArrayOfString *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__getVersionsOfApplicationOnSite #define SOAP_TYPE__ns1__getVersionsOfApplicationOnSite (104) /* ns1:getVersionsOfApplicationOnSite */ struct _ns1__getVersionsOfApplicationOnSite { char *in0; /* required element of type xsd:string */ char *in1; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getVersionsOfApplicationOnSiteResponse #define SOAP_TYPE__ns1__getVersionsOfApplicationOnSiteResponse (105) /* ns1:getVersionsOfApplicationOnSiteResponse */ struct _ns1__getVersionsOfApplicationOnSiteResponse { struct ns1__ArrayOfString *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__uploadByteArray1 #define SOAP_TYPE__ns1__uploadByteArray1 (106) /* ns1:uploadByteArray1 */ struct _ns1__uploadByteArray1 { struct xsd__base64Binary *in0; /* required element of type xsd:base64Binary */ char *in1; /* required element of type xsd:string */ enum xsd__boolean in2; /* required element of type xsd:boolean */ int in3; /* required element of type xsd:int */ int in4; /* required element of type xsd:int */ }; #endif #ifndef SOAP_TYPE__ns1__uploadByteArray1Response #define SOAP_TYPE__ns1__uploadByteArray1Response (107) /* ns1:uploadByteArray1Response */ struct _ns1__uploadByteArray1Response { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__ps_USCOREstring #define SOAP_TYPE__ns1__ps_USCOREstring (108) /* ns1:ps_string */ struct _ns1__ps_USCOREstring { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__ps_USCOREstringResponse #define SOAP_TYPE__ns1__ps_USCOREstringResponse (109) /* ns1:ps_stringResponse */ struct _ns1__ps_USCOREstringResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getSite #define SOAP_TYPE__ns1__getSite (110) /* ns1:getSite */ struct _ns1__getSite { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getSiteResponse #define SOAP_TYPE__ns1__getSiteResponse (111) /* ns1:getSiteResponse */ struct _ns1__getSiteResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__lastModified #define SOAP_TYPE__ns1__lastModified (112) /* ns1:lastModified */ struct _ns1__lastModified { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__lastModifiedResponse #define SOAP_TYPE__ns1__lastModifiedResponse (113) /* ns1:lastModifiedResponse */ struct _ns1__lastModifiedResponse { LONG64 out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:long */ }; #endif #ifndef SOAP_TYPE__ns1__ls #define SOAP_TYPE__ns1__ls (115) /* ns1:ls */ struct _ns1__ls { char *in0; /* required element of type xsd:string */ int in1; /* required element of type xsd:int */ enum xsd__boolean in2; /* required element of type xsd:boolean */ }; #endif #ifndef SOAP_TYPE__ns1__lsResponse #define SOAP_TYPE__ns1__lsResponse (116) /* ns1:lsResponse */ struct _ns1__lsResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:anyType */ }; #endif #ifndef SOAP_TYPE__ns1__getApplicationDetails1 #define SOAP_TYPE__ns1__getApplicationDetails1 (117) /* ns1:getApplicationDetails1 */ struct _ns1__getApplicationDetails1 { char *in0; /* required element of type xsd:string */ char *in1; /* required element of type xsd:string */ char *in2; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getApplicationDetails1Response #define SOAP_TYPE__ns1__getApplicationDetails1Response (118) /* ns1:getApplicationDetails1Response */ struct _ns1__getApplicationDetails1Response { struct ns1__anyType2anyTypeMap *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:anyType2anyTypeMap */ }; #endif #ifndef SOAP_TYPE__ns1__calculateRelativeJobDirectory #define SOAP_TYPE__ns1__calculateRelativeJobDirectory (119) /* ns1:calculateRelativeJobDirectory */ struct _ns1__calculateRelativeJobDirectory { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__calculateRelativeJobDirectoryResponse #define SOAP_TYPE__ns1__calculateRelativeJobDirectoryResponse (120) /* ns1:calculateRelativeJobDirectoryResponse */ struct _ns1__calculateRelativeJobDirectoryResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__setJobDescription_USCOREstring #define SOAP_TYPE__ns1__setJobDescription_USCOREstring (121) /* ns1:setJobDescription_string */ struct _ns1__setJobDescription_USCOREstring { char *in0; /* required element of type xsd:string */ char *in1; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__setJobDescription_USCOREstringResponse #define SOAP_TYPE__ns1__setJobDescription_USCOREstringResponse (122) /* ns1:setJobDescription_stringResponse */ struct _ns1__setJobDescription_USCOREstringResponse { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__logout #define SOAP_TYPE__ns1__logout (123) /* ns1:logout */ struct _ns1__logout { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__logoutResponse #define SOAP_TYPE__ns1__logoutResponse (124) /* ns1:logoutResponse */ struct _ns1__logoutResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__submitJob #define SOAP_TYPE__ns1__submitJob (125) /* ns1:submitJob */ struct _ns1__submitJob { char *in0; /* required element of type xsd:string */ char *in1; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__submitJobResponse #define SOAP_TYPE__ns1__submitJobResponse (126) /* ns1:submitJobResponse */ struct _ns1__submitJobResponse { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__uploadByteArray #define SOAP_TYPE__ns1__uploadByteArray (127) /* ns1:uploadByteArray */ struct _ns1__uploadByteArray { struct xsd__base64Binary *in0; /* required element of type xsd:base64Binary */ char *in1; /* required element of type xsd:string */ enum xsd__boolean in2; /* required element of type xsd:boolean */ }; #endif #ifndef SOAP_TYPE__ns1__uploadByteArrayResponse #define SOAP_TYPE__ns1__uploadByteArrayResponse (128) /* ns1:uploadByteArrayResponse */ struct _ns1__uploadByteArrayResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__cp #define SOAP_TYPE__ns1__cp (129) /* ns1:cp */ struct _ns1__cp { char *in0; /* required element of type xsd:string */ char *in1; /* required element of type xsd:string */ enum xsd__boolean in2; /* required element of type xsd:boolean */ enum xsd__boolean in3; /* required element of type xsd:boolean */ }; #endif #ifndef SOAP_TYPE__ns1__cpResponse #define SOAP_TYPE__ns1__cpResponse (130) /* ns1:cpResponse */ struct _ns1__cpResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getFileSize #define SOAP_TYPE__ns1__getFileSize (131) /* ns1:getFileSize */ struct _ns1__getFileSize { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getFileSizeResponse #define SOAP_TYPE__ns1__getFileSizeResponse (132) /* ns1:getFileSizeResponse */ struct _ns1__getFileSizeResponse { LONG64 out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:long */ }; #endif #ifndef SOAP_TYPE__ns1__deleteFile #define SOAP_TYPE__ns1__deleteFile (133) /* ns1:deleteFile */ struct _ns1__deleteFile { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__deleteFileResponse #define SOAP_TYPE__ns1__deleteFileResponse (134) /* ns1:deleteFileResponse */ struct _ns1__deleteFileResponse { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__upload #define SOAP_TYPE__ns1__upload (135) /* ns1:upload */ struct _ns1__upload { struct xsd__base64Binary *in0; /* required element of type xsd:base64Binary */ char *in1; /* required element of type xsd:string */ enum xsd__boolean in2; /* required element of type xsd:boolean */ }; #endif #ifndef SOAP_TYPE__ns1__uploadResponse #define SOAP_TYPE__ns1__uploadResponse (136) /* ns1:uploadResponse */ struct _ns1__uploadResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getJobDirectory #define SOAP_TYPE__ns1__getJobDirectory (137) /* ns1:getJobDirectory */ struct _ns1__getJobDirectory { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getJobDirectoryResponse #define SOAP_TYPE__ns1__getJobDirectoryResponse (138) /* ns1:getJobDirectoryResponse */ struct _ns1__getJobDirectoryResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__setJobDescription #define SOAP_TYPE__ns1__setJobDescription (139) /* ns1:setJobDescription */ struct _ns1__setJobDescription { char *in0; /* required element of type xsd:string */ char *in1; /* required element of type xsd:anyType */ }; #endif #ifndef SOAP_TYPE__ns1__setJobDescriptionResponse #define SOAP_TYPE__ns1__setJobDescriptionResponse (140) /* ns1:setJobDescriptionResponse */ struct _ns1__setJobDescriptionResponse { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__getAllSites #define SOAP_TYPE__ns1__getAllSites (141) /* ns1:getAllSites */ struct _ns1__getAllSites { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__getAllSitesResponse #define SOAP_TYPE__ns1__getAllSitesResponse (142) /* ns1:getAllSitesResponse */ struct _ns1__getAllSitesResponse { struct ns1__ArrayOfString *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:ArrayOfString */ }; #endif #ifndef SOAP_TYPE__ns1__getJobDetails_USCOREstring #define SOAP_TYPE__ns1__getJobDetails_USCOREstring (143) /* ns1:getJobDetails_string */ struct _ns1__getJobDetails_USCOREstring { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getJobDetails_USCOREstringResponse #define SOAP_TYPE__ns1__getJobDetails_USCOREstringResponse (144) /* ns1:getJobDetails_stringResponse */ struct _ns1__getJobDetails_USCOREstringResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getJobStatus #define SOAP_TYPE__ns1__getJobStatus (145) /* ns1:getJobStatus */ struct _ns1__getJobStatus { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getJobStatusResponse #define SOAP_TYPE__ns1__getJobStatusResponse (146) /* ns1:getJobStatusResponse */ struct _ns1__getJobStatusResponse { int out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ }; #endif #ifndef SOAP_TYPE__ns1__umount #define SOAP_TYPE__ns1__umount (147) /* ns1:umount */ struct _ns1__umount { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__umountResponse #define SOAP_TYPE__ns1__umountResponse (148) /* ns1:umountResponse */ struct _ns1__umountResponse { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__getJobDetails #define SOAP_TYPE__ns1__getJobDetails (149) /* ns1:getJobDetails */ struct _ns1__getJobDetails { char *in0; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getJobDetailsResponse #define SOAP_TYPE__ns1__getJobDetailsResponse (150) /* ns1:getJobDetailsResponse */ struct _ns1__getJobDetailsResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:anyType */ }; #endif #ifndef SOAP_TYPE__ns1__mount1 #define SOAP_TYPE__ns1__mount1 (151) /* ns1:mount1 */ struct _ns1__mount1 { char *in0; /* required element of type xsd:string */ char *in1; /* required element of type xsd:string */ char *in2; /* required element of type xsd:string */ enum xsd__boolean in3; /* required element of type xsd:boolean */ }; #endif #ifndef SOAP_TYPE__ns1__mount1Response #define SOAP_TYPE__ns1__mount1Response (152) /* ns1:mount1Response */ struct _ns1__mount1Response { struct ns3__MountPoint *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns3:MountPoint */ }; #endif #ifndef SOAP_TYPE__ns1__getJobProperty #define SOAP_TYPE__ns1__getJobProperty (153) /* ns1:getJobProperty */ struct _ns1__getJobProperty { char *in0; /* required element of type xsd:string */ char *in1; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__getJobPropertyResponse #define SOAP_TYPE__ns1__getJobPropertyResponse (154) /* ns1:getJobPropertyResponse */ struct _ns1__getJobPropertyResponse { char *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__submitSupportRequest #define SOAP_TYPE__ns1__submitSupportRequest (155) /* ns1:submitSupportRequest */ struct _ns1__submitSupportRequest { char *in0; /* required element of type xsd:string */ char *in1; /* required element of type xsd:string */ }; #endif #ifndef SOAP_TYPE__ns1__submitSupportRequestResponse #define SOAP_TYPE__ns1__submitSupportRequestResponse (156) /* ns1:submitSupportRequestResponse */ struct _ns1__submitSupportRequestResponse { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__getAllHosts #define SOAP_TYPE__ns1__getAllHosts (157) /* ns1:getAllHosts */ struct _ns1__getAllHosts { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE__ns1__getAllHostsResponse #define SOAP_TYPE__ns1__getAllHostsResponse (158) /* ns1:getAllHostsResponse */ struct _ns1__getAllHostsResponse { struct ns1__anyType2anyTypeMap *out; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type ns1:anyType2anyTypeMap */ }; #endif #ifndef SOAP_TYPE_ns2__VomsException #define SOAP_TYPE_ns2__VomsException (159) /* ns2:VomsException */ struct ns2__VomsException { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE_ns2__RemoteFileSystemException #define SOAP_TYPE_ns2__RemoteFileSystemException (160) /* ns2:RemoteFileSystemException */ struct ns2__RemoteFileSystemException { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE_ns2__NoSuchJobException #define SOAP_TYPE_ns2__NoSuchJobException (161) /* ns2:NoSuchJobException */ struct ns2__NoSuchJobException { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE_ns2__NoValidCredentialException #define SOAP_TYPE_ns2__NoValidCredentialException (162) /* ns2:NoValidCredentialException */ struct ns2__NoValidCredentialException { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE_ns2__NoSuchTemplateException #define SOAP_TYPE_ns2__NoSuchTemplateException (163) /* ns2:NoSuchTemplateException */ struct ns2__NoSuchTemplateException { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE_ns2__JobDescriptionNotValidException #define SOAP_TYPE_ns2__JobDescriptionNotValidException (164) /* ns2:JobDescriptionNotValidException */ struct ns2__JobDescriptionNotValidException { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE_ns2__JobSubmissionException #define SOAP_TYPE_ns2__JobSubmissionException (165) /* ns2:JobSubmissionException */ struct ns2__JobSubmissionException { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE_ns3__MountPoint #define SOAP_TYPE_ns3__MountPoint (24) /* ns3:MountPoint */ struct ns3__MountPoint { enum xsd__boolean *automaticallyMounted; /* optional element of type xsd:boolean */ enum xsd__boolean *disabled; /* optional element of type xsd:boolean */ char *dn; /* optional element of type xsd:string */ char *fqan; /* optional element of type xsd:string */ LONG64 *mountPointId; /* optional element of type xsd:long */ char *mountpoint; /* optional element of type xsd:string */ char *rootUrl; /* optional element of type xsd:string */ }; #endif #ifndef SOAP_TYPE_ns3__ArrayOfMountPoint #define SOAP_TYPE_ns3__ArrayOfMountPoint (34) /* ns3:ArrayOfMountPoint */ struct ns3__ArrayOfMountPoint { int __sizeMountPoint; /* sequence of elements */ struct ns3__MountPoint *MountPoint; /* optional element of type ns3:MountPoint */ }; #endif #ifndef SOAP_TYPE_ns4__JobCreationException #define SOAP_TYPE_ns4__JobCreationException (168) /* ns4:JobCreationException */ struct ns4__JobCreationException { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif }; #endif #ifndef SOAP_TYPE_SOAP_ENV__Detail #define SOAP_TYPE_SOAP_ENV__Detail (169) /* SOAP-ENV:Detail */ struct SOAP_ENV__Detail { struct ns4__JobCreationException *ns1__JobCreationException; /* optional element of type ns4:JobCreationException */ struct ns2__JobDescriptionNotValidException *ns1__JobDescriptionNotValidException; /* optional element of type ns2:JobDescriptionNotValidException */ struct ns2__JobSubmissionException *ns1__JobSubmissionException; /* optional element of type ns2:JobSubmissionException */ struct ns2__NoSuchJobException *ns1__NoSuchJobException; /* optional element of type ns2:NoSuchJobException */ struct ns2__NoSuchTemplateException *ns1__NoSuchTemplateException; /* optional element of type ns2:NoSuchTemplateException */ struct ns2__NoValidCredentialException *ns1__NoValidCredentialException; /* optional element of type ns2:NoValidCredentialException */ struct ns2__RemoteFileSystemException *ns1__RemoteFileSystemException; /* optional element of type ns2:RemoteFileSystemException */ struct ns2__VomsException *ns1__VomsException; /* optional element of type ns2:VomsException */ int __type; /* any type of element (defined below) */ void *fault; /* transient */ char *__any; }; #endif #ifndef SOAP_TYPE___ns1__getChildrenFiles #define SOAP_TYPE___ns1__getChildrenFiles (183) /* Operation wrapper: */ struct __ns1__getChildrenFiles { struct _ns1__getChildrenFiles *ns1__getChildrenFiles; /* optional element of type ns1:getChildrenFiles */ }; #endif #ifndef SOAP_TYPE___ns1__getJobFqan #define SOAP_TYPE___ns1__getJobFqan (187) /* Operation wrapper: */ struct __ns1__getJobFqan { struct _ns1__getJobFqan *ns1__getJobFqan; /* optional element of type ns1:getJobFqan */ }; #endif #ifndef SOAP_TYPE___ns1__mount #define SOAP_TYPE___ns1__mount (191) /* Operation wrapper: */ struct __ns1__mount { struct _ns1__mount *ns1__mount; /* optional element of type ns1:mount */ }; #endif #ifndef SOAP_TYPE___ns1__login #define SOAP_TYPE___ns1__login (195) /* Operation wrapper: */ struct __ns1__login { struct _ns1__login *ns1__login; /* optional element of type ns1:login */ }; #endif #ifndef SOAP_TYPE___ns1__getTemplate #define SOAP_TYPE___ns1__getTemplate (199) /* Operation wrapper: */ struct __ns1__getTemplate { struct _ns1__getTemplate *ns1__getTemplate; /* optional element of type ns1:getTemplate */ }; #endif #ifndef SOAP_TYPE___ns1__getFqans #define SOAP_TYPE___ns1__getFqans (203) /* Operation wrapper: */ struct __ns1__getFqans { struct _ns1__getFqans *ns1__getFqans; /* optional element of type ns1:getFqans */ }; #endif #ifndef SOAP_TYPE___ns1__df #define SOAP_TYPE___ns1__df (207) /* Operation wrapper: */ struct __ns1__df { struct _ns1__df *ns1__df; /* optional element of type ns1:df */ }; #endif #ifndef SOAP_TYPE___ns1__downloadByteArray #define SOAP_TYPE___ns1__downloadByteArray (211) /* Operation wrapper: */ struct __ns1__downloadByteArray { struct _ns1__downloadByteArray *ns1__downloadByteArray; /* optional element of type ns1:downloadByteArray */ }; #endif #ifndef SOAP_TYPE___ns1__getSubmissionLocationsForApplication2 #define SOAP_TYPE___ns1__getSubmissionLocationsForApplication2 (215) /* Operation wrapper: */ struct __ns1__getSubmissionLocationsForApplication2 { struct _ns1__getSubmissionLocationsForApplication2 *ns1__getSubmissionLocationsForApplication2; /* optional element of type ns1:getSubmissionLocationsForApplication2 */ }; #endif #ifndef SOAP_TYPE___ns1__ps #define SOAP_TYPE___ns1__ps (219) /* Operation wrapper: */ struct __ns1__ps { struct _ns1__ps *ns1__ps; /* optional element of type ns1:ps */ }; #endif #ifndef SOAP_TYPE___ns1__getStagingFileSystemForSubmissionLocation #define SOAP_TYPE___ns1__getStagingFileSystemForSubmissionLocation (223) /* Operation wrapper: */ struct __ns1__getStagingFileSystemForSubmissionLocation { struct _ns1__getStagingFileSystemForSubmissionLocation *ns1__getStagingFileSystemForSubmissionLocation; /* optional element of type ns1:getStagingFileSystemForSubmissionLocation */ }; #endif #ifndef SOAP_TYPE___ns1__getUserProperty #define SOAP_TYPE___ns1__getUserProperty (227) /* Operation wrapper: */ struct __ns1__getUserProperty { struct _ns1__getUserProperty *ns1__getUserProperty; /* optional element of type ns1:getUserProperty */ }; #endif #ifndef SOAP_TYPE___ns1__mkdir #define SOAP_TYPE___ns1__mkdir (231) /* Operation wrapper: */ struct __ns1__mkdir { struct _ns1__mkdir *ns1__mkdir; /* optional element of type ns1:mkdir */ }; #endif #ifndef SOAP_TYPE___ns1__getDataLocationsForVO #define SOAP_TYPE___ns1__getDataLocationsForVO (235) /* Operation wrapper: */ struct __ns1__getDataLocationsForVO { struct _ns1__getDataLocationsForVO *ns1__getDataLocationsForVO; /* optional element of type ns1:getDataLocationsForVO */ }; #endif #ifndef SOAP_TYPE___ns1__getSubmissionLocationsPerVersionOfApplication #define SOAP_TYPE___ns1__getSubmissionLocationsPerVersionOfApplication (239) /* Operation wrapper: */ struct __ns1__getSubmissionLocationsPerVersionOfApplication { struct _ns1__getSubmissionLocationsPerVersionOfApplication *ns1__getSubmissionLocationsPerVersionOfApplication; /* optional element of type ns1:getSubmissionLocationsPerVersionOfApplication */ }; #endif #ifndef SOAP_TYPE___ns1__getTemplate1 #define SOAP_TYPE___ns1__getTemplate1 (243) /* Operation wrapper: */ struct __ns1__getTemplate1 { struct _ns1__getTemplate1 *ns1__getTemplate1; /* optional element of type ns1:getTemplate1 */ }; #endif #ifndef SOAP_TYPE___ns1__downloadByteArray1 #define SOAP_TYPE___ns1__downloadByteArray1 (247) /* Operation wrapper: */ struct __ns1__downloadByteArray1 { struct _ns1__downloadByteArray1 *ns1__downloadByteArray1; /* optional element of type ns1:downloadByteArray1 */ }; #endif #ifndef SOAP_TYPE___ns1__listHostedApplicationTemplates #define SOAP_TYPE___ns1__listHostedApplicationTemplates (251) /* Operation wrapper: */ struct __ns1__listHostedApplicationTemplates { struct _ns1__listHostedApplicationTemplates *ns1__listHostedApplicationTemplates; /* optional element of type ns1:listHostedApplicationTemplates */ }; #endif #ifndef SOAP_TYPE___ns1__deleteFiles #define SOAP_TYPE___ns1__deleteFiles (255) /* Operation wrapper: */ struct __ns1__deleteFiles { struct _ns1__deleteFiles *ns1__deleteFiles; /* optional element of type ns1:deleteFiles */ }; #endif #ifndef SOAP_TYPE___ns1__getMessagesSince #define SOAP_TYPE___ns1__getMessagesSince (259) /* Operation wrapper: */ struct __ns1__getMessagesSince { struct _ns1__getMessagesSince *ns1__getMessagesSince; /* optional element of type ns1:getMessagesSince */ }; #endif #ifndef SOAP_TYPE___ns1__calculateAbsoluteJobDirectory #define SOAP_TYPE___ns1__calculateAbsoluteJobDirectory (263) /* Operation wrapper: */ struct __ns1__calculateAbsoluteJobDirectory { struct _ns1__calculateAbsoluteJobDirectory *ns1__calculateAbsoluteJobDirectory; /* optional element of type ns1:calculateAbsoluteJobDirectory */ }; #endif #ifndef SOAP_TYPE___ns1__ls_USCOREstring #define SOAP_TYPE___ns1__ls_USCOREstring (267) /* Operation wrapper: */ struct __ns1__ls_USCOREstring { struct _ns1__ls_USCOREstring *ns1__ls_USCOREstring; /* optional element of type ns1:ls_string */ }; #endif #ifndef SOAP_TYPE___ns1__getSubmissionLocationsForApplication1 #define SOAP_TYPE___ns1__getSubmissionLocationsForApplication1 (271) /* Operation wrapper: */ struct __ns1__getSubmissionLocationsForApplication1 { struct _ns1__getSubmissionLocationsForApplication1 *ns1__getSubmissionLocationsForApplication1; /* optional element of type ns1:getSubmissionLocationsForApplication1 */ }; #endif #ifndef SOAP_TYPE___ns1__getApplicationDetails #define SOAP_TYPE___ns1__getApplicationDetails (275) /* Operation wrapper: */ struct __ns1__getApplicationDetails { struct _ns1__getApplicationDetails *ns1__getApplicationDetails; /* optional element of type ns1:getApplicationDetails */ }; #endif #ifndef SOAP_TYPE___ns1__createJob1 #define SOAP_TYPE___ns1__createJob1 (279) /* Operation wrapper: */ struct __ns1__createJob1 { struct _ns1__createJob1 *ns1__createJob1; /* optional element of type ns1:createJob1 */ }; #endif #ifndef SOAP_TYPE___ns1__getSubmissionLocationsForApplication #define SOAP_TYPE___ns1__getSubmissionLocationsForApplication (283) /* Operation wrapper: */ struct __ns1__getSubmissionLocationsForApplication { struct _ns1__getSubmissionLocationsForApplication *ns1__getSubmissionLocationsForApplication; /* optional element of type ns1:getSubmissionLocationsForApplication */ }; #endif #ifndef SOAP_TYPE___ns1__getDN #define SOAP_TYPE___ns1__getDN (287) /* Operation wrapper: */ struct __ns1__getDN { struct _ns1__getDN *ns1__getDN; /* optional element of type ns1:getDN */ }; #endif #ifndef SOAP_TYPE___ns1__getAllJobnames #define SOAP_TYPE___ns1__getAllJobnames (291) /* Operation wrapper: */ struct __ns1__getAllJobnames { struct _ns1__getAllJobnames *ns1__getAllJobnames; /* optional element of type ns1:getAllJobnames */ }; #endif #ifndef SOAP_TYPE___ns1__getAllJobProperties #define SOAP_TYPE___ns1__getAllJobProperties (295) /* Operation wrapper: */ struct __ns1__getAllJobProperties { struct _ns1__getAllJobProperties *ns1__getAllJobProperties; /* optional element of type ns1:getAllJobProperties */ }; #endif #ifndef SOAP_TYPE___ns1__download #define SOAP_TYPE___ns1__download (299) /* Operation wrapper: */ struct __ns1__download { struct _ns1__download *ns1__download; /* optional element of type ns1:download */ }; #endif #ifndef SOAP_TYPE___ns1__isFolder #define SOAP_TYPE___ns1__isFolder (303) /* Operation wrapper: */ struct __ns1__isFolder { struct _ns1__isFolder *ns1__isFolder; /* optional element of type ns1:isFolder */ }; #endif #ifndef SOAP_TYPE___ns1__kill #define SOAP_TYPE___ns1__kill (307) /* Operation wrapper: */ struct __ns1__kill { struct _ns1__kill *ns1__kill; /* optional element of type ns1:kill */ }; #endif #ifndef SOAP_TYPE___ns1__getAllAvailableApplications #define SOAP_TYPE___ns1__getAllAvailableApplications (311) /* Operation wrapper: */ struct __ns1__getAllAvailableApplications { struct _ns1__getAllAvailableApplications *ns1__getAllAvailableApplications; /* optional element of type ns1:getAllAvailableApplications */ }; #endif #ifndef SOAP_TYPE___ns1__addJobProperties #define SOAP_TYPE___ns1__addJobProperties (315) /* Operation wrapper: */ struct __ns1__addJobProperties { struct _ns1__addJobProperties *ns1__addJobProperties; /* optional element of type ns1:addJobProperties */ }; #endif #ifndef SOAP_TYPE___ns1__addJobProperty #define SOAP_TYPE___ns1__addJobProperty (319) /* Operation wrapper: */ struct __ns1__addJobProperty { struct _ns1__addJobProperty *ns1__addJobProperty; /* optional element of type ns1:addJobProperty */ }; #endif #ifndef SOAP_TYPE___ns1__getAllSubmissionLocations #define SOAP_TYPE___ns1__getAllSubmissionLocations (323) /* Operation wrapper: */ struct __ns1__getAllSubmissionLocations { struct _ns1__getAllSubmissionLocations *ns1__getAllSubmissionLocations; /* optional element of type ns1:getAllSubmissionLocations */ }; #endif #ifndef SOAP_TYPE___ns1__getInterfaceVersion #define SOAP_TYPE___ns1__getInterfaceVersion (327) /* Operation wrapper: */ struct __ns1__getInterfaceVersion { struct _ns1__getInterfaceVersion *ns1__getInterfaceVersion; /* optional element of type ns1:getInterfaceVersion */ }; #endif #ifndef SOAP_TYPE___ns1__createJob #define SOAP_TYPE___ns1__createJob (331) /* Operation wrapper: */ struct __ns1__createJob { struct _ns1__createJob *ns1__createJob; /* optional element of type ns1:createJob */ }; #endif #ifndef SOAP_TYPE___ns1__getAllSubmissionLocations1 #define SOAP_TYPE___ns1__getAllSubmissionLocations1 (335) /* Operation wrapper: */ struct __ns1__getAllSubmissionLocations1 { struct _ns1__getAllSubmissionLocations1 *ns1__getAllSubmissionLocations1; /* optional element of type ns1:getAllSubmissionLocations1 */ }; #endif #ifndef SOAP_TYPE___ns1__getVersionsOfApplicationOnSite #define SOAP_TYPE___ns1__getVersionsOfApplicationOnSite (339) /* Operation wrapper: */ struct __ns1__getVersionsOfApplicationOnSite { struct _ns1__getVersionsOfApplicationOnSite *ns1__getVersionsOfApplicationOnSite; /* optional element of type ns1:getVersionsOfApplicationOnSite */ }; #endif #ifndef SOAP_TYPE___ns1__uploadByteArray1 #define SOAP_TYPE___ns1__uploadByteArray1 (343) /* Operation wrapper: */ struct __ns1__uploadByteArray1 { struct _ns1__uploadByteArray1 *ns1__uploadByteArray1; /* optional element of type ns1:uploadByteArray1 */ }; #endif #ifndef SOAP_TYPE___ns1__ps_USCOREstring #define SOAP_TYPE___ns1__ps_USCOREstring (347) /* Operation wrapper: */ struct __ns1__ps_USCOREstring { struct _ns1__ps_USCOREstring *ns1__ps_USCOREstring; /* optional element of type ns1:ps_string */ }; #endif #ifndef SOAP_TYPE___ns1__getSite #define SOAP_TYPE___ns1__getSite (351) /* Operation wrapper: */ struct __ns1__getSite { struct _ns1__getSite *ns1__getSite; /* optional element of type ns1:getSite */ }; #endif #ifndef SOAP_TYPE___ns1__lastModified #define SOAP_TYPE___ns1__lastModified (355) /* Operation wrapper: */ struct __ns1__lastModified { struct _ns1__lastModified *ns1__lastModified; /* optional element of type ns1:lastModified */ }; #endif #ifndef SOAP_TYPE___ns1__ls #define SOAP_TYPE___ns1__ls (359) /* Operation wrapper: */ struct __ns1__ls { struct _ns1__ls *ns1__ls; /* optional element of type ns1:ls */ }; #endif #ifndef SOAP_TYPE___ns1__getApplicationDetails1 #define SOAP_TYPE___ns1__getApplicationDetails1 (363) /* Operation wrapper: */ struct __ns1__getApplicationDetails1 { struct _ns1__getApplicationDetails1 *ns1__getApplicationDetails1; /* optional element of type ns1:getApplicationDetails1 */ }; #endif #ifndef SOAP_TYPE___ns1__calculateRelativeJobDirectory #define SOAP_TYPE___ns1__calculateRelativeJobDirectory (367) /* Operation wrapper: */ struct __ns1__calculateRelativeJobDirectory { struct _ns1__calculateRelativeJobDirectory *ns1__calculateRelativeJobDirectory; /* optional element of type ns1:calculateRelativeJobDirectory */ }; #endif #ifndef SOAP_TYPE___ns1__setJobDescription_USCOREstring #define SOAP_TYPE___ns1__setJobDescription_USCOREstring (371) /* Operation wrapper: */ struct __ns1__setJobDescription_USCOREstring { struct _ns1__setJobDescription_USCOREstring *ns1__setJobDescription_USCOREstring; /* optional element of type ns1:setJobDescription_string */ }; #endif #ifndef SOAP_TYPE___ns1__logout #define SOAP_TYPE___ns1__logout (375) /* Operation wrapper: */ struct __ns1__logout { struct _ns1__logout *ns1__logout; /* optional element of type ns1:logout */ }; #endif #ifndef SOAP_TYPE___ns1__submitJob #define SOAP_TYPE___ns1__submitJob (379) /* Operation wrapper: */ struct __ns1__submitJob { struct _ns1__submitJob *ns1__submitJob; /* optional element of type ns1:submitJob */ }; #endif #ifndef SOAP_TYPE___ns1__uploadByteArray #define SOAP_TYPE___ns1__uploadByteArray (383) /* Operation wrapper: */ struct __ns1__uploadByteArray { struct _ns1__uploadByteArray *ns1__uploadByteArray; /* optional element of type ns1:uploadByteArray */ }; #endif #ifndef SOAP_TYPE___ns1__cp #define SOAP_TYPE___ns1__cp (387) /* Operation wrapper: */ struct __ns1__cp { struct _ns1__cp *ns1__cp; /* optional element of type ns1:cp */ }; #endif #ifndef SOAP_TYPE___ns1__getFileSize #define SOAP_TYPE___ns1__getFileSize (391) /* Operation wrapper: */ struct __ns1__getFileSize { struct _ns1__getFileSize *ns1__getFileSize; /* optional element of type ns1:getFileSize */ }; #endif #ifndef SOAP_TYPE___ns1__deleteFile #define SOAP_TYPE___ns1__deleteFile (395) /* Operation wrapper: */ struct __ns1__deleteFile { struct _ns1__deleteFile *ns1__deleteFile; /* optional element of type ns1:deleteFile */ }; #endif #ifndef SOAP_TYPE___ns1__upload #define SOAP_TYPE___ns1__upload (399) /* Operation wrapper: */ struct __ns1__upload { struct _ns1__upload *ns1__upload; /* optional element of type ns1:upload */ }; #endif #ifndef SOAP_TYPE___ns1__getJobDirectory #define SOAP_TYPE___ns1__getJobDirectory (403) /* Operation wrapper: */ struct __ns1__getJobDirectory { struct _ns1__getJobDirectory *ns1__getJobDirectory; /* optional element of type ns1:getJobDirectory */ }; #endif #ifndef SOAP_TYPE___ns1__setJobDescription #define SOAP_TYPE___ns1__setJobDescription (407) /* Operation wrapper: */ struct __ns1__setJobDescription { struct _ns1__setJobDescription *ns1__setJobDescription; /* optional element of type ns1:setJobDescription */ }; #endif #ifndef SOAP_TYPE___ns1__getAllSites #define SOAP_TYPE___ns1__getAllSites (411) /* Operation wrapper: */ struct __ns1__getAllSites { struct _ns1__getAllSites *ns1__getAllSites; /* optional element of type ns1:getAllSites */ }; #endif #ifndef SOAP_TYPE___ns1__getJobDetails_USCOREstring #define SOAP_TYPE___ns1__getJobDetails_USCOREstring (415) /* Operation wrapper: */ struct __ns1__getJobDetails_USCOREstring { struct _ns1__getJobDetails_USCOREstring *ns1__getJobDetails_USCOREstring; /* optional element of type ns1:getJobDetails_string */ }; #endif #ifndef SOAP_TYPE___ns1__getJobStatus #define SOAP_TYPE___ns1__getJobStatus (419) /* Operation wrapper: */ struct __ns1__getJobStatus { struct _ns1__getJobStatus *ns1__getJobStatus; /* optional element of type ns1:getJobStatus */ }; #endif #ifndef SOAP_TYPE___ns1__umount #define SOAP_TYPE___ns1__umount (423) /* Operation wrapper: */ struct __ns1__umount { struct _ns1__umount *ns1__umount; /* optional element of type ns1:umount */ }; #endif #ifndef SOAP_TYPE___ns1__getJobDetails #define SOAP_TYPE___ns1__getJobDetails (427) /* Operation wrapper: */ struct __ns1__getJobDetails { struct _ns1__getJobDetails *ns1__getJobDetails; /* optional element of type ns1:getJobDetails */ }; #endif #ifndef SOAP_TYPE___ns1__mount1 #define SOAP_TYPE___ns1__mount1 (431) /* Operation wrapper: */ struct __ns1__mount1 { struct _ns1__mount1 *ns1__mount1; /* optional element of type ns1:mount1 */ }; #endif #ifndef SOAP_TYPE___ns1__getJobProperty #define SOAP_TYPE___ns1__getJobProperty (435) /* Operation wrapper: */ struct __ns1__getJobProperty { struct _ns1__getJobProperty *ns1__getJobProperty; /* optional element of type ns1:getJobProperty */ }; #endif #ifndef SOAP_TYPE___ns1__submitSupportRequest #define SOAP_TYPE___ns1__submitSupportRequest (439) /* Operation wrapper: */ struct __ns1__submitSupportRequest { struct _ns1__submitSupportRequest *ns1__submitSupportRequest; /* optional element of type ns1:submitSupportRequest */ }; #endif #ifndef SOAP_TYPE___ns1__getAllHosts #define SOAP_TYPE___ns1__getAllHosts (443) /* Operation wrapper: */ struct __ns1__getAllHosts { struct _ns1__getAllHosts *ns1__getAllHosts; /* optional element of type ns1:getAllHosts */ }; #endif #ifndef SOAP_TYPE_SOAP_ENV__Header #define SOAP_TYPE_SOAP_ENV__Header (444) /* SOAP Header: */ struct SOAP_ENV__Header { #ifdef WITH_NOEMPTYSTRUCT char dummy; /* dummy member to enable compilation */ #endif /* GDIS insert */ char *username; char *password; char *myproxyserver; char *myproxyport; }; #endif #ifndef SOAP_TYPE_SOAP_ENV__Code #define SOAP_TYPE_SOAP_ENV__Code (445) /* SOAP Fault Code: */ struct SOAP_ENV__Code { char *SOAP_ENV__Value; /* optional element of type xsd:QName */ struct SOAP_ENV__Code *SOAP_ENV__Subcode; /* optional element of type SOAP-ENV:Code */ }; #endif #ifndef SOAP_TYPE_SOAP_ENV__Reason #define SOAP_TYPE_SOAP_ENV__Reason (447) /* SOAP-ENV:Reason */ struct SOAP_ENV__Reason { char *SOAP_ENV__Text; /* optional element of type xsd:string */ }; #endif #ifndef SOAP_TYPE_SOAP_ENV__Fault #define SOAP_TYPE_SOAP_ENV__Fault (448) /* SOAP Fault: */ struct SOAP_ENV__Fault { char *faultcode; /* optional element of type xsd:QName */ char *faultstring; /* optional element of type xsd:string */ char *faultactor; /* optional element of type xsd:string */ struct SOAP_ENV__Detail *detail; /* optional element of type SOAP-ENV:Detail */ struct SOAP_ENV__Code *SOAP_ENV__Code; /* optional element of type SOAP-ENV:Code */ struct SOAP_ENV__Reason *SOAP_ENV__Reason; /* optional element of type SOAP-ENV:Reason */ char *SOAP_ENV__Node; /* optional element of type xsd:string */ char *SOAP_ENV__Role; /* optional element of type xsd:string */ struct SOAP_ENV__Detail *SOAP_ENV__Detail; /* optional element of type SOAP-ENV:Detail */ }; #endif /******************************************************************************\ * * * Types with Custom Serializers * * * \******************************************************************************/ /******************************************************************************\ * * * Typedefs * * * \******************************************************************************/ #ifndef SOAP_TYPE__XML #define SOAP_TYPE__XML (4) typedef char *_XML; #endif #ifndef SOAP_TYPE__QName #define SOAP_TYPE__QName (5) typedef char *_QName; #endif /******************************************************************************\ * * * Typedef Synonyms * * * \******************************************************************************/ typedef struct _xop__Include _xop__Include; /******************************************************************************\ * * * Externals * * * \******************************************************************************/ /******************************************************************************\ * * * Stubs * * * \******************************************************************************/ SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getChildrenFiles(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getChildrenFiles *ns1__getChildrenFiles, struct _ns1__getChildrenFilesResponse *ns1__getChildrenFilesResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getJobFqan(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getJobFqan *ns1__getJobFqan, struct _ns1__getJobFqanResponse *ns1__getJobFqanResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__mount(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__mount *ns1__mount, struct _ns1__mountResponse *ns1__mountResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__login(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__login *ns1__login, struct _ns1__loginResponse *ns1__loginResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getTemplate(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getTemplate *ns1__getTemplate, struct _ns1__getTemplateResponse *ns1__getTemplateResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getFqans(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getFqans *ns1__getFqans, struct _ns1__getFqansResponse *ns1__getFqansResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__df(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__df *ns1__df, struct _ns1__dfResponse *ns1__dfResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__downloadByteArray(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__downloadByteArray *ns1__downloadByteArray, struct _ns1__downloadByteArrayResponse *ns1__downloadByteArrayResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getSubmissionLocationsForApplication2(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getSubmissionLocationsForApplication2 *ns1__getSubmissionLocationsForApplication2, struct _ns1__getSubmissionLocationsForApplication2Response *ns1__getSubmissionLocationsForApplication2Response); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__ps(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__ps *ns1__ps, struct _ns1__psResponse *ns1__psResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getStagingFileSystemForSubmissionLocation *ns1__getStagingFileSystemForSubmissionLocation, struct _ns1__getStagingFileSystemForSubmissionLocationResponse *ns1__getStagingFileSystemForSubmissionLocationResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getUserProperty(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getUserProperty *ns1__getUserProperty, struct _ns1__getUserPropertyResponse *ns1__getUserPropertyResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__mkdir(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__mkdir *ns1__mkdir, struct _ns1__mkdirResponse *ns1__mkdirResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getDataLocationsForVO(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getDataLocationsForVO *ns1__getDataLocationsForVO, struct _ns1__getDataLocationsForVOResponse *ns1__getDataLocationsForVOResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getSubmissionLocationsPerVersionOfApplication *ns1__getSubmissionLocationsPerVersionOfApplication, struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *ns1__getSubmissionLocationsPerVersionOfApplicationResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getTemplate1(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getTemplate1 *ns1__getTemplate1, struct _ns1__getTemplate1Response *ns1__getTemplate1Response); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__downloadByteArray1(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__downloadByteArray1 *ns1__downloadByteArray1, struct _ns1__downloadByteArray1Response *ns1__downloadByteArray1Response); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__listHostedApplicationTemplates(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__listHostedApplicationTemplates *ns1__listHostedApplicationTemplates, struct _ns1__listHostedApplicationTemplatesResponse *ns1__listHostedApplicationTemplatesResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__deleteFiles(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__deleteFiles *ns1__deleteFiles, struct _ns1__deleteFilesResponse *ns1__deleteFilesResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getMessagesSince(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getMessagesSince *ns1__getMessagesSince, struct _ns1__getMessagesSinceResponse *ns1__getMessagesSinceResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__calculateAbsoluteJobDirectory(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__calculateAbsoluteJobDirectory *ns1__calculateAbsoluteJobDirectory, struct _ns1__calculateAbsoluteJobDirectoryResponse *ns1__calculateAbsoluteJobDirectoryResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__ls_USCOREstring(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__ls_USCOREstring *ns1__ls_USCOREstring, struct _ns1__ls_USCOREstringResponse *ns1__ls_USCOREstringResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getSubmissionLocationsForApplication1(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getSubmissionLocationsForApplication1 *ns1__getSubmissionLocationsForApplication1, struct _ns1__getSubmissionLocationsForApplication1Response *ns1__getSubmissionLocationsForApplication1Response); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getApplicationDetails(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getApplicationDetails *ns1__getApplicationDetails, struct _ns1__getApplicationDetailsResponse *ns1__getApplicationDetailsResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__createJob1(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__createJob1 *ns1__createJob1, struct _ns1__createJob1Response *ns1__createJob1Response); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getSubmissionLocationsForApplication(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getSubmissionLocationsForApplication *ns1__getSubmissionLocationsForApplication, struct _ns1__getSubmissionLocationsForApplicationResponse *ns1__getSubmissionLocationsForApplicationResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getDN(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getDN *ns1__getDN, struct _ns1__getDNResponse *ns1__getDNResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getAllJobnames(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getAllJobnames *ns1__getAllJobnames, struct _ns1__getAllJobnamesResponse *ns1__getAllJobnamesResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getAllJobProperties(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getAllJobProperties *ns1__getAllJobProperties, struct _ns1__getAllJobPropertiesResponse *ns1__getAllJobPropertiesResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__download(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__download *ns1__download, struct _ns1__downloadResponse *ns1__downloadResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__isFolder(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__isFolder *ns1__isFolder, struct _ns1__isFolderResponse *ns1__isFolderResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__kill(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__kill *ns1__kill, struct _ns1__killResponse *ns1__killResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getAllAvailableApplications(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getAllAvailableApplications *ns1__getAllAvailableApplications, struct _ns1__getAllAvailableApplicationsResponse *ns1__getAllAvailableApplicationsResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__addJobProperties(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__addJobProperties *ns1__addJobProperties, struct _ns1__addJobPropertiesResponse *ns1__addJobPropertiesResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__addJobProperty(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__addJobProperty *ns1__addJobProperty, struct _ns1__addJobPropertyResponse *ns1__addJobPropertyResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getAllSubmissionLocations(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getAllSubmissionLocations *ns1__getAllSubmissionLocations, struct _ns1__getAllSubmissionLocationsResponse *ns1__getAllSubmissionLocationsResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getInterfaceVersion(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getInterfaceVersion *ns1__getInterfaceVersion, struct _ns1__getInterfaceVersionResponse *ns1__getInterfaceVersionResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__createJob(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__createJob *ns1__createJob, struct _ns1__createJobResponse *ns1__createJobResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getAllSubmissionLocations1(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getAllSubmissionLocations1 *ns1__getAllSubmissionLocations1, struct _ns1__getAllSubmissionLocations1Response *ns1__getAllSubmissionLocations1Response); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getVersionsOfApplicationOnSite(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getVersionsOfApplicationOnSite *ns1__getVersionsOfApplicationOnSite, struct _ns1__getVersionsOfApplicationOnSiteResponse *ns1__getVersionsOfApplicationOnSiteResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__uploadByteArray1(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__uploadByteArray1 *ns1__uploadByteArray1, struct _ns1__uploadByteArray1Response *ns1__uploadByteArray1Response); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__ps_USCOREstring(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__ps_USCOREstring *ns1__ps_USCOREstring, struct _ns1__ps_USCOREstringResponse *ns1__ps_USCOREstringResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getSite(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getSite *ns1__getSite, struct _ns1__getSiteResponse *ns1__getSiteResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__lastModified(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__lastModified *ns1__lastModified, struct _ns1__lastModifiedResponse *ns1__lastModifiedResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__ls(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__ls *ns1__ls, struct _ns1__lsResponse *ns1__lsResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getApplicationDetails1(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getApplicationDetails1 *ns1__getApplicationDetails1, struct _ns1__getApplicationDetails1Response *ns1__getApplicationDetails1Response); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__calculateRelativeJobDirectory(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__calculateRelativeJobDirectory *ns1__calculateRelativeJobDirectory, struct _ns1__calculateRelativeJobDirectoryResponse *ns1__calculateRelativeJobDirectoryResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__setJobDescription_USCOREstring(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__setJobDescription_USCOREstring *ns1__setJobDescription_USCOREstring, struct _ns1__setJobDescription_USCOREstringResponse *ns1__setJobDescription_USCOREstringResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__logout(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__logout *ns1__logout, struct _ns1__logoutResponse *ns1__logoutResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__submitJob(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__submitJob *ns1__submitJob, struct _ns1__submitJobResponse *ns1__submitJobResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__uploadByteArray(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__uploadByteArray *ns1__uploadByteArray, struct _ns1__uploadByteArrayResponse *ns1__uploadByteArrayResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__cp(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__cp *ns1__cp, struct _ns1__cpResponse *ns1__cpResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getFileSize(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getFileSize *ns1__getFileSize, struct _ns1__getFileSizeResponse *ns1__getFileSizeResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__deleteFile(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__deleteFile *ns1__deleteFile, struct _ns1__deleteFileResponse *ns1__deleteFileResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__upload(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__upload *ns1__upload, struct _ns1__uploadResponse *ns1__uploadResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getJobDirectory(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getJobDirectory *ns1__getJobDirectory, struct _ns1__getJobDirectoryResponse *ns1__getJobDirectoryResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__setJobDescription(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__setJobDescription *ns1__setJobDescription, struct _ns1__setJobDescriptionResponse *ns1__setJobDescriptionResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getAllSites(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getAllSites *ns1__getAllSites, struct _ns1__getAllSitesResponse *ns1__getAllSitesResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getJobDetails_USCOREstring(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getJobDetails_USCOREstring *ns1__getJobDetails_USCOREstring, struct _ns1__getJobDetails_USCOREstringResponse *ns1__getJobDetails_USCOREstringResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getJobStatus(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getJobStatus *ns1__getJobStatus, struct _ns1__getJobStatusResponse *ns1__getJobStatusResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__umount(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__umount *ns1__umount, struct _ns1__umountResponse *ns1__umountResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getJobDetails(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getJobDetails *ns1__getJobDetails, struct _ns1__getJobDetailsResponse *ns1__getJobDetailsResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__mount1(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__mount1 *ns1__mount1, struct _ns1__mount1Response *ns1__mount1Response); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getJobProperty(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getJobProperty *ns1__getJobProperty, struct _ns1__getJobPropertyResponse *ns1__getJobPropertyResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__submitSupportRequest(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__submitSupportRequest *ns1__submitSupportRequest, struct _ns1__submitSupportRequestResponse *ns1__submitSupportRequestResponse); SOAP_FMAC5 int SOAP_FMAC6 soap_call___ns1__getAllHosts(struct soap *soap, const char *soap_endpoint, const char *soap_action, struct _ns1__getAllHosts *ns1__getAllHosts, struct _ns1__getAllHostsResponse *ns1__getAllHostsResponse); #ifdef __cplusplus } #endif #endif /* End of soapStub.h */ gdis-0.90/file_dlpoly.c0000644000175000017500000003731010600706735013504 0ustar seansean/* This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ /* * If you have any questions or comments about DL_POLY file support in GDIS, * send it to GDIS mailing list * http://lists.sourceforge.net/lists/listinfo/gdis-users * (you can also CC to Marcin Wojdyr, search the web for e-mail) * * Details about * The DL_POLY Molecular Simulation Package * can be found at http://www.cse.clrc.ac.uk/msi/software/DL_POLY/ * Following DL_POLY configuration files are (partially) supported: * * CONFIG/REVCON read-write * HISTORY formatted read * HISTORY unformatted (binary) not implemented * HISTORY file provides trajectory and can be very large. * * To see what features are not supported yet read comments and the code. * * When using shell model, there is no way to recognize which "atom" * represents core and which shell using only CONFIG/HISTORY file. * Convention is used: name of shell "atom" is created with * one of following postfixes: -shell _shell -shel _shel -shl _shl -sh _sh * eg. Zn-shl or Zn_shel */ #include #include #include #include "gdis.h" #include "coords.h" #include "model.h" #include "file.h" #include "parse.h" #include "scan.h" #include "matrix.h" #include "interface.h" /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /* Replaces all blanks in str with '\0' and put pointers to tokens into tokens. * Returns number of tokens (n <= max_split). It doesn't allocates any memory. * tokens[] should have length >= max_split. */ int split_string(char *str, int max_split, char **tokens) { char *ptr; int counter=0; int was_space=1; for (ptr=str; *ptr; ++ptr) { if (isspace(*ptr)) { *ptr=0; was_space=1; } else if (was_space) { was_space=0; tokens[counter] = ptr; counter++; if (counter >= max_split) break; } } return counter; } int get_splitted_line(FILE *fp, int max_split, char **tokens) { gchar line[1024]; if (fgets(line, 1024, fp)) return split_string(line, max_split, tokens); else return 0; } void mark_animation_frame(struct model_pak *model, FILE *fp) { fpos_t offset; fgetpos(fp, &offset); model->frame_list = g_list_append(model->frame_list, g_memdup(&offset, sizeof(fpos_t))); model->num_frames++; } /**************** file reading ****************/ /* read boundary conditions */ static gint read_dlpoly_pbc(gint imcon, FILE *fp, struct model_pak *model) { /* imcon -- periodic boundary key: imcon meaning 0 no periodic boundaries 1 cubic boundary conditions 2 orthorhombic boundary conditions 3 parallelepiped boundary conditions 4 truncated octahedral boundary conditions 5 rhombic dodecahedral boundary conditions 6 x-y parallelogram boundary conditions with no periodicity in the z direction 7 hexagonal prism boundary conditions */ gint num_tokens, i, j; gchar *tokens[64]; gchar line[1024]; switch (imcon) { case 0: model->periodic = 0; return 0; case 1: case 2: model->periodic = 3; for (i=0; i < 3; ++i) { num_tokens = get_splitted_line(fp, 64, tokens); if (num_tokens < 3) { gui_text_show(ERROR, "not enought numbers in PBC desc.\n"); return 1; } for (j=0; j<3; ++j) model->latmat[3*i+j] = str_to_float(tokens[j]); } model->construct_pbc = TRUE; matrix_lattice_init(model); return 0; case 6: /*TODO*/ case 3: case 4: case 5: case 7: default: model->periodic = 0; /*eat 3 lines*/ for (i=0; i < 3; ++i) fgets(line, 1024, fp); gui_text_show(WARNING, "Sorry, not supported imcon (PBC key). " "Assuming no periodic boundaries.\n"); return 0; } } /* checks if "atom" is a shell in core-shell model */ static gint read_dlpoly_is_shell(gchar *name) { /* check for postfixes: -shell _shell -shel _shel -shl _shl -sh _sh * and return postfix length */ int len = strlen(name); if (len > 6 && (g_ascii_strcasecmp(name+len-6, "-shell") == 0 || g_ascii_strcasecmp(name+len-6, "_shell") == 0)) return 6; else if (len > 5 && (g_ascii_strcasecmp(name+len-5, "-shel") == 0 || g_ascii_strcasecmp(name+len-5, "_shel") == 0)) return 5; else if (len > 4 && (g_ascii_strcasecmp(name+len-4, "-shl") == 0 || g_ascii_strcasecmp(name+len-4, "_shl") == 0)) return 4; else if (len > 3 && (g_ascii_strcasecmp(name+len-3, "-sh") == 0 || g_ascii_strcasecmp(name+len-3, "_sh") == 0)) return 3; else return 0; } /* OH -> O, etc */ static void dlpoly_cut_elem_postfix(gchar *elem) { /* don't cut Cl, Ca, Cs, Cr, Co, Cu, Cd, Ce, Os, Hf */ gchar c = elem[0]; gchar x = 0; if (strlen(elem) <= 1) return; x = elem[1]; if (((c=='C' || c=='c') && (x!='l' && x!='L' && x!='a' && x!='A' && x!='s' && x!='S' && x!='r' && x!='R' && x!='o' && x!='O' && x!='u' && x!='U' && x!='d' && x!='D' && x!='e' && x!='E')) || ((c=='O' || c=='o') && (x!='s' && x!='S')) || ((c=='H' || c=='h') && (x!='f' && x!='F'))) elem[1] = '\0'; } static gint read_dlpoly_atoms(gint levcfg, FILE *fp, struct model_pak *model) { /* Possible values of levcfg: 1 - only coordinates in file 2 - coordinates and velocities 3 - coordinates, velocities and forces */ gchar elem[9]; gchar *tokens[64]; gint rec=0, num_tokens, sl=0; gdouble *x=0, *v=0; struct core_pak *core=NULL; struct shel_pak *shell=NULL; GSList *core_list, *shell_list; model->cores = g_slist_reverse(model->cores); model->shels = g_slist_reverse(model->shels); core_list = model->cores; shell_list = model->shels; while ((num_tokens = get_splitted_line(fp, 64, tokens))) { if (g_ascii_strncasecmp(tokens[0], "timestep", 8) == 0) { break; } switch (rec) { case 0: /* record i */ if (num_tokens < 1) { gui_text_show(ERROR, "Unexpected syntax in DL_POLY file" " (in record i).\n"); return 1; } sl = read_dlpoly_is_shell(tokens[0]); if (sl) { g_strlcpy(elem, tokens[0], 9); elem[strlen(elem) - sl] = '\0'; dlpoly_cut_elem_postfix(elem); if (shell_list) { shell = (struct shel_pak *) shell_list->data; shell_list = g_slist_next(shell_list); } else { shell = shell_new(elem, tokens[0], model); model->shels = g_slist_prepend(model->shels, shell); } x = shell->x; v = shell->v; } else { //core g_strlcpy(elem, tokens[0], 9); dlpoly_cut_elem_postfix(elem); if (core_list) { core = (struct core_pak *) core_list->data; core_list = g_slist_next(core_list); } else { core = core_new(elem, tokens[0], model); model->cores = g_slist_prepend(model->cores, core); } x = core->x; v = core->v; } break; case 1: /* record ii */ if (num_tokens < 3) { gui_text_show(ERROR, "Unexpected syntax in DL_POLY file" " (in record ii).\n"); return 1; } VEC4SET(x, str_to_float(tokens[0]), str_to_float(tokens[1]), str_to_float(tokens[2]), 1.0); break; case 2: /* record iii */ if (num_tokens < 3) { gui_text_show(ERROR, "Unexpected syntax in DL_POLY file" " (in record iii).\n"); return 1; } VEC3SET(v, str_to_float(tokens[0]), str_to_float(tokens[1]), str_to_float(tokens[2])); break; case 3: /* record iv */ if (num_tokens < 3) { gui_text_show(ERROR, "Unexpected syntax in DL_POLY file" " (in record iv).\n"); return 1; } /* no force info in GDIS */ break; default: /* never comes here */ printf("ERROR\n"); } rec = (rec+1) % (levcfg+2); /* rec = 0, 1, ..., levcfg+1, 0, 1, ... */ } model->cores = g_slist_reverse(model->cores); model->shels = g_slist_reverse(model->shels); printf("# cores: %i; # shells: %i\n", g_slist_length(model->cores), g_slist_length(model->shels)); return 0; } gint read_dlpoly(gchar *filename, struct model_pak *model) { gint num_tokens, history; gchar line[1024], *tokens[64]; FILE *fp; gint levcfg, /* tells if velocities and forces are in file*/ imcon; /* periodic boundary key */ int i; fp = fopen(filename, "rt"); if (!fp) return 1; /* first line is a title */ if (!fgets(line, 1024, fp)) return 2; /* cut trailing blanks */ for (i=strlen(line)-1; i>0 && isspace(line[i]); --i) line[i] = 0; model->title = g_strdup(line); /* second line */ num_tokens = get_splitted_line(fp, 64, tokens); if (num_tokens < 2) return 3; levcfg = (gint) str_to_float(tokens[0]); imcon = (gint) str_to_float(tokens[1]); /* 3rd line -- is this CONFIG or HISTORY? */ if (!fgets(line, 1024, fp)) return 4; history = (g_ascii_strncasecmp(line, "timestep", 8) == 0); if (history) { /* HISTORY */ /* read first frame */ num_tokens = split_string(line, 64, tokens); if (num_tokens >= 6) ; /* TODO read current nstep and time-step */ read_dlpoly_pbc(imcon, fp, model); read_dlpoly_atoms(levcfg, fp, model); /* mark all frames offsets */ model->num_frames = 0; fseek(fp, 0, SEEK_SET); /* TODO optimize it */ while (fgets(line, 1024, fp)) { if (g_ascii_strncasecmp(line, "timestep", 8) == 0) { fseek(fp, -strlen(line), SEEK_CUR); mark_animation_frame(model, fp); fseek(fp, strlen(line), SEEK_CUR); } } } else { /* CONFIG/REVCON */ if (num_tokens >= 4) ; /*TODO read current nstep and time-step */ read_dlpoly_pbc(imcon, fp, model); read_dlpoly_atoms(levcfg, fp, model); } /* model setup */ strcpy(model->filename, filename); g_free(model->basename); model->basename = parse_strip(filename); model->fractional = FALSE; model_prep(model); return 0; } /******** animation -- overwrite frame ********/ gint read_dlpoly_frame(FILE *fp, struct model_pak *model) { gint num_tokens; gint imcon, levcfg; gchar *tokens[64]; puts("in read_dlpoly_frame()"); g_assert(fp != NULL); num_tokens = get_splitted_line(fp, 64, tokens); if (num_tokens < 6) return 11; g_assert(g_ascii_strncasecmp(tokens[0], "timestep", 8) == 0); levcfg = (gint) str_to_float(tokens[3]); imcon = (gint) str_to_float(tokens[4]); read_dlpoly_pbc(imcon, fp, model); read_dlpoly_atoms(levcfg, fp, model); return 0; } /**************** file writing ****************/ gint write_dlpoly(gchar *filename, struct model_pak *model) { GSList *list; struct core_pak *core; struct shel_pak *shell; FILE *fp; gint levcfg=0, imcon=0; gdouble x[3]; int i; /* checks */ g_return_val_if_fail(model != NULL, 1); g_return_val_if_fail(filename != NULL, 2); /* open the file */ fp = fopen(filename,"wt"); if (!fp) return(3); /* first line is a title */ fprintf(fp, "%s\n", model->title); if (model->periodic == 0) { imcon = 0; //no PBC } else if (model->periodic == 3) { if (model->latmat[0*3+1] == 0. && model->latmat[0*3+2] == 0. && model->latmat[1*3+0] == 0. && model->latmat[1*3+2] == 0. && model->latmat[2*3+0] == 0. && model->latmat[2*3+1] == 0.) { if (model->latmat[0*3+0] == model->latmat[1*3+1] && model->latmat[0*3+0] == model->latmat[2*3+2]) imcon = 1; //cubic else imcon = 2; //orthorhombic } /*TODO other cases */ } /* TODO when levcfg should be 1? */ fprintf(fp, "%10i%10i\n", levcfg, imcon); /* TODO write current nstep and time-step */ if (imcon > 0) { /*write PBC*/ for (i=0; i<3; ++i) fprintf(fp, "%20.10f%20.10f%20.10f\n", model->latmat[3*i], model->latmat[3*i+1], model->latmat[3*i+2]); } for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->status & DELETED) continue; fprintf(fp, "%-8s\n", core->atom_label); ARR3SET(x, core->x); vecmat(model->latmat, x); fprintf(fp, "%20.8f%20.8f%20.8f\n", x[0], x[1], x[2]); if (levcfg > 0) fprintf(fp,"%20.8f%20.8f%20.8f\n",core->v[0],core->v[1],core->v[2]); } /*TODO order of atoms (shells and cores) should be preserved, * now if there are shells, they go at the end */ for (list=model->shels ; list ; list=g_slist_next(list)) { shell = list->data; if (shell->status & DELETED) continue; fprintf(fp, "%-8s\n", shell->shell_label); ARR3SET(x, shell->x); vecmat(model->latmat, x); fprintf(fp, "%20.8f%20.8f%20.8f\n", x[0], x[1], x[2]); if (levcfg > 0) fprintf(fp, "%20.8f%20.8f%20.8f\n", shell->v[0], shell->v[1], shell->v[2]); } fclose(fp); return 0; } gdis-0.90/disk.xpm0000644000175000017500000000141007717054756012524 0ustar seansean/* XPM */ static char * disk_xpm[] = { "16 16 27 1", " c None", ". c #165ABF", "+ c #746C6B", "@ c #766A6A", "# c #786C6C", "$ c #8B7E7D", "% c #766D69", "& c #AEA09A", "* c #706A68", "= c #867979", "- c #A99A96", "; c #313231", "> c #7C7371", ", c #776F6F", "' c #918482", ") c #AE9F9A", "! c #A0928E", "~ c #615C5A", "{ c #887D7B", "] c #837B7F", "^ c #B1A39F", "/ c #A1938F", "( c #7B6F6F", "_ c #7C7471", ": c #837876", "< c #FFFFFF", "[ c #212624", " ", " ", " ..+@#$%&.. ", " ...*#=-;>... ", " ...,')!~{... ", " ...]^/(_:... ", " ............ ", " ............ ", " ..<<<<<<<<.. ", " ..<[[[[[[<.. ", " ..<<<<<<<<.. ", " ..<[[[[[[<.. ", " ..<<<<<<<<.. ", " ............ ", " ", " "}; gdis-0.90/makefile.win320000644000175000017500000000263411065645141013477 0ustar seansean# --- gdis Makefile (custom for Win32) NAME = gdis-0.90 INSTALL = c:\apps\gdis USE_GUI = YES USE_GRISU = YES include makefile.src # under windows - manual cut/paste results from pkg-config CC = c:\dev\mingw\bin\gcc CFLAGS = -O2 -mwindows -mno-cygwin -mms-bitfields -DWITH_GUI -DWITH_GRISU INCS = -Ic:/dev/gtk_bundle/include/gtk-2.0 -Ic:/dev/gtk_bundle/lib/gtk-2.0/include -Ic:/dev/gtk_bundle/include/atk-1.0 -Ic:/dev/gtk_bundle/include/cairo -Ic:/dev/gtk_bundle/include/pango-1.0 -Ic:/dev/gtk_bundle/include/glib-2.0 -Ic:/dev/gtk_bundle/lib/glib-2.0/include -Ic:/dev/gtk_bundle/include/libpng12 INCS := $(INCS) -Ic:/dev/gtkglext/include/gtkglext-1.0 -Ic:/dev/gtkglext/lib/gtkglext-1.0/include LIBS = -Lc:/dev/gtk_bundle/lib -lgtk-win32-2.0 -lgdk-win32-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangowin32-1.0 -lgdi32 -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgthread-2.0 -lgmodule-2.0 -lglib-2.0 -lintl LIBS := $(LIBS) -Lc:/dev/gtkglext/lib -lgtkglext-win32-1.0 -lgdkglext-win32-1.0 -lopengl32 -lgdi32 -lglu32 # --- openssl + gsoap stuff CFLAGS := $(CFLAGS) -DWITH_OPENSSL -DWITH_DOM INCS := $(INCS) -Ic:/dev/openssl-0.9.7c/include LIBS := $(LIBS) -Lc:/dev/openssl-0.9.7c/lib -lssl -lcrypto -lWs2_32 SRC := $(SRC) stdsoap2.c dom.c # --- main target OBJ = $(SRC:.c=.o) gdis: $(OBJ) $(CC) $(OBJ) $(LDFLAGS) -o gdis $(LIBS) # --- extra targets .c.o: $(CC) $(CFLAGS) -c $< $(INCS) gdis-0.90/gui_animate.c0000644000175000017500000004551411035034370013461 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include "gdis.h" #include "coords.h" #include "model.h" #include "edit.h" #include "file.h" #include "render.h" #include "matrix.h" #include "quaternion.h" #include "measure.h" #include "numeric.h" #include "opengl.h" #include "gui_shorts.h" #include "interface.h" #include "dialog.h" #define DEBUG 0 #define DEBUG2 0 /* global pak structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; GtkWidget *cf_spin; struct frame_pak { gdouble latmat[9]; GSList *core_list; GSList *shell_list; }; /******************************/ /* free all pre-loaded frames */ /******************************/ void anim_free_all_frames(struct model_pak *model) { GSList *list; struct frame_pak *frame; g_assert(model != NULL); for (list = model->frame_data_list ; list ; list=g_slist_next(list)) { frame = list->data; free_slist(frame->core_list); free_slist(frame->shell_list); g_free(frame); } g_slist_free(model->frame_data_list); model->frame_data_list = NULL; } /**********************************/ /* attempt to pre-load all frames */ /**********************************/ gint anim_read_all_frames(struct model_pak *model) { gint i; struct frame_pak *frame; FILE *fp; /* checks */ g_assert(model != NULL); g_assert(model->animation == TRUE); /* TODO - test is we have enough memory by using g_try_malloc() */ /* read in all frames and store relevant data */ fp = fopen(model->filename, "r"); if (!fp) { printf("Could not open source file."); return(1); } for (i=0 ; inum_frames ; i++) { /* NB: frames start at 1 */ read_raw_frame(fp, i+1, model); matrix_lattice_init(model); frame = g_malloc(sizeof(struct frame_pak *)); memcpy(frame->latmat, model->latmat, 9*sizeof(gdouble)); frame->core_list = dup_core_list(model->cores); frame->shell_list = dup_shell_list(model->shels); model->frame_data_list = g_slist_prepend(model->frame_data_list, frame); } model->frame_data_list = g_slist_reverse(model->frame_data_list); return(1); } /***********************************/ /* retrieve the nth transformation */ /***********************************/ gint read_transform(gint n, struct model_pak *model) { gpointer camera; g_assert(model != NULL); g_assert(model->camera != NULL); camera = g_slist_nth_data(model->transform_list, n); g_assert(camera != NULL); model->camera = camera; return(0); } /**************************/ /* retrieve the nth frame */ /**************************/ #define DEBUG_READ_FRAME 0 gint read_frame(FILE *fp, gint n, struct model_pak *model) { gint status; gdouble rmax, v1[3], v2[3]; gpointer camera=NULL; GString *err_text; g_assert(model != NULL); rmax = model->rmax; /* conventional or transformation style animation */ if (model->transform_list) { /* NEW - process transformation list as an animation */ status = read_transform(n, model); } else { g_assert(fp != NULL); ARR3SET(v1, model->centroid); ARR3SET(v2, model->offset); status = read_raw_frame(fp, n, model); if (status) { err_text = g_string_new(""); g_string_printf(err_text, "Error reading frame: %d\n", n); gui_text_show(ERROR, err_text->str); g_string_free(err_text, TRUE); return(1); } /* setup (have to save camera) */ camera = camera_dup(model->camera); model_prep(model); model->camera = camera; g_free(model->camera_default); model->camera_default = camera; ARR3SET(model->centroid, v1); ARR3SET(model->offset, v2); } /* apply desired constraint */ if (model->periodic && !model->anim_fix) { switch (model->anim_confine) { case PBC_CONFINE_ATOMS: coords_confine_cores(model->cores, model); case PBC_CONFINE_MOLS: coords_compute(model); connect_bonds(model); connect_molecules(model); break; } } if (model->anim_noscale) model->rmax = rmax; return(0); } /***************************************/ /* current frame modification callback */ /***************************************/ #define DEBUG_SELECT_FRAME 0 void select_frame(GtkWidget *w, struct model_pak *model) { FILE *fp=NULL; g_assert(w != NULL); g_assert(model != NULL); #if DEBUG_SELECT_FRAME printf("request frame: %d, model: %p\n", model->cur_frame, model); #endif /* FIXME - better way to cope with transform animations */ if (!model->transform_list) fp = fopen(model->filename, "r"); read_frame(fp, model->cur_frame, model); meas_graft_model(model); gui_active_refresh(); redraw_canvas(SINGLE); if (!model->transform_list) fclose(fp); } /*********************************************************/ /* read and draw the next frame in the current animation */ /*********************************************************/ #define DEBUG_DISPLAY_NEXT_FRAME 0 gint anim_next_frame(struct model_pak *model) { gulong time; gchar *text, *name; g_assert(model != NULL); /* increment and test if should we return to the start */ model->cur_frame += model->anim_step; if (model->cur_frame >= model->num_frames) if (model->anim_loop) model->cur_frame = 1; /* continue until we run out of frames (or a stop is flagged) */ if (model->cur_frame < model->num_frames && model->animating) { #if DEBUG_DISPLAY_NEXT_FRAME printf("displaying [%d]\n", model->cur_frame); #endif time = mytimer(); /* if a dialog exists - update via the current frame spinner */ if (dialog_exists(ANIM, model)) gui_relation_update(model); else { /* otherwise, update manually */ read_frame(model->afp, model->cur_frame, model); meas_graft_model(model); gui_active_refresh(); redraw_canvas(SINGLE); } /* animation adjusted redraw time */ time = mytimer() - time; model->redraw_cumulative += time; /* NEW - render to file */ if (sysenv.render.animate) { text = g_strdup_printf("%s_%06d.pov", sysenv.render.animate_file, model->cur_frame); name = g_build_filename(sysenv.cwd, text, NULL); write_povray(name, model); /* NB: added this as jago keeps locking up on multi-frame renders */ if (!sysenv.render.no_povray_exec) povray_exec(name); g_free(text); g_free(name); } return(TRUE); } /* FIXME - find a better way to do this... */ if (!model->transform_list) fclose(model->afp); /* done animation */ model->animating = FALSE; model->cur_frame--; /* create movie? */ if (sysenv.render.animate && !sysenv.render.no_povray_exec) { text = NULL; switch (sysenv.render.animate_type) { case ANIM_GIF: text = g_strdup_printf("%s -delay %d %s_*.tga %s.gif", sysenv.convert_path, (gint) sysenv.render.delay, sysenv.render.animate_file, sysenv.render.animate_file); break; case ANIM_MPEG: text = g_strdup_printf("%s -quality %d -delay %d %s_*.tga %s.mpg", sysenv.convert_path, (gint) sysenv.render.mpeg_quality, (gint) sysenv.render.delay, sysenv.render.animate_file, sysenv.render.animate_file); break; } if (text) { system(text); g_free(text); gui_text_show(DEFAULT, "Completed movie creation.\n"); } } /* cleanup */ if (sysenv.render.no_keep_tempfiles) { #ifndef __WIN32 text = g_strdup_printf("rm -rf %s_*.pov", sysenv.render.animate_file); system(text); g_free(text); text = g_strdup_printf("rm -rf %s_*.tga", sysenv.render.animate_file); system(text); g_free(text); #endif /* TODO - windows equivalents */ } /* done - return FALSE to terminate the timer */ return(FALSE); } /**********************************/ /* set current frame to beginning */ /**********************************/ void anim_rewind(GtkWidget *w, gpointer data) { struct model_pak *model; model = dialog_model(data); g_assert(model != NULL); model->cur_frame = 0; gui_relation_update(model); } /****************************/ /* set current frame to end */ /****************************/ void anim_fastforward(GtkWidget *w, gpointer data) { struct model_pak *model; model = dialog_model(data); g_assert(model != NULL); model->cur_frame = model->num_frames-1; gui_relation_update(model); } /**********************/ /* one frame backward */ /**********************/ void anim_step_backward(GtkWidget *w, gpointer data) { struct model_pak *model; model = dialog_model(data); g_assert(model != NULL); if (model->cur_frame > 0) { model->cur_frame--; gui_relation_update(model); } } /*********************/ /* one frame forward */ /*********************/ void anim_step_forward(GtkWidget *w, gpointer data) { struct model_pak *model; model = dialog_model(data); g_assert(model != NULL); if (model->cur_frame < model->num_frames-1) { model->cur_frame++; gui_relation_update(model); } } /****************************/ /* start an animation timer */ /****************************/ void anim_start(GtkWidget *w, gpointer data) { gint freq; struct model_pak *model; /* don't allow more than one */ model = dialog_model(data); g_assert(model != NULL); if (model->animating) return; /* timeout frequency */ /* NB: we can't refresh any faster than units of 25 (ie the canvas redraw frequency) */ freq = 25 * model->anim_speed; if (!model->transform_list) { model->afp = fopen(model->filename, "r"); if (!model->afp) { gui_text_show(ERROR, "Failed to open animation stream.\n"); return; } } g_timeout_add(freq, (GSourceFunc) &anim_next_frame, model); model->animating = TRUE; } /****************************/ /* stop the animation timer */ /****************************/ void anim_stop(GtkWidget *w, gpointer data) { struct model_pak *model; model = dialog_model(data); g_assert(model != NULL); model->animating = FALSE; } /************************************/ /* toggle the render to file option */ /************************************/ void anim_render(GtkWidget *w, GtkWidget *a_frame) { if (sysenv.render.animate) gtk_widget_set_sensitive(GTK_WIDGET(a_frame), TRUE); else gtk_widget_set_sensitive(GTK_WIDGET(a_frame), FALSE); } /***********************************/ /* pbc confinement option handlers */ /***********************************/ void atom_pbc(struct model_pak *model) { model->anim_confine = PBC_CONFINE_ATOMS; } void mol_pbc(struct model_pak *model) { model->anim_confine = PBC_CONFINE_MOLS; } void no_pbc(struct model_pak *model) { model->anim_confine = PBC_CONFINE_NONE; } /********************/ /* cleanup callback */ /********************/ void animate_cleanup(struct model_pak *model) { g_assert(model != NULL); model->animating = FALSE; } /***********************/ /* configure animation */ /***********************/ void gui_animate_dialog(void) { gchar *tmp, *title; gpointer dialog; GtkWidget *window, *frame, *vbox, *hbox, *hbox2, *anim_box; GtkWidget *notebook, *page, *button, *label, *entry, *scale; GSList *group=NULL; struct model_pak *data; /* checks */ data = sysenv.active_model; if (!data) return; if (!data->animation) return; /* CURRENT */ /* anim_read_all_frames(data); */ /* prevent recording whilst in animation */ gui_mode_switch(FREE); /* dialog setup */ title = g_strdup_printf("Animation: %s", data->basename); dialog = dialog_request(ANIM, title, NULL, animate_cleanup, data); g_free(title); if (!dialog) return; window = dialog_window(dialog); /* notebook frame */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); /* create notebook */ notebook = gtk_notebook_new(); gtk_notebook_set_tab_pos(GTK_NOTEBOOK(notebook), GTK_POS_TOP); gtk_container_add(GTK_CONTAINER(frame), notebook); gtk_notebook_set_show_border(GTK_NOTEBOOK(notebook), TRUE); /* page 1 */ page = gtk_vbox_new(FALSE, PANEL_SPACING); label = gtk_label_new("Control"); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); /* general animation stuff */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(page),frame,FALSE,FALSE,0); /* create a vbox in the frame */ vbox = gtk_vbox_new(TRUE, PANEL_SPACING); gtk_container_add(GTK_CONTAINER(frame), vbox); /* num frames */ hbox = gtk_hbox_new(FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(hbox), PANEL_SPACING); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new("Number of frames:"); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); tmp = g_strdup_printf("%9d", data->num_frames); label = gtk_label_new(tmp); g_free(tmp); gtk_box_pack_end(GTK_BOX(hbox), label, FALSE, FALSE, 0); /* desired delay */ gui_direct_spin("Animation delay", &data->anim_speed, 1.0, 40.0, 1.0, NULL, NULL, vbox); gui_direct_spin("Animation step size ", &data->anim_step, 1.0, data->num_frames, 1.0, NULL, NULL, vbox); gui_direct_check("Don't recalculate connectivity", &data->anim_fix, NULL, NULL, vbox); gui_direct_check("Don't recalculate scale", &data->anim_noscale, NULL, NULL, vbox); gui_direct_check("Loop", &data->anim_loop, NULL, NULL, vbox); /* page 2 */ page = gtk_vbox_new(FALSE, PANEL_SPACING); label = gtk_label_new("Processing"); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); /* cycle options */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(page),frame,FALSE,FALSE,0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gtk_container_set_border_width(GTK_CONTAINER(vbox), PANEL_SPACING); /* actions at start of each cycle */ new_radio_group(0, vbox, FF); button = add_radio_button("Confine atoms to PBC", (gpointer) atom_pbc, data); if (data->anim_confine == PBC_CONFINE_ATOMS) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Confine mols to PBC", (gpointer) mol_pbc, data); if (data->anim_confine == PBC_CONFINE_MOLS) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Cell confinement off", (gpointer) no_pbc, data); if (data->anim_confine == PBC_CONFINE_NONE) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* page 3 */ page = gtk_vbox_new(FALSE, PANEL_SPACING); label = gtk_label_new("Rendering"); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); /* cycle options */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(page), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gtk_container_set_border_width(GTK_CONTAINER(vbox), PANEL_SPACING); anim_box = gtk_vbox_new(TRUE, 0); gui_direct_check("Create movie", &sysenv.render.animate, anim_render, anim_box, vbox); gtk_box_pack_end(GTK_BOX(vbox), anim_box, TRUE, TRUE, 0); /* sensitive box */ vbox = gtk_vbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(anim_box), vbox, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(vbox), PANEL_SPACING); /* start off with a button */ button = gtk_radio_button_new_with_label (NULL, "Animated GIF"); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(event_render_modify), (gpointer) button); gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, TRUE, 0); g_object_set_data(G_OBJECT(button), "id", (gpointer) ANIM_GIF); /* make a radio group */ group = gtk_radio_button_group(GTK_RADIO_BUTTON(button)); /* do the rest of the buttons */ button = gtk_radio_button_new_with_label(group, "MPEG"); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(event_render_modify), (gpointer) button); gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, TRUE, 0); g_object_set_data(G_OBJECT(button), "id", (gpointer) ANIM_MPEG); /* movie creation parameters */ gui_direct_spin("MPEG quality", &sysenv.render.mpeg_quality, 1, 100, 1, NULL, NULL, vbox); gui_direct_spin("Delay (ms)", &sysenv.render.delay, 0, 100, 5, NULL, NULL, vbox); /* file entry */ hbox = gtk_hbox_new (FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox),hbox,FALSE,TRUE,0); label = gtk_label_new("Filename "); gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0); entry = gtk_entry_new(); gtk_box_pack_end(GTK_BOX (hbox), entry, FALSE, TRUE, 0); gtk_entry_set_text(GTK_ENTRY(entry), sysenv.render.animate_file); /* update hook */ g_signal_connect(GTK_OBJECT(entry), "changed", GTK_SIGNAL_FUNC(event_render_modify), (gpointer) entry); g_object_set_data(G_OBJECT(entry), "id", (gpointer) ANIM_NAME); /* misc options */ /* gui_direct_check("Create povray input files then stop", &sysenv.render.no_povray_exec, NULL, NULL, vbox); gui_direct_check("Delete intermediate input/image files", &sysenv.render.no_keep_tempfiles, NULL, NULL, vbox); */ /* set initial state */ if (!sysenv.render.animate) gtk_widget_set_sensitive(anim_box, FALSE); /* NEW - slider for current frame */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, PANEL_SPACING); gtk_container_add(GTK_CONTAINER(frame), vbox); scale = gui_direct_hscale(0, data->num_frames-1, 1, &data->cur_frame, select_frame, data, vbox); gtk_range_set_update_policy(GTK_RANGE(scale), GTK_UPDATE_DISCONTINUOUS); /* control buttons */ hbox2 = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox2, FALSE, FALSE, PANEL_SPACING); hbox = gtk_hbox_new(TRUE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(hbox2), hbox, TRUE, FALSE, 0); gui_icon_button("GDIS_REWIND", NULL, anim_rewind, dialog, hbox); gui_icon_button("GDIS_STEP_BACKWARD", NULL, anim_step_backward, dialog, hbox); gui_icon_button("GDIS_PLAY", NULL, anim_start, dialog, hbox); gui_icon_button("GDIS_PAUSE", NULL, anim_stop, dialog, hbox); gui_icon_button("GDIS_STEP_FORWARD", NULL, anim_step_forward, dialog, hbox); gui_icon_button("GDIS_FASTFORWARD", NULL, anim_fastforward, dialog, hbox); gui_stock_button(GTK_STOCK_CLOSE, dialog_destroy, dialog, GTK_DIALOG(window)->action_area); /* display the dialog */ gtk_widget_show_all(window); gui_relation_update(data); } gdis-0.90/keywords.h0000644000175000017500000000446410455404141013054 0ustar seansean struct keyword_pak keywords[] = { {"sing", E_SINGLE}, {"opti", E_OPTIMIZE}, {"md", MD}, {"bfgs", BFGS_OPT}, {"rfo", RFO_OPT}, {"conj", CONJ_OPT}, {"conp", CONP}, {"conv", CONV}, {"mole", MOLE}, {"molm", MOLMEC}, {"molq", MOLQ}, {"qeq", QEQ}, {"free", FREE_ENERGY}, {"zsisa", ZSISA}, {"comp", COMPARE}, {"nosym", NOSYM}, {"fix", FIX}, {"phon", PHONON}, {"eigen", EIGEN}, {"unit", UNIT_HESSIAN}, {"kpoin", KPOINTS}, {"title", TITLE}, {"end", END}, {"name", NAME}, {"pcel", POLYMER_CELL}, {"pvec", POLYMER_VECTOR}, {"scel", SURFACE_CELL}, {"svec", SURFACE_VECTORS}, {"vect", LATTICE_VECTORS}, {"cell", CELL}, {"cart", CART}, {"frac", FRAC}, {"spac", SPACE}, {"orig", ORIGIN}, {"spec", SPECIES}, {"maxc", MAXCYC}, {"tota", TOTAL_ENERGY}, {"dhkl", D_HKL}, {"sbulk", SBULK_ENERGY}, {"dump", DUMP_FILE}, {"obse", GULP_OBSERVABLES}, {"ensem", ENSEMBLE}, {"temp", TEMPERATURE}, {"super", SUPER_CELL}, {"outp", OUTPUT}, {"libr", GULP_LIBRARY}, /* {"shrink", SHRINK}, */ {"switch", SWITCH_ON}, {"gnorm", GNORM}, {"cycle", CYCLE}, {"keyword", KEYWORD}, /* element */ {"elem", ELEMENT}, {"symbol", SYMBOL}, {"number", NUMBER}, {"weight", WEIGHT}, {"cova", COVALENT}, {"ionic", IONIC}, {"vdw", VDW}, {"charge", CHARGE}, {"colour", COLOUR}, /* cif */ {"_audit", CIF_AUDIT}, {"_refine", CIF_REFINE}, {"creation_date", CIF_CREATION_DATE}, {"loop_", CIF_LOOP_START}, {"data_", CIF_DATA_START}, {"_database_code_ICSD", CIF_DATABASE_CODE}, {"_chemical_name_systematic", CIF_CHEMICAL_NAME}, {"_chemical_name_mineral", CIF_MINERAL_NAME}, {"_cell_length_a", CIF_CELL_A}, {"_cell_length_b", CIF_CELL_B}, {"_cell_length_c", CIF_CELL_C}, {"_cell_angle_alpha", CIF_CELL_ALPHA}, {"_cell_angle_beta", CIF_CELL_BETA}, {"_cell_angle_gamma", CIF_CELL_GAMMA}, {"_symmetry_space_group_name_H-M", CIF_SPACE_NAME}, {"_symmetry_Int_Tables_number", CIF_SPACE_NUM}, {"_symmetry_equiv_pos_site_id", CIF_EQUIV_SITE}, {"_symmetry_equiv_pos_as_xyz", CIF_EQUIV_POS}, {"_atom_site", CIF_ATOM_SITE}, {"label", CIF_LABEL}, {"type_symbol", CIF_TYPE_SYMBOL}, {"cartn_x", CIF_CART_X}, {"cartn_y", CIF_CART_Y}, {"cartn_z", CIF_CART_Z}, {"fract_x", CIF_FRAC_X}, {"fract_y", CIF_FRAC_Y}, {"fract_z", CIF_FRAC_Z}, {"occupancy", CIF_SOF}, /* marvin */ {"basis", MARVIN_BASIS}, {"coord", MARVIN_COORD}, /* gdis data files */ {"\%gdis_elem", GDIS_ELEM_START}, {"\%gdis_end", GDIS_END}, {"last", -1} }; gdis-0.90/README.win320000644000175000017500000000025710064240533012650 0ustar seansean GDIS Windows requirements ------------------------- GTK runtime dll's : http://sourceforge.net/projects/gtk-win/ GTKGLEXT dll's : http://sourceforge.net/projects/gtkglext/ gdis-0.90/error.c0000644000175000017500000000540610445461557012343 0ustar seansean/* Copyright (C) 2000 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include "gdis.h" #include "interface.h" /* top level data structure */ extern struct sysenv_pak sysenv; gint error_table_display = TRUE; GHashTable *error_table=NULL; #define MAX_ERROR_COUNT 1000 /********************************/ /* error table printing display */ /********************************/ void error_table_disable(void) { error_table_display = FALSE; } /********************************/ /* error table printing display */ /********************************/ void error_table_enable(void) { error_table_display = TRUE; } /****************************************/ /* remove all entries in the hash table */ /****************************************/ void error_table_clear(void) { if (error_table) g_hash_table_destroy(error_table); error_table=g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free); } /************************/ /* print a single entry */ /************************/ void error_table_print(gpointer key, gpointer value, gpointer data) { gchar *msg, *text = key; gint *count = value; /* TODO - strstr - if error -> gui_show_text ERROR/WARNING/etc */ if (*count > MAX_ERROR_COUNT) msg = g_strdup_printf("[count >%d] %s", MAX_ERROR_COUNT, text); else msg = g_strdup_printf("[count %d] %s", *count, text); gui_text_show(ERROR,msg); g_free(msg); } /******************************************/ /* display all entries in the error table */ /******************************************/ void error_table_print_all(void) { /* allow display to be disabled (eg animations) */ if (error_table_display) g_hash_table_foreach(error_table, error_table_print, NULL); } /**************************************/ /* add a new entry to the error table */ /**************************************/ void error_table_entry(const gchar *text) { gint *count; count = g_hash_table_lookup(error_table, text); if (!count) { count = g_malloc0(sizeof(gint)); g_hash_table_insert(error_table, g_strdup(text), count); } (*count)++; } gdis-0.90/hirshfeld.h0000644000175000017500000000116510305244663013155 0ustar seansean/* * hirshfeld.h * gdis * * Created by Joshua McKinnon on 24/08/05. * Copyright 2005 __MyCompanyName__. All rights reserved. * */ /* Hirshfeld surface prototypes */ void hfs_init(void); gdouble hfs_calc_wf(gdouble, gdouble, gdouble, struct model_pak *, GSList *); GSList *hfs_calc_env(GSList *, struct model_pak *); int hfs_calc_normals(GSList *, struct model_pak *, GSList *); int ssatoms_calc_normals(GSList *points, struct model_pak *model); gdouble ssatoms_calc_density(gdouble, gdouble, gdouble, struct model_pak *); int hfs_calulation_limits(GSList *selection, struct model_pak *, gdouble *min, gdouble *max); gdis-0.90/soapC.c0000644000175000017500000430034511066571734012262 0ustar seansean/* soapC.c Generated by gSOAP 2.7.9k from grisu_ws.h Copyright(C) 2000-2007, Robert van Engelen, Genivia Inc. All Rights Reserved. This part of the software is released under one of the following licenses: GPL, the gSOAP public license, or Genivia's license for commercial use. */ #include "soapH.h" #ifdef __cplusplus extern "C" { #endif SOAP_SOURCE_STAMP("@(#) soapC.c ver 2.7.9k 2008-09-25 02:13:49 GMT") #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_serializeheader(struct soap *soap) { if (soap->header) soap_serialize_SOAP_ENV__Header(soap, soap->header); } SOAP_FMAC3 int SOAP_FMAC4 soap_putheader(struct soap *soap) { if (soap->header) { soap->part = SOAP_IN_HEADER; soap_out_SOAP_ENV__Header(soap, "SOAP-ENV:Header", 0, soap->header, NULL); soap->part = SOAP_END_HEADER; } return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_getheader(struct soap *soap) { soap->part = SOAP_IN_HEADER; soap->header = soap_in_SOAP_ENV__Header(soap, "SOAP-ENV:Header", NULL, NULL); soap->part = SOAP_END_HEADER; return soap->header == NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_header(struct soap *soap) { if (!soap->header) { soap->header = (struct SOAP_ENV__Header*)soap_malloc(soap, sizeof(struct SOAP_ENV__Header)); soap_default_SOAP_ENV__Header(soap, soap->header); } } SOAP_FMAC3 void SOAP_FMAC4 soap_fault(struct soap *soap) { if (!soap->fault) { soap->fault = (struct SOAP_ENV__Fault*)soap_malloc(soap, sizeof(struct SOAP_ENV__Fault)); soap_default_SOAP_ENV__Fault(soap, soap->fault); } if (soap->version == 2 && !soap->fault->SOAP_ENV__Code) { soap->fault->SOAP_ENV__Code = (struct SOAP_ENV__Code*)soap_malloc(soap, sizeof(struct SOAP_ENV__Code)); soap_default_SOAP_ENV__Code(soap, soap->fault->SOAP_ENV__Code); } if (soap->version == 2 && !soap->fault->SOAP_ENV__Reason) { soap->fault->SOAP_ENV__Reason = (struct SOAP_ENV__Reason*)soap_malloc(soap, sizeof(struct SOAP_ENV__Reason)); soap_default_SOAP_ENV__Reason(soap, soap->fault->SOAP_ENV__Reason); } } SOAP_FMAC3 void SOAP_FMAC4 soap_serializefault(struct soap *soap) { if (soap->fault) soap_serialize_SOAP_ENV__Fault(soap, soap->fault); } SOAP_FMAC3 int SOAP_FMAC4 soap_putfault(struct soap *soap) { if (soap->fault) return soap_put_SOAP_ENV__Fault(soap, soap->fault, "SOAP-ENV:Fault", NULL); return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_getfault(struct soap *soap) { return (soap->fault = soap_get_SOAP_ENV__Fault(soap, NULL, "SOAP-ENV:Fault", NULL)) == NULL; } SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultcode(struct soap *soap) { soap_fault(soap); if (soap->version == 2) return (const char**)&soap->fault->SOAP_ENV__Code->SOAP_ENV__Value; return (const char**)&soap->fault->faultcode; } SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultsubcode(struct soap *soap) { soap_fault(soap); if (soap->version == 2) { if (!soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode) { soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode = (struct SOAP_ENV__Code*)soap_malloc(soap, sizeof(struct SOAP_ENV__Code)); soap_default_SOAP_ENV__Code(soap, soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode); } return (const char**)&soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode->SOAP_ENV__Value; } return (const char**)&soap->fault->faultcode; } SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultstring(struct soap *soap) { soap_fault(soap); if (soap->version == 2) return (const char**)&soap->fault->SOAP_ENV__Reason->SOAP_ENV__Text; return (const char**)&soap->fault->faultstring; } SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultdetail(struct soap *soap) { soap_fault(soap); if (soap->version == 1) { if (!soap->fault->detail) { soap->fault->detail = (struct SOAP_ENV__Detail*)soap_malloc(soap, sizeof(struct SOAP_ENV__Detail)); soap_default_SOAP_ENV__Detail(soap, soap->fault->detail); } return (const char**)&soap->fault->detail->__any; } if (!soap->fault->SOAP_ENV__Detail) { soap->fault->SOAP_ENV__Detail = (struct SOAP_ENV__Detail*)soap_malloc(soap, sizeof(struct SOAP_ENV__Detail)); soap_default_SOAP_ENV__Detail(soap, soap->fault->SOAP_ENV__Detail); } return (const char**)&soap->fault->SOAP_ENV__Detail->__any; } #endif #ifndef WITH_NOIDREF SOAP_FMAC3 int SOAP_FMAC4 soap_getindependent(struct soap *soap) { int t; for (;;) if (!soap_getelement(soap, &t)) if (soap->error || soap_ignore_element(soap)) break; if (soap->error == SOAP_NO_TAG || soap->error == SOAP_EOF) soap->error = SOAP_OK; return soap->error; } #endif #ifndef WITH_NOIDREF SOAP_FMAC3 void * SOAP_FMAC4 soap_getelement(struct soap *soap, int *type) { if (soap_peek_element(soap)) return NULL; if (!*soap->id || !(*type = soap_lookup_type(soap, soap->id))) *type = soap_lookup_type(soap, soap->href); switch (*type) { case SOAP_TYPE_byte: return soap_in_byte(soap, NULL, NULL, "xsd:byte"); case SOAP_TYPE_int: return soap_in_int(soap, NULL, NULL, "xsd:int"); case SOAP_TYPE_LONG64: return soap_in_LONG64(soap, NULL, NULL, "xsd:long"); case SOAP_TYPE_double: return soap_in_double(soap, NULL, NULL, "xsd:double"); case SOAP_TYPE_unsignedByte: return soap_in_unsignedByte(soap, NULL, NULL, "xsd:unsignedByte"); case SOAP_TYPE_unsignedInt: return soap_in_unsignedInt(soap, NULL, NULL, "xsd:unsignedInt"); case SOAP_TYPE_time: return soap_in_time(soap, NULL, NULL, "xsd:dateTime"); case SOAP_TYPE_xsd__boolean: return soap_in_xsd__boolean(soap, NULL, NULL, "xsd:boolean"); case SOAP_TYPE_ns4__JobCreationException: return soap_in_ns4__JobCreationException(soap, NULL, NULL, "ns4:JobCreationException"); case SOAP_TYPE_ns2__JobSubmissionException: return soap_in_ns2__JobSubmissionException(soap, NULL, NULL, "ns2:JobSubmissionException"); case SOAP_TYPE_ns2__JobDescriptionNotValidException: return soap_in_ns2__JobDescriptionNotValidException(soap, NULL, NULL, "ns2:JobDescriptionNotValidException"); case SOAP_TYPE_ns2__NoSuchTemplateException: return soap_in_ns2__NoSuchTemplateException(soap, NULL, NULL, "ns2:NoSuchTemplateException"); case SOAP_TYPE_ns2__NoValidCredentialException: return soap_in_ns2__NoValidCredentialException(soap, NULL, NULL, "ns2:NoValidCredentialException"); case SOAP_TYPE_ns2__NoSuchJobException: return soap_in_ns2__NoSuchJobException(soap, NULL, NULL, "ns2:NoSuchJobException"); case SOAP_TYPE_ns2__RemoteFileSystemException: return soap_in_ns2__RemoteFileSystemException(soap, NULL, NULL, "ns2:RemoteFileSystemException"); case SOAP_TYPE_ns2__VomsException: return soap_in_ns2__VomsException(soap, NULL, NULL, "ns2:VomsException"); case SOAP_TYPE_ns3__ArrayOfMountPoint: return soap_in_ns3__ArrayOfMountPoint(soap, NULL, NULL, "ns3:ArrayOfMountPoint"); case SOAP_TYPE_ns3__MountPoint: return soap_in_ns3__MountPoint(soap, NULL, NULL, "ns3:MountPoint"); case SOAP_TYPE_ns1__anyType2anyTypeMap: return soap_in_ns1__anyType2anyTypeMap(soap, NULL, NULL, "ns1:anyType2anyTypeMap"); case SOAP_TYPE_ns1__ArrayOfString: return soap_in_ns1__ArrayOfString(soap, NULL, NULL, "ns1:ArrayOfString"); case SOAP_TYPE_xsd__base64Binary: return soap_in_xsd__base64Binary(soap, NULL, NULL, "xsd:base64Binary"); case SOAP_TYPE_PointerTo_ns1__getAllHostsResponse: return soap_in_PointerTo_ns1__getAllHostsResponse(soap, NULL, NULL, "ns1:getAllHostsResponse"); case SOAP_TYPE_PointerTo_ns1__getAllHosts: return soap_in_PointerTo_ns1__getAllHosts(soap, NULL, NULL, "ns1:getAllHosts"); case SOAP_TYPE_PointerTo_ns1__submitSupportRequestResponse: return soap_in_PointerTo_ns1__submitSupportRequestResponse(soap, NULL, NULL, "ns1:submitSupportRequestResponse"); case SOAP_TYPE_PointerTo_ns1__submitSupportRequest: return soap_in_PointerTo_ns1__submitSupportRequest(soap, NULL, NULL, "ns1:submitSupportRequest"); case SOAP_TYPE_PointerTo_ns1__getJobPropertyResponse: return soap_in_PointerTo_ns1__getJobPropertyResponse(soap, NULL, NULL, "ns1:getJobPropertyResponse"); case SOAP_TYPE_PointerTo_ns1__getJobProperty: return soap_in_PointerTo_ns1__getJobProperty(soap, NULL, NULL, "ns1:getJobProperty"); case SOAP_TYPE_PointerTo_ns1__mount1Response: return soap_in_PointerTo_ns1__mount1Response(soap, NULL, NULL, "ns1:mount1Response"); case SOAP_TYPE_PointerTo_ns1__mount1: return soap_in_PointerTo_ns1__mount1(soap, NULL, NULL, "ns1:mount1"); case SOAP_TYPE_PointerTo_ns1__getJobDetailsResponse: return soap_in_PointerTo_ns1__getJobDetailsResponse(soap, NULL, NULL, "ns1:getJobDetailsResponse"); case SOAP_TYPE_PointerTo_ns1__getJobDetails: return soap_in_PointerTo_ns1__getJobDetails(soap, NULL, NULL, "ns1:getJobDetails"); case SOAP_TYPE_PointerTo_ns1__umountResponse: return soap_in_PointerTo_ns1__umountResponse(soap, NULL, NULL, "ns1:umountResponse"); case SOAP_TYPE_PointerTo_ns1__umount: return soap_in_PointerTo_ns1__umount(soap, NULL, NULL, "ns1:umount"); case SOAP_TYPE_PointerTo_ns1__getJobStatusResponse: return soap_in_PointerTo_ns1__getJobStatusResponse(soap, NULL, NULL, "ns1:getJobStatusResponse"); case SOAP_TYPE_PointerTo_ns1__getJobStatus: return soap_in_PointerTo_ns1__getJobStatus(soap, NULL, NULL, "ns1:getJobStatus"); case SOAP_TYPE_PointerTo_ns1__getJobDetails_USCOREstringResponse: return soap_in_PointerTo_ns1__getJobDetails_USCOREstringResponse(soap, NULL, NULL, "ns1:getJobDetails_stringResponse"); case SOAP_TYPE_PointerTo_ns1__getJobDetails_USCOREstring: return soap_in_PointerTo_ns1__getJobDetails_USCOREstring(soap, NULL, NULL, "ns1:getJobDetails_string"); case SOAP_TYPE_PointerTo_ns1__getAllSitesResponse: return soap_in_PointerTo_ns1__getAllSitesResponse(soap, NULL, NULL, "ns1:getAllSitesResponse"); case SOAP_TYPE_PointerTo_ns1__getAllSites: return soap_in_PointerTo_ns1__getAllSites(soap, NULL, NULL, "ns1:getAllSites"); case SOAP_TYPE_PointerTo_ns1__setJobDescriptionResponse: return soap_in_PointerTo_ns1__setJobDescriptionResponse(soap, NULL, NULL, "ns1:setJobDescriptionResponse"); case SOAP_TYPE_PointerTo_ns1__setJobDescription: return soap_in_PointerTo_ns1__setJobDescription(soap, NULL, NULL, "ns1:setJobDescription"); case SOAP_TYPE_PointerTo_ns1__getJobDirectoryResponse: return soap_in_PointerTo_ns1__getJobDirectoryResponse(soap, NULL, NULL, "ns1:getJobDirectoryResponse"); case SOAP_TYPE_PointerTo_ns1__getJobDirectory: return soap_in_PointerTo_ns1__getJobDirectory(soap, NULL, NULL, "ns1:getJobDirectory"); case SOAP_TYPE_PointerTo_ns1__uploadResponse: return soap_in_PointerTo_ns1__uploadResponse(soap, NULL, NULL, "ns1:uploadResponse"); case SOAP_TYPE_PointerTo_ns1__upload: return soap_in_PointerTo_ns1__upload(soap, NULL, NULL, "ns1:upload"); case SOAP_TYPE_PointerTo_ns1__deleteFileResponse: return soap_in_PointerTo_ns1__deleteFileResponse(soap, NULL, NULL, "ns1:deleteFileResponse"); case SOAP_TYPE_PointerTo_ns1__deleteFile: return soap_in_PointerTo_ns1__deleteFile(soap, NULL, NULL, "ns1:deleteFile"); case SOAP_TYPE_PointerTo_ns1__getFileSizeResponse: return soap_in_PointerTo_ns1__getFileSizeResponse(soap, NULL, NULL, "ns1:getFileSizeResponse"); case SOAP_TYPE_PointerTo_ns1__getFileSize: return soap_in_PointerTo_ns1__getFileSize(soap, NULL, NULL, "ns1:getFileSize"); case SOAP_TYPE_PointerTo_ns1__cpResponse: return soap_in_PointerTo_ns1__cpResponse(soap, NULL, NULL, "ns1:cpResponse"); case SOAP_TYPE_PointerTo_ns1__cp: return soap_in_PointerTo_ns1__cp(soap, NULL, NULL, "ns1:cp"); case SOAP_TYPE_PointerTo_ns1__uploadByteArrayResponse: return soap_in_PointerTo_ns1__uploadByteArrayResponse(soap, NULL, NULL, "ns1:uploadByteArrayResponse"); case SOAP_TYPE_PointerTo_ns1__uploadByteArray: return soap_in_PointerTo_ns1__uploadByteArray(soap, NULL, NULL, "ns1:uploadByteArray"); case SOAP_TYPE_PointerTo_ns1__submitJobResponse: return soap_in_PointerTo_ns1__submitJobResponse(soap, NULL, NULL, "ns1:submitJobResponse"); case SOAP_TYPE_PointerTo_ns1__submitJob: return soap_in_PointerTo_ns1__submitJob(soap, NULL, NULL, "ns1:submitJob"); case SOAP_TYPE_PointerTo_ns1__logoutResponse: return soap_in_PointerTo_ns1__logoutResponse(soap, NULL, NULL, "ns1:logoutResponse"); case SOAP_TYPE_PointerTo_ns1__logout: return soap_in_PointerTo_ns1__logout(soap, NULL, NULL, "ns1:logout"); case SOAP_TYPE_PointerTo_ns1__setJobDescription_USCOREstringResponse: return soap_in_PointerTo_ns1__setJobDescription_USCOREstringResponse(soap, NULL, NULL, "ns1:setJobDescription_stringResponse"); case SOAP_TYPE_PointerTo_ns1__setJobDescription_USCOREstring: return soap_in_PointerTo_ns1__setJobDescription_USCOREstring(soap, NULL, NULL, "ns1:setJobDescription_string"); case SOAP_TYPE_PointerTo_ns1__calculateRelativeJobDirectoryResponse: return soap_in_PointerTo_ns1__calculateRelativeJobDirectoryResponse(soap, NULL, NULL, "ns1:calculateRelativeJobDirectoryResponse"); case SOAP_TYPE_PointerTo_ns1__calculateRelativeJobDirectory: return soap_in_PointerTo_ns1__calculateRelativeJobDirectory(soap, NULL, NULL, "ns1:calculateRelativeJobDirectory"); case SOAP_TYPE_PointerTo_ns1__getApplicationDetails1Response: return soap_in_PointerTo_ns1__getApplicationDetails1Response(soap, NULL, NULL, "ns1:getApplicationDetails1Response"); case SOAP_TYPE_PointerTo_ns1__getApplicationDetails1: return soap_in_PointerTo_ns1__getApplicationDetails1(soap, NULL, NULL, "ns1:getApplicationDetails1"); case SOAP_TYPE_PointerTo_ns1__lsResponse: return soap_in_PointerTo_ns1__lsResponse(soap, NULL, NULL, "ns1:lsResponse"); case SOAP_TYPE_PointerTo_ns1__ls: return soap_in_PointerTo_ns1__ls(soap, NULL, NULL, "ns1:ls"); case SOAP_TYPE_PointerTo_ns1__lastModifiedResponse: return soap_in_PointerTo_ns1__lastModifiedResponse(soap, NULL, NULL, "ns1:lastModifiedResponse"); case SOAP_TYPE_PointerTo_ns1__lastModified: return soap_in_PointerTo_ns1__lastModified(soap, NULL, NULL, "ns1:lastModified"); case SOAP_TYPE_PointerTo_ns1__getSiteResponse: return soap_in_PointerTo_ns1__getSiteResponse(soap, NULL, NULL, "ns1:getSiteResponse"); case SOAP_TYPE_PointerTo_ns1__getSite: return soap_in_PointerTo_ns1__getSite(soap, NULL, NULL, "ns1:getSite"); case SOAP_TYPE_PointerTo_ns1__ps_USCOREstringResponse: return soap_in_PointerTo_ns1__ps_USCOREstringResponse(soap, NULL, NULL, "ns1:ps_stringResponse"); case SOAP_TYPE_PointerTo_ns1__ps_USCOREstring: return soap_in_PointerTo_ns1__ps_USCOREstring(soap, NULL, NULL, "ns1:ps_string"); case SOAP_TYPE_PointerTo_ns1__uploadByteArray1Response: return soap_in_PointerTo_ns1__uploadByteArray1Response(soap, NULL, NULL, "ns1:uploadByteArray1Response"); case SOAP_TYPE_PointerTo_ns1__uploadByteArray1: return soap_in_PointerTo_ns1__uploadByteArray1(soap, NULL, NULL, "ns1:uploadByteArray1"); case SOAP_TYPE_PointerTo_ns1__getVersionsOfApplicationOnSiteResponse: return soap_in_PointerTo_ns1__getVersionsOfApplicationOnSiteResponse(soap, NULL, NULL, "ns1:getVersionsOfApplicationOnSiteResponse"); case SOAP_TYPE_PointerTo_ns1__getVersionsOfApplicationOnSite: return soap_in_PointerTo_ns1__getVersionsOfApplicationOnSite(soap, NULL, NULL, "ns1:getVersionsOfApplicationOnSite"); case SOAP_TYPE_PointerTo_ns1__getAllSubmissionLocations1Response: return soap_in_PointerTo_ns1__getAllSubmissionLocations1Response(soap, NULL, NULL, "ns1:getAllSubmissionLocations1Response"); case SOAP_TYPE_PointerTo_ns1__getAllSubmissionLocations1: return soap_in_PointerTo_ns1__getAllSubmissionLocations1(soap, NULL, NULL, "ns1:getAllSubmissionLocations1"); case SOAP_TYPE_PointerTo_ns1__createJobResponse: return soap_in_PointerTo_ns1__createJobResponse(soap, NULL, NULL, "ns1:createJobResponse"); case SOAP_TYPE_PointerTo_ns1__createJob: return soap_in_PointerTo_ns1__createJob(soap, NULL, NULL, "ns1:createJob"); case SOAP_TYPE_PointerTo_ns1__getInterfaceVersionResponse: return soap_in_PointerTo_ns1__getInterfaceVersionResponse(soap, NULL, NULL, "ns1:getInterfaceVersionResponse"); case SOAP_TYPE_PointerTo_ns1__getInterfaceVersion: return soap_in_PointerTo_ns1__getInterfaceVersion(soap, NULL, NULL, "ns1:getInterfaceVersion"); case SOAP_TYPE_PointerTo_ns1__getAllSubmissionLocationsResponse: return soap_in_PointerTo_ns1__getAllSubmissionLocationsResponse(soap, NULL, NULL, "ns1:getAllSubmissionLocationsResponse"); case SOAP_TYPE_PointerTo_ns1__getAllSubmissionLocations: return soap_in_PointerTo_ns1__getAllSubmissionLocations(soap, NULL, NULL, "ns1:getAllSubmissionLocations"); case SOAP_TYPE_PointerTo_ns1__addJobPropertyResponse: return soap_in_PointerTo_ns1__addJobPropertyResponse(soap, NULL, NULL, "ns1:addJobPropertyResponse"); case SOAP_TYPE_PointerTo_ns1__addJobProperty: return soap_in_PointerTo_ns1__addJobProperty(soap, NULL, NULL, "ns1:addJobProperty"); case SOAP_TYPE_PointerTo_ns1__addJobPropertiesResponse: return soap_in_PointerTo_ns1__addJobPropertiesResponse(soap, NULL, NULL, "ns1:addJobPropertiesResponse"); case SOAP_TYPE_PointerTo_ns1__addJobProperties: return soap_in_PointerTo_ns1__addJobProperties(soap, NULL, NULL, "ns1:addJobProperties"); case SOAP_TYPE_PointerTo_ns1__getAllAvailableApplicationsResponse: return soap_in_PointerTo_ns1__getAllAvailableApplicationsResponse(soap, NULL, NULL, "ns1:getAllAvailableApplicationsResponse"); case SOAP_TYPE_PointerTo_ns1__getAllAvailableApplications: return soap_in_PointerTo_ns1__getAllAvailableApplications(soap, NULL, NULL, "ns1:getAllAvailableApplications"); case SOAP_TYPE_PointerTo_ns1__killResponse: return soap_in_PointerTo_ns1__killResponse(soap, NULL, NULL, "ns1:killResponse"); case SOAP_TYPE_PointerTo_ns1__kill: return soap_in_PointerTo_ns1__kill(soap, NULL, NULL, "ns1:kill"); case SOAP_TYPE_PointerTo_ns1__isFolderResponse: return soap_in_PointerTo_ns1__isFolderResponse(soap, NULL, NULL, "ns1:isFolderResponse"); case SOAP_TYPE_PointerTo_ns1__isFolder: return soap_in_PointerTo_ns1__isFolder(soap, NULL, NULL, "ns1:isFolder"); case SOAP_TYPE_PointerTo_ns1__downloadResponse: return soap_in_PointerTo_ns1__downloadResponse(soap, NULL, NULL, "ns1:downloadResponse"); case SOAP_TYPE_PointerTo_ns1__download: return soap_in_PointerTo_ns1__download(soap, NULL, NULL, "ns1:download"); case SOAP_TYPE_PointerTo_ns1__getAllJobPropertiesResponse: return soap_in_PointerTo_ns1__getAllJobPropertiesResponse(soap, NULL, NULL, "ns1:getAllJobPropertiesResponse"); case SOAP_TYPE_PointerTo_ns1__getAllJobProperties: return soap_in_PointerTo_ns1__getAllJobProperties(soap, NULL, NULL, "ns1:getAllJobProperties"); case SOAP_TYPE_PointerTo_ns1__getAllJobnamesResponse: return soap_in_PointerTo_ns1__getAllJobnamesResponse(soap, NULL, NULL, "ns1:getAllJobnamesResponse"); case SOAP_TYPE_PointerTo_ns1__getAllJobnames: return soap_in_PointerTo_ns1__getAllJobnames(soap, NULL, NULL, "ns1:getAllJobnames"); case SOAP_TYPE_PointerTo_ns1__getDNResponse: return soap_in_PointerTo_ns1__getDNResponse(soap, NULL, NULL, "ns1:getDNResponse"); case SOAP_TYPE_PointerTo_ns1__getDN: return soap_in_PointerTo_ns1__getDN(soap, NULL, NULL, "ns1:getDN"); case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplicationResponse: return soap_in_PointerTo_ns1__getSubmissionLocationsForApplicationResponse(soap, NULL, NULL, "ns1:getSubmissionLocationsForApplicationResponse"); case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication: return soap_in_PointerTo_ns1__getSubmissionLocationsForApplication(soap, NULL, NULL, "ns1:getSubmissionLocationsForApplication"); case SOAP_TYPE_PointerTo_ns1__createJob1Response: return soap_in_PointerTo_ns1__createJob1Response(soap, NULL, NULL, "ns1:createJob1Response"); case SOAP_TYPE_PointerTo_ns1__createJob1: return soap_in_PointerTo_ns1__createJob1(soap, NULL, NULL, "ns1:createJob1"); case SOAP_TYPE_PointerTo_ns1__getApplicationDetailsResponse: return soap_in_PointerTo_ns1__getApplicationDetailsResponse(soap, NULL, NULL, "ns1:getApplicationDetailsResponse"); case SOAP_TYPE_PointerTo_ns1__getApplicationDetails: return soap_in_PointerTo_ns1__getApplicationDetails(soap, NULL, NULL, "ns1:getApplicationDetails"); case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication1Response: return soap_in_PointerTo_ns1__getSubmissionLocationsForApplication1Response(soap, NULL, NULL, "ns1:getSubmissionLocationsForApplication1Response"); case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication1: return soap_in_PointerTo_ns1__getSubmissionLocationsForApplication1(soap, NULL, NULL, "ns1:getSubmissionLocationsForApplication1"); case SOAP_TYPE_PointerTo_ns1__ls_USCOREstringResponse: return soap_in_PointerTo_ns1__ls_USCOREstringResponse(soap, NULL, NULL, "ns1:ls_stringResponse"); case SOAP_TYPE_PointerTo_ns1__ls_USCOREstring: return soap_in_PointerTo_ns1__ls_USCOREstring(soap, NULL, NULL, "ns1:ls_string"); case SOAP_TYPE_PointerTo_ns1__calculateAbsoluteJobDirectoryResponse: return soap_in_PointerTo_ns1__calculateAbsoluteJobDirectoryResponse(soap, NULL, NULL, "ns1:calculateAbsoluteJobDirectoryResponse"); case SOAP_TYPE_PointerTo_ns1__calculateAbsoluteJobDirectory: return soap_in_PointerTo_ns1__calculateAbsoluteJobDirectory(soap, NULL, NULL, "ns1:calculateAbsoluteJobDirectory"); case SOAP_TYPE_PointerTo_ns1__getMessagesSinceResponse: return soap_in_PointerTo_ns1__getMessagesSinceResponse(soap, NULL, NULL, "ns1:getMessagesSinceResponse"); case SOAP_TYPE_PointerTo_ns1__getMessagesSince: return soap_in_PointerTo_ns1__getMessagesSince(soap, NULL, NULL, "ns1:getMessagesSince"); case SOAP_TYPE_PointerTo_ns1__deleteFilesResponse: return soap_in_PointerTo_ns1__deleteFilesResponse(soap, NULL, NULL, "ns1:deleteFilesResponse"); case SOAP_TYPE_PointerTo_ns1__deleteFiles: return soap_in_PointerTo_ns1__deleteFiles(soap, NULL, NULL, "ns1:deleteFiles"); case SOAP_TYPE_PointerTo_ns1__listHostedApplicationTemplatesResponse: return soap_in_PointerTo_ns1__listHostedApplicationTemplatesResponse(soap, NULL, NULL, "ns1:listHostedApplicationTemplatesResponse"); case SOAP_TYPE_PointerTo_ns1__listHostedApplicationTemplates: return soap_in_PointerTo_ns1__listHostedApplicationTemplates(soap, NULL, NULL, "ns1:listHostedApplicationTemplates"); case SOAP_TYPE_PointerTo_ns1__downloadByteArray1Response: return soap_in_PointerTo_ns1__downloadByteArray1Response(soap, NULL, NULL, "ns1:downloadByteArray1Response"); case SOAP_TYPE_PointerTo_ns1__downloadByteArray1: return soap_in_PointerTo_ns1__downloadByteArray1(soap, NULL, NULL, "ns1:downloadByteArray1"); case SOAP_TYPE_PointerTo_ns1__getTemplate1Response: return soap_in_PointerTo_ns1__getTemplate1Response(soap, NULL, NULL, "ns1:getTemplate1Response"); case SOAP_TYPE_PointerTo_ns1__getTemplate1: return soap_in_PointerTo_ns1__getTemplate1(soap, NULL, NULL, "ns1:getTemplate1"); case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplicationResponse: return soap_in_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplicationResponse(soap, NULL, NULL, "ns1:getSubmissionLocationsPerVersionOfApplicationResponse"); case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication: return soap_in_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication(soap, NULL, NULL, "ns1:getSubmissionLocationsPerVersionOfApplication"); case SOAP_TYPE_PointerTo_ns1__getDataLocationsForVOResponse: return soap_in_PointerTo_ns1__getDataLocationsForVOResponse(soap, NULL, NULL, "ns1:getDataLocationsForVOResponse"); case SOAP_TYPE_PointerTo_ns1__getDataLocationsForVO: return soap_in_PointerTo_ns1__getDataLocationsForVO(soap, NULL, NULL, "ns1:getDataLocationsForVO"); case SOAP_TYPE_PointerTo_ns1__mkdirResponse: return soap_in_PointerTo_ns1__mkdirResponse(soap, NULL, NULL, "ns1:mkdirResponse"); case SOAP_TYPE_PointerTo_ns1__mkdir: return soap_in_PointerTo_ns1__mkdir(soap, NULL, NULL, "ns1:mkdir"); case SOAP_TYPE_PointerTo_ns1__getUserPropertyResponse: return soap_in_PointerTo_ns1__getUserPropertyResponse(soap, NULL, NULL, "ns1:getUserPropertyResponse"); case SOAP_TYPE_PointerTo_ns1__getUserProperty: return soap_in_PointerTo_ns1__getUserProperty(soap, NULL, NULL, "ns1:getUserProperty"); case SOAP_TYPE_PointerTo_ns1__getStagingFileSystemForSubmissionLocationResponse: return soap_in_PointerTo_ns1__getStagingFileSystemForSubmissionLocationResponse(soap, NULL, NULL, "ns1:getStagingFileSystemForSubmissionLocationResponse"); case SOAP_TYPE_PointerTo_ns1__getStagingFileSystemForSubmissionLocation: return soap_in_PointerTo_ns1__getStagingFileSystemForSubmissionLocation(soap, NULL, NULL, "ns1:getStagingFileSystemForSubmissionLocation"); case SOAP_TYPE_PointerTo_ns1__psResponse: return soap_in_PointerTo_ns1__psResponse(soap, NULL, NULL, "ns1:psResponse"); case SOAP_TYPE_PointerTo_ns1__ps: return soap_in_PointerTo_ns1__ps(soap, NULL, NULL, "ns1:ps"); case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication2Response: return soap_in_PointerTo_ns1__getSubmissionLocationsForApplication2Response(soap, NULL, NULL, "ns1:getSubmissionLocationsForApplication2Response"); case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication2: return soap_in_PointerTo_ns1__getSubmissionLocationsForApplication2(soap, NULL, NULL, "ns1:getSubmissionLocationsForApplication2"); case SOAP_TYPE_PointerTo_ns1__downloadByteArrayResponse: return soap_in_PointerTo_ns1__downloadByteArrayResponse(soap, NULL, NULL, "ns1:downloadByteArrayResponse"); case SOAP_TYPE_PointerTo_ns1__downloadByteArray: return soap_in_PointerTo_ns1__downloadByteArray(soap, NULL, NULL, "ns1:downloadByteArray"); case SOAP_TYPE_PointerTo_ns1__dfResponse: return soap_in_PointerTo_ns1__dfResponse(soap, NULL, NULL, "ns1:dfResponse"); case SOAP_TYPE_PointerTo_ns1__df: return soap_in_PointerTo_ns1__df(soap, NULL, NULL, "ns1:df"); case SOAP_TYPE_PointerTo_ns1__getFqansResponse: return soap_in_PointerTo_ns1__getFqansResponse(soap, NULL, NULL, "ns1:getFqansResponse"); case SOAP_TYPE_PointerTo_ns1__getFqans: return soap_in_PointerTo_ns1__getFqans(soap, NULL, NULL, "ns1:getFqans"); case SOAP_TYPE_PointerTo_ns1__getTemplateResponse: return soap_in_PointerTo_ns1__getTemplateResponse(soap, NULL, NULL, "ns1:getTemplateResponse"); case SOAP_TYPE_PointerTo_ns1__getTemplate: return soap_in_PointerTo_ns1__getTemplate(soap, NULL, NULL, "ns1:getTemplate"); case SOAP_TYPE_PointerTo_ns1__loginResponse: return soap_in_PointerTo_ns1__loginResponse(soap, NULL, NULL, "ns1:loginResponse"); case SOAP_TYPE_PointerTo_ns1__login: return soap_in_PointerTo_ns1__login(soap, NULL, NULL, "ns1:login"); case SOAP_TYPE_PointerTo_ns1__mountResponse: return soap_in_PointerTo_ns1__mountResponse(soap, NULL, NULL, "ns1:mountResponse"); case SOAP_TYPE_PointerTo_ns1__mount: return soap_in_PointerTo_ns1__mount(soap, NULL, NULL, "ns1:mount"); case SOAP_TYPE_PointerTo_ns1__getJobFqanResponse: return soap_in_PointerTo_ns1__getJobFqanResponse(soap, NULL, NULL, "ns1:getJobFqanResponse"); case SOAP_TYPE_PointerTo_ns1__getJobFqan: return soap_in_PointerTo_ns1__getJobFqan(soap, NULL, NULL, "ns1:getJobFqan"); case SOAP_TYPE_PointerTo_ns1__getChildrenFilesResponse: return soap_in_PointerTo_ns1__getChildrenFilesResponse(soap, NULL, NULL, "ns1:getChildrenFilesResponse"); case SOAP_TYPE_PointerTo_ns1__getChildrenFiles: return soap_in_PointerTo_ns1__getChildrenFiles(soap, NULL, NULL, "ns1:getChildrenFiles"); case SOAP_TYPE_PointerTons2__VomsException: return soap_in_PointerTons2__VomsException(soap, NULL, NULL, "ns2:VomsException"); case SOAP_TYPE_PointerTons2__RemoteFileSystemException: return soap_in_PointerTons2__RemoteFileSystemException(soap, NULL, NULL, "ns2:RemoteFileSystemException"); case SOAP_TYPE_PointerTons2__NoValidCredentialException: return soap_in_PointerTons2__NoValidCredentialException(soap, NULL, NULL, "ns2:NoValidCredentialException"); case SOAP_TYPE_PointerTons2__NoSuchTemplateException: return soap_in_PointerTons2__NoSuchTemplateException(soap, NULL, NULL, "ns2:NoSuchTemplateException"); case SOAP_TYPE_PointerTons2__NoSuchJobException: return soap_in_PointerTons2__NoSuchJobException(soap, NULL, NULL, "ns2:NoSuchJobException"); case SOAP_TYPE_PointerTons2__JobSubmissionException: return soap_in_PointerTons2__JobSubmissionException(soap, NULL, NULL, "ns2:JobSubmissionException"); case SOAP_TYPE_PointerTons2__JobDescriptionNotValidException: return soap_in_PointerTons2__JobDescriptionNotValidException(soap, NULL, NULL, "ns2:JobDescriptionNotValidException"); case SOAP_TYPE_PointerTons4__JobCreationException: return soap_in_PointerTons4__JobCreationException(soap, NULL, NULL, "ns4:JobCreationException"); case SOAP_TYPE_PointerToLONG64: return soap_in_PointerToLONG64(soap, NULL, NULL, "xsd:long"); case SOAP_TYPE_PointerToxsd__boolean: return soap_in_PointerToxsd__boolean(soap, NULL, NULL, "xsd:boolean"); case SOAP_TYPE_PointerTons1__anyType2anyTypeMap: return soap_in_PointerTons1__anyType2anyTypeMap(soap, NULL, NULL, "ns1:anyType2anyTypeMap"); case SOAP_TYPE_PointerToxsd__base64Binary: return soap_in_PointerToxsd__base64Binary(soap, NULL, NULL, "xsd:base64Binary"); case SOAP_TYPE_PointerTons3__ArrayOfMountPoint: return soap_in_PointerTons3__ArrayOfMountPoint(soap, NULL, NULL, "ns3:ArrayOfMountPoint"); case SOAP_TYPE_PointerTons3__MountPoint: return soap_in_PointerTons3__MountPoint(soap, NULL, NULL, "ns3:MountPoint"); case SOAP_TYPE_PointerTons1__ArrayOfString: return soap_in_PointerTons1__ArrayOfString(soap, NULL, NULL, "ns1:ArrayOfString"); case SOAP_TYPE_PointerTo_ns1__anyType2anyTypeMap_entry: return soap_in_PointerTo_ns1__anyType2anyTypeMap_entry(soap, NULL, NULL, "ns1:anyType2anyTypeMap-entry"); case SOAP_TYPE_PointerTostring: return soap_in_PointerTostring(soap, NULL, NULL, "xsd:string"); case SOAP_TYPE_PointerTounsignedByte: return soap_in_PointerTounsignedByte(soap, NULL, NULL, "xsd:unsignedByte"); case SOAP_TYPE_string: { char **s; s = soap_in_string(soap, NULL, NULL, "xsd:string"); return s ? *s : NULL; } default: { const char *t = soap->type; if (!*t) t = soap->tag; if (!soap_match_tag(soap, t, "xsd:byte")) { *type = SOAP_TYPE_byte; return soap_in_byte(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "xsd:int")) { *type = SOAP_TYPE_int; return soap_in_int(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "xsd:long")) { *type = SOAP_TYPE_LONG64; return soap_in_LONG64(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "xsd:double")) { *type = SOAP_TYPE_double; return soap_in_double(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "xsd:unsignedByte")) { *type = SOAP_TYPE_unsignedByte; return soap_in_unsignedByte(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "xsd:unsignedInt")) { *type = SOAP_TYPE_unsignedInt; return soap_in_unsignedInt(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "xsd:dateTime")) { *type = SOAP_TYPE_time; return soap_in_time(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "xsd:boolean")) { *type = SOAP_TYPE_xsd__boolean; return soap_in_xsd__boolean(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns4:JobCreationException")) { *type = SOAP_TYPE_ns4__JobCreationException; return soap_in_ns4__JobCreationException(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns2:JobSubmissionException")) { *type = SOAP_TYPE_ns2__JobSubmissionException; return soap_in_ns2__JobSubmissionException(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns2:JobDescriptionNotValidException")) { *type = SOAP_TYPE_ns2__JobDescriptionNotValidException; return soap_in_ns2__JobDescriptionNotValidException(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns2:NoSuchTemplateException")) { *type = SOAP_TYPE_ns2__NoSuchTemplateException; return soap_in_ns2__NoSuchTemplateException(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns2:NoValidCredentialException")) { *type = SOAP_TYPE_ns2__NoValidCredentialException; return soap_in_ns2__NoValidCredentialException(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns2:NoSuchJobException")) { *type = SOAP_TYPE_ns2__NoSuchJobException; return soap_in_ns2__NoSuchJobException(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns2:RemoteFileSystemException")) { *type = SOAP_TYPE_ns2__RemoteFileSystemException; return soap_in_ns2__RemoteFileSystemException(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns2:VomsException")) { *type = SOAP_TYPE_ns2__VomsException; return soap_in_ns2__VomsException(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns3:ArrayOfMountPoint")) { *type = SOAP_TYPE_ns3__ArrayOfMountPoint; return soap_in_ns3__ArrayOfMountPoint(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns3:MountPoint")) { *type = SOAP_TYPE_ns3__MountPoint; return soap_in_ns3__MountPoint(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:anyType2anyTypeMap")) { *type = SOAP_TYPE_ns1__anyType2anyTypeMap; return soap_in_ns1__anyType2anyTypeMap(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:ArrayOfString")) { *type = SOAP_TYPE_ns1__ArrayOfString; return soap_in_ns1__ArrayOfString(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "xsd:base64Binary")) { *type = SOAP_TYPE_xsd__base64Binary; return soap_in_xsd__base64Binary(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "xsd:string")) { char **s; *type = SOAP_TYPE_string; s = soap_in_string(soap, NULL, NULL, NULL); return s ? *s : NULL; } t = soap->tag; if (!soap_match_tag(soap, t, "ns1:getAllHostsResponse")) { *type = SOAP_TYPE__ns1__getAllHostsResponse; return soap_in__ns1__getAllHostsResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getAllHosts")) { *type = SOAP_TYPE__ns1__getAllHosts; return soap_in__ns1__getAllHosts(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:submitSupportRequestResponse")) { *type = SOAP_TYPE__ns1__submitSupportRequestResponse; return soap_in__ns1__submitSupportRequestResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:submitSupportRequest")) { *type = SOAP_TYPE__ns1__submitSupportRequest; return soap_in__ns1__submitSupportRequest(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getJobPropertyResponse")) { *type = SOAP_TYPE__ns1__getJobPropertyResponse; return soap_in__ns1__getJobPropertyResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getJobProperty")) { *type = SOAP_TYPE__ns1__getJobProperty; return soap_in__ns1__getJobProperty(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:mount1Response")) { *type = SOAP_TYPE__ns1__mount1Response; return soap_in__ns1__mount1Response(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:mount1")) { *type = SOAP_TYPE__ns1__mount1; return soap_in__ns1__mount1(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getJobDetailsResponse")) { *type = SOAP_TYPE__ns1__getJobDetailsResponse; return soap_in__ns1__getJobDetailsResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getJobDetails")) { *type = SOAP_TYPE__ns1__getJobDetails; return soap_in__ns1__getJobDetails(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:umountResponse")) { *type = SOAP_TYPE__ns1__umountResponse; return soap_in__ns1__umountResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:umount")) { *type = SOAP_TYPE__ns1__umount; return soap_in__ns1__umount(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getJobStatusResponse")) { *type = SOAP_TYPE__ns1__getJobStatusResponse; return soap_in__ns1__getJobStatusResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getJobStatus")) { *type = SOAP_TYPE__ns1__getJobStatus; return soap_in__ns1__getJobStatus(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getJobDetails_stringResponse")) { *type = SOAP_TYPE__ns1__getJobDetails_USCOREstringResponse; return soap_in__ns1__getJobDetails_USCOREstringResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getJobDetails_string")) { *type = SOAP_TYPE__ns1__getJobDetails_USCOREstring; return soap_in__ns1__getJobDetails_USCOREstring(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getAllSitesResponse")) { *type = SOAP_TYPE__ns1__getAllSitesResponse; return soap_in__ns1__getAllSitesResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getAllSites")) { *type = SOAP_TYPE__ns1__getAllSites; return soap_in__ns1__getAllSites(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:setJobDescriptionResponse")) { *type = SOAP_TYPE__ns1__setJobDescriptionResponse; return soap_in__ns1__setJobDescriptionResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:setJobDescription")) { *type = SOAP_TYPE__ns1__setJobDescription; return soap_in__ns1__setJobDescription(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getJobDirectoryResponse")) { *type = SOAP_TYPE__ns1__getJobDirectoryResponse; return soap_in__ns1__getJobDirectoryResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getJobDirectory")) { *type = SOAP_TYPE__ns1__getJobDirectory; return soap_in__ns1__getJobDirectory(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:uploadResponse")) { *type = SOAP_TYPE__ns1__uploadResponse; return soap_in__ns1__uploadResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:upload")) { *type = SOAP_TYPE__ns1__upload; return soap_in__ns1__upload(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:deleteFileResponse")) { *type = SOAP_TYPE__ns1__deleteFileResponse; return soap_in__ns1__deleteFileResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:deleteFile")) { *type = SOAP_TYPE__ns1__deleteFile; return soap_in__ns1__deleteFile(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getFileSizeResponse")) { *type = SOAP_TYPE__ns1__getFileSizeResponse; return soap_in__ns1__getFileSizeResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getFileSize")) { *type = SOAP_TYPE__ns1__getFileSize; return soap_in__ns1__getFileSize(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:cpResponse")) { *type = SOAP_TYPE__ns1__cpResponse; return soap_in__ns1__cpResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:cp")) { *type = SOAP_TYPE__ns1__cp; return soap_in__ns1__cp(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:uploadByteArrayResponse")) { *type = SOAP_TYPE__ns1__uploadByteArrayResponse; return soap_in__ns1__uploadByteArrayResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:uploadByteArray")) { *type = SOAP_TYPE__ns1__uploadByteArray; return soap_in__ns1__uploadByteArray(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:submitJobResponse")) { *type = SOAP_TYPE__ns1__submitJobResponse; return soap_in__ns1__submitJobResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:submitJob")) { *type = SOAP_TYPE__ns1__submitJob; return soap_in__ns1__submitJob(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:logoutResponse")) { *type = SOAP_TYPE__ns1__logoutResponse; return soap_in__ns1__logoutResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:logout")) { *type = SOAP_TYPE__ns1__logout; return soap_in__ns1__logout(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:setJobDescription_stringResponse")) { *type = SOAP_TYPE__ns1__setJobDescription_USCOREstringResponse; return soap_in__ns1__setJobDescription_USCOREstringResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:setJobDescription_string")) { *type = SOAP_TYPE__ns1__setJobDescription_USCOREstring; return soap_in__ns1__setJobDescription_USCOREstring(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:calculateRelativeJobDirectoryResponse")) { *type = SOAP_TYPE__ns1__calculateRelativeJobDirectoryResponse; return soap_in__ns1__calculateRelativeJobDirectoryResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:calculateRelativeJobDirectory")) { *type = SOAP_TYPE__ns1__calculateRelativeJobDirectory; return soap_in__ns1__calculateRelativeJobDirectory(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getApplicationDetails1Response")) { *type = SOAP_TYPE__ns1__getApplicationDetails1Response; return soap_in__ns1__getApplicationDetails1Response(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getApplicationDetails1")) { *type = SOAP_TYPE__ns1__getApplicationDetails1; return soap_in__ns1__getApplicationDetails1(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:lsResponse")) { *type = SOAP_TYPE__ns1__lsResponse; return soap_in__ns1__lsResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:ls")) { *type = SOAP_TYPE__ns1__ls; return soap_in__ns1__ls(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:lastModifiedResponse")) { *type = SOAP_TYPE__ns1__lastModifiedResponse; return soap_in__ns1__lastModifiedResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:lastModified")) { *type = SOAP_TYPE__ns1__lastModified; return soap_in__ns1__lastModified(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getSiteResponse")) { *type = SOAP_TYPE__ns1__getSiteResponse; return soap_in__ns1__getSiteResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getSite")) { *type = SOAP_TYPE__ns1__getSite; return soap_in__ns1__getSite(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:ps_stringResponse")) { *type = SOAP_TYPE__ns1__ps_USCOREstringResponse; return soap_in__ns1__ps_USCOREstringResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:ps_string")) { *type = SOAP_TYPE__ns1__ps_USCOREstring; return soap_in__ns1__ps_USCOREstring(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:uploadByteArray1Response")) { *type = SOAP_TYPE__ns1__uploadByteArray1Response; return soap_in__ns1__uploadByteArray1Response(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:uploadByteArray1")) { *type = SOAP_TYPE__ns1__uploadByteArray1; return soap_in__ns1__uploadByteArray1(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getVersionsOfApplicationOnSiteResponse")) { *type = SOAP_TYPE__ns1__getVersionsOfApplicationOnSiteResponse; return soap_in__ns1__getVersionsOfApplicationOnSiteResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getVersionsOfApplicationOnSite")) { *type = SOAP_TYPE__ns1__getVersionsOfApplicationOnSite; return soap_in__ns1__getVersionsOfApplicationOnSite(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getAllSubmissionLocations1Response")) { *type = SOAP_TYPE__ns1__getAllSubmissionLocations1Response; return soap_in__ns1__getAllSubmissionLocations1Response(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getAllSubmissionLocations1")) { *type = SOAP_TYPE__ns1__getAllSubmissionLocations1; return soap_in__ns1__getAllSubmissionLocations1(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:createJobResponse")) { *type = SOAP_TYPE__ns1__createJobResponse; return soap_in__ns1__createJobResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:createJob")) { *type = SOAP_TYPE__ns1__createJob; return soap_in__ns1__createJob(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getInterfaceVersionResponse")) { *type = SOAP_TYPE__ns1__getInterfaceVersionResponse; return soap_in__ns1__getInterfaceVersionResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getInterfaceVersion")) { *type = SOAP_TYPE__ns1__getInterfaceVersion; return soap_in__ns1__getInterfaceVersion(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getAllSubmissionLocationsResponse")) { *type = SOAP_TYPE__ns1__getAllSubmissionLocationsResponse; return soap_in__ns1__getAllSubmissionLocationsResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getAllSubmissionLocations")) { *type = SOAP_TYPE__ns1__getAllSubmissionLocations; return soap_in__ns1__getAllSubmissionLocations(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:addJobPropertyResponse")) { *type = SOAP_TYPE__ns1__addJobPropertyResponse; return soap_in__ns1__addJobPropertyResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:addJobProperty")) { *type = SOAP_TYPE__ns1__addJobProperty; return soap_in__ns1__addJobProperty(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:addJobPropertiesResponse")) { *type = SOAP_TYPE__ns1__addJobPropertiesResponse; return soap_in__ns1__addJobPropertiesResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:addJobProperties")) { *type = SOAP_TYPE__ns1__addJobProperties; return soap_in__ns1__addJobProperties(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getAllAvailableApplicationsResponse")) { *type = SOAP_TYPE__ns1__getAllAvailableApplicationsResponse; return soap_in__ns1__getAllAvailableApplicationsResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getAllAvailableApplications")) { *type = SOAP_TYPE__ns1__getAllAvailableApplications; return soap_in__ns1__getAllAvailableApplications(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:killResponse")) { *type = SOAP_TYPE__ns1__killResponse; return soap_in__ns1__killResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:kill")) { *type = SOAP_TYPE__ns1__kill; return soap_in__ns1__kill(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:isFolderResponse")) { *type = SOAP_TYPE__ns1__isFolderResponse; return soap_in__ns1__isFolderResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:isFolder")) { *type = SOAP_TYPE__ns1__isFolder; return soap_in__ns1__isFolder(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:downloadResponse")) { *type = SOAP_TYPE__ns1__downloadResponse; return soap_in__ns1__downloadResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:download")) { *type = SOAP_TYPE__ns1__download; return soap_in__ns1__download(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getAllJobPropertiesResponse")) { *type = SOAP_TYPE__ns1__getAllJobPropertiesResponse; return soap_in__ns1__getAllJobPropertiesResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getAllJobProperties")) { *type = SOAP_TYPE__ns1__getAllJobProperties; return soap_in__ns1__getAllJobProperties(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getAllJobnamesResponse")) { *type = SOAP_TYPE__ns1__getAllJobnamesResponse; return soap_in__ns1__getAllJobnamesResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getAllJobnames")) { *type = SOAP_TYPE__ns1__getAllJobnames; return soap_in__ns1__getAllJobnames(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getDNResponse")) { *type = SOAP_TYPE__ns1__getDNResponse; return soap_in__ns1__getDNResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getDN")) { *type = SOAP_TYPE__ns1__getDN; return soap_in__ns1__getDN(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getSubmissionLocationsForApplicationResponse")) { *type = SOAP_TYPE__ns1__getSubmissionLocationsForApplicationResponse; return soap_in__ns1__getSubmissionLocationsForApplicationResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getSubmissionLocationsForApplication")) { *type = SOAP_TYPE__ns1__getSubmissionLocationsForApplication; return soap_in__ns1__getSubmissionLocationsForApplication(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:createJob1Response")) { *type = SOAP_TYPE__ns1__createJob1Response; return soap_in__ns1__createJob1Response(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:createJob1")) { *type = SOAP_TYPE__ns1__createJob1; return soap_in__ns1__createJob1(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getApplicationDetailsResponse")) { *type = SOAP_TYPE__ns1__getApplicationDetailsResponse; return soap_in__ns1__getApplicationDetailsResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getApplicationDetails")) { *type = SOAP_TYPE__ns1__getApplicationDetails; return soap_in__ns1__getApplicationDetails(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getSubmissionLocationsForApplication1Response")) { *type = SOAP_TYPE__ns1__getSubmissionLocationsForApplication1Response; return soap_in__ns1__getSubmissionLocationsForApplication1Response(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getSubmissionLocationsForApplication1")) { *type = SOAP_TYPE__ns1__getSubmissionLocationsForApplication1; return soap_in__ns1__getSubmissionLocationsForApplication1(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:ls_stringResponse")) { *type = SOAP_TYPE__ns1__ls_USCOREstringResponse; return soap_in__ns1__ls_USCOREstringResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:ls_string")) { *type = SOAP_TYPE__ns1__ls_USCOREstring; return soap_in__ns1__ls_USCOREstring(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:calculateAbsoluteJobDirectoryResponse")) { *type = SOAP_TYPE__ns1__calculateAbsoluteJobDirectoryResponse; return soap_in__ns1__calculateAbsoluteJobDirectoryResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:calculateAbsoluteJobDirectory")) { *type = SOAP_TYPE__ns1__calculateAbsoluteJobDirectory; return soap_in__ns1__calculateAbsoluteJobDirectory(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getMessagesSinceResponse")) { *type = SOAP_TYPE__ns1__getMessagesSinceResponse; return soap_in__ns1__getMessagesSinceResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getMessagesSince")) { *type = SOAP_TYPE__ns1__getMessagesSince; return soap_in__ns1__getMessagesSince(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:deleteFilesResponse")) { *type = SOAP_TYPE__ns1__deleteFilesResponse; return soap_in__ns1__deleteFilesResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:deleteFiles")) { *type = SOAP_TYPE__ns1__deleteFiles; return soap_in__ns1__deleteFiles(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:listHostedApplicationTemplatesResponse")) { *type = SOAP_TYPE__ns1__listHostedApplicationTemplatesResponse; return soap_in__ns1__listHostedApplicationTemplatesResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:listHostedApplicationTemplates")) { *type = SOAP_TYPE__ns1__listHostedApplicationTemplates; return soap_in__ns1__listHostedApplicationTemplates(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:downloadByteArray1Response")) { *type = SOAP_TYPE__ns1__downloadByteArray1Response; return soap_in__ns1__downloadByteArray1Response(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:downloadByteArray1")) { *type = SOAP_TYPE__ns1__downloadByteArray1; return soap_in__ns1__downloadByteArray1(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getTemplate1Response")) { *type = SOAP_TYPE__ns1__getTemplate1Response; return soap_in__ns1__getTemplate1Response(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getTemplate1")) { *type = SOAP_TYPE__ns1__getTemplate1; return soap_in__ns1__getTemplate1(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getSubmissionLocationsPerVersionOfApplicationResponse")) { *type = SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplicationResponse; return soap_in__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getSubmissionLocationsPerVersionOfApplication")) { *type = SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplication; return soap_in__ns1__getSubmissionLocationsPerVersionOfApplication(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getDataLocationsForVOResponse")) { *type = SOAP_TYPE__ns1__getDataLocationsForVOResponse; return soap_in__ns1__getDataLocationsForVOResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getDataLocationsForVO")) { *type = SOAP_TYPE__ns1__getDataLocationsForVO; return soap_in__ns1__getDataLocationsForVO(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:mkdirResponse")) { *type = SOAP_TYPE__ns1__mkdirResponse; return soap_in__ns1__mkdirResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:mkdir")) { *type = SOAP_TYPE__ns1__mkdir; return soap_in__ns1__mkdir(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getUserPropertyResponse")) { *type = SOAP_TYPE__ns1__getUserPropertyResponse; return soap_in__ns1__getUserPropertyResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getUserProperty")) { *type = SOAP_TYPE__ns1__getUserProperty; return soap_in__ns1__getUserProperty(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getStagingFileSystemForSubmissionLocationResponse")) { *type = SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocationResponse; return soap_in__ns1__getStagingFileSystemForSubmissionLocationResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getStagingFileSystemForSubmissionLocation")) { *type = SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocation; return soap_in__ns1__getStagingFileSystemForSubmissionLocation(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:psResponse")) { *type = SOAP_TYPE__ns1__psResponse; return soap_in__ns1__psResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:ps")) { *type = SOAP_TYPE__ns1__ps; return soap_in__ns1__ps(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getSubmissionLocationsForApplication2Response")) { *type = SOAP_TYPE__ns1__getSubmissionLocationsForApplication2Response; return soap_in__ns1__getSubmissionLocationsForApplication2Response(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getSubmissionLocationsForApplication2")) { *type = SOAP_TYPE__ns1__getSubmissionLocationsForApplication2; return soap_in__ns1__getSubmissionLocationsForApplication2(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:downloadByteArrayResponse")) { *type = SOAP_TYPE__ns1__downloadByteArrayResponse; return soap_in__ns1__downloadByteArrayResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:downloadByteArray")) { *type = SOAP_TYPE__ns1__downloadByteArray; return soap_in__ns1__downloadByteArray(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:dfResponse")) { *type = SOAP_TYPE__ns1__dfResponse; return soap_in__ns1__dfResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:df")) { *type = SOAP_TYPE__ns1__df; return soap_in__ns1__df(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getFqansResponse")) { *type = SOAP_TYPE__ns1__getFqansResponse; return soap_in__ns1__getFqansResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getFqans")) { *type = SOAP_TYPE__ns1__getFqans; return soap_in__ns1__getFqans(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getTemplateResponse")) { *type = SOAP_TYPE__ns1__getTemplateResponse; return soap_in__ns1__getTemplateResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getTemplate")) { *type = SOAP_TYPE__ns1__getTemplate; return soap_in__ns1__getTemplate(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:loginResponse")) { *type = SOAP_TYPE__ns1__loginResponse; return soap_in__ns1__loginResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:login")) { *type = SOAP_TYPE__ns1__login; return soap_in__ns1__login(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:mountResponse")) { *type = SOAP_TYPE__ns1__mountResponse; return soap_in__ns1__mountResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:mount")) { *type = SOAP_TYPE__ns1__mount; return soap_in__ns1__mount(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getJobFqanResponse")) { *type = SOAP_TYPE__ns1__getJobFqanResponse; return soap_in__ns1__getJobFqanResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getJobFqan")) { *type = SOAP_TYPE__ns1__getJobFqan; return soap_in__ns1__getJobFqan(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getChildrenFilesResponse")) { *type = SOAP_TYPE__ns1__getChildrenFilesResponse; return soap_in__ns1__getChildrenFilesResponse(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:getChildrenFiles")) { *type = SOAP_TYPE__ns1__getChildrenFiles; return soap_in__ns1__getChildrenFiles(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "ns1:anyType2anyTypeMap-entry")) { *type = SOAP_TYPE__ns1__anyType2anyTypeMap_entry; return soap_in__ns1__anyType2anyTypeMap_entry(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "xop:Include")) { *type = SOAP_TYPE__xop__Include; return soap_in__xop__Include(soap, NULL, NULL, NULL); } if (!soap_match_tag(soap, t, "xsd:QName")) { char **s; *type = SOAP_TYPE__QName; s = soap_in__QName(soap, NULL, NULL, NULL); return s ? *s : NULL; } } } soap->error = SOAP_TAG_MISMATCH; return NULL; } #endif SOAP_FMAC3 int SOAP_FMAC4 soap_ignore_element(struct soap *soap) { if (!soap_peek_element(soap)) { int t; if (soap->mustUnderstand && !soap->other) return soap->error = SOAP_MUSTUNDERSTAND; if (((soap->mode & SOAP_XML_STRICT) && soap->part != SOAP_IN_HEADER) || !soap_match_tag(soap, soap->tag, "SOAP-ENV:")) { DBGLOG(TEST, SOAP_MESSAGE(fdebug, "REJECTING element '%s'\n", soap->tag)); return soap->error = SOAP_TAG_MISMATCH; } if (!*soap->id || !soap_getelement(soap, &t)) { soap->peeked = 0; DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Unknown element '%s' (level=%u, %d)\n", soap->tag, soap->level, soap->body)); if (soap->fignore) soap->error = soap->fignore(soap, soap->tag); else soap->error = SOAP_OK; DBGLOG(TEST, if (!soap->error) SOAP_MESSAGE(fdebug, "IGNORING element '%s'\n", soap->tag)); if (!soap->error && soap->body) { soap->level++; while (!soap_ignore_element(soap)) ; if (soap->error == SOAP_NO_TAG) soap->error = soap_element_end_in(soap, NULL); } } } return soap->error; } #ifndef WITH_NOIDREF SOAP_FMAC3 int SOAP_FMAC4 soap_putindependent(struct soap *soap) { int i; struct soap_plist *pp; if (soap->version == 1 && soap->encodingStyle && !(soap->mode & (SOAP_XML_TREE | SOAP_XML_GRAPH))) for (i = 0; i < SOAP_PTRHASH; i++) for (pp = soap->pht[i]; pp; pp = pp->next) if (pp->mark1 == 2 || pp->mark2 == 2) if (soap_putelement(soap, pp->ptr, "id", pp->id, pp->type)) return soap->error; return SOAP_OK; } #endif #ifndef WITH_NOIDREF SOAP_FMAC3 int SOAP_FMAC4 soap_putelement(struct soap *soap, const void *ptr, const char *tag, int id, int type) { switch (type) { case SOAP_TYPE_byte: return soap_out_byte(soap, tag, id, (const char *)ptr, "xsd:byte"); case SOAP_TYPE_int: return soap_out_int(soap, tag, id, (const int *)ptr, "xsd:int"); case SOAP_TYPE_LONG64: return soap_out_LONG64(soap, tag, id, (const LONG64 *)ptr, "xsd:long"); case SOAP_TYPE_double: return soap_out_double(soap, tag, id, (const double *)ptr, "xsd:double"); case SOAP_TYPE_unsignedByte: return soap_out_unsignedByte(soap, tag, id, (const unsigned char *)ptr, "xsd:unsignedByte"); case SOAP_TYPE_unsignedInt: return soap_out_unsignedInt(soap, tag, id, (const unsigned int *)ptr, "xsd:unsignedInt"); case SOAP_TYPE_time: return soap_out_time(soap, tag, id, (const time_t *)ptr, "xsd:dateTime"); case SOAP_TYPE_xsd__boolean: return soap_out_xsd__boolean(soap, tag, id, (const enum xsd__boolean *)ptr, "xsd:boolean"); case SOAP_TYPE_ns4__JobCreationException: return soap_out_ns4__JobCreationException(soap, tag, id, (const struct ns4__JobCreationException *)ptr, "ns4:JobCreationException"); case SOAP_TYPE_ns2__JobSubmissionException: return soap_out_ns2__JobSubmissionException(soap, tag, id, (const struct ns2__JobSubmissionException *)ptr, "ns2:JobSubmissionException"); case SOAP_TYPE_ns2__JobDescriptionNotValidException: return soap_out_ns2__JobDescriptionNotValidException(soap, tag, id, (const struct ns2__JobDescriptionNotValidException *)ptr, "ns2:JobDescriptionNotValidException"); case SOAP_TYPE_ns2__NoSuchTemplateException: return soap_out_ns2__NoSuchTemplateException(soap, tag, id, (const struct ns2__NoSuchTemplateException *)ptr, "ns2:NoSuchTemplateException"); case SOAP_TYPE_ns2__NoValidCredentialException: return soap_out_ns2__NoValidCredentialException(soap, tag, id, (const struct ns2__NoValidCredentialException *)ptr, "ns2:NoValidCredentialException"); case SOAP_TYPE_ns2__NoSuchJobException: return soap_out_ns2__NoSuchJobException(soap, tag, id, (const struct ns2__NoSuchJobException *)ptr, "ns2:NoSuchJobException"); case SOAP_TYPE_ns2__RemoteFileSystemException: return soap_out_ns2__RemoteFileSystemException(soap, tag, id, (const struct ns2__RemoteFileSystemException *)ptr, "ns2:RemoteFileSystemException"); case SOAP_TYPE_ns2__VomsException: return soap_out_ns2__VomsException(soap, tag, id, (const struct ns2__VomsException *)ptr, "ns2:VomsException"); case SOAP_TYPE__ns1__getAllHostsResponse: return soap_out__ns1__getAllHostsResponse(soap, "ns1:getAllHostsResponse", id, (const struct _ns1__getAllHostsResponse *)ptr, NULL); case SOAP_TYPE__ns1__getAllHosts: return soap_out__ns1__getAllHosts(soap, "ns1:getAllHosts", id, (const struct _ns1__getAllHosts *)ptr, NULL); case SOAP_TYPE__ns1__submitSupportRequestResponse: return soap_out__ns1__submitSupportRequestResponse(soap, "ns1:submitSupportRequestResponse", id, (const struct _ns1__submitSupportRequestResponse *)ptr, NULL); case SOAP_TYPE__ns1__submitSupportRequest: return soap_out__ns1__submitSupportRequest(soap, "ns1:submitSupportRequest", id, (const struct _ns1__submitSupportRequest *)ptr, NULL); case SOAP_TYPE__ns1__getJobPropertyResponse: return soap_out__ns1__getJobPropertyResponse(soap, "ns1:getJobPropertyResponse", id, (const struct _ns1__getJobPropertyResponse *)ptr, NULL); case SOAP_TYPE__ns1__getJobProperty: return soap_out__ns1__getJobProperty(soap, "ns1:getJobProperty", id, (const struct _ns1__getJobProperty *)ptr, NULL); case SOAP_TYPE__ns1__mount1Response: return soap_out__ns1__mount1Response(soap, "ns1:mount1Response", id, (const struct _ns1__mount1Response *)ptr, NULL); case SOAP_TYPE__ns1__mount1: return soap_out__ns1__mount1(soap, "ns1:mount1", id, (const struct _ns1__mount1 *)ptr, NULL); case SOAP_TYPE__ns1__getJobDetailsResponse: return soap_out__ns1__getJobDetailsResponse(soap, "ns1:getJobDetailsResponse", id, (const struct _ns1__getJobDetailsResponse *)ptr, NULL); case SOAP_TYPE__ns1__getJobDetails: return soap_out__ns1__getJobDetails(soap, "ns1:getJobDetails", id, (const struct _ns1__getJobDetails *)ptr, NULL); case SOAP_TYPE__ns1__umountResponse: return soap_out__ns1__umountResponse(soap, "ns1:umountResponse", id, (const struct _ns1__umountResponse *)ptr, NULL); case SOAP_TYPE__ns1__umount: return soap_out__ns1__umount(soap, "ns1:umount", id, (const struct _ns1__umount *)ptr, NULL); case SOAP_TYPE__ns1__getJobStatusResponse: return soap_out__ns1__getJobStatusResponse(soap, "ns1:getJobStatusResponse", id, (const struct _ns1__getJobStatusResponse *)ptr, NULL); case SOAP_TYPE__ns1__getJobStatus: return soap_out__ns1__getJobStatus(soap, "ns1:getJobStatus", id, (const struct _ns1__getJobStatus *)ptr, NULL); case SOAP_TYPE__ns1__getJobDetails_USCOREstringResponse: return soap_out__ns1__getJobDetails_USCOREstringResponse(soap, "ns1:getJobDetails_stringResponse", id, (const struct _ns1__getJobDetails_USCOREstringResponse *)ptr, NULL); case SOAP_TYPE__ns1__getJobDetails_USCOREstring: return soap_out__ns1__getJobDetails_USCOREstring(soap, "ns1:getJobDetails_string", id, (const struct _ns1__getJobDetails_USCOREstring *)ptr, NULL); case SOAP_TYPE__ns1__getAllSitesResponse: return soap_out__ns1__getAllSitesResponse(soap, "ns1:getAllSitesResponse", id, (const struct _ns1__getAllSitesResponse *)ptr, NULL); case SOAP_TYPE__ns1__getAllSites: return soap_out__ns1__getAllSites(soap, "ns1:getAllSites", id, (const struct _ns1__getAllSites *)ptr, NULL); case SOAP_TYPE__ns1__setJobDescriptionResponse: return soap_out__ns1__setJobDescriptionResponse(soap, "ns1:setJobDescriptionResponse", id, (const struct _ns1__setJobDescriptionResponse *)ptr, NULL); case SOAP_TYPE__ns1__setJobDescription: return soap_out__ns1__setJobDescription(soap, "ns1:setJobDescription", id, (const struct _ns1__setJobDescription *)ptr, NULL); case SOAP_TYPE__ns1__getJobDirectoryResponse: return soap_out__ns1__getJobDirectoryResponse(soap, "ns1:getJobDirectoryResponse", id, (const struct _ns1__getJobDirectoryResponse *)ptr, NULL); case SOAP_TYPE__ns1__getJobDirectory: return soap_out__ns1__getJobDirectory(soap, "ns1:getJobDirectory", id, (const struct _ns1__getJobDirectory *)ptr, NULL); case SOAP_TYPE__ns1__uploadResponse: return soap_out__ns1__uploadResponse(soap, "ns1:uploadResponse", id, (const struct _ns1__uploadResponse *)ptr, NULL); case SOAP_TYPE__ns1__upload: return soap_out__ns1__upload(soap, "ns1:upload", id, (const struct _ns1__upload *)ptr, NULL); case SOAP_TYPE__ns1__deleteFileResponse: return soap_out__ns1__deleteFileResponse(soap, "ns1:deleteFileResponse", id, (const struct _ns1__deleteFileResponse *)ptr, NULL); case SOAP_TYPE__ns1__deleteFile: return soap_out__ns1__deleteFile(soap, "ns1:deleteFile", id, (const struct _ns1__deleteFile *)ptr, NULL); case SOAP_TYPE__ns1__getFileSizeResponse: return soap_out__ns1__getFileSizeResponse(soap, "ns1:getFileSizeResponse", id, (const struct _ns1__getFileSizeResponse *)ptr, NULL); case SOAP_TYPE__ns1__getFileSize: return soap_out__ns1__getFileSize(soap, "ns1:getFileSize", id, (const struct _ns1__getFileSize *)ptr, NULL); case SOAP_TYPE__ns1__cpResponse: return soap_out__ns1__cpResponse(soap, "ns1:cpResponse", id, (const struct _ns1__cpResponse *)ptr, NULL); case SOAP_TYPE__ns1__cp: return soap_out__ns1__cp(soap, "ns1:cp", id, (const struct _ns1__cp *)ptr, NULL); case SOAP_TYPE__ns1__uploadByteArrayResponse: return soap_out__ns1__uploadByteArrayResponse(soap, "ns1:uploadByteArrayResponse", id, (const struct _ns1__uploadByteArrayResponse *)ptr, NULL); case SOAP_TYPE__ns1__uploadByteArray: return soap_out__ns1__uploadByteArray(soap, "ns1:uploadByteArray", id, (const struct _ns1__uploadByteArray *)ptr, NULL); case SOAP_TYPE__ns1__submitJobResponse: return soap_out__ns1__submitJobResponse(soap, "ns1:submitJobResponse", id, (const struct _ns1__submitJobResponse *)ptr, NULL); case SOAP_TYPE__ns1__submitJob: return soap_out__ns1__submitJob(soap, "ns1:submitJob", id, (const struct _ns1__submitJob *)ptr, NULL); case SOAP_TYPE__ns1__logoutResponse: return soap_out__ns1__logoutResponse(soap, "ns1:logoutResponse", id, (const struct _ns1__logoutResponse *)ptr, NULL); case SOAP_TYPE__ns1__logout: return soap_out__ns1__logout(soap, "ns1:logout", id, (const struct _ns1__logout *)ptr, NULL); case SOAP_TYPE__ns1__setJobDescription_USCOREstringResponse: return soap_out__ns1__setJobDescription_USCOREstringResponse(soap, "ns1:setJobDescription_stringResponse", id, (const struct _ns1__setJobDescription_USCOREstringResponse *)ptr, NULL); case SOAP_TYPE__ns1__setJobDescription_USCOREstring: return soap_out__ns1__setJobDescription_USCOREstring(soap, "ns1:setJobDescription_string", id, (const struct _ns1__setJobDescription_USCOREstring *)ptr, NULL); case SOAP_TYPE__ns1__calculateRelativeJobDirectoryResponse: return soap_out__ns1__calculateRelativeJobDirectoryResponse(soap, "ns1:calculateRelativeJobDirectoryResponse", id, (const struct _ns1__calculateRelativeJobDirectoryResponse *)ptr, NULL); case SOAP_TYPE__ns1__calculateRelativeJobDirectory: return soap_out__ns1__calculateRelativeJobDirectory(soap, "ns1:calculateRelativeJobDirectory", id, (const struct _ns1__calculateRelativeJobDirectory *)ptr, NULL); case SOAP_TYPE__ns1__getApplicationDetails1Response: return soap_out__ns1__getApplicationDetails1Response(soap, "ns1:getApplicationDetails1Response", id, (const struct _ns1__getApplicationDetails1Response *)ptr, NULL); case SOAP_TYPE__ns1__getApplicationDetails1: return soap_out__ns1__getApplicationDetails1(soap, "ns1:getApplicationDetails1", id, (const struct _ns1__getApplicationDetails1 *)ptr, NULL); case SOAP_TYPE__ns1__lsResponse: return soap_out__ns1__lsResponse(soap, "ns1:lsResponse", id, (const struct _ns1__lsResponse *)ptr, NULL); case SOAP_TYPE__ns1__ls: return soap_out__ns1__ls(soap, "ns1:ls", id, (const struct _ns1__ls *)ptr, NULL); case SOAP_TYPE__ns1__lastModifiedResponse: return soap_out__ns1__lastModifiedResponse(soap, "ns1:lastModifiedResponse", id, (const struct _ns1__lastModifiedResponse *)ptr, NULL); case SOAP_TYPE__ns1__lastModified: return soap_out__ns1__lastModified(soap, "ns1:lastModified", id, (const struct _ns1__lastModified *)ptr, NULL); case SOAP_TYPE__ns1__getSiteResponse: return soap_out__ns1__getSiteResponse(soap, "ns1:getSiteResponse", id, (const struct _ns1__getSiteResponse *)ptr, NULL); case SOAP_TYPE__ns1__getSite: return soap_out__ns1__getSite(soap, "ns1:getSite", id, (const struct _ns1__getSite *)ptr, NULL); case SOAP_TYPE__ns1__ps_USCOREstringResponse: return soap_out__ns1__ps_USCOREstringResponse(soap, "ns1:ps_stringResponse", id, (const struct _ns1__ps_USCOREstringResponse *)ptr, NULL); case SOAP_TYPE__ns1__ps_USCOREstring: return soap_out__ns1__ps_USCOREstring(soap, "ns1:ps_string", id, (const struct _ns1__ps_USCOREstring *)ptr, NULL); case SOAP_TYPE__ns1__uploadByteArray1Response: return soap_out__ns1__uploadByteArray1Response(soap, "ns1:uploadByteArray1Response", id, (const struct _ns1__uploadByteArray1Response *)ptr, NULL); case SOAP_TYPE__ns1__uploadByteArray1: return soap_out__ns1__uploadByteArray1(soap, "ns1:uploadByteArray1", id, (const struct _ns1__uploadByteArray1 *)ptr, NULL); case SOAP_TYPE__ns1__getVersionsOfApplicationOnSiteResponse: return soap_out__ns1__getVersionsOfApplicationOnSiteResponse(soap, "ns1:getVersionsOfApplicationOnSiteResponse", id, (const struct _ns1__getVersionsOfApplicationOnSiteResponse *)ptr, NULL); case SOAP_TYPE__ns1__getVersionsOfApplicationOnSite: return soap_out__ns1__getVersionsOfApplicationOnSite(soap, "ns1:getVersionsOfApplicationOnSite", id, (const struct _ns1__getVersionsOfApplicationOnSite *)ptr, NULL); case SOAP_TYPE__ns1__getAllSubmissionLocations1Response: return soap_out__ns1__getAllSubmissionLocations1Response(soap, "ns1:getAllSubmissionLocations1Response", id, (const struct _ns1__getAllSubmissionLocations1Response *)ptr, NULL); case SOAP_TYPE__ns1__getAllSubmissionLocations1: return soap_out__ns1__getAllSubmissionLocations1(soap, "ns1:getAllSubmissionLocations1", id, (const struct _ns1__getAllSubmissionLocations1 *)ptr, NULL); case SOAP_TYPE__ns1__createJobResponse: return soap_out__ns1__createJobResponse(soap, "ns1:createJobResponse", id, (const struct _ns1__createJobResponse *)ptr, NULL); case SOAP_TYPE__ns1__createJob: return soap_out__ns1__createJob(soap, "ns1:createJob", id, (const struct _ns1__createJob *)ptr, NULL); case SOAP_TYPE__ns1__getInterfaceVersionResponse: return soap_out__ns1__getInterfaceVersionResponse(soap, "ns1:getInterfaceVersionResponse", id, (const struct _ns1__getInterfaceVersionResponse *)ptr, NULL); case SOAP_TYPE__ns1__getInterfaceVersion: return soap_out__ns1__getInterfaceVersion(soap, "ns1:getInterfaceVersion", id, (const struct _ns1__getInterfaceVersion *)ptr, NULL); case SOAP_TYPE__ns1__getAllSubmissionLocationsResponse: return soap_out__ns1__getAllSubmissionLocationsResponse(soap, "ns1:getAllSubmissionLocationsResponse", id, (const struct _ns1__getAllSubmissionLocationsResponse *)ptr, NULL); case SOAP_TYPE__ns1__getAllSubmissionLocations: return soap_out__ns1__getAllSubmissionLocations(soap, "ns1:getAllSubmissionLocations", id, (const struct _ns1__getAllSubmissionLocations *)ptr, NULL); case SOAP_TYPE__ns1__addJobPropertyResponse: return soap_out__ns1__addJobPropertyResponse(soap, "ns1:addJobPropertyResponse", id, (const struct _ns1__addJobPropertyResponse *)ptr, NULL); case SOAP_TYPE__ns1__addJobProperty: return soap_out__ns1__addJobProperty(soap, "ns1:addJobProperty", id, (const struct _ns1__addJobProperty *)ptr, NULL); case SOAP_TYPE__ns1__addJobPropertiesResponse: return soap_out__ns1__addJobPropertiesResponse(soap, "ns1:addJobPropertiesResponse", id, (const struct _ns1__addJobPropertiesResponse *)ptr, NULL); case SOAP_TYPE__ns1__addJobProperties: return soap_out__ns1__addJobProperties(soap, "ns1:addJobProperties", id, (const struct _ns1__addJobProperties *)ptr, NULL); case SOAP_TYPE__ns1__getAllAvailableApplicationsResponse: return soap_out__ns1__getAllAvailableApplicationsResponse(soap, "ns1:getAllAvailableApplicationsResponse", id, (const struct _ns1__getAllAvailableApplicationsResponse *)ptr, NULL); case SOAP_TYPE__ns1__getAllAvailableApplications: return soap_out__ns1__getAllAvailableApplications(soap, "ns1:getAllAvailableApplications", id, (const struct _ns1__getAllAvailableApplications *)ptr, NULL); case SOAP_TYPE__ns1__killResponse: return soap_out__ns1__killResponse(soap, "ns1:killResponse", id, (const struct _ns1__killResponse *)ptr, NULL); case SOAP_TYPE__ns1__kill: return soap_out__ns1__kill(soap, "ns1:kill", id, (const struct _ns1__kill *)ptr, NULL); case SOAP_TYPE__ns1__isFolderResponse: return soap_out__ns1__isFolderResponse(soap, "ns1:isFolderResponse", id, (const struct _ns1__isFolderResponse *)ptr, NULL); case SOAP_TYPE__ns1__isFolder: return soap_out__ns1__isFolder(soap, "ns1:isFolder", id, (const struct _ns1__isFolder *)ptr, NULL); case SOAP_TYPE__ns1__downloadResponse: return soap_out__ns1__downloadResponse(soap, "ns1:downloadResponse", id, (const struct _ns1__downloadResponse *)ptr, NULL); case SOAP_TYPE__ns1__download: return soap_out__ns1__download(soap, "ns1:download", id, (const struct _ns1__download *)ptr, NULL); case SOAP_TYPE__ns1__getAllJobPropertiesResponse: return soap_out__ns1__getAllJobPropertiesResponse(soap, "ns1:getAllJobPropertiesResponse", id, (const struct _ns1__getAllJobPropertiesResponse *)ptr, NULL); case SOAP_TYPE__ns1__getAllJobProperties: return soap_out__ns1__getAllJobProperties(soap, "ns1:getAllJobProperties", id, (const struct _ns1__getAllJobProperties *)ptr, NULL); case SOAP_TYPE__ns1__getAllJobnamesResponse: return soap_out__ns1__getAllJobnamesResponse(soap, "ns1:getAllJobnamesResponse", id, (const struct _ns1__getAllJobnamesResponse *)ptr, NULL); case SOAP_TYPE__ns1__getAllJobnames: return soap_out__ns1__getAllJobnames(soap, "ns1:getAllJobnames", id, (const struct _ns1__getAllJobnames *)ptr, NULL); case SOAP_TYPE__ns1__getDNResponse: return soap_out__ns1__getDNResponse(soap, "ns1:getDNResponse", id, (const struct _ns1__getDNResponse *)ptr, NULL); case SOAP_TYPE__ns1__getDN: return soap_out__ns1__getDN(soap, "ns1:getDN", id, (const struct _ns1__getDN *)ptr, NULL); case SOAP_TYPE__ns1__getSubmissionLocationsForApplicationResponse: return soap_out__ns1__getSubmissionLocationsForApplicationResponse(soap, "ns1:getSubmissionLocationsForApplicationResponse", id, (const struct _ns1__getSubmissionLocationsForApplicationResponse *)ptr, NULL); case SOAP_TYPE__ns1__getSubmissionLocationsForApplication: return soap_out__ns1__getSubmissionLocationsForApplication(soap, "ns1:getSubmissionLocationsForApplication", id, (const struct _ns1__getSubmissionLocationsForApplication *)ptr, NULL); case SOAP_TYPE__ns1__createJob1Response: return soap_out__ns1__createJob1Response(soap, "ns1:createJob1Response", id, (const struct _ns1__createJob1Response *)ptr, NULL); case SOAP_TYPE__ns1__createJob1: return soap_out__ns1__createJob1(soap, "ns1:createJob1", id, (const struct _ns1__createJob1 *)ptr, NULL); case SOAP_TYPE__ns1__getApplicationDetailsResponse: return soap_out__ns1__getApplicationDetailsResponse(soap, "ns1:getApplicationDetailsResponse", id, (const struct _ns1__getApplicationDetailsResponse *)ptr, NULL); case SOAP_TYPE__ns1__getApplicationDetails: return soap_out__ns1__getApplicationDetails(soap, "ns1:getApplicationDetails", id, (const struct _ns1__getApplicationDetails *)ptr, NULL); case SOAP_TYPE__ns1__getSubmissionLocationsForApplication1Response: return soap_out__ns1__getSubmissionLocationsForApplication1Response(soap, "ns1:getSubmissionLocationsForApplication1Response", id, (const struct _ns1__getSubmissionLocationsForApplication1Response *)ptr, NULL); case SOAP_TYPE__ns1__getSubmissionLocationsForApplication1: return soap_out__ns1__getSubmissionLocationsForApplication1(soap, "ns1:getSubmissionLocationsForApplication1", id, (const struct _ns1__getSubmissionLocationsForApplication1 *)ptr, NULL); case SOAP_TYPE__ns1__ls_USCOREstringResponse: return soap_out__ns1__ls_USCOREstringResponse(soap, "ns1:ls_stringResponse", id, (const struct _ns1__ls_USCOREstringResponse *)ptr, NULL); case SOAP_TYPE__ns1__ls_USCOREstring: return soap_out__ns1__ls_USCOREstring(soap, "ns1:ls_string", id, (const struct _ns1__ls_USCOREstring *)ptr, NULL); case SOAP_TYPE__ns1__calculateAbsoluteJobDirectoryResponse: return soap_out__ns1__calculateAbsoluteJobDirectoryResponse(soap, "ns1:calculateAbsoluteJobDirectoryResponse", id, (const struct _ns1__calculateAbsoluteJobDirectoryResponse *)ptr, NULL); case SOAP_TYPE__ns1__calculateAbsoluteJobDirectory: return soap_out__ns1__calculateAbsoluteJobDirectory(soap, "ns1:calculateAbsoluteJobDirectory", id, (const struct _ns1__calculateAbsoluteJobDirectory *)ptr, NULL); case SOAP_TYPE__ns1__getMessagesSinceResponse: return soap_out__ns1__getMessagesSinceResponse(soap, "ns1:getMessagesSinceResponse", id, (const struct _ns1__getMessagesSinceResponse *)ptr, NULL); case SOAP_TYPE__ns1__getMessagesSince: return soap_out__ns1__getMessagesSince(soap, "ns1:getMessagesSince", id, (const struct _ns1__getMessagesSince *)ptr, NULL); case SOAP_TYPE__ns1__deleteFilesResponse: return soap_out__ns1__deleteFilesResponse(soap, "ns1:deleteFilesResponse", id, (const struct _ns1__deleteFilesResponse *)ptr, NULL); case SOAP_TYPE__ns1__deleteFiles: return soap_out__ns1__deleteFiles(soap, "ns1:deleteFiles", id, (const struct _ns1__deleteFiles *)ptr, NULL); case SOAP_TYPE__ns1__listHostedApplicationTemplatesResponse: return soap_out__ns1__listHostedApplicationTemplatesResponse(soap, "ns1:listHostedApplicationTemplatesResponse", id, (const struct _ns1__listHostedApplicationTemplatesResponse *)ptr, NULL); case SOAP_TYPE__ns1__listHostedApplicationTemplates: return soap_out__ns1__listHostedApplicationTemplates(soap, "ns1:listHostedApplicationTemplates", id, (const struct _ns1__listHostedApplicationTemplates *)ptr, NULL); case SOAP_TYPE__ns1__downloadByteArray1Response: return soap_out__ns1__downloadByteArray1Response(soap, "ns1:downloadByteArray1Response", id, (const struct _ns1__downloadByteArray1Response *)ptr, NULL); case SOAP_TYPE__ns1__downloadByteArray1: return soap_out__ns1__downloadByteArray1(soap, "ns1:downloadByteArray1", id, (const struct _ns1__downloadByteArray1 *)ptr, NULL); case SOAP_TYPE__ns1__getTemplate1Response: return soap_out__ns1__getTemplate1Response(soap, "ns1:getTemplate1Response", id, (const struct _ns1__getTemplate1Response *)ptr, NULL); case SOAP_TYPE__ns1__getTemplate1: return soap_out__ns1__getTemplate1(soap, "ns1:getTemplate1", id, (const struct _ns1__getTemplate1 *)ptr, NULL); case SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplicationResponse: return soap_out__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(soap, "ns1:getSubmissionLocationsPerVersionOfApplicationResponse", id, (const struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *)ptr, NULL); case SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplication: return soap_out__ns1__getSubmissionLocationsPerVersionOfApplication(soap, "ns1:getSubmissionLocationsPerVersionOfApplication", id, (const struct _ns1__getSubmissionLocationsPerVersionOfApplication *)ptr, NULL); case SOAP_TYPE__ns1__getDataLocationsForVOResponse: return soap_out__ns1__getDataLocationsForVOResponse(soap, "ns1:getDataLocationsForVOResponse", id, (const struct _ns1__getDataLocationsForVOResponse *)ptr, NULL); case SOAP_TYPE__ns1__getDataLocationsForVO: return soap_out__ns1__getDataLocationsForVO(soap, "ns1:getDataLocationsForVO", id, (const struct _ns1__getDataLocationsForVO *)ptr, NULL); case SOAP_TYPE__ns1__mkdirResponse: return soap_out__ns1__mkdirResponse(soap, "ns1:mkdirResponse", id, (const struct _ns1__mkdirResponse *)ptr, NULL); case SOAP_TYPE__ns1__mkdir: return soap_out__ns1__mkdir(soap, "ns1:mkdir", id, (const struct _ns1__mkdir *)ptr, NULL); case SOAP_TYPE__ns1__getUserPropertyResponse: return soap_out__ns1__getUserPropertyResponse(soap, "ns1:getUserPropertyResponse", id, (const struct _ns1__getUserPropertyResponse *)ptr, NULL); case SOAP_TYPE__ns1__getUserProperty: return soap_out__ns1__getUserProperty(soap, "ns1:getUserProperty", id, (const struct _ns1__getUserProperty *)ptr, NULL); case SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocationResponse: return soap_out__ns1__getStagingFileSystemForSubmissionLocationResponse(soap, "ns1:getStagingFileSystemForSubmissionLocationResponse", id, (const struct _ns1__getStagingFileSystemForSubmissionLocationResponse *)ptr, NULL); case SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocation: return soap_out__ns1__getStagingFileSystemForSubmissionLocation(soap, "ns1:getStagingFileSystemForSubmissionLocation", id, (const struct _ns1__getStagingFileSystemForSubmissionLocation *)ptr, NULL); case SOAP_TYPE__ns1__psResponse: return soap_out__ns1__psResponse(soap, "ns1:psResponse", id, (const struct _ns1__psResponse *)ptr, NULL); case SOAP_TYPE__ns1__ps: return soap_out__ns1__ps(soap, "ns1:ps", id, (const struct _ns1__ps *)ptr, NULL); case SOAP_TYPE__ns1__getSubmissionLocationsForApplication2Response: return soap_out__ns1__getSubmissionLocationsForApplication2Response(soap, "ns1:getSubmissionLocationsForApplication2Response", id, (const struct _ns1__getSubmissionLocationsForApplication2Response *)ptr, NULL); case SOAP_TYPE__ns1__getSubmissionLocationsForApplication2: return soap_out__ns1__getSubmissionLocationsForApplication2(soap, "ns1:getSubmissionLocationsForApplication2", id, (const struct _ns1__getSubmissionLocationsForApplication2 *)ptr, NULL); case SOAP_TYPE__ns1__downloadByteArrayResponse: return soap_out__ns1__downloadByteArrayResponse(soap, "ns1:downloadByteArrayResponse", id, (const struct _ns1__downloadByteArrayResponse *)ptr, NULL); case SOAP_TYPE__ns1__downloadByteArray: return soap_out__ns1__downloadByteArray(soap, "ns1:downloadByteArray", id, (const struct _ns1__downloadByteArray *)ptr, NULL); case SOAP_TYPE_ns3__ArrayOfMountPoint: return soap_out_ns3__ArrayOfMountPoint(soap, tag, id, (const struct ns3__ArrayOfMountPoint *)ptr, "ns3:ArrayOfMountPoint"); case SOAP_TYPE__ns1__dfResponse: return soap_out__ns1__dfResponse(soap, "ns1:dfResponse", id, (const struct _ns1__dfResponse *)ptr, NULL); case SOAP_TYPE__ns1__df: return soap_out__ns1__df(soap, "ns1:df", id, (const struct _ns1__df *)ptr, NULL); case SOAP_TYPE__ns1__getFqansResponse: return soap_out__ns1__getFqansResponse(soap, "ns1:getFqansResponse", id, (const struct _ns1__getFqansResponse *)ptr, NULL); case SOAP_TYPE__ns1__getFqans: return soap_out__ns1__getFqans(soap, "ns1:getFqans", id, (const struct _ns1__getFqans *)ptr, NULL); case SOAP_TYPE__ns1__getTemplateResponse: return soap_out__ns1__getTemplateResponse(soap, "ns1:getTemplateResponse", id, (const struct _ns1__getTemplateResponse *)ptr, NULL); case SOAP_TYPE__ns1__getTemplate: return soap_out__ns1__getTemplate(soap, "ns1:getTemplate", id, (const struct _ns1__getTemplate *)ptr, NULL); case SOAP_TYPE__ns1__loginResponse: return soap_out__ns1__loginResponse(soap, "ns1:loginResponse", id, (const struct _ns1__loginResponse *)ptr, NULL); case SOAP_TYPE__ns1__login: return soap_out__ns1__login(soap, "ns1:login", id, (const struct _ns1__login *)ptr, NULL); case SOAP_TYPE_ns3__MountPoint: return soap_out_ns3__MountPoint(soap, tag, id, (const struct ns3__MountPoint *)ptr, "ns3:MountPoint"); case SOAP_TYPE__ns1__mountResponse: return soap_out__ns1__mountResponse(soap, "ns1:mountResponse", id, (const struct _ns1__mountResponse *)ptr, NULL); case SOAP_TYPE__ns1__mount: return soap_out__ns1__mount(soap, "ns1:mount", id, (const struct _ns1__mount *)ptr, NULL); case SOAP_TYPE__ns1__getJobFqanResponse: return soap_out__ns1__getJobFqanResponse(soap, "ns1:getJobFqanResponse", id, (const struct _ns1__getJobFqanResponse *)ptr, NULL); case SOAP_TYPE__ns1__getJobFqan: return soap_out__ns1__getJobFqan(soap, "ns1:getJobFqan", id, (const struct _ns1__getJobFqan *)ptr, NULL); case SOAP_TYPE__ns1__getChildrenFilesResponse: return soap_out__ns1__getChildrenFilesResponse(soap, "ns1:getChildrenFilesResponse", id, (const struct _ns1__getChildrenFilesResponse *)ptr, NULL); case SOAP_TYPE__ns1__getChildrenFiles: return soap_out__ns1__getChildrenFiles(soap, "ns1:getChildrenFiles", id, (const struct _ns1__getChildrenFiles *)ptr, NULL); case SOAP_TYPE__ns1__anyType2anyTypeMap_entry: return soap_out__ns1__anyType2anyTypeMap_entry(soap, "ns1:anyType2anyTypeMap-entry", id, (const struct _ns1__anyType2anyTypeMap_entry *)ptr, NULL); case SOAP_TYPE_ns1__anyType2anyTypeMap: return soap_out_ns1__anyType2anyTypeMap(soap, tag, id, (const struct ns1__anyType2anyTypeMap *)ptr, "ns1:anyType2anyTypeMap"); case SOAP_TYPE_ns1__ArrayOfString: return soap_out_ns1__ArrayOfString(soap, tag, id, (const struct ns1__ArrayOfString *)ptr, "ns1:ArrayOfString"); case SOAP_TYPE_xsd__base64Binary: return soap_out_xsd__base64Binary(soap, tag, id, (const struct xsd__base64Binary *)ptr, "xsd:base64Binary"); case SOAP_TYPE__xop__Include: return soap_out__xop__Include(soap, "xop:Include", id, (const struct _xop__Include *)ptr, NULL); case SOAP_TYPE_PointerTo_ns1__getAllHostsResponse: return soap_out_PointerTo_ns1__getAllHostsResponse(soap, tag, id, (struct _ns1__getAllHostsResponse *const*)ptr, "ns1:getAllHostsResponse"); case SOAP_TYPE_PointerTo_ns1__getAllHosts: return soap_out_PointerTo_ns1__getAllHosts(soap, tag, id, (struct _ns1__getAllHosts *const*)ptr, "ns1:getAllHosts"); case SOAP_TYPE_PointerTo_ns1__submitSupportRequestResponse: return soap_out_PointerTo_ns1__submitSupportRequestResponse(soap, tag, id, (struct _ns1__submitSupportRequestResponse *const*)ptr, "ns1:submitSupportRequestResponse"); case SOAP_TYPE_PointerTo_ns1__submitSupportRequest: return soap_out_PointerTo_ns1__submitSupportRequest(soap, tag, id, (struct _ns1__submitSupportRequest *const*)ptr, "ns1:submitSupportRequest"); case SOAP_TYPE_PointerTo_ns1__getJobPropertyResponse: return soap_out_PointerTo_ns1__getJobPropertyResponse(soap, tag, id, (struct _ns1__getJobPropertyResponse *const*)ptr, "ns1:getJobPropertyResponse"); case SOAP_TYPE_PointerTo_ns1__getJobProperty: return soap_out_PointerTo_ns1__getJobProperty(soap, tag, id, (struct _ns1__getJobProperty *const*)ptr, "ns1:getJobProperty"); case SOAP_TYPE_PointerTo_ns1__mount1Response: return soap_out_PointerTo_ns1__mount1Response(soap, tag, id, (struct _ns1__mount1Response *const*)ptr, "ns1:mount1Response"); case SOAP_TYPE_PointerTo_ns1__mount1: return soap_out_PointerTo_ns1__mount1(soap, tag, id, (struct _ns1__mount1 *const*)ptr, "ns1:mount1"); case SOAP_TYPE_PointerTo_ns1__getJobDetailsResponse: return soap_out_PointerTo_ns1__getJobDetailsResponse(soap, tag, id, (struct _ns1__getJobDetailsResponse *const*)ptr, "ns1:getJobDetailsResponse"); case SOAP_TYPE_PointerTo_ns1__getJobDetails: return soap_out_PointerTo_ns1__getJobDetails(soap, tag, id, (struct _ns1__getJobDetails *const*)ptr, "ns1:getJobDetails"); case SOAP_TYPE_PointerTo_ns1__umountResponse: return soap_out_PointerTo_ns1__umountResponse(soap, tag, id, (struct _ns1__umountResponse *const*)ptr, "ns1:umountResponse"); case SOAP_TYPE_PointerTo_ns1__umount: return soap_out_PointerTo_ns1__umount(soap, tag, id, (struct _ns1__umount *const*)ptr, "ns1:umount"); case SOAP_TYPE_PointerTo_ns1__getJobStatusResponse: return soap_out_PointerTo_ns1__getJobStatusResponse(soap, tag, id, (struct _ns1__getJobStatusResponse *const*)ptr, "ns1:getJobStatusResponse"); case SOAP_TYPE_PointerTo_ns1__getJobStatus: return soap_out_PointerTo_ns1__getJobStatus(soap, tag, id, (struct _ns1__getJobStatus *const*)ptr, "ns1:getJobStatus"); case SOAP_TYPE_PointerTo_ns1__getJobDetails_USCOREstringResponse: return soap_out_PointerTo_ns1__getJobDetails_USCOREstringResponse(soap, tag, id, (struct _ns1__getJobDetails_USCOREstringResponse *const*)ptr, "ns1:getJobDetails_stringResponse"); case SOAP_TYPE_PointerTo_ns1__getJobDetails_USCOREstring: return soap_out_PointerTo_ns1__getJobDetails_USCOREstring(soap, tag, id, (struct _ns1__getJobDetails_USCOREstring *const*)ptr, "ns1:getJobDetails_string"); case SOAP_TYPE_PointerTo_ns1__getAllSitesResponse: return soap_out_PointerTo_ns1__getAllSitesResponse(soap, tag, id, (struct _ns1__getAllSitesResponse *const*)ptr, "ns1:getAllSitesResponse"); case SOAP_TYPE_PointerTo_ns1__getAllSites: return soap_out_PointerTo_ns1__getAllSites(soap, tag, id, (struct _ns1__getAllSites *const*)ptr, "ns1:getAllSites"); case SOAP_TYPE_PointerTo_ns1__setJobDescriptionResponse: return soap_out_PointerTo_ns1__setJobDescriptionResponse(soap, tag, id, (struct _ns1__setJobDescriptionResponse *const*)ptr, "ns1:setJobDescriptionResponse"); case SOAP_TYPE_PointerTo_ns1__setJobDescription: return soap_out_PointerTo_ns1__setJobDescription(soap, tag, id, (struct _ns1__setJobDescription *const*)ptr, "ns1:setJobDescription"); case SOAP_TYPE_PointerTo_ns1__getJobDirectoryResponse: return soap_out_PointerTo_ns1__getJobDirectoryResponse(soap, tag, id, (struct _ns1__getJobDirectoryResponse *const*)ptr, "ns1:getJobDirectoryResponse"); case SOAP_TYPE_PointerTo_ns1__getJobDirectory: return soap_out_PointerTo_ns1__getJobDirectory(soap, tag, id, (struct _ns1__getJobDirectory *const*)ptr, "ns1:getJobDirectory"); case SOAP_TYPE_PointerTo_ns1__uploadResponse: return soap_out_PointerTo_ns1__uploadResponse(soap, tag, id, (struct _ns1__uploadResponse *const*)ptr, "ns1:uploadResponse"); case SOAP_TYPE_PointerTo_ns1__upload: return soap_out_PointerTo_ns1__upload(soap, tag, id, (struct _ns1__upload *const*)ptr, "ns1:upload"); case SOAP_TYPE_PointerTo_ns1__deleteFileResponse: return soap_out_PointerTo_ns1__deleteFileResponse(soap, tag, id, (struct _ns1__deleteFileResponse *const*)ptr, "ns1:deleteFileResponse"); case SOAP_TYPE_PointerTo_ns1__deleteFile: return soap_out_PointerTo_ns1__deleteFile(soap, tag, id, (struct _ns1__deleteFile *const*)ptr, "ns1:deleteFile"); case SOAP_TYPE_PointerTo_ns1__getFileSizeResponse: return soap_out_PointerTo_ns1__getFileSizeResponse(soap, tag, id, (struct _ns1__getFileSizeResponse *const*)ptr, "ns1:getFileSizeResponse"); case SOAP_TYPE_PointerTo_ns1__getFileSize: return soap_out_PointerTo_ns1__getFileSize(soap, tag, id, (struct _ns1__getFileSize *const*)ptr, "ns1:getFileSize"); case SOAP_TYPE_PointerTo_ns1__cpResponse: return soap_out_PointerTo_ns1__cpResponse(soap, tag, id, (struct _ns1__cpResponse *const*)ptr, "ns1:cpResponse"); case SOAP_TYPE_PointerTo_ns1__cp: return soap_out_PointerTo_ns1__cp(soap, tag, id, (struct _ns1__cp *const*)ptr, "ns1:cp"); case SOAP_TYPE_PointerTo_ns1__uploadByteArrayResponse: return soap_out_PointerTo_ns1__uploadByteArrayResponse(soap, tag, id, (struct _ns1__uploadByteArrayResponse *const*)ptr, "ns1:uploadByteArrayResponse"); case SOAP_TYPE_PointerTo_ns1__uploadByteArray: return soap_out_PointerTo_ns1__uploadByteArray(soap, tag, id, (struct _ns1__uploadByteArray *const*)ptr, "ns1:uploadByteArray"); case SOAP_TYPE_PointerTo_ns1__submitJobResponse: return soap_out_PointerTo_ns1__submitJobResponse(soap, tag, id, (struct _ns1__submitJobResponse *const*)ptr, "ns1:submitJobResponse"); case SOAP_TYPE_PointerTo_ns1__submitJob: return soap_out_PointerTo_ns1__submitJob(soap, tag, id, (struct _ns1__submitJob *const*)ptr, "ns1:submitJob"); case SOAP_TYPE_PointerTo_ns1__logoutResponse: return soap_out_PointerTo_ns1__logoutResponse(soap, tag, id, (struct _ns1__logoutResponse *const*)ptr, "ns1:logoutResponse"); case SOAP_TYPE_PointerTo_ns1__logout: return soap_out_PointerTo_ns1__logout(soap, tag, id, (struct _ns1__logout *const*)ptr, "ns1:logout"); case SOAP_TYPE_PointerTo_ns1__setJobDescription_USCOREstringResponse: return soap_out_PointerTo_ns1__setJobDescription_USCOREstringResponse(soap, tag, id, (struct _ns1__setJobDescription_USCOREstringResponse *const*)ptr, "ns1:setJobDescription_stringResponse"); case SOAP_TYPE_PointerTo_ns1__setJobDescription_USCOREstring: return soap_out_PointerTo_ns1__setJobDescription_USCOREstring(soap, tag, id, (struct _ns1__setJobDescription_USCOREstring *const*)ptr, "ns1:setJobDescription_string"); case SOAP_TYPE_PointerTo_ns1__calculateRelativeJobDirectoryResponse: return soap_out_PointerTo_ns1__calculateRelativeJobDirectoryResponse(soap, tag, id, (struct _ns1__calculateRelativeJobDirectoryResponse *const*)ptr, "ns1:calculateRelativeJobDirectoryResponse"); case SOAP_TYPE_PointerTo_ns1__calculateRelativeJobDirectory: return soap_out_PointerTo_ns1__calculateRelativeJobDirectory(soap, tag, id, (struct _ns1__calculateRelativeJobDirectory *const*)ptr, "ns1:calculateRelativeJobDirectory"); case SOAP_TYPE_PointerTo_ns1__getApplicationDetails1Response: return soap_out_PointerTo_ns1__getApplicationDetails1Response(soap, tag, id, (struct _ns1__getApplicationDetails1Response *const*)ptr, "ns1:getApplicationDetails1Response"); case SOAP_TYPE_PointerTo_ns1__getApplicationDetails1: return soap_out_PointerTo_ns1__getApplicationDetails1(soap, tag, id, (struct _ns1__getApplicationDetails1 *const*)ptr, "ns1:getApplicationDetails1"); case SOAP_TYPE_PointerTo_ns1__lsResponse: return soap_out_PointerTo_ns1__lsResponse(soap, tag, id, (struct _ns1__lsResponse *const*)ptr, "ns1:lsResponse"); case SOAP_TYPE_PointerTo_ns1__ls: return soap_out_PointerTo_ns1__ls(soap, tag, id, (struct _ns1__ls *const*)ptr, "ns1:ls"); case SOAP_TYPE_PointerTo_ns1__lastModifiedResponse: return soap_out_PointerTo_ns1__lastModifiedResponse(soap, tag, id, (struct _ns1__lastModifiedResponse *const*)ptr, "ns1:lastModifiedResponse"); case SOAP_TYPE_PointerTo_ns1__lastModified: return soap_out_PointerTo_ns1__lastModified(soap, tag, id, (struct _ns1__lastModified *const*)ptr, "ns1:lastModified"); case SOAP_TYPE_PointerTo_ns1__getSiteResponse: return soap_out_PointerTo_ns1__getSiteResponse(soap, tag, id, (struct _ns1__getSiteResponse *const*)ptr, "ns1:getSiteResponse"); case SOAP_TYPE_PointerTo_ns1__getSite: return soap_out_PointerTo_ns1__getSite(soap, tag, id, (struct _ns1__getSite *const*)ptr, "ns1:getSite"); case SOAP_TYPE_PointerTo_ns1__ps_USCOREstringResponse: return soap_out_PointerTo_ns1__ps_USCOREstringResponse(soap, tag, id, (struct _ns1__ps_USCOREstringResponse *const*)ptr, "ns1:ps_stringResponse"); case SOAP_TYPE_PointerTo_ns1__ps_USCOREstring: return soap_out_PointerTo_ns1__ps_USCOREstring(soap, tag, id, (struct _ns1__ps_USCOREstring *const*)ptr, "ns1:ps_string"); case SOAP_TYPE_PointerTo_ns1__uploadByteArray1Response: return soap_out_PointerTo_ns1__uploadByteArray1Response(soap, tag, id, (struct _ns1__uploadByteArray1Response *const*)ptr, "ns1:uploadByteArray1Response"); case SOAP_TYPE_PointerTo_ns1__uploadByteArray1: return soap_out_PointerTo_ns1__uploadByteArray1(soap, tag, id, (struct _ns1__uploadByteArray1 *const*)ptr, "ns1:uploadByteArray1"); case SOAP_TYPE_PointerTo_ns1__getVersionsOfApplicationOnSiteResponse: return soap_out_PointerTo_ns1__getVersionsOfApplicationOnSiteResponse(soap, tag, id, (struct _ns1__getVersionsOfApplicationOnSiteResponse *const*)ptr, "ns1:getVersionsOfApplicationOnSiteResponse"); case SOAP_TYPE_PointerTo_ns1__getVersionsOfApplicationOnSite: return soap_out_PointerTo_ns1__getVersionsOfApplicationOnSite(soap, tag, id, (struct _ns1__getVersionsOfApplicationOnSite *const*)ptr, "ns1:getVersionsOfApplicationOnSite"); case SOAP_TYPE_PointerTo_ns1__getAllSubmissionLocations1Response: return soap_out_PointerTo_ns1__getAllSubmissionLocations1Response(soap, tag, id, (struct _ns1__getAllSubmissionLocations1Response *const*)ptr, "ns1:getAllSubmissionLocations1Response"); case SOAP_TYPE_PointerTo_ns1__getAllSubmissionLocations1: return soap_out_PointerTo_ns1__getAllSubmissionLocations1(soap, tag, id, (struct _ns1__getAllSubmissionLocations1 *const*)ptr, "ns1:getAllSubmissionLocations1"); case SOAP_TYPE_PointerTo_ns1__createJobResponse: return soap_out_PointerTo_ns1__createJobResponse(soap, tag, id, (struct _ns1__createJobResponse *const*)ptr, "ns1:createJobResponse"); case SOAP_TYPE_PointerTo_ns1__createJob: return soap_out_PointerTo_ns1__createJob(soap, tag, id, (struct _ns1__createJob *const*)ptr, "ns1:createJob"); case SOAP_TYPE_PointerTo_ns1__getInterfaceVersionResponse: return soap_out_PointerTo_ns1__getInterfaceVersionResponse(soap, tag, id, (struct _ns1__getInterfaceVersionResponse *const*)ptr, "ns1:getInterfaceVersionResponse"); case SOAP_TYPE_PointerTo_ns1__getInterfaceVersion: return soap_out_PointerTo_ns1__getInterfaceVersion(soap, tag, id, (struct _ns1__getInterfaceVersion *const*)ptr, "ns1:getInterfaceVersion"); case SOAP_TYPE_PointerTo_ns1__getAllSubmissionLocationsResponse: return soap_out_PointerTo_ns1__getAllSubmissionLocationsResponse(soap, tag, id, (struct _ns1__getAllSubmissionLocationsResponse *const*)ptr, "ns1:getAllSubmissionLocationsResponse"); case SOAP_TYPE_PointerTo_ns1__getAllSubmissionLocations: return soap_out_PointerTo_ns1__getAllSubmissionLocations(soap, tag, id, (struct _ns1__getAllSubmissionLocations *const*)ptr, "ns1:getAllSubmissionLocations"); case SOAP_TYPE_PointerTo_ns1__addJobPropertyResponse: return soap_out_PointerTo_ns1__addJobPropertyResponse(soap, tag, id, (struct _ns1__addJobPropertyResponse *const*)ptr, "ns1:addJobPropertyResponse"); case SOAP_TYPE_PointerTo_ns1__addJobProperty: return soap_out_PointerTo_ns1__addJobProperty(soap, tag, id, (struct _ns1__addJobProperty *const*)ptr, "ns1:addJobProperty"); case SOAP_TYPE_PointerTo_ns1__addJobPropertiesResponse: return soap_out_PointerTo_ns1__addJobPropertiesResponse(soap, tag, id, (struct _ns1__addJobPropertiesResponse *const*)ptr, "ns1:addJobPropertiesResponse"); case SOAP_TYPE_PointerTo_ns1__addJobProperties: return soap_out_PointerTo_ns1__addJobProperties(soap, tag, id, (struct _ns1__addJobProperties *const*)ptr, "ns1:addJobProperties"); case SOAP_TYPE_PointerTo_ns1__getAllAvailableApplicationsResponse: return soap_out_PointerTo_ns1__getAllAvailableApplicationsResponse(soap, tag, id, (struct _ns1__getAllAvailableApplicationsResponse *const*)ptr, "ns1:getAllAvailableApplicationsResponse"); case SOAP_TYPE_PointerTo_ns1__getAllAvailableApplications: return soap_out_PointerTo_ns1__getAllAvailableApplications(soap, tag, id, (struct _ns1__getAllAvailableApplications *const*)ptr, "ns1:getAllAvailableApplications"); case SOAP_TYPE_PointerTo_ns1__killResponse: return soap_out_PointerTo_ns1__killResponse(soap, tag, id, (struct _ns1__killResponse *const*)ptr, "ns1:killResponse"); case SOAP_TYPE_PointerTo_ns1__kill: return soap_out_PointerTo_ns1__kill(soap, tag, id, (struct _ns1__kill *const*)ptr, "ns1:kill"); case SOAP_TYPE_PointerTo_ns1__isFolderResponse: return soap_out_PointerTo_ns1__isFolderResponse(soap, tag, id, (struct _ns1__isFolderResponse *const*)ptr, "ns1:isFolderResponse"); case SOAP_TYPE_PointerTo_ns1__isFolder: return soap_out_PointerTo_ns1__isFolder(soap, tag, id, (struct _ns1__isFolder *const*)ptr, "ns1:isFolder"); case SOAP_TYPE_PointerTo_ns1__downloadResponse: return soap_out_PointerTo_ns1__downloadResponse(soap, tag, id, (struct _ns1__downloadResponse *const*)ptr, "ns1:downloadResponse"); case SOAP_TYPE_PointerTo_ns1__download: return soap_out_PointerTo_ns1__download(soap, tag, id, (struct _ns1__download *const*)ptr, "ns1:download"); case SOAP_TYPE_PointerTo_ns1__getAllJobPropertiesResponse: return soap_out_PointerTo_ns1__getAllJobPropertiesResponse(soap, tag, id, (struct _ns1__getAllJobPropertiesResponse *const*)ptr, "ns1:getAllJobPropertiesResponse"); case SOAP_TYPE_PointerTo_ns1__getAllJobProperties: return soap_out_PointerTo_ns1__getAllJobProperties(soap, tag, id, (struct _ns1__getAllJobProperties *const*)ptr, "ns1:getAllJobProperties"); case SOAP_TYPE_PointerTo_ns1__getAllJobnamesResponse: return soap_out_PointerTo_ns1__getAllJobnamesResponse(soap, tag, id, (struct _ns1__getAllJobnamesResponse *const*)ptr, "ns1:getAllJobnamesResponse"); case SOAP_TYPE_PointerTo_ns1__getAllJobnames: return soap_out_PointerTo_ns1__getAllJobnames(soap, tag, id, (struct _ns1__getAllJobnames *const*)ptr, "ns1:getAllJobnames"); case SOAP_TYPE_PointerTo_ns1__getDNResponse: return soap_out_PointerTo_ns1__getDNResponse(soap, tag, id, (struct _ns1__getDNResponse *const*)ptr, "ns1:getDNResponse"); case SOAP_TYPE_PointerTo_ns1__getDN: return soap_out_PointerTo_ns1__getDN(soap, tag, id, (struct _ns1__getDN *const*)ptr, "ns1:getDN"); case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplicationResponse: return soap_out_PointerTo_ns1__getSubmissionLocationsForApplicationResponse(soap, tag, id, (struct _ns1__getSubmissionLocationsForApplicationResponse *const*)ptr, "ns1:getSubmissionLocationsForApplicationResponse"); case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication: return soap_out_PointerTo_ns1__getSubmissionLocationsForApplication(soap, tag, id, (struct _ns1__getSubmissionLocationsForApplication *const*)ptr, "ns1:getSubmissionLocationsForApplication"); case SOAP_TYPE_PointerTo_ns1__createJob1Response: return soap_out_PointerTo_ns1__createJob1Response(soap, tag, id, (struct _ns1__createJob1Response *const*)ptr, "ns1:createJob1Response"); case SOAP_TYPE_PointerTo_ns1__createJob1: return soap_out_PointerTo_ns1__createJob1(soap, tag, id, (struct _ns1__createJob1 *const*)ptr, "ns1:createJob1"); case SOAP_TYPE_PointerTo_ns1__getApplicationDetailsResponse: return soap_out_PointerTo_ns1__getApplicationDetailsResponse(soap, tag, id, (struct _ns1__getApplicationDetailsResponse *const*)ptr, "ns1:getApplicationDetailsResponse"); case SOAP_TYPE_PointerTo_ns1__getApplicationDetails: return soap_out_PointerTo_ns1__getApplicationDetails(soap, tag, id, (struct _ns1__getApplicationDetails *const*)ptr, "ns1:getApplicationDetails"); case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication1Response: return soap_out_PointerTo_ns1__getSubmissionLocationsForApplication1Response(soap, tag, id, (struct _ns1__getSubmissionLocationsForApplication1Response *const*)ptr, "ns1:getSubmissionLocationsForApplication1Response"); case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication1: return soap_out_PointerTo_ns1__getSubmissionLocationsForApplication1(soap, tag, id, (struct _ns1__getSubmissionLocationsForApplication1 *const*)ptr, "ns1:getSubmissionLocationsForApplication1"); case SOAP_TYPE_PointerTo_ns1__ls_USCOREstringResponse: return soap_out_PointerTo_ns1__ls_USCOREstringResponse(soap, tag, id, (struct _ns1__ls_USCOREstringResponse *const*)ptr, "ns1:ls_stringResponse"); case SOAP_TYPE_PointerTo_ns1__ls_USCOREstring: return soap_out_PointerTo_ns1__ls_USCOREstring(soap, tag, id, (struct _ns1__ls_USCOREstring *const*)ptr, "ns1:ls_string"); case SOAP_TYPE_PointerTo_ns1__calculateAbsoluteJobDirectoryResponse: return soap_out_PointerTo_ns1__calculateAbsoluteJobDirectoryResponse(soap, tag, id, (struct _ns1__calculateAbsoluteJobDirectoryResponse *const*)ptr, "ns1:calculateAbsoluteJobDirectoryResponse"); case SOAP_TYPE_PointerTo_ns1__calculateAbsoluteJobDirectory: return soap_out_PointerTo_ns1__calculateAbsoluteJobDirectory(soap, tag, id, (struct _ns1__calculateAbsoluteJobDirectory *const*)ptr, "ns1:calculateAbsoluteJobDirectory"); case SOAP_TYPE_PointerTo_ns1__getMessagesSinceResponse: return soap_out_PointerTo_ns1__getMessagesSinceResponse(soap, tag, id, (struct _ns1__getMessagesSinceResponse *const*)ptr, "ns1:getMessagesSinceResponse"); case SOAP_TYPE_PointerTo_ns1__getMessagesSince: return soap_out_PointerTo_ns1__getMessagesSince(soap, tag, id, (struct _ns1__getMessagesSince *const*)ptr, "ns1:getMessagesSince"); case SOAP_TYPE_PointerTo_ns1__deleteFilesResponse: return soap_out_PointerTo_ns1__deleteFilesResponse(soap, tag, id, (struct _ns1__deleteFilesResponse *const*)ptr, "ns1:deleteFilesResponse"); case SOAP_TYPE_PointerTo_ns1__deleteFiles: return soap_out_PointerTo_ns1__deleteFiles(soap, tag, id, (struct _ns1__deleteFiles *const*)ptr, "ns1:deleteFiles"); case SOAP_TYPE_PointerTo_ns1__listHostedApplicationTemplatesResponse: return soap_out_PointerTo_ns1__listHostedApplicationTemplatesResponse(soap, tag, id, (struct _ns1__listHostedApplicationTemplatesResponse *const*)ptr, "ns1:listHostedApplicationTemplatesResponse"); case SOAP_TYPE_PointerTo_ns1__listHostedApplicationTemplates: return soap_out_PointerTo_ns1__listHostedApplicationTemplates(soap, tag, id, (struct _ns1__listHostedApplicationTemplates *const*)ptr, "ns1:listHostedApplicationTemplates"); case SOAP_TYPE_PointerTo_ns1__downloadByteArray1Response: return soap_out_PointerTo_ns1__downloadByteArray1Response(soap, tag, id, (struct _ns1__downloadByteArray1Response *const*)ptr, "ns1:downloadByteArray1Response"); case SOAP_TYPE_PointerTo_ns1__downloadByteArray1: return soap_out_PointerTo_ns1__downloadByteArray1(soap, tag, id, (struct _ns1__downloadByteArray1 *const*)ptr, "ns1:downloadByteArray1"); case SOAP_TYPE_PointerTo_ns1__getTemplate1Response: return soap_out_PointerTo_ns1__getTemplate1Response(soap, tag, id, (struct _ns1__getTemplate1Response *const*)ptr, "ns1:getTemplate1Response"); case SOAP_TYPE_PointerTo_ns1__getTemplate1: return soap_out_PointerTo_ns1__getTemplate1(soap, tag, id, (struct _ns1__getTemplate1 *const*)ptr, "ns1:getTemplate1"); case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplicationResponse: return soap_out_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplicationResponse(soap, tag, id, (struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *const*)ptr, "ns1:getSubmissionLocationsPerVersionOfApplicationResponse"); case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication: return soap_out_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication(soap, tag, id, (struct _ns1__getSubmissionLocationsPerVersionOfApplication *const*)ptr, "ns1:getSubmissionLocationsPerVersionOfApplication"); case SOAP_TYPE_PointerTo_ns1__getDataLocationsForVOResponse: return soap_out_PointerTo_ns1__getDataLocationsForVOResponse(soap, tag, id, (struct _ns1__getDataLocationsForVOResponse *const*)ptr, "ns1:getDataLocationsForVOResponse"); case SOAP_TYPE_PointerTo_ns1__getDataLocationsForVO: return soap_out_PointerTo_ns1__getDataLocationsForVO(soap, tag, id, (struct _ns1__getDataLocationsForVO *const*)ptr, "ns1:getDataLocationsForVO"); case SOAP_TYPE_PointerTo_ns1__mkdirResponse: return soap_out_PointerTo_ns1__mkdirResponse(soap, tag, id, (struct _ns1__mkdirResponse *const*)ptr, "ns1:mkdirResponse"); case SOAP_TYPE_PointerTo_ns1__mkdir: return soap_out_PointerTo_ns1__mkdir(soap, tag, id, (struct _ns1__mkdir *const*)ptr, "ns1:mkdir"); case SOAP_TYPE_PointerTo_ns1__getUserPropertyResponse: return soap_out_PointerTo_ns1__getUserPropertyResponse(soap, tag, id, (struct _ns1__getUserPropertyResponse *const*)ptr, "ns1:getUserPropertyResponse"); case SOAP_TYPE_PointerTo_ns1__getUserProperty: return soap_out_PointerTo_ns1__getUserProperty(soap, tag, id, (struct _ns1__getUserProperty *const*)ptr, "ns1:getUserProperty"); case SOAP_TYPE_PointerTo_ns1__getStagingFileSystemForSubmissionLocationResponse: return soap_out_PointerTo_ns1__getStagingFileSystemForSubmissionLocationResponse(soap, tag, id, (struct _ns1__getStagingFileSystemForSubmissionLocationResponse *const*)ptr, "ns1:getStagingFileSystemForSubmissionLocationResponse"); case SOAP_TYPE_PointerTo_ns1__getStagingFileSystemForSubmissionLocation: return soap_out_PointerTo_ns1__getStagingFileSystemForSubmissionLocation(soap, tag, id, (struct _ns1__getStagingFileSystemForSubmissionLocation *const*)ptr, "ns1:getStagingFileSystemForSubmissionLocation"); case SOAP_TYPE_PointerTo_ns1__psResponse: return soap_out_PointerTo_ns1__psResponse(soap, tag, id, (struct _ns1__psResponse *const*)ptr, "ns1:psResponse"); case SOAP_TYPE_PointerTo_ns1__ps: return soap_out_PointerTo_ns1__ps(soap, tag, id, (struct _ns1__ps *const*)ptr, "ns1:ps"); case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication2Response: return soap_out_PointerTo_ns1__getSubmissionLocationsForApplication2Response(soap, tag, id, (struct _ns1__getSubmissionLocationsForApplication2Response *const*)ptr, "ns1:getSubmissionLocationsForApplication2Response"); case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication2: return soap_out_PointerTo_ns1__getSubmissionLocationsForApplication2(soap, tag, id, (struct _ns1__getSubmissionLocationsForApplication2 *const*)ptr, "ns1:getSubmissionLocationsForApplication2"); case SOAP_TYPE_PointerTo_ns1__downloadByteArrayResponse: return soap_out_PointerTo_ns1__downloadByteArrayResponse(soap, tag, id, (struct _ns1__downloadByteArrayResponse *const*)ptr, "ns1:downloadByteArrayResponse"); case SOAP_TYPE_PointerTo_ns1__downloadByteArray: return soap_out_PointerTo_ns1__downloadByteArray(soap, tag, id, (struct _ns1__downloadByteArray *const*)ptr, "ns1:downloadByteArray"); case SOAP_TYPE_PointerTo_ns1__dfResponse: return soap_out_PointerTo_ns1__dfResponse(soap, tag, id, (struct _ns1__dfResponse *const*)ptr, "ns1:dfResponse"); case SOAP_TYPE_PointerTo_ns1__df: return soap_out_PointerTo_ns1__df(soap, tag, id, (struct _ns1__df *const*)ptr, "ns1:df"); case SOAP_TYPE_PointerTo_ns1__getFqansResponse: return soap_out_PointerTo_ns1__getFqansResponse(soap, tag, id, (struct _ns1__getFqansResponse *const*)ptr, "ns1:getFqansResponse"); case SOAP_TYPE_PointerTo_ns1__getFqans: return soap_out_PointerTo_ns1__getFqans(soap, tag, id, (struct _ns1__getFqans *const*)ptr, "ns1:getFqans"); case SOAP_TYPE_PointerTo_ns1__getTemplateResponse: return soap_out_PointerTo_ns1__getTemplateResponse(soap, tag, id, (struct _ns1__getTemplateResponse *const*)ptr, "ns1:getTemplateResponse"); case SOAP_TYPE_PointerTo_ns1__getTemplate: return soap_out_PointerTo_ns1__getTemplate(soap, tag, id, (struct _ns1__getTemplate *const*)ptr, "ns1:getTemplate"); case SOAP_TYPE_PointerTo_ns1__loginResponse: return soap_out_PointerTo_ns1__loginResponse(soap, tag, id, (struct _ns1__loginResponse *const*)ptr, "ns1:loginResponse"); case SOAP_TYPE_PointerTo_ns1__login: return soap_out_PointerTo_ns1__login(soap, tag, id, (struct _ns1__login *const*)ptr, "ns1:login"); case SOAP_TYPE_PointerTo_ns1__mountResponse: return soap_out_PointerTo_ns1__mountResponse(soap, tag, id, (struct _ns1__mountResponse *const*)ptr, "ns1:mountResponse"); case SOAP_TYPE_PointerTo_ns1__mount: return soap_out_PointerTo_ns1__mount(soap, tag, id, (struct _ns1__mount *const*)ptr, "ns1:mount"); case SOAP_TYPE_PointerTo_ns1__getJobFqanResponse: return soap_out_PointerTo_ns1__getJobFqanResponse(soap, tag, id, (struct _ns1__getJobFqanResponse *const*)ptr, "ns1:getJobFqanResponse"); case SOAP_TYPE_PointerTo_ns1__getJobFqan: return soap_out_PointerTo_ns1__getJobFqan(soap, tag, id, (struct _ns1__getJobFqan *const*)ptr, "ns1:getJobFqan"); case SOAP_TYPE_PointerTo_ns1__getChildrenFilesResponse: return soap_out_PointerTo_ns1__getChildrenFilesResponse(soap, tag, id, (struct _ns1__getChildrenFilesResponse *const*)ptr, "ns1:getChildrenFilesResponse"); case SOAP_TYPE_PointerTo_ns1__getChildrenFiles: return soap_out_PointerTo_ns1__getChildrenFiles(soap, tag, id, (struct _ns1__getChildrenFiles *const*)ptr, "ns1:getChildrenFiles"); case SOAP_TYPE_PointerTons2__VomsException: return soap_out_PointerTons2__VomsException(soap, tag, id, (struct ns2__VomsException *const*)ptr, "ns2:VomsException"); case SOAP_TYPE_PointerTons2__RemoteFileSystemException: return soap_out_PointerTons2__RemoteFileSystemException(soap, tag, id, (struct ns2__RemoteFileSystemException *const*)ptr, "ns2:RemoteFileSystemException"); case SOAP_TYPE_PointerTons2__NoValidCredentialException: return soap_out_PointerTons2__NoValidCredentialException(soap, tag, id, (struct ns2__NoValidCredentialException *const*)ptr, "ns2:NoValidCredentialException"); case SOAP_TYPE_PointerTons2__NoSuchTemplateException: return soap_out_PointerTons2__NoSuchTemplateException(soap, tag, id, (struct ns2__NoSuchTemplateException *const*)ptr, "ns2:NoSuchTemplateException"); case SOAP_TYPE_PointerTons2__NoSuchJobException: return soap_out_PointerTons2__NoSuchJobException(soap, tag, id, (struct ns2__NoSuchJobException *const*)ptr, "ns2:NoSuchJobException"); case SOAP_TYPE_PointerTons2__JobSubmissionException: return soap_out_PointerTons2__JobSubmissionException(soap, tag, id, (struct ns2__JobSubmissionException *const*)ptr, "ns2:JobSubmissionException"); case SOAP_TYPE_PointerTons2__JobDescriptionNotValidException: return soap_out_PointerTons2__JobDescriptionNotValidException(soap, tag, id, (struct ns2__JobDescriptionNotValidException *const*)ptr, "ns2:JobDescriptionNotValidException"); case SOAP_TYPE_PointerTons4__JobCreationException: return soap_out_PointerTons4__JobCreationException(soap, tag, id, (struct ns4__JobCreationException *const*)ptr, "ns4:JobCreationException"); case SOAP_TYPE_PointerToLONG64: return soap_out_PointerToLONG64(soap, tag, id, (LONG64 *const*)ptr, "xsd:long"); case SOAP_TYPE_PointerToxsd__boolean: return soap_out_PointerToxsd__boolean(soap, tag, id, (enum xsd__boolean *const*)ptr, "xsd:boolean"); case SOAP_TYPE_PointerTons1__anyType2anyTypeMap: return soap_out_PointerTons1__anyType2anyTypeMap(soap, tag, id, (struct ns1__anyType2anyTypeMap *const*)ptr, "ns1:anyType2anyTypeMap"); case SOAP_TYPE_PointerToxsd__base64Binary: return soap_out_PointerToxsd__base64Binary(soap, tag, id, (struct xsd__base64Binary *const*)ptr, "xsd:base64Binary"); case SOAP_TYPE_PointerTons3__ArrayOfMountPoint: return soap_out_PointerTons3__ArrayOfMountPoint(soap, tag, id, (struct ns3__ArrayOfMountPoint *const*)ptr, "ns3:ArrayOfMountPoint"); case SOAP_TYPE_PointerTons3__MountPoint: return soap_out_PointerTons3__MountPoint(soap, tag, id, (struct ns3__MountPoint *const*)ptr, "ns3:MountPoint"); case SOAP_TYPE_PointerTons1__ArrayOfString: return soap_out_PointerTons1__ArrayOfString(soap, tag, id, (struct ns1__ArrayOfString *const*)ptr, "ns1:ArrayOfString"); case SOAP_TYPE_PointerTo_ns1__anyType2anyTypeMap_entry: return soap_out_PointerTo_ns1__anyType2anyTypeMap_entry(soap, tag, id, (struct _ns1__anyType2anyTypeMap_entry *const*)ptr, "ns1:anyType2anyTypeMap-entry"); case SOAP_TYPE_PointerTostring: return soap_out_PointerTostring(soap, tag, id, (char **const*)ptr, "xsd:string"); case SOAP_TYPE_PointerTounsignedByte: return soap_out_PointerTounsignedByte(soap, tag, id, (unsigned char *const*)ptr, "xsd:unsignedByte"); case SOAP_TYPE__QName: return soap_out_string(soap, "xsd:QName", id, (char*const*)&ptr, NULL); case SOAP_TYPE_string: return soap_out_string(soap, tag, id, (char*const*)&ptr, "xsd:string"); } return SOAP_OK; } #endif #ifndef WITH_NOIDREF SOAP_FMAC3 void SOAP_FMAC4 soap_markelement(struct soap *soap, const void *ptr, int type) { (void)soap; (void)ptr; (void)type; /* appease -Wall -Werror */ switch (type) { case SOAP_TYPE___ns1__getAllHosts: soap_serialize___ns1__getAllHosts(soap, (const struct __ns1__getAllHosts *)ptr); break; case SOAP_TYPE___ns1__submitSupportRequest: soap_serialize___ns1__submitSupportRequest(soap, (const struct __ns1__submitSupportRequest *)ptr); break; case SOAP_TYPE___ns1__getJobProperty: soap_serialize___ns1__getJobProperty(soap, (const struct __ns1__getJobProperty *)ptr); break; case SOAP_TYPE___ns1__mount1: soap_serialize___ns1__mount1(soap, (const struct __ns1__mount1 *)ptr); break; case SOAP_TYPE___ns1__getJobDetails: soap_serialize___ns1__getJobDetails(soap, (const struct __ns1__getJobDetails *)ptr); break; case SOAP_TYPE___ns1__umount: soap_serialize___ns1__umount(soap, (const struct __ns1__umount *)ptr); break; case SOAP_TYPE___ns1__getJobStatus: soap_serialize___ns1__getJobStatus(soap, (const struct __ns1__getJobStatus *)ptr); break; case SOAP_TYPE___ns1__getJobDetails_USCOREstring: soap_serialize___ns1__getJobDetails_USCOREstring(soap, (const struct __ns1__getJobDetails_USCOREstring *)ptr); break; case SOAP_TYPE___ns1__getAllSites: soap_serialize___ns1__getAllSites(soap, (const struct __ns1__getAllSites *)ptr); break; case SOAP_TYPE___ns1__setJobDescription: soap_serialize___ns1__setJobDescription(soap, (const struct __ns1__setJobDescription *)ptr); break; case SOAP_TYPE___ns1__getJobDirectory: soap_serialize___ns1__getJobDirectory(soap, (const struct __ns1__getJobDirectory *)ptr); break; case SOAP_TYPE___ns1__upload: soap_serialize___ns1__upload(soap, (const struct __ns1__upload *)ptr); break; case SOAP_TYPE___ns1__deleteFile: soap_serialize___ns1__deleteFile(soap, (const struct __ns1__deleteFile *)ptr); break; case SOAP_TYPE___ns1__getFileSize: soap_serialize___ns1__getFileSize(soap, (const struct __ns1__getFileSize *)ptr); break; case SOAP_TYPE___ns1__cp: soap_serialize___ns1__cp(soap, (const struct __ns1__cp *)ptr); break; case SOAP_TYPE___ns1__uploadByteArray: soap_serialize___ns1__uploadByteArray(soap, (const struct __ns1__uploadByteArray *)ptr); break; case SOAP_TYPE___ns1__submitJob: soap_serialize___ns1__submitJob(soap, (const struct __ns1__submitJob *)ptr); break; case SOAP_TYPE___ns1__logout: soap_serialize___ns1__logout(soap, (const struct __ns1__logout *)ptr); break; case SOAP_TYPE___ns1__setJobDescription_USCOREstring: soap_serialize___ns1__setJobDescription_USCOREstring(soap, (const struct __ns1__setJobDescription_USCOREstring *)ptr); break; case SOAP_TYPE___ns1__calculateRelativeJobDirectory: soap_serialize___ns1__calculateRelativeJobDirectory(soap, (const struct __ns1__calculateRelativeJobDirectory *)ptr); break; case SOAP_TYPE___ns1__getApplicationDetails1: soap_serialize___ns1__getApplicationDetails1(soap, (const struct __ns1__getApplicationDetails1 *)ptr); break; case SOAP_TYPE___ns1__ls: soap_serialize___ns1__ls(soap, (const struct __ns1__ls *)ptr); break; case SOAP_TYPE___ns1__lastModified: soap_serialize___ns1__lastModified(soap, (const struct __ns1__lastModified *)ptr); break; case SOAP_TYPE___ns1__getSite: soap_serialize___ns1__getSite(soap, (const struct __ns1__getSite *)ptr); break; case SOAP_TYPE___ns1__ps_USCOREstring: soap_serialize___ns1__ps_USCOREstring(soap, (const struct __ns1__ps_USCOREstring *)ptr); break; case SOAP_TYPE___ns1__uploadByteArray1: soap_serialize___ns1__uploadByteArray1(soap, (const struct __ns1__uploadByteArray1 *)ptr); break; case SOAP_TYPE___ns1__getVersionsOfApplicationOnSite: soap_serialize___ns1__getVersionsOfApplicationOnSite(soap, (const struct __ns1__getVersionsOfApplicationOnSite *)ptr); break; case SOAP_TYPE___ns1__getAllSubmissionLocations1: soap_serialize___ns1__getAllSubmissionLocations1(soap, (const struct __ns1__getAllSubmissionLocations1 *)ptr); break; case SOAP_TYPE___ns1__createJob: soap_serialize___ns1__createJob(soap, (const struct __ns1__createJob *)ptr); break; case SOAP_TYPE___ns1__getInterfaceVersion: soap_serialize___ns1__getInterfaceVersion(soap, (const struct __ns1__getInterfaceVersion *)ptr); break; case SOAP_TYPE___ns1__getAllSubmissionLocations: soap_serialize___ns1__getAllSubmissionLocations(soap, (const struct __ns1__getAllSubmissionLocations *)ptr); break; case SOAP_TYPE___ns1__addJobProperty: soap_serialize___ns1__addJobProperty(soap, (const struct __ns1__addJobProperty *)ptr); break; case SOAP_TYPE___ns1__addJobProperties: soap_serialize___ns1__addJobProperties(soap, (const struct __ns1__addJobProperties *)ptr); break; case SOAP_TYPE___ns1__getAllAvailableApplications: soap_serialize___ns1__getAllAvailableApplications(soap, (const struct __ns1__getAllAvailableApplications *)ptr); break; case SOAP_TYPE___ns1__kill: soap_serialize___ns1__kill(soap, (const struct __ns1__kill *)ptr); break; case SOAP_TYPE___ns1__isFolder: soap_serialize___ns1__isFolder(soap, (const struct __ns1__isFolder *)ptr); break; case SOAP_TYPE___ns1__download: soap_serialize___ns1__download(soap, (const struct __ns1__download *)ptr); break; case SOAP_TYPE___ns1__getAllJobProperties: soap_serialize___ns1__getAllJobProperties(soap, (const struct __ns1__getAllJobProperties *)ptr); break; case SOAP_TYPE___ns1__getAllJobnames: soap_serialize___ns1__getAllJobnames(soap, (const struct __ns1__getAllJobnames *)ptr); break; case SOAP_TYPE___ns1__getDN: soap_serialize___ns1__getDN(soap, (const struct __ns1__getDN *)ptr); break; case SOAP_TYPE___ns1__getSubmissionLocationsForApplication: soap_serialize___ns1__getSubmissionLocationsForApplication(soap, (const struct __ns1__getSubmissionLocationsForApplication *)ptr); break; case SOAP_TYPE___ns1__createJob1: soap_serialize___ns1__createJob1(soap, (const struct __ns1__createJob1 *)ptr); break; case SOAP_TYPE___ns1__getApplicationDetails: soap_serialize___ns1__getApplicationDetails(soap, (const struct __ns1__getApplicationDetails *)ptr); break; case SOAP_TYPE___ns1__getSubmissionLocationsForApplication1: soap_serialize___ns1__getSubmissionLocationsForApplication1(soap, (const struct __ns1__getSubmissionLocationsForApplication1 *)ptr); break; case SOAP_TYPE___ns1__ls_USCOREstring: soap_serialize___ns1__ls_USCOREstring(soap, (const struct __ns1__ls_USCOREstring *)ptr); break; case SOAP_TYPE___ns1__calculateAbsoluteJobDirectory: soap_serialize___ns1__calculateAbsoluteJobDirectory(soap, (const struct __ns1__calculateAbsoluteJobDirectory *)ptr); break; case SOAP_TYPE___ns1__getMessagesSince: soap_serialize___ns1__getMessagesSince(soap, (const struct __ns1__getMessagesSince *)ptr); break; case SOAP_TYPE___ns1__deleteFiles: soap_serialize___ns1__deleteFiles(soap, (const struct __ns1__deleteFiles *)ptr); break; case SOAP_TYPE___ns1__listHostedApplicationTemplates: soap_serialize___ns1__listHostedApplicationTemplates(soap, (const struct __ns1__listHostedApplicationTemplates *)ptr); break; case SOAP_TYPE___ns1__downloadByteArray1: soap_serialize___ns1__downloadByteArray1(soap, (const struct __ns1__downloadByteArray1 *)ptr); break; case SOAP_TYPE___ns1__getTemplate1: soap_serialize___ns1__getTemplate1(soap, (const struct __ns1__getTemplate1 *)ptr); break; case SOAP_TYPE___ns1__getSubmissionLocationsPerVersionOfApplication: soap_serialize___ns1__getSubmissionLocationsPerVersionOfApplication(soap, (const struct __ns1__getSubmissionLocationsPerVersionOfApplication *)ptr); break; case SOAP_TYPE___ns1__getDataLocationsForVO: soap_serialize___ns1__getDataLocationsForVO(soap, (const struct __ns1__getDataLocationsForVO *)ptr); break; case SOAP_TYPE___ns1__mkdir: soap_serialize___ns1__mkdir(soap, (const struct __ns1__mkdir *)ptr); break; case SOAP_TYPE___ns1__getUserProperty: soap_serialize___ns1__getUserProperty(soap, (const struct __ns1__getUserProperty *)ptr); break; case SOAP_TYPE___ns1__getStagingFileSystemForSubmissionLocation: soap_serialize___ns1__getStagingFileSystemForSubmissionLocation(soap, (const struct __ns1__getStagingFileSystemForSubmissionLocation *)ptr); break; case SOAP_TYPE___ns1__ps: soap_serialize___ns1__ps(soap, (const struct __ns1__ps *)ptr); break; case SOAP_TYPE___ns1__getSubmissionLocationsForApplication2: soap_serialize___ns1__getSubmissionLocationsForApplication2(soap, (const struct __ns1__getSubmissionLocationsForApplication2 *)ptr); break; case SOAP_TYPE___ns1__downloadByteArray: soap_serialize___ns1__downloadByteArray(soap, (const struct __ns1__downloadByteArray *)ptr); break; case SOAP_TYPE___ns1__df: soap_serialize___ns1__df(soap, (const struct __ns1__df *)ptr); break; case SOAP_TYPE___ns1__getFqans: soap_serialize___ns1__getFqans(soap, (const struct __ns1__getFqans *)ptr); break; case SOAP_TYPE___ns1__getTemplate: soap_serialize___ns1__getTemplate(soap, (const struct __ns1__getTemplate *)ptr); break; case SOAP_TYPE___ns1__login: soap_serialize___ns1__login(soap, (const struct __ns1__login *)ptr); break; case SOAP_TYPE___ns1__mount: soap_serialize___ns1__mount(soap, (const struct __ns1__mount *)ptr); break; case SOAP_TYPE___ns1__getJobFqan: soap_serialize___ns1__getJobFqan(soap, (const struct __ns1__getJobFqan *)ptr); break; case SOAP_TYPE___ns1__getChildrenFiles: soap_serialize___ns1__getChildrenFiles(soap, (const struct __ns1__getChildrenFiles *)ptr); break; case SOAP_TYPE_ns4__JobCreationException: soap_serialize_ns4__JobCreationException(soap, (const struct ns4__JobCreationException *)ptr); break; case SOAP_TYPE_ns2__JobSubmissionException: soap_serialize_ns2__JobSubmissionException(soap, (const struct ns2__JobSubmissionException *)ptr); break; case SOAP_TYPE_ns2__JobDescriptionNotValidException: soap_serialize_ns2__JobDescriptionNotValidException(soap, (const struct ns2__JobDescriptionNotValidException *)ptr); break; case SOAP_TYPE_ns2__NoSuchTemplateException: soap_serialize_ns2__NoSuchTemplateException(soap, (const struct ns2__NoSuchTemplateException *)ptr); break; case SOAP_TYPE_ns2__NoValidCredentialException: soap_serialize_ns2__NoValidCredentialException(soap, (const struct ns2__NoValidCredentialException *)ptr); break; case SOAP_TYPE_ns2__NoSuchJobException: soap_serialize_ns2__NoSuchJobException(soap, (const struct ns2__NoSuchJobException *)ptr); break; case SOAP_TYPE_ns2__RemoteFileSystemException: soap_serialize_ns2__RemoteFileSystemException(soap, (const struct ns2__RemoteFileSystemException *)ptr); break; case SOAP_TYPE_ns2__VomsException: soap_serialize_ns2__VomsException(soap, (const struct ns2__VomsException *)ptr); break; case SOAP_TYPE__ns1__getAllHostsResponse: soap_serialize__ns1__getAllHostsResponse(soap, (const struct _ns1__getAllHostsResponse *)ptr); break; case SOAP_TYPE__ns1__getAllHosts: soap_serialize__ns1__getAllHosts(soap, (const struct _ns1__getAllHosts *)ptr); break; case SOAP_TYPE__ns1__submitSupportRequestResponse: soap_serialize__ns1__submitSupportRequestResponse(soap, (const struct _ns1__submitSupportRequestResponse *)ptr); break; case SOAP_TYPE__ns1__submitSupportRequest: soap_serialize__ns1__submitSupportRequest(soap, (const struct _ns1__submitSupportRequest *)ptr); break; case SOAP_TYPE__ns1__getJobPropertyResponse: soap_serialize__ns1__getJobPropertyResponse(soap, (const struct _ns1__getJobPropertyResponse *)ptr); break; case SOAP_TYPE__ns1__getJobProperty: soap_serialize__ns1__getJobProperty(soap, (const struct _ns1__getJobProperty *)ptr); break; case SOAP_TYPE__ns1__mount1Response: soap_serialize__ns1__mount1Response(soap, (const struct _ns1__mount1Response *)ptr); break; case SOAP_TYPE__ns1__mount1: soap_serialize__ns1__mount1(soap, (const struct _ns1__mount1 *)ptr); break; case SOAP_TYPE__ns1__getJobDetailsResponse: soap_serialize__ns1__getJobDetailsResponse(soap, (const struct _ns1__getJobDetailsResponse *)ptr); break; case SOAP_TYPE__ns1__getJobDetails: soap_serialize__ns1__getJobDetails(soap, (const struct _ns1__getJobDetails *)ptr); break; case SOAP_TYPE__ns1__umountResponse: soap_serialize__ns1__umountResponse(soap, (const struct _ns1__umountResponse *)ptr); break; case SOAP_TYPE__ns1__umount: soap_serialize__ns1__umount(soap, (const struct _ns1__umount *)ptr); break; case SOAP_TYPE__ns1__getJobStatusResponse: soap_serialize__ns1__getJobStatusResponse(soap, (const struct _ns1__getJobStatusResponse *)ptr); break; case SOAP_TYPE__ns1__getJobStatus: soap_serialize__ns1__getJobStatus(soap, (const struct _ns1__getJobStatus *)ptr); break; case SOAP_TYPE__ns1__getJobDetails_USCOREstringResponse: soap_serialize__ns1__getJobDetails_USCOREstringResponse(soap, (const struct _ns1__getJobDetails_USCOREstringResponse *)ptr); break; case SOAP_TYPE__ns1__getJobDetails_USCOREstring: soap_serialize__ns1__getJobDetails_USCOREstring(soap, (const struct _ns1__getJobDetails_USCOREstring *)ptr); break; case SOAP_TYPE__ns1__getAllSitesResponse: soap_serialize__ns1__getAllSitesResponse(soap, (const struct _ns1__getAllSitesResponse *)ptr); break; case SOAP_TYPE__ns1__getAllSites: soap_serialize__ns1__getAllSites(soap, (const struct _ns1__getAllSites *)ptr); break; case SOAP_TYPE__ns1__setJobDescriptionResponse: soap_serialize__ns1__setJobDescriptionResponse(soap, (const struct _ns1__setJobDescriptionResponse *)ptr); break; case SOAP_TYPE__ns1__setJobDescription: soap_serialize__ns1__setJobDescription(soap, (const struct _ns1__setJobDescription *)ptr); break; case SOAP_TYPE__ns1__getJobDirectoryResponse: soap_serialize__ns1__getJobDirectoryResponse(soap, (const struct _ns1__getJobDirectoryResponse *)ptr); break; case SOAP_TYPE__ns1__getJobDirectory: soap_serialize__ns1__getJobDirectory(soap, (const struct _ns1__getJobDirectory *)ptr); break; case SOAP_TYPE__ns1__uploadResponse: soap_serialize__ns1__uploadResponse(soap, (const struct _ns1__uploadResponse *)ptr); break; case SOAP_TYPE__ns1__upload: soap_serialize__ns1__upload(soap, (const struct _ns1__upload *)ptr); break; case SOAP_TYPE__ns1__deleteFileResponse: soap_serialize__ns1__deleteFileResponse(soap, (const struct _ns1__deleteFileResponse *)ptr); break; case SOAP_TYPE__ns1__deleteFile: soap_serialize__ns1__deleteFile(soap, (const struct _ns1__deleteFile *)ptr); break; case SOAP_TYPE__ns1__getFileSizeResponse: soap_serialize__ns1__getFileSizeResponse(soap, (const struct _ns1__getFileSizeResponse *)ptr); break; case SOAP_TYPE__ns1__getFileSize: soap_serialize__ns1__getFileSize(soap, (const struct _ns1__getFileSize *)ptr); break; case SOAP_TYPE__ns1__cpResponse: soap_serialize__ns1__cpResponse(soap, (const struct _ns1__cpResponse *)ptr); break; case SOAP_TYPE__ns1__cp: soap_serialize__ns1__cp(soap, (const struct _ns1__cp *)ptr); break; case SOAP_TYPE__ns1__uploadByteArrayResponse: soap_serialize__ns1__uploadByteArrayResponse(soap, (const struct _ns1__uploadByteArrayResponse *)ptr); break; case SOAP_TYPE__ns1__uploadByteArray: soap_serialize__ns1__uploadByteArray(soap, (const struct _ns1__uploadByteArray *)ptr); break; case SOAP_TYPE__ns1__submitJobResponse: soap_serialize__ns1__submitJobResponse(soap, (const struct _ns1__submitJobResponse *)ptr); break; case SOAP_TYPE__ns1__submitJob: soap_serialize__ns1__submitJob(soap, (const struct _ns1__submitJob *)ptr); break; case SOAP_TYPE__ns1__logoutResponse: soap_serialize__ns1__logoutResponse(soap, (const struct _ns1__logoutResponse *)ptr); break; case SOAP_TYPE__ns1__logout: soap_serialize__ns1__logout(soap, (const struct _ns1__logout *)ptr); break; case SOAP_TYPE__ns1__setJobDescription_USCOREstringResponse: soap_serialize__ns1__setJobDescription_USCOREstringResponse(soap, (const struct _ns1__setJobDescription_USCOREstringResponse *)ptr); break; case SOAP_TYPE__ns1__setJobDescription_USCOREstring: soap_serialize__ns1__setJobDescription_USCOREstring(soap, (const struct _ns1__setJobDescription_USCOREstring *)ptr); break; case SOAP_TYPE__ns1__calculateRelativeJobDirectoryResponse: soap_serialize__ns1__calculateRelativeJobDirectoryResponse(soap, (const struct _ns1__calculateRelativeJobDirectoryResponse *)ptr); break; case SOAP_TYPE__ns1__calculateRelativeJobDirectory: soap_serialize__ns1__calculateRelativeJobDirectory(soap, (const struct _ns1__calculateRelativeJobDirectory *)ptr); break; case SOAP_TYPE__ns1__getApplicationDetails1Response: soap_serialize__ns1__getApplicationDetails1Response(soap, (const struct _ns1__getApplicationDetails1Response *)ptr); break; case SOAP_TYPE__ns1__getApplicationDetails1: soap_serialize__ns1__getApplicationDetails1(soap, (const struct _ns1__getApplicationDetails1 *)ptr); break; case SOAP_TYPE__ns1__lsResponse: soap_serialize__ns1__lsResponse(soap, (const struct _ns1__lsResponse *)ptr); break; case SOAP_TYPE__ns1__ls: soap_serialize__ns1__ls(soap, (const struct _ns1__ls *)ptr); break; case SOAP_TYPE__ns1__lastModifiedResponse: soap_serialize__ns1__lastModifiedResponse(soap, (const struct _ns1__lastModifiedResponse *)ptr); break; case SOAP_TYPE__ns1__lastModified: soap_serialize__ns1__lastModified(soap, (const struct _ns1__lastModified *)ptr); break; case SOAP_TYPE__ns1__getSiteResponse: soap_serialize__ns1__getSiteResponse(soap, (const struct _ns1__getSiteResponse *)ptr); break; case SOAP_TYPE__ns1__getSite: soap_serialize__ns1__getSite(soap, (const struct _ns1__getSite *)ptr); break; case SOAP_TYPE__ns1__ps_USCOREstringResponse: soap_serialize__ns1__ps_USCOREstringResponse(soap, (const struct _ns1__ps_USCOREstringResponse *)ptr); break; case SOAP_TYPE__ns1__ps_USCOREstring: soap_serialize__ns1__ps_USCOREstring(soap, (const struct _ns1__ps_USCOREstring *)ptr); break; case SOAP_TYPE__ns1__uploadByteArray1Response: soap_serialize__ns1__uploadByteArray1Response(soap, (const struct _ns1__uploadByteArray1Response *)ptr); break; case SOAP_TYPE__ns1__uploadByteArray1: soap_serialize__ns1__uploadByteArray1(soap, (const struct _ns1__uploadByteArray1 *)ptr); break; case SOAP_TYPE__ns1__getVersionsOfApplicationOnSiteResponse: soap_serialize__ns1__getVersionsOfApplicationOnSiteResponse(soap, (const struct _ns1__getVersionsOfApplicationOnSiteResponse *)ptr); break; case SOAP_TYPE__ns1__getVersionsOfApplicationOnSite: soap_serialize__ns1__getVersionsOfApplicationOnSite(soap, (const struct _ns1__getVersionsOfApplicationOnSite *)ptr); break; case SOAP_TYPE__ns1__getAllSubmissionLocations1Response: soap_serialize__ns1__getAllSubmissionLocations1Response(soap, (const struct _ns1__getAllSubmissionLocations1Response *)ptr); break; case SOAP_TYPE__ns1__getAllSubmissionLocations1: soap_serialize__ns1__getAllSubmissionLocations1(soap, (const struct _ns1__getAllSubmissionLocations1 *)ptr); break; case SOAP_TYPE__ns1__createJobResponse: soap_serialize__ns1__createJobResponse(soap, (const struct _ns1__createJobResponse *)ptr); break; case SOAP_TYPE__ns1__createJob: soap_serialize__ns1__createJob(soap, (const struct _ns1__createJob *)ptr); break; case SOAP_TYPE__ns1__getInterfaceVersionResponse: soap_serialize__ns1__getInterfaceVersionResponse(soap, (const struct _ns1__getInterfaceVersionResponse *)ptr); break; case SOAP_TYPE__ns1__getInterfaceVersion: soap_serialize__ns1__getInterfaceVersion(soap, (const struct _ns1__getInterfaceVersion *)ptr); break; case SOAP_TYPE__ns1__getAllSubmissionLocationsResponse: soap_serialize__ns1__getAllSubmissionLocationsResponse(soap, (const struct _ns1__getAllSubmissionLocationsResponse *)ptr); break; case SOAP_TYPE__ns1__getAllSubmissionLocations: soap_serialize__ns1__getAllSubmissionLocations(soap, (const struct _ns1__getAllSubmissionLocations *)ptr); break; case SOAP_TYPE__ns1__addJobPropertyResponse: soap_serialize__ns1__addJobPropertyResponse(soap, (const struct _ns1__addJobPropertyResponse *)ptr); break; case SOAP_TYPE__ns1__addJobProperty: soap_serialize__ns1__addJobProperty(soap, (const struct _ns1__addJobProperty *)ptr); break; case SOAP_TYPE__ns1__addJobPropertiesResponse: soap_serialize__ns1__addJobPropertiesResponse(soap, (const struct _ns1__addJobPropertiesResponse *)ptr); break; case SOAP_TYPE__ns1__addJobProperties: soap_serialize__ns1__addJobProperties(soap, (const struct _ns1__addJobProperties *)ptr); break; case SOAP_TYPE__ns1__getAllAvailableApplicationsResponse: soap_serialize__ns1__getAllAvailableApplicationsResponse(soap, (const struct _ns1__getAllAvailableApplicationsResponse *)ptr); break; case SOAP_TYPE__ns1__getAllAvailableApplications: soap_serialize__ns1__getAllAvailableApplications(soap, (const struct _ns1__getAllAvailableApplications *)ptr); break; case SOAP_TYPE__ns1__killResponse: soap_serialize__ns1__killResponse(soap, (const struct _ns1__killResponse *)ptr); break; case SOAP_TYPE__ns1__kill: soap_serialize__ns1__kill(soap, (const struct _ns1__kill *)ptr); break; case SOAP_TYPE__ns1__isFolderResponse: soap_serialize__ns1__isFolderResponse(soap, (const struct _ns1__isFolderResponse *)ptr); break; case SOAP_TYPE__ns1__isFolder: soap_serialize__ns1__isFolder(soap, (const struct _ns1__isFolder *)ptr); break; case SOAP_TYPE__ns1__downloadResponse: soap_serialize__ns1__downloadResponse(soap, (const struct _ns1__downloadResponse *)ptr); break; case SOAP_TYPE__ns1__download: soap_serialize__ns1__download(soap, (const struct _ns1__download *)ptr); break; case SOAP_TYPE__ns1__getAllJobPropertiesResponse: soap_serialize__ns1__getAllJobPropertiesResponse(soap, (const struct _ns1__getAllJobPropertiesResponse *)ptr); break; case SOAP_TYPE__ns1__getAllJobProperties: soap_serialize__ns1__getAllJobProperties(soap, (const struct _ns1__getAllJobProperties *)ptr); break; case SOAP_TYPE__ns1__getAllJobnamesResponse: soap_serialize__ns1__getAllJobnamesResponse(soap, (const struct _ns1__getAllJobnamesResponse *)ptr); break; case SOAP_TYPE__ns1__getAllJobnames: soap_serialize__ns1__getAllJobnames(soap, (const struct _ns1__getAllJobnames *)ptr); break; case SOAP_TYPE__ns1__getDNResponse: soap_serialize__ns1__getDNResponse(soap, (const struct _ns1__getDNResponse *)ptr); break; case SOAP_TYPE__ns1__getDN: soap_serialize__ns1__getDN(soap, (const struct _ns1__getDN *)ptr); break; case SOAP_TYPE__ns1__getSubmissionLocationsForApplicationResponse: soap_serialize__ns1__getSubmissionLocationsForApplicationResponse(soap, (const struct _ns1__getSubmissionLocationsForApplicationResponse *)ptr); break; case SOAP_TYPE__ns1__getSubmissionLocationsForApplication: soap_serialize__ns1__getSubmissionLocationsForApplication(soap, (const struct _ns1__getSubmissionLocationsForApplication *)ptr); break; case SOAP_TYPE__ns1__createJob1Response: soap_serialize__ns1__createJob1Response(soap, (const struct _ns1__createJob1Response *)ptr); break; case SOAP_TYPE__ns1__createJob1: soap_serialize__ns1__createJob1(soap, (const struct _ns1__createJob1 *)ptr); break; case SOAP_TYPE__ns1__getApplicationDetailsResponse: soap_serialize__ns1__getApplicationDetailsResponse(soap, (const struct _ns1__getApplicationDetailsResponse *)ptr); break; case SOAP_TYPE__ns1__getApplicationDetails: soap_serialize__ns1__getApplicationDetails(soap, (const struct _ns1__getApplicationDetails *)ptr); break; case SOAP_TYPE__ns1__getSubmissionLocationsForApplication1Response: soap_serialize__ns1__getSubmissionLocationsForApplication1Response(soap, (const struct _ns1__getSubmissionLocationsForApplication1Response *)ptr); break; case SOAP_TYPE__ns1__getSubmissionLocationsForApplication1: soap_serialize__ns1__getSubmissionLocationsForApplication1(soap, (const struct _ns1__getSubmissionLocationsForApplication1 *)ptr); break; case SOAP_TYPE__ns1__ls_USCOREstringResponse: soap_serialize__ns1__ls_USCOREstringResponse(soap, (const struct _ns1__ls_USCOREstringResponse *)ptr); break; case SOAP_TYPE__ns1__ls_USCOREstring: soap_serialize__ns1__ls_USCOREstring(soap, (const struct _ns1__ls_USCOREstring *)ptr); break; case SOAP_TYPE__ns1__calculateAbsoluteJobDirectoryResponse: soap_serialize__ns1__calculateAbsoluteJobDirectoryResponse(soap, (const struct _ns1__calculateAbsoluteJobDirectoryResponse *)ptr); break; case SOAP_TYPE__ns1__calculateAbsoluteJobDirectory: soap_serialize__ns1__calculateAbsoluteJobDirectory(soap, (const struct _ns1__calculateAbsoluteJobDirectory *)ptr); break; case SOAP_TYPE__ns1__getMessagesSinceResponse: soap_serialize__ns1__getMessagesSinceResponse(soap, (const struct _ns1__getMessagesSinceResponse *)ptr); break; case SOAP_TYPE__ns1__getMessagesSince: soap_serialize__ns1__getMessagesSince(soap, (const struct _ns1__getMessagesSince *)ptr); break; case SOAP_TYPE__ns1__deleteFilesResponse: soap_serialize__ns1__deleteFilesResponse(soap, (const struct _ns1__deleteFilesResponse *)ptr); break; case SOAP_TYPE__ns1__deleteFiles: soap_serialize__ns1__deleteFiles(soap, (const struct _ns1__deleteFiles *)ptr); break; case SOAP_TYPE__ns1__listHostedApplicationTemplatesResponse: soap_serialize__ns1__listHostedApplicationTemplatesResponse(soap, (const struct _ns1__listHostedApplicationTemplatesResponse *)ptr); break; case SOAP_TYPE__ns1__listHostedApplicationTemplates: soap_serialize__ns1__listHostedApplicationTemplates(soap, (const struct _ns1__listHostedApplicationTemplates *)ptr); break; case SOAP_TYPE__ns1__downloadByteArray1Response: soap_serialize__ns1__downloadByteArray1Response(soap, (const struct _ns1__downloadByteArray1Response *)ptr); break; case SOAP_TYPE__ns1__downloadByteArray1: soap_serialize__ns1__downloadByteArray1(soap, (const struct _ns1__downloadByteArray1 *)ptr); break; case SOAP_TYPE__ns1__getTemplate1Response: soap_serialize__ns1__getTemplate1Response(soap, (const struct _ns1__getTemplate1Response *)ptr); break; case SOAP_TYPE__ns1__getTemplate1: soap_serialize__ns1__getTemplate1(soap, (const struct _ns1__getTemplate1 *)ptr); break; case SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplicationResponse: soap_serialize__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(soap, (const struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *)ptr); break; case SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplication: soap_serialize__ns1__getSubmissionLocationsPerVersionOfApplication(soap, (const struct _ns1__getSubmissionLocationsPerVersionOfApplication *)ptr); break; case SOAP_TYPE__ns1__getDataLocationsForVOResponse: soap_serialize__ns1__getDataLocationsForVOResponse(soap, (const struct _ns1__getDataLocationsForVOResponse *)ptr); break; case SOAP_TYPE__ns1__getDataLocationsForVO: soap_serialize__ns1__getDataLocationsForVO(soap, (const struct _ns1__getDataLocationsForVO *)ptr); break; case SOAP_TYPE__ns1__mkdirResponse: soap_serialize__ns1__mkdirResponse(soap, (const struct _ns1__mkdirResponse *)ptr); break; case SOAP_TYPE__ns1__mkdir: soap_serialize__ns1__mkdir(soap, (const struct _ns1__mkdir *)ptr); break; case SOAP_TYPE__ns1__getUserPropertyResponse: soap_serialize__ns1__getUserPropertyResponse(soap, (const struct _ns1__getUserPropertyResponse *)ptr); break; case SOAP_TYPE__ns1__getUserProperty: soap_serialize__ns1__getUserProperty(soap, (const struct _ns1__getUserProperty *)ptr); break; case SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocationResponse: soap_serialize__ns1__getStagingFileSystemForSubmissionLocationResponse(soap, (const struct _ns1__getStagingFileSystemForSubmissionLocationResponse *)ptr); break; case SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocation: soap_serialize__ns1__getStagingFileSystemForSubmissionLocation(soap, (const struct _ns1__getStagingFileSystemForSubmissionLocation *)ptr); break; case SOAP_TYPE__ns1__psResponse: soap_serialize__ns1__psResponse(soap, (const struct _ns1__psResponse *)ptr); break; case SOAP_TYPE__ns1__ps: soap_serialize__ns1__ps(soap, (const struct _ns1__ps *)ptr); break; case SOAP_TYPE__ns1__getSubmissionLocationsForApplication2Response: soap_serialize__ns1__getSubmissionLocationsForApplication2Response(soap, (const struct _ns1__getSubmissionLocationsForApplication2Response *)ptr); break; case SOAP_TYPE__ns1__getSubmissionLocationsForApplication2: soap_serialize__ns1__getSubmissionLocationsForApplication2(soap, (const struct _ns1__getSubmissionLocationsForApplication2 *)ptr); break; case SOAP_TYPE__ns1__downloadByteArrayResponse: soap_serialize__ns1__downloadByteArrayResponse(soap, (const struct _ns1__downloadByteArrayResponse *)ptr); break; case SOAP_TYPE__ns1__downloadByteArray: soap_serialize__ns1__downloadByteArray(soap, (const struct _ns1__downloadByteArray *)ptr); break; case SOAP_TYPE_ns3__ArrayOfMountPoint: soap_serialize_ns3__ArrayOfMountPoint(soap, (const struct ns3__ArrayOfMountPoint *)ptr); break; case SOAP_TYPE__ns1__dfResponse: soap_serialize__ns1__dfResponse(soap, (const struct _ns1__dfResponse *)ptr); break; case SOAP_TYPE__ns1__df: soap_serialize__ns1__df(soap, (const struct _ns1__df *)ptr); break; case SOAP_TYPE__ns1__getFqansResponse: soap_serialize__ns1__getFqansResponse(soap, (const struct _ns1__getFqansResponse *)ptr); break; case SOAP_TYPE__ns1__getFqans: soap_serialize__ns1__getFqans(soap, (const struct _ns1__getFqans *)ptr); break; case SOAP_TYPE__ns1__getTemplateResponse: soap_serialize__ns1__getTemplateResponse(soap, (const struct _ns1__getTemplateResponse *)ptr); break; case SOAP_TYPE__ns1__getTemplate: soap_serialize__ns1__getTemplate(soap, (const struct _ns1__getTemplate *)ptr); break; case SOAP_TYPE__ns1__loginResponse: soap_serialize__ns1__loginResponse(soap, (const struct _ns1__loginResponse *)ptr); break; case SOAP_TYPE__ns1__login: soap_serialize__ns1__login(soap, (const struct _ns1__login *)ptr); break; case SOAP_TYPE_ns3__MountPoint: soap_serialize_ns3__MountPoint(soap, (const struct ns3__MountPoint *)ptr); break; case SOAP_TYPE__ns1__mountResponse: soap_serialize__ns1__mountResponse(soap, (const struct _ns1__mountResponse *)ptr); break; case SOAP_TYPE__ns1__mount: soap_serialize__ns1__mount(soap, (const struct _ns1__mount *)ptr); break; case SOAP_TYPE__ns1__getJobFqanResponse: soap_serialize__ns1__getJobFqanResponse(soap, (const struct _ns1__getJobFqanResponse *)ptr); break; case SOAP_TYPE__ns1__getJobFqan: soap_serialize__ns1__getJobFqan(soap, (const struct _ns1__getJobFqan *)ptr); break; case SOAP_TYPE__ns1__getChildrenFilesResponse: soap_serialize__ns1__getChildrenFilesResponse(soap, (const struct _ns1__getChildrenFilesResponse *)ptr); break; case SOAP_TYPE__ns1__getChildrenFiles: soap_serialize__ns1__getChildrenFiles(soap, (const struct _ns1__getChildrenFiles *)ptr); break; case SOAP_TYPE__ns1__anyType2anyTypeMap_entry: soap_serialize__ns1__anyType2anyTypeMap_entry(soap, (const struct _ns1__anyType2anyTypeMap_entry *)ptr); break; case SOAP_TYPE_ns1__anyType2anyTypeMap: soap_serialize_ns1__anyType2anyTypeMap(soap, (const struct ns1__anyType2anyTypeMap *)ptr); break; case SOAP_TYPE_ns1__ArrayOfString: soap_serialize_ns1__ArrayOfString(soap, (const struct ns1__ArrayOfString *)ptr); break; case SOAP_TYPE_xsd__base64Binary: soap_serialize_xsd__base64Binary(soap, (const struct xsd__base64Binary *)ptr); break; case SOAP_TYPE__xop__Include: soap_serialize__xop__Include(soap, (const struct _xop__Include *)ptr); break; case SOAP_TYPE_PointerTo_ns1__getAllHostsResponse: soap_serialize_PointerTo_ns1__getAllHostsResponse(soap, (struct _ns1__getAllHostsResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getAllHosts: soap_serialize_PointerTo_ns1__getAllHosts(soap, (struct _ns1__getAllHosts *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__submitSupportRequestResponse: soap_serialize_PointerTo_ns1__submitSupportRequestResponse(soap, (struct _ns1__submitSupportRequestResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__submitSupportRequest: soap_serialize_PointerTo_ns1__submitSupportRequest(soap, (struct _ns1__submitSupportRequest *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getJobPropertyResponse: soap_serialize_PointerTo_ns1__getJobPropertyResponse(soap, (struct _ns1__getJobPropertyResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getJobProperty: soap_serialize_PointerTo_ns1__getJobProperty(soap, (struct _ns1__getJobProperty *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__mount1Response: soap_serialize_PointerTo_ns1__mount1Response(soap, (struct _ns1__mount1Response *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__mount1: soap_serialize_PointerTo_ns1__mount1(soap, (struct _ns1__mount1 *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getJobDetailsResponse: soap_serialize_PointerTo_ns1__getJobDetailsResponse(soap, (struct _ns1__getJobDetailsResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getJobDetails: soap_serialize_PointerTo_ns1__getJobDetails(soap, (struct _ns1__getJobDetails *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__umountResponse: soap_serialize_PointerTo_ns1__umountResponse(soap, (struct _ns1__umountResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__umount: soap_serialize_PointerTo_ns1__umount(soap, (struct _ns1__umount *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getJobStatusResponse: soap_serialize_PointerTo_ns1__getJobStatusResponse(soap, (struct _ns1__getJobStatusResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getJobStatus: soap_serialize_PointerTo_ns1__getJobStatus(soap, (struct _ns1__getJobStatus *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getJobDetails_USCOREstringResponse: soap_serialize_PointerTo_ns1__getJobDetails_USCOREstringResponse(soap, (struct _ns1__getJobDetails_USCOREstringResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getJobDetails_USCOREstring: soap_serialize_PointerTo_ns1__getJobDetails_USCOREstring(soap, (struct _ns1__getJobDetails_USCOREstring *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getAllSitesResponse: soap_serialize_PointerTo_ns1__getAllSitesResponse(soap, (struct _ns1__getAllSitesResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getAllSites: soap_serialize_PointerTo_ns1__getAllSites(soap, (struct _ns1__getAllSites *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__setJobDescriptionResponse: soap_serialize_PointerTo_ns1__setJobDescriptionResponse(soap, (struct _ns1__setJobDescriptionResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__setJobDescription: soap_serialize_PointerTo_ns1__setJobDescription(soap, (struct _ns1__setJobDescription *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getJobDirectoryResponse: soap_serialize_PointerTo_ns1__getJobDirectoryResponse(soap, (struct _ns1__getJobDirectoryResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getJobDirectory: soap_serialize_PointerTo_ns1__getJobDirectory(soap, (struct _ns1__getJobDirectory *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__uploadResponse: soap_serialize_PointerTo_ns1__uploadResponse(soap, (struct _ns1__uploadResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__upload: soap_serialize_PointerTo_ns1__upload(soap, (struct _ns1__upload *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__deleteFileResponse: soap_serialize_PointerTo_ns1__deleteFileResponse(soap, (struct _ns1__deleteFileResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__deleteFile: soap_serialize_PointerTo_ns1__deleteFile(soap, (struct _ns1__deleteFile *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getFileSizeResponse: soap_serialize_PointerTo_ns1__getFileSizeResponse(soap, (struct _ns1__getFileSizeResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getFileSize: soap_serialize_PointerTo_ns1__getFileSize(soap, (struct _ns1__getFileSize *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__cpResponse: soap_serialize_PointerTo_ns1__cpResponse(soap, (struct _ns1__cpResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__cp: soap_serialize_PointerTo_ns1__cp(soap, (struct _ns1__cp *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__uploadByteArrayResponse: soap_serialize_PointerTo_ns1__uploadByteArrayResponse(soap, (struct _ns1__uploadByteArrayResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__uploadByteArray: soap_serialize_PointerTo_ns1__uploadByteArray(soap, (struct _ns1__uploadByteArray *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__submitJobResponse: soap_serialize_PointerTo_ns1__submitJobResponse(soap, (struct _ns1__submitJobResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__submitJob: soap_serialize_PointerTo_ns1__submitJob(soap, (struct _ns1__submitJob *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__logoutResponse: soap_serialize_PointerTo_ns1__logoutResponse(soap, (struct _ns1__logoutResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__logout: soap_serialize_PointerTo_ns1__logout(soap, (struct _ns1__logout *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__setJobDescription_USCOREstringResponse: soap_serialize_PointerTo_ns1__setJobDescription_USCOREstringResponse(soap, (struct _ns1__setJobDescription_USCOREstringResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__setJobDescription_USCOREstring: soap_serialize_PointerTo_ns1__setJobDescription_USCOREstring(soap, (struct _ns1__setJobDescription_USCOREstring *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__calculateRelativeJobDirectoryResponse: soap_serialize_PointerTo_ns1__calculateRelativeJobDirectoryResponse(soap, (struct _ns1__calculateRelativeJobDirectoryResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__calculateRelativeJobDirectory: soap_serialize_PointerTo_ns1__calculateRelativeJobDirectory(soap, (struct _ns1__calculateRelativeJobDirectory *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getApplicationDetails1Response: soap_serialize_PointerTo_ns1__getApplicationDetails1Response(soap, (struct _ns1__getApplicationDetails1Response *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getApplicationDetails1: soap_serialize_PointerTo_ns1__getApplicationDetails1(soap, (struct _ns1__getApplicationDetails1 *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__lsResponse: soap_serialize_PointerTo_ns1__lsResponse(soap, (struct _ns1__lsResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__ls: soap_serialize_PointerTo_ns1__ls(soap, (struct _ns1__ls *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__lastModifiedResponse: soap_serialize_PointerTo_ns1__lastModifiedResponse(soap, (struct _ns1__lastModifiedResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__lastModified: soap_serialize_PointerTo_ns1__lastModified(soap, (struct _ns1__lastModified *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getSiteResponse: soap_serialize_PointerTo_ns1__getSiteResponse(soap, (struct _ns1__getSiteResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getSite: soap_serialize_PointerTo_ns1__getSite(soap, (struct _ns1__getSite *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__ps_USCOREstringResponse: soap_serialize_PointerTo_ns1__ps_USCOREstringResponse(soap, (struct _ns1__ps_USCOREstringResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__ps_USCOREstring: soap_serialize_PointerTo_ns1__ps_USCOREstring(soap, (struct _ns1__ps_USCOREstring *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__uploadByteArray1Response: soap_serialize_PointerTo_ns1__uploadByteArray1Response(soap, (struct _ns1__uploadByteArray1Response *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__uploadByteArray1: soap_serialize_PointerTo_ns1__uploadByteArray1(soap, (struct _ns1__uploadByteArray1 *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getVersionsOfApplicationOnSiteResponse: soap_serialize_PointerTo_ns1__getVersionsOfApplicationOnSiteResponse(soap, (struct _ns1__getVersionsOfApplicationOnSiteResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getVersionsOfApplicationOnSite: soap_serialize_PointerTo_ns1__getVersionsOfApplicationOnSite(soap, (struct _ns1__getVersionsOfApplicationOnSite *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getAllSubmissionLocations1Response: soap_serialize_PointerTo_ns1__getAllSubmissionLocations1Response(soap, (struct _ns1__getAllSubmissionLocations1Response *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getAllSubmissionLocations1: soap_serialize_PointerTo_ns1__getAllSubmissionLocations1(soap, (struct _ns1__getAllSubmissionLocations1 *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__createJobResponse: soap_serialize_PointerTo_ns1__createJobResponse(soap, (struct _ns1__createJobResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__createJob: soap_serialize_PointerTo_ns1__createJob(soap, (struct _ns1__createJob *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getInterfaceVersionResponse: soap_serialize_PointerTo_ns1__getInterfaceVersionResponse(soap, (struct _ns1__getInterfaceVersionResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getInterfaceVersion: soap_serialize_PointerTo_ns1__getInterfaceVersion(soap, (struct _ns1__getInterfaceVersion *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getAllSubmissionLocationsResponse: soap_serialize_PointerTo_ns1__getAllSubmissionLocationsResponse(soap, (struct _ns1__getAllSubmissionLocationsResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getAllSubmissionLocations: soap_serialize_PointerTo_ns1__getAllSubmissionLocations(soap, (struct _ns1__getAllSubmissionLocations *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__addJobPropertyResponse: soap_serialize_PointerTo_ns1__addJobPropertyResponse(soap, (struct _ns1__addJobPropertyResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__addJobProperty: soap_serialize_PointerTo_ns1__addJobProperty(soap, (struct _ns1__addJobProperty *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__addJobPropertiesResponse: soap_serialize_PointerTo_ns1__addJobPropertiesResponse(soap, (struct _ns1__addJobPropertiesResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__addJobProperties: soap_serialize_PointerTo_ns1__addJobProperties(soap, (struct _ns1__addJobProperties *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getAllAvailableApplicationsResponse: soap_serialize_PointerTo_ns1__getAllAvailableApplicationsResponse(soap, (struct _ns1__getAllAvailableApplicationsResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getAllAvailableApplications: soap_serialize_PointerTo_ns1__getAllAvailableApplications(soap, (struct _ns1__getAllAvailableApplications *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__killResponse: soap_serialize_PointerTo_ns1__killResponse(soap, (struct _ns1__killResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__kill: soap_serialize_PointerTo_ns1__kill(soap, (struct _ns1__kill *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__isFolderResponse: soap_serialize_PointerTo_ns1__isFolderResponse(soap, (struct _ns1__isFolderResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__isFolder: soap_serialize_PointerTo_ns1__isFolder(soap, (struct _ns1__isFolder *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__downloadResponse: soap_serialize_PointerTo_ns1__downloadResponse(soap, (struct _ns1__downloadResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__download: soap_serialize_PointerTo_ns1__download(soap, (struct _ns1__download *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getAllJobPropertiesResponse: soap_serialize_PointerTo_ns1__getAllJobPropertiesResponse(soap, (struct _ns1__getAllJobPropertiesResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getAllJobProperties: soap_serialize_PointerTo_ns1__getAllJobProperties(soap, (struct _ns1__getAllJobProperties *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getAllJobnamesResponse: soap_serialize_PointerTo_ns1__getAllJobnamesResponse(soap, (struct _ns1__getAllJobnamesResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getAllJobnames: soap_serialize_PointerTo_ns1__getAllJobnames(soap, (struct _ns1__getAllJobnames *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getDNResponse: soap_serialize_PointerTo_ns1__getDNResponse(soap, (struct _ns1__getDNResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getDN: soap_serialize_PointerTo_ns1__getDN(soap, (struct _ns1__getDN *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplicationResponse: soap_serialize_PointerTo_ns1__getSubmissionLocationsForApplicationResponse(soap, (struct _ns1__getSubmissionLocationsForApplicationResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication: soap_serialize_PointerTo_ns1__getSubmissionLocationsForApplication(soap, (struct _ns1__getSubmissionLocationsForApplication *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__createJob1Response: soap_serialize_PointerTo_ns1__createJob1Response(soap, (struct _ns1__createJob1Response *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__createJob1: soap_serialize_PointerTo_ns1__createJob1(soap, (struct _ns1__createJob1 *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getApplicationDetailsResponse: soap_serialize_PointerTo_ns1__getApplicationDetailsResponse(soap, (struct _ns1__getApplicationDetailsResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getApplicationDetails: soap_serialize_PointerTo_ns1__getApplicationDetails(soap, (struct _ns1__getApplicationDetails *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication1Response: soap_serialize_PointerTo_ns1__getSubmissionLocationsForApplication1Response(soap, (struct _ns1__getSubmissionLocationsForApplication1Response *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication1: soap_serialize_PointerTo_ns1__getSubmissionLocationsForApplication1(soap, (struct _ns1__getSubmissionLocationsForApplication1 *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__ls_USCOREstringResponse: soap_serialize_PointerTo_ns1__ls_USCOREstringResponse(soap, (struct _ns1__ls_USCOREstringResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__ls_USCOREstring: soap_serialize_PointerTo_ns1__ls_USCOREstring(soap, (struct _ns1__ls_USCOREstring *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__calculateAbsoluteJobDirectoryResponse: soap_serialize_PointerTo_ns1__calculateAbsoluteJobDirectoryResponse(soap, (struct _ns1__calculateAbsoluteJobDirectoryResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__calculateAbsoluteJobDirectory: soap_serialize_PointerTo_ns1__calculateAbsoluteJobDirectory(soap, (struct _ns1__calculateAbsoluteJobDirectory *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getMessagesSinceResponse: soap_serialize_PointerTo_ns1__getMessagesSinceResponse(soap, (struct _ns1__getMessagesSinceResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getMessagesSince: soap_serialize_PointerTo_ns1__getMessagesSince(soap, (struct _ns1__getMessagesSince *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__deleteFilesResponse: soap_serialize_PointerTo_ns1__deleteFilesResponse(soap, (struct _ns1__deleteFilesResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__deleteFiles: soap_serialize_PointerTo_ns1__deleteFiles(soap, (struct _ns1__deleteFiles *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__listHostedApplicationTemplatesResponse: soap_serialize_PointerTo_ns1__listHostedApplicationTemplatesResponse(soap, (struct _ns1__listHostedApplicationTemplatesResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__listHostedApplicationTemplates: soap_serialize_PointerTo_ns1__listHostedApplicationTemplates(soap, (struct _ns1__listHostedApplicationTemplates *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__downloadByteArray1Response: soap_serialize_PointerTo_ns1__downloadByteArray1Response(soap, (struct _ns1__downloadByteArray1Response *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__downloadByteArray1: soap_serialize_PointerTo_ns1__downloadByteArray1(soap, (struct _ns1__downloadByteArray1 *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getTemplate1Response: soap_serialize_PointerTo_ns1__getTemplate1Response(soap, (struct _ns1__getTemplate1Response *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getTemplate1: soap_serialize_PointerTo_ns1__getTemplate1(soap, (struct _ns1__getTemplate1 *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplicationResponse: soap_serialize_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplicationResponse(soap, (struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication: soap_serialize_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication(soap, (struct _ns1__getSubmissionLocationsPerVersionOfApplication *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getDataLocationsForVOResponse: soap_serialize_PointerTo_ns1__getDataLocationsForVOResponse(soap, (struct _ns1__getDataLocationsForVOResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getDataLocationsForVO: soap_serialize_PointerTo_ns1__getDataLocationsForVO(soap, (struct _ns1__getDataLocationsForVO *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__mkdirResponse: soap_serialize_PointerTo_ns1__mkdirResponse(soap, (struct _ns1__mkdirResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__mkdir: soap_serialize_PointerTo_ns1__mkdir(soap, (struct _ns1__mkdir *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getUserPropertyResponse: soap_serialize_PointerTo_ns1__getUserPropertyResponse(soap, (struct _ns1__getUserPropertyResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getUserProperty: soap_serialize_PointerTo_ns1__getUserProperty(soap, (struct _ns1__getUserProperty *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getStagingFileSystemForSubmissionLocationResponse: soap_serialize_PointerTo_ns1__getStagingFileSystemForSubmissionLocationResponse(soap, (struct _ns1__getStagingFileSystemForSubmissionLocationResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getStagingFileSystemForSubmissionLocation: soap_serialize_PointerTo_ns1__getStagingFileSystemForSubmissionLocation(soap, (struct _ns1__getStagingFileSystemForSubmissionLocation *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__psResponse: soap_serialize_PointerTo_ns1__psResponse(soap, (struct _ns1__psResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__ps: soap_serialize_PointerTo_ns1__ps(soap, (struct _ns1__ps *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication2Response: soap_serialize_PointerTo_ns1__getSubmissionLocationsForApplication2Response(soap, (struct _ns1__getSubmissionLocationsForApplication2Response *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication2: soap_serialize_PointerTo_ns1__getSubmissionLocationsForApplication2(soap, (struct _ns1__getSubmissionLocationsForApplication2 *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__downloadByteArrayResponse: soap_serialize_PointerTo_ns1__downloadByteArrayResponse(soap, (struct _ns1__downloadByteArrayResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__downloadByteArray: soap_serialize_PointerTo_ns1__downloadByteArray(soap, (struct _ns1__downloadByteArray *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__dfResponse: soap_serialize_PointerTo_ns1__dfResponse(soap, (struct _ns1__dfResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__df: soap_serialize_PointerTo_ns1__df(soap, (struct _ns1__df *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getFqansResponse: soap_serialize_PointerTo_ns1__getFqansResponse(soap, (struct _ns1__getFqansResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getFqans: soap_serialize_PointerTo_ns1__getFqans(soap, (struct _ns1__getFqans *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getTemplateResponse: soap_serialize_PointerTo_ns1__getTemplateResponse(soap, (struct _ns1__getTemplateResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getTemplate: soap_serialize_PointerTo_ns1__getTemplate(soap, (struct _ns1__getTemplate *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__loginResponse: soap_serialize_PointerTo_ns1__loginResponse(soap, (struct _ns1__loginResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__login: soap_serialize_PointerTo_ns1__login(soap, (struct _ns1__login *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__mountResponse: soap_serialize_PointerTo_ns1__mountResponse(soap, (struct _ns1__mountResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__mount: soap_serialize_PointerTo_ns1__mount(soap, (struct _ns1__mount *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getJobFqanResponse: soap_serialize_PointerTo_ns1__getJobFqanResponse(soap, (struct _ns1__getJobFqanResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getJobFqan: soap_serialize_PointerTo_ns1__getJobFqan(soap, (struct _ns1__getJobFqan *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getChildrenFilesResponse: soap_serialize_PointerTo_ns1__getChildrenFilesResponse(soap, (struct _ns1__getChildrenFilesResponse *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__getChildrenFiles: soap_serialize_PointerTo_ns1__getChildrenFiles(soap, (struct _ns1__getChildrenFiles *const*)ptr); break; case SOAP_TYPE_PointerTons2__VomsException: soap_serialize_PointerTons2__VomsException(soap, (struct ns2__VomsException *const*)ptr); break; case SOAP_TYPE_PointerTons2__RemoteFileSystemException: soap_serialize_PointerTons2__RemoteFileSystemException(soap, (struct ns2__RemoteFileSystemException *const*)ptr); break; case SOAP_TYPE_PointerTons2__NoValidCredentialException: soap_serialize_PointerTons2__NoValidCredentialException(soap, (struct ns2__NoValidCredentialException *const*)ptr); break; case SOAP_TYPE_PointerTons2__NoSuchTemplateException: soap_serialize_PointerTons2__NoSuchTemplateException(soap, (struct ns2__NoSuchTemplateException *const*)ptr); break; case SOAP_TYPE_PointerTons2__NoSuchJobException: soap_serialize_PointerTons2__NoSuchJobException(soap, (struct ns2__NoSuchJobException *const*)ptr); break; case SOAP_TYPE_PointerTons2__JobSubmissionException: soap_serialize_PointerTons2__JobSubmissionException(soap, (struct ns2__JobSubmissionException *const*)ptr); break; case SOAP_TYPE_PointerTons2__JobDescriptionNotValidException: soap_serialize_PointerTons2__JobDescriptionNotValidException(soap, (struct ns2__JobDescriptionNotValidException *const*)ptr); break; case SOAP_TYPE_PointerTons4__JobCreationException: soap_serialize_PointerTons4__JobCreationException(soap, (struct ns4__JobCreationException *const*)ptr); break; case SOAP_TYPE_PointerToLONG64: soap_serialize_PointerToLONG64(soap, (LONG64 *const*)ptr); break; case SOAP_TYPE_PointerToxsd__boolean: soap_serialize_PointerToxsd__boolean(soap, (enum xsd__boolean *const*)ptr); break; case SOAP_TYPE_PointerTons1__anyType2anyTypeMap: soap_serialize_PointerTons1__anyType2anyTypeMap(soap, (struct ns1__anyType2anyTypeMap *const*)ptr); break; case SOAP_TYPE_PointerToxsd__base64Binary: soap_serialize_PointerToxsd__base64Binary(soap, (struct xsd__base64Binary *const*)ptr); break; case SOAP_TYPE_PointerTons3__ArrayOfMountPoint: soap_serialize_PointerTons3__ArrayOfMountPoint(soap, (struct ns3__ArrayOfMountPoint *const*)ptr); break; case SOAP_TYPE_PointerTons3__MountPoint: soap_serialize_PointerTons3__MountPoint(soap, (struct ns3__MountPoint *const*)ptr); break; case SOAP_TYPE_PointerTons1__ArrayOfString: soap_serialize_PointerTons1__ArrayOfString(soap, (struct ns1__ArrayOfString *const*)ptr); break; case SOAP_TYPE_PointerTo_ns1__anyType2anyTypeMap_entry: soap_serialize_PointerTo_ns1__anyType2anyTypeMap_entry(soap, (struct _ns1__anyType2anyTypeMap_entry *const*)ptr); break; case SOAP_TYPE_PointerTostring: soap_serialize_PointerTostring(soap, (char **const*)ptr); break; case SOAP_TYPE_PointerTounsignedByte: soap_serialize_PointerTounsignedByte(soap, (unsigned char *const*)ptr); break; case SOAP_TYPE__QName: soap_serialize_string(soap, (char*const*)&ptr); break; case SOAP_TYPE_string: soap_serialize_string(soap, (char*const*)&ptr); break; } } #endif SOAP_FMAC3 void SOAP_FMAC4 soap_default_byte(struct soap *soap, char *a) { (void)soap; /* appease -Wall -Werror */ #ifdef SOAP_DEFAULT_byte *a = SOAP_DEFAULT_byte; #else *a = (char)0; #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_put_byte(struct soap *soap, const char *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_byte); if (soap_out_byte(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_byte(struct soap *soap, const char *tag, int id, const char *a, const char *type) { return soap_outbyte(soap, tag, id, a, type, SOAP_TYPE_byte); } SOAP_FMAC3 char * SOAP_FMAC4 soap_get_byte(struct soap *soap, char *p, const char *tag, const char *type) { if ((p = soap_in_byte(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 char * SOAP_FMAC4 soap_in_byte(struct soap *soap, const char *tag, char *a, const char *type) { return soap_inbyte(soap, tag, a, type, SOAP_TYPE_byte); } SOAP_FMAC3 void SOAP_FMAC4 soap_default_int(struct soap *soap, int *a) { (void)soap; /* appease -Wall -Werror */ #ifdef SOAP_DEFAULT_int *a = SOAP_DEFAULT_int; #else *a = (int)0; #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_put_int(struct soap *soap, const int *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_int); if (soap_out_int(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_int(struct soap *soap, const char *tag, int id, const int *a, const char *type) { return soap_outint(soap, tag, id, a, type, SOAP_TYPE_int); } SOAP_FMAC3 int * SOAP_FMAC4 soap_get_int(struct soap *soap, int *p, const char *tag, const char *type) { if ((p = soap_in_int(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 int * SOAP_FMAC4 soap_in_int(struct soap *soap, const char *tag, int *a, const char *type) { return soap_inint(soap, tag, a, type, SOAP_TYPE_int); } SOAP_FMAC3 void SOAP_FMAC4 soap_default_LONG64(struct soap *soap, LONG64 *a) { (void)soap; /* appease -Wall -Werror */ #ifdef SOAP_DEFAULT_LONG64 *a = SOAP_DEFAULT_LONG64; #else *a = (LONG64)0; #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_put_LONG64(struct soap *soap, const LONG64 *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_LONG64); if (soap_out_LONG64(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_LONG64(struct soap *soap, const char *tag, int id, const LONG64 *a, const char *type) { return soap_outLONG64(soap, tag, id, a, type, SOAP_TYPE_LONG64); } SOAP_FMAC3 LONG64 * SOAP_FMAC4 soap_get_LONG64(struct soap *soap, LONG64 *p, const char *tag, const char *type) { if ((p = soap_in_LONG64(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 LONG64 * SOAP_FMAC4 soap_in_LONG64(struct soap *soap, const char *tag, LONG64 *a, const char *type) { return soap_inLONG64(soap, tag, a, type, SOAP_TYPE_LONG64); } SOAP_FMAC3 void SOAP_FMAC4 soap_default_double(struct soap *soap, double *a) { (void)soap; /* appease -Wall -Werror */ #ifdef SOAP_DEFAULT_double *a = SOAP_DEFAULT_double; #else *a = (double)0; #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_put_double(struct soap *soap, const double *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_double); if (soap_out_double(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_double(struct soap *soap, const char *tag, int id, const double *a, const char *type) { return soap_outdouble(soap, tag, id, a, type, SOAP_TYPE_double); } SOAP_FMAC3 double * SOAP_FMAC4 soap_get_double(struct soap *soap, double *p, const char *tag, const char *type) { if ((p = soap_in_double(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 double * SOAP_FMAC4 soap_in_double(struct soap *soap, const char *tag, double *a, const char *type) { return soap_indouble(soap, tag, a, type, SOAP_TYPE_double); } SOAP_FMAC3 void SOAP_FMAC4 soap_default_unsignedByte(struct soap *soap, unsigned char *a) { (void)soap; /* appease -Wall -Werror */ #ifdef SOAP_DEFAULT_unsignedByte *a = SOAP_DEFAULT_unsignedByte; #else *a = (unsigned char)0; #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_put_unsignedByte(struct soap *soap, const unsigned char *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_unsignedByte); if (soap_out_unsignedByte(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_unsignedByte(struct soap *soap, const char *tag, int id, const unsigned char *a, const char *type) { return soap_outunsignedByte(soap, tag, id, a, type, SOAP_TYPE_unsignedByte); } SOAP_FMAC3 unsigned char * SOAP_FMAC4 soap_get_unsignedByte(struct soap *soap, unsigned char *p, const char *tag, const char *type) { if ((p = soap_in_unsignedByte(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 unsigned char * SOAP_FMAC4 soap_in_unsignedByte(struct soap *soap, const char *tag, unsigned char *a, const char *type) { return soap_inunsignedByte(soap, tag, a, type, SOAP_TYPE_unsignedByte); } SOAP_FMAC3 void SOAP_FMAC4 soap_default_unsignedInt(struct soap *soap, unsigned int *a) { (void)soap; /* appease -Wall -Werror */ #ifdef SOAP_DEFAULT_unsignedInt *a = SOAP_DEFAULT_unsignedInt; #else *a = (unsigned int)0; #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_put_unsignedInt(struct soap *soap, const unsigned int *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_unsignedInt); if (soap_out_unsignedInt(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_unsignedInt(struct soap *soap, const char *tag, int id, const unsigned int *a, const char *type) { return soap_outunsignedInt(soap, tag, id, a, type, SOAP_TYPE_unsignedInt); } SOAP_FMAC3 unsigned int * SOAP_FMAC4 soap_get_unsignedInt(struct soap *soap, unsigned int *p, const char *tag, const char *type) { if ((p = soap_in_unsignedInt(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 unsigned int * SOAP_FMAC4 soap_in_unsignedInt(struct soap *soap, const char *tag, unsigned int *a, const char *type) { return soap_inunsignedInt(soap, tag, a, type, SOAP_TYPE_unsignedInt); } SOAP_FMAC3 void SOAP_FMAC4 soap_default_time(struct soap *soap, time_t *a) { (void)soap; /* appease -Wall -Werror */ #ifdef SOAP_DEFAULT_time *a = SOAP_DEFAULT_time; #else *a = (time_t)0; #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_put_time(struct soap *soap, const time_t *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_time); if (soap_out_time(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_time(struct soap *soap, const char *tag, int id, const time_t *a, const char *type) { return soap_outdateTime(soap, tag, id, a, type, SOAP_TYPE_time); } SOAP_FMAC3 time_t * SOAP_FMAC4 soap_get_time(struct soap *soap, time_t *p, const char *tag, const char *type) { if ((p = soap_in_time(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 time_t * SOAP_FMAC4 soap_in_time(struct soap *soap, const char *tag, time_t *a, const char *type) { return soap_indateTime(soap, tag, a, type, SOAP_TYPE_time); } SOAP_FMAC3 void SOAP_FMAC4 soap_default_xsd__boolean(struct soap *soap, enum xsd__boolean *a) { (void)soap; /* appease -Wall -Werror */ #ifdef SOAP_DEFAULT_xsd__boolean *a = SOAP_DEFAULT_xsd__boolean; #else *a = (enum xsd__boolean)0; #endif } SOAP_FMAC3 int SOAP_FMAC4 soap_put_xsd__boolean(struct soap *soap, const enum xsd__boolean *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_xsd__boolean); if (soap_out_xsd__boolean(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } static const struct soap_code_map soap_codes_xsd__boolean[] = { { (long)xsd__boolean__false_, "false" }, { (long)xsd__boolean__true_, "true" }, { 0, NULL } }; SOAP_FMAC3S const char* SOAP_FMAC4S soap_xsd__boolean2s(struct soap *soap, enum xsd__boolean n) { return soap_code_str(soap_codes_xsd__boolean, n!=0); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__boolean(struct soap *soap, const char *tag, int id, const enum xsd__boolean *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_xsd__boolean), type); soap_send(soap, soap_xsd__boolean2s(soap, *a)); return soap_element_end_out(soap, tag); } SOAP_FMAC3 enum xsd__boolean * SOAP_FMAC4 soap_get_xsd__boolean(struct soap *soap, enum xsd__boolean *p, const char *tag, const char *type) { if ((p = soap_in_xsd__boolean(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3S int SOAP_FMAC4S soap_s2xsd__boolean(struct soap *soap, const char *s, enum xsd__boolean *a) { const struct soap_code_map *map; if (!s) return SOAP_OK; map = soap_code(soap_codes_xsd__boolean, s); if (map) *a = (enum xsd__boolean)(map->code != 0); else { long n; if (soap_s2long(soap, s, &n) || n < 0 || n > 1) return soap->error = SOAP_TYPE; *a = (enum xsd__boolean)(n != 0); } return SOAP_OK; } SOAP_FMAC3 enum xsd__boolean * SOAP_FMAC4 soap_in_xsd__boolean(struct soap *soap, const char *tag, enum xsd__boolean *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, NULL)) return NULL; if (*soap->type && soap_match_tag(soap, soap->type, type) && soap_match_tag(soap, soap->type, ":boolean")) { soap->error = SOAP_TYPE; return NULL; } a = (enum xsd__boolean *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__boolean, sizeof(enum xsd__boolean), 0, NULL, NULL, NULL); if (!a) return NULL; if (soap->body && !*soap->href) { if (!a || soap_s2xsd__boolean(soap, soap_value(soap), a) || soap_element_end_in(soap, tag)) return NULL; } else { a = (enum xsd__boolean *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_xsd__boolean, 0, sizeof(enum xsd__boolean), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Fault(struct soap *soap, struct SOAP_ENV__Fault *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default__QName(soap, &a->faultcode); soap_default_string(soap, &a->faultstring); soap_default_string(soap, &a->faultactor); a->detail = NULL; a->SOAP_ENV__Code = NULL; a->SOAP_ENV__Reason = NULL; soap_default_string(soap, &a->SOAP_ENV__Node); soap_default_string(soap, &a->SOAP_ENV__Role); a->SOAP_ENV__Detail = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Fault(struct soap *soap, const struct SOAP_ENV__Fault *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize__QName(soap, &a->faultcode); soap_serialize_string(soap, &a->faultstring); soap_serialize_string(soap, &a->faultactor); soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->detail); soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Code); soap_serialize_PointerToSOAP_ENV__Reason(soap, &a->SOAP_ENV__Reason); soap_serialize_string(soap, &a->SOAP_ENV__Node); soap_serialize_string(soap, &a->SOAP_ENV__Role); soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->SOAP_ENV__Detail); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Fault(struct soap *soap, const struct SOAP_ENV__Fault *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Fault); if (soap_out_SOAP_ENV__Fault(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Fault(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Fault *a, const char *type) { const char *soap_tmp_faultcode = soap_QName2s(soap, a->faultcode); soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Fault), type); soap_out__QName(soap, "faultcode", -1, (char*const*)&soap_tmp_faultcode, ""); soap_out_string(soap, "faultstring", -1, &a->faultstring, ""); soap_out_string(soap, "faultactor", -1, &a->faultactor, ""); soap_out_PointerToSOAP_ENV__Detail(soap, "detail", -1, &a->detail, ""); soap_out_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Code", -1, &a->SOAP_ENV__Code, ""); soap_out_PointerToSOAP_ENV__Reason(soap, "SOAP-ENV:Reason", -1, &a->SOAP_ENV__Reason, ""); soap_out_string(soap, "SOAP-ENV:Node", -1, &a->SOAP_ENV__Node, ""); soap_out_string(soap, "SOAP-ENV:Role", -1, &a->SOAP_ENV__Role, ""); soap_out_PointerToSOAP_ENV__Detail(soap, "SOAP-ENV:Detail", -1, &a->SOAP_ENV__Detail, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct SOAP_ENV__Fault * SOAP_FMAC4 soap_get_SOAP_ENV__Fault(struct soap *soap, struct SOAP_ENV__Fault *p, const char *tag, const char *type) { if ((p = soap_in_SOAP_ENV__Fault(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct SOAP_ENV__Fault * SOAP_FMAC4 soap_in_SOAP_ENV__Fault(struct soap *soap, const char *tag, struct SOAP_ENV__Fault *a, const char *type) { short soap_flag_faultcode = 1, soap_flag_faultstring = 1, soap_flag_faultactor = 1, soap_flag_detail = 1, soap_flag_SOAP_ENV__Code = 1, soap_flag_SOAP_ENV__Reason = 1, soap_flag_SOAP_ENV__Node = 1, soap_flag_SOAP_ENV__Role = 1, soap_flag_SOAP_ENV__Detail = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct SOAP_ENV__Fault *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Fault, sizeof(struct SOAP_ENV__Fault), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_SOAP_ENV__Fault(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_faultcode && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in__QName(soap, "faultcode", &a->faultcode, "")) { soap_flag_faultcode--; continue; } if (soap_flag_faultstring && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "faultstring", &a->faultstring, "xsd:string")) { soap_flag_faultstring--; continue; } if (soap_flag_faultactor && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "faultactor", &a->faultactor, "xsd:string")) { soap_flag_faultactor--; continue; } if (soap_flag_detail && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerToSOAP_ENV__Detail(soap, "detail", &a->detail, "")) { soap_flag_detail--; continue; } if (soap_flag_SOAP_ENV__Code && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Code", &a->SOAP_ENV__Code, "")) { soap_flag_SOAP_ENV__Code--; continue; } if (soap_flag_SOAP_ENV__Reason && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerToSOAP_ENV__Reason(soap, "SOAP-ENV:Reason", &a->SOAP_ENV__Reason, "")) { soap_flag_SOAP_ENV__Reason--; continue; } if (soap_flag_SOAP_ENV__Node && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "SOAP-ENV:Node", &a->SOAP_ENV__Node, "xsd:string")) { soap_flag_SOAP_ENV__Node--; continue; } if (soap_flag_SOAP_ENV__Role && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "SOAP-ENV:Role", &a->SOAP_ENV__Role, "xsd:string")) { soap_flag_SOAP_ENV__Role--; continue; } if (soap_flag_SOAP_ENV__Detail && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerToSOAP_ENV__Detail(soap, "SOAP-ENV:Detail", &a->SOAP_ENV__Detail, "")) { soap_flag_SOAP_ENV__Detail--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct SOAP_ENV__Fault *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Fault, 0, sizeof(struct SOAP_ENV__Fault), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } #endif #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->SOAP_ENV__Text); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Reason(struct soap *soap, const struct SOAP_ENV__Reason *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->SOAP_ENV__Text); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Reason(struct soap *soap, const struct SOAP_ENV__Reason *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Reason); if (soap_out_SOAP_ENV__Reason(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Reason(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Reason *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Reason), type); soap_out_string(soap, "SOAP-ENV:Text", -1, &a->SOAP_ENV__Text, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct SOAP_ENV__Reason * SOAP_FMAC4 soap_get_SOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *p, const char *tag, const char *type) { if ((p = soap_in_SOAP_ENV__Reason(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct SOAP_ENV__Reason * SOAP_FMAC4 soap_in_SOAP_ENV__Reason(struct soap *soap, const char *tag, struct SOAP_ENV__Reason *a, const char *type) { short soap_flag_SOAP_ENV__Text = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct SOAP_ENV__Reason *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Reason, sizeof(struct SOAP_ENV__Reason), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_SOAP_ENV__Reason(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_SOAP_ENV__Text && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "SOAP-ENV:Text", &a->SOAP_ENV__Text, "xsd:string")) { soap_flag_SOAP_ENV__Text--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct SOAP_ENV__Reason *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Reason, 0, sizeof(struct SOAP_ENV__Reason), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } #endif #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default__QName(soap, &a->SOAP_ENV__Value); a->SOAP_ENV__Subcode = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Code(struct soap *soap, const struct SOAP_ENV__Code *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize__QName(soap, &a->SOAP_ENV__Value); soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Subcode); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Code(struct soap *soap, const struct SOAP_ENV__Code *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Code); if (soap_out_SOAP_ENV__Code(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Code(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Code *a, const char *type) { const char *soap_tmp_SOAP_ENV__Value = soap_QName2s(soap, a->SOAP_ENV__Value); soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Code), type); soap_out__QName(soap, "SOAP-ENV:Value", -1, (char*const*)&soap_tmp_SOAP_ENV__Value, ""); soap_out_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Subcode", -1, &a->SOAP_ENV__Subcode, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct SOAP_ENV__Code * SOAP_FMAC4 soap_get_SOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *p, const char *tag, const char *type) { if ((p = soap_in_SOAP_ENV__Code(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct SOAP_ENV__Code * SOAP_FMAC4 soap_in_SOAP_ENV__Code(struct soap *soap, const char *tag, struct SOAP_ENV__Code *a, const char *type) { short soap_flag_SOAP_ENV__Value = 1, soap_flag_SOAP_ENV__Subcode = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct SOAP_ENV__Code *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Code, sizeof(struct SOAP_ENV__Code), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_SOAP_ENV__Code(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_SOAP_ENV__Value && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in__QName(soap, "SOAP-ENV:Value", &a->SOAP_ENV__Value, "")) { soap_flag_SOAP_ENV__Value--; continue; } if (soap_flag_SOAP_ENV__Subcode && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Subcode", &a->SOAP_ENV__Subcode, "")) { soap_flag_SOAP_ENV__Subcode--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct SOAP_ENV__Code *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Code, 0, sizeof(struct SOAP_ENV__Code), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } #endif #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Header(struct soap *soap, struct SOAP_ENV__Header *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Header(struct soap *soap, const struct SOAP_ENV__Header *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Header(struct soap *soap, const struct SOAP_ENV__Header *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Header); if (soap_out_SOAP_ENV__Header(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Header(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Header *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Header), type); /* GDIS insert */ soap_element_begin_out(soap, "ns1:AuthenticationToken", 0, NULL); soap_out_string(soap, "ns1:Username", 1, &(a->username), ""); soap_out_string(soap, "ns1:Password", 2, &(a->password), ""); soap_out_string(soap, "ns1:MyProxyServer", 3, &(a->myproxyserver), ""); soap_out_string(soap, "ns1:MyProxyPort", 4, &(a->myproxyport), ""); soap_element_end_out(soap, "ns1:AuthenticationToken"); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct SOAP_ENV__Header * SOAP_FMAC4 soap_get_SOAP_ENV__Header(struct soap *soap, struct SOAP_ENV__Header *p, const char *tag, const char *type) { if ((p = soap_in_SOAP_ENV__Header(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct SOAP_ENV__Header * SOAP_FMAC4 soap_in_SOAP_ENV__Header(struct soap *soap, const char *tag, struct SOAP_ENV__Header *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct SOAP_ENV__Header *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Header, sizeof(struct SOAP_ENV__Header), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_SOAP_ENV__Header(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct SOAP_ENV__Header *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Header, 0, sizeof(struct SOAP_ENV__Header), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } #endif SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getAllHosts(struct soap *soap, struct __ns1__getAllHosts *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getAllHosts = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getAllHosts(struct soap *soap, const struct __ns1__getAllHosts *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getAllHosts(soap, &a->ns1__getAllHosts); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getAllHosts(struct soap *soap, const struct __ns1__getAllHosts *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getAllHosts(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getAllHosts(struct soap *soap, const char *tag, int id, const struct __ns1__getAllHosts *a, const char *type) { soap_out_PointerTo_ns1__getAllHosts(soap, "ns1:getAllHosts", -1, &a->ns1__getAllHosts, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getAllHosts * SOAP_FMAC4 soap_get___ns1__getAllHosts(struct soap *soap, struct __ns1__getAllHosts *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getAllHosts(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getAllHosts * SOAP_FMAC4 soap_in___ns1__getAllHosts(struct soap *soap, const char *tag, struct __ns1__getAllHosts *a, const char *type) { short soap_flag_ns1__getAllHosts = 1; short soap_flag; a = (struct __ns1__getAllHosts *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getAllHosts, sizeof(struct __ns1__getAllHosts), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getAllHosts(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getAllHosts && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getAllHosts(soap, "ns1:getAllHosts", &a->ns1__getAllHosts, "")) { soap_flag_ns1__getAllHosts--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__submitSupportRequest(struct soap *soap, struct __ns1__submitSupportRequest *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__submitSupportRequest = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__submitSupportRequest(struct soap *soap, const struct __ns1__submitSupportRequest *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__submitSupportRequest(soap, &a->ns1__submitSupportRequest); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__submitSupportRequest(struct soap *soap, const struct __ns1__submitSupportRequest *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__submitSupportRequest(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__submitSupportRequest(struct soap *soap, const char *tag, int id, const struct __ns1__submitSupportRequest *a, const char *type) { soap_out_PointerTo_ns1__submitSupportRequest(soap, "ns1:submitSupportRequest", -1, &a->ns1__submitSupportRequest, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__submitSupportRequest * SOAP_FMAC4 soap_get___ns1__submitSupportRequest(struct soap *soap, struct __ns1__submitSupportRequest *p, const char *tag, const char *type) { if ((p = soap_in___ns1__submitSupportRequest(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__submitSupportRequest * SOAP_FMAC4 soap_in___ns1__submitSupportRequest(struct soap *soap, const char *tag, struct __ns1__submitSupportRequest *a, const char *type) { short soap_flag_ns1__submitSupportRequest = 1; short soap_flag; a = (struct __ns1__submitSupportRequest *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__submitSupportRequest, sizeof(struct __ns1__submitSupportRequest), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__submitSupportRequest(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__submitSupportRequest && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__submitSupportRequest(soap, "ns1:submitSupportRequest", &a->ns1__submitSupportRequest, "")) { soap_flag_ns1__submitSupportRequest--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getJobProperty(struct soap *soap, struct __ns1__getJobProperty *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getJobProperty = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getJobProperty(struct soap *soap, const struct __ns1__getJobProperty *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getJobProperty(soap, &a->ns1__getJobProperty); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getJobProperty(struct soap *soap, const struct __ns1__getJobProperty *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getJobProperty(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getJobProperty(struct soap *soap, const char *tag, int id, const struct __ns1__getJobProperty *a, const char *type) { soap_out_PointerTo_ns1__getJobProperty(soap, "ns1:getJobProperty", -1, &a->ns1__getJobProperty, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getJobProperty * SOAP_FMAC4 soap_get___ns1__getJobProperty(struct soap *soap, struct __ns1__getJobProperty *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getJobProperty(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getJobProperty * SOAP_FMAC4 soap_in___ns1__getJobProperty(struct soap *soap, const char *tag, struct __ns1__getJobProperty *a, const char *type) { short soap_flag_ns1__getJobProperty = 1; short soap_flag; a = (struct __ns1__getJobProperty *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getJobProperty, sizeof(struct __ns1__getJobProperty), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getJobProperty(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getJobProperty && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getJobProperty(soap, "ns1:getJobProperty", &a->ns1__getJobProperty, "")) { soap_flag_ns1__getJobProperty--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__mount1(struct soap *soap, struct __ns1__mount1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__mount1 = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__mount1(struct soap *soap, const struct __ns1__mount1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__mount1(soap, &a->ns1__mount1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__mount1(struct soap *soap, const struct __ns1__mount1 *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__mount1(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__mount1(struct soap *soap, const char *tag, int id, const struct __ns1__mount1 *a, const char *type) { soap_out_PointerTo_ns1__mount1(soap, "ns1:mount1", -1, &a->ns1__mount1, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__mount1 * SOAP_FMAC4 soap_get___ns1__mount1(struct soap *soap, struct __ns1__mount1 *p, const char *tag, const char *type) { if ((p = soap_in___ns1__mount1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__mount1 * SOAP_FMAC4 soap_in___ns1__mount1(struct soap *soap, const char *tag, struct __ns1__mount1 *a, const char *type) { short soap_flag_ns1__mount1 = 1; short soap_flag; a = (struct __ns1__mount1 *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__mount1, sizeof(struct __ns1__mount1), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__mount1(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__mount1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__mount1(soap, "ns1:mount1", &a->ns1__mount1, "")) { soap_flag_ns1__mount1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getJobDetails(struct soap *soap, struct __ns1__getJobDetails *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getJobDetails = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getJobDetails(struct soap *soap, const struct __ns1__getJobDetails *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getJobDetails(soap, &a->ns1__getJobDetails); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getJobDetails(struct soap *soap, const struct __ns1__getJobDetails *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getJobDetails(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getJobDetails(struct soap *soap, const char *tag, int id, const struct __ns1__getJobDetails *a, const char *type) { soap_out_PointerTo_ns1__getJobDetails(soap, "ns1:getJobDetails", -1, &a->ns1__getJobDetails, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getJobDetails * SOAP_FMAC4 soap_get___ns1__getJobDetails(struct soap *soap, struct __ns1__getJobDetails *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getJobDetails(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getJobDetails * SOAP_FMAC4 soap_in___ns1__getJobDetails(struct soap *soap, const char *tag, struct __ns1__getJobDetails *a, const char *type) { short soap_flag_ns1__getJobDetails = 1; short soap_flag; a = (struct __ns1__getJobDetails *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getJobDetails, sizeof(struct __ns1__getJobDetails), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getJobDetails(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getJobDetails && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getJobDetails(soap, "ns1:getJobDetails", &a->ns1__getJobDetails, "")) { soap_flag_ns1__getJobDetails--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__umount(struct soap *soap, struct __ns1__umount *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__umount = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__umount(struct soap *soap, const struct __ns1__umount *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__umount(soap, &a->ns1__umount); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__umount(struct soap *soap, const struct __ns1__umount *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__umount(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__umount(struct soap *soap, const char *tag, int id, const struct __ns1__umount *a, const char *type) { soap_out_PointerTo_ns1__umount(soap, "ns1:umount", -1, &a->ns1__umount, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__umount * SOAP_FMAC4 soap_get___ns1__umount(struct soap *soap, struct __ns1__umount *p, const char *tag, const char *type) { if ((p = soap_in___ns1__umount(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__umount * SOAP_FMAC4 soap_in___ns1__umount(struct soap *soap, const char *tag, struct __ns1__umount *a, const char *type) { short soap_flag_ns1__umount = 1; short soap_flag; a = (struct __ns1__umount *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__umount, sizeof(struct __ns1__umount), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__umount(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__umount && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__umount(soap, "ns1:umount", &a->ns1__umount, "")) { soap_flag_ns1__umount--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getJobStatus(struct soap *soap, struct __ns1__getJobStatus *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getJobStatus = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getJobStatus(struct soap *soap, const struct __ns1__getJobStatus *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getJobStatus(soap, &a->ns1__getJobStatus); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getJobStatus(struct soap *soap, const struct __ns1__getJobStatus *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getJobStatus(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getJobStatus(struct soap *soap, const char *tag, int id, const struct __ns1__getJobStatus *a, const char *type) { soap_out_PointerTo_ns1__getJobStatus(soap, "ns1:getJobStatus", -1, &a->ns1__getJobStatus, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getJobStatus * SOAP_FMAC4 soap_get___ns1__getJobStatus(struct soap *soap, struct __ns1__getJobStatus *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getJobStatus(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getJobStatus * SOAP_FMAC4 soap_in___ns1__getJobStatus(struct soap *soap, const char *tag, struct __ns1__getJobStatus *a, const char *type) { short soap_flag_ns1__getJobStatus = 1; short soap_flag; a = (struct __ns1__getJobStatus *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getJobStatus, sizeof(struct __ns1__getJobStatus), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getJobStatus(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getJobStatus && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getJobStatus(soap, "ns1:getJobStatus", &a->ns1__getJobStatus, "")) { soap_flag_ns1__getJobStatus--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getJobDetails_USCOREstring(struct soap *soap, struct __ns1__getJobDetails_USCOREstring *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getJobDetails_USCOREstring = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getJobDetails_USCOREstring(struct soap *soap, const struct __ns1__getJobDetails_USCOREstring *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getJobDetails_USCOREstring(soap, &a->ns1__getJobDetails_USCOREstring); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getJobDetails_USCOREstring(struct soap *soap, const struct __ns1__getJobDetails_USCOREstring *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getJobDetails_USCOREstring(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getJobDetails_USCOREstring(struct soap *soap, const char *tag, int id, const struct __ns1__getJobDetails_USCOREstring *a, const char *type) { soap_out_PointerTo_ns1__getJobDetails_USCOREstring(soap, "ns1:getJobDetails_string", -1, &a->ns1__getJobDetails_USCOREstring, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getJobDetails_USCOREstring * SOAP_FMAC4 soap_get___ns1__getJobDetails_USCOREstring(struct soap *soap, struct __ns1__getJobDetails_USCOREstring *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getJobDetails_USCOREstring(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getJobDetails_USCOREstring * SOAP_FMAC4 soap_in___ns1__getJobDetails_USCOREstring(struct soap *soap, const char *tag, struct __ns1__getJobDetails_USCOREstring *a, const char *type) { short soap_flag_ns1__getJobDetails_USCOREstring = 1; short soap_flag; a = (struct __ns1__getJobDetails_USCOREstring *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getJobDetails_USCOREstring, sizeof(struct __ns1__getJobDetails_USCOREstring), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getJobDetails_USCOREstring(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getJobDetails_USCOREstring && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getJobDetails_USCOREstring(soap, "ns1:getJobDetails_string", &a->ns1__getJobDetails_USCOREstring, "")) { soap_flag_ns1__getJobDetails_USCOREstring--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getAllSites(struct soap *soap, struct __ns1__getAllSites *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getAllSites = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getAllSites(struct soap *soap, const struct __ns1__getAllSites *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getAllSites(soap, &a->ns1__getAllSites); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getAllSites(struct soap *soap, const struct __ns1__getAllSites *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getAllSites(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getAllSites(struct soap *soap, const char *tag, int id, const struct __ns1__getAllSites *a, const char *type) { soap_out_PointerTo_ns1__getAllSites(soap, "ns1:getAllSites", -1, &a->ns1__getAllSites, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getAllSites * SOAP_FMAC4 soap_get___ns1__getAllSites(struct soap *soap, struct __ns1__getAllSites *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getAllSites(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getAllSites * SOAP_FMAC4 soap_in___ns1__getAllSites(struct soap *soap, const char *tag, struct __ns1__getAllSites *a, const char *type) { short soap_flag_ns1__getAllSites = 1; short soap_flag; a = (struct __ns1__getAllSites *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getAllSites, sizeof(struct __ns1__getAllSites), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getAllSites(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getAllSites && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getAllSites(soap, "ns1:getAllSites", &a->ns1__getAllSites, "")) { soap_flag_ns1__getAllSites--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__setJobDescription(struct soap *soap, struct __ns1__setJobDescription *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__setJobDescription = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__setJobDescription(struct soap *soap, const struct __ns1__setJobDescription *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__setJobDescription(soap, &a->ns1__setJobDescription); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__setJobDescription(struct soap *soap, const struct __ns1__setJobDescription *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__setJobDescription(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__setJobDescription(struct soap *soap, const char *tag, int id, const struct __ns1__setJobDescription *a, const char *type) { soap_out_PointerTo_ns1__setJobDescription(soap, "ns1:setJobDescription", -1, &a->ns1__setJobDescription, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__setJobDescription * SOAP_FMAC4 soap_get___ns1__setJobDescription(struct soap *soap, struct __ns1__setJobDescription *p, const char *tag, const char *type) { if ((p = soap_in___ns1__setJobDescription(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__setJobDescription * SOAP_FMAC4 soap_in___ns1__setJobDescription(struct soap *soap, const char *tag, struct __ns1__setJobDescription *a, const char *type) { short soap_flag_ns1__setJobDescription = 1; short soap_flag; a = (struct __ns1__setJobDescription *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__setJobDescription, sizeof(struct __ns1__setJobDescription), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__setJobDescription(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__setJobDescription && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__setJobDescription(soap, "ns1:setJobDescription", &a->ns1__setJobDescription, "")) { soap_flag_ns1__setJobDescription--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getJobDirectory(struct soap *soap, struct __ns1__getJobDirectory *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getJobDirectory = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getJobDirectory(struct soap *soap, const struct __ns1__getJobDirectory *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getJobDirectory(soap, &a->ns1__getJobDirectory); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getJobDirectory(struct soap *soap, const struct __ns1__getJobDirectory *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getJobDirectory(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getJobDirectory(struct soap *soap, const char *tag, int id, const struct __ns1__getJobDirectory *a, const char *type) { soap_out_PointerTo_ns1__getJobDirectory(soap, "ns1:getJobDirectory", -1, &a->ns1__getJobDirectory, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getJobDirectory * SOAP_FMAC4 soap_get___ns1__getJobDirectory(struct soap *soap, struct __ns1__getJobDirectory *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getJobDirectory(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getJobDirectory * SOAP_FMAC4 soap_in___ns1__getJobDirectory(struct soap *soap, const char *tag, struct __ns1__getJobDirectory *a, const char *type) { short soap_flag_ns1__getJobDirectory = 1; short soap_flag; a = (struct __ns1__getJobDirectory *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getJobDirectory, sizeof(struct __ns1__getJobDirectory), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getJobDirectory(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getJobDirectory && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getJobDirectory(soap, "ns1:getJobDirectory", &a->ns1__getJobDirectory, "")) { soap_flag_ns1__getJobDirectory--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__upload(struct soap *soap, struct __ns1__upload *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__upload = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__upload(struct soap *soap, const struct __ns1__upload *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__upload(soap, &a->ns1__upload); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__upload(struct soap *soap, const struct __ns1__upload *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__upload(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__upload(struct soap *soap, const char *tag, int id, const struct __ns1__upload *a, const char *type) { soap_out_PointerTo_ns1__upload(soap, "ns1:upload", -1, &a->ns1__upload, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__upload * SOAP_FMAC4 soap_get___ns1__upload(struct soap *soap, struct __ns1__upload *p, const char *tag, const char *type) { if ((p = soap_in___ns1__upload(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__upload * SOAP_FMAC4 soap_in___ns1__upload(struct soap *soap, const char *tag, struct __ns1__upload *a, const char *type) { short soap_flag_ns1__upload = 1; short soap_flag; a = (struct __ns1__upload *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__upload, sizeof(struct __ns1__upload), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__upload(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__upload && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__upload(soap, "ns1:upload", &a->ns1__upload, "")) { soap_flag_ns1__upload--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteFile(struct soap *soap, struct __ns1__deleteFile *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__deleteFile = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteFile(struct soap *soap, const struct __ns1__deleteFile *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__deleteFile(soap, &a->ns1__deleteFile); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteFile(struct soap *soap, const struct __ns1__deleteFile *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__deleteFile(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteFile(struct soap *soap, const char *tag, int id, const struct __ns1__deleteFile *a, const char *type) { soap_out_PointerTo_ns1__deleteFile(soap, "ns1:deleteFile", -1, &a->ns1__deleteFile, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__deleteFile * SOAP_FMAC4 soap_get___ns1__deleteFile(struct soap *soap, struct __ns1__deleteFile *p, const char *tag, const char *type) { if ((p = soap_in___ns1__deleteFile(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__deleteFile * SOAP_FMAC4 soap_in___ns1__deleteFile(struct soap *soap, const char *tag, struct __ns1__deleteFile *a, const char *type) { short soap_flag_ns1__deleteFile = 1; short soap_flag; a = (struct __ns1__deleteFile *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteFile, sizeof(struct __ns1__deleteFile), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__deleteFile(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__deleteFile && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__deleteFile(soap, "ns1:deleteFile", &a->ns1__deleteFile, "")) { soap_flag_ns1__deleteFile--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getFileSize(struct soap *soap, struct __ns1__getFileSize *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getFileSize = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getFileSize(struct soap *soap, const struct __ns1__getFileSize *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getFileSize(soap, &a->ns1__getFileSize); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getFileSize(struct soap *soap, const struct __ns1__getFileSize *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getFileSize(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getFileSize(struct soap *soap, const char *tag, int id, const struct __ns1__getFileSize *a, const char *type) { soap_out_PointerTo_ns1__getFileSize(soap, "ns1:getFileSize", -1, &a->ns1__getFileSize, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getFileSize * SOAP_FMAC4 soap_get___ns1__getFileSize(struct soap *soap, struct __ns1__getFileSize *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getFileSize(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getFileSize * SOAP_FMAC4 soap_in___ns1__getFileSize(struct soap *soap, const char *tag, struct __ns1__getFileSize *a, const char *type) { short soap_flag_ns1__getFileSize = 1; short soap_flag; a = (struct __ns1__getFileSize *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getFileSize, sizeof(struct __ns1__getFileSize), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getFileSize(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getFileSize && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getFileSize(soap, "ns1:getFileSize", &a->ns1__getFileSize, "")) { soap_flag_ns1__getFileSize--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__cp(struct soap *soap, struct __ns1__cp *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__cp = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__cp(struct soap *soap, const struct __ns1__cp *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__cp(soap, &a->ns1__cp); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__cp(struct soap *soap, const struct __ns1__cp *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__cp(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__cp(struct soap *soap, const char *tag, int id, const struct __ns1__cp *a, const char *type) { soap_out_PointerTo_ns1__cp(soap, "ns1:cp", -1, &a->ns1__cp, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__cp * SOAP_FMAC4 soap_get___ns1__cp(struct soap *soap, struct __ns1__cp *p, const char *tag, const char *type) { if ((p = soap_in___ns1__cp(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__cp * SOAP_FMAC4 soap_in___ns1__cp(struct soap *soap, const char *tag, struct __ns1__cp *a, const char *type) { short soap_flag_ns1__cp = 1; short soap_flag; a = (struct __ns1__cp *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__cp, sizeof(struct __ns1__cp), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__cp(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__cp && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__cp(soap, "ns1:cp", &a->ns1__cp, "")) { soap_flag_ns1__cp--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__uploadByteArray(struct soap *soap, struct __ns1__uploadByteArray *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__uploadByteArray = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__uploadByteArray(struct soap *soap, const struct __ns1__uploadByteArray *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__uploadByteArray(soap, &a->ns1__uploadByteArray); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__uploadByteArray(struct soap *soap, const struct __ns1__uploadByteArray *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__uploadByteArray(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__uploadByteArray(struct soap *soap, const char *tag, int id, const struct __ns1__uploadByteArray *a, const char *type) { soap_out_PointerTo_ns1__uploadByteArray(soap, "ns1:uploadByteArray", -1, &a->ns1__uploadByteArray, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__uploadByteArray * SOAP_FMAC4 soap_get___ns1__uploadByteArray(struct soap *soap, struct __ns1__uploadByteArray *p, const char *tag, const char *type) { if ((p = soap_in___ns1__uploadByteArray(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__uploadByteArray * SOAP_FMAC4 soap_in___ns1__uploadByteArray(struct soap *soap, const char *tag, struct __ns1__uploadByteArray *a, const char *type) { short soap_flag_ns1__uploadByteArray = 1; short soap_flag; a = (struct __ns1__uploadByteArray *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__uploadByteArray, sizeof(struct __ns1__uploadByteArray), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__uploadByteArray(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__uploadByteArray && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__uploadByteArray(soap, "ns1:uploadByteArray", &a->ns1__uploadByteArray, "")) { soap_flag_ns1__uploadByteArray--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__submitJob(struct soap *soap, struct __ns1__submitJob *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__submitJob = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__submitJob(struct soap *soap, const struct __ns1__submitJob *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__submitJob(soap, &a->ns1__submitJob); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__submitJob(struct soap *soap, const struct __ns1__submitJob *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__submitJob(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__submitJob(struct soap *soap, const char *tag, int id, const struct __ns1__submitJob *a, const char *type) { soap_out_PointerTo_ns1__submitJob(soap, "ns1:submitJob", -1, &a->ns1__submitJob, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__submitJob * SOAP_FMAC4 soap_get___ns1__submitJob(struct soap *soap, struct __ns1__submitJob *p, const char *tag, const char *type) { if ((p = soap_in___ns1__submitJob(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__submitJob * SOAP_FMAC4 soap_in___ns1__submitJob(struct soap *soap, const char *tag, struct __ns1__submitJob *a, const char *type) { short soap_flag_ns1__submitJob = 1; short soap_flag; a = (struct __ns1__submitJob *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__submitJob, sizeof(struct __ns1__submitJob), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__submitJob(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__submitJob && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__submitJob(soap, "ns1:submitJob", &a->ns1__submitJob, "")) { soap_flag_ns1__submitJob--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__logout(struct soap *soap, struct __ns1__logout *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__logout = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__logout(struct soap *soap, const struct __ns1__logout *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__logout(soap, &a->ns1__logout); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__logout(struct soap *soap, const struct __ns1__logout *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__logout(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__logout(struct soap *soap, const char *tag, int id, const struct __ns1__logout *a, const char *type) { soap_out_PointerTo_ns1__logout(soap, "ns1:logout", -1, &a->ns1__logout, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__logout * SOAP_FMAC4 soap_get___ns1__logout(struct soap *soap, struct __ns1__logout *p, const char *tag, const char *type) { if ((p = soap_in___ns1__logout(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__logout * SOAP_FMAC4 soap_in___ns1__logout(struct soap *soap, const char *tag, struct __ns1__logout *a, const char *type) { short soap_flag_ns1__logout = 1; short soap_flag; a = (struct __ns1__logout *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__logout, sizeof(struct __ns1__logout), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__logout(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__logout && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__logout(soap, "ns1:logout", &a->ns1__logout, "")) { soap_flag_ns1__logout--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__setJobDescription_USCOREstring(struct soap *soap, struct __ns1__setJobDescription_USCOREstring *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__setJobDescription_USCOREstring = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__setJobDescription_USCOREstring(struct soap *soap, const struct __ns1__setJobDescription_USCOREstring *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__setJobDescription_USCOREstring(soap, &a->ns1__setJobDescription_USCOREstring); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__setJobDescription_USCOREstring(struct soap *soap, const struct __ns1__setJobDescription_USCOREstring *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__setJobDescription_USCOREstring(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__setJobDescription_USCOREstring(struct soap *soap, const char *tag, int id, const struct __ns1__setJobDescription_USCOREstring *a, const char *type) { soap_out_PointerTo_ns1__setJobDescription_USCOREstring(soap, "ns1:setJobDescription_string", -1, &a->ns1__setJobDescription_USCOREstring, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__setJobDescription_USCOREstring * SOAP_FMAC4 soap_get___ns1__setJobDescription_USCOREstring(struct soap *soap, struct __ns1__setJobDescription_USCOREstring *p, const char *tag, const char *type) { if ((p = soap_in___ns1__setJobDescription_USCOREstring(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__setJobDescription_USCOREstring * SOAP_FMAC4 soap_in___ns1__setJobDescription_USCOREstring(struct soap *soap, const char *tag, struct __ns1__setJobDescription_USCOREstring *a, const char *type) { short soap_flag_ns1__setJobDescription_USCOREstring = 1; short soap_flag; a = (struct __ns1__setJobDescription_USCOREstring *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__setJobDescription_USCOREstring, sizeof(struct __ns1__setJobDescription_USCOREstring), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__setJobDescription_USCOREstring(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__setJobDescription_USCOREstring && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__setJobDescription_USCOREstring(soap, "ns1:setJobDescription_string", &a->ns1__setJobDescription_USCOREstring, "")) { soap_flag_ns1__setJobDescription_USCOREstring--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__calculateRelativeJobDirectory(struct soap *soap, struct __ns1__calculateRelativeJobDirectory *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__calculateRelativeJobDirectory = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__calculateRelativeJobDirectory(struct soap *soap, const struct __ns1__calculateRelativeJobDirectory *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__calculateRelativeJobDirectory(soap, &a->ns1__calculateRelativeJobDirectory); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__calculateRelativeJobDirectory(struct soap *soap, const struct __ns1__calculateRelativeJobDirectory *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__calculateRelativeJobDirectory(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__calculateRelativeJobDirectory(struct soap *soap, const char *tag, int id, const struct __ns1__calculateRelativeJobDirectory *a, const char *type) { soap_out_PointerTo_ns1__calculateRelativeJobDirectory(soap, "ns1:calculateRelativeJobDirectory", -1, &a->ns1__calculateRelativeJobDirectory, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__calculateRelativeJobDirectory * SOAP_FMAC4 soap_get___ns1__calculateRelativeJobDirectory(struct soap *soap, struct __ns1__calculateRelativeJobDirectory *p, const char *tag, const char *type) { if ((p = soap_in___ns1__calculateRelativeJobDirectory(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__calculateRelativeJobDirectory * SOAP_FMAC4 soap_in___ns1__calculateRelativeJobDirectory(struct soap *soap, const char *tag, struct __ns1__calculateRelativeJobDirectory *a, const char *type) { short soap_flag_ns1__calculateRelativeJobDirectory = 1; short soap_flag; a = (struct __ns1__calculateRelativeJobDirectory *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__calculateRelativeJobDirectory, sizeof(struct __ns1__calculateRelativeJobDirectory), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__calculateRelativeJobDirectory(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__calculateRelativeJobDirectory && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__calculateRelativeJobDirectory(soap, "ns1:calculateRelativeJobDirectory", &a->ns1__calculateRelativeJobDirectory, "")) { soap_flag_ns1__calculateRelativeJobDirectory--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getApplicationDetails1(struct soap *soap, struct __ns1__getApplicationDetails1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getApplicationDetails1 = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getApplicationDetails1(struct soap *soap, const struct __ns1__getApplicationDetails1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getApplicationDetails1(soap, &a->ns1__getApplicationDetails1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getApplicationDetails1(struct soap *soap, const struct __ns1__getApplicationDetails1 *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getApplicationDetails1(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getApplicationDetails1(struct soap *soap, const char *tag, int id, const struct __ns1__getApplicationDetails1 *a, const char *type) { soap_out_PointerTo_ns1__getApplicationDetails1(soap, "ns1:getApplicationDetails1", -1, &a->ns1__getApplicationDetails1, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getApplicationDetails1 * SOAP_FMAC4 soap_get___ns1__getApplicationDetails1(struct soap *soap, struct __ns1__getApplicationDetails1 *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getApplicationDetails1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getApplicationDetails1 * SOAP_FMAC4 soap_in___ns1__getApplicationDetails1(struct soap *soap, const char *tag, struct __ns1__getApplicationDetails1 *a, const char *type) { short soap_flag_ns1__getApplicationDetails1 = 1; short soap_flag; a = (struct __ns1__getApplicationDetails1 *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getApplicationDetails1, sizeof(struct __ns1__getApplicationDetails1), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getApplicationDetails1(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getApplicationDetails1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getApplicationDetails1(soap, "ns1:getApplicationDetails1", &a->ns1__getApplicationDetails1, "")) { soap_flag_ns1__getApplicationDetails1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__ls(struct soap *soap, struct __ns1__ls *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__ls = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__ls(struct soap *soap, const struct __ns1__ls *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__ls(soap, &a->ns1__ls); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__ls(struct soap *soap, const struct __ns1__ls *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__ls(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__ls(struct soap *soap, const char *tag, int id, const struct __ns1__ls *a, const char *type) { soap_out_PointerTo_ns1__ls(soap, "ns1:ls", -1, &a->ns1__ls, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__ls * SOAP_FMAC4 soap_get___ns1__ls(struct soap *soap, struct __ns1__ls *p, const char *tag, const char *type) { if ((p = soap_in___ns1__ls(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__ls * SOAP_FMAC4 soap_in___ns1__ls(struct soap *soap, const char *tag, struct __ns1__ls *a, const char *type) { short soap_flag_ns1__ls = 1; short soap_flag; a = (struct __ns1__ls *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__ls, sizeof(struct __ns1__ls), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__ls(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__ls && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__ls(soap, "ns1:ls", &a->ns1__ls, "")) { soap_flag_ns1__ls--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__lastModified(struct soap *soap, struct __ns1__lastModified *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__lastModified = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__lastModified(struct soap *soap, const struct __ns1__lastModified *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__lastModified(soap, &a->ns1__lastModified); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__lastModified(struct soap *soap, const struct __ns1__lastModified *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__lastModified(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__lastModified(struct soap *soap, const char *tag, int id, const struct __ns1__lastModified *a, const char *type) { soap_out_PointerTo_ns1__lastModified(soap, "ns1:lastModified", -1, &a->ns1__lastModified, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__lastModified * SOAP_FMAC4 soap_get___ns1__lastModified(struct soap *soap, struct __ns1__lastModified *p, const char *tag, const char *type) { if ((p = soap_in___ns1__lastModified(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__lastModified * SOAP_FMAC4 soap_in___ns1__lastModified(struct soap *soap, const char *tag, struct __ns1__lastModified *a, const char *type) { short soap_flag_ns1__lastModified = 1; short soap_flag; a = (struct __ns1__lastModified *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__lastModified, sizeof(struct __ns1__lastModified), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__lastModified(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__lastModified && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__lastModified(soap, "ns1:lastModified", &a->ns1__lastModified, "")) { soap_flag_ns1__lastModified--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getSite(struct soap *soap, struct __ns1__getSite *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getSite = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getSite(struct soap *soap, const struct __ns1__getSite *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getSite(soap, &a->ns1__getSite); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getSite(struct soap *soap, const struct __ns1__getSite *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getSite(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getSite(struct soap *soap, const char *tag, int id, const struct __ns1__getSite *a, const char *type) { soap_out_PointerTo_ns1__getSite(soap, "ns1:getSite", -1, &a->ns1__getSite, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getSite * SOAP_FMAC4 soap_get___ns1__getSite(struct soap *soap, struct __ns1__getSite *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getSite(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getSite * SOAP_FMAC4 soap_in___ns1__getSite(struct soap *soap, const char *tag, struct __ns1__getSite *a, const char *type) { short soap_flag_ns1__getSite = 1; short soap_flag; a = (struct __ns1__getSite *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getSite, sizeof(struct __ns1__getSite), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getSite(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getSite && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getSite(soap, "ns1:getSite", &a->ns1__getSite, "")) { soap_flag_ns1__getSite--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__ps_USCOREstring(struct soap *soap, struct __ns1__ps_USCOREstring *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__ps_USCOREstring = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__ps_USCOREstring(struct soap *soap, const struct __ns1__ps_USCOREstring *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__ps_USCOREstring(soap, &a->ns1__ps_USCOREstring); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__ps_USCOREstring(struct soap *soap, const struct __ns1__ps_USCOREstring *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__ps_USCOREstring(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__ps_USCOREstring(struct soap *soap, const char *tag, int id, const struct __ns1__ps_USCOREstring *a, const char *type) { soap_out_PointerTo_ns1__ps_USCOREstring(soap, "ns1:ps_string", -1, &a->ns1__ps_USCOREstring, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__ps_USCOREstring * SOAP_FMAC4 soap_get___ns1__ps_USCOREstring(struct soap *soap, struct __ns1__ps_USCOREstring *p, const char *tag, const char *type) { if ((p = soap_in___ns1__ps_USCOREstring(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__ps_USCOREstring * SOAP_FMAC4 soap_in___ns1__ps_USCOREstring(struct soap *soap, const char *tag, struct __ns1__ps_USCOREstring *a, const char *type) { short soap_flag_ns1__ps_USCOREstring = 1; short soap_flag; a = (struct __ns1__ps_USCOREstring *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__ps_USCOREstring, sizeof(struct __ns1__ps_USCOREstring), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__ps_USCOREstring(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__ps_USCOREstring && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__ps_USCOREstring(soap, "ns1:ps_string", &a->ns1__ps_USCOREstring, "")) { soap_flag_ns1__ps_USCOREstring--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__uploadByteArray1(struct soap *soap, struct __ns1__uploadByteArray1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__uploadByteArray1 = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__uploadByteArray1(struct soap *soap, const struct __ns1__uploadByteArray1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__uploadByteArray1(soap, &a->ns1__uploadByteArray1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__uploadByteArray1(struct soap *soap, const struct __ns1__uploadByteArray1 *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__uploadByteArray1(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__uploadByteArray1(struct soap *soap, const char *tag, int id, const struct __ns1__uploadByteArray1 *a, const char *type) { soap_out_PointerTo_ns1__uploadByteArray1(soap, "ns1:uploadByteArray1", -1, &a->ns1__uploadByteArray1, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__uploadByteArray1 * SOAP_FMAC4 soap_get___ns1__uploadByteArray1(struct soap *soap, struct __ns1__uploadByteArray1 *p, const char *tag, const char *type) { if ((p = soap_in___ns1__uploadByteArray1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__uploadByteArray1 * SOAP_FMAC4 soap_in___ns1__uploadByteArray1(struct soap *soap, const char *tag, struct __ns1__uploadByteArray1 *a, const char *type) { short soap_flag_ns1__uploadByteArray1 = 1; short soap_flag; a = (struct __ns1__uploadByteArray1 *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__uploadByteArray1, sizeof(struct __ns1__uploadByteArray1), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__uploadByteArray1(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__uploadByteArray1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__uploadByteArray1(soap, "ns1:uploadByteArray1", &a->ns1__uploadByteArray1, "")) { soap_flag_ns1__uploadByteArray1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getVersionsOfApplicationOnSite(struct soap *soap, struct __ns1__getVersionsOfApplicationOnSite *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getVersionsOfApplicationOnSite = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getVersionsOfApplicationOnSite(struct soap *soap, const struct __ns1__getVersionsOfApplicationOnSite *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getVersionsOfApplicationOnSite(soap, &a->ns1__getVersionsOfApplicationOnSite); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getVersionsOfApplicationOnSite(struct soap *soap, const struct __ns1__getVersionsOfApplicationOnSite *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getVersionsOfApplicationOnSite(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getVersionsOfApplicationOnSite(struct soap *soap, const char *tag, int id, const struct __ns1__getVersionsOfApplicationOnSite *a, const char *type) { soap_out_PointerTo_ns1__getVersionsOfApplicationOnSite(soap, "ns1:getVersionsOfApplicationOnSite", -1, &a->ns1__getVersionsOfApplicationOnSite, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getVersionsOfApplicationOnSite * SOAP_FMAC4 soap_get___ns1__getVersionsOfApplicationOnSite(struct soap *soap, struct __ns1__getVersionsOfApplicationOnSite *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getVersionsOfApplicationOnSite(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getVersionsOfApplicationOnSite * SOAP_FMAC4 soap_in___ns1__getVersionsOfApplicationOnSite(struct soap *soap, const char *tag, struct __ns1__getVersionsOfApplicationOnSite *a, const char *type) { short soap_flag_ns1__getVersionsOfApplicationOnSite = 1; short soap_flag; a = (struct __ns1__getVersionsOfApplicationOnSite *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getVersionsOfApplicationOnSite, sizeof(struct __ns1__getVersionsOfApplicationOnSite), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getVersionsOfApplicationOnSite(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getVersionsOfApplicationOnSite && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getVersionsOfApplicationOnSite(soap, "ns1:getVersionsOfApplicationOnSite", &a->ns1__getVersionsOfApplicationOnSite, "")) { soap_flag_ns1__getVersionsOfApplicationOnSite--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getAllSubmissionLocations1(struct soap *soap, struct __ns1__getAllSubmissionLocations1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getAllSubmissionLocations1 = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getAllSubmissionLocations1(struct soap *soap, const struct __ns1__getAllSubmissionLocations1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getAllSubmissionLocations1(soap, &a->ns1__getAllSubmissionLocations1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getAllSubmissionLocations1(struct soap *soap, const struct __ns1__getAllSubmissionLocations1 *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getAllSubmissionLocations1(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getAllSubmissionLocations1(struct soap *soap, const char *tag, int id, const struct __ns1__getAllSubmissionLocations1 *a, const char *type) { soap_out_PointerTo_ns1__getAllSubmissionLocations1(soap, "ns1:getAllSubmissionLocations1", -1, &a->ns1__getAllSubmissionLocations1, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getAllSubmissionLocations1 * SOAP_FMAC4 soap_get___ns1__getAllSubmissionLocations1(struct soap *soap, struct __ns1__getAllSubmissionLocations1 *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getAllSubmissionLocations1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getAllSubmissionLocations1 * SOAP_FMAC4 soap_in___ns1__getAllSubmissionLocations1(struct soap *soap, const char *tag, struct __ns1__getAllSubmissionLocations1 *a, const char *type) { short soap_flag_ns1__getAllSubmissionLocations1 = 1; short soap_flag; a = (struct __ns1__getAllSubmissionLocations1 *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getAllSubmissionLocations1, sizeof(struct __ns1__getAllSubmissionLocations1), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getAllSubmissionLocations1(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getAllSubmissionLocations1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getAllSubmissionLocations1(soap, "ns1:getAllSubmissionLocations1", &a->ns1__getAllSubmissionLocations1, "")) { soap_flag_ns1__getAllSubmissionLocations1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__createJob(struct soap *soap, struct __ns1__createJob *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__createJob = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__createJob(struct soap *soap, const struct __ns1__createJob *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__createJob(soap, &a->ns1__createJob); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__createJob(struct soap *soap, const struct __ns1__createJob *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__createJob(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__createJob(struct soap *soap, const char *tag, int id, const struct __ns1__createJob *a, const char *type) { soap_out_PointerTo_ns1__createJob(soap, "ns1:createJob", -1, &a->ns1__createJob, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__createJob * SOAP_FMAC4 soap_get___ns1__createJob(struct soap *soap, struct __ns1__createJob *p, const char *tag, const char *type) { if ((p = soap_in___ns1__createJob(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__createJob * SOAP_FMAC4 soap_in___ns1__createJob(struct soap *soap, const char *tag, struct __ns1__createJob *a, const char *type) { short soap_flag_ns1__createJob = 1; short soap_flag; a = (struct __ns1__createJob *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__createJob, sizeof(struct __ns1__createJob), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__createJob(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__createJob && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__createJob(soap, "ns1:createJob", &a->ns1__createJob, "")) { soap_flag_ns1__createJob--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getInterfaceVersion(struct soap *soap, struct __ns1__getInterfaceVersion *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getInterfaceVersion = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getInterfaceVersion(struct soap *soap, const struct __ns1__getInterfaceVersion *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getInterfaceVersion(soap, &a->ns1__getInterfaceVersion); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getInterfaceVersion(struct soap *soap, const struct __ns1__getInterfaceVersion *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getInterfaceVersion(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getInterfaceVersion(struct soap *soap, const char *tag, int id, const struct __ns1__getInterfaceVersion *a, const char *type) { soap_out_PointerTo_ns1__getInterfaceVersion(soap, "ns1:getInterfaceVersion", -1, &a->ns1__getInterfaceVersion, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getInterfaceVersion * SOAP_FMAC4 soap_get___ns1__getInterfaceVersion(struct soap *soap, struct __ns1__getInterfaceVersion *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getInterfaceVersion(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getInterfaceVersion * SOAP_FMAC4 soap_in___ns1__getInterfaceVersion(struct soap *soap, const char *tag, struct __ns1__getInterfaceVersion *a, const char *type) { short soap_flag_ns1__getInterfaceVersion = 1; short soap_flag; a = (struct __ns1__getInterfaceVersion *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getInterfaceVersion, sizeof(struct __ns1__getInterfaceVersion), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getInterfaceVersion(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getInterfaceVersion && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getInterfaceVersion(soap, "ns1:getInterfaceVersion", &a->ns1__getInterfaceVersion, "")) { soap_flag_ns1__getInterfaceVersion--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getAllSubmissionLocations(struct soap *soap, struct __ns1__getAllSubmissionLocations *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getAllSubmissionLocations = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getAllSubmissionLocations(struct soap *soap, const struct __ns1__getAllSubmissionLocations *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getAllSubmissionLocations(soap, &a->ns1__getAllSubmissionLocations); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getAllSubmissionLocations(struct soap *soap, const struct __ns1__getAllSubmissionLocations *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getAllSubmissionLocations(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getAllSubmissionLocations(struct soap *soap, const char *tag, int id, const struct __ns1__getAllSubmissionLocations *a, const char *type) { soap_out_PointerTo_ns1__getAllSubmissionLocations(soap, "ns1:getAllSubmissionLocations", -1, &a->ns1__getAllSubmissionLocations, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getAllSubmissionLocations * SOAP_FMAC4 soap_get___ns1__getAllSubmissionLocations(struct soap *soap, struct __ns1__getAllSubmissionLocations *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getAllSubmissionLocations(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getAllSubmissionLocations * SOAP_FMAC4 soap_in___ns1__getAllSubmissionLocations(struct soap *soap, const char *tag, struct __ns1__getAllSubmissionLocations *a, const char *type) { short soap_flag_ns1__getAllSubmissionLocations = 1; short soap_flag; a = (struct __ns1__getAllSubmissionLocations *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getAllSubmissionLocations, sizeof(struct __ns1__getAllSubmissionLocations), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getAllSubmissionLocations(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getAllSubmissionLocations && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getAllSubmissionLocations(soap, "ns1:getAllSubmissionLocations", &a->ns1__getAllSubmissionLocations, "")) { soap_flag_ns1__getAllSubmissionLocations--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addJobProperty(struct soap *soap, struct __ns1__addJobProperty *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__addJobProperty = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addJobProperty(struct soap *soap, const struct __ns1__addJobProperty *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__addJobProperty(soap, &a->ns1__addJobProperty); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addJobProperty(struct soap *soap, const struct __ns1__addJobProperty *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__addJobProperty(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addJobProperty(struct soap *soap, const char *tag, int id, const struct __ns1__addJobProperty *a, const char *type) { soap_out_PointerTo_ns1__addJobProperty(soap, "ns1:addJobProperty", -1, &a->ns1__addJobProperty, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__addJobProperty * SOAP_FMAC4 soap_get___ns1__addJobProperty(struct soap *soap, struct __ns1__addJobProperty *p, const char *tag, const char *type) { if ((p = soap_in___ns1__addJobProperty(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__addJobProperty * SOAP_FMAC4 soap_in___ns1__addJobProperty(struct soap *soap, const char *tag, struct __ns1__addJobProperty *a, const char *type) { short soap_flag_ns1__addJobProperty = 1; short soap_flag; a = (struct __ns1__addJobProperty *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addJobProperty, sizeof(struct __ns1__addJobProperty), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__addJobProperty(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__addJobProperty && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__addJobProperty(soap, "ns1:addJobProperty", &a->ns1__addJobProperty, "")) { soap_flag_ns1__addJobProperty--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addJobProperties(struct soap *soap, struct __ns1__addJobProperties *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__addJobProperties = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addJobProperties(struct soap *soap, const struct __ns1__addJobProperties *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__addJobProperties(soap, &a->ns1__addJobProperties); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addJobProperties(struct soap *soap, const struct __ns1__addJobProperties *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__addJobProperties(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addJobProperties(struct soap *soap, const char *tag, int id, const struct __ns1__addJobProperties *a, const char *type) { soap_out_PointerTo_ns1__addJobProperties(soap, "ns1:addJobProperties", -1, &a->ns1__addJobProperties, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__addJobProperties * SOAP_FMAC4 soap_get___ns1__addJobProperties(struct soap *soap, struct __ns1__addJobProperties *p, const char *tag, const char *type) { if ((p = soap_in___ns1__addJobProperties(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__addJobProperties * SOAP_FMAC4 soap_in___ns1__addJobProperties(struct soap *soap, const char *tag, struct __ns1__addJobProperties *a, const char *type) { short soap_flag_ns1__addJobProperties = 1; short soap_flag; a = (struct __ns1__addJobProperties *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addJobProperties, sizeof(struct __ns1__addJobProperties), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__addJobProperties(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__addJobProperties && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__addJobProperties(soap, "ns1:addJobProperties", &a->ns1__addJobProperties, "")) { soap_flag_ns1__addJobProperties--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getAllAvailableApplications(struct soap *soap, struct __ns1__getAllAvailableApplications *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getAllAvailableApplications = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getAllAvailableApplications(struct soap *soap, const struct __ns1__getAllAvailableApplications *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getAllAvailableApplications(soap, &a->ns1__getAllAvailableApplications); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getAllAvailableApplications(struct soap *soap, const struct __ns1__getAllAvailableApplications *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getAllAvailableApplications(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getAllAvailableApplications(struct soap *soap, const char *tag, int id, const struct __ns1__getAllAvailableApplications *a, const char *type) { soap_out_PointerTo_ns1__getAllAvailableApplications(soap, "ns1:getAllAvailableApplications", -1, &a->ns1__getAllAvailableApplications, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getAllAvailableApplications * SOAP_FMAC4 soap_get___ns1__getAllAvailableApplications(struct soap *soap, struct __ns1__getAllAvailableApplications *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getAllAvailableApplications(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getAllAvailableApplications * SOAP_FMAC4 soap_in___ns1__getAllAvailableApplications(struct soap *soap, const char *tag, struct __ns1__getAllAvailableApplications *a, const char *type) { short soap_flag_ns1__getAllAvailableApplications = 1; short soap_flag; a = (struct __ns1__getAllAvailableApplications *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getAllAvailableApplications, sizeof(struct __ns1__getAllAvailableApplications), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getAllAvailableApplications(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getAllAvailableApplications && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getAllAvailableApplications(soap, "ns1:getAllAvailableApplications", &a->ns1__getAllAvailableApplications, "")) { soap_flag_ns1__getAllAvailableApplications--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__kill(struct soap *soap, struct __ns1__kill *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__kill = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__kill(struct soap *soap, const struct __ns1__kill *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__kill(soap, &a->ns1__kill); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__kill(struct soap *soap, const struct __ns1__kill *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__kill(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__kill(struct soap *soap, const char *tag, int id, const struct __ns1__kill *a, const char *type) { soap_out_PointerTo_ns1__kill(soap, "ns1:kill", -1, &a->ns1__kill, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__kill * SOAP_FMAC4 soap_get___ns1__kill(struct soap *soap, struct __ns1__kill *p, const char *tag, const char *type) { if ((p = soap_in___ns1__kill(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__kill * SOAP_FMAC4 soap_in___ns1__kill(struct soap *soap, const char *tag, struct __ns1__kill *a, const char *type) { short soap_flag_ns1__kill = 1; short soap_flag; a = (struct __ns1__kill *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__kill, sizeof(struct __ns1__kill), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__kill(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__kill && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__kill(soap, "ns1:kill", &a->ns1__kill, "")) { soap_flag_ns1__kill--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__isFolder(struct soap *soap, struct __ns1__isFolder *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__isFolder = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__isFolder(struct soap *soap, const struct __ns1__isFolder *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__isFolder(soap, &a->ns1__isFolder); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__isFolder(struct soap *soap, const struct __ns1__isFolder *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__isFolder(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__isFolder(struct soap *soap, const char *tag, int id, const struct __ns1__isFolder *a, const char *type) { soap_out_PointerTo_ns1__isFolder(soap, "ns1:isFolder", -1, &a->ns1__isFolder, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__isFolder * SOAP_FMAC4 soap_get___ns1__isFolder(struct soap *soap, struct __ns1__isFolder *p, const char *tag, const char *type) { if ((p = soap_in___ns1__isFolder(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__isFolder * SOAP_FMAC4 soap_in___ns1__isFolder(struct soap *soap, const char *tag, struct __ns1__isFolder *a, const char *type) { short soap_flag_ns1__isFolder = 1; short soap_flag; a = (struct __ns1__isFolder *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__isFolder, sizeof(struct __ns1__isFolder), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__isFolder(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__isFolder && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__isFolder(soap, "ns1:isFolder", &a->ns1__isFolder, "")) { soap_flag_ns1__isFolder--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__download(struct soap *soap, struct __ns1__download *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__download = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__download(struct soap *soap, const struct __ns1__download *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__download(soap, &a->ns1__download); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__download(struct soap *soap, const struct __ns1__download *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__download(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__download(struct soap *soap, const char *tag, int id, const struct __ns1__download *a, const char *type) { soap_out_PointerTo_ns1__download(soap, "ns1:download", -1, &a->ns1__download, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__download * SOAP_FMAC4 soap_get___ns1__download(struct soap *soap, struct __ns1__download *p, const char *tag, const char *type) { if ((p = soap_in___ns1__download(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__download * SOAP_FMAC4 soap_in___ns1__download(struct soap *soap, const char *tag, struct __ns1__download *a, const char *type) { short soap_flag_ns1__download = 1; short soap_flag; a = (struct __ns1__download *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__download, sizeof(struct __ns1__download), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__download(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__download && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__download(soap, "ns1:download", &a->ns1__download, "")) { soap_flag_ns1__download--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getAllJobProperties(struct soap *soap, struct __ns1__getAllJobProperties *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getAllJobProperties = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getAllJobProperties(struct soap *soap, const struct __ns1__getAllJobProperties *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getAllJobProperties(soap, &a->ns1__getAllJobProperties); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getAllJobProperties(struct soap *soap, const struct __ns1__getAllJobProperties *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getAllJobProperties(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getAllJobProperties(struct soap *soap, const char *tag, int id, const struct __ns1__getAllJobProperties *a, const char *type) { soap_out_PointerTo_ns1__getAllJobProperties(soap, "ns1:getAllJobProperties", -1, &a->ns1__getAllJobProperties, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getAllJobProperties * SOAP_FMAC4 soap_get___ns1__getAllJobProperties(struct soap *soap, struct __ns1__getAllJobProperties *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getAllJobProperties(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getAllJobProperties * SOAP_FMAC4 soap_in___ns1__getAllJobProperties(struct soap *soap, const char *tag, struct __ns1__getAllJobProperties *a, const char *type) { short soap_flag_ns1__getAllJobProperties = 1; short soap_flag; a = (struct __ns1__getAllJobProperties *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getAllJobProperties, sizeof(struct __ns1__getAllJobProperties), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getAllJobProperties(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getAllJobProperties && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getAllJobProperties(soap, "ns1:getAllJobProperties", &a->ns1__getAllJobProperties, "")) { soap_flag_ns1__getAllJobProperties--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getAllJobnames(struct soap *soap, struct __ns1__getAllJobnames *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getAllJobnames = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getAllJobnames(struct soap *soap, const struct __ns1__getAllJobnames *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getAllJobnames(soap, &a->ns1__getAllJobnames); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getAllJobnames(struct soap *soap, const struct __ns1__getAllJobnames *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getAllJobnames(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getAllJobnames(struct soap *soap, const char *tag, int id, const struct __ns1__getAllJobnames *a, const char *type) { soap_out_PointerTo_ns1__getAllJobnames(soap, "ns1:getAllJobnames", -1, &a->ns1__getAllJobnames, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getAllJobnames * SOAP_FMAC4 soap_get___ns1__getAllJobnames(struct soap *soap, struct __ns1__getAllJobnames *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getAllJobnames(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getAllJobnames * SOAP_FMAC4 soap_in___ns1__getAllJobnames(struct soap *soap, const char *tag, struct __ns1__getAllJobnames *a, const char *type) { short soap_flag_ns1__getAllJobnames = 1; short soap_flag; a = (struct __ns1__getAllJobnames *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getAllJobnames, sizeof(struct __ns1__getAllJobnames), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getAllJobnames(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getAllJobnames && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getAllJobnames(soap, "ns1:getAllJobnames", &a->ns1__getAllJobnames, "")) { soap_flag_ns1__getAllJobnames--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getDN(struct soap *soap, struct __ns1__getDN *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getDN = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getDN(struct soap *soap, const struct __ns1__getDN *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getDN(soap, &a->ns1__getDN); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getDN(struct soap *soap, const struct __ns1__getDN *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getDN(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getDN(struct soap *soap, const char *tag, int id, const struct __ns1__getDN *a, const char *type) { soap_out_PointerTo_ns1__getDN(soap, "ns1:getDN", -1, &a->ns1__getDN, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getDN * SOAP_FMAC4 soap_get___ns1__getDN(struct soap *soap, struct __ns1__getDN *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getDN(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getDN * SOAP_FMAC4 soap_in___ns1__getDN(struct soap *soap, const char *tag, struct __ns1__getDN *a, const char *type) { short soap_flag_ns1__getDN = 1; short soap_flag; a = (struct __ns1__getDN *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getDN, sizeof(struct __ns1__getDN), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getDN(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getDN && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getDN(soap, "ns1:getDN", &a->ns1__getDN, "")) { soap_flag_ns1__getDN--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getSubmissionLocationsForApplication(struct soap *soap, struct __ns1__getSubmissionLocationsForApplication *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getSubmissionLocationsForApplication = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getSubmissionLocationsForApplication(struct soap *soap, const struct __ns1__getSubmissionLocationsForApplication *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getSubmissionLocationsForApplication(soap, &a->ns1__getSubmissionLocationsForApplication); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getSubmissionLocationsForApplication(struct soap *soap, const struct __ns1__getSubmissionLocationsForApplication *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getSubmissionLocationsForApplication(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getSubmissionLocationsForApplication(struct soap *soap, const char *tag, int id, const struct __ns1__getSubmissionLocationsForApplication *a, const char *type) { soap_out_PointerTo_ns1__getSubmissionLocationsForApplication(soap, "ns1:getSubmissionLocationsForApplication", -1, &a->ns1__getSubmissionLocationsForApplication, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getSubmissionLocationsForApplication * SOAP_FMAC4 soap_get___ns1__getSubmissionLocationsForApplication(struct soap *soap, struct __ns1__getSubmissionLocationsForApplication *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getSubmissionLocationsForApplication(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getSubmissionLocationsForApplication * SOAP_FMAC4 soap_in___ns1__getSubmissionLocationsForApplication(struct soap *soap, const char *tag, struct __ns1__getSubmissionLocationsForApplication *a, const char *type) { short soap_flag_ns1__getSubmissionLocationsForApplication = 1; short soap_flag; a = (struct __ns1__getSubmissionLocationsForApplication *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getSubmissionLocationsForApplication, sizeof(struct __ns1__getSubmissionLocationsForApplication), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getSubmissionLocationsForApplication(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getSubmissionLocationsForApplication && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getSubmissionLocationsForApplication(soap, "ns1:getSubmissionLocationsForApplication", &a->ns1__getSubmissionLocationsForApplication, "")) { soap_flag_ns1__getSubmissionLocationsForApplication--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__createJob1(struct soap *soap, struct __ns1__createJob1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__createJob1 = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__createJob1(struct soap *soap, const struct __ns1__createJob1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__createJob1(soap, &a->ns1__createJob1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__createJob1(struct soap *soap, const struct __ns1__createJob1 *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__createJob1(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__createJob1(struct soap *soap, const char *tag, int id, const struct __ns1__createJob1 *a, const char *type) { soap_out_PointerTo_ns1__createJob1(soap, "ns1:createJob1", -1, &a->ns1__createJob1, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__createJob1 * SOAP_FMAC4 soap_get___ns1__createJob1(struct soap *soap, struct __ns1__createJob1 *p, const char *tag, const char *type) { if ((p = soap_in___ns1__createJob1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__createJob1 * SOAP_FMAC4 soap_in___ns1__createJob1(struct soap *soap, const char *tag, struct __ns1__createJob1 *a, const char *type) { short soap_flag_ns1__createJob1 = 1; short soap_flag; a = (struct __ns1__createJob1 *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__createJob1, sizeof(struct __ns1__createJob1), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__createJob1(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__createJob1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__createJob1(soap, "ns1:createJob1", &a->ns1__createJob1, "")) { soap_flag_ns1__createJob1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getApplicationDetails(struct soap *soap, struct __ns1__getApplicationDetails *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getApplicationDetails = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getApplicationDetails(struct soap *soap, const struct __ns1__getApplicationDetails *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getApplicationDetails(soap, &a->ns1__getApplicationDetails); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getApplicationDetails(struct soap *soap, const struct __ns1__getApplicationDetails *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getApplicationDetails(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getApplicationDetails(struct soap *soap, const char *tag, int id, const struct __ns1__getApplicationDetails *a, const char *type) { soap_out_PointerTo_ns1__getApplicationDetails(soap, "ns1:getApplicationDetails", -1, &a->ns1__getApplicationDetails, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getApplicationDetails * SOAP_FMAC4 soap_get___ns1__getApplicationDetails(struct soap *soap, struct __ns1__getApplicationDetails *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getApplicationDetails(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getApplicationDetails * SOAP_FMAC4 soap_in___ns1__getApplicationDetails(struct soap *soap, const char *tag, struct __ns1__getApplicationDetails *a, const char *type) { short soap_flag_ns1__getApplicationDetails = 1; short soap_flag; a = (struct __ns1__getApplicationDetails *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getApplicationDetails, sizeof(struct __ns1__getApplicationDetails), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getApplicationDetails(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getApplicationDetails && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getApplicationDetails(soap, "ns1:getApplicationDetails", &a->ns1__getApplicationDetails, "")) { soap_flag_ns1__getApplicationDetails--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getSubmissionLocationsForApplication1(struct soap *soap, struct __ns1__getSubmissionLocationsForApplication1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getSubmissionLocationsForApplication1 = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getSubmissionLocationsForApplication1(struct soap *soap, const struct __ns1__getSubmissionLocationsForApplication1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getSubmissionLocationsForApplication1(soap, &a->ns1__getSubmissionLocationsForApplication1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getSubmissionLocationsForApplication1(struct soap *soap, const struct __ns1__getSubmissionLocationsForApplication1 *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getSubmissionLocationsForApplication1(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getSubmissionLocationsForApplication1(struct soap *soap, const char *tag, int id, const struct __ns1__getSubmissionLocationsForApplication1 *a, const char *type) { soap_out_PointerTo_ns1__getSubmissionLocationsForApplication1(soap, "ns1:getSubmissionLocationsForApplication1", -1, &a->ns1__getSubmissionLocationsForApplication1, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getSubmissionLocationsForApplication1 * SOAP_FMAC4 soap_get___ns1__getSubmissionLocationsForApplication1(struct soap *soap, struct __ns1__getSubmissionLocationsForApplication1 *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getSubmissionLocationsForApplication1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getSubmissionLocationsForApplication1 * SOAP_FMAC4 soap_in___ns1__getSubmissionLocationsForApplication1(struct soap *soap, const char *tag, struct __ns1__getSubmissionLocationsForApplication1 *a, const char *type) { short soap_flag_ns1__getSubmissionLocationsForApplication1 = 1; short soap_flag; a = (struct __ns1__getSubmissionLocationsForApplication1 *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getSubmissionLocationsForApplication1, sizeof(struct __ns1__getSubmissionLocationsForApplication1), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getSubmissionLocationsForApplication1(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getSubmissionLocationsForApplication1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getSubmissionLocationsForApplication1(soap, "ns1:getSubmissionLocationsForApplication1", &a->ns1__getSubmissionLocationsForApplication1, "")) { soap_flag_ns1__getSubmissionLocationsForApplication1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__ls_USCOREstring(struct soap *soap, struct __ns1__ls_USCOREstring *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__ls_USCOREstring = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__ls_USCOREstring(struct soap *soap, const struct __ns1__ls_USCOREstring *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__ls_USCOREstring(soap, &a->ns1__ls_USCOREstring); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__ls_USCOREstring(struct soap *soap, const struct __ns1__ls_USCOREstring *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__ls_USCOREstring(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__ls_USCOREstring(struct soap *soap, const char *tag, int id, const struct __ns1__ls_USCOREstring *a, const char *type) { soap_out_PointerTo_ns1__ls_USCOREstring(soap, "ns1:ls_string", -1, &a->ns1__ls_USCOREstring, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__ls_USCOREstring * SOAP_FMAC4 soap_get___ns1__ls_USCOREstring(struct soap *soap, struct __ns1__ls_USCOREstring *p, const char *tag, const char *type) { if ((p = soap_in___ns1__ls_USCOREstring(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__ls_USCOREstring * SOAP_FMAC4 soap_in___ns1__ls_USCOREstring(struct soap *soap, const char *tag, struct __ns1__ls_USCOREstring *a, const char *type) { short soap_flag_ns1__ls_USCOREstring = 1; short soap_flag; a = (struct __ns1__ls_USCOREstring *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__ls_USCOREstring, sizeof(struct __ns1__ls_USCOREstring), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__ls_USCOREstring(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__ls_USCOREstring && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__ls_USCOREstring(soap, "ns1:ls_string", &a->ns1__ls_USCOREstring, "")) { soap_flag_ns1__ls_USCOREstring--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__calculateAbsoluteJobDirectory(struct soap *soap, struct __ns1__calculateAbsoluteJobDirectory *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__calculateAbsoluteJobDirectory = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__calculateAbsoluteJobDirectory(struct soap *soap, const struct __ns1__calculateAbsoluteJobDirectory *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__calculateAbsoluteJobDirectory(soap, &a->ns1__calculateAbsoluteJobDirectory); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__calculateAbsoluteJobDirectory(struct soap *soap, const struct __ns1__calculateAbsoluteJobDirectory *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__calculateAbsoluteJobDirectory(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__calculateAbsoluteJobDirectory(struct soap *soap, const char *tag, int id, const struct __ns1__calculateAbsoluteJobDirectory *a, const char *type) { soap_out_PointerTo_ns1__calculateAbsoluteJobDirectory(soap, "ns1:calculateAbsoluteJobDirectory", -1, &a->ns1__calculateAbsoluteJobDirectory, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__calculateAbsoluteJobDirectory * SOAP_FMAC4 soap_get___ns1__calculateAbsoluteJobDirectory(struct soap *soap, struct __ns1__calculateAbsoluteJobDirectory *p, const char *tag, const char *type) { if ((p = soap_in___ns1__calculateAbsoluteJobDirectory(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__calculateAbsoluteJobDirectory * SOAP_FMAC4 soap_in___ns1__calculateAbsoluteJobDirectory(struct soap *soap, const char *tag, struct __ns1__calculateAbsoluteJobDirectory *a, const char *type) { short soap_flag_ns1__calculateAbsoluteJobDirectory = 1; short soap_flag; a = (struct __ns1__calculateAbsoluteJobDirectory *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__calculateAbsoluteJobDirectory, sizeof(struct __ns1__calculateAbsoluteJobDirectory), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__calculateAbsoluteJobDirectory(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__calculateAbsoluteJobDirectory && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__calculateAbsoluteJobDirectory(soap, "ns1:calculateAbsoluteJobDirectory", &a->ns1__calculateAbsoluteJobDirectory, "")) { soap_flag_ns1__calculateAbsoluteJobDirectory--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getMessagesSince(struct soap *soap, struct __ns1__getMessagesSince *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getMessagesSince = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getMessagesSince(struct soap *soap, const struct __ns1__getMessagesSince *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getMessagesSince(soap, &a->ns1__getMessagesSince); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getMessagesSince(struct soap *soap, const struct __ns1__getMessagesSince *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getMessagesSince(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getMessagesSince(struct soap *soap, const char *tag, int id, const struct __ns1__getMessagesSince *a, const char *type) { soap_out_PointerTo_ns1__getMessagesSince(soap, "ns1:getMessagesSince", -1, &a->ns1__getMessagesSince, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getMessagesSince * SOAP_FMAC4 soap_get___ns1__getMessagesSince(struct soap *soap, struct __ns1__getMessagesSince *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getMessagesSince(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getMessagesSince * SOAP_FMAC4 soap_in___ns1__getMessagesSince(struct soap *soap, const char *tag, struct __ns1__getMessagesSince *a, const char *type) { short soap_flag_ns1__getMessagesSince = 1; short soap_flag; a = (struct __ns1__getMessagesSince *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getMessagesSince, sizeof(struct __ns1__getMessagesSince), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getMessagesSince(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getMessagesSince && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getMessagesSince(soap, "ns1:getMessagesSince", &a->ns1__getMessagesSince, "")) { soap_flag_ns1__getMessagesSince--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteFiles(struct soap *soap, struct __ns1__deleteFiles *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__deleteFiles = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteFiles(struct soap *soap, const struct __ns1__deleteFiles *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__deleteFiles(soap, &a->ns1__deleteFiles); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteFiles(struct soap *soap, const struct __ns1__deleteFiles *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__deleteFiles(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteFiles(struct soap *soap, const char *tag, int id, const struct __ns1__deleteFiles *a, const char *type) { soap_out_PointerTo_ns1__deleteFiles(soap, "ns1:deleteFiles", -1, &a->ns1__deleteFiles, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__deleteFiles * SOAP_FMAC4 soap_get___ns1__deleteFiles(struct soap *soap, struct __ns1__deleteFiles *p, const char *tag, const char *type) { if ((p = soap_in___ns1__deleteFiles(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__deleteFiles * SOAP_FMAC4 soap_in___ns1__deleteFiles(struct soap *soap, const char *tag, struct __ns1__deleteFiles *a, const char *type) { short soap_flag_ns1__deleteFiles = 1; short soap_flag; a = (struct __ns1__deleteFiles *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteFiles, sizeof(struct __ns1__deleteFiles), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__deleteFiles(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__deleteFiles && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__deleteFiles(soap, "ns1:deleteFiles", &a->ns1__deleteFiles, "")) { soap_flag_ns1__deleteFiles--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listHostedApplicationTemplates(struct soap *soap, struct __ns1__listHostedApplicationTemplates *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__listHostedApplicationTemplates = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listHostedApplicationTemplates(struct soap *soap, const struct __ns1__listHostedApplicationTemplates *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__listHostedApplicationTemplates(soap, &a->ns1__listHostedApplicationTemplates); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listHostedApplicationTemplates(struct soap *soap, const struct __ns1__listHostedApplicationTemplates *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__listHostedApplicationTemplates(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listHostedApplicationTemplates(struct soap *soap, const char *tag, int id, const struct __ns1__listHostedApplicationTemplates *a, const char *type) { soap_out_PointerTo_ns1__listHostedApplicationTemplates(soap, "ns1:listHostedApplicationTemplates", -1, &a->ns1__listHostedApplicationTemplates, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__listHostedApplicationTemplates * SOAP_FMAC4 soap_get___ns1__listHostedApplicationTemplates(struct soap *soap, struct __ns1__listHostedApplicationTemplates *p, const char *tag, const char *type) { if ((p = soap_in___ns1__listHostedApplicationTemplates(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__listHostedApplicationTemplates * SOAP_FMAC4 soap_in___ns1__listHostedApplicationTemplates(struct soap *soap, const char *tag, struct __ns1__listHostedApplicationTemplates *a, const char *type) { short soap_flag_ns1__listHostedApplicationTemplates = 1; short soap_flag; a = (struct __ns1__listHostedApplicationTemplates *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listHostedApplicationTemplates, sizeof(struct __ns1__listHostedApplicationTemplates), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__listHostedApplicationTemplates(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__listHostedApplicationTemplates && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__listHostedApplicationTemplates(soap, "ns1:listHostedApplicationTemplates", &a->ns1__listHostedApplicationTemplates, "")) { soap_flag_ns1__listHostedApplicationTemplates--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__downloadByteArray1(struct soap *soap, struct __ns1__downloadByteArray1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__downloadByteArray1 = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__downloadByteArray1(struct soap *soap, const struct __ns1__downloadByteArray1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__downloadByteArray1(soap, &a->ns1__downloadByteArray1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__downloadByteArray1(struct soap *soap, const struct __ns1__downloadByteArray1 *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__downloadByteArray1(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__downloadByteArray1(struct soap *soap, const char *tag, int id, const struct __ns1__downloadByteArray1 *a, const char *type) { soap_out_PointerTo_ns1__downloadByteArray1(soap, "ns1:downloadByteArray1", -1, &a->ns1__downloadByteArray1, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__downloadByteArray1 * SOAP_FMAC4 soap_get___ns1__downloadByteArray1(struct soap *soap, struct __ns1__downloadByteArray1 *p, const char *tag, const char *type) { if ((p = soap_in___ns1__downloadByteArray1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__downloadByteArray1 * SOAP_FMAC4 soap_in___ns1__downloadByteArray1(struct soap *soap, const char *tag, struct __ns1__downloadByteArray1 *a, const char *type) { short soap_flag_ns1__downloadByteArray1 = 1; short soap_flag; a = (struct __ns1__downloadByteArray1 *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__downloadByteArray1, sizeof(struct __ns1__downloadByteArray1), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__downloadByteArray1(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__downloadByteArray1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__downloadByteArray1(soap, "ns1:downloadByteArray1", &a->ns1__downloadByteArray1, "")) { soap_flag_ns1__downloadByteArray1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getTemplate1(struct soap *soap, struct __ns1__getTemplate1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getTemplate1 = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getTemplate1(struct soap *soap, const struct __ns1__getTemplate1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getTemplate1(soap, &a->ns1__getTemplate1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getTemplate1(struct soap *soap, const struct __ns1__getTemplate1 *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getTemplate1(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getTemplate1(struct soap *soap, const char *tag, int id, const struct __ns1__getTemplate1 *a, const char *type) { soap_out_PointerTo_ns1__getTemplate1(soap, "ns1:getTemplate1", -1, &a->ns1__getTemplate1, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getTemplate1 * SOAP_FMAC4 soap_get___ns1__getTemplate1(struct soap *soap, struct __ns1__getTemplate1 *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getTemplate1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getTemplate1 * SOAP_FMAC4 soap_in___ns1__getTemplate1(struct soap *soap, const char *tag, struct __ns1__getTemplate1 *a, const char *type) { short soap_flag_ns1__getTemplate1 = 1; short soap_flag; a = (struct __ns1__getTemplate1 *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getTemplate1, sizeof(struct __ns1__getTemplate1), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getTemplate1(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getTemplate1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getTemplate1(soap, "ns1:getTemplate1", &a->ns1__getTemplate1, "")) { soap_flag_ns1__getTemplate1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, struct __ns1__getSubmissionLocationsPerVersionOfApplication *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getSubmissionLocationsPerVersionOfApplication = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, const struct __ns1__getSubmissionLocationsPerVersionOfApplication *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication(soap, &a->ns1__getSubmissionLocationsPerVersionOfApplication); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, const struct __ns1__getSubmissionLocationsPerVersionOfApplication *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getSubmissionLocationsPerVersionOfApplication(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, const char *tag, int id, const struct __ns1__getSubmissionLocationsPerVersionOfApplication *a, const char *type) { soap_out_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication(soap, "ns1:getSubmissionLocationsPerVersionOfApplication", -1, &a->ns1__getSubmissionLocationsPerVersionOfApplication, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getSubmissionLocationsPerVersionOfApplication * SOAP_FMAC4 soap_get___ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, struct __ns1__getSubmissionLocationsPerVersionOfApplication *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getSubmissionLocationsPerVersionOfApplication(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getSubmissionLocationsPerVersionOfApplication * SOAP_FMAC4 soap_in___ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, const char *tag, struct __ns1__getSubmissionLocationsPerVersionOfApplication *a, const char *type) { short soap_flag_ns1__getSubmissionLocationsPerVersionOfApplication = 1; short soap_flag; a = (struct __ns1__getSubmissionLocationsPerVersionOfApplication *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getSubmissionLocationsPerVersionOfApplication, sizeof(struct __ns1__getSubmissionLocationsPerVersionOfApplication), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getSubmissionLocationsPerVersionOfApplication(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getSubmissionLocationsPerVersionOfApplication && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication(soap, "ns1:getSubmissionLocationsPerVersionOfApplication", &a->ns1__getSubmissionLocationsPerVersionOfApplication, "")) { soap_flag_ns1__getSubmissionLocationsPerVersionOfApplication--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getDataLocationsForVO(struct soap *soap, struct __ns1__getDataLocationsForVO *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getDataLocationsForVO = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getDataLocationsForVO(struct soap *soap, const struct __ns1__getDataLocationsForVO *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getDataLocationsForVO(soap, &a->ns1__getDataLocationsForVO); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getDataLocationsForVO(struct soap *soap, const struct __ns1__getDataLocationsForVO *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getDataLocationsForVO(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getDataLocationsForVO(struct soap *soap, const char *tag, int id, const struct __ns1__getDataLocationsForVO *a, const char *type) { soap_out_PointerTo_ns1__getDataLocationsForVO(soap, "ns1:getDataLocationsForVO", -1, &a->ns1__getDataLocationsForVO, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getDataLocationsForVO * SOAP_FMAC4 soap_get___ns1__getDataLocationsForVO(struct soap *soap, struct __ns1__getDataLocationsForVO *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getDataLocationsForVO(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getDataLocationsForVO * SOAP_FMAC4 soap_in___ns1__getDataLocationsForVO(struct soap *soap, const char *tag, struct __ns1__getDataLocationsForVO *a, const char *type) { short soap_flag_ns1__getDataLocationsForVO = 1; short soap_flag; a = (struct __ns1__getDataLocationsForVO *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getDataLocationsForVO, sizeof(struct __ns1__getDataLocationsForVO), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getDataLocationsForVO(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getDataLocationsForVO && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getDataLocationsForVO(soap, "ns1:getDataLocationsForVO", &a->ns1__getDataLocationsForVO, "")) { soap_flag_ns1__getDataLocationsForVO--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__mkdir(struct soap *soap, struct __ns1__mkdir *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__mkdir = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__mkdir(struct soap *soap, const struct __ns1__mkdir *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__mkdir(soap, &a->ns1__mkdir); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__mkdir(struct soap *soap, const struct __ns1__mkdir *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__mkdir(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__mkdir(struct soap *soap, const char *tag, int id, const struct __ns1__mkdir *a, const char *type) { soap_out_PointerTo_ns1__mkdir(soap, "ns1:mkdir", -1, &a->ns1__mkdir, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__mkdir * SOAP_FMAC4 soap_get___ns1__mkdir(struct soap *soap, struct __ns1__mkdir *p, const char *tag, const char *type) { if ((p = soap_in___ns1__mkdir(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__mkdir * SOAP_FMAC4 soap_in___ns1__mkdir(struct soap *soap, const char *tag, struct __ns1__mkdir *a, const char *type) { short soap_flag_ns1__mkdir = 1; short soap_flag; a = (struct __ns1__mkdir *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__mkdir, sizeof(struct __ns1__mkdir), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__mkdir(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__mkdir && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__mkdir(soap, "ns1:mkdir", &a->ns1__mkdir, "")) { soap_flag_ns1__mkdir--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getUserProperty(struct soap *soap, struct __ns1__getUserProperty *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getUserProperty = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getUserProperty(struct soap *soap, const struct __ns1__getUserProperty *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getUserProperty(soap, &a->ns1__getUserProperty); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getUserProperty(struct soap *soap, const struct __ns1__getUserProperty *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getUserProperty(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getUserProperty(struct soap *soap, const char *tag, int id, const struct __ns1__getUserProperty *a, const char *type) { soap_out_PointerTo_ns1__getUserProperty(soap, "ns1:getUserProperty", -1, &a->ns1__getUserProperty, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getUserProperty * SOAP_FMAC4 soap_get___ns1__getUserProperty(struct soap *soap, struct __ns1__getUserProperty *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getUserProperty(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getUserProperty * SOAP_FMAC4 soap_in___ns1__getUserProperty(struct soap *soap, const char *tag, struct __ns1__getUserProperty *a, const char *type) { short soap_flag_ns1__getUserProperty = 1; short soap_flag; a = (struct __ns1__getUserProperty *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getUserProperty, sizeof(struct __ns1__getUserProperty), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getUserProperty(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getUserProperty && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getUserProperty(soap, "ns1:getUserProperty", &a->ns1__getUserProperty, "")) { soap_flag_ns1__getUserProperty--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, struct __ns1__getStagingFileSystemForSubmissionLocation *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getStagingFileSystemForSubmissionLocation = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, const struct __ns1__getStagingFileSystemForSubmissionLocation *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getStagingFileSystemForSubmissionLocation(soap, &a->ns1__getStagingFileSystemForSubmissionLocation); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, const struct __ns1__getStagingFileSystemForSubmissionLocation *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getStagingFileSystemForSubmissionLocation(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, const char *tag, int id, const struct __ns1__getStagingFileSystemForSubmissionLocation *a, const char *type) { soap_out_PointerTo_ns1__getStagingFileSystemForSubmissionLocation(soap, "ns1:getStagingFileSystemForSubmissionLocation", -1, &a->ns1__getStagingFileSystemForSubmissionLocation, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getStagingFileSystemForSubmissionLocation * SOAP_FMAC4 soap_get___ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, struct __ns1__getStagingFileSystemForSubmissionLocation *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getStagingFileSystemForSubmissionLocation(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getStagingFileSystemForSubmissionLocation * SOAP_FMAC4 soap_in___ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, const char *tag, struct __ns1__getStagingFileSystemForSubmissionLocation *a, const char *type) { short soap_flag_ns1__getStagingFileSystemForSubmissionLocation = 1; short soap_flag; a = (struct __ns1__getStagingFileSystemForSubmissionLocation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getStagingFileSystemForSubmissionLocation, sizeof(struct __ns1__getStagingFileSystemForSubmissionLocation), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getStagingFileSystemForSubmissionLocation(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getStagingFileSystemForSubmissionLocation && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getStagingFileSystemForSubmissionLocation(soap, "ns1:getStagingFileSystemForSubmissionLocation", &a->ns1__getStagingFileSystemForSubmissionLocation, "")) { soap_flag_ns1__getStagingFileSystemForSubmissionLocation--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__ps(struct soap *soap, struct __ns1__ps *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__ps = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__ps(struct soap *soap, const struct __ns1__ps *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__ps(soap, &a->ns1__ps); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__ps(struct soap *soap, const struct __ns1__ps *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__ps(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__ps(struct soap *soap, const char *tag, int id, const struct __ns1__ps *a, const char *type) { soap_out_PointerTo_ns1__ps(soap, "ns1:ps", -1, &a->ns1__ps, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__ps * SOAP_FMAC4 soap_get___ns1__ps(struct soap *soap, struct __ns1__ps *p, const char *tag, const char *type) { if ((p = soap_in___ns1__ps(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__ps * SOAP_FMAC4 soap_in___ns1__ps(struct soap *soap, const char *tag, struct __ns1__ps *a, const char *type) { short soap_flag_ns1__ps = 1; short soap_flag; a = (struct __ns1__ps *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__ps, sizeof(struct __ns1__ps), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__ps(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__ps && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__ps(soap, "ns1:ps", &a->ns1__ps, "")) { soap_flag_ns1__ps--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getSubmissionLocationsForApplication2(struct soap *soap, struct __ns1__getSubmissionLocationsForApplication2 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getSubmissionLocationsForApplication2 = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getSubmissionLocationsForApplication2(struct soap *soap, const struct __ns1__getSubmissionLocationsForApplication2 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getSubmissionLocationsForApplication2(soap, &a->ns1__getSubmissionLocationsForApplication2); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getSubmissionLocationsForApplication2(struct soap *soap, const struct __ns1__getSubmissionLocationsForApplication2 *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getSubmissionLocationsForApplication2(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getSubmissionLocationsForApplication2(struct soap *soap, const char *tag, int id, const struct __ns1__getSubmissionLocationsForApplication2 *a, const char *type) { soap_out_PointerTo_ns1__getSubmissionLocationsForApplication2(soap, "ns1:getSubmissionLocationsForApplication2", -1, &a->ns1__getSubmissionLocationsForApplication2, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getSubmissionLocationsForApplication2 * SOAP_FMAC4 soap_get___ns1__getSubmissionLocationsForApplication2(struct soap *soap, struct __ns1__getSubmissionLocationsForApplication2 *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getSubmissionLocationsForApplication2(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getSubmissionLocationsForApplication2 * SOAP_FMAC4 soap_in___ns1__getSubmissionLocationsForApplication2(struct soap *soap, const char *tag, struct __ns1__getSubmissionLocationsForApplication2 *a, const char *type) { short soap_flag_ns1__getSubmissionLocationsForApplication2 = 1; short soap_flag; a = (struct __ns1__getSubmissionLocationsForApplication2 *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getSubmissionLocationsForApplication2, sizeof(struct __ns1__getSubmissionLocationsForApplication2), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getSubmissionLocationsForApplication2(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getSubmissionLocationsForApplication2 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getSubmissionLocationsForApplication2(soap, "ns1:getSubmissionLocationsForApplication2", &a->ns1__getSubmissionLocationsForApplication2, "")) { soap_flag_ns1__getSubmissionLocationsForApplication2--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__downloadByteArray(struct soap *soap, struct __ns1__downloadByteArray *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__downloadByteArray = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__downloadByteArray(struct soap *soap, const struct __ns1__downloadByteArray *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__downloadByteArray(soap, &a->ns1__downloadByteArray); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__downloadByteArray(struct soap *soap, const struct __ns1__downloadByteArray *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__downloadByteArray(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__downloadByteArray(struct soap *soap, const char *tag, int id, const struct __ns1__downloadByteArray *a, const char *type) { soap_out_PointerTo_ns1__downloadByteArray(soap, "ns1:downloadByteArray", -1, &a->ns1__downloadByteArray, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__downloadByteArray * SOAP_FMAC4 soap_get___ns1__downloadByteArray(struct soap *soap, struct __ns1__downloadByteArray *p, const char *tag, const char *type) { if ((p = soap_in___ns1__downloadByteArray(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__downloadByteArray * SOAP_FMAC4 soap_in___ns1__downloadByteArray(struct soap *soap, const char *tag, struct __ns1__downloadByteArray *a, const char *type) { short soap_flag_ns1__downloadByteArray = 1; short soap_flag; a = (struct __ns1__downloadByteArray *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__downloadByteArray, sizeof(struct __ns1__downloadByteArray), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__downloadByteArray(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__downloadByteArray && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__downloadByteArray(soap, "ns1:downloadByteArray", &a->ns1__downloadByteArray, "")) { soap_flag_ns1__downloadByteArray--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__df(struct soap *soap, struct __ns1__df *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__df = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__df(struct soap *soap, const struct __ns1__df *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__df(soap, &a->ns1__df); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__df(struct soap *soap, const struct __ns1__df *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__df(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__df(struct soap *soap, const char *tag, int id, const struct __ns1__df *a, const char *type) { soap_out_PointerTo_ns1__df(soap, "ns1:df", -1, &a->ns1__df, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__df * SOAP_FMAC4 soap_get___ns1__df(struct soap *soap, struct __ns1__df *p, const char *tag, const char *type) { if ((p = soap_in___ns1__df(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__df * SOAP_FMAC4 soap_in___ns1__df(struct soap *soap, const char *tag, struct __ns1__df *a, const char *type) { short soap_flag_ns1__df = 1; short soap_flag; a = (struct __ns1__df *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__df, sizeof(struct __ns1__df), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__df(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__df && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__df(soap, "ns1:df", &a->ns1__df, "")) { soap_flag_ns1__df--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getFqans(struct soap *soap, struct __ns1__getFqans *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getFqans = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getFqans(struct soap *soap, const struct __ns1__getFqans *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getFqans(soap, &a->ns1__getFqans); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getFqans(struct soap *soap, const struct __ns1__getFqans *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getFqans(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getFqans(struct soap *soap, const char *tag, int id, const struct __ns1__getFqans *a, const char *type) { soap_out_PointerTo_ns1__getFqans(soap, "ns1:getFqans", -1, &a->ns1__getFqans, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getFqans * SOAP_FMAC4 soap_get___ns1__getFqans(struct soap *soap, struct __ns1__getFqans *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getFqans(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getFqans * SOAP_FMAC4 soap_in___ns1__getFqans(struct soap *soap, const char *tag, struct __ns1__getFqans *a, const char *type) { short soap_flag_ns1__getFqans = 1; short soap_flag; a = (struct __ns1__getFqans *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getFqans, sizeof(struct __ns1__getFqans), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getFqans(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getFqans && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getFqans(soap, "ns1:getFqans", &a->ns1__getFqans, "")) { soap_flag_ns1__getFqans--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getTemplate(struct soap *soap, struct __ns1__getTemplate *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getTemplate = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getTemplate(struct soap *soap, const struct __ns1__getTemplate *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getTemplate(soap, &a->ns1__getTemplate); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getTemplate(struct soap *soap, const struct __ns1__getTemplate *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getTemplate(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getTemplate(struct soap *soap, const char *tag, int id, const struct __ns1__getTemplate *a, const char *type) { soap_out_PointerTo_ns1__getTemplate(soap, "ns1:getTemplate", -1, &a->ns1__getTemplate, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getTemplate * SOAP_FMAC4 soap_get___ns1__getTemplate(struct soap *soap, struct __ns1__getTemplate *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getTemplate(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getTemplate * SOAP_FMAC4 soap_in___ns1__getTemplate(struct soap *soap, const char *tag, struct __ns1__getTemplate *a, const char *type) { short soap_flag_ns1__getTemplate = 1; short soap_flag; a = (struct __ns1__getTemplate *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getTemplate, sizeof(struct __ns1__getTemplate), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getTemplate(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getTemplate && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getTemplate(soap, "ns1:getTemplate", &a->ns1__getTemplate, "")) { soap_flag_ns1__getTemplate--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__login(struct soap *soap, struct __ns1__login *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__login = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__login(struct soap *soap, const struct __ns1__login *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__login(soap, &a->ns1__login); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__login(struct soap *soap, const struct __ns1__login *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__login(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__login(struct soap *soap, const char *tag, int id, const struct __ns1__login *a, const char *type) { soap_out_PointerTo_ns1__login(soap, "ns1:login", -1, &a->ns1__login, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__login * SOAP_FMAC4 soap_get___ns1__login(struct soap *soap, struct __ns1__login *p, const char *tag, const char *type) { if ((p = soap_in___ns1__login(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__login * SOAP_FMAC4 soap_in___ns1__login(struct soap *soap, const char *tag, struct __ns1__login *a, const char *type) { short soap_flag_ns1__login = 1; short soap_flag; a = (struct __ns1__login *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__login, sizeof(struct __ns1__login), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__login(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__login && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__login(soap, "ns1:login", &a->ns1__login, "")) { soap_flag_ns1__login--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__mount(struct soap *soap, struct __ns1__mount *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__mount = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__mount(struct soap *soap, const struct __ns1__mount *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__mount(soap, &a->ns1__mount); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__mount(struct soap *soap, const struct __ns1__mount *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__mount(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__mount(struct soap *soap, const char *tag, int id, const struct __ns1__mount *a, const char *type) { soap_out_PointerTo_ns1__mount(soap, "ns1:mount", -1, &a->ns1__mount, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__mount * SOAP_FMAC4 soap_get___ns1__mount(struct soap *soap, struct __ns1__mount *p, const char *tag, const char *type) { if ((p = soap_in___ns1__mount(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__mount * SOAP_FMAC4 soap_in___ns1__mount(struct soap *soap, const char *tag, struct __ns1__mount *a, const char *type) { short soap_flag_ns1__mount = 1; short soap_flag; a = (struct __ns1__mount *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__mount, sizeof(struct __ns1__mount), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__mount(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__mount && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__mount(soap, "ns1:mount", &a->ns1__mount, "")) { soap_flag_ns1__mount--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getJobFqan(struct soap *soap, struct __ns1__getJobFqan *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getJobFqan = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getJobFqan(struct soap *soap, const struct __ns1__getJobFqan *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getJobFqan(soap, &a->ns1__getJobFqan); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getJobFqan(struct soap *soap, const struct __ns1__getJobFqan *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getJobFqan(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getJobFqan(struct soap *soap, const char *tag, int id, const struct __ns1__getJobFqan *a, const char *type) { soap_out_PointerTo_ns1__getJobFqan(soap, "ns1:getJobFqan", -1, &a->ns1__getJobFqan, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getJobFqan * SOAP_FMAC4 soap_get___ns1__getJobFqan(struct soap *soap, struct __ns1__getJobFqan *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getJobFqan(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getJobFqan * SOAP_FMAC4 soap_in___ns1__getJobFqan(struct soap *soap, const char *tag, struct __ns1__getJobFqan *a, const char *type) { short soap_flag_ns1__getJobFqan = 1; short soap_flag; a = (struct __ns1__getJobFqan *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getJobFqan, sizeof(struct __ns1__getJobFqan), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getJobFqan(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getJobFqan && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getJobFqan(soap, "ns1:getJobFqan", &a->ns1__getJobFqan, "")) { soap_flag_ns1__getJobFqan--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getChildrenFiles(struct soap *soap, struct __ns1__getChildrenFiles *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__getChildrenFiles = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getChildrenFiles(struct soap *soap, const struct __ns1__getChildrenFiles *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTo_ns1__getChildrenFiles(soap, &a->ns1__getChildrenFiles); } SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getChildrenFiles(struct soap *soap, const struct __ns1__getChildrenFiles *a, const char *tag, const char *type) { register int id = 0; if (soap_out___ns1__getChildrenFiles(soap, tag, id, a, type)) return soap->error; return SOAP_OK; } SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getChildrenFiles(struct soap *soap, const char *tag, int id, const struct __ns1__getChildrenFiles *a, const char *type) { soap_out_PointerTo_ns1__getChildrenFiles(soap, "ns1:getChildrenFiles", -1, &a->ns1__getChildrenFiles, ""); return SOAP_OK; } SOAP_FMAC3 struct __ns1__getChildrenFiles * SOAP_FMAC4 soap_get___ns1__getChildrenFiles(struct soap *soap, struct __ns1__getChildrenFiles *p, const char *tag, const char *type) { if ((p = soap_in___ns1__getChildrenFiles(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct __ns1__getChildrenFiles * SOAP_FMAC4 soap_in___ns1__getChildrenFiles(struct soap *soap, const char *tag, struct __ns1__getChildrenFiles *a, const char *type) { short soap_flag_ns1__getChildrenFiles = 1; short soap_flag; a = (struct __ns1__getChildrenFiles *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getChildrenFiles, sizeof(struct __ns1__getChildrenFiles), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default___ns1__getChildrenFiles(soap, a); for (soap_flag = 0;; soap_flag = 1) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__getChildrenFiles && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTo_ns1__getChildrenFiles(soap, "ns1:getChildrenFiles", &a->ns1__getChildrenFiles, "")) { soap_flag_ns1__getChildrenFiles--; continue; } if (soap->error == SOAP_TAG_MISMATCH) if (soap_flag) { soap->error = SOAP_OK; break; } if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } return a; } #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->ns1__JobCreationException = NULL; a->ns1__JobDescriptionNotValidException = NULL; a->ns1__JobSubmissionException = NULL; a->ns1__NoSuchJobException = NULL; a->ns1__NoSuchTemplateException = NULL; a->ns1__NoValidCredentialException = NULL; a->ns1__RemoteFileSystemException = NULL; a->ns1__VomsException = NULL; a->__type = 0; a->fault = NULL; a->__any = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Detail(struct soap *soap, const struct SOAP_ENV__Detail *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons4__JobCreationException(soap, &a->ns1__JobCreationException); soap_serialize_PointerTons2__JobDescriptionNotValidException(soap, &a->ns1__JobDescriptionNotValidException); soap_serialize_PointerTons2__JobSubmissionException(soap, &a->ns1__JobSubmissionException); soap_serialize_PointerTons2__NoSuchJobException(soap, &a->ns1__NoSuchJobException); soap_serialize_PointerTons2__NoSuchTemplateException(soap, &a->ns1__NoSuchTemplateException); soap_serialize_PointerTons2__NoValidCredentialException(soap, &a->ns1__NoValidCredentialException); soap_serialize_PointerTons2__RemoteFileSystemException(soap, &a->ns1__RemoteFileSystemException); soap_serialize_PointerTons2__VomsException(soap, &a->ns1__VomsException); soap_markelement(soap, a->fault, a->__type); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Detail(struct soap *soap, const struct SOAP_ENV__Detail *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Detail); if (soap_out_SOAP_ENV__Detail(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Detail(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Detail *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Detail), type); soap_out_PointerTons4__JobCreationException(soap, "ns1:JobCreationException", -1, &a->ns1__JobCreationException, ""); soap_out_PointerTons2__JobDescriptionNotValidException(soap, "ns1:JobDescriptionNotValidException", -1, &a->ns1__JobDescriptionNotValidException, ""); soap_out_PointerTons2__JobSubmissionException(soap, "ns1:JobSubmissionException", -1, &a->ns1__JobSubmissionException, ""); soap_out_PointerTons2__NoSuchJobException(soap, "ns1:NoSuchJobException", -1, &a->ns1__NoSuchJobException, ""); soap_out_PointerTons2__NoSuchTemplateException(soap, "ns1:NoSuchTemplateException", -1, &a->ns1__NoSuchTemplateException, ""); soap_out_PointerTons2__NoValidCredentialException(soap, "ns1:NoValidCredentialException", -1, &a->ns1__NoValidCredentialException, ""); soap_out_PointerTons2__RemoteFileSystemException(soap, "ns1:RemoteFileSystemException", -1, &a->ns1__RemoteFileSystemException, ""); soap_out_PointerTons2__VomsException(soap, "ns1:VomsException", -1, &a->ns1__VomsException, ""); soap_putelement(soap, a->fault, "fault", -1, a->__type); soap_outliteral(soap, "-any", &a->__any, NULL); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct SOAP_ENV__Detail * SOAP_FMAC4 soap_get_SOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *p, const char *tag, const char *type) { if ((p = soap_in_SOAP_ENV__Detail(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct SOAP_ENV__Detail * SOAP_FMAC4 soap_in_SOAP_ENV__Detail(struct soap *soap, const char *tag, struct SOAP_ENV__Detail *a, const char *type) { short soap_flag_ns1__JobCreationException = 1, soap_flag_ns1__JobDescriptionNotValidException = 1, soap_flag_ns1__JobSubmissionException = 1, soap_flag_ns1__NoSuchJobException = 1, soap_flag_ns1__NoSuchTemplateException = 1, soap_flag_ns1__NoValidCredentialException = 1, soap_flag_ns1__RemoteFileSystemException = 1, soap_flag_ns1__VomsException = 1, soap_flag_fault = 1, soap_flag___any = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct SOAP_ENV__Detail *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Detail, sizeof(struct SOAP_ENV__Detail), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_SOAP_ENV__Detail(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_ns1__JobCreationException && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons4__JobCreationException(soap, "ns1:JobCreationException", &a->ns1__JobCreationException, "ns4:JobCreationException")) { soap_flag_ns1__JobCreationException--; continue; } if (soap_flag_ns1__JobDescriptionNotValidException && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons2__JobDescriptionNotValidException(soap, "ns1:JobDescriptionNotValidException", &a->ns1__JobDescriptionNotValidException, "ns2:JobDescriptionNotValidException")) { soap_flag_ns1__JobDescriptionNotValidException--; continue; } if (soap_flag_ns1__JobSubmissionException && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons2__JobSubmissionException(soap, "ns1:JobSubmissionException", &a->ns1__JobSubmissionException, "ns2:JobSubmissionException")) { soap_flag_ns1__JobSubmissionException--; continue; } if (soap_flag_ns1__NoSuchJobException && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons2__NoSuchJobException(soap, "ns1:NoSuchJobException", &a->ns1__NoSuchJobException, "ns2:NoSuchJobException")) { soap_flag_ns1__NoSuchJobException--; continue; } if (soap_flag_ns1__NoSuchTemplateException && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons2__NoSuchTemplateException(soap, "ns1:NoSuchTemplateException", &a->ns1__NoSuchTemplateException, "ns2:NoSuchTemplateException")) { soap_flag_ns1__NoSuchTemplateException--; continue; } if (soap_flag_ns1__NoValidCredentialException && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons2__NoValidCredentialException(soap, "ns1:NoValidCredentialException", &a->ns1__NoValidCredentialException, "ns2:NoValidCredentialException")) { soap_flag_ns1__NoValidCredentialException--; continue; } if (soap_flag_ns1__RemoteFileSystemException && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons2__RemoteFileSystemException(soap, "ns1:RemoteFileSystemException", &a->ns1__RemoteFileSystemException, "ns2:RemoteFileSystemException")) { soap_flag_ns1__RemoteFileSystemException--; continue; } if (soap_flag_ns1__VomsException && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons2__VomsException(soap, "ns1:VomsException", &a->ns1__VomsException, "ns2:VomsException")) { soap_flag_ns1__VomsException--; continue; } if (soap_flag_fault && soap->error == SOAP_TAG_MISMATCH) if ((a->fault = soap_getelement(soap, &a->__type))) { soap_flag_fault = 0; continue; } if (soap_flag___any && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_inliteral(soap, "-any", &a->__any)) { soap_flag___any--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct SOAP_ENV__Detail *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Detail, 0, sizeof(struct SOAP_ENV__Detail), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_fault > 1)) { soap->error = SOAP_OCCURS; return NULL; } return a; } #endif SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns4__JobCreationException(struct soap *soap, struct ns4__JobCreationException *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns4__JobCreationException(struct soap *soap, const struct ns4__JobCreationException *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns4__JobCreationException(struct soap *soap, const struct ns4__JobCreationException *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns4__JobCreationException); if (soap_out_ns4__JobCreationException(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns4__JobCreationException(struct soap *soap, const char *tag, int id, const struct ns4__JobCreationException *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns4__JobCreationException), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct ns4__JobCreationException * SOAP_FMAC4 soap_get_ns4__JobCreationException(struct soap *soap, struct ns4__JobCreationException *p, const char *tag, const char *type) { if ((p = soap_in_ns4__JobCreationException(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns4__JobCreationException * SOAP_FMAC4 soap_in_ns4__JobCreationException(struct soap *soap, const char *tag, struct ns4__JobCreationException *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct ns4__JobCreationException *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns4__JobCreationException, sizeof(struct ns4__JobCreationException), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_ns4__JobCreationException(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct ns4__JobCreationException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns4__JobCreationException, 0, sizeof(struct ns4__JobCreationException), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns2__JobSubmissionException(struct soap *soap, struct ns2__JobSubmissionException *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns2__JobSubmissionException(struct soap *soap, const struct ns2__JobSubmissionException *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns2__JobSubmissionException(struct soap *soap, const struct ns2__JobSubmissionException *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns2__JobSubmissionException); if (soap_out_ns2__JobSubmissionException(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns2__JobSubmissionException(struct soap *soap, const char *tag, int id, const struct ns2__JobSubmissionException *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns2__JobSubmissionException), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct ns2__JobSubmissionException * SOAP_FMAC4 soap_get_ns2__JobSubmissionException(struct soap *soap, struct ns2__JobSubmissionException *p, const char *tag, const char *type) { if ((p = soap_in_ns2__JobSubmissionException(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns2__JobSubmissionException * SOAP_FMAC4 soap_in_ns2__JobSubmissionException(struct soap *soap, const char *tag, struct ns2__JobSubmissionException *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct ns2__JobSubmissionException *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns2__JobSubmissionException, sizeof(struct ns2__JobSubmissionException), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_ns2__JobSubmissionException(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct ns2__JobSubmissionException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns2__JobSubmissionException, 0, sizeof(struct ns2__JobSubmissionException), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns2__JobDescriptionNotValidException(struct soap *soap, struct ns2__JobDescriptionNotValidException *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns2__JobDescriptionNotValidException(struct soap *soap, const struct ns2__JobDescriptionNotValidException *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns2__JobDescriptionNotValidException(struct soap *soap, const struct ns2__JobDescriptionNotValidException *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns2__JobDescriptionNotValidException); if (soap_out_ns2__JobDescriptionNotValidException(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns2__JobDescriptionNotValidException(struct soap *soap, const char *tag, int id, const struct ns2__JobDescriptionNotValidException *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns2__JobDescriptionNotValidException), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct ns2__JobDescriptionNotValidException * SOAP_FMAC4 soap_get_ns2__JobDescriptionNotValidException(struct soap *soap, struct ns2__JobDescriptionNotValidException *p, const char *tag, const char *type) { if ((p = soap_in_ns2__JobDescriptionNotValidException(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns2__JobDescriptionNotValidException * SOAP_FMAC4 soap_in_ns2__JobDescriptionNotValidException(struct soap *soap, const char *tag, struct ns2__JobDescriptionNotValidException *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct ns2__JobDescriptionNotValidException *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns2__JobDescriptionNotValidException, sizeof(struct ns2__JobDescriptionNotValidException), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_ns2__JobDescriptionNotValidException(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct ns2__JobDescriptionNotValidException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns2__JobDescriptionNotValidException, 0, sizeof(struct ns2__JobDescriptionNotValidException), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns2__NoSuchTemplateException(struct soap *soap, struct ns2__NoSuchTemplateException *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns2__NoSuchTemplateException(struct soap *soap, const struct ns2__NoSuchTemplateException *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns2__NoSuchTemplateException(struct soap *soap, const struct ns2__NoSuchTemplateException *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns2__NoSuchTemplateException); if (soap_out_ns2__NoSuchTemplateException(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns2__NoSuchTemplateException(struct soap *soap, const char *tag, int id, const struct ns2__NoSuchTemplateException *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns2__NoSuchTemplateException), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct ns2__NoSuchTemplateException * SOAP_FMAC4 soap_get_ns2__NoSuchTemplateException(struct soap *soap, struct ns2__NoSuchTemplateException *p, const char *tag, const char *type) { if ((p = soap_in_ns2__NoSuchTemplateException(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns2__NoSuchTemplateException * SOAP_FMAC4 soap_in_ns2__NoSuchTemplateException(struct soap *soap, const char *tag, struct ns2__NoSuchTemplateException *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct ns2__NoSuchTemplateException *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns2__NoSuchTemplateException, sizeof(struct ns2__NoSuchTemplateException), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_ns2__NoSuchTemplateException(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct ns2__NoSuchTemplateException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns2__NoSuchTemplateException, 0, sizeof(struct ns2__NoSuchTemplateException), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns2__NoValidCredentialException(struct soap *soap, struct ns2__NoValidCredentialException *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns2__NoValidCredentialException(struct soap *soap, const struct ns2__NoValidCredentialException *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns2__NoValidCredentialException(struct soap *soap, const struct ns2__NoValidCredentialException *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns2__NoValidCredentialException); if (soap_out_ns2__NoValidCredentialException(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns2__NoValidCredentialException(struct soap *soap, const char *tag, int id, const struct ns2__NoValidCredentialException *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns2__NoValidCredentialException), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct ns2__NoValidCredentialException * SOAP_FMAC4 soap_get_ns2__NoValidCredentialException(struct soap *soap, struct ns2__NoValidCredentialException *p, const char *tag, const char *type) { if ((p = soap_in_ns2__NoValidCredentialException(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns2__NoValidCredentialException * SOAP_FMAC4 soap_in_ns2__NoValidCredentialException(struct soap *soap, const char *tag, struct ns2__NoValidCredentialException *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct ns2__NoValidCredentialException *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns2__NoValidCredentialException, sizeof(struct ns2__NoValidCredentialException), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_ns2__NoValidCredentialException(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct ns2__NoValidCredentialException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns2__NoValidCredentialException, 0, sizeof(struct ns2__NoValidCredentialException), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns2__NoSuchJobException(struct soap *soap, struct ns2__NoSuchJobException *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns2__NoSuchJobException(struct soap *soap, const struct ns2__NoSuchJobException *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns2__NoSuchJobException(struct soap *soap, const struct ns2__NoSuchJobException *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns2__NoSuchJobException); if (soap_out_ns2__NoSuchJobException(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns2__NoSuchJobException(struct soap *soap, const char *tag, int id, const struct ns2__NoSuchJobException *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns2__NoSuchJobException), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct ns2__NoSuchJobException * SOAP_FMAC4 soap_get_ns2__NoSuchJobException(struct soap *soap, struct ns2__NoSuchJobException *p, const char *tag, const char *type) { if ((p = soap_in_ns2__NoSuchJobException(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns2__NoSuchJobException * SOAP_FMAC4 soap_in_ns2__NoSuchJobException(struct soap *soap, const char *tag, struct ns2__NoSuchJobException *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct ns2__NoSuchJobException *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns2__NoSuchJobException, sizeof(struct ns2__NoSuchJobException), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_ns2__NoSuchJobException(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct ns2__NoSuchJobException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns2__NoSuchJobException, 0, sizeof(struct ns2__NoSuchJobException), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns2__RemoteFileSystemException(struct soap *soap, struct ns2__RemoteFileSystemException *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns2__RemoteFileSystemException(struct soap *soap, const struct ns2__RemoteFileSystemException *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns2__RemoteFileSystemException(struct soap *soap, const struct ns2__RemoteFileSystemException *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns2__RemoteFileSystemException); if (soap_out_ns2__RemoteFileSystemException(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns2__RemoteFileSystemException(struct soap *soap, const char *tag, int id, const struct ns2__RemoteFileSystemException *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns2__RemoteFileSystemException), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct ns2__RemoteFileSystemException * SOAP_FMAC4 soap_get_ns2__RemoteFileSystemException(struct soap *soap, struct ns2__RemoteFileSystemException *p, const char *tag, const char *type) { if ((p = soap_in_ns2__RemoteFileSystemException(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns2__RemoteFileSystemException * SOAP_FMAC4 soap_in_ns2__RemoteFileSystemException(struct soap *soap, const char *tag, struct ns2__RemoteFileSystemException *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct ns2__RemoteFileSystemException *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns2__RemoteFileSystemException, sizeof(struct ns2__RemoteFileSystemException), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_ns2__RemoteFileSystemException(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct ns2__RemoteFileSystemException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns2__RemoteFileSystemException, 0, sizeof(struct ns2__RemoteFileSystemException), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns2__VomsException(struct soap *soap, struct ns2__VomsException *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns2__VomsException(struct soap *soap, const struct ns2__VomsException *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns2__VomsException(struct soap *soap, const struct ns2__VomsException *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns2__VomsException); if (soap_out_ns2__VomsException(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns2__VomsException(struct soap *soap, const char *tag, int id, const struct ns2__VomsException *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns2__VomsException), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct ns2__VomsException * SOAP_FMAC4 soap_get_ns2__VomsException(struct soap *soap, struct ns2__VomsException *p, const char *tag, const char *type) { if ((p = soap_in_ns2__VomsException(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns2__VomsException * SOAP_FMAC4 soap_in_ns2__VomsException(struct soap *soap, const char *tag, struct ns2__VomsException *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct ns2__VomsException *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns2__VomsException, sizeof(struct ns2__VomsException), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_ns2__VomsException(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct ns2__VomsException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns2__VomsException, 0, sizeof(struct ns2__VomsException), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getAllHostsResponse(struct soap *soap, struct _ns1__getAllHostsResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getAllHostsResponse(struct soap *soap, const struct _ns1__getAllHostsResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__anyType2anyTypeMap(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getAllHostsResponse(struct soap *soap, const struct _ns1__getAllHostsResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getAllHostsResponse); if (soap_out__ns1__getAllHostsResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getAllHostsResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getAllHostsResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getAllHostsResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__anyType2anyTypeMap(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getAllHostsResponse * SOAP_FMAC4 soap_get__ns1__getAllHostsResponse(struct soap *soap, struct _ns1__getAllHostsResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getAllHostsResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllHostsResponse * SOAP_FMAC4 soap_in__ns1__getAllHostsResponse(struct soap *soap, const char *tag, struct _ns1__getAllHostsResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getAllHostsResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getAllHostsResponse, sizeof(struct _ns1__getAllHostsResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getAllHostsResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__anyType2anyTypeMap(soap, "ns1:out", &a->out, "ns1:anyType2anyTypeMap")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getAllHostsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getAllHostsResponse, 0, sizeof(struct _ns1__getAllHostsResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getAllHosts(struct soap *soap, struct _ns1__getAllHosts *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getAllHosts(struct soap *soap, const struct _ns1__getAllHosts *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getAllHosts(struct soap *soap, const struct _ns1__getAllHosts *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getAllHosts); if (soap_out__ns1__getAllHosts(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getAllHosts(struct soap *soap, const char *tag, int id, const struct _ns1__getAllHosts *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getAllHosts), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getAllHosts * SOAP_FMAC4 soap_get__ns1__getAllHosts(struct soap *soap, struct _ns1__getAllHosts *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getAllHosts(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllHosts * SOAP_FMAC4 soap_in__ns1__getAllHosts(struct soap *soap, const char *tag, struct _ns1__getAllHosts *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getAllHosts *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getAllHosts, sizeof(struct _ns1__getAllHosts), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getAllHosts(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getAllHosts *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getAllHosts, 0, sizeof(struct _ns1__getAllHosts), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__submitSupportRequestResponse(struct soap *soap, struct _ns1__submitSupportRequestResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__submitSupportRequestResponse(struct soap *soap, const struct _ns1__submitSupportRequestResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__submitSupportRequestResponse(struct soap *soap, const struct _ns1__submitSupportRequestResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__submitSupportRequestResponse); if (soap_out__ns1__submitSupportRequestResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__submitSupportRequestResponse(struct soap *soap, const char *tag, int id, const struct _ns1__submitSupportRequestResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__submitSupportRequestResponse), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__submitSupportRequestResponse * SOAP_FMAC4 soap_get__ns1__submitSupportRequestResponse(struct soap *soap, struct _ns1__submitSupportRequestResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__submitSupportRequestResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__submitSupportRequestResponse * SOAP_FMAC4 soap_in__ns1__submitSupportRequestResponse(struct soap *soap, const char *tag, struct _ns1__submitSupportRequestResponse *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__submitSupportRequestResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__submitSupportRequestResponse, sizeof(struct _ns1__submitSupportRequestResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__submitSupportRequestResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__submitSupportRequestResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__submitSupportRequestResponse, 0, sizeof(struct _ns1__submitSupportRequestResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__submitSupportRequest(struct soap *soap, struct _ns1__submitSupportRequest *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_string(soap, &a->in1); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__submitSupportRequest(struct soap *soap, const struct _ns1__submitSupportRequest *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_string(soap, &a->in1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__submitSupportRequest(struct soap *soap, const struct _ns1__submitSupportRequest *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__submitSupportRequest); if (soap_out__ns1__submitSupportRequest(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__submitSupportRequest(struct soap *soap, const char *tag, int id, const struct _ns1__submitSupportRequest *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__submitSupportRequest), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__submitSupportRequest * SOAP_FMAC4 soap_get__ns1__submitSupportRequest(struct soap *soap, struct _ns1__submitSupportRequest *p, const char *tag, const char *type) { if ((p = soap_in__ns1__submitSupportRequest(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__submitSupportRequest * SOAP_FMAC4 soap_in__ns1__submitSupportRequest(struct soap *soap, const char *tag, struct _ns1__submitSupportRequest *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__submitSupportRequest *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__submitSupportRequest, sizeof(struct _ns1__submitSupportRequest), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__submitSupportRequest(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__submitSupportRequest *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__submitSupportRequest, 0, sizeof(struct _ns1__submitSupportRequest), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getJobPropertyResponse(struct soap *soap, struct _ns1__getJobPropertyResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getJobPropertyResponse(struct soap *soap, const struct _ns1__getJobPropertyResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getJobPropertyResponse(struct soap *soap, const struct _ns1__getJobPropertyResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getJobPropertyResponse); if (soap_out__ns1__getJobPropertyResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getJobPropertyResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getJobPropertyResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getJobPropertyResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getJobPropertyResponse * SOAP_FMAC4 soap_get__ns1__getJobPropertyResponse(struct soap *soap, struct _ns1__getJobPropertyResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getJobPropertyResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobPropertyResponse * SOAP_FMAC4 soap_in__ns1__getJobPropertyResponse(struct soap *soap, const char *tag, struct _ns1__getJobPropertyResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getJobPropertyResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getJobPropertyResponse, sizeof(struct _ns1__getJobPropertyResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getJobPropertyResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getJobPropertyResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getJobPropertyResponse, 0, sizeof(struct _ns1__getJobPropertyResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getJobProperty(struct soap *soap, struct _ns1__getJobProperty *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_string(soap, &a->in1); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getJobProperty(struct soap *soap, const struct _ns1__getJobProperty *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_string(soap, &a->in1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getJobProperty(struct soap *soap, const struct _ns1__getJobProperty *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getJobProperty); if (soap_out__ns1__getJobProperty(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getJobProperty(struct soap *soap, const char *tag, int id, const struct _ns1__getJobProperty *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getJobProperty), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getJobProperty * SOAP_FMAC4 soap_get__ns1__getJobProperty(struct soap *soap, struct _ns1__getJobProperty *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getJobProperty(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobProperty * SOAP_FMAC4 soap_in__ns1__getJobProperty(struct soap *soap, const char *tag, struct _ns1__getJobProperty *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getJobProperty *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getJobProperty, sizeof(struct _ns1__getJobProperty), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getJobProperty(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getJobProperty *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getJobProperty, 0, sizeof(struct _ns1__getJobProperty), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__mount1Response(struct soap *soap, struct _ns1__mount1Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__mount1Response(struct soap *soap, const struct _ns1__mount1Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons3__MountPoint(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__mount1Response(struct soap *soap, const struct _ns1__mount1Response *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__mount1Response); if (soap_out__ns1__mount1Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__mount1Response(struct soap *soap, const char *tag, int id, const struct _ns1__mount1Response *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__mount1Response), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons3__MountPoint(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__mount1Response * SOAP_FMAC4 soap_get__ns1__mount1Response(struct soap *soap, struct _ns1__mount1Response *p, const char *tag, const char *type) { if ((p = soap_in__ns1__mount1Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__mount1Response * SOAP_FMAC4 soap_in__ns1__mount1Response(struct soap *soap, const char *tag, struct _ns1__mount1Response *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__mount1Response *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__mount1Response, sizeof(struct _ns1__mount1Response), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__mount1Response(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons3__MountPoint(soap, "ns1:out", &a->out, "ns3:MountPoint")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__mount1Response *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__mount1Response, 0, sizeof(struct _ns1__mount1Response), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__mount1(struct soap *soap, struct _ns1__mount1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_string(soap, &a->in1); soap_default_string(soap, &a->in2); soap_default_xsd__boolean(soap, &a->in3); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__mount1(struct soap *soap, const struct _ns1__mount1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_string(soap, &a->in1); soap_serialize_string(soap, &a->in2); soap_embedded(soap, &a->in3, SOAP_TYPE_xsd__boolean); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__mount1(struct soap *soap, const struct _ns1__mount1 *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__mount1); if (soap_out__ns1__mount1(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__mount1(struct soap *soap, const char *tag, int id, const struct _ns1__mount1 *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__mount1), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_out_string(soap, "ns1:in2", -1, &a->in2, ""); soap_out_xsd__boolean(soap, "ns1:in3", -1, &a->in3, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__mount1 * SOAP_FMAC4 soap_get__ns1__mount1(struct soap *soap, struct _ns1__mount1 *p, const char *tag, const char *type) { if ((p = soap_in__ns1__mount1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__mount1 * SOAP_FMAC4 soap_in__ns1__mount1(struct soap *soap, const char *tag, struct _ns1__mount1 *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1, soap_flag_in2 = 1, soap_flag_in3 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__mount1 *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__mount1, sizeof(struct _ns1__mount1), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__mount1(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap_flag_in2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in2", &a->in2, "xsd:string")) { soap_flag_in2--; continue; } if (soap_flag_in3 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_xsd__boolean(soap, "ns1:in3", &a->in3, "xsd:boolean")) { soap_flag_in3--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__mount1 *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__mount1, 0, sizeof(struct _ns1__mount1), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0 || soap_flag_in2 > 0 || soap_flag_in3 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getJobDetailsResponse(struct soap *soap, struct _ns1__getJobDetailsResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getJobDetailsResponse(struct soap *soap, const struct _ns1__getJobDetailsResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getJobDetailsResponse(struct soap *soap, const struct _ns1__getJobDetailsResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getJobDetailsResponse); if (soap_out__ns1__getJobDetailsResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getJobDetailsResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getJobDetailsResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getJobDetailsResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_outliteral(soap, "ns1:out", &a->out, NULL); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getJobDetailsResponse * SOAP_FMAC4 soap_get__ns1__getJobDetailsResponse(struct soap *soap, struct _ns1__getJobDetailsResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getJobDetailsResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobDetailsResponse * SOAP_FMAC4 soap_in__ns1__getJobDetailsResponse(struct soap *soap, const char *tag, struct _ns1__getJobDetailsResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getJobDetailsResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getJobDetailsResponse, sizeof(struct _ns1__getJobDetailsResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getJobDetailsResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_inliteral(soap, "ns1:out", &a->out)) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getJobDetailsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getJobDetailsResponse, 0, sizeof(struct _ns1__getJobDetailsResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getJobDetails(struct soap *soap, struct _ns1__getJobDetails *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getJobDetails(struct soap *soap, const struct _ns1__getJobDetails *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getJobDetails(struct soap *soap, const struct _ns1__getJobDetails *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getJobDetails); if (soap_out__ns1__getJobDetails(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getJobDetails(struct soap *soap, const char *tag, int id, const struct _ns1__getJobDetails *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getJobDetails), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getJobDetails * SOAP_FMAC4 soap_get__ns1__getJobDetails(struct soap *soap, struct _ns1__getJobDetails *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getJobDetails(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobDetails * SOAP_FMAC4 soap_in__ns1__getJobDetails(struct soap *soap, const char *tag, struct _ns1__getJobDetails *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getJobDetails *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getJobDetails, sizeof(struct _ns1__getJobDetails), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getJobDetails(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getJobDetails *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getJobDetails, 0, sizeof(struct _ns1__getJobDetails), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__umountResponse(struct soap *soap, struct _ns1__umountResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__umountResponse(struct soap *soap, const struct _ns1__umountResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__umountResponse(struct soap *soap, const struct _ns1__umountResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__umountResponse); if (soap_out__ns1__umountResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__umountResponse(struct soap *soap, const char *tag, int id, const struct _ns1__umountResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__umountResponse), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__umountResponse * SOAP_FMAC4 soap_get__ns1__umountResponse(struct soap *soap, struct _ns1__umountResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__umountResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__umountResponse * SOAP_FMAC4 soap_in__ns1__umountResponse(struct soap *soap, const char *tag, struct _ns1__umountResponse *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__umountResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__umountResponse, sizeof(struct _ns1__umountResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__umountResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__umountResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__umountResponse, 0, sizeof(struct _ns1__umountResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__umount(struct soap *soap, struct _ns1__umount *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__umount(struct soap *soap, const struct _ns1__umount *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__umount(struct soap *soap, const struct _ns1__umount *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__umount); if (soap_out__ns1__umount(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__umount(struct soap *soap, const char *tag, int id, const struct _ns1__umount *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__umount), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__umount * SOAP_FMAC4 soap_get__ns1__umount(struct soap *soap, struct _ns1__umount *p, const char *tag, const char *type) { if ((p = soap_in__ns1__umount(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__umount * SOAP_FMAC4 soap_in__ns1__umount(struct soap *soap, const char *tag, struct _ns1__umount *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__umount *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__umount, sizeof(struct _ns1__umount), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__umount(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__umount *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__umount, 0, sizeof(struct _ns1__umount), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getJobStatusResponse(struct soap *soap, struct _ns1__getJobStatusResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_int(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getJobStatusResponse(struct soap *soap, const struct _ns1__getJobStatusResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getJobStatusResponse(struct soap *soap, const struct _ns1__getJobStatusResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getJobStatusResponse); if (soap_out__ns1__getJobStatusResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getJobStatusResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getJobStatusResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getJobStatusResponse), type); soap_element_result(soap, "ns1:out"); soap_out_int(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getJobStatusResponse * SOAP_FMAC4 soap_get__ns1__getJobStatusResponse(struct soap *soap, struct _ns1__getJobStatusResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getJobStatusResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobStatusResponse * SOAP_FMAC4 soap_in__ns1__getJobStatusResponse(struct soap *soap, const char *tag, struct _ns1__getJobStatusResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getJobStatusResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getJobStatusResponse, sizeof(struct _ns1__getJobStatusResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getJobStatusResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_int(soap, "ns1:out", &a->out, "xsd:int")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getJobStatusResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getJobStatusResponse, 0, sizeof(struct _ns1__getJobStatusResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getJobStatus(struct soap *soap, struct _ns1__getJobStatus *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getJobStatus(struct soap *soap, const struct _ns1__getJobStatus *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getJobStatus(struct soap *soap, const struct _ns1__getJobStatus *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getJobStatus); if (soap_out__ns1__getJobStatus(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getJobStatus(struct soap *soap, const char *tag, int id, const struct _ns1__getJobStatus *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getJobStatus), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getJobStatus * SOAP_FMAC4 soap_get__ns1__getJobStatus(struct soap *soap, struct _ns1__getJobStatus *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getJobStatus(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobStatus * SOAP_FMAC4 soap_in__ns1__getJobStatus(struct soap *soap, const char *tag, struct _ns1__getJobStatus *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getJobStatus *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getJobStatus, sizeof(struct _ns1__getJobStatus), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getJobStatus(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getJobStatus *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getJobStatus, 0, sizeof(struct _ns1__getJobStatus), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getJobDetails_USCOREstringResponse(struct soap *soap, struct _ns1__getJobDetails_USCOREstringResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getJobDetails_USCOREstringResponse(struct soap *soap, const struct _ns1__getJobDetails_USCOREstringResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getJobDetails_USCOREstringResponse(struct soap *soap, const struct _ns1__getJobDetails_USCOREstringResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getJobDetails_USCOREstringResponse); if (soap_out__ns1__getJobDetails_USCOREstringResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getJobDetails_USCOREstringResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getJobDetails_USCOREstringResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getJobDetails_USCOREstringResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getJobDetails_USCOREstringResponse * SOAP_FMAC4 soap_get__ns1__getJobDetails_USCOREstringResponse(struct soap *soap, struct _ns1__getJobDetails_USCOREstringResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getJobDetails_USCOREstringResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobDetails_USCOREstringResponse * SOAP_FMAC4 soap_in__ns1__getJobDetails_USCOREstringResponse(struct soap *soap, const char *tag, struct _ns1__getJobDetails_USCOREstringResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getJobDetails_USCOREstringResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getJobDetails_USCOREstringResponse, sizeof(struct _ns1__getJobDetails_USCOREstringResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getJobDetails_USCOREstringResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getJobDetails_USCOREstringResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getJobDetails_USCOREstringResponse, 0, sizeof(struct _ns1__getJobDetails_USCOREstringResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getJobDetails_USCOREstring(struct soap *soap, struct _ns1__getJobDetails_USCOREstring *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getJobDetails_USCOREstring(struct soap *soap, const struct _ns1__getJobDetails_USCOREstring *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getJobDetails_USCOREstring(struct soap *soap, const struct _ns1__getJobDetails_USCOREstring *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getJobDetails_USCOREstring); if (soap_out__ns1__getJobDetails_USCOREstring(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getJobDetails_USCOREstring(struct soap *soap, const char *tag, int id, const struct _ns1__getJobDetails_USCOREstring *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getJobDetails_USCOREstring), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getJobDetails_USCOREstring * SOAP_FMAC4 soap_get__ns1__getJobDetails_USCOREstring(struct soap *soap, struct _ns1__getJobDetails_USCOREstring *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getJobDetails_USCOREstring(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobDetails_USCOREstring * SOAP_FMAC4 soap_in__ns1__getJobDetails_USCOREstring(struct soap *soap, const char *tag, struct _ns1__getJobDetails_USCOREstring *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getJobDetails_USCOREstring *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getJobDetails_USCOREstring, sizeof(struct _ns1__getJobDetails_USCOREstring), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getJobDetails_USCOREstring(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getJobDetails_USCOREstring *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getJobDetails_USCOREstring, 0, sizeof(struct _ns1__getJobDetails_USCOREstring), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getAllSitesResponse(struct soap *soap, struct _ns1__getAllSitesResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getAllSitesResponse(struct soap *soap, const struct _ns1__getAllSitesResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__ArrayOfString(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getAllSitesResponse(struct soap *soap, const struct _ns1__getAllSitesResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getAllSitesResponse); if (soap_out__ns1__getAllSitesResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getAllSitesResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getAllSitesResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getAllSitesResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__ArrayOfString(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getAllSitesResponse * SOAP_FMAC4 soap_get__ns1__getAllSitesResponse(struct soap *soap, struct _ns1__getAllSitesResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getAllSitesResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllSitesResponse * SOAP_FMAC4 soap_in__ns1__getAllSitesResponse(struct soap *soap, const char *tag, struct _ns1__getAllSitesResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getAllSitesResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getAllSitesResponse, sizeof(struct _ns1__getAllSitesResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getAllSitesResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:out", &a->out, "ns1:ArrayOfString")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getAllSitesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getAllSitesResponse, 0, sizeof(struct _ns1__getAllSitesResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getAllSites(struct soap *soap, struct _ns1__getAllSites *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getAllSites(struct soap *soap, const struct _ns1__getAllSites *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getAllSites(struct soap *soap, const struct _ns1__getAllSites *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getAllSites); if (soap_out__ns1__getAllSites(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getAllSites(struct soap *soap, const char *tag, int id, const struct _ns1__getAllSites *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getAllSites), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getAllSites * SOAP_FMAC4 soap_get__ns1__getAllSites(struct soap *soap, struct _ns1__getAllSites *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getAllSites(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllSites * SOAP_FMAC4 soap_in__ns1__getAllSites(struct soap *soap, const char *tag, struct _ns1__getAllSites *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getAllSites *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getAllSites, sizeof(struct _ns1__getAllSites), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getAllSites(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getAllSites *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getAllSites, 0, sizeof(struct _ns1__getAllSites), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__setJobDescriptionResponse(struct soap *soap, struct _ns1__setJobDescriptionResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__setJobDescriptionResponse(struct soap *soap, const struct _ns1__setJobDescriptionResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__setJobDescriptionResponse(struct soap *soap, const struct _ns1__setJobDescriptionResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__setJobDescriptionResponse); if (soap_out__ns1__setJobDescriptionResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__setJobDescriptionResponse(struct soap *soap, const char *tag, int id, const struct _ns1__setJobDescriptionResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__setJobDescriptionResponse), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__setJobDescriptionResponse * SOAP_FMAC4 soap_get__ns1__setJobDescriptionResponse(struct soap *soap, struct _ns1__setJobDescriptionResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__setJobDescriptionResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__setJobDescriptionResponse * SOAP_FMAC4 soap_in__ns1__setJobDescriptionResponse(struct soap *soap, const char *tag, struct _ns1__setJobDescriptionResponse *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__setJobDescriptionResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__setJobDescriptionResponse, sizeof(struct _ns1__setJobDescriptionResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__setJobDescriptionResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__setJobDescriptionResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__setJobDescriptionResponse, 0, sizeof(struct _ns1__setJobDescriptionResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__setJobDescription(struct soap *soap, struct _ns1__setJobDescription *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); a->in1 = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__setJobDescription(struct soap *soap, const struct _ns1__setJobDescription *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__setJobDescription(struct soap *soap, const struct _ns1__setJobDescription *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__setJobDescription); if (soap_out__ns1__setJobDescription(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__setJobDescription(struct soap *soap, const char *tag, int id, const struct _ns1__setJobDescription *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__setJobDescription), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_outliteral(soap, "ns1:in1", &a->in1, NULL); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__setJobDescription * SOAP_FMAC4 soap_get__ns1__setJobDescription(struct soap *soap, struct _ns1__setJobDescription *p, const char *tag, const char *type) { if ((p = soap_in__ns1__setJobDescription(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__setJobDescription * SOAP_FMAC4 soap_in__ns1__setJobDescription(struct soap *soap, const char *tag, struct _ns1__setJobDescription *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__setJobDescription *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__setJobDescription, sizeof(struct _ns1__setJobDescription), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__setJobDescription(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_inliteral(soap, "ns1:in1", &a->in1)) { soap_flag_in1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__setJobDescription *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__setJobDescription, 0, sizeof(struct _ns1__setJobDescription), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getJobDirectoryResponse(struct soap *soap, struct _ns1__getJobDirectoryResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getJobDirectoryResponse(struct soap *soap, const struct _ns1__getJobDirectoryResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getJobDirectoryResponse(struct soap *soap, const struct _ns1__getJobDirectoryResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getJobDirectoryResponse); if (soap_out__ns1__getJobDirectoryResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getJobDirectoryResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getJobDirectoryResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getJobDirectoryResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getJobDirectoryResponse * SOAP_FMAC4 soap_get__ns1__getJobDirectoryResponse(struct soap *soap, struct _ns1__getJobDirectoryResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getJobDirectoryResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobDirectoryResponse * SOAP_FMAC4 soap_in__ns1__getJobDirectoryResponse(struct soap *soap, const char *tag, struct _ns1__getJobDirectoryResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getJobDirectoryResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getJobDirectoryResponse, sizeof(struct _ns1__getJobDirectoryResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getJobDirectoryResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getJobDirectoryResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getJobDirectoryResponse, 0, sizeof(struct _ns1__getJobDirectoryResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getJobDirectory(struct soap *soap, struct _ns1__getJobDirectory *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getJobDirectory(struct soap *soap, const struct _ns1__getJobDirectory *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getJobDirectory(struct soap *soap, const struct _ns1__getJobDirectory *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getJobDirectory); if (soap_out__ns1__getJobDirectory(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getJobDirectory(struct soap *soap, const char *tag, int id, const struct _ns1__getJobDirectory *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getJobDirectory), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getJobDirectory * SOAP_FMAC4 soap_get__ns1__getJobDirectory(struct soap *soap, struct _ns1__getJobDirectory *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getJobDirectory(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobDirectory * SOAP_FMAC4 soap_in__ns1__getJobDirectory(struct soap *soap, const char *tag, struct _ns1__getJobDirectory *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getJobDirectory *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getJobDirectory, sizeof(struct _ns1__getJobDirectory), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getJobDirectory(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getJobDirectory *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getJobDirectory, 0, sizeof(struct _ns1__getJobDirectory), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__uploadResponse(struct soap *soap, struct _ns1__uploadResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__uploadResponse(struct soap *soap, const struct _ns1__uploadResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__uploadResponse(struct soap *soap, const struct _ns1__uploadResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__uploadResponse); if (soap_out__ns1__uploadResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__uploadResponse(struct soap *soap, const char *tag, int id, const struct _ns1__uploadResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__uploadResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__uploadResponse * SOAP_FMAC4 soap_get__ns1__uploadResponse(struct soap *soap, struct _ns1__uploadResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__uploadResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__uploadResponse * SOAP_FMAC4 soap_in__ns1__uploadResponse(struct soap *soap, const char *tag, struct _ns1__uploadResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__uploadResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__uploadResponse, sizeof(struct _ns1__uploadResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__uploadResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__uploadResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__uploadResponse, 0, sizeof(struct _ns1__uploadResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__upload(struct soap *soap, struct _ns1__upload *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->in0 = NULL; soap_default_string(soap, &a->in1); soap_default_xsd__boolean(soap, &a->in2); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__upload(struct soap *soap, const struct _ns1__upload *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerToxsd__base64Binary(soap, &a->in0); soap_serialize_string(soap, &a->in1); soap_embedded(soap, &a->in2, SOAP_TYPE_xsd__boolean); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__upload(struct soap *soap, const struct _ns1__upload *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__upload); if (soap_out__ns1__upload(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__upload(struct soap *soap, const char *tag, int id, const struct _ns1__upload *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__upload), type); soap_out_PointerToxsd__base64Binary(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_out_xsd__boolean(soap, "ns1:in2", -1, &a->in2, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__upload * SOAP_FMAC4 soap_get__ns1__upload(struct soap *soap, struct _ns1__upload *p, const char *tag, const char *type) { if ((p = soap_in__ns1__upload(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__upload * SOAP_FMAC4 soap_in__ns1__upload(struct soap *soap, const char *tag, struct _ns1__upload *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1, soap_flag_in2 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__upload *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__upload, sizeof(struct _ns1__upload), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__upload(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerToxsd__base64Binary(soap, "ns1:in0", &a->in0, "xsd:base64Binary")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap_flag_in2 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_xsd__boolean(soap, "ns1:in2", &a->in2, "xsd:boolean")) { soap_flag_in2--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__upload *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__upload, 0, sizeof(struct _ns1__upload), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0 || soap_flag_in2 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__deleteFileResponse(struct soap *soap, struct _ns1__deleteFileResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__deleteFileResponse(struct soap *soap, const struct _ns1__deleteFileResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__deleteFileResponse(struct soap *soap, const struct _ns1__deleteFileResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__deleteFileResponse); if (soap_out__ns1__deleteFileResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__deleteFileResponse(struct soap *soap, const char *tag, int id, const struct _ns1__deleteFileResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__deleteFileResponse), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__deleteFileResponse * SOAP_FMAC4 soap_get__ns1__deleteFileResponse(struct soap *soap, struct _ns1__deleteFileResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__deleteFileResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__deleteFileResponse * SOAP_FMAC4 soap_in__ns1__deleteFileResponse(struct soap *soap, const char *tag, struct _ns1__deleteFileResponse *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__deleteFileResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__deleteFileResponse, sizeof(struct _ns1__deleteFileResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__deleteFileResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__deleteFileResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__deleteFileResponse, 0, sizeof(struct _ns1__deleteFileResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__deleteFile(struct soap *soap, struct _ns1__deleteFile *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__deleteFile(struct soap *soap, const struct _ns1__deleteFile *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__deleteFile(struct soap *soap, const struct _ns1__deleteFile *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__deleteFile); if (soap_out__ns1__deleteFile(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__deleteFile(struct soap *soap, const char *tag, int id, const struct _ns1__deleteFile *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__deleteFile), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__deleteFile * SOAP_FMAC4 soap_get__ns1__deleteFile(struct soap *soap, struct _ns1__deleteFile *p, const char *tag, const char *type) { if ((p = soap_in__ns1__deleteFile(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__deleteFile * SOAP_FMAC4 soap_in__ns1__deleteFile(struct soap *soap, const char *tag, struct _ns1__deleteFile *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__deleteFile *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__deleteFile, sizeof(struct _ns1__deleteFile), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__deleteFile(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__deleteFile *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__deleteFile, 0, sizeof(struct _ns1__deleteFile), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getFileSizeResponse(struct soap *soap, struct _ns1__getFileSizeResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_LONG64(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getFileSizeResponse(struct soap *soap, const struct _ns1__getFileSizeResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_embedded(soap, &a->out, SOAP_TYPE_LONG64); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getFileSizeResponse(struct soap *soap, const struct _ns1__getFileSizeResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getFileSizeResponse); if (soap_out__ns1__getFileSizeResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getFileSizeResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getFileSizeResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getFileSizeResponse), type); soap_element_result(soap, "ns1:out"); soap_out_LONG64(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getFileSizeResponse * SOAP_FMAC4 soap_get__ns1__getFileSizeResponse(struct soap *soap, struct _ns1__getFileSizeResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getFileSizeResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getFileSizeResponse * SOAP_FMAC4 soap_in__ns1__getFileSizeResponse(struct soap *soap, const char *tag, struct _ns1__getFileSizeResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getFileSizeResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getFileSizeResponse, sizeof(struct _ns1__getFileSizeResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getFileSizeResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_LONG64(soap, "ns1:out", &a->out, "xsd:long")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getFileSizeResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getFileSizeResponse, 0, sizeof(struct _ns1__getFileSizeResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getFileSize(struct soap *soap, struct _ns1__getFileSize *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getFileSize(struct soap *soap, const struct _ns1__getFileSize *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getFileSize(struct soap *soap, const struct _ns1__getFileSize *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getFileSize); if (soap_out__ns1__getFileSize(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getFileSize(struct soap *soap, const char *tag, int id, const struct _ns1__getFileSize *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getFileSize), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getFileSize * SOAP_FMAC4 soap_get__ns1__getFileSize(struct soap *soap, struct _ns1__getFileSize *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getFileSize(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getFileSize * SOAP_FMAC4 soap_in__ns1__getFileSize(struct soap *soap, const char *tag, struct _ns1__getFileSize *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getFileSize *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getFileSize, sizeof(struct _ns1__getFileSize), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getFileSize(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getFileSize *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getFileSize, 0, sizeof(struct _ns1__getFileSize), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__cpResponse(struct soap *soap, struct _ns1__cpResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__cpResponse(struct soap *soap, const struct _ns1__cpResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__cpResponse(struct soap *soap, const struct _ns1__cpResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__cpResponse); if (soap_out__ns1__cpResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__cpResponse(struct soap *soap, const char *tag, int id, const struct _ns1__cpResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__cpResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__cpResponse * SOAP_FMAC4 soap_get__ns1__cpResponse(struct soap *soap, struct _ns1__cpResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__cpResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__cpResponse * SOAP_FMAC4 soap_in__ns1__cpResponse(struct soap *soap, const char *tag, struct _ns1__cpResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__cpResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__cpResponse, sizeof(struct _ns1__cpResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__cpResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__cpResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__cpResponse, 0, sizeof(struct _ns1__cpResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__cp(struct soap *soap, struct _ns1__cp *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_string(soap, &a->in1); soap_default_xsd__boolean(soap, &a->in2); soap_default_xsd__boolean(soap, &a->in3); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__cp(struct soap *soap, const struct _ns1__cp *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_string(soap, &a->in1); soap_embedded(soap, &a->in2, SOAP_TYPE_xsd__boolean); soap_embedded(soap, &a->in3, SOAP_TYPE_xsd__boolean); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__cp(struct soap *soap, const struct _ns1__cp *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__cp); if (soap_out__ns1__cp(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__cp(struct soap *soap, const char *tag, int id, const struct _ns1__cp *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__cp), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_out_xsd__boolean(soap, "ns1:in2", -1, &a->in2, ""); soap_out_xsd__boolean(soap, "ns1:in3", -1, &a->in3, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__cp * SOAP_FMAC4 soap_get__ns1__cp(struct soap *soap, struct _ns1__cp *p, const char *tag, const char *type) { if ((p = soap_in__ns1__cp(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__cp * SOAP_FMAC4 soap_in__ns1__cp(struct soap *soap, const char *tag, struct _ns1__cp *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1, soap_flag_in2 = 1, soap_flag_in3 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__cp *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__cp, sizeof(struct _ns1__cp), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__cp(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap_flag_in2 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_xsd__boolean(soap, "ns1:in2", &a->in2, "xsd:boolean")) { soap_flag_in2--; continue; } if (soap_flag_in3 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_xsd__boolean(soap, "ns1:in3", &a->in3, "xsd:boolean")) { soap_flag_in3--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__cp *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__cp, 0, sizeof(struct _ns1__cp), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0 || soap_flag_in2 > 0 || soap_flag_in3 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__uploadByteArrayResponse(struct soap *soap, struct _ns1__uploadByteArrayResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__uploadByteArrayResponse(struct soap *soap, const struct _ns1__uploadByteArrayResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__uploadByteArrayResponse(struct soap *soap, const struct _ns1__uploadByteArrayResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__uploadByteArrayResponse); if (soap_out__ns1__uploadByteArrayResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__uploadByteArrayResponse(struct soap *soap, const char *tag, int id, const struct _ns1__uploadByteArrayResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__uploadByteArrayResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__uploadByteArrayResponse * SOAP_FMAC4 soap_get__ns1__uploadByteArrayResponse(struct soap *soap, struct _ns1__uploadByteArrayResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__uploadByteArrayResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__uploadByteArrayResponse * SOAP_FMAC4 soap_in__ns1__uploadByteArrayResponse(struct soap *soap, const char *tag, struct _ns1__uploadByteArrayResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__uploadByteArrayResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__uploadByteArrayResponse, sizeof(struct _ns1__uploadByteArrayResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__uploadByteArrayResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__uploadByteArrayResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__uploadByteArrayResponse, 0, sizeof(struct _ns1__uploadByteArrayResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__uploadByteArray(struct soap *soap, struct _ns1__uploadByteArray *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->in0 = NULL; soap_default_string(soap, &a->in1); soap_default_xsd__boolean(soap, &a->in2); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__uploadByteArray(struct soap *soap, const struct _ns1__uploadByteArray *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerToxsd__base64Binary(soap, &a->in0); soap_serialize_string(soap, &a->in1); soap_embedded(soap, &a->in2, SOAP_TYPE_xsd__boolean); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__uploadByteArray(struct soap *soap, const struct _ns1__uploadByteArray *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__uploadByteArray); if (soap_out__ns1__uploadByteArray(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__uploadByteArray(struct soap *soap, const char *tag, int id, const struct _ns1__uploadByteArray *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__uploadByteArray), type); soap_out_PointerToxsd__base64Binary(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_out_xsd__boolean(soap, "ns1:in2", -1, &a->in2, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__uploadByteArray * SOAP_FMAC4 soap_get__ns1__uploadByteArray(struct soap *soap, struct _ns1__uploadByteArray *p, const char *tag, const char *type) { if ((p = soap_in__ns1__uploadByteArray(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__uploadByteArray * SOAP_FMAC4 soap_in__ns1__uploadByteArray(struct soap *soap, const char *tag, struct _ns1__uploadByteArray *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1, soap_flag_in2 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__uploadByteArray *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__uploadByteArray, sizeof(struct _ns1__uploadByteArray), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__uploadByteArray(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerToxsd__base64Binary(soap, "ns1:in0", &a->in0, "xsd:base64Binary")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap_flag_in2 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_xsd__boolean(soap, "ns1:in2", &a->in2, "xsd:boolean")) { soap_flag_in2--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__uploadByteArray *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__uploadByteArray, 0, sizeof(struct _ns1__uploadByteArray), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0 || soap_flag_in2 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__submitJobResponse(struct soap *soap, struct _ns1__submitJobResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__submitJobResponse(struct soap *soap, const struct _ns1__submitJobResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__submitJobResponse(struct soap *soap, const struct _ns1__submitJobResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__submitJobResponse); if (soap_out__ns1__submitJobResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__submitJobResponse(struct soap *soap, const char *tag, int id, const struct _ns1__submitJobResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__submitJobResponse), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__submitJobResponse * SOAP_FMAC4 soap_get__ns1__submitJobResponse(struct soap *soap, struct _ns1__submitJobResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__submitJobResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__submitJobResponse * SOAP_FMAC4 soap_in__ns1__submitJobResponse(struct soap *soap, const char *tag, struct _ns1__submitJobResponse *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__submitJobResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__submitJobResponse, sizeof(struct _ns1__submitJobResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__submitJobResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__submitJobResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__submitJobResponse, 0, sizeof(struct _ns1__submitJobResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__submitJob(struct soap *soap, struct _ns1__submitJob *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_string(soap, &a->in1); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__submitJob(struct soap *soap, const struct _ns1__submitJob *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_string(soap, &a->in1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__submitJob(struct soap *soap, const struct _ns1__submitJob *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__submitJob); if (soap_out__ns1__submitJob(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__submitJob(struct soap *soap, const char *tag, int id, const struct _ns1__submitJob *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__submitJob), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__submitJob * SOAP_FMAC4 soap_get__ns1__submitJob(struct soap *soap, struct _ns1__submitJob *p, const char *tag, const char *type) { if ((p = soap_in__ns1__submitJob(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__submitJob * SOAP_FMAC4 soap_in__ns1__submitJob(struct soap *soap, const char *tag, struct _ns1__submitJob *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__submitJob *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__submitJob, sizeof(struct _ns1__submitJob), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__submitJob(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__submitJob *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__submitJob, 0, sizeof(struct _ns1__submitJob), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__logoutResponse(struct soap *soap, struct _ns1__logoutResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__logoutResponse(struct soap *soap, const struct _ns1__logoutResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__logoutResponse(struct soap *soap, const struct _ns1__logoutResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__logoutResponse); if (soap_out__ns1__logoutResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__logoutResponse(struct soap *soap, const char *tag, int id, const struct _ns1__logoutResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__logoutResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__logoutResponse * SOAP_FMAC4 soap_get__ns1__logoutResponse(struct soap *soap, struct _ns1__logoutResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__logoutResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__logoutResponse * SOAP_FMAC4 soap_in__ns1__logoutResponse(struct soap *soap, const char *tag, struct _ns1__logoutResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__logoutResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__logoutResponse, sizeof(struct _ns1__logoutResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__logoutResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__logoutResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__logoutResponse, 0, sizeof(struct _ns1__logoutResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__logout(struct soap *soap, struct _ns1__logout *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__logout(struct soap *soap, const struct _ns1__logout *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__logout(struct soap *soap, const struct _ns1__logout *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__logout); if (soap_out__ns1__logout(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__logout(struct soap *soap, const char *tag, int id, const struct _ns1__logout *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__logout), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__logout * SOAP_FMAC4 soap_get__ns1__logout(struct soap *soap, struct _ns1__logout *p, const char *tag, const char *type) { if ((p = soap_in__ns1__logout(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__logout * SOAP_FMAC4 soap_in__ns1__logout(struct soap *soap, const char *tag, struct _ns1__logout *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__logout *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__logout, sizeof(struct _ns1__logout), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__logout(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__logout *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__logout, 0, sizeof(struct _ns1__logout), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__setJobDescription_USCOREstringResponse(struct soap *soap, struct _ns1__setJobDescription_USCOREstringResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__setJobDescription_USCOREstringResponse(struct soap *soap, const struct _ns1__setJobDescription_USCOREstringResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__setJobDescription_USCOREstringResponse(struct soap *soap, const struct _ns1__setJobDescription_USCOREstringResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__setJobDescription_USCOREstringResponse); if (soap_out__ns1__setJobDescription_USCOREstringResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__setJobDescription_USCOREstringResponse(struct soap *soap, const char *tag, int id, const struct _ns1__setJobDescription_USCOREstringResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__setJobDescription_USCOREstringResponse), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__setJobDescription_USCOREstringResponse * SOAP_FMAC4 soap_get__ns1__setJobDescription_USCOREstringResponse(struct soap *soap, struct _ns1__setJobDescription_USCOREstringResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__setJobDescription_USCOREstringResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__setJobDescription_USCOREstringResponse * SOAP_FMAC4 soap_in__ns1__setJobDescription_USCOREstringResponse(struct soap *soap, const char *tag, struct _ns1__setJobDescription_USCOREstringResponse *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__setJobDescription_USCOREstringResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__setJobDescription_USCOREstringResponse, sizeof(struct _ns1__setJobDescription_USCOREstringResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__setJobDescription_USCOREstringResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__setJobDescription_USCOREstringResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__setJobDescription_USCOREstringResponse, 0, sizeof(struct _ns1__setJobDescription_USCOREstringResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__setJobDescription_USCOREstring(struct soap *soap, struct _ns1__setJobDescription_USCOREstring *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_string(soap, &a->in1); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__setJobDescription_USCOREstring(struct soap *soap, const struct _ns1__setJobDescription_USCOREstring *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_string(soap, &a->in1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__setJobDescription_USCOREstring(struct soap *soap, const struct _ns1__setJobDescription_USCOREstring *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__setJobDescription_USCOREstring); if (soap_out__ns1__setJobDescription_USCOREstring(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__setJobDescription_USCOREstring(struct soap *soap, const char *tag, int id, const struct _ns1__setJobDescription_USCOREstring *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__setJobDescription_USCOREstring), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__setJobDescription_USCOREstring * SOAP_FMAC4 soap_get__ns1__setJobDescription_USCOREstring(struct soap *soap, struct _ns1__setJobDescription_USCOREstring *p, const char *tag, const char *type) { if ((p = soap_in__ns1__setJobDescription_USCOREstring(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__setJobDescription_USCOREstring * SOAP_FMAC4 soap_in__ns1__setJobDescription_USCOREstring(struct soap *soap, const char *tag, struct _ns1__setJobDescription_USCOREstring *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__setJobDescription_USCOREstring *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__setJobDescription_USCOREstring, sizeof(struct _ns1__setJobDescription_USCOREstring), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__setJobDescription_USCOREstring(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__setJobDescription_USCOREstring *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__setJobDescription_USCOREstring, 0, sizeof(struct _ns1__setJobDescription_USCOREstring), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__calculateRelativeJobDirectoryResponse(struct soap *soap, struct _ns1__calculateRelativeJobDirectoryResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__calculateRelativeJobDirectoryResponse(struct soap *soap, const struct _ns1__calculateRelativeJobDirectoryResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__calculateRelativeJobDirectoryResponse(struct soap *soap, const struct _ns1__calculateRelativeJobDirectoryResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__calculateRelativeJobDirectoryResponse); if (soap_out__ns1__calculateRelativeJobDirectoryResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__calculateRelativeJobDirectoryResponse(struct soap *soap, const char *tag, int id, const struct _ns1__calculateRelativeJobDirectoryResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__calculateRelativeJobDirectoryResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__calculateRelativeJobDirectoryResponse * SOAP_FMAC4 soap_get__ns1__calculateRelativeJobDirectoryResponse(struct soap *soap, struct _ns1__calculateRelativeJobDirectoryResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__calculateRelativeJobDirectoryResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__calculateRelativeJobDirectoryResponse * SOAP_FMAC4 soap_in__ns1__calculateRelativeJobDirectoryResponse(struct soap *soap, const char *tag, struct _ns1__calculateRelativeJobDirectoryResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__calculateRelativeJobDirectoryResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__calculateRelativeJobDirectoryResponse, sizeof(struct _ns1__calculateRelativeJobDirectoryResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__calculateRelativeJobDirectoryResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__calculateRelativeJobDirectoryResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__calculateRelativeJobDirectoryResponse, 0, sizeof(struct _ns1__calculateRelativeJobDirectoryResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__calculateRelativeJobDirectory(struct soap *soap, struct _ns1__calculateRelativeJobDirectory *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__calculateRelativeJobDirectory(struct soap *soap, const struct _ns1__calculateRelativeJobDirectory *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__calculateRelativeJobDirectory(struct soap *soap, const struct _ns1__calculateRelativeJobDirectory *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__calculateRelativeJobDirectory); if (soap_out__ns1__calculateRelativeJobDirectory(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__calculateRelativeJobDirectory(struct soap *soap, const char *tag, int id, const struct _ns1__calculateRelativeJobDirectory *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__calculateRelativeJobDirectory), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__calculateRelativeJobDirectory * SOAP_FMAC4 soap_get__ns1__calculateRelativeJobDirectory(struct soap *soap, struct _ns1__calculateRelativeJobDirectory *p, const char *tag, const char *type) { if ((p = soap_in__ns1__calculateRelativeJobDirectory(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__calculateRelativeJobDirectory * SOAP_FMAC4 soap_in__ns1__calculateRelativeJobDirectory(struct soap *soap, const char *tag, struct _ns1__calculateRelativeJobDirectory *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__calculateRelativeJobDirectory *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__calculateRelativeJobDirectory, sizeof(struct _ns1__calculateRelativeJobDirectory), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__calculateRelativeJobDirectory(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__calculateRelativeJobDirectory *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__calculateRelativeJobDirectory, 0, sizeof(struct _ns1__calculateRelativeJobDirectory), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getApplicationDetails1Response(struct soap *soap, struct _ns1__getApplicationDetails1Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getApplicationDetails1Response(struct soap *soap, const struct _ns1__getApplicationDetails1Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__anyType2anyTypeMap(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getApplicationDetails1Response(struct soap *soap, const struct _ns1__getApplicationDetails1Response *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getApplicationDetails1Response); if (soap_out__ns1__getApplicationDetails1Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getApplicationDetails1Response(struct soap *soap, const char *tag, int id, const struct _ns1__getApplicationDetails1Response *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getApplicationDetails1Response), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__anyType2anyTypeMap(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getApplicationDetails1Response * SOAP_FMAC4 soap_get__ns1__getApplicationDetails1Response(struct soap *soap, struct _ns1__getApplicationDetails1Response *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getApplicationDetails1Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getApplicationDetails1Response * SOAP_FMAC4 soap_in__ns1__getApplicationDetails1Response(struct soap *soap, const char *tag, struct _ns1__getApplicationDetails1Response *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getApplicationDetails1Response *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getApplicationDetails1Response, sizeof(struct _ns1__getApplicationDetails1Response), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getApplicationDetails1Response(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__anyType2anyTypeMap(soap, "ns1:out", &a->out, "ns1:anyType2anyTypeMap")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getApplicationDetails1Response *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getApplicationDetails1Response, 0, sizeof(struct _ns1__getApplicationDetails1Response), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getApplicationDetails1(struct soap *soap, struct _ns1__getApplicationDetails1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_string(soap, &a->in1); soap_default_string(soap, &a->in2); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getApplicationDetails1(struct soap *soap, const struct _ns1__getApplicationDetails1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_string(soap, &a->in1); soap_serialize_string(soap, &a->in2); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getApplicationDetails1(struct soap *soap, const struct _ns1__getApplicationDetails1 *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getApplicationDetails1); if (soap_out__ns1__getApplicationDetails1(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getApplicationDetails1(struct soap *soap, const char *tag, int id, const struct _ns1__getApplicationDetails1 *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getApplicationDetails1), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_out_string(soap, "ns1:in2", -1, &a->in2, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getApplicationDetails1 * SOAP_FMAC4 soap_get__ns1__getApplicationDetails1(struct soap *soap, struct _ns1__getApplicationDetails1 *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getApplicationDetails1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getApplicationDetails1 * SOAP_FMAC4 soap_in__ns1__getApplicationDetails1(struct soap *soap, const char *tag, struct _ns1__getApplicationDetails1 *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1, soap_flag_in2 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getApplicationDetails1 *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getApplicationDetails1, sizeof(struct _ns1__getApplicationDetails1), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getApplicationDetails1(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap_flag_in2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in2", &a->in2, "xsd:string")) { soap_flag_in2--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getApplicationDetails1 *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getApplicationDetails1, 0, sizeof(struct _ns1__getApplicationDetails1), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0 || soap_flag_in2 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__lsResponse(struct soap *soap, struct _ns1__lsResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__lsResponse(struct soap *soap, const struct _ns1__lsResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__lsResponse(struct soap *soap, const struct _ns1__lsResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__lsResponse); if (soap_out__ns1__lsResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__lsResponse(struct soap *soap, const char *tag, int id, const struct _ns1__lsResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__lsResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_outliteral(soap, "ns1:out", &a->out, NULL); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__lsResponse * SOAP_FMAC4 soap_get__ns1__lsResponse(struct soap *soap, struct _ns1__lsResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__lsResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__lsResponse * SOAP_FMAC4 soap_in__ns1__lsResponse(struct soap *soap, const char *tag, struct _ns1__lsResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__lsResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__lsResponse, sizeof(struct _ns1__lsResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__lsResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_inliteral(soap, "ns1:out", &a->out)) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__lsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__lsResponse, 0, sizeof(struct _ns1__lsResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__ls(struct soap *soap, struct _ns1__ls *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_int(soap, &a->in1); soap_default_xsd__boolean(soap, &a->in2); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__ls(struct soap *soap, const struct _ns1__ls *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_embedded(soap, &a->in2, SOAP_TYPE_xsd__boolean); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__ls(struct soap *soap, const struct _ns1__ls *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__ls); if (soap_out__ns1__ls(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__ls(struct soap *soap, const char *tag, int id, const struct _ns1__ls *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__ls), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_int(soap, "ns1:in1", -1, &a->in1, ""); soap_out_xsd__boolean(soap, "ns1:in2", -1, &a->in2, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__ls * SOAP_FMAC4 soap_get__ns1__ls(struct soap *soap, struct _ns1__ls *p, const char *tag, const char *type) { if ((p = soap_in__ns1__ls(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__ls * SOAP_FMAC4 soap_in__ns1__ls(struct soap *soap, const char *tag, struct _ns1__ls *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1, soap_flag_in2 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__ls *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__ls, sizeof(struct _ns1__ls), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__ls(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_int(soap, "ns1:in1", &a->in1, "xsd:int")) { soap_flag_in1--; continue; } if (soap_flag_in2 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_xsd__boolean(soap, "ns1:in2", &a->in2, "xsd:boolean")) { soap_flag_in2--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__ls *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__ls, 0, sizeof(struct _ns1__ls), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0 || soap_flag_in2 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__lastModifiedResponse(struct soap *soap, struct _ns1__lastModifiedResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_LONG64(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__lastModifiedResponse(struct soap *soap, const struct _ns1__lastModifiedResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_embedded(soap, &a->out, SOAP_TYPE_LONG64); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__lastModifiedResponse(struct soap *soap, const struct _ns1__lastModifiedResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__lastModifiedResponse); if (soap_out__ns1__lastModifiedResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__lastModifiedResponse(struct soap *soap, const char *tag, int id, const struct _ns1__lastModifiedResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__lastModifiedResponse), type); soap_element_result(soap, "ns1:out"); soap_out_LONG64(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__lastModifiedResponse * SOAP_FMAC4 soap_get__ns1__lastModifiedResponse(struct soap *soap, struct _ns1__lastModifiedResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__lastModifiedResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__lastModifiedResponse * SOAP_FMAC4 soap_in__ns1__lastModifiedResponse(struct soap *soap, const char *tag, struct _ns1__lastModifiedResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__lastModifiedResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__lastModifiedResponse, sizeof(struct _ns1__lastModifiedResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__lastModifiedResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_LONG64(soap, "ns1:out", &a->out, "xsd:long")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__lastModifiedResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__lastModifiedResponse, 0, sizeof(struct _ns1__lastModifiedResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__lastModified(struct soap *soap, struct _ns1__lastModified *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__lastModified(struct soap *soap, const struct _ns1__lastModified *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__lastModified(struct soap *soap, const struct _ns1__lastModified *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__lastModified); if (soap_out__ns1__lastModified(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__lastModified(struct soap *soap, const char *tag, int id, const struct _ns1__lastModified *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__lastModified), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__lastModified * SOAP_FMAC4 soap_get__ns1__lastModified(struct soap *soap, struct _ns1__lastModified *p, const char *tag, const char *type) { if ((p = soap_in__ns1__lastModified(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__lastModified * SOAP_FMAC4 soap_in__ns1__lastModified(struct soap *soap, const char *tag, struct _ns1__lastModified *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__lastModified *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__lastModified, sizeof(struct _ns1__lastModified), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__lastModified(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__lastModified *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__lastModified, 0, sizeof(struct _ns1__lastModified), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getSiteResponse(struct soap *soap, struct _ns1__getSiteResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getSiteResponse(struct soap *soap, const struct _ns1__getSiteResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getSiteResponse(struct soap *soap, const struct _ns1__getSiteResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getSiteResponse); if (soap_out__ns1__getSiteResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getSiteResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getSiteResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getSiteResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getSiteResponse * SOAP_FMAC4 soap_get__ns1__getSiteResponse(struct soap *soap, struct _ns1__getSiteResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getSiteResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSiteResponse * SOAP_FMAC4 soap_in__ns1__getSiteResponse(struct soap *soap, const char *tag, struct _ns1__getSiteResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getSiteResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getSiteResponse, sizeof(struct _ns1__getSiteResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getSiteResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getSiteResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getSiteResponse, 0, sizeof(struct _ns1__getSiteResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getSite(struct soap *soap, struct _ns1__getSite *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getSite(struct soap *soap, const struct _ns1__getSite *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getSite(struct soap *soap, const struct _ns1__getSite *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getSite); if (soap_out__ns1__getSite(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getSite(struct soap *soap, const char *tag, int id, const struct _ns1__getSite *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getSite), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getSite * SOAP_FMAC4 soap_get__ns1__getSite(struct soap *soap, struct _ns1__getSite *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getSite(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSite * SOAP_FMAC4 soap_in__ns1__getSite(struct soap *soap, const char *tag, struct _ns1__getSite *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getSite *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getSite, sizeof(struct _ns1__getSite), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getSite(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getSite *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getSite, 0, sizeof(struct _ns1__getSite), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__ps_USCOREstringResponse(struct soap *soap, struct _ns1__ps_USCOREstringResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__ps_USCOREstringResponse(struct soap *soap, const struct _ns1__ps_USCOREstringResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__ps_USCOREstringResponse(struct soap *soap, const struct _ns1__ps_USCOREstringResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__ps_USCOREstringResponse); if (soap_out__ns1__ps_USCOREstringResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__ps_USCOREstringResponse(struct soap *soap, const char *tag, int id, const struct _ns1__ps_USCOREstringResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__ps_USCOREstringResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__ps_USCOREstringResponse * SOAP_FMAC4 soap_get__ns1__ps_USCOREstringResponse(struct soap *soap, struct _ns1__ps_USCOREstringResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__ps_USCOREstringResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__ps_USCOREstringResponse * SOAP_FMAC4 soap_in__ns1__ps_USCOREstringResponse(struct soap *soap, const char *tag, struct _ns1__ps_USCOREstringResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__ps_USCOREstringResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__ps_USCOREstringResponse, sizeof(struct _ns1__ps_USCOREstringResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__ps_USCOREstringResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__ps_USCOREstringResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__ps_USCOREstringResponse, 0, sizeof(struct _ns1__ps_USCOREstringResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__ps_USCOREstring(struct soap *soap, struct _ns1__ps_USCOREstring *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__ps_USCOREstring(struct soap *soap, const struct _ns1__ps_USCOREstring *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__ps_USCOREstring(struct soap *soap, const struct _ns1__ps_USCOREstring *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__ps_USCOREstring); if (soap_out__ns1__ps_USCOREstring(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__ps_USCOREstring(struct soap *soap, const char *tag, int id, const struct _ns1__ps_USCOREstring *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__ps_USCOREstring), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__ps_USCOREstring * SOAP_FMAC4 soap_get__ns1__ps_USCOREstring(struct soap *soap, struct _ns1__ps_USCOREstring *p, const char *tag, const char *type) { if ((p = soap_in__ns1__ps_USCOREstring(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__ps_USCOREstring * SOAP_FMAC4 soap_in__ns1__ps_USCOREstring(struct soap *soap, const char *tag, struct _ns1__ps_USCOREstring *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__ps_USCOREstring *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__ps_USCOREstring, sizeof(struct _ns1__ps_USCOREstring), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__ps_USCOREstring(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__ps_USCOREstring *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__ps_USCOREstring, 0, sizeof(struct _ns1__ps_USCOREstring), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__uploadByteArray1Response(struct soap *soap, struct _ns1__uploadByteArray1Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__uploadByteArray1Response(struct soap *soap, const struct _ns1__uploadByteArray1Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__uploadByteArray1Response(struct soap *soap, const struct _ns1__uploadByteArray1Response *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__uploadByteArray1Response); if (soap_out__ns1__uploadByteArray1Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__uploadByteArray1Response(struct soap *soap, const char *tag, int id, const struct _ns1__uploadByteArray1Response *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__uploadByteArray1Response), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__uploadByteArray1Response * SOAP_FMAC4 soap_get__ns1__uploadByteArray1Response(struct soap *soap, struct _ns1__uploadByteArray1Response *p, const char *tag, const char *type) { if ((p = soap_in__ns1__uploadByteArray1Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__uploadByteArray1Response * SOAP_FMAC4 soap_in__ns1__uploadByteArray1Response(struct soap *soap, const char *tag, struct _ns1__uploadByteArray1Response *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__uploadByteArray1Response *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__uploadByteArray1Response, sizeof(struct _ns1__uploadByteArray1Response), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__uploadByteArray1Response(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__uploadByteArray1Response *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__uploadByteArray1Response, 0, sizeof(struct _ns1__uploadByteArray1Response), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__uploadByteArray1(struct soap *soap, struct _ns1__uploadByteArray1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->in0 = NULL; soap_default_string(soap, &a->in1); soap_default_xsd__boolean(soap, &a->in2); soap_default_int(soap, &a->in3); soap_default_int(soap, &a->in4); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__uploadByteArray1(struct soap *soap, const struct _ns1__uploadByteArray1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerToxsd__base64Binary(soap, &a->in0); soap_serialize_string(soap, &a->in1); soap_embedded(soap, &a->in2, SOAP_TYPE_xsd__boolean); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__uploadByteArray1(struct soap *soap, const struct _ns1__uploadByteArray1 *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__uploadByteArray1); if (soap_out__ns1__uploadByteArray1(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__uploadByteArray1(struct soap *soap, const char *tag, int id, const struct _ns1__uploadByteArray1 *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__uploadByteArray1), type); soap_out_PointerToxsd__base64Binary(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_out_xsd__boolean(soap, "ns1:in2", -1, &a->in2, ""); soap_out_int(soap, "ns1:in3", -1, &a->in3, ""); soap_out_int(soap, "ns1:in4", -1, &a->in4, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__uploadByteArray1 * SOAP_FMAC4 soap_get__ns1__uploadByteArray1(struct soap *soap, struct _ns1__uploadByteArray1 *p, const char *tag, const char *type) { if ((p = soap_in__ns1__uploadByteArray1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__uploadByteArray1 * SOAP_FMAC4 soap_in__ns1__uploadByteArray1(struct soap *soap, const char *tag, struct _ns1__uploadByteArray1 *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1, soap_flag_in2 = 1, soap_flag_in3 = 1, soap_flag_in4 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__uploadByteArray1 *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__uploadByteArray1, sizeof(struct _ns1__uploadByteArray1), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__uploadByteArray1(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerToxsd__base64Binary(soap, "ns1:in0", &a->in0, "xsd:base64Binary")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap_flag_in2 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_xsd__boolean(soap, "ns1:in2", &a->in2, "xsd:boolean")) { soap_flag_in2--; continue; } if (soap_flag_in3 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_int(soap, "ns1:in3", &a->in3, "xsd:int")) { soap_flag_in3--; continue; } if (soap_flag_in4 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_int(soap, "ns1:in4", &a->in4, "xsd:int")) { soap_flag_in4--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__uploadByteArray1 *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__uploadByteArray1, 0, sizeof(struct _ns1__uploadByteArray1), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0 || soap_flag_in2 > 0 || soap_flag_in3 > 0 || soap_flag_in4 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getVersionsOfApplicationOnSiteResponse(struct soap *soap, struct _ns1__getVersionsOfApplicationOnSiteResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getVersionsOfApplicationOnSiteResponse(struct soap *soap, const struct _ns1__getVersionsOfApplicationOnSiteResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__ArrayOfString(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getVersionsOfApplicationOnSiteResponse(struct soap *soap, const struct _ns1__getVersionsOfApplicationOnSiteResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getVersionsOfApplicationOnSiteResponse); if (soap_out__ns1__getVersionsOfApplicationOnSiteResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getVersionsOfApplicationOnSiteResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getVersionsOfApplicationOnSiteResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getVersionsOfApplicationOnSiteResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__ArrayOfString(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getVersionsOfApplicationOnSiteResponse * SOAP_FMAC4 soap_get__ns1__getVersionsOfApplicationOnSiteResponse(struct soap *soap, struct _ns1__getVersionsOfApplicationOnSiteResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getVersionsOfApplicationOnSiteResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getVersionsOfApplicationOnSiteResponse * SOAP_FMAC4 soap_in__ns1__getVersionsOfApplicationOnSiteResponse(struct soap *soap, const char *tag, struct _ns1__getVersionsOfApplicationOnSiteResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getVersionsOfApplicationOnSiteResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getVersionsOfApplicationOnSiteResponse, sizeof(struct _ns1__getVersionsOfApplicationOnSiteResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getVersionsOfApplicationOnSiteResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:out", &a->out, "ns1:ArrayOfString")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getVersionsOfApplicationOnSiteResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getVersionsOfApplicationOnSiteResponse, 0, sizeof(struct _ns1__getVersionsOfApplicationOnSiteResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getVersionsOfApplicationOnSite(struct soap *soap, struct _ns1__getVersionsOfApplicationOnSite *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_string(soap, &a->in1); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getVersionsOfApplicationOnSite(struct soap *soap, const struct _ns1__getVersionsOfApplicationOnSite *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_string(soap, &a->in1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getVersionsOfApplicationOnSite(struct soap *soap, const struct _ns1__getVersionsOfApplicationOnSite *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getVersionsOfApplicationOnSite); if (soap_out__ns1__getVersionsOfApplicationOnSite(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getVersionsOfApplicationOnSite(struct soap *soap, const char *tag, int id, const struct _ns1__getVersionsOfApplicationOnSite *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getVersionsOfApplicationOnSite), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getVersionsOfApplicationOnSite * SOAP_FMAC4 soap_get__ns1__getVersionsOfApplicationOnSite(struct soap *soap, struct _ns1__getVersionsOfApplicationOnSite *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getVersionsOfApplicationOnSite(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getVersionsOfApplicationOnSite * SOAP_FMAC4 soap_in__ns1__getVersionsOfApplicationOnSite(struct soap *soap, const char *tag, struct _ns1__getVersionsOfApplicationOnSite *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getVersionsOfApplicationOnSite *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getVersionsOfApplicationOnSite, sizeof(struct _ns1__getVersionsOfApplicationOnSite), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getVersionsOfApplicationOnSite(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getVersionsOfApplicationOnSite *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getVersionsOfApplicationOnSite, 0, sizeof(struct _ns1__getVersionsOfApplicationOnSite), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getAllSubmissionLocations1Response(struct soap *soap, struct _ns1__getAllSubmissionLocations1Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getAllSubmissionLocations1Response(struct soap *soap, const struct _ns1__getAllSubmissionLocations1Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__ArrayOfString(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getAllSubmissionLocations1Response(struct soap *soap, const struct _ns1__getAllSubmissionLocations1Response *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getAllSubmissionLocations1Response); if (soap_out__ns1__getAllSubmissionLocations1Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getAllSubmissionLocations1Response(struct soap *soap, const char *tag, int id, const struct _ns1__getAllSubmissionLocations1Response *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getAllSubmissionLocations1Response), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__ArrayOfString(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getAllSubmissionLocations1Response * SOAP_FMAC4 soap_get__ns1__getAllSubmissionLocations1Response(struct soap *soap, struct _ns1__getAllSubmissionLocations1Response *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getAllSubmissionLocations1Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllSubmissionLocations1Response * SOAP_FMAC4 soap_in__ns1__getAllSubmissionLocations1Response(struct soap *soap, const char *tag, struct _ns1__getAllSubmissionLocations1Response *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getAllSubmissionLocations1Response *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getAllSubmissionLocations1Response, sizeof(struct _ns1__getAllSubmissionLocations1Response), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getAllSubmissionLocations1Response(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:out", &a->out, "ns1:ArrayOfString")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getAllSubmissionLocations1Response *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getAllSubmissionLocations1Response, 0, sizeof(struct _ns1__getAllSubmissionLocations1Response), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getAllSubmissionLocations1(struct soap *soap, struct _ns1__getAllSubmissionLocations1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getAllSubmissionLocations1(struct soap *soap, const struct _ns1__getAllSubmissionLocations1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getAllSubmissionLocations1(struct soap *soap, const struct _ns1__getAllSubmissionLocations1 *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getAllSubmissionLocations1); if (soap_out__ns1__getAllSubmissionLocations1(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getAllSubmissionLocations1(struct soap *soap, const char *tag, int id, const struct _ns1__getAllSubmissionLocations1 *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getAllSubmissionLocations1), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getAllSubmissionLocations1 * SOAP_FMAC4 soap_get__ns1__getAllSubmissionLocations1(struct soap *soap, struct _ns1__getAllSubmissionLocations1 *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getAllSubmissionLocations1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllSubmissionLocations1 * SOAP_FMAC4 soap_in__ns1__getAllSubmissionLocations1(struct soap *soap, const char *tag, struct _ns1__getAllSubmissionLocations1 *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getAllSubmissionLocations1 *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getAllSubmissionLocations1, sizeof(struct _ns1__getAllSubmissionLocations1), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getAllSubmissionLocations1(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getAllSubmissionLocations1 *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getAllSubmissionLocations1, 0, sizeof(struct _ns1__getAllSubmissionLocations1), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__createJobResponse(struct soap *soap, struct _ns1__createJobResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__createJobResponse(struct soap *soap, const struct _ns1__createJobResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__createJobResponse(struct soap *soap, const struct _ns1__createJobResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__createJobResponse); if (soap_out__ns1__createJobResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__createJobResponse(struct soap *soap, const char *tag, int id, const struct _ns1__createJobResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__createJobResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__createJobResponse * SOAP_FMAC4 soap_get__ns1__createJobResponse(struct soap *soap, struct _ns1__createJobResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__createJobResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__createJobResponse * SOAP_FMAC4 soap_in__ns1__createJobResponse(struct soap *soap, const char *tag, struct _ns1__createJobResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__createJobResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__createJobResponse, sizeof(struct _ns1__createJobResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__createJobResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__createJobResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__createJobResponse, 0, sizeof(struct _ns1__createJobResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__createJob(struct soap *soap, struct _ns1__createJob *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_int(soap, &a->in1); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__createJob(struct soap *soap, const struct _ns1__createJob *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__createJob(struct soap *soap, const struct _ns1__createJob *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__createJob); if (soap_out__ns1__createJob(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__createJob(struct soap *soap, const char *tag, int id, const struct _ns1__createJob *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__createJob), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_int(soap, "ns1:in1", -1, &a->in1, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__createJob * SOAP_FMAC4 soap_get__ns1__createJob(struct soap *soap, struct _ns1__createJob *p, const char *tag, const char *type) { if ((p = soap_in__ns1__createJob(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__createJob * SOAP_FMAC4 soap_in__ns1__createJob(struct soap *soap, const char *tag, struct _ns1__createJob *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__createJob *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__createJob, sizeof(struct _ns1__createJob), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__createJob(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_int(soap, "ns1:in1", &a->in1, "xsd:int")) { soap_flag_in1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__createJob *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__createJob, 0, sizeof(struct _ns1__createJob), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getInterfaceVersionResponse(struct soap *soap, struct _ns1__getInterfaceVersionResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_double(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getInterfaceVersionResponse(struct soap *soap, const struct _ns1__getInterfaceVersionResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getInterfaceVersionResponse(struct soap *soap, const struct _ns1__getInterfaceVersionResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getInterfaceVersionResponse); if (soap_out__ns1__getInterfaceVersionResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getInterfaceVersionResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getInterfaceVersionResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getInterfaceVersionResponse), type); soap_element_result(soap, "ns1:out"); soap_out_double(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getInterfaceVersionResponse * SOAP_FMAC4 soap_get__ns1__getInterfaceVersionResponse(struct soap *soap, struct _ns1__getInterfaceVersionResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getInterfaceVersionResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getInterfaceVersionResponse * SOAP_FMAC4 soap_in__ns1__getInterfaceVersionResponse(struct soap *soap, const char *tag, struct _ns1__getInterfaceVersionResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getInterfaceVersionResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getInterfaceVersionResponse, sizeof(struct _ns1__getInterfaceVersionResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getInterfaceVersionResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_double(soap, "ns1:out", &a->out, "xsd:double")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getInterfaceVersionResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getInterfaceVersionResponse, 0, sizeof(struct _ns1__getInterfaceVersionResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getInterfaceVersion(struct soap *soap, struct _ns1__getInterfaceVersion *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getInterfaceVersion(struct soap *soap, const struct _ns1__getInterfaceVersion *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getInterfaceVersion(struct soap *soap, const struct _ns1__getInterfaceVersion *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getInterfaceVersion); if (soap_out__ns1__getInterfaceVersion(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getInterfaceVersion(struct soap *soap, const char *tag, int id, const struct _ns1__getInterfaceVersion *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getInterfaceVersion), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getInterfaceVersion * SOAP_FMAC4 soap_get__ns1__getInterfaceVersion(struct soap *soap, struct _ns1__getInterfaceVersion *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getInterfaceVersion(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getInterfaceVersion * SOAP_FMAC4 soap_in__ns1__getInterfaceVersion(struct soap *soap, const char *tag, struct _ns1__getInterfaceVersion *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getInterfaceVersion *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getInterfaceVersion, sizeof(struct _ns1__getInterfaceVersion), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getInterfaceVersion(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getInterfaceVersion *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getInterfaceVersion, 0, sizeof(struct _ns1__getInterfaceVersion), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getAllSubmissionLocationsResponse(struct soap *soap, struct _ns1__getAllSubmissionLocationsResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getAllSubmissionLocationsResponse(struct soap *soap, const struct _ns1__getAllSubmissionLocationsResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__ArrayOfString(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getAllSubmissionLocationsResponse(struct soap *soap, const struct _ns1__getAllSubmissionLocationsResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getAllSubmissionLocationsResponse); if (soap_out__ns1__getAllSubmissionLocationsResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getAllSubmissionLocationsResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getAllSubmissionLocationsResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getAllSubmissionLocationsResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__ArrayOfString(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getAllSubmissionLocationsResponse * SOAP_FMAC4 soap_get__ns1__getAllSubmissionLocationsResponse(struct soap *soap, struct _ns1__getAllSubmissionLocationsResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getAllSubmissionLocationsResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllSubmissionLocationsResponse * SOAP_FMAC4 soap_in__ns1__getAllSubmissionLocationsResponse(struct soap *soap, const char *tag, struct _ns1__getAllSubmissionLocationsResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getAllSubmissionLocationsResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getAllSubmissionLocationsResponse, sizeof(struct _ns1__getAllSubmissionLocationsResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getAllSubmissionLocationsResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:out", &a->out, "ns1:ArrayOfString")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getAllSubmissionLocationsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getAllSubmissionLocationsResponse, 0, sizeof(struct _ns1__getAllSubmissionLocationsResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getAllSubmissionLocations(struct soap *soap, struct _ns1__getAllSubmissionLocations *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getAllSubmissionLocations(struct soap *soap, const struct _ns1__getAllSubmissionLocations *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getAllSubmissionLocations(struct soap *soap, const struct _ns1__getAllSubmissionLocations *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getAllSubmissionLocations); if (soap_out__ns1__getAllSubmissionLocations(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getAllSubmissionLocations(struct soap *soap, const char *tag, int id, const struct _ns1__getAllSubmissionLocations *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getAllSubmissionLocations), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getAllSubmissionLocations * SOAP_FMAC4 soap_get__ns1__getAllSubmissionLocations(struct soap *soap, struct _ns1__getAllSubmissionLocations *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getAllSubmissionLocations(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllSubmissionLocations * SOAP_FMAC4 soap_in__ns1__getAllSubmissionLocations(struct soap *soap, const char *tag, struct _ns1__getAllSubmissionLocations *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getAllSubmissionLocations *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getAllSubmissionLocations, sizeof(struct _ns1__getAllSubmissionLocations), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getAllSubmissionLocations(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getAllSubmissionLocations *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getAllSubmissionLocations, 0, sizeof(struct _ns1__getAllSubmissionLocations), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__addJobPropertyResponse(struct soap *soap, struct _ns1__addJobPropertyResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__addJobPropertyResponse(struct soap *soap, const struct _ns1__addJobPropertyResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__addJobPropertyResponse(struct soap *soap, const struct _ns1__addJobPropertyResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__addJobPropertyResponse); if (soap_out__ns1__addJobPropertyResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__addJobPropertyResponse(struct soap *soap, const char *tag, int id, const struct _ns1__addJobPropertyResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__addJobPropertyResponse), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__addJobPropertyResponse * SOAP_FMAC4 soap_get__ns1__addJobPropertyResponse(struct soap *soap, struct _ns1__addJobPropertyResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__addJobPropertyResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__addJobPropertyResponse * SOAP_FMAC4 soap_in__ns1__addJobPropertyResponse(struct soap *soap, const char *tag, struct _ns1__addJobPropertyResponse *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__addJobPropertyResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__addJobPropertyResponse, sizeof(struct _ns1__addJobPropertyResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__addJobPropertyResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__addJobPropertyResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__addJobPropertyResponse, 0, sizeof(struct _ns1__addJobPropertyResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__addJobProperty(struct soap *soap, struct _ns1__addJobProperty *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_string(soap, &a->in1); soap_default_string(soap, &a->in2); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__addJobProperty(struct soap *soap, const struct _ns1__addJobProperty *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_string(soap, &a->in1); soap_serialize_string(soap, &a->in2); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__addJobProperty(struct soap *soap, const struct _ns1__addJobProperty *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__addJobProperty); if (soap_out__ns1__addJobProperty(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__addJobProperty(struct soap *soap, const char *tag, int id, const struct _ns1__addJobProperty *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__addJobProperty), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_out_string(soap, "ns1:in2", -1, &a->in2, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__addJobProperty * SOAP_FMAC4 soap_get__ns1__addJobProperty(struct soap *soap, struct _ns1__addJobProperty *p, const char *tag, const char *type) { if ((p = soap_in__ns1__addJobProperty(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__addJobProperty * SOAP_FMAC4 soap_in__ns1__addJobProperty(struct soap *soap, const char *tag, struct _ns1__addJobProperty *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1, soap_flag_in2 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__addJobProperty *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__addJobProperty, sizeof(struct _ns1__addJobProperty), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__addJobProperty(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap_flag_in2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in2", &a->in2, "xsd:string")) { soap_flag_in2--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__addJobProperty *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__addJobProperty, 0, sizeof(struct _ns1__addJobProperty), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0 || soap_flag_in2 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__addJobPropertiesResponse(struct soap *soap, struct _ns1__addJobPropertiesResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__addJobPropertiesResponse(struct soap *soap, const struct _ns1__addJobPropertiesResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__addJobPropertiesResponse(struct soap *soap, const struct _ns1__addJobPropertiesResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__addJobPropertiesResponse); if (soap_out__ns1__addJobPropertiesResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__addJobPropertiesResponse(struct soap *soap, const char *tag, int id, const struct _ns1__addJobPropertiesResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__addJobPropertiesResponse), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__addJobPropertiesResponse * SOAP_FMAC4 soap_get__ns1__addJobPropertiesResponse(struct soap *soap, struct _ns1__addJobPropertiesResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__addJobPropertiesResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__addJobPropertiesResponse * SOAP_FMAC4 soap_in__ns1__addJobPropertiesResponse(struct soap *soap, const char *tag, struct _ns1__addJobPropertiesResponse *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__addJobPropertiesResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__addJobPropertiesResponse, sizeof(struct _ns1__addJobPropertiesResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__addJobPropertiesResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__addJobPropertiesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__addJobPropertiesResponse, 0, sizeof(struct _ns1__addJobPropertiesResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__addJobProperties(struct soap *soap, struct _ns1__addJobProperties *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); a->in1 = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__addJobProperties(struct soap *soap, const struct _ns1__addJobProperties *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_PointerTons1__anyType2anyTypeMap(soap, &a->in1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__addJobProperties(struct soap *soap, const struct _ns1__addJobProperties *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__addJobProperties); if (soap_out__ns1__addJobProperties(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__addJobProperties(struct soap *soap, const char *tag, int id, const struct _ns1__addJobProperties *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__addJobProperties), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_PointerTons1__anyType2anyTypeMap(soap, "ns1:in1", -1, &a->in1, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__addJobProperties * SOAP_FMAC4 soap_get__ns1__addJobProperties(struct soap *soap, struct _ns1__addJobProperties *p, const char *tag, const char *type) { if ((p = soap_in__ns1__addJobProperties(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__addJobProperties * SOAP_FMAC4 soap_in__ns1__addJobProperties(struct soap *soap, const char *tag, struct _ns1__addJobProperties *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__addJobProperties *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__addJobProperties, sizeof(struct _ns1__addJobProperties), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__addJobProperties(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__anyType2anyTypeMap(soap, "ns1:in1", &a->in1, "ns1:anyType2anyTypeMap")) { soap_flag_in1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__addJobProperties *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__addJobProperties, 0, sizeof(struct _ns1__addJobProperties), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getAllAvailableApplicationsResponse(struct soap *soap, struct _ns1__getAllAvailableApplicationsResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getAllAvailableApplicationsResponse(struct soap *soap, const struct _ns1__getAllAvailableApplicationsResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__ArrayOfString(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getAllAvailableApplicationsResponse(struct soap *soap, const struct _ns1__getAllAvailableApplicationsResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getAllAvailableApplicationsResponse); if (soap_out__ns1__getAllAvailableApplicationsResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getAllAvailableApplicationsResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getAllAvailableApplicationsResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getAllAvailableApplicationsResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__ArrayOfString(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getAllAvailableApplicationsResponse * SOAP_FMAC4 soap_get__ns1__getAllAvailableApplicationsResponse(struct soap *soap, struct _ns1__getAllAvailableApplicationsResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getAllAvailableApplicationsResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllAvailableApplicationsResponse * SOAP_FMAC4 soap_in__ns1__getAllAvailableApplicationsResponse(struct soap *soap, const char *tag, struct _ns1__getAllAvailableApplicationsResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getAllAvailableApplicationsResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getAllAvailableApplicationsResponse, sizeof(struct _ns1__getAllAvailableApplicationsResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getAllAvailableApplicationsResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:out", &a->out, "ns1:ArrayOfString")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getAllAvailableApplicationsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getAllAvailableApplicationsResponse, 0, sizeof(struct _ns1__getAllAvailableApplicationsResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getAllAvailableApplications(struct soap *soap, struct _ns1__getAllAvailableApplications *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->in0 = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getAllAvailableApplications(struct soap *soap, const struct _ns1__getAllAvailableApplications *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__ArrayOfString(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getAllAvailableApplications(struct soap *soap, const struct _ns1__getAllAvailableApplications *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getAllAvailableApplications); if (soap_out__ns1__getAllAvailableApplications(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getAllAvailableApplications(struct soap *soap, const char *tag, int id, const struct _ns1__getAllAvailableApplications *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getAllAvailableApplications), type); soap_out_PointerTons1__ArrayOfString(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getAllAvailableApplications * SOAP_FMAC4 soap_get__ns1__getAllAvailableApplications(struct soap *soap, struct _ns1__getAllAvailableApplications *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getAllAvailableApplications(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllAvailableApplications * SOAP_FMAC4 soap_in__ns1__getAllAvailableApplications(struct soap *soap, const char *tag, struct _ns1__getAllAvailableApplications *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getAllAvailableApplications *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getAllAvailableApplications, sizeof(struct _ns1__getAllAvailableApplications), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getAllAvailableApplications(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:in0", &a->in0, "ns1:ArrayOfString")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getAllAvailableApplications *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getAllAvailableApplications, 0, sizeof(struct _ns1__getAllAvailableApplications), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__killResponse(struct soap *soap, struct _ns1__killResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__killResponse(struct soap *soap, const struct _ns1__killResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__killResponse(struct soap *soap, const struct _ns1__killResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__killResponse); if (soap_out__ns1__killResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__killResponse(struct soap *soap, const char *tag, int id, const struct _ns1__killResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__killResponse), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__killResponse * SOAP_FMAC4 soap_get__ns1__killResponse(struct soap *soap, struct _ns1__killResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__killResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__killResponse * SOAP_FMAC4 soap_in__ns1__killResponse(struct soap *soap, const char *tag, struct _ns1__killResponse *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__killResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__killResponse, sizeof(struct _ns1__killResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__killResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__killResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__killResponse, 0, sizeof(struct _ns1__killResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__kill(struct soap *soap, struct _ns1__kill *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_xsd__boolean(soap, &a->in1); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__kill(struct soap *soap, const struct _ns1__kill *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_embedded(soap, &a->in1, SOAP_TYPE_xsd__boolean); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__kill(struct soap *soap, const struct _ns1__kill *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__kill); if (soap_out__ns1__kill(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__kill(struct soap *soap, const char *tag, int id, const struct _ns1__kill *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__kill), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_xsd__boolean(soap, "ns1:in1", -1, &a->in1, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__kill * SOAP_FMAC4 soap_get__ns1__kill(struct soap *soap, struct _ns1__kill *p, const char *tag, const char *type) { if ((p = soap_in__ns1__kill(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__kill * SOAP_FMAC4 soap_in__ns1__kill(struct soap *soap, const char *tag, struct _ns1__kill *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__kill *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__kill, sizeof(struct _ns1__kill), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__kill(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_xsd__boolean(soap, "ns1:in1", &a->in1, "xsd:boolean")) { soap_flag_in1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__kill *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__kill, 0, sizeof(struct _ns1__kill), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__isFolderResponse(struct soap *soap, struct _ns1__isFolderResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_xsd__boolean(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__isFolderResponse(struct soap *soap, const struct _ns1__isFolderResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_embedded(soap, &a->out, SOAP_TYPE_xsd__boolean); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__isFolderResponse(struct soap *soap, const struct _ns1__isFolderResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__isFolderResponse); if (soap_out__ns1__isFolderResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__isFolderResponse(struct soap *soap, const char *tag, int id, const struct _ns1__isFolderResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__isFolderResponse), type); soap_element_result(soap, "ns1:out"); soap_out_xsd__boolean(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__isFolderResponse * SOAP_FMAC4 soap_get__ns1__isFolderResponse(struct soap *soap, struct _ns1__isFolderResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__isFolderResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__isFolderResponse * SOAP_FMAC4 soap_in__ns1__isFolderResponse(struct soap *soap, const char *tag, struct _ns1__isFolderResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__isFolderResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__isFolderResponse, sizeof(struct _ns1__isFolderResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__isFolderResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_xsd__boolean(soap, "ns1:out", &a->out, "xsd:boolean")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__isFolderResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__isFolderResponse, 0, sizeof(struct _ns1__isFolderResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__isFolder(struct soap *soap, struct _ns1__isFolder *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__isFolder(struct soap *soap, const struct _ns1__isFolder *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__isFolder(struct soap *soap, const struct _ns1__isFolder *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__isFolder); if (soap_out__ns1__isFolder(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__isFolder(struct soap *soap, const char *tag, int id, const struct _ns1__isFolder *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__isFolder), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__isFolder * SOAP_FMAC4 soap_get__ns1__isFolder(struct soap *soap, struct _ns1__isFolder *p, const char *tag, const char *type) { if ((p = soap_in__ns1__isFolder(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__isFolder * SOAP_FMAC4 soap_in__ns1__isFolder(struct soap *soap, const char *tag, struct _ns1__isFolder *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__isFolder *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__isFolder, sizeof(struct _ns1__isFolder), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__isFolder(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__isFolder *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__isFolder, 0, sizeof(struct _ns1__isFolder), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__downloadResponse(struct soap *soap, struct _ns1__downloadResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__downloadResponse(struct soap *soap, const struct _ns1__downloadResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerToxsd__base64Binary(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__downloadResponse(struct soap *soap, const struct _ns1__downloadResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__downloadResponse); if (soap_out__ns1__downloadResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__downloadResponse(struct soap *soap, const char *tag, int id, const struct _ns1__downloadResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__downloadResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerToxsd__base64Binary(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__downloadResponse * SOAP_FMAC4 soap_get__ns1__downloadResponse(struct soap *soap, struct _ns1__downloadResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__downloadResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__downloadResponse * SOAP_FMAC4 soap_in__ns1__downloadResponse(struct soap *soap, const char *tag, struct _ns1__downloadResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__downloadResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__downloadResponse, sizeof(struct _ns1__downloadResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__downloadResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerToxsd__base64Binary(soap, "ns1:out", &a->out, "xsd:base64Binary")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__downloadResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__downloadResponse, 0, sizeof(struct _ns1__downloadResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__download(struct soap *soap, struct _ns1__download *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__download(struct soap *soap, const struct _ns1__download *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__download(struct soap *soap, const struct _ns1__download *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__download); if (soap_out__ns1__download(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__download(struct soap *soap, const char *tag, int id, const struct _ns1__download *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__download), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__download * SOAP_FMAC4 soap_get__ns1__download(struct soap *soap, struct _ns1__download *p, const char *tag, const char *type) { if ((p = soap_in__ns1__download(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__download * SOAP_FMAC4 soap_in__ns1__download(struct soap *soap, const char *tag, struct _ns1__download *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__download *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__download, sizeof(struct _ns1__download), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__download(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__download *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__download, 0, sizeof(struct _ns1__download), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getAllJobPropertiesResponse(struct soap *soap, struct _ns1__getAllJobPropertiesResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getAllJobPropertiesResponse(struct soap *soap, const struct _ns1__getAllJobPropertiesResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__anyType2anyTypeMap(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getAllJobPropertiesResponse(struct soap *soap, const struct _ns1__getAllJobPropertiesResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getAllJobPropertiesResponse); if (soap_out__ns1__getAllJobPropertiesResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getAllJobPropertiesResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getAllJobPropertiesResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getAllJobPropertiesResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__anyType2anyTypeMap(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getAllJobPropertiesResponse * SOAP_FMAC4 soap_get__ns1__getAllJobPropertiesResponse(struct soap *soap, struct _ns1__getAllJobPropertiesResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getAllJobPropertiesResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllJobPropertiesResponse * SOAP_FMAC4 soap_in__ns1__getAllJobPropertiesResponse(struct soap *soap, const char *tag, struct _ns1__getAllJobPropertiesResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getAllJobPropertiesResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getAllJobPropertiesResponse, sizeof(struct _ns1__getAllJobPropertiesResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getAllJobPropertiesResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__anyType2anyTypeMap(soap, "ns1:out", &a->out, "ns1:anyType2anyTypeMap")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getAllJobPropertiesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getAllJobPropertiesResponse, 0, sizeof(struct _ns1__getAllJobPropertiesResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getAllJobProperties(struct soap *soap, struct _ns1__getAllJobProperties *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getAllJobProperties(struct soap *soap, const struct _ns1__getAllJobProperties *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getAllJobProperties(struct soap *soap, const struct _ns1__getAllJobProperties *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getAllJobProperties); if (soap_out__ns1__getAllJobProperties(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getAllJobProperties(struct soap *soap, const char *tag, int id, const struct _ns1__getAllJobProperties *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getAllJobProperties), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getAllJobProperties * SOAP_FMAC4 soap_get__ns1__getAllJobProperties(struct soap *soap, struct _ns1__getAllJobProperties *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getAllJobProperties(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllJobProperties * SOAP_FMAC4 soap_in__ns1__getAllJobProperties(struct soap *soap, const char *tag, struct _ns1__getAllJobProperties *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getAllJobProperties *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getAllJobProperties, sizeof(struct _ns1__getAllJobProperties), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getAllJobProperties(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getAllJobProperties *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getAllJobProperties, 0, sizeof(struct _ns1__getAllJobProperties), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getAllJobnamesResponse(struct soap *soap, struct _ns1__getAllJobnamesResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getAllJobnamesResponse(struct soap *soap, const struct _ns1__getAllJobnamesResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__ArrayOfString(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getAllJobnamesResponse(struct soap *soap, const struct _ns1__getAllJobnamesResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getAllJobnamesResponse); if (soap_out__ns1__getAllJobnamesResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getAllJobnamesResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getAllJobnamesResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getAllJobnamesResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__ArrayOfString(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getAllJobnamesResponse * SOAP_FMAC4 soap_get__ns1__getAllJobnamesResponse(struct soap *soap, struct _ns1__getAllJobnamesResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getAllJobnamesResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllJobnamesResponse * SOAP_FMAC4 soap_in__ns1__getAllJobnamesResponse(struct soap *soap, const char *tag, struct _ns1__getAllJobnamesResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getAllJobnamesResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getAllJobnamesResponse, sizeof(struct _ns1__getAllJobnamesResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getAllJobnamesResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:out", &a->out, "ns1:ArrayOfString")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getAllJobnamesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getAllJobnamesResponse, 0, sizeof(struct _ns1__getAllJobnamesResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getAllJobnames(struct soap *soap, struct _ns1__getAllJobnames *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getAllJobnames(struct soap *soap, const struct _ns1__getAllJobnames *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getAllJobnames(struct soap *soap, const struct _ns1__getAllJobnames *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getAllJobnames); if (soap_out__ns1__getAllJobnames(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getAllJobnames(struct soap *soap, const char *tag, int id, const struct _ns1__getAllJobnames *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getAllJobnames), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getAllJobnames * SOAP_FMAC4 soap_get__ns1__getAllJobnames(struct soap *soap, struct _ns1__getAllJobnames *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getAllJobnames(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllJobnames * SOAP_FMAC4 soap_in__ns1__getAllJobnames(struct soap *soap, const char *tag, struct _ns1__getAllJobnames *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getAllJobnames *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getAllJobnames, sizeof(struct _ns1__getAllJobnames), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getAllJobnames(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getAllJobnames *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getAllJobnames, 0, sizeof(struct _ns1__getAllJobnames), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getDNResponse(struct soap *soap, struct _ns1__getDNResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getDNResponse(struct soap *soap, const struct _ns1__getDNResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getDNResponse(struct soap *soap, const struct _ns1__getDNResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getDNResponse); if (soap_out__ns1__getDNResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getDNResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getDNResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getDNResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getDNResponse * SOAP_FMAC4 soap_get__ns1__getDNResponse(struct soap *soap, struct _ns1__getDNResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getDNResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getDNResponse * SOAP_FMAC4 soap_in__ns1__getDNResponse(struct soap *soap, const char *tag, struct _ns1__getDNResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getDNResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getDNResponse, sizeof(struct _ns1__getDNResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getDNResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getDNResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getDNResponse, 0, sizeof(struct _ns1__getDNResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getDN(struct soap *soap, struct _ns1__getDN *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getDN(struct soap *soap, const struct _ns1__getDN *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getDN(struct soap *soap, const struct _ns1__getDN *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getDN); if (soap_out__ns1__getDN(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getDN(struct soap *soap, const char *tag, int id, const struct _ns1__getDN *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getDN), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getDN * SOAP_FMAC4 soap_get__ns1__getDN(struct soap *soap, struct _ns1__getDN *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getDN(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getDN * SOAP_FMAC4 soap_in__ns1__getDN(struct soap *soap, const char *tag, struct _ns1__getDN *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getDN *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getDN, sizeof(struct _ns1__getDN), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getDN(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getDN *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getDN, 0, sizeof(struct _ns1__getDN), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getSubmissionLocationsForApplicationResponse(struct soap *soap, struct _ns1__getSubmissionLocationsForApplicationResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getSubmissionLocationsForApplicationResponse(struct soap *soap, const struct _ns1__getSubmissionLocationsForApplicationResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__ArrayOfString(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getSubmissionLocationsForApplicationResponse(struct soap *soap, const struct _ns1__getSubmissionLocationsForApplicationResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getSubmissionLocationsForApplicationResponse); if (soap_out__ns1__getSubmissionLocationsForApplicationResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getSubmissionLocationsForApplicationResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getSubmissionLocationsForApplicationResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getSubmissionLocationsForApplicationResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__ArrayOfString(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplicationResponse * SOAP_FMAC4 soap_get__ns1__getSubmissionLocationsForApplicationResponse(struct soap *soap, struct _ns1__getSubmissionLocationsForApplicationResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getSubmissionLocationsForApplicationResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplicationResponse * SOAP_FMAC4 soap_in__ns1__getSubmissionLocationsForApplicationResponse(struct soap *soap, const char *tag, struct _ns1__getSubmissionLocationsForApplicationResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getSubmissionLocationsForApplicationResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getSubmissionLocationsForApplicationResponse, sizeof(struct _ns1__getSubmissionLocationsForApplicationResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getSubmissionLocationsForApplicationResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:out", &a->out, "ns1:ArrayOfString")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getSubmissionLocationsForApplicationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getSubmissionLocationsForApplicationResponse, 0, sizeof(struct _ns1__getSubmissionLocationsForApplicationResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getSubmissionLocationsForApplication(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getSubmissionLocationsForApplication(struct soap *soap, const struct _ns1__getSubmissionLocationsForApplication *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getSubmissionLocationsForApplication(struct soap *soap, const struct _ns1__getSubmissionLocationsForApplication *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getSubmissionLocationsForApplication); if (soap_out__ns1__getSubmissionLocationsForApplication(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getSubmissionLocationsForApplication(struct soap *soap, const char *tag, int id, const struct _ns1__getSubmissionLocationsForApplication *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication * SOAP_FMAC4 soap_get__ns1__getSubmissionLocationsForApplication(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getSubmissionLocationsForApplication(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication * SOAP_FMAC4 soap_in__ns1__getSubmissionLocationsForApplication(struct soap *soap, const char *tag, struct _ns1__getSubmissionLocationsForApplication *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getSubmissionLocationsForApplication *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication, sizeof(struct _ns1__getSubmissionLocationsForApplication), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getSubmissionLocationsForApplication(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getSubmissionLocationsForApplication *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getSubmissionLocationsForApplication, 0, sizeof(struct _ns1__getSubmissionLocationsForApplication), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__createJob1Response(struct soap *soap, struct _ns1__createJob1Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__createJob1Response(struct soap *soap, const struct _ns1__createJob1Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__createJob1Response(struct soap *soap, const struct _ns1__createJob1Response *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__createJob1Response); if (soap_out__ns1__createJob1Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__createJob1Response(struct soap *soap, const char *tag, int id, const struct _ns1__createJob1Response *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__createJob1Response), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__createJob1Response * SOAP_FMAC4 soap_get__ns1__createJob1Response(struct soap *soap, struct _ns1__createJob1Response *p, const char *tag, const char *type) { if ((p = soap_in__ns1__createJob1Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__createJob1Response * SOAP_FMAC4 soap_in__ns1__createJob1Response(struct soap *soap, const char *tag, struct _ns1__createJob1Response *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__createJob1Response *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__createJob1Response, sizeof(struct _ns1__createJob1Response), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__createJob1Response(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__createJob1Response *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__createJob1Response, 0, sizeof(struct _ns1__createJob1Response), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__createJob1(struct soap *soap, struct _ns1__createJob1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->in0 = NULL; soap_default_int(soap, &a->in1); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__createJob1(struct soap *soap, const struct _ns1__createJob1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__createJob1(struct soap *soap, const struct _ns1__createJob1 *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__createJob1); if (soap_out__ns1__createJob1(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__createJob1(struct soap *soap, const char *tag, int id, const struct _ns1__createJob1 *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__createJob1), type); soap_outliteral(soap, "ns1:in0", &a->in0, NULL); soap_out_int(soap, "ns1:in1", -1, &a->in1, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__createJob1 * SOAP_FMAC4 soap_get__ns1__createJob1(struct soap *soap, struct _ns1__createJob1 *p, const char *tag, const char *type) { if ((p = soap_in__ns1__createJob1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__createJob1 * SOAP_FMAC4 soap_in__ns1__createJob1(struct soap *soap, const char *tag, struct _ns1__createJob1 *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__createJob1 *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__createJob1, sizeof(struct _ns1__createJob1), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__createJob1(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_inliteral(soap, "ns1:in0", &a->in0)) { soap_flag_in0--; continue; } if (soap_flag_in1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_int(soap, "ns1:in1", &a->in1, "xsd:int")) { soap_flag_in1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__createJob1 *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__createJob1, 0, sizeof(struct _ns1__createJob1), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getApplicationDetailsResponse(struct soap *soap, struct _ns1__getApplicationDetailsResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getApplicationDetailsResponse(struct soap *soap, const struct _ns1__getApplicationDetailsResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__anyType2anyTypeMap(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getApplicationDetailsResponse(struct soap *soap, const struct _ns1__getApplicationDetailsResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getApplicationDetailsResponse); if (soap_out__ns1__getApplicationDetailsResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getApplicationDetailsResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getApplicationDetailsResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getApplicationDetailsResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__anyType2anyTypeMap(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getApplicationDetailsResponse * SOAP_FMAC4 soap_get__ns1__getApplicationDetailsResponse(struct soap *soap, struct _ns1__getApplicationDetailsResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getApplicationDetailsResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getApplicationDetailsResponse * SOAP_FMAC4 soap_in__ns1__getApplicationDetailsResponse(struct soap *soap, const char *tag, struct _ns1__getApplicationDetailsResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getApplicationDetailsResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getApplicationDetailsResponse, sizeof(struct _ns1__getApplicationDetailsResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getApplicationDetailsResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__anyType2anyTypeMap(soap, "ns1:out", &a->out, "ns1:anyType2anyTypeMap")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getApplicationDetailsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getApplicationDetailsResponse, 0, sizeof(struct _ns1__getApplicationDetailsResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getApplicationDetails(struct soap *soap, struct _ns1__getApplicationDetails *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_string(soap, &a->in1); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getApplicationDetails(struct soap *soap, const struct _ns1__getApplicationDetails *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_string(soap, &a->in1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getApplicationDetails(struct soap *soap, const struct _ns1__getApplicationDetails *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getApplicationDetails); if (soap_out__ns1__getApplicationDetails(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getApplicationDetails(struct soap *soap, const char *tag, int id, const struct _ns1__getApplicationDetails *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getApplicationDetails), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getApplicationDetails * SOAP_FMAC4 soap_get__ns1__getApplicationDetails(struct soap *soap, struct _ns1__getApplicationDetails *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getApplicationDetails(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getApplicationDetails * SOAP_FMAC4 soap_in__ns1__getApplicationDetails(struct soap *soap, const char *tag, struct _ns1__getApplicationDetails *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getApplicationDetails *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getApplicationDetails, sizeof(struct _ns1__getApplicationDetails), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getApplicationDetails(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getApplicationDetails *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getApplicationDetails, 0, sizeof(struct _ns1__getApplicationDetails), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getSubmissionLocationsForApplication1Response(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication1Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getSubmissionLocationsForApplication1Response(struct soap *soap, const struct _ns1__getSubmissionLocationsForApplication1Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__ArrayOfString(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getSubmissionLocationsForApplication1Response(struct soap *soap, const struct _ns1__getSubmissionLocationsForApplication1Response *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getSubmissionLocationsForApplication1Response); if (soap_out__ns1__getSubmissionLocationsForApplication1Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getSubmissionLocationsForApplication1Response(struct soap *soap, const char *tag, int id, const struct _ns1__getSubmissionLocationsForApplication1Response *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication1Response), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__ArrayOfString(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication1Response * SOAP_FMAC4 soap_get__ns1__getSubmissionLocationsForApplication1Response(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication1Response *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getSubmissionLocationsForApplication1Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication1Response * SOAP_FMAC4 soap_in__ns1__getSubmissionLocationsForApplication1Response(struct soap *soap, const char *tag, struct _ns1__getSubmissionLocationsForApplication1Response *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getSubmissionLocationsForApplication1Response *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication1Response, sizeof(struct _ns1__getSubmissionLocationsForApplication1Response), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getSubmissionLocationsForApplication1Response(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:out", &a->out, "ns1:ArrayOfString")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getSubmissionLocationsForApplication1Response *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getSubmissionLocationsForApplication1Response, 0, sizeof(struct _ns1__getSubmissionLocationsForApplication1Response), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getSubmissionLocationsForApplication1(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_string(soap, &a->in1); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getSubmissionLocationsForApplication1(struct soap *soap, const struct _ns1__getSubmissionLocationsForApplication1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_string(soap, &a->in1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getSubmissionLocationsForApplication1(struct soap *soap, const struct _ns1__getSubmissionLocationsForApplication1 *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getSubmissionLocationsForApplication1); if (soap_out__ns1__getSubmissionLocationsForApplication1(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getSubmissionLocationsForApplication1(struct soap *soap, const char *tag, int id, const struct _ns1__getSubmissionLocationsForApplication1 *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication1), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication1 * SOAP_FMAC4 soap_get__ns1__getSubmissionLocationsForApplication1(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication1 *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getSubmissionLocationsForApplication1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication1 * SOAP_FMAC4 soap_in__ns1__getSubmissionLocationsForApplication1(struct soap *soap, const char *tag, struct _ns1__getSubmissionLocationsForApplication1 *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getSubmissionLocationsForApplication1 *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication1, sizeof(struct _ns1__getSubmissionLocationsForApplication1), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getSubmissionLocationsForApplication1(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getSubmissionLocationsForApplication1 *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getSubmissionLocationsForApplication1, 0, sizeof(struct _ns1__getSubmissionLocationsForApplication1), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__ls_USCOREstringResponse(struct soap *soap, struct _ns1__ls_USCOREstringResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__ls_USCOREstringResponse(struct soap *soap, const struct _ns1__ls_USCOREstringResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__ls_USCOREstringResponse(struct soap *soap, const struct _ns1__ls_USCOREstringResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__ls_USCOREstringResponse); if (soap_out__ns1__ls_USCOREstringResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__ls_USCOREstringResponse(struct soap *soap, const char *tag, int id, const struct _ns1__ls_USCOREstringResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__ls_USCOREstringResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__ls_USCOREstringResponse * SOAP_FMAC4 soap_get__ns1__ls_USCOREstringResponse(struct soap *soap, struct _ns1__ls_USCOREstringResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__ls_USCOREstringResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__ls_USCOREstringResponse * SOAP_FMAC4 soap_in__ns1__ls_USCOREstringResponse(struct soap *soap, const char *tag, struct _ns1__ls_USCOREstringResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__ls_USCOREstringResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__ls_USCOREstringResponse, sizeof(struct _ns1__ls_USCOREstringResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__ls_USCOREstringResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__ls_USCOREstringResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__ls_USCOREstringResponse, 0, sizeof(struct _ns1__ls_USCOREstringResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__ls_USCOREstring(struct soap *soap, struct _ns1__ls_USCOREstring *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_int(soap, &a->in1); soap_default_xsd__boolean(soap, &a->in2); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__ls_USCOREstring(struct soap *soap, const struct _ns1__ls_USCOREstring *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_embedded(soap, &a->in2, SOAP_TYPE_xsd__boolean); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__ls_USCOREstring(struct soap *soap, const struct _ns1__ls_USCOREstring *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__ls_USCOREstring); if (soap_out__ns1__ls_USCOREstring(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__ls_USCOREstring(struct soap *soap, const char *tag, int id, const struct _ns1__ls_USCOREstring *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__ls_USCOREstring), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_int(soap, "ns1:in1", -1, &a->in1, ""); soap_out_xsd__boolean(soap, "ns1:in2", -1, &a->in2, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__ls_USCOREstring * SOAP_FMAC4 soap_get__ns1__ls_USCOREstring(struct soap *soap, struct _ns1__ls_USCOREstring *p, const char *tag, const char *type) { if ((p = soap_in__ns1__ls_USCOREstring(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__ls_USCOREstring * SOAP_FMAC4 soap_in__ns1__ls_USCOREstring(struct soap *soap, const char *tag, struct _ns1__ls_USCOREstring *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1, soap_flag_in2 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__ls_USCOREstring *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__ls_USCOREstring, sizeof(struct _ns1__ls_USCOREstring), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__ls_USCOREstring(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_int(soap, "ns1:in1", &a->in1, "xsd:int")) { soap_flag_in1--; continue; } if (soap_flag_in2 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_xsd__boolean(soap, "ns1:in2", &a->in2, "xsd:boolean")) { soap_flag_in2--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__ls_USCOREstring *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__ls_USCOREstring, 0, sizeof(struct _ns1__ls_USCOREstring), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0 || soap_flag_in2 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__calculateAbsoluteJobDirectoryResponse(struct soap *soap, struct _ns1__calculateAbsoluteJobDirectoryResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__calculateAbsoluteJobDirectoryResponse(struct soap *soap, const struct _ns1__calculateAbsoluteJobDirectoryResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__calculateAbsoluteJobDirectoryResponse(struct soap *soap, const struct _ns1__calculateAbsoluteJobDirectoryResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__calculateAbsoluteJobDirectoryResponse); if (soap_out__ns1__calculateAbsoluteJobDirectoryResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__calculateAbsoluteJobDirectoryResponse(struct soap *soap, const char *tag, int id, const struct _ns1__calculateAbsoluteJobDirectoryResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__calculateAbsoluteJobDirectoryResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__calculateAbsoluteJobDirectoryResponse * SOAP_FMAC4 soap_get__ns1__calculateAbsoluteJobDirectoryResponse(struct soap *soap, struct _ns1__calculateAbsoluteJobDirectoryResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__calculateAbsoluteJobDirectoryResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__calculateAbsoluteJobDirectoryResponse * SOAP_FMAC4 soap_in__ns1__calculateAbsoluteJobDirectoryResponse(struct soap *soap, const char *tag, struct _ns1__calculateAbsoluteJobDirectoryResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__calculateAbsoluteJobDirectoryResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__calculateAbsoluteJobDirectoryResponse, sizeof(struct _ns1__calculateAbsoluteJobDirectoryResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__calculateAbsoluteJobDirectoryResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__calculateAbsoluteJobDirectoryResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__calculateAbsoluteJobDirectoryResponse, 0, sizeof(struct _ns1__calculateAbsoluteJobDirectoryResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__calculateAbsoluteJobDirectory(struct soap *soap, struct _ns1__calculateAbsoluteJobDirectory *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_string(soap, &a->in1); soap_default_string(soap, &a->in2); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__calculateAbsoluteJobDirectory(struct soap *soap, const struct _ns1__calculateAbsoluteJobDirectory *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_string(soap, &a->in1); soap_serialize_string(soap, &a->in2); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__calculateAbsoluteJobDirectory(struct soap *soap, const struct _ns1__calculateAbsoluteJobDirectory *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__calculateAbsoluteJobDirectory); if (soap_out__ns1__calculateAbsoluteJobDirectory(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__calculateAbsoluteJobDirectory(struct soap *soap, const char *tag, int id, const struct _ns1__calculateAbsoluteJobDirectory *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__calculateAbsoluteJobDirectory), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_out_string(soap, "ns1:in2", -1, &a->in2, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__calculateAbsoluteJobDirectory * SOAP_FMAC4 soap_get__ns1__calculateAbsoluteJobDirectory(struct soap *soap, struct _ns1__calculateAbsoluteJobDirectory *p, const char *tag, const char *type) { if ((p = soap_in__ns1__calculateAbsoluteJobDirectory(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__calculateAbsoluteJobDirectory * SOAP_FMAC4 soap_in__ns1__calculateAbsoluteJobDirectory(struct soap *soap, const char *tag, struct _ns1__calculateAbsoluteJobDirectory *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1, soap_flag_in2 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__calculateAbsoluteJobDirectory *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__calculateAbsoluteJobDirectory, sizeof(struct _ns1__calculateAbsoluteJobDirectory), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__calculateAbsoluteJobDirectory(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap_flag_in2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in2", &a->in2, "xsd:string")) { soap_flag_in2--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__calculateAbsoluteJobDirectory *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__calculateAbsoluteJobDirectory, 0, sizeof(struct _ns1__calculateAbsoluteJobDirectory), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0 || soap_flag_in2 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getMessagesSinceResponse(struct soap *soap, struct _ns1__getMessagesSinceResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getMessagesSinceResponse(struct soap *soap, const struct _ns1__getMessagesSinceResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getMessagesSinceResponse(struct soap *soap, const struct _ns1__getMessagesSinceResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getMessagesSinceResponse); if (soap_out__ns1__getMessagesSinceResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getMessagesSinceResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getMessagesSinceResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getMessagesSinceResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_outliteral(soap, "ns1:out", &a->out, NULL); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getMessagesSinceResponse * SOAP_FMAC4 soap_get__ns1__getMessagesSinceResponse(struct soap *soap, struct _ns1__getMessagesSinceResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getMessagesSinceResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getMessagesSinceResponse * SOAP_FMAC4 soap_in__ns1__getMessagesSinceResponse(struct soap *soap, const char *tag, struct _ns1__getMessagesSinceResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getMessagesSinceResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getMessagesSinceResponse, sizeof(struct _ns1__getMessagesSinceResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getMessagesSinceResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_inliteral(soap, "ns1:out", &a->out)) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getMessagesSinceResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getMessagesSinceResponse, 0, sizeof(struct _ns1__getMessagesSinceResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getMessagesSince(struct soap *soap, struct _ns1__getMessagesSince *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_time(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getMessagesSince(struct soap *soap, const struct _ns1__getMessagesSince *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getMessagesSince(struct soap *soap, const struct _ns1__getMessagesSince *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getMessagesSince); if (soap_out__ns1__getMessagesSince(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getMessagesSince(struct soap *soap, const char *tag, int id, const struct _ns1__getMessagesSince *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getMessagesSince), type); soap_out_time(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getMessagesSince * SOAP_FMAC4 soap_get__ns1__getMessagesSince(struct soap *soap, struct _ns1__getMessagesSince *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getMessagesSince(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getMessagesSince * SOAP_FMAC4 soap_in__ns1__getMessagesSince(struct soap *soap, const char *tag, struct _ns1__getMessagesSince *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getMessagesSince *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getMessagesSince, sizeof(struct _ns1__getMessagesSince), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getMessagesSince(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_time(soap, "ns1:in0", &a->in0, "xsd:dateTime")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getMessagesSince *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getMessagesSince, 0, sizeof(struct _ns1__getMessagesSince), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__deleteFilesResponse(struct soap *soap, struct _ns1__deleteFilesResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__deleteFilesResponse(struct soap *soap, const struct _ns1__deleteFilesResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__deleteFilesResponse(struct soap *soap, const struct _ns1__deleteFilesResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__deleteFilesResponse); if (soap_out__ns1__deleteFilesResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__deleteFilesResponse(struct soap *soap, const char *tag, int id, const struct _ns1__deleteFilesResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__deleteFilesResponse), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__deleteFilesResponse * SOAP_FMAC4 soap_get__ns1__deleteFilesResponse(struct soap *soap, struct _ns1__deleteFilesResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__deleteFilesResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__deleteFilesResponse * SOAP_FMAC4 soap_in__ns1__deleteFilesResponse(struct soap *soap, const char *tag, struct _ns1__deleteFilesResponse *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__deleteFilesResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__deleteFilesResponse, sizeof(struct _ns1__deleteFilesResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__deleteFilesResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__deleteFilesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__deleteFilesResponse, 0, sizeof(struct _ns1__deleteFilesResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__deleteFiles(struct soap *soap, struct _ns1__deleteFiles *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->in0 = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__deleteFiles(struct soap *soap, const struct _ns1__deleteFiles *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__ArrayOfString(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__deleteFiles(struct soap *soap, const struct _ns1__deleteFiles *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__deleteFiles); if (soap_out__ns1__deleteFiles(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__deleteFiles(struct soap *soap, const char *tag, int id, const struct _ns1__deleteFiles *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__deleteFiles), type); soap_out_PointerTons1__ArrayOfString(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__deleteFiles * SOAP_FMAC4 soap_get__ns1__deleteFiles(struct soap *soap, struct _ns1__deleteFiles *p, const char *tag, const char *type) { if ((p = soap_in__ns1__deleteFiles(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__deleteFiles * SOAP_FMAC4 soap_in__ns1__deleteFiles(struct soap *soap, const char *tag, struct _ns1__deleteFiles *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__deleteFiles *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__deleteFiles, sizeof(struct _ns1__deleteFiles), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__deleteFiles(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:in0", &a->in0, "ns1:ArrayOfString")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__deleteFiles *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__deleteFiles, 0, sizeof(struct _ns1__deleteFiles), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__listHostedApplicationTemplatesResponse(struct soap *soap, struct _ns1__listHostedApplicationTemplatesResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__listHostedApplicationTemplatesResponse(struct soap *soap, const struct _ns1__listHostedApplicationTemplatesResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__ArrayOfString(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__listHostedApplicationTemplatesResponse(struct soap *soap, const struct _ns1__listHostedApplicationTemplatesResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__listHostedApplicationTemplatesResponse); if (soap_out__ns1__listHostedApplicationTemplatesResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__listHostedApplicationTemplatesResponse(struct soap *soap, const char *tag, int id, const struct _ns1__listHostedApplicationTemplatesResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__listHostedApplicationTemplatesResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__ArrayOfString(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__listHostedApplicationTemplatesResponse * SOAP_FMAC4 soap_get__ns1__listHostedApplicationTemplatesResponse(struct soap *soap, struct _ns1__listHostedApplicationTemplatesResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__listHostedApplicationTemplatesResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__listHostedApplicationTemplatesResponse * SOAP_FMAC4 soap_in__ns1__listHostedApplicationTemplatesResponse(struct soap *soap, const char *tag, struct _ns1__listHostedApplicationTemplatesResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__listHostedApplicationTemplatesResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__listHostedApplicationTemplatesResponse, sizeof(struct _ns1__listHostedApplicationTemplatesResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__listHostedApplicationTemplatesResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:out", &a->out, "ns1:ArrayOfString")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__listHostedApplicationTemplatesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__listHostedApplicationTemplatesResponse, 0, sizeof(struct _ns1__listHostedApplicationTemplatesResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__listHostedApplicationTemplates(struct soap *soap, struct _ns1__listHostedApplicationTemplates *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__listHostedApplicationTemplates(struct soap *soap, const struct _ns1__listHostedApplicationTemplates *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__listHostedApplicationTemplates(struct soap *soap, const struct _ns1__listHostedApplicationTemplates *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__listHostedApplicationTemplates); if (soap_out__ns1__listHostedApplicationTemplates(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__listHostedApplicationTemplates(struct soap *soap, const char *tag, int id, const struct _ns1__listHostedApplicationTemplates *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__listHostedApplicationTemplates), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__listHostedApplicationTemplates * SOAP_FMAC4 soap_get__ns1__listHostedApplicationTemplates(struct soap *soap, struct _ns1__listHostedApplicationTemplates *p, const char *tag, const char *type) { if ((p = soap_in__ns1__listHostedApplicationTemplates(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__listHostedApplicationTemplates * SOAP_FMAC4 soap_in__ns1__listHostedApplicationTemplates(struct soap *soap, const char *tag, struct _ns1__listHostedApplicationTemplates *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__listHostedApplicationTemplates *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__listHostedApplicationTemplates, sizeof(struct _ns1__listHostedApplicationTemplates), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__listHostedApplicationTemplates(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__listHostedApplicationTemplates *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__listHostedApplicationTemplates, 0, sizeof(struct _ns1__listHostedApplicationTemplates), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__downloadByteArray1Response(struct soap *soap, struct _ns1__downloadByteArray1Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__downloadByteArray1Response(struct soap *soap, const struct _ns1__downloadByteArray1Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerToxsd__base64Binary(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__downloadByteArray1Response(struct soap *soap, const struct _ns1__downloadByteArray1Response *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__downloadByteArray1Response); if (soap_out__ns1__downloadByteArray1Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__downloadByteArray1Response(struct soap *soap, const char *tag, int id, const struct _ns1__downloadByteArray1Response *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__downloadByteArray1Response), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerToxsd__base64Binary(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__downloadByteArray1Response * SOAP_FMAC4 soap_get__ns1__downloadByteArray1Response(struct soap *soap, struct _ns1__downloadByteArray1Response *p, const char *tag, const char *type) { if ((p = soap_in__ns1__downloadByteArray1Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__downloadByteArray1Response * SOAP_FMAC4 soap_in__ns1__downloadByteArray1Response(struct soap *soap, const char *tag, struct _ns1__downloadByteArray1Response *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__downloadByteArray1Response *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__downloadByteArray1Response, sizeof(struct _ns1__downloadByteArray1Response), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__downloadByteArray1Response(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerToxsd__base64Binary(soap, "ns1:out", &a->out, "xsd:base64Binary")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__downloadByteArray1Response *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__downloadByteArray1Response, 0, sizeof(struct _ns1__downloadByteArray1Response), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__downloadByteArray1(struct soap *soap, struct _ns1__downloadByteArray1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_int(soap, &a->in1); soap_default_int(soap, &a->in2); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__downloadByteArray1(struct soap *soap, const struct _ns1__downloadByteArray1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__downloadByteArray1(struct soap *soap, const struct _ns1__downloadByteArray1 *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__downloadByteArray1); if (soap_out__ns1__downloadByteArray1(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__downloadByteArray1(struct soap *soap, const char *tag, int id, const struct _ns1__downloadByteArray1 *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__downloadByteArray1), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_int(soap, "ns1:in1", -1, &a->in1, ""); soap_out_int(soap, "ns1:in2", -1, &a->in2, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__downloadByteArray1 * SOAP_FMAC4 soap_get__ns1__downloadByteArray1(struct soap *soap, struct _ns1__downloadByteArray1 *p, const char *tag, const char *type) { if ((p = soap_in__ns1__downloadByteArray1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__downloadByteArray1 * SOAP_FMAC4 soap_in__ns1__downloadByteArray1(struct soap *soap, const char *tag, struct _ns1__downloadByteArray1 *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1, soap_flag_in2 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__downloadByteArray1 *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__downloadByteArray1, sizeof(struct _ns1__downloadByteArray1), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__downloadByteArray1(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_int(soap, "ns1:in1", &a->in1, "xsd:int")) { soap_flag_in1--; continue; } if (soap_flag_in2 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_int(soap, "ns1:in2", &a->in2, "xsd:int")) { soap_flag_in2--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__downloadByteArray1 *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__downloadByteArray1, 0, sizeof(struct _ns1__downloadByteArray1), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0 || soap_flag_in2 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getTemplate1Response(struct soap *soap, struct _ns1__getTemplate1Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getTemplate1Response(struct soap *soap, const struct _ns1__getTemplate1Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getTemplate1Response(struct soap *soap, const struct _ns1__getTemplate1Response *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getTemplate1Response); if (soap_out__ns1__getTemplate1Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getTemplate1Response(struct soap *soap, const char *tag, int id, const struct _ns1__getTemplate1Response *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getTemplate1Response), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_outliteral(soap, "ns1:out", &a->out, NULL); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getTemplate1Response * SOAP_FMAC4 soap_get__ns1__getTemplate1Response(struct soap *soap, struct _ns1__getTemplate1Response *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getTemplate1Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getTemplate1Response * SOAP_FMAC4 soap_in__ns1__getTemplate1Response(struct soap *soap, const char *tag, struct _ns1__getTemplate1Response *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getTemplate1Response *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getTemplate1Response, sizeof(struct _ns1__getTemplate1Response), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getTemplate1Response(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_inliteral(soap, "ns1:out", &a->out)) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getTemplate1Response *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getTemplate1Response, 0, sizeof(struct _ns1__getTemplate1Response), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getTemplate1(struct soap *soap, struct _ns1__getTemplate1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_string(soap, &a->in1); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getTemplate1(struct soap *soap, const struct _ns1__getTemplate1 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_string(soap, &a->in1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getTemplate1(struct soap *soap, const struct _ns1__getTemplate1 *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getTemplate1); if (soap_out__ns1__getTemplate1(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getTemplate1(struct soap *soap, const char *tag, int id, const struct _ns1__getTemplate1 *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getTemplate1), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getTemplate1 * SOAP_FMAC4 soap_get__ns1__getTemplate1(struct soap *soap, struct _ns1__getTemplate1 *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getTemplate1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getTemplate1 * SOAP_FMAC4 soap_in__ns1__getTemplate1(struct soap *soap, const char *tag, struct _ns1__getTemplate1 *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getTemplate1 *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getTemplate1, sizeof(struct _ns1__getTemplate1), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getTemplate1(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getTemplate1 *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getTemplate1, 0, sizeof(struct _ns1__getTemplate1), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(struct soap *soap, struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(struct soap *soap, const struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__anyType2anyTypeMap(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(struct soap *soap, const struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplicationResponse); if (soap_out__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplicationResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__anyType2anyTypeMap(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse * SOAP_FMAC4 soap_get__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(struct soap *soap, struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse * SOAP_FMAC4 soap_in__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(struct soap *soap, const char *tag, struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplicationResponse, sizeof(struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__anyType2anyTypeMap(soap, "ns1:out", &a->out, "ns1:anyType2anyTypeMap")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplicationResponse, 0, sizeof(struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, struct _ns1__getSubmissionLocationsPerVersionOfApplication *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, const struct _ns1__getSubmissionLocationsPerVersionOfApplication *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, const struct _ns1__getSubmissionLocationsPerVersionOfApplication *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplication); if (soap_out__ns1__getSubmissionLocationsPerVersionOfApplication(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, const char *tag, int id, const struct _ns1__getSubmissionLocationsPerVersionOfApplication *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplication), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsPerVersionOfApplication * SOAP_FMAC4 soap_get__ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, struct _ns1__getSubmissionLocationsPerVersionOfApplication *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getSubmissionLocationsPerVersionOfApplication(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsPerVersionOfApplication * SOAP_FMAC4 soap_in__ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, const char *tag, struct _ns1__getSubmissionLocationsPerVersionOfApplication *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getSubmissionLocationsPerVersionOfApplication *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplication, sizeof(struct _ns1__getSubmissionLocationsPerVersionOfApplication), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getSubmissionLocationsPerVersionOfApplication(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getSubmissionLocationsPerVersionOfApplication *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplication, 0, sizeof(struct _ns1__getSubmissionLocationsPerVersionOfApplication), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getDataLocationsForVOResponse(struct soap *soap, struct _ns1__getDataLocationsForVOResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getDataLocationsForVOResponse(struct soap *soap, const struct _ns1__getDataLocationsForVOResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__anyType2anyTypeMap(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getDataLocationsForVOResponse(struct soap *soap, const struct _ns1__getDataLocationsForVOResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getDataLocationsForVOResponse); if (soap_out__ns1__getDataLocationsForVOResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getDataLocationsForVOResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getDataLocationsForVOResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getDataLocationsForVOResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__anyType2anyTypeMap(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getDataLocationsForVOResponse * SOAP_FMAC4 soap_get__ns1__getDataLocationsForVOResponse(struct soap *soap, struct _ns1__getDataLocationsForVOResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getDataLocationsForVOResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getDataLocationsForVOResponse * SOAP_FMAC4 soap_in__ns1__getDataLocationsForVOResponse(struct soap *soap, const char *tag, struct _ns1__getDataLocationsForVOResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getDataLocationsForVOResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getDataLocationsForVOResponse, sizeof(struct _ns1__getDataLocationsForVOResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getDataLocationsForVOResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__anyType2anyTypeMap(soap, "ns1:out", &a->out, "ns1:anyType2anyTypeMap")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getDataLocationsForVOResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getDataLocationsForVOResponse, 0, sizeof(struct _ns1__getDataLocationsForVOResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getDataLocationsForVO(struct soap *soap, struct _ns1__getDataLocationsForVO *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getDataLocationsForVO(struct soap *soap, const struct _ns1__getDataLocationsForVO *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getDataLocationsForVO(struct soap *soap, const struct _ns1__getDataLocationsForVO *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getDataLocationsForVO); if (soap_out__ns1__getDataLocationsForVO(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getDataLocationsForVO(struct soap *soap, const char *tag, int id, const struct _ns1__getDataLocationsForVO *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getDataLocationsForVO), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getDataLocationsForVO * SOAP_FMAC4 soap_get__ns1__getDataLocationsForVO(struct soap *soap, struct _ns1__getDataLocationsForVO *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getDataLocationsForVO(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getDataLocationsForVO * SOAP_FMAC4 soap_in__ns1__getDataLocationsForVO(struct soap *soap, const char *tag, struct _ns1__getDataLocationsForVO *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getDataLocationsForVO *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getDataLocationsForVO, sizeof(struct _ns1__getDataLocationsForVO), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getDataLocationsForVO(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getDataLocationsForVO *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getDataLocationsForVO, 0, sizeof(struct _ns1__getDataLocationsForVO), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__mkdirResponse(struct soap *soap, struct _ns1__mkdirResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_xsd__boolean(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__mkdirResponse(struct soap *soap, const struct _ns1__mkdirResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_embedded(soap, &a->out, SOAP_TYPE_xsd__boolean); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__mkdirResponse(struct soap *soap, const struct _ns1__mkdirResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__mkdirResponse); if (soap_out__ns1__mkdirResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__mkdirResponse(struct soap *soap, const char *tag, int id, const struct _ns1__mkdirResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__mkdirResponse), type); soap_element_result(soap, "ns1:out"); soap_out_xsd__boolean(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__mkdirResponse * SOAP_FMAC4 soap_get__ns1__mkdirResponse(struct soap *soap, struct _ns1__mkdirResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__mkdirResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__mkdirResponse * SOAP_FMAC4 soap_in__ns1__mkdirResponse(struct soap *soap, const char *tag, struct _ns1__mkdirResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__mkdirResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__mkdirResponse, sizeof(struct _ns1__mkdirResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__mkdirResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_xsd__boolean(soap, "ns1:out", &a->out, "xsd:boolean")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__mkdirResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__mkdirResponse, 0, sizeof(struct _ns1__mkdirResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__mkdir(struct soap *soap, struct _ns1__mkdir *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__mkdir(struct soap *soap, const struct _ns1__mkdir *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__mkdir(struct soap *soap, const struct _ns1__mkdir *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__mkdir); if (soap_out__ns1__mkdir(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__mkdir(struct soap *soap, const char *tag, int id, const struct _ns1__mkdir *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__mkdir), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__mkdir * SOAP_FMAC4 soap_get__ns1__mkdir(struct soap *soap, struct _ns1__mkdir *p, const char *tag, const char *type) { if ((p = soap_in__ns1__mkdir(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__mkdir * SOAP_FMAC4 soap_in__ns1__mkdir(struct soap *soap, const char *tag, struct _ns1__mkdir *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__mkdir *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__mkdir, sizeof(struct _ns1__mkdir), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__mkdir(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__mkdir *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__mkdir, 0, sizeof(struct _ns1__mkdir), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getUserPropertyResponse(struct soap *soap, struct _ns1__getUserPropertyResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getUserPropertyResponse(struct soap *soap, const struct _ns1__getUserPropertyResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__ArrayOfString(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getUserPropertyResponse(struct soap *soap, const struct _ns1__getUserPropertyResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getUserPropertyResponse); if (soap_out__ns1__getUserPropertyResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getUserPropertyResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getUserPropertyResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getUserPropertyResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__ArrayOfString(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getUserPropertyResponse * SOAP_FMAC4 soap_get__ns1__getUserPropertyResponse(struct soap *soap, struct _ns1__getUserPropertyResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getUserPropertyResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getUserPropertyResponse * SOAP_FMAC4 soap_in__ns1__getUserPropertyResponse(struct soap *soap, const char *tag, struct _ns1__getUserPropertyResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getUserPropertyResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getUserPropertyResponse, sizeof(struct _ns1__getUserPropertyResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getUserPropertyResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:out", &a->out, "ns1:ArrayOfString")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getUserPropertyResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getUserPropertyResponse, 0, sizeof(struct _ns1__getUserPropertyResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getUserProperty(struct soap *soap, struct _ns1__getUserProperty *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getUserProperty(struct soap *soap, const struct _ns1__getUserProperty *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getUserProperty(struct soap *soap, const struct _ns1__getUserProperty *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getUserProperty); if (soap_out__ns1__getUserProperty(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getUserProperty(struct soap *soap, const char *tag, int id, const struct _ns1__getUserProperty *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getUserProperty), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getUserProperty * SOAP_FMAC4 soap_get__ns1__getUserProperty(struct soap *soap, struct _ns1__getUserProperty *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getUserProperty(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getUserProperty * SOAP_FMAC4 soap_in__ns1__getUserProperty(struct soap *soap, const char *tag, struct _ns1__getUserProperty *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getUserProperty *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getUserProperty, sizeof(struct _ns1__getUserProperty), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getUserProperty(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getUserProperty *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getUserProperty, 0, sizeof(struct _ns1__getUserProperty), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getStagingFileSystemForSubmissionLocationResponse(struct soap *soap, struct _ns1__getStagingFileSystemForSubmissionLocationResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getStagingFileSystemForSubmissionLocationResponse(struct soap *soap, const struct _ns1__getStagingFileSystemForSubmissionLocationResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__ArrayOfString(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getStagingFileSystemForSubmissionLocationResponse(struct soap *soap, const struct _ns1__getStagingFileSystemForSubmissionLocationResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocationResponse); if (soap_out__ns1__getStagingFileSystemForSubmissionLocationResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getStagingFileSystemForSubmissionLocationResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getStagingFileSystemForSubmissionLocationResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocationResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__ArrayOfString(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getStagingFileSystemForSubmissionLocationResponse * SOAP_FMAC4 soap_get__ns1__getStagingFileSystemForSubmissionLocationResponse(struct soap *soap, struct _ns1__getStagingFileSystemForSubmissionLocationResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getStagingFileSystemForSubmissionLocationResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getStagingFileSystemForSubmissionLocationResponse * SOAP_FMAC4 soap_in__ns1__getStagingFileSystemForSubmissionLocationResponse(struct soap *soap, const char *tag, struct _ns1__getStagingFileSystemForSubmissionLocationResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getStagingFileSystemForSubmissionLocationResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocationResponse, sizeof(struct _ns1__getStagingFileSystemForSubmissionLocationResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getStagingFileSystemForSubmissionLocationResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:out", &a->out, "ns1:ArrayOfString")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getStagingFileSystemForSubmissionLocationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocationResponse, 0, sizeof(struct _ns1__getStagingFileSystemForSubmissionLocationResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, struct _ns1__getStagingFileSystemForSubmissionLocation *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, const struct _ns1__getStagingFileSystemForSubmissionLocation *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, const struct _ns1__getStagingFileSystemForSubmissionLocation *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocation); if (soap_out__ns1__getStagingFileSystemForSubmissionLocation(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, const char *tag, int id, const struct _ns1__getStagingFileSystemForSubmissionLocation *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocation), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getStagingFileSystemForSubmissionLocation * SOAP_FMAC4 soap_get__ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, struct _ns1__getStagingFileSystemForSubmissionLocation *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getStagingFileSystemForSubmissionLocation(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getStagingFileSystemForSubmissionLocation * SOAP_FMAC4 soap_in__ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, const char *tag, struct _ns1__getStagingFileSystemForSubmissionLocation *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getStagingFileSystemForSubmissionLocation *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocation, sizeof(struct _ns1__getStagingFileSystemForSubmissionLocation), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getStagingFileSystemForSubmissionLocation(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getStagingFileSystemForSubmissionLocation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocation, 0, sizeof(struct _ns1__getStagingFileSystemForSubmissionLocation), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__psResponse(struct soap *soap, struct _ns1__psResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__psResponse(struct soap *soap, const struct _ns1__psResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__psResponse(struct soap *soap, const struct _ns1__psResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__psResponse); if (soap_out__ns1__psResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__psResponse(struct soap *soap, const char *tag, int id, const struct _ns1__psResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__psResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_outliteral(soap, "ns1:out", &a->out, NULL); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__psResponse * SOAP_FMAC4 soap_get__ns1__psResponse(struct soap *soap, struct _ns1__psResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__psResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__psResponse * SOAP_FMAC4 soap_in__ns1__psResponse(struct soap *soap, const char *tag, struct _ns1__psResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__psResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__psResponse, sizeof(struct _ns1__psResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__psResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_inliteral(soap, "ns1:out", &a->out)) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__psResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__psResponse, 0, sizeof(struct _ns1__psResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__ps(struct soap *soap, struct _ns1__ps *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__ps(struct soap *soap, const struct _ns1__ps *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__ps(struct soap *soap, const struct _ns1__ps *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__ps); if (soap_out__ns1__ps(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__ps(struct soap *soap, const char *tag, int id, const struct _ns1__ps *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__ps), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__ps * SOAP_FMAC4 soap_get__ns1__ps(struct soap *soap, struct _ns1__ps *p, const char *tag, const char *type) { if ((p = soap_in__ns1__ps(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__ps * SOAP_FMAC4 soap_in__ns1__ps(struct soap *soap, const char *tag, struct _ns1__ps *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__ps *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__ps, sizeof(struct _ns1__ps), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__ps(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__ps *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__ps, 0, sizeof(struct _ns1__ps), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getSubmissionLocationsForApplication2Response(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication2Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getSubmissionLocationsForApplication2Response(struct soap *soap, const struct _ns1__getSubmissionLocationsForApplication2Response *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__ArrayOfString(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getSubmissionLocationsForApplication2Response(struct soap *soap, const struct _ns1__getSubmissionLocationsForApplication2Response *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getSubmissionLocationsForApplication2Response); if (soap_out__ns1__getSubmissionLocationsForApplication2Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getSubmissionLocationsForApplication2Response(struct soap *soap, const char *tag, int id, const struct _ns1__getSubmissionLocationsForApplication2Response *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication2Response), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__ArrayOfString(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication2Response * SOAP_FMAC4 soap_get__ns1__getSubmissionLocationsForApplication2Response(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication2Response *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getSubmissionLocationsForApplication2Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication2Response * SOAP_FMAC4 soap_in__ns1__getSubmissionLocationsForApplication2Response(struct soap *soap, const char *tag, struct _ns1__getSubmissionLocationsForApplication2Response *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getSubmissionLocationsForApplication2Response *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication2Response, sizeof(struct _ns1__getSubmissionLocationsForApplication2Response), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getSubmissionLocationsForApplication2Response(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:out", &a->out, "ns1:ArrayOfString")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getSubmissionLocationsForApplication2Response *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getSubmissionLocationsForApplication2Response, 0, sizeof(struct _ns1__getSubmissionLocationsForApplication2Response), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getSubmissionLocationsForApplication2(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication2 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_string(soap, &a->in1); soap_default_string(soap, &a->in2); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getSubmissionLocationsForApplication2(struct soap *soap, const struct _ns1__getSubmissionLocationsForApplication2 *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_string(soap, &a->in1); soap_serialize_string(soap, &a->in2); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getSubmissionLocationsForApplication2(struct soap *soap, const struct _ns1__getSubmissionLocationsForApplication2 *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getSubmissionLocationsForApplication2); if (soap_out__ns1__getSubmissionLocationsForApplication2(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getSubmissionLocationsForApplication2(struct soap *soap, const char *tag, int id, const struct _ns1__getSubmissionLocationsForApplication2 *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication2), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_out_string(soap, "ns1:in2", -1, &a->in2, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication2 * SOAP_FMAC4 soap_get__ns1__getSubmissionLocationsForApplication2(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication2 *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getSubmissionLocationsForApplication2(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication2 * SOAP_FMAC4 soap_in__ns1__getSubmissionLocationsForApplication2(struct soap *soap, const char *tag, struct _ns1__getSubmissionLocationsForApplication2 *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1, soap_flag_in2 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getSubmissionLocationsForApplication2 *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication2, sizeof(struct _ns1__getSubmissionLocationsForApplication2), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getSubmissionLocationsForApplication2(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap_flag_in2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in2", &a->in2, "xsd:string")) { soap_flag_in2--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getSubmissionLocationsForApplication2 *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getSubmissionLocationsForApplication2, 0, sizeof(struct _ns1__getSubmissionLocationsForApplication2), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0 || soap_flag_in2 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__downloadByteArrayResponse(struct soap *soap, struct _ns1__downloadByteArrayResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__downloadByteArrayResponse(struct soap *soap, const struct _ns1__downloadByteArrayResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerToxsd__base64Binary(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__downloadByteArrayResponse(struct soap *soap, const struct _ns1__downloadByteArrayResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__downloadByteArrayResponse); if (soap_out__ns1__downloadByteArrayResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__downloadByteArrayResponse(struct soap *soap, const char *tag, int id, const struct _ns1__downloadByteArrayResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__downloadByteArrayResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerToxsd__base64Binary(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__downloadByteArrayResponse * SOAP_FMAC4 soap_get__ns1__downloadByteArrayResponse(struct soap *soap, struct _ns1__downloadByteArrayResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__downloadByteArrayResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__downloadByteArrayResponse * SOAP_FMAC4 soap_in__ns1__downloadByteArrayResponse(struct soap *soap, const char *tag, struct _ns1__downloadByteArrayResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__downloadByteArrayResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__downloadByteArrayResponse, sizeof(struct _ns1__downloadByteArrayResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__downloadByteArrayResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerToxsd__base64Binary(soap, "ns1:out", &a->out, "xsd:base64Binary")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__downloadByteArrayResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__downloadByteArrayResponse, 0, sizeof(struct _ns1__downloadByteArrayResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__downloadByteArray(struct soap *soap, struct _ns1__downloadByteArray *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__downloadByteArray(struct soap *soap, const struct _ns1__downloadByteArray *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__downloadByteArray(struct soap *soap, const struct _ns1__downloadByteArray *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__downloadByteArray); if (soap_out__ns1__downloadByteArray(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__downloadByteArray(struct soap *soap, const char *tag, int id, const struct _ns1__downloadByteArray *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__downloadByteArray), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__downloadByteArray * SOAP_FMAC4 soap_get__ns1__downloadByteArray(struct soap *soap, struct _ns1__downloadByteArray *p, const char *tag, const char *type) { if ((p = soap_in__ns1__downloadByteArray(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__downloadByteArray * SOAP_FMAC4 soap_in__ns1__downloadByteArray(struct soap *soap, const char *tag, struct _ns1__downloadByteArray *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__downloadByteArray *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__downloadByteArray, sizeof(struct _ns1__downloadByteArray), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__downloadByteArray(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__downloadByteArray *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__downloadByteArray, 0, sizeof(struct _ns1__downloadByteArray), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns3__ArrayOfMountPoint(struct soap *soap, struct ns3__ArrayOfMountPoint *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->__sizeMountPoint = 0; a->MountPoint = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns3__ArrayOfMountPoint(struct soap *soap, const struct ns3__ArrayOfMountPoint *a) { (void)soap; (void)a; /* appease -Wall -Werror */ if (a->MountPoint) { int i; for (i = 0; i < a->__sizeMountPoint; i++) { soap_embedded(soap, a->MountPoint + i, SOAP_TYPE_ns3__MountPoint); soap_serialize_ns3__MountPoint(soap, a->MountPoint + i); } } } SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns3__ArrayOfMountPoint(struct soap *soap, const struct ns3__ArrayOfMountPoint *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns3__ArrayOfMountPoint); if (soap_out_ns3__ArrayOfMountPoint(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns3__ArrayOfMountPoint(struct soap *soap, const char *tag, int id, const struct ns3__ArrayOfMountPoint *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns3__ArrayOfMountPoint), type); if (a->MountPoint) { int i; for (i = 0; i < a->__sizeMountPoint; i++) soap_out_ns3__MountPoint(soap, "ns3:MountPoint", -1, a->MountPoint + i, ""); } soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct ns3__ArrayOfMountPoint * SOAP_FMAC4 soap_get_ns3__ArrayOfMountPoint(struct soap *soap, struct ns3__ArrayOfMountPoint *p, const char *tag, const char *type) { if ((p = soap_in_ns3__ArrayOfMountPoint(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns3__ArrayOfMountPoint * SOAP_FMAC4 soap_in_ns3__ArrayOfMountPoint(struct soap *soap, const char *tag, struct ns3__ArrayOfMountPoint *a, const char *type) { short soap_flag_MountPoint = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct ns3__ArrayOfMountPoint *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns3__ArrayOfMountPoint, sizeof(struct ns3__ArrayOfMountPoint), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_ns3__ArrayOfMountPoint(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_MountPoint && soap->error == SOAP_TAG_MISMATCH) { struct ns3__MountPoint *p; soap_new_block(soap); for (a->__sizeMountPoint = 0; !soap_element_begin_in(soap, "ns3:MountPoint", 1, NULL); a->__sizeMountPoint++) { p = (struct ns3__MountPoint *)soap_push_block(soap, sizeof(struct ns3__MountPoint)); soap_default_ns3__MountPoint(soap, p); soap_revert(soap); if (!soap_in_ns3__MountPoint(soap, "ns3:MountPoint", p, "ns3:MountPoint")) break; soap_flag_MountPoint = 0; } a->MountPoint = (struct ns3__MountPoint *)soap_save_block(soap, NULL, 1); if (!soap_flag_MountPoint && soap->error == SOAP_TAG_MISMATCH) continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct ns3__ArrayOfMountPoint *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns3__ArrayOfMountPoint, 0, sizeof(struct ns3__ArrayOfMountPoint), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__dfResponse(struct soap *soap, struct _ns1__dfResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__dfResponse(struct soap *soap, const struct _ns1__dfResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons3__ArrayOfMountPoint(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__dfResponse(struct soap *soap, const struct _ns1__dfResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__dfResponse); if (soap_out__ns1__dfResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__dfResponse(struct soap *soap, const char *tag, int id, const struct _ns1__dfResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__dfResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons3__ArrayOfMountPoint(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__dfResponse * SOAP_FMAC4 soap_get__ns1__dfResponse(struct soap *soap, struct _ns1__dfResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__dfResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__dfResponse * SOAP_FMAC4 soap_in__ns1__dfResponse(struct soap *soap, const char *tag, struct _ns1__dfResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__dfResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__dfResponse, sizeof(struct _ns1__dfResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__dfResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons3__ArrayOfMountPoint(soap, "ns1:out", &a->out, "ns3:ArrayOfMountPoint")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__dfResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__dfResponse, 0, sizeof(struct _ns1__dfResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__df(struct soap *soap, struct _ns1__df *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__df(struct soap *soap, const struct _ns1__df *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__df(struct soap *soap, const struct _ns1__df *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__df); if (soap_out__ns1__df(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__df(struct soap *soap, const char *tag, int id, const struct _ns1__df *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__df), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__df * SOAP_FMAC4 soap_get__ns1__df(struct soap *soap, struct _ns1__df *p, const char *tag, const char *type) { if ((p = soap_in__ns1__df(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__df * SOAP_FMAC4 soap_in__ns1__df(struct soap *soap, const char *tag, struct _ns1__df *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__df *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__df, sizeof(struct _ns1__df), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__df(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__df *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__df, 0, sizeof(struct _ns1__df), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getFqansResponse(struct soap *soap, struct _ns1__getFqansResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getFqansResponse(struct soap *soap, const struct _ns1__getFqansResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__ArrayOfString(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getFqansResponse(struct soap *soap, const struct _ns1__getFqansResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getFqansResponse); if (soap_out__ns1__getFqansResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getFqansResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getFqansResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getFqansResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__ArrayOfString(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getFqansResponse * SOAP_FMAC4 soap_get__ns1__getFqansResponse(struct soap *soap, struct _ns1__getFqansResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getFqansResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getFqansResponse * SOAP_FMAC4 soap_in__ns1__getFqansResponse(struct soap *soap, const char *tag, struct _ns1__getFqansResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getFqansResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getFqansResponse, sizeof(struct _ns1__getFqansResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getFqansResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:out", &a->out, "ns1:ArrayOfString")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getFqansResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getFqansResponse, 0, sizeof(struct _ns1__getFqansResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getFqans(struct soap *soap, struct _ns1__getFqans *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getFqans(struct soap *soap, const struct _ns1__getFqans *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getFqans(struct soap *soap, const struct _ns1__getFqans *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getFqans); if (soap_out__ns1__getFqans(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getFqans(struct soap *soap, const char *tag, int id, const struct _ns1__getFqans *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getFqans), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getFqans * SOAP_FMAC4 soap_get__ns1__getFqans(struct soap *soap, struct _ns1__getFqans *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getFqans(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getFqans * SOAP_FMAC4 soap_in__ns1__getFqans(struct soap *soap, const char *tag, struct _ns1__getFqans *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getFqans *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getFqans, sizeof(struct _ns1__getFqans), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getFqans(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getFqans *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getFqans, 0, sizeof(struct _ns1__getFqans), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getTemplateResponse(struct soap *soap, struct _ns1__getTemplateResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getTemplateResponse(struct soap *soap, const struct _ns1__getTemplateResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getTemplateResponse(struct soap *soap, const struct _ns1__getTemplateResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getTemplateResponse); if (soap_out__ns1__getTemplateResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getTemplateResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getTemplateResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getTemplateResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_outliteral(soap, "ns1:out", &a->out, NULL); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getTemplateResponse * SOAP_FMAC4 soap_get__ns1__getTemplateResponse(struct soap *soap, struct _ns1__getTemplateResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getTemplateResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getTemplateResponse * SOAP_FMAC4 soap_in__ns1__getTemplateResponse(struct soap *soap, const char *tag, struct _ns1__getTemplateResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getTemplateResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getTemplateResponse, sizeof(struct _ns1__getTemplateResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getTemplateResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_inliteral(soap, "ns1:out", &a->out)) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getTemplateResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getTemplateResponse, 0, sizeof(struct _ns1__getTemplateResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getTemplate(struct soap *soap, struct _ns1__getTemplate *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getTemplate(struct soap *soap, const struct _ns1__getTemplate *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getTemplate(struct soap *soap, const struct _ns1__getTemplate *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getTemplate); if (soap_out__ns1__getTemplate(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getTemplate(struct soap *soap, const char *tag, int id, const struct _ns1__getTemplate *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getTemplate), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getTemplate * SOAP_FMAC4 soap_get__ns1__getTemplate(struct soap *soap, struct _ns1__getTemplate *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getTemplate(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getTemplate * SOAP_FMAC4 soap_in__ns1__getTemplate(struct soap *soap, const char *tag, struct _ns1__getTemplate *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getTemplate *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getTemplate, sizeof(struct _ns1__getTemplate), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getTemplate(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getTemplate *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getTemplate, 0, sizeof(struct _ns1__getTemplate), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__loginResponse(struct soap *soap, struct _ns1__loginResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__loginResponse(struct soap *soap, const struct _ns1__loginResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__loginResponse(struct soap *soap, const struct _ns1__loginResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__loginResponse); if (soap_out__ns1__loginResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__loginResponse(struct soap *soap, const char *tag, int id, const struct _ns1__loginResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__loginResponse), type); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__loginResponse * SOAP_FMAC4 soap_get__ns1__loginResponse(struct soap *soap, struct _ns1__loginResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__loginResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__loginResponse * SOAP_FMAC4 soap_in__ns1__loginResponse(struct soap *soap, const char *tag, struct _ns1__loginResponse *a, const char *type) { if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__loginResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__loginResponse, sizeof(struct _ns1__loginResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__loginResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__loginResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__loginResponse, 0, sizeof(struct _ns1__loginResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__login(struct soap *soap, struct _ns1__login *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); a->in1 = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__login(struct soap *soap, const struct _ns1__login *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_PointerTons1__ArrayOfString(soap, &a->in1); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__login(struct soap *soap, const struct _ns1__login *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__login); if (soap_out__ns1__login(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__login(struct soap *soap, const char *tag, int id, const struct _ns1__login *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__login), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_PointerTons1__ArrayOfString(soap, "ns1:in1", -1, &a->in1, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__login * SOAP_FMAC4 soap_get__ns1__login(struct soap *soap, struct _ns1__login *p, const char *tag, const char *type) { if ((p = soap_in__ns1__login(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__login * SOAP_FMAC4 soap_in__ns1__login(struct soap *soap, const char *tag, struct _ns1__login *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__login *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__login, sizeof(struct _ns1__login), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__login(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:in1", &a->in1, "ns1:ArrayOfString")) { soap_flag_in1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__login *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__login, 0, sizeof(struct _ns1__login), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns3__MountPoint(struct soap *soap, struct ns3__MountPoint *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->automaticallyMounted = NULL; a->disabled = NULL; soap_default_string(soap, &a->dn); soap_default_string(soap, &a->fqan); a->mountPointId = NULL; soap_default_string(soap, &a->mountpoint); soap_default_string(soap, &a->rootUrl); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns3__MountPoint(struct soap *soap, const struct ns3__MountPoint *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerToxsd__boolean(soap, &a->automaticallyMounted); soap_serialize_PointerToxsd__boolean(soap, &a->disabled); soap_serialize_string(soap, &a->dn); soap_serialize_string(soap, &a->fqan); soap_serialize_PointerToLONG64(soap, &a->mountPointId); soap_serialize_string(soap, &a->mountpoint); soap_serialize_string(soap, &a->rootUrl); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns3__MountPoint(struct soap *soap, const struct ns3__MountPoint *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns3__MountPoint); if (soap_out_ns3__MountPoint(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns3__MountPoint(struct soap *soap, const char *tag, int id, const struct ns3__MountPoint *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns3__MountPoint), type); soap_out_PointerToxsd__boolean(soap, "ns3:automaticallyMounted", -1, &a->automaticallyMounted, ""); soap_out_PointerToxsd__boolean(soap, "ns3:disabled", -1, &a->disabled, ""); soap_out_string(soap, "ns3:dn", -1, &a->dn, ""); soap_out_string(soap, "ns3:fqan", -1, &a->fqan, ""); soap_out_PointerToLONG64(soap, "ns3:mountPointId", -1, &a->mountPointId, ""); soap_out_string(soap, "ns3:mountpoint", -1, &a->mountpoint, ""); soap_out_string(soap, "ns3:rootUrl", -1, &a->rootUrl, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct ns3__MountPoint * SOAP_FMAC4 soap_get_ns3__MountPoint(struct soap *soap, struct ns3__MountPoint *p, const char *tag, const char *type) { if ((p = soap_in_ns3__MountPoint(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns3__MountPoint * SOAP_FMAC4 soap_in_ns3__MountPoint(struct soap *soap, const char *tag, struct ns3__MountPoint *a, const char *type) { short soap_flag_automaticallyMounted = 1, soap_flag_disabled = 1, soap_flag_dn = 1, soap_flag_fqan = 1, soap_flag_mountPointId = 1, soap_flag_mountpoint = 1, soap_flag_rootUrl = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct ns3__MountPoint *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns3__MountPoint, sizeof(struct ns3__MountPoint), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_ns3__MountPoint(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_automaticallyMounted && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerToxsd__boolean(soap, "ns3:automaticallyMounted", &a->automaticallyMounted, "xsd:boolean")) { soap_flag_automaticallyMounted--; continue; } if (soap_flag_disabled && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerToxsd__boolean(soap, "ns3:disabled", &a->disabled, "xsd:boolean")) { soap_flag_disabled--; continue; } if (soap_flag_dn && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns3:dn", &a->dn, "xsd:string")) { soap_flag_dn--; continue; } if (soap_flag_fqan && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns3:fqan", &a->fqan, "xsd:string")) { soap_flag_fqan--; continue; } if (soap_flag_mountPointId && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerToLONG64(soap, "ns3:mountPointId", &a->mountPointId, "xsd:long")) { soap_flag_mountPointId--; continue; } if (soap_flag_mountpoint && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns3:mountpoint", &a->mountpoint, "xsd:string")) { soap_flag_mountpoint--; continue; } if (soap_flag_rootUrl && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns3:rootUrl", &a->rootUrl, "xsd:string")) { soap_flag_rootUrl--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct ns3__MountPoint *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns3__MountPoint, 0, sizeof(struct ns3__MountPoint), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__mountResponse(struct soap *soap, struct _ns1__mountResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__mountResponse(struct soap *soap, const struct _ns1__mountResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons3__MountPoint(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__mountResponse(struct soap *soap, const struct _ns1__mountResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__mountResponse); if (soap_out__ns1__mountResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__mountResponse(struct soap *soap, const char *tag, int id, const struct _ns1__mountResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__mountResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons3__MountPoint(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__mountResponse * SOAP_FMAC4 soap_get__ns1__mountResponse(struct soap *soap, struct _ns1__mountResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__mountResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__mountResponse * SOAP_FMAC4 soap_in__ns1__mountResponse(struct soap *soap, const char *tag, struct _ns1__mountResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__mountResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__mountResponse, sizeof(struct _ns1__mountResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__mountResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons3__MountPoint(soap, "ns1:out", &a->out, "ns3:MountPoint")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__mountResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__mountResponse, 0, sizeof(struct _ns1__mountResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__mount(struct soap *soap, struct _ns1__mount *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_string(soap, &a->in1); soap_default_xsd__boolean(soap, &a->in2); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__mount(struct soap *soap, const struct _ns1__mount *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_serialize_string(soap, &a->in1); soap_embedded(soap, &a->in2, SOAP_TYPE_xsd__boolean); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__mount(struct soap *soap, const struct _ns1__mount *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__mount); if (soap_out__ns1__mount(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__mount(struct soap *soap, const char *tag, int id, const struct _ns1__mount *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__mount), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_string(soap, "ns1:in1", -1, &a->in1, ""); soap_out_xsd__boolean(soap, "ns1:in2", -1, &a->in2, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__mount * SOAP_FMAC4 soap_get__ns1__mount(struct soap *soap, struct _ns1__mount *p, const char *tag, const char *type) { if ((p = soap_in__ns1__mount(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__mount * SOAP_FMAC4 soap_in__ns1__mount(struct soap *soap, const char *tag, struct _ns1__mount *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1, soap_flag_in2 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__mount *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__mount, sizeof(struct _ns1__mount), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__mount(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in1", &a->in1, "xsd:string")) { soap_flag_in1--; continue; } if (soap_flag_in2 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_xsd__boolean(soap, "ns1:in2", &a->in2, "xsd:boolean")) { soap_flag_in2--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__mount *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__mount, 0, sizeof(struct _ns1__mount), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0 || soap_flag_in2 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getJobFqanResponse(struct soap *soap, struct _ns1__getJobFqanResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->out); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getJobFqanResponse(struct soap *soap, const struct _ns1__getJobFqanResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getJobFqanResponse(struct soap *soap, const struct _ns1__getJobFqanResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getJobFqanResponse); if (soap_out__ns1__getJobFqanResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getJobFqanResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getJobFqanResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getJobFqanResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_string(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getJobFqanResponse * SOAP_FMAC4 soap_get__ns1__getJobFqanResponse(struct soap *soap, struct _ns1__getJobFqanResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getJobFqanResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobFqanResponse * SOAP_FMAC4 soap_in__ns1__getJobFqanResponse(struct soap *soap, const char *tag, struct _ns1__getJobFqanResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getJobFqanResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getJobFqanResponse, sizeof(struct _ns1__getJobFqanResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getJobFqanResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:out", &a->out, "xsd:string")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getJobFqanResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getJobFqanResponse, 0, sizeof(struct _ns1__getJobFqanResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getJobFqan(struct soap *soap, struct _ns1__getJobFqan *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getJobFqan(struct soap *soap, const struct _ns1__getJobFqan *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getJobFqan(struct soap *soap, const struct _ns1__getJobFqan *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getJobFqan); if (soap_out__ns1__getJobFqan(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getJobFqan(struct soap *soap, const char *tag, int id, const struct _ns1__getJobFqan *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getJobFqan), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getJobFqan * SOAP_FMAC4 soap_get__ns1__getJobFqan(struct soap *soap, struct _ns1__getJobFqan *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getJobFqan(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobFqan * SOAP_FMAC4 soap_in__ns1__getJobFqan(struct soap *soap, const char *tag, struct _ns1__getJobFqan *a, const char *type) { short soap_flag_in0 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getJobFqan *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getJobFqan, sizeof(struct _ns1__getJobFqan), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getJobFqan(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getJobFqan *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getJobFqan, 0, sizeof(struct _ns1__getJobFqan), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getChildrenFilesResponse(struct soap *soap, struct _ns1__getChildrenFilesResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->out = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getChildrenFilesResponse(struct soap *soap, const struct _ns1__getChildrenFilesResponse *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_PointerTons1__ArrayOfString(soap, &a->out); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getChildrenFilesResponse(struct soap *soap, const struct _ns1__getChildrenFilesResponse *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getChildrenFilesResponse); if (soap_out__ns1__getChildrenFilesResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getChildrenFilesResponse(struct soap *soap, const char *tag, int id, const struct _ns1__getChildrenFilesResponse *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getChildrenFilesResponse), type); if (a->out) soap_element_result(soap, "ns1:out"); soap_out_PointerTons1__ArrayOfString(soap, "ns1:out", -1, &a->out, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getChildrenFilesResponse * SOAP_FMAC4 soap_get__ns1__getChildrenFilesResponse(struct soap *soap, struct _ns1__getChildrenFilesResponse *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getChildrenFilesResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getChildrenFilesResponse * SOAP_FMAC4 soap_in__ns1__getChildrenFilesResponse(struct soap *soap, const char *tag, struct _ns1__getChildrenFilesResponse *a, const char *type) { short soap_flag_out = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getChildrenFilesResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getChildrenFilesResponse, sizeof(struct _ns1__getChildrenFilesResponse), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getChildrenFilesResponse(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_out && soap->error == SOAP_TAG_MISMATCH) if (soap_in_PointerTons1__ArrayOfString(soap, "ns1:out", &a->out, "ns1:ArrayOfString")) { soap_flag_out--; continue; } soap_check_result(soap, "ns1:out"); if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getChildrenFilesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getChildrenFilesResponse, 0, sizeof(struct _ns1__getChildrenFilesResponse), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_out > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__getChildrenFiles(struct soap *soap, struct _ns1__getChildrenFiles *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_default_string(soap, &a->in0); soap_default_xsd__boolean(soap, &a->in1); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__getChildrenFiles(struct soap *soap, const struct _ns1__getChildrenFiles *a) { (void)soap; (void)a; /* appease -Wall -Werror */ soap_serialize_string(soap, &a->in0); soap_embedded(soap, &a->in1, SOAP_TYPE_xsd__boolean); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__getChildrenFiles(struct soap *soap, const struct _ns1__getChildrenFiles *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__getChildrenFiles); if (soap_out__ns1__getChildrenFiles(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__getChildrenFiles(struct soap *soap, const char *tag, int id, const struct _ns1__getChildrenFiles *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__getChildrenFiles), type); soap_out_string(soap, "ns1:in0", -1, &a->in0, ""); soap_out_xsd__boolean(soap, "ns1:in1", -1, &a->in1, ""); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__getChildrenFiles * SOAP_FMAC4 soap_get__ns1__getChildrenFiles(struct soap *soap, struct _ns1__getChildrenFiles *p, const char *tag, const char *type) { if ((p = soap_in__ns1__getChildrenFiles(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getChildrenFiles * SOAP_FMAC4 soap_in__ns1__getChildrenFiles(struct soap *soap, const char *tag, struct _ns1__getChildrenFiles *a, const char *type) { short soap_flag_in0 = 1, soap_flag_in1 = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__getChildrenFiles *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__getChildrenFiles, sizeof(struct _ns1__getChildrenFiles), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__getChildrenFiles(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_in0 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_in_string(soap, "ns1:in0", &a->in0, "xsd:string")) { soap_flag_in0--; continue; } if (soap_flag_in1 && soap->error == SOAP_TAG_MISMATCH) if (soap_in_xsd__boolean(soap, "ns1:in1", &a->in1, "xsd:boolean")) { soap_flag_in1--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__getChildrenFiles *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__getChildrenFiles, 0, sizeof(struct _ns1__getChildrenFiles), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_in0 > 0 || soap_flag_in1 > 0)) { soap->error = SOAP_OCCURS; return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__ns1__anyType2anyTypeMap_entry(struct soap *soap, struct _ns1__anyType2anyTypeMap_entry *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->key = NULL; a->value = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__ns1__anyType2anyTypeMap_entry(struct soap *soap, const struct _ns1__anyType2anyTypeMap_entry *a) { (void)soap; (void)a; /* appease -Wall -Werror */ } SOAP_FMAC3 int SOAP_FMAC4 soap_put__ns1__anyType2anyTypeMap_entry(struct soap *soap, const struct _ns1__anyType2anyTypeMap_entry *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__ns1__anyType2anyTypeMap_entry); if (soap_out__ns1__anyType2anyTypeMap_entry(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__ns1__anyType2anyTypeMap_entry(struct soap *soap, const char *tag, int id, const struct _ns1__anyType2anyTypeMap_entry *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE__ns1__anyType2anyTypeMap_entry), type); soap_outliteral(soap, "ns1:key", &a->key, NULL); soap_outliteral(soap, "ns1:value", &a->value, NULL); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _ns1__anyType2anyTypeMap_entry * SOAP_FMAC4 soap_get__ns1__anyType2anyTypeMap_entry(struct soap *soap, struct _ns1__anyType2anyTypeMap_entry *p, const char *tag, const char *type) { if ((p = soap_in__ns1__anyType2anyTypeMap_entry(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__anyType2anyTypeMap_entry * SOAP_FMAC4 soap_in__ns1__anyType2anyTypeMap_entry(struct soap *soap, const char *tag, struct _ns1__anyType2anyTypeMap_entry *a, const char *type) { short soap_flag_key = 1, soap_flag_value = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct _ns1__anyType2anyTypeMap_entry *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__ns1__anyType2anyTypeMap_entry, sizeof(struct _ns1__anyType2anyTypeMap_entry), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__ns1__anyType2anyTypeMap_entry(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_key && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_inliteral(soap, "ns1:key", &a->key)) { soap_flag_key--; continue; } if (soap_flag_value && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) if (soap_inliteral(soap, "ns1:value", &a->value)) { soap_flag_value--; continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct _ns1__anyType2anyTypeMap_entry *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__ns1__anyType2anyTypeMap_entry, 0, sizeof(struct _ns1__anyType2anyTypeMap_entry), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__anyType2anyTypeMap(struct soap *soap, struct ns1__anyType2anyTypeMap *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->__sizeentry = 0; a->entry = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns1__anyType2anyTypeMap(struct soap *soap, const struct ns1__anyType2anyTypeMap *a) { (void)soap; (void)a; /* appease -Wall -Werror */ if (a->entry) { int i; for (i = 0; i < a->__sizeentry; i++) { soap_embedded(soap, a->entry + i, SOAP_TYPE__ns1__anyType2anyTypeMap_entry); soap_serialize__ns1__anyType2anyTypeMap_entry(soap, a->entry + i); } } } SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__anyType2anyTypeMap(struct soap *soap, const struct ns1__anyType2anyTypeMap *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__anyType2anyTypeMap); if (soap_out_ns1__anyType2anyTypeMap(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__anyType2anyTypeMap(struct soap *soap, const char *tag, int id, const struct ns1__anyType2anyTypeMap *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__anyType2anyTypeMap), type); if (a->entry) { int i; for (i = 0; i < a->__sizeentry; i++) soap_out__ns1__anyType2anyTypeMap_entry(soap, "ns1:entry", -1, a->entry + i, ""); } soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct ns1__anyType2anyTypeMap * SOAP_FMAC4 soap_get_ns1__anyType2anyTypeMap(struct soap *soap, struct ns1__anyType2anyTypeMap *p, const char *tag, const char *type) { if ((p = soap_in_ns1__anyType2anyTypeMap(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns1__anyType2anyTypeMap * SOAP_FMAC4 soap_in_ns1__anyType2anyTypeMap(struct soap *soap, const char *tag, struct ns1__anyType2anyTypeMap *a, const char *type) { short soap_flag_entry = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct ns1__anyType2anyTypeMap *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__anyType2anyTypeMap, sizeof(struct ns1__anyType2anyTypeMap), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_ns1__anyType2anyTypeMap(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_entry && soap->error == SOAP_TAG_MISMATCH) { struct _ns1__anyType2anyTypeMap_entry *p; soap_new_block(soap); for (a->__sizeentry = 0; !soap_element_begin_in(soap, "ns1:entry", 1, NULL); a->__sizeentry++) { p = (struct _ns1__anyType2anyTypeMap_entry *)soap_push_block(soap, sizeof(struct _ns1__anyType2anyTypeMap_entry)); soap_default__ns1__anyType2anyTypeMap_entry(soap, p); soap_revert(soap); if (!soap_in__ns1__anyType2anyTypeMap_entry(soap, "ns1:entry", p, "")) break; soap_flag_entry = 0; } a->entry = (struct _ns1__anyType2anyTypeMap_entry *)soap_save_block(soap, NULL, 1); if (!soap_flag_entry && soap->error == SOAP_TAG_MISMATCH) continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct ns1__anyType2anyTypeMap *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__anyType2anyTypeMap, 0, sizeof(struct ns1__anyType2anyTypeMap), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__ArrayOfString(struct soap *soap, struct ns1__ArrayOfString *a) { (void)soap; (void)a; /* appease -Wall -Werror */ a->__sizestring = 0; a->string = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns1__ArrayOfString(struct soap *soap, const struct ns1__ArrayOfString *a) { (void)soap; (void)a; /* appease -Wall -Werror */ if (a->string) { int i; for (i = 0; i < a->__sizestring; i++) { soap_serialize_string(soap, a->string + i); } } } SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__ArrayOfString(struct soap *soap, const struct ns1__ArrayOfString *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__ArrayOfString); if (soap_out_ns1__ArrayOfString(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__ArrayOfString(struct soap *soap, const char *tag, int id, const struct ns1__ArrayOfString *a, const char *type) { soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__ArrayOfString), type); if (a->string) { int i; for (i = 0; i < a->__sizestring; i++) soap_out_string(soap, "ns1:string", -1, a->string + i, ""); } soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct ns1__ArrayOfString * SOAP_FMAC4 soap_get_ns1__ArrayOfString(struct soap *soap, struct ns1__ArrayOfString *p, const char *tag, const char *type) { if ((p = soap_in_ns1__ArrayOfString(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns1__ArrayOfString * SOAP_FMAC4 soap_in_ns1__ArrayOfString(struct soap *soap, const char *tag, struct ns1__ArrayOfString *a, const char *type) { short soap_flag_string = 1; if (soap_element_begin_in(soap, tag, 0, type)) return NULL; a = (struct ns1__ArrayOfString *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__ArrayOfString, sizeof(struct ns1__ArrayOfString), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_ns1__ArrayOfString(soap, a); if (soap->body && !*soap->href) { for (;;) { soap->error = SOAP_TAG_MISMATCH; if (soap_flag_string && soap->error == SOAP_TAG_MISMATCH) { char **p; soap_new_block(soap); for (a->__sizestring = 0; !soap_element_begin_in(soap, "ns1:string", 1, NULL); a->__sizestring++) { p = (char **)soap_push_block(soap, sizeof(char *)); *p = NULL; soap_revert(soap); if (!soap_in_string(soap, "ns1:string", p, "xsd:string")) break; soap_flag_string = 0; } a->string = (char **)soap_save_block(soap, NULL, 1); if (!soap_flag_string && soap->error == SOAP_TAG_MISMATCH) continue; } if (soap->error == SOAP_TAG_MISMATCH) soap->error = soap_ignore_element(soap); if (soap->error == SOAP_NO_TAG) break; if (soap->error) return NULL; } if (soap_element_end_in(soap, tag)) return NULL; } else { a = (struct ns1__ArrayOfString *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__ArrayOfString, 0, sizeof(struct ns1__ArrayOfString), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default_xsd__base64Binary(struct soap *soap, struct xsd__base64Binary *a) { a->__size = 0; a->__ptr = NULL; a->id = NULL; a->type = NULL; a->options = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_xsd__base64Binary(struct soap *soap, struct xsd__base64Binary const*a) { if (a->__ptr && !soap_array_reference(soap, a, (struct soap_array*)&a->__ptr, 1, SOAP_TYPE_xsd__base64Binary)) if (a->id || a->type) soap->mode |= SOAP_ENC_DIME; } SOAP_FMAC3 int SOAP_FMAC4 soap_put_xsd__base64Binary(struct soap *soap, const struct xsd__base64Binary *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, (struct soap_array*)&a->__ptr, 1, tag, SOAP_TYPE_xsd__base64Binary); if (soap_out_xsd__base64Binary(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__base64Binary(struct soap *soap, const char *tag, int id, const struct xsd__base64Binary *a, const char *type) { #ifndef WITH_LEANER id = soap_attachment(soap, tag, id, a, (struct soap_array*)&a->__ptr, a->id, a->type, a->options, 1, type, SOAP_TYPE_xsd__base64Binary); #else id = soap_element_id(soap, tag, id, a, (struct soap_array*)&a->__ptr, 1, type, SOAP_TYPE_xsd__base64Binary); #endif if (id < 0) return soap->error; soap_element_begin_out(soap, tag, id, type); soap_putbase64(soap, a->__ptr, a->__size); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct xsd__base64Binary * SOAP_FMAC4 soap_get_xsd__base64Binary(struct soap *soap, struct xsd__base64Binary *p, const char *tag, const char *type) { if ((p = soap_in_xsd__base64Binary(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct xsd__base64Binary * SOAP_FMAC4 soap_in_xsd__base64Binary(struct soap *soap, const char *tag, struct xsd__base64Binary *a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (*soap->type && soap_match_tag(soap, soap->type, type) && soap_match_tag(soap, soap->type, ":base64Binary") && soap_match_tag(soap, soap->type, ":base64")) { soap->error = SOAP_TYPE; return NULL; } a = (struct xsd__base64Binary *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__base64Binary, sizeof(struct xsd__base64Binary), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default_xsd__base64Binary(soap, a); if (soap->body && !*soap->href) { a->__ptr = soap_getbase64(soap, &a->__size, 0); #ifndef WITH_LEANER if (soap_xop_forward(soap, &a->__ptr, &a->__size, &a->id, &a->type, &a->options)) return NULL; #endif if ((!a->__ptr && soap->error) || soap_element_end_in(soap, tag)) return NULL; } else { #ifndef WITH_LEANER if (*soap->href != '#') { if (soap_dime_forward(soap, &a->__ptr, &a->__size, &a->id, &a->type, &a->options)) return NULL; } else #endif a = (struct xsd__base64Binary *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_xsd__base64Binary, 0, sizeof(struct xsd__base64Binary), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__xop__Include(struct soap *soap, struct _xop__Include *a) { a->__size = 0; a->__ptr = NULL; a->id = NULL; a->type = NULL; a->options = NULL; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__xop__Include(struct soap *soap, struct _xop__Include const*a) { if (a->__ptr && !soap_array_reference(soap, a, (struct soap_array*)&a->__ptr, 1, SOAP_TYPE__xop__Include)) if (a->id || a->type) soap->mode |= SOAP_ENC_DIME; } SOAP_FMAC3 int SOAP_FMAC4 soap_put__xop__Include(struct soap *soap, const struct _xop__Include *a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, (struct soap_array*)&a->__ptr, 1, tag, SOAP_TYPE__xop__Include); if (soap_out__xop__Include(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__xop__Include(struct soap *soap, const char *tag, int id, const struct _xop__Include *a, const char *type) { #ifndef WITH_LEANER id = soap_attachment(soap, tag, id, a, (struct soap_array*)&a->__ptr, a->id, a->type, a->options, 1, type, SOAP_TYPE__xop__Include); #else id = soap_element_id(soap, tag, id, a, (struct soap_array*)&a->__ptr, 1, type, SOAP_TYPE__xop__Include); #endif if (id < 0) return soap->error; soap_element_begin_out(soap, tag, id, type); soap_putbase64(soap, a->__ptr, a->__size); soap_element_end_out(soap, tag); return SOAP_OK; } SOAP_FMAC3 struct _xop__Include * SOAP_FMAC4 soap_get__xop__Include(struct soap *soap, struct _xop__Include *p, const char *tag, const char *type) { if ((p = soap_in__xop__Include(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _xop__Include * SOAP_FMAC4 soap_in__xop__Include(struct soap *soap, const char *tag, struct _xop__Include *a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (*soap->type && soap_match_tag(soap, soap->type, type) && soap_match_tag(soap, soap->type, ":base64Binary") && soap_match_tag(soap, soap->type, ":base64")) { soap->error = SOAP_TYPE; return NULL; } a = (struct _xop__Include *)soap_id_enter(soap, soap->id, a, SOAP_TYPE__xop__Include, sizeof(struct _xop__Include), 0, NULL, NULL, NULL); if (!a) return NULL; soap_default__xop__Include(soap, a); if (soap->body && !*soap->href) { a->__ptr = soap_getbase64(soap, &a->__size, 0); #ifndef WITH_LEANER if (soap_xop_forward(soap, &a->__ptr, &a->__size, &a->id, &a->type, &a->options)) return NULL; #endif if ((!a->__ptr && soap->error) || soap_element_end_in(soap, tag)) return NULL; } else { #ifndef WITH_LEANER if (*soap->href != '#') { if (soap_dime_forward(soap, &a->__ptr, &a->__size, &a->id, &a->type, &a->options)) return NULL; } else #endif a = (struct _xop__Include *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE__xop__Include, 0, sizeof(struct _xop__Include), 0, NULL); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE_SOAP_ENV__Reason)) soap_serialize_SOAP_ENV__Reason(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToSOAP_ENV__Reason); if (soap_out_PointerToSOAP_ENV__Reason(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Reason(struct soap *soap, const char *tag, int id, struct SOAP_ENV__Reason *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_SOAP_ENV__Reason); if (id < 0) return soap->error; return soap_out_SOAP_ENV__Reason(soap, tag, id, *a, type); } SOAP_FMAC3 struct SOAP_ENV__Reason ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason **p, const char *tag, const char *type) { if ((p = soap_in_PointerToSOAP_ENV__Reason(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct SOAP_ENV__Reason ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Reason(struct soap *soap, const char *tag, struct SOAP_ENV__Reason **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct SOAP_ENV__Reason **)soap_malloc(soap, sizeof(struct SOAP_ENV__Reason *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_SOAP_ENV__Reason(soap, tag, *a, type))) return NULL; } else { a = (struct SOAP_ENV__Reason **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_SOAP_ENV__Reason, sizeof(struct SOAP_ENV__Reason), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } #endif #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE_SOAP_ENV__Detail)) soap_serialize_SOAP_ENV__Detail(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToSOAP_ENV__Detail); if (soap_out_PointerToSOAP_ENV__Detail(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Detail(struct soap *soap, const char *tag, int id, struct SOAP_ENV__Detail *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_SOAP_ENV__Detail); if (id < 0) return soap->error; return soap_out_SOAP_ENV__Detail(soap, tag, id, *a, type); } SOAP_FMAC3 struct SOAP_ENV__Detail ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail **p, const char *tag, const char *type) { if ((p = soap_in_PointerToSOAP_ENV__Detail(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct SOAP_ENV__Detail ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Detail(struct soap *soap, const char *tag, struct SOAP_ENV__Detail **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct SOAP_ENV__Detail **)soap_malloc(soap, sizeof(struct SOAP_ENV__Detail *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_SOAP_ENV__Detail(soap, tag, *a, type))) return NULL; } else { a = (struct SOAP_ENV__Detail **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_SOAP_ENV__Detail, sizeof(struct SOAP_ENV__Detail), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } #endif #ifndef WITH_NOGLOBAL SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE_SOAP_ENV__Code)) soap_serialize_SOAP_ENV__Code(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToSOAP_ENV__Code); if (soap_out_PointerToSOAP_ENV__Code(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Code(struct soap *soap, const char *tag, int id, struct SOAP_ENV__Code *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_SOAP_ENV__Code); if (id < 0) return soap->error; return soap_out_SOAP_ENV__Code(soap, tag, id, *a, type); } SOAP_FMAC3 struct SOAP_ENV__Code ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code **p, const char *tag, const char *type) { if ((p = soap_in_PointerToSOAP_ENV__Code(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct SOAP_ENV__Code ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Code(struct soap *soap, const char *tag, struct SOAP_ENV__Code **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct SOAP_ENV__Code **)soap_malloc(soap, sizeof(struct SOAP_ENV__Code *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_SOAP_ENV__Code(soap, tag, *a, type))) return NULL; } else { a = (struct SOAP_ENV__Code **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_SOAP_ENV__Code, sizeof(struct SOAP_ENV__Code), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } #endif SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getAllHostsResponse(struct soap *soap, struct _ns1__getAllHostsResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getAllHostsResponse)) soap_serialize__ns1__getAllHostsResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getAllHostsResponse(struct soap *soap, struct _ns1__getAllHostsResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getAllHostsResponse); if (soap_out_PointerTo_ns1__getAllHostsResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getAllHostsResponse(struct soap *soap, const char *tag, int id, struct _ns1__getAllHostsResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getAllHostsResponse); if (id < 0) return soap->error; return soap_out__ns1__getAllHostsResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getAllHostsResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getAllHostsResponse(struct soap *soap, struct _ns1__getAllHostsResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getAllHostsResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllHostsResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getAllHostsResponse(struct soap *soap, const char *tag, struct _ns1__getAllHostsResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getAllHostsResponse **)soap_malloc(soap, sizeof(struct _ns1__getAllHostsResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getAllHostsResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getAllHostsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getAllHostsResponse, sizeof(struct _ns1__getAllHostsResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getAllHosts(struct soap *soap, struct _ns1__getAllHosts *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getAllHosts)) soap_serialize__ns1__getAllHosts(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getAllHosts(struct soap *soap, struct _ns1__getAllHosts *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getAllHosts); if (soap_out_PointerTo_ns1__getAllHosts(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getAllHosts(struct soap *soap, const char *tag, int id, struct _ns1__getAllHosts *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getAllHosts); if (id < 0) return soap->error; return soap_out__ns1__getAllHosts(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getAllHosts ** SOAP_FMAC4 soap_get_PointerTo_ns1__getAllHosts(struct soap *soap, struct _ns1__getAllHosts **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getAllHosts(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllHosts ** SOAP_FMAC4 soap_in_PointerTo_ns1__getAllHosts(struct soap *soap, const char *tag, struct _ns1__getAllHosts **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getAllHosts **)soap_malloc(soap, sizeof(struct _ns1__getAllHosts *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getAllHosts(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getAllHosts **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getAllHosts, sizeof(struct _ns1__getAllHosts), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__submitSupportRequestResponse(struct soap *soap, struct _ns1__submitSupportRequestResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__submitSupportRequestResponse)) soap_serialize__ns1__submitSupportRequestResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__submitSupportRequestResponse(struct soap *soap, struct _ns1__submitSupportRequestResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__submitSupportRequestResponse); if (soap_out_PointerTo_ns1__submitSupportRequestResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__submitSupportRequestResponse(struct soap *soap, const char *tag, int id, struct _ns1__submitSupportRequestResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__submitSupportRequestResponse); if (id < 0) return soap->error; return soap_out__ns1__submitSupportRequestResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__submitSupportRequestResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__submitSupportRequestResponse(struct soap *soap, struct _ns1__submitSupportRequestResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__submitSupportRequestResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__submitSupportRequestResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__submitSupportRequestResponse(struct soap *soap, const char *tag, struct _ns1__submitSupportRequestResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__submitSupportRequestResponse **)soap_malloc(soap, sizeof(struct _ns1__submitSupportRequestResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__submitSupportRequestResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__submitSupportRequestResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__submitSupportRequestResponse, sizeof(struct _ns1__submitSupportRequestResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__submitSupportRequest(struct soap *soap, struct _ns1__submitSupportRequest *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__submitSupportRequest)) soap_serialize__ns1__submitSupportRequest(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__submitSupportRequest(struct soap *soap, struct _ns1__submitSupportRequest *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__submitSupportRequest); if (soap_out_PointerTo_ns1__submitSupportRequest(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__submitSupportRequest(struct soap *soap, const char *tag, int id, struct _ns1__submitSupportRequest *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__submitSupportRequest); if (id < 0) return soap->error; return soap_out__ns1__submitSupportRequest(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__submitSupportRequest ** SOAP_FMAC4 soap_get_PointerTo_ns1__submitSupportRequest(struct soap *soap, struct _ns1__submitSupportRequest **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__submitSupportRequest(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__submitSupportRequest ** SOAP_FMAC4 soap_in_PointerTo_ns1__submitSupportRequest(struct soap *soap, const char *tag, struct _ns1__submitSupportRequest **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__submitSupportRequest **)soap_malloc(soap, sizeof(struct _ns1__submitSupportRequest *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__submitSupportRequest(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__submitSupportRequest **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__submitSupportRequest, sizeof(struct _ns1__submitSupportRequest), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getJobPropertyResponse(struct soap *soap, struct _ns1__getJobPropertyResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getJobPropertyResponse)) soap_serialize__ns1__getJobPropertyResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getJobPropertyResponse(struct soap *soap, struct _ns1__getJobPropertyResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getJobPropertyResponse); if (soap_out_PointerTo_ns1__getJobPropertyResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getJobPropertyResponse(struct soap *soap, const char *tag, int id, struct _ns1__getJobPropertyResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getJobPropertyResponse); if (id < 0) return soap->error; return soap_out__ns1__getJobPropertyResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getJobPropertyResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getJobPropertyResponse(struct soap *soap, struct _ns1__getJobPropertyResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getJobPropertyResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobPropertyResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getJobPropertyResponse(struct soap *soap, const char *tag, struct _ns1__getJobPropertyResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getJobPropertyResponse **)soap_malloc(soap, sizeof(struct _ns1__getJobPropertyResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getJobPropertyResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getJobPropertyResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getJobPropertyResponse, sizeof(struct _ns1__getJobPropertyResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getJobProperty(struct soap *soap, struct _ns1__getJobProperty *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getJobProperty)) soap_serialize__ns1__getJobProperty(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getJobProperty(struct soap *soap, struct _ns1__getJobProperty *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getJobProperty); if (soap_out_PointerTo_ns1__getJobProperty(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getJobProperty(struct soap *soap, const char *tag, int id, struct _ns1__getJobProperty *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getJobProperty); if (id < 0) return soap->error; return soap_out__ns1__getJobProperty(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getJobProperty ** SOAP_FMAC4 soap_get_PointerTo_ns1__getJobProperty(struct soap *soap, struct _ns1__getJobProperty **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getJobProperty(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobProperty ** SOAP_FMAC4 soap_in_PointerTo_ns1__getJobProperty(struct soap *soap, const char *tag, struct _ns1__getJobProperty **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getJobProperty **)soap_malloc(soap, sizeof(struct _ns1__getJobProperty *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getJobProperty(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getJobProperty **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getJobProperty, sizeof(struct _ns1__getJobProperty), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__mount1Response(struct soap *soap, struct _ns1__mount1Response *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__mount1Response)) soap_serialize__ns1__mount1Response(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__mount1Response(struct soap *soap, struct _ns1__mount1Response *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__mount1Response); if (soap_out_PointerTo_ns1__mount1Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__mount1Response(struct soap *soap, const char *tag, int id, struct _ns1__mount1Response *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__mount1Response); if (id < 0) return soap->error; return soap_out__ns1__mount1Response(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__mount1Response ** SOAP_FMAC4 soap_get_PointerTo_ns1__mount1Response(struct soap *soap, struct _ns1__mount1Response **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__mount1Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__mount1Response ** SOAP_FMAC4 soap_in_PointerTo_ns1__mount1Response(struct soap *soap, const char *tag, struct _ns1__mount1Response **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__mount1Response **)soap_malloc(soap, sizeof(struct _ns1__mount1Response *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__mount1Response(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__mount1Response **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__mount1Response, sizeof(struct _ns1__mount1Response), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__mount1(struct soap *soap, struct _ns1__mount1 *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__mount1)) soap_serialize__ns1__mount1(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__mount1(struct soap *soap, struct _ns1__mount1 *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__mount1); if (soap_out_PointerTo_ns1__mount1(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__mount1(struct soap *soap, const char *tag, int id, struct _ns1__mount1 *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__mount1); if (id < 0) return soap->error; return soap_out__ns1__mount1(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__mount1 ** SOAP_FMAC4 soap_get_PointerTo_ns1__mount1(struct soap *soap, struct _ns1__mount1 **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__mount1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__mount1 ** SOAP_FMAC4 soap_in_PointerTo_ns1__mount1(struct soap *soap, const char *tag, struct _ns1__mount1 **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__mount1 **)soap_malloc(soap, sizeof(struct _ns1__mount1 *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__mount1(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__mount1 **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__mount1, sizeof(struct _ns1__mount1), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getJobDetailsResponse(struct soap *soap, struct _ns1__getJobDetailsResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getJobDetailsResponse)) soap_serialize__ns1__getJobDetailsResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getJobDetailsResponse(struct soap *soap, struct _ns1__getJobDetailsResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getJobDetailsResponse); if (soap_out_PointerTo_ns1__getJobDetailsResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getJobDetailsResponse(struct soap *soap, const char *tag, int id, struct _ns1__getJobDetailsResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getJobDetailsResponse); if (id < 0) return soap->error; return soap_out__ns1__getJobDetailsResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getJobDetailsResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getJobDetailsResponse(struct soap *soap, struct _ns1__getJobDetailsResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getJobDetailsResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobDetailsResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getJobDetailsResponse(struct soap *soap, const char *tag, struct _ns1__getJobDetailsResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getJobDetailsResponse **)soap_malloc(soap, sizeof(struct _ns1__getJobDetailsResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getJobDetailsResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getJobDetailsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getJobDetailsResponse, sizeof(struct _ns1__getJobDetailsResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getJobDetails(struct soap *soap, struct _ns1__getJobDetails *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getJobDetails)) soap_serialize__ns1__getJobDetails(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getJobDetails(struct soap *soap, struct _ns1__getJobDetails *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getJobDetails); if (soap_out_PointerTo_ns1__getJobDetails(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getJobDetails(struct soap *soap, const char *tag, int id, struct _ns1__getJobDetails *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getJobDetails); if (id < 0) return soap->error; return soap_out__ns1__getJobDetails(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getJobDetails ** SOAP_FMAC4 soap_get_PointerTo_ns1__getJobDetails(struct soap *soap, struct _ns1__getJobDetails **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getJobDetails(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobDetails ** SOAP_FMAC4 soap_in_PointerTo_ns1__getJobDetails(struct soap *soap, const char *tag, struct _ns1__getJobDetails **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getJobDetails **)soap_malloc(soap, sizeof(struct _ns1__getJobDetails *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getJobDetails(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getJobDetails **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getJobDetails, sizeof(struct _ns1__getJobDetails), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__umountResponse(struct soap *soap, struct _ns1__umountResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__umountResponse)) soap_serialize__ns1__umountResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__umountResponse(struct soap *soap, struct _ns1__umountResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__umountResponse); if (soap_out_PointerTo_ns1__umountResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__umountResponse(struct soap *soap, const char *tag, int id, struct _ns1__umountResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__umountResponse); if (id < 0) return soap->error; return soap_out__ns1__umountResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__umountResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__umountResponse(struct soap *soap, struct _ns1__umountResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__umountResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__umountResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__umountResponse(struct soap *soap, const char *tag, struct _ns1__umountResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__umountResponse **)soap_malloc(soap, sizeof(struct _ns1__umountResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__umountResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__umountResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__umountResponse, sizeof(struct _ns1__umountResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__umount(struct soap *soap, struct _ns1__umount *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__umount)) soap_serialize__ns1__umount(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__umount(struct soap *soap, struct _ns1__umount *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__umount); if (soap_out_PointerTo_ns1__umount(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__umount(struct soap *soap, const char *tag, int id, struct _ns1__umount *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__umount); if (id < 0) return soap->error; return soap_out__ns1__umount(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__umount ** SOAP_FMAC4 soap_get_PointerTo_ns1__umount(struct soap *soap, struct _ns1__umount **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__umount(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__umount ** SOAP_FMAC4 soap_in_PointerTo_ns1__umount(struct soap *soap, const char *tag, struct _ns1__umount **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__umount **)soap_malloc(soap, sizeof(struct _ns1__umount *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__umount(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__umount **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__umount, sizeof(struct _ns1__umount), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getJobStatusResponse(struct soap *soap, struct _ns1__getJobStatusResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getJobStatusResponse)) soap_serialize__ns1__getJobStatusResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getJobStatusResponse(struct soap *soap, struct _ns1__getJobStatusResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getJobStatusResponse); if (soap_out_PointerTo_ns1__getJobStatusResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getJobStatusResponse(struct soap *soap, const char *tag, int id, struct _ns1__getJobStatusResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getJobStatusResponse); if (id < 0) return soap->error; return soap_out__ns1__getJobStatusResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getJobStatusResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getJobStatusResponse(struct soap *soap, struct _ns1__getJobStatusResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getJobStatusResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobStatusResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getJobStatusResponse(struct soap *soap, const char *tag, struct _ns1__getJobStatusResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getJobStatusResponse **)soap_malloc(soap, sizeof(struct _ns1__getJobStatusResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getJobStatusResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getJobStatusResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getJobStatusResponse, sizeof(struct _ns1__getJobStatusResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getJobStatus(struct soap *soap, struct _ns1__getJobStatus *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getJobStatus)) soap_serialize__ns1__getJobStatus(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getJobStatus(struct soap *soap, struct _ns1__getJobStatus *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getJobStatus); if (soap_out_PointerTo_ns1__getJobStatus(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getJobStatus(struct soap *soap, const char *tag, int id, struct _ns1__getJobStatus *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getJobStatus); if (id < 0) return soap->error; return soap_out__ns1__getJobStatus(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getJobStatus ** SOAP_FMAC4 soap_get_PointerTo_ns1__getJobStatus(struct soap *soap, struct _ns1__getJobStatus **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getJobStatus(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobStatus ** SOAP_FMAC4 soap_in_PointerTo_ns1__getJobStatus(struct soap *soap, const char *tag, struct _ns1__getJobStatus **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getJobStatus **)soap_malloc(soap, sizeof(struct _ns1__getJobStatus *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getJobStatus(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getJobStatus **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getJobStatus, sizeof(struct _ns1__getJobStatus), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getJobDetails_USCOREstringResponse(struct soap *soap, struct _ns1__getJobDetails_USCOREstringResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getJobDetails_USCOREstringResponse)) soap_serialize__ns1__getJobDetails_USCOREstringResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getJobDetails_USCOREstringResponse(struct soap *soap, struct _ns1__getJobDetails_USCOREstringResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getJobDetails_USCOREstringResponse); if (soap_out_PointerTo_ns1__getJobDetails_USCOREstringResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getJobDetails_USCOREstringResponse(struct soap *soap, const char *tag, int id, struct _ns1__getJobDetails_USCOREstringResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getJobDetails_USCOREstringResponse); if (id < 0) return soap->error; return soap_out__ns1__getJobDetails_USCOREstringResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getJobDetails_USCOREstringResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getJobDetails_USCOREstringResponse(struct soap *soap, struct _ns1__getJobDetails_USCOREstringResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getJobDetails_USCOREstringResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobDetails_USCOREstringResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getJobDetails_USCOREstringResponse(struct soap *soap, const char *tag, struct _ns1__getJobDetails_USCOREstringResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getJobDetails_USCOREstringResponse **)soap_malloc(soap, sizeof(struct _ns1__getJobDetails_USCOREstringResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getJobDetails_USCOREstringResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getJobDetails_USCOREstringResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getJobDetails_USCOREstringResponse, sizeof(struct _ns1__getJobDetails_USCOREstringResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getJobDetails_USCOREstring(struct soap *soap, struct _ns1__getJobDetails_USCOREstring *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getJobDetails_USCOREstring)) soap_serialize__ns1__getJobDetails_USCOREstring(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getJobDetails_USCOREstring(struct soap *soap, struct _ns1__getJobDetails_USCOREstring *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getJobDetails_USCOREstring); if (soap_out_PointerTo_ns1__getJobDetails_USCOREstring(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getJobDetails_USCOREstring(struct soap *soap, const char *tag, int id, struct _ns1__getJobDetails_USCOREstring *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getJobDetails_USCOREstring); if (id < 0) return soap->error; return soap_out__ns1__getJobDetails_USCOREstring(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getJobDetails_USCOREstring ** SOAP_FMAC4 soap_get_PointerTo_ns1__getJobDetails_USCOREstring(struct soap *soap, struct _ns1__getJobDetails_USCOREstring **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getJobDetails_USCOREstring(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobDetails_USCOREstring ** SOAP_FMAC4 soap_in_PointerTo_ns1__getJobDetails_USCOREstring(struct soap *soap, const char *tag, struct _ns1__getJobDetails_USCOREstring **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getJobDetails_USCOREstring **)soap_malloc(soap, sizeof(struct _ns1__getJobDetails_USCOREstring *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getJobDetails_USCOREstring(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getJobDetails_USCOREstring **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getJobDetails_USCOREstring, sizeof(struct _ns1__getJobDetails_USCOREstring), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getAllSitesResponse(struct soap *soap, struct _ns1__getAllSitesResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getAllSitesResponse)) soap_serialize__ns1__getAllSitesResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getAllSitesResponse(struct soap *soap, struct _ns1__getAllSitesResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getAllSitesResponse); if (soap_out_PointerTo_ns1__getAllSitesResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getAllSitesResponse(struct soap *soap, const char *tag, int id, struct _ns1__getAllSitesResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getAllSitesResponse); if (id < 0) return soap->error; return soap_out__ns1__getAllSitesResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getAllSitesResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getAllSitesResponse(struct soap *soap, struct _ns1__getAllSitesResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getAllSitesResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllSitesResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getAllSitesResponse(struct soap *soap, const char *tag, struct _ns1__getAllSitesResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getAllSitesResponse **)soap_malloc(soap, sizeof(struct _ns1__getAllSitesResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getAllSitesResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getAllSitesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getAllSitesResponse, sizeof(struct _ns1__getAllSitesResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getAllSites(struct soap *soap, struct _ns1__getAllSites *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getAllSites)) soap_serialize__ns1__getAllSites(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getAllSites(struct soap *soap, struct _ns1__getAllSites *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getAllSites); if (soap_out_PointerTo_ns1__getAllSites(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getAllSites(struct soap *soap, const char *tag, int id, struct _ns1__getAllSites *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getAllSites); if (id < 0) return soap->error; return soap_out__ns1__getAllSites(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getAllSites ** SOAP_FMAC4 soap_get_PointerTo_ns1__getAllSites(struct soap *soap, struct _ns1__getAllSites **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getAllSites(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllSites ** SOAP_FMAC4 soap_in_PointerTo_ns1__getAllSites(struct soap *soap, const char *tag, struct _ns1__getAllSites **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getAllSites **)soap_malloc(soap, sizeof(struct _ns1__getAllSites *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getAllSites(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getAllSites **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getAllSites, sizeof(struct _ns1__getAllSites), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__setJobDescriptionResponse(struct soap *soap, struct _ns1__setJobDescriptionResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__setJobDescriptionResponse)) soap_serialize__ns1__setJobDescriptionResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__setJobDescriptionResponse(struct soap *soap, struct _ns1__setJobDescriptionResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__setJobDescriptionResponse); if (soap_out_PointerTo_ns1__setJobDescriptionResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__setJobDescriptionResponse(struct soap *soap, const char *tag, int id, struct _ns1__setJobDescriptionResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__setJobDescriptionResponse); if (id < 0) return soap->error; return soap_out__ns1__setJobDescriptionResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__setJobDescriptionResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__setJobDescriptionResponse(struct soap *soap, struct _ns1__setJobDescriptionResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__setJobDescriptionResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__setJobDescriptionResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__setJobDescriptionResponse(struct soap *soap, const char *tag, struct _ns1__setJobDescriptionResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__setJobDescriptionResponse **)soap_malloc(soap, sizeof(struct _ns1__setJobDescriptionResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__setJobDescriptionResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__setJobDescriptionResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__setJobDescriptionResponse, sizeof(struct _ns1__setJobDescriptionResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__setJobDescription(struct soap *soap, struct _ns1__setJobDescription *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__setJobDescription)) soap_serialize__ns1__setJobDescription(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__setJobDescription(struct soap *soap, struct _ns1__setJobDescription *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__setJobDescription); if (soap_out_PointerTo_ns1__setJobDescription(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__setJobDescription(struct soap *soap, const char *tag, int id, struct _ns1__setJobDescription *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__setJobDescription); if (id < 0) return soap->error; return soap_out__ns1__setJobDescription(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__setJobDescription ** SOAP_FMAC4 soap_get_PointerTo_ns1__setJobDescription(struct soap *soap, struct _ns1__setJobDescription **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__setJobDescription(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__setJobDescription ** SOAP_FMAC4 soap_in_PointerTo_ns1__setJobDescription(struct soap *soap, const char *tag, struct _ns1__setJobDescription **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__setJobDescription **)soap_malloc(soap, sizeof(struct _ns1__setJobDescription *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__setJobDescription(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__setJobDescription **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__setJobDescription, sizeof(struct _ns1__setJobDescription), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getJobDirectoryResponse(struct soap *soap, struct _ns1__getJobDirectoryResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getJobDirectoryResponse)) soap_serialize__ns1__getJobDirectoryResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getJobDirectoryResponse(struct soap *soap, struct _ns1__getJobDirectoryResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getJobDirectoryResponse); if (soap_out_PointerTo_ns1__getJobDirectoryResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getJobDirectoryResponse(struct soap *soap, const char *tag, int id, struct _ns1__getJobDirectoryResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getJobDirectoryResponse); if (id < 0) return soap->error; return soap_out__ns1__getJobDirectoryResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getJobDirectoryResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getJobDirectoryResponse(struct soap *soap, struct _ns1__getJobDirectoryResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getJobDirectoryResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobDirectoryResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getJobDirectoryResponse(struct soap *soap, const char *tag, struct _ns1__getJobDirectoryResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getJobDirectoryResponse **)soap_malloc(soap, sizeof(struct _ns1__getJobDirectoryResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getJobDirectoryResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getJobDirectoryResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getJobDirectoryResponse, sizeof(struct _ns1__getJobDirectoryResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getJobDirectory(struct soap *soap, struct _ns1__getJobDirectory *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getJobDirectory)) soap_serialize__ns1__getJobDirectory(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getJobDirectory(struct soap *soap, struct _ns1__getJobDirectory *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getJobDirectory); if (soap_out_PointerTo_ns1__getJobDirectory(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getJobDirectory(struct soap *soap, const char *tag, int id, struct _ns1__getJobDirectory *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getJobDirectory); if (id < 0) return soap->error; return soap_out__ns1__getJobDirectory(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getJobDirectory ** SOAP_FMAC4 soap_get_PointerTo_ns1__getJobDirectory(struct soap *soap, struct _ns1__getJobDirectory **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getJobDirectory(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobDirectory ** SOAP_FMAC4 soap_in_PointerTo_ns1__getJobDirectory(struct soap *soap, const char *tag, struct _ns1__getJobDirectory **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getJobDirectory **)soap_malloc(soap, sizeof(struct _ns1__getJobDirectory *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getJobDirectory(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getJobDirectory **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getJobDirectory, sizeof(struct _ns1__getJobDirectory), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__uploadResponse(struct soap *soap, struct _ns1__uploadResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__uploadResponse)) soap_serialize__ns1__uploadResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__uploadResponse(struct soap *soap, struct _ns1__uploadResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__uploadResponse); if (soap_out_PointerTo_ns1__uploadResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__uploadResponse(struct soap *soap, const char *tag, int id, struct _ns1__uploadResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__uploadResponse); if (id < 0) return soap->error; return soap_out__ns1__uploadResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__uploadResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__uploadResponse(struct soap *soap, struct _ns1__uploadResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__uploadResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__uploadResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__uploadResponse(struct soap *soap, const char *tag, struct _ns1__uploadResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__uploadResponse **)soap_malloc(soap, sizeof(struct _ns1__uploadResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__uploadResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__uploadResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__uploadResponse, sizeof(struct _ns1__uploadResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__upload(struct soap *soap, struct _ns1__upload *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__upload)) soap_serialize__ns1__upload(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__upload(struct soap *soap, struct _ns1__upload *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__upload); if (soap_out_PointerTo_ns1__upload(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__upload(struct soap *soap, const char *tag, int id, struct _ns1__upload *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__upload); if (id < 0) return soap->error; return soap_out__ns1__upload(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__upload ** SOAP_FMAC4 soap_get_PointerTo_ns1__upload(struct soap *soap, struct _ns1__upload **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__upload(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__upload ** SOAP_FMAC4 soap_in_PointerTo_ns1__upload(struct soap *soap, const char *tag, struct _ns1__upload **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__upload **)soap_malloc(soap, sizeof(struct _ns1__upload *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__upload(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__upload **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__upload, sizeof(struct _ns1__upload), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__deleteFileResponse(struct soap *soap, struct _ns1__deleteFileResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__deleteFileResponse)) soap_serialize__ns1__deleteFileResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__deleteFileResponse(struct soap *soap, struct _ns1__deleteFileResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__deleteFileResponse); if (soap_out_PointerTo_ns1__deleteFileResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__deleteFileResponse(struct soap *soap, const char *tag, int id, struct _ns1__deleteFileResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__deleteFileResponse); if (id < 0) return soap->error; return soap_out__ns1__deleteFileResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__deleteFileResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__deleteFileResponse(struct soap *soap, struct _ns1__deleteFileResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__deleteFileResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__deleteFileResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__deleteFileResponse(struct soap *soap, const char *tag, struct _ns1__deleteFileResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__deleteFileResponse **)soap_malloc(soap, sizeof(struct _ns1__deleteFileResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__deleteFileResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__deleteFileResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__deleteFileResponse, sizeof(struct _ns1__deleteFileResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__deleteFile(struct soap *soap, struct _ns1__deleteFile *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__deleteFile)) soap_serialize__ns1__deleteFile(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__deleteFile(struct soap *soap, struct _ns1__deleteFile *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__deleteFile); if (soap_out_PointerTo_ns1__deleteFile(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__deleteFile(struct soap *soap, const char *tag, int id, struct _ns1__deleteFile *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__deleteFile); if (id < 0) return soap->error; return soap_out__ns1__deleteFile(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__deleteFile ** SOAP_FMAC4 soap_get_PointerTo_ns1__deleteFile(struct soap *soap, struct _ns1__deleteFile **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__deleteFile(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__deleteFile ** SOAP_FMAC4 soap_in_PointerTo_ns1__deleteFile(struct soap *soap, const char *tag, struct _ns1__deleteFile **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__deleteFile **)soap_malloc(soap, sizeof(struct _ns1__deleteFile *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__deleteFile(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__deleteFile **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__deleteFile, sizeof(struct _ns1__deleteFile), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getFileSizeResponse(struct soap *soap, struct _ns1__getFileSizeResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getFileSizeResponse)) soap_serialize__ns1__getFileSizeResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getFileSizeResponse(struct soap *soap, struct _ns1__getFileSizeResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getFileSizeResponse); if (soap_out_PointerTo_ns1__getFileSizeResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getFileSizeResponse(struct soap *soap, const char *tag, int id, struct _ns1__getFileSizeResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getFileSizeResponse); if (id < 0) return soap->error; return soap_out__ns1__getFileSizeResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getFileSizeResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getFileSizeResponse(struct soap *soap, struct _ns1__getFileSizeResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getFileSizeResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getFileSizeResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getFileSizeResponse(struct soap *soap, const char *tag, struct _ns1__getFileSizeResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getFileSizeResponse **)soap_malloc(soap, sizeof(struct _ns1__getFileSizeResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getFileSizeResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getFileSizeResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getFileSizeResponse, sizeof(struct _ns1__getFileSizeResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getFileSize(struct soap *soap, struct _ns1__getFileSize *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getFileSize)) soap_serialize__ns1__getFileSize(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getFileSize(struct soap *soap, struct _ns1__getFileSize *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getFileSize); if (soap_out_PointerTo_ns1__getFileSize(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getFileSize(struct soap *soap, const char *tag, int id, struct _ns1__getFileSize *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getFileSize); if (id < 0) return soap->error; return soap_out__ns1__getFileSize(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getFileSize ** SOAP_FMAC4 soap_get_PointerTo_ns1__getFileSize(struct soap *soap, struct _ns1__getFileSize **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getFileSize(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getFileSize ** SOAP_FMAC4 soap_in_PointerTo_ns1__getFileSize(struct soap *soap, const char *tag, struct _ns1__getFileSize **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getFileSize **)soap_malloc(soap, sizeof(struct _ns1__getFileSize *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getFileSize(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getFileSize **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getFileSize, sizeof(struct _ns1__getFileSize), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__cpResponse(struct soap *soap, struct _ns1__cpResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__cpResponse)) soap_serialize__ns1__cpResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__cpResponse(struct soap *soap, struct _ns1__cpResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__cpResponse); if (soap_out_PointerTo_ns1__cpResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__cpResponse(struct soap *soap, const char *tag, int id, struct _ns1__cpResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__cpResponse); if (id < 0) return soap->error; return soap_out__ns1__cpResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__cpResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__cpResponse(struct soap *soap, struct _ns1__cpResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__cpResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__cpResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__cpResponse(struct soap *soap, const char *tag, struct _ns1__cpResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__cpResponse **)soap_malloc(soap, sizeof(struct _ns1__cpResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__cpResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__cpResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__cpResponse, sizeof(struct _ns1__cpResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__cp(struct soap *soap, struct _ns1__cp *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__cp)) soap_serialize__ns1__cp(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__cp(struct soap *soap, struct _ns1__cp *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__cp); if (soap_out_PointerTo_ns1__cp(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__cp(struct soap *soap, const char *tag, int id, struct _ns1__cp *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__cp); if (id < 0) return soap->error; return soap_out__ns1__cp(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__cp ** SOAP_FMAC4 soap_get_PointerTo_ns1__cp(struct soap *soap, struct _ns1__cp **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__cp(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__cp ** SOAP_FMAC4 soap_in_PointerTo_ns1__cp(struct soap *soap, const char *tag, struct _ns1__cp **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__cp **)soap_malloc(soap, sizeof(struct _ns1__cp *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__cp(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__cp **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__cp, sizeof(struct _ns1__cp), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__uploadByteArrayResponse(struct soap *soap, struct _ns1__uploadByteArrayResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__uploadByteArrayResponse)) soap_serialize__ns1__uploadByteArrayResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__uploadByteArrayResponse(struct soap *soap, struct _ns1__uploadByteArrayResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__uploadByteArrayResponse); if (soap_out_PointerTo_ns1__uploadByteArrayResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__uploadByteArrayResponse(struct soap *soap, const char *tag, int id, struct _ns1__uploadByteArrayResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__uploadByteArrayResponse); if (id < 0) return soap->error; return soap_out__ns1__uploadByteArrayResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__uploadByteArrayResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__uploadByteArrayResponse(struct soap *soap, struct _ns1__uploadByteArrayResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__uploadByteArrayResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__uploadByteArrayResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__uploadByteArrayResponse(struct soap *soap, const char *tag, struct _ns1__uploadByteArrayResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__uploadByteArrayResponse **)soap_malloc(soap, sizeof(struct _ns1__uploadByteArrayResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__uploadByteArrayResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__uploadByteArrayResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__uploadByteArrayResponse, sizeof(struct _ns1__uploadByteArrayResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__uploadByteArray(struct soap *soap, struct _ns1__uploadByteArray *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__uploadByteArray)) soap_serialize__ns1__uploadByteArray(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__uploadByteArray(struct soap *soap, struct _ns1__uploadByteArray *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__uploadByteArray); if (soap_out_PointerTo_ns1__uploadByteArray(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__uploadByteArray(struct soap *soap, const char *tag, int id, struct _ns1__uploadByteArray *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__uploadByteArray); if (id < 0) return soap->error; return soap_out__ns1__uploadByteArray(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__uploadByteArray ** SOAP_FMAC4 soap_get_PointerTo_ns1__uploadByteArray(struct soap *soap, struct _ns1__uploadByteArray **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__uploadByteArray(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__uploadByteArray ** SOAP_FMAC4 soap_in_PointerTo_ns1__uploadByteArray(struct soap *soap, const char *tag, struct _ns1__uploadByteArray **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__uploadByteArray **)soap_malloc(soap, sizeof(struct _ns1__uploadByteArray *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__uploadByteArray(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__uploadByteArray **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__uploadByteArray, sizeof(struct _ns1__uploadByteArray), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__submitJobResponse(struct soap *soap, struct _ns1__submitJobResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__submitJobResponse)) soap_serialize__ns1__submitJobResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__submitJobResponse(struct soap *soap, struct _ns1__submitJobResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__submitJobResponse); if (soap_out_PointerTo_ns1__submitJobResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__submitJobResponse(struct soap *soap, const char *tag, int id, struct _ns1__submitJobResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__submitJobResponse); if (id < 0) return soap->error; return soap_out__ns1__submitJobResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__submitJobResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__submitJobResponse(struct soap *soap, struct _ns1__submitJobResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__submitJobResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__submitJobResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__submitJobResponse(struct soap *soap, const char *tag, struct _ns1__submitJobResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__submitJobResponse **)soap_malloc(soap, sizeof(struct _ns1__submitJobResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__submitJobResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__submitJobResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__submitJobResponse, sizeof(struct _ns1__submitJobResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__submitJob(struct soap *soap, struct _ns1__submitJob *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__submitJob)) soap_serialize__ns1__submitJob(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__submitJob(struct soap *soap, struct _ns1__submitJob *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__submitJob); if (soap_out_PointerTo_ns1__submitJob(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__submitJob(struct soap *soap, const char *tag, int id, struct _ns1__submitJob *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__submitJob); if (id < 0) return soap->error; return soap_out__ns1__submitJob(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__submitJob ** SOAP_FMAC4 soap_get_PointerTo_ns1__submitJob(struct soap *soap, struct _ns1__submitJob **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__submitJob(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__submitJob ** SOAP_FMAC4 soap_in_PointerTo_ns1__submitJob(struct soap *soap, const char *tag, struct _ns1__submitJob **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__submitJob **)soap_malloc(soap, sizeof(struct _ns1__submitJob *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__submitJob(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__submitJob **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__submitJob, sizeof(struct _ns1__submitJob), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__logoutResponse(struct soap *soap, struct _ns1__logoutResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__logoutResponse)) soap_serialize__ns1__logoutResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__logoutResponse(struct soap *soap, struct _ns1__logoutResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__logoutResponse); if (soap_out_PointerTo_ns1__logoutResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__logoutResponse(struct soap *soap, const char *tag, int id, struct _ns1__logoutResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__logoutResponse); if (id < 0) return soap->error; return soap_out__ns1__logoutResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__logoutResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__logoutResponse(struct soap *soap, struct _ns1__logoutResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__logoutResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__logoutResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__logoutResponse(struct soap *soap, const char *tag, struct _ns1__logoutResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__logoutResponse **)soap_malloc(soap, sizeof(struct _ns1__logoutResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__logoutResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__logoutResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__logoutResponse, sizeof(struct _ns1__logoutResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__logout(struct soap *soap, struct _ns1__logout *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__logout)) soap_serialize__ns1__logout(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__logout(struct soap *soap, struct _ns1__logout *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__logout); if (soap_out_PointerTo_ns1__logout(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__logout(struct soap *soap, const char *tag, int id, struct _ns1__logout *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__logout); if (id < 0) return soap->error; return soap_out__ns1__logout(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__logout ** SOAP_FMAC4 soap_get_PointerTo_ns1__logout(struct soap *soap, struct _ns1__logout **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__logout(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__logout ** SOAP_FMAC4 soap_in_PointerTo_ns1__logout(struct soap *soap, const char *tag, struct _ns1__logout **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__logout **)soap_malloc(soap, sizeof(struct _ns1__logout *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__logout(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__logout **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__logout, sizeof(struct _ns1__logout), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__setJobDescription_USCOREstringResponse(struct soap *soap, struct _ns1__setJobDescription_USCOREstringResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__setJobDescription_USCOREstringResponse)) soap_serialize__ns1__setJobDescription_USCOREstringResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__setJobDescription_USCOREstringResponse(struct soap *soap, struct _ns1__setJobDescription_USCOREstringResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__setJobDescription_USCOREstringResponse); if (soap_out_PointerTo_ns1__setJobDescription_USCOREstringResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__setJobDescription_USCOREstringResponse(struct soap *soap, const char *tag, int id, struct _ns1__setJobDescription_USCOREstringResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__setJobDescription_USCOREstringResponse); if (id < 0) return soap->error; return soap_out__ns1__setJobDescription_USCOREstringResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__setJobDescription_USCOREstringResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__setJobDescription_USCOREstringResponse(struct soap *soap, struct _ns1__setJobDescription_USCOREstringResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__setJobDescription_USCOREstringResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__setJobDescription_USCOREstringResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__setJobDescription_USCOREstringResponse(struct soap *soap, const char *tag, struct _ns1__setJobDescription_USCOREstringResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__setJobDescription_USCOREstringResponse **)soap_malloc(soap, sizeof(struct _ns1__setJobDescription_USCOREstringResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__setJobDescription_USCOREstringResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__setJobDescription_USCOREstringResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__setJobDescription_USCOREstringResponse, sizeof(struct _ns1__setJobDescription_USCOREstringResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__setJobDescription_USCOREstring(struct soap *soap, struct _ns1__setJobDescription_USCOREstring *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__setJobDescription_USCOREstring)) soap_serialize__ns1__setJobDescription_USCOREstring(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__setJobDescription_USCOREstring(struct soap *soap, struct _ns1__setJobDescription_USCOREstring *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__setJobDescription_USCOREstring); if (soap_out_PointerTo_ns1__setJobDescription_USCOREstring(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__setJobDescription_USCOREstring(struct soap *soap, const char *tag, int id, struct _ns1__setJobDescription_USCOREstring *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__setJobDescription_USCOREstring); if (id < 0) return soap->error; return soap_out__ns1__setJobDescription_USCOREstring(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__setJobDescription_USCOREstring ** SOAP_FMAC4 soap_get_PointerTo_ns1__setJobDescription_USCOREstring(struct soap *soap, struct _ns1__setJobDescription_USCOREstring **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__setJobDescription_USCOREstring(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__setJobDescription_USCOREstring ** SOAP_FMAC4 soap_in_PointerTo_ns1__setJobDescription_USCOREstring(struct soap *soap, const char *tag, struct _ns1__setJobDescription_USCOREstring **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__setJobDescription_USCOREstring **)soap_malloc(soap, sizeof(struct _ns1__setJobDescription_USCOREstring *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__setJobDescription_USCOREstring(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__setJobDescription_USCOREstring **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__setJobDescription_USCOREstring, sizeof(struct _ns1__setJobDescription_USCOREstring), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__calculateRelativeJobDirectoryResponse(struct soap *soap, struct _ns1__calculateRelativeJobDirectoryResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__calculateRelativeJobDirectoryResponse)) soap_serialize__ns1__calculateRelativeJobDirectoryResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__calculateRelativeJobDirectoryResponse(struct soap *soap, struct _ns1__calculateRelativeJobDirectoryResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__calculateRelativeJobDirectoryResponse); if (soap_out_PointerTo_ns1__calculateRelativeJobDirectoryResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__calculateRelativeJobDirectoryResponse(struct soap *soap, const char *tag, int id, struct _ns1__calculateRelativeJobDirectoryResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__calculateRelativeJobDirectoryResponse); if (id < 0) return soap->error; return soap_out__ns1__calculateRelativeJobDirectoryResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__calculateRelativeJobDirectoryResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__calculateRelativeJobDirectoryResponse(struct soap *soap, struct _ns1__calculateRelativeJobDirectoryResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__calculateRelativeJobDirectoryResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__calculateRelativeJobDirectoryResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__calculateRelativeJobDirectoryResponse(struct soap *soap, const char *tag, struct _ns1__calculateRelativeJobDirectoryResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__calculateRelativeJobDirectoryResponse **)soap_malloc(soap, sizeof(struct _ns1__calculateRelativeJobDirectoryResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__calculateRelativeJobDirectoryResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__calculateRelativeJobDirectoryResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__calculateRelativeJobDirectoryResponse, sizeof(struct _ns1__calculateRelativeJobDirectoryResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__calculateRelativeJobDirectory(struct soap *soap, struct _ns1__calculateRelativeJobDirectory *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__calculateRelativeJobDirectory)) soap_serialize__ns1__calculateRelativeJobDirectory(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__calculateRelativeJobDirectory(struct soap *soap, struct _ns1__calculateRelativeJobDirectory *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__calculateRelativeJobDirectory); if (soap_out_PointerTo_ns1__calculateRelativeJobDirectory(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__calculateRelativeJobDirectory(struct soap *soap, const char *tag, int id, struct _ns1__calculateRelativeJobDirectory *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__calculateRelativeJobDirectory); if (id < 0) return soap->error; return soap_out__ns1__calculateRelativeJobDirectory(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__calculateRelativeJobDirectory ** SOAP_FMAC4 soap_get_PointerTo_ns1__calculateRelativeJobDirectory(struct soap *soap, struct _ns1__calculateRelativeJobDirectory **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__calculateRelativeJobDirectory(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__calculateRelativeJobDirectory ** SOAP_FMAC4 soap_in_PointerTo_ns1__calculateRelativeJobDirectory(struct soap *soap, const char *tag, struct _ns1__calculateRelativeJobDirectory **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__calculateRelativeJobDirectory **)soap_malloc(soap, sizeof(struct _ns1__calculateRelativeJobDirectory *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__calculateRelativeJobDirectory(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__calculateRelativeJobDirectory **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__calculateRelativeJobDirectory, sizeof(struct _ns1__calculateRelativeJobDirectory), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getApplicationDetails1Response(struct soap *soap, struct _ns1__getApplicationDetails1Response *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getApplicationDetails1Response)) soap_serialize__ns1__getApplicationDetails1Response(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getApplicationDetails1Response(struct soap *soap, struct _ns1__getApplicationDetails1Response *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getApplicationDetails1Response); if (soap_out_PointerTo_ns1__getApplicationDetails1Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getApplicationDetails1Response(struct soap *soap, const char *tag, int id, struct _ns1__getApplicationDetails1Response *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getApplicationDetails1Response); if (id < 0) return soap->error; return soap_out__ns1__getApplicationDetails1Response(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getApplicationDetails1Response ** SOAP_FMAC4 soap_get_PointerTo_ns1__getApplicationDetails1Response(struct soap *soap, struct _ns1__getApplicationDetails1Response **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getApplicationDetails1Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getApplicationDetails1Response ** SOAP_FMAC4 soap_in_PointerTo_ns1__getApplicationDetails1Response(struct soap *soap, const char *tag, struct _ns1__getApplicationDetails1Response **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getApplicationDetails1Response **)soap_malloc(soap, sizeof(struct _ns1__getApplicationDetails1Response *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getApplicationDetails1Response(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getApplicationDetails1Response **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getApplicationDetails1Response, sizeof(struct _ns1__getApplicationDetails1Response), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getApplicationDetails1(struct soap *soap, struct _ns1__getApplicationDetails1 *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getApplicationDetails1)) soap_serialize__ns1__getApplicationDetails1(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getApplicationDetails1(struct soap *soap, struct _ns1__getApplicationDetails1 *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getApplicationDetails1); if (soap_out_PointerTo_ns1__getApplicationDetails1(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getApplicationDetails1(struct soap *soap, const char *tag, int id, struct _ns1__getApplicationDetails1 *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getApplicationDetails1); if (id < 0) return soap->error; return soap_out__ns1__getApplicationDetails1(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getApplicationDetails1 ** SOAP_FMAC4 soap_get_PointerTo_ns1__getApplicationDetails1(struct soap *soap, struct _ns1__getApplicationDetails1 **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getApplicationDetails1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getApplicationDetails1 ** SOAP_FMAC4 soap_in_PointerTo_ns1__getApplicationDetails1(struct soap *soap, const char *tag, struct _ns1__getApplicationDetails1 **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getApplicationDetails1 **)soap_malloc(soap, sizeof(struct _ns1__getApplicationDetails1 *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getApplicationDetails1(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getApplicationDetails1 **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getApplicationDetails1, sizeof(struct _ns1__getApplicationDetails1), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__lsResponse(struct soap *soap, struct _ns1__lsResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__lsResponse)) soap_serialize__ns1__lsResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__lsResponse(struct soap *soap, struct _ns1__lsResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__lsResponse); if (soap_out_PointerTo_ns1__lsResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__lsResponse(struct soap *soap, const char *tag, int id, struct _ns1__lsResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__lsResponse); if (id < 0) return soap->error; return soap_out__ns1__lsResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__lsResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__lsResponse(struct soap *soap, struct _ns1__lsResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__lsResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__lsResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__lsResponse(struct soap *soap, const char *tag, struct _ns1__lsResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__lsResponse **)soap_malloc(soap, sizeof(struct _ns1__lsResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__lsResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__lsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__lsResponse, sizeof(struct _ns1__lsResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__ls(struct soap *soap, struct _ns1__ls *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__ls)) soap_serialize__ns1__ls(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__ls(struct soap *soap, struct _ns1__ls *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__ls); if (soap_out_PointerTo_ns1__ls(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__ls(struct soap *soap, const char *tag, int id, struct _ns1__ls *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__ls); if (id < 0) return soap->error; return soap_out__ns1__ls(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__ls ** SOAP_FMAC4 soap_get_PointerTo_ns1__ls(struct soap *soap, struct _ns1__ls **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__ls(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__ls ** SOAP_FMAC4 soap_in_PointerTo_ns1__ls(struct soap *soap, const char *tag, struct _ns1__ls **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__ls **)soap_malloc(soap, sizeof(struct _ns1__ls *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__ls(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__ls **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__ls, sizeof(struct _ns1__ls), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__lastModifiedResponse(struct soap *soap, struct _ns1__lastModifiedResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__lastModifiedResponse)) soap_serialize__ns1__lastModifiedResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__lastModifiedResponse(struct soap *soap, struct _ns1__lastModifiedResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__lastModifiedResponse); if (soap_out_PointerTo_ns1__lastModifiedResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__lastModifiedResponse(struct soap *soap, const char *tag, int id, struct _ns1__lastModifiedResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__lastModifiedResponse); if (id < 0) return soap->error; return soap_out__ns1__lastModifiedResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__lastModifiedResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__lastModifiedResponse(struct soap *soap, struct _ns1__lastModifiedResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__lastModifiedResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__lastModifiedResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__lastModifiedResponse(struct soap *soap, const char *tag, struct _ns1__lastModifiedResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__lastModifiedResponse **)soap_malloc(soap, sizeof(struct _ns1__lastModifiedResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__lastModifiedResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__lastModifiedResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__lastModifiedResponse, sizeof(struct _ns1__lastModifiedResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__lastModified(struct soap *soap, struct _ns1__lastModified *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__lastModified)) soap_serialize__ns1__lastModified(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__lastModified(struct soap *soap, struct _ns1__lastModified *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__lastModified); if (soap_out_PointerTo_ns1__lastModified(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__lastModified(struct soap *soap, const char *tag, int id, struct _ns1__lastModified *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__lastModified); if (id < 0) return soap->error; return soap_out__ns1__lastModified(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__lastModified ** SOAP_FMAC4 soap_get_PointerTo_ns1__lastModified(struct soap *soap, struct _ns1__lastModified **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__lastModified(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__lastModified ** SOAP_FMAC4 soap_in_PointerTo_ns1__lastModified(struct soap *soap, const char *tag, struct _ns1__lastModified **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__lastModified **)soap_malloc(soap, sizeof(struct _ns1__lastModified *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__lastModified(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__lastModified **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__lastModified, sizeof(struct _ns1__lastModified), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getSiteResponse(struct soap *soap, struct _ns1__getSiteResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getSiteResponse)) soap_serialize__ns1__getSiteResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getSiteResponse(struct soap *soap, struct _ns1__getSiteResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getSiteResponse); if (soap_out_PointerTo_ns1__getSiteResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getSiteResponse(struct soap *soap, const char *tag, int id, struct _ns1__getSiteResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getSiteResponse); if (id < 0) return soap->error; return soap_out__ns1__getSiteResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getSiteResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getSiteResponse(struct soap *soap, struct _ns1__getSiteResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getSiteResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSiteResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getSiteResponse(struct soap *soap, const char *tag, struct _ns1__getSiteResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getSiteResponse **)soap_malloc(soap, sizeof(struct _ns1__getSiteResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getSiteResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getSiteResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getSiteResponse, sizeof(struct _ns1__getSiteResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getSite(struct soap *soap, struct _ns1__getSite *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getSite)) soap_serialize__ns1__getSite(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getSite(struct soap *soap, struct _ns1__getSite *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getSite); if (soap_out_PointerTo_ns1__getSite(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getSite(struct soap *soap, const char *tag, int id, struct _ns1__getSite *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getSite); if (id < 0) return soap->error; return soap_out__ns1__getSite(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getSite ** SOAP_FMAC4 soap_get_PointerTo_ns1__getSite(struct soap *soap, struct _ns1__getSite **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getSite(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSite ** SOAP_FMAC4 soap_in_PointerTo_ns1__getSite(struct soap *soap, const char *tag, struct _ns1__getSite **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getSite **)soap_malloc(soap, sizeof(struct _ns1__getSite *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getSite(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getSite **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getSite, sizeof(struct _ns1__getSite), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__ps_USCOREstringResponse(struct soap *soap, struct _ns1__ps_USCOREstringResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__ps_USCOREstringResponse)) soap_serialize__ns1__ps_USCOREstringResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__ps_USCOREstringResponse(struct soap *soap, struct _ns1__ps_USCOREstringResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__ps_USCOREstringResponse); if (soap_out_PointerTo_ns1__ps_USCOREstringResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__ps_USCOREstringResponse(struct soap *soap, const char *tag, int id, struct _ns1__ps_USCOREstringResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__ps_USCOREstringResponse); if (id < 0) return soap->error; return soap_out__ns1__ps_USCOREstringResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__ps_USCOREstringResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__ps_USCOREstringResponse(struct soap *soap, struct _ns1__ps_USCOREstringResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__ps_USCOREstringResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__ps_USCOREstringResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__ps_USCOREstringResponse(struct soap *soap, const char *tag, struct _ns1__ps_USCOREstringResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__ps_USCOREstringResponse **)soap_malloc(soap, sizeof(struct _ns1__ps_USCOREstringResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__ps_USCOREstringResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__ps_USCOREstringResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__ps_USCOREstringResponse, sizeof(struct _ns1__ps_USCOREstringResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__ps_USCOREstring(struct soap *soap, struct _ns1__ps_USCOREstring *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__ps_USCOREstring)) soap_serialize__ns1__ps_USCOREstring(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__ps_USCOREstring(struct soap *soap, struct _ns1__ps_USCOREstring *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__ps_USCOREstring); if (soap_out_PointerTo_ns1__ps_USCOREstring(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__ps_USCOREstring(struct soap *soap, const char *tag, int id, struct _ns1__ps_USCOREstring *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__ps_USCOREstring); if (id < 0) return soap->error; return soap_out__ns1__ps_USCOREstring(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__ps_USCOREstring ** SOAP_FMAC4 soap_get_PointerTo_ns1__ps_USCOREstring(struct soap *soap, struct _ns1__ps_USCOREstring **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__ps_USCOREstring(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__ps_USCOREstring ** SOAP_FMAC4 soap_in_PointerTo_ns1__ps_USCOREstring(struct soap *soap, const char *tag, struct _ns1__ps_USCOREstring **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__ps_USCOREstring **)soap_malloc(soap, sizeof(struct _ns1__ps_USCOREstring *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__ps_USCOREstring(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__ps_USCOREstring **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__ps_USCOREstring, sizeof(struct _ns1__ps_USCOREstring), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__uploadByteArray1Response(struct soap *soap, struct _ns1__uploadByteArray1Response *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__uploadByteArray1Response)) soap_serialize__ns1__uploadByteArray1Response(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__uploadByteArray1Response(struct soap *soap, struct _ns1__uploadByteArray1Response *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__uploadByteArray1Response); if (soap_out_PointerTo_ns1__uploadByteArray1Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__uploadByteArray1Response(struct soap *soap, const char *tag, int id, struct _ns1__uploadByteArray1Response *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__uploadByteArray1Response); if (id < 0) return soap->error; return soap_out__ns1__uploadByteArray1Response(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__uploadByteArray1Response ** SOAP_FMAC4 soap_get_PointerTo_ns1__uploadByteArray1Response(struct soap *soap, struct _ns1__uploadByteArray1Response **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__uploadByteArray1Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__uploadByteArray1Response ** SOAP_FMAC4 soap_in_PointerTo_ns1__uploadByteArray1Response(struct soap *soap, const char *tag, struct _ns1__uploadByteArray1Response **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__uploadByteArray1Response **)soap_malloc(soap, sizeof(struct _ns1__uploadByteArray1Response *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__uploadByteArray1Response(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__uploadByteArray1Response **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__uploadByteArray1Response, sizeof(struct _ns1__uploadByteArray1Response), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__uploadByteArray1(struct soap *soap, struct _ns1__uploadByteArray1 *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__uploadByteArray1)) soap_serialize__ns1__uploadByteArray1(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__uploadByteArray1(struct soap *soap, struct _ns1__uploadByteArray1 *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__uploadByteArray1); if (soap_out_PointerTo_ns1__uploadByteArray1(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__uploadByteArray1(struct soap *soap, const char *tag, int id, struct _ns1__uploadByteArray1 *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__uploadByteArray1); if (id < 0) return soap->error; return soap_out__ns1__uploadByteArray1(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__uploadByteArray1 ** SOAP_FMAC4 soap_get_PointerTo_ns1__uploadByteArray1(struct soap *soap, struct _ns1__uploadByteArray1 **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__uploadByteArray1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__uploadByteArray1 ** SOAP_FMAC4 soap_in_PointerTo_ns1__uploadByteArray1(struct soap *soap, const char *tag, struct _ns1__uploadByteArray1 **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__uploadByteArray1 **)soap_malloc(soap, sizeof(struct _ns1__uploadByteArray1 *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__uploadByteArray1(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__uploadByteArray1 **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__uploadByteArray1, sizeof(struct _ns1__uploadByteArray1), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getVersionsOfApplicationOnSiteResponse(struct soap *soap, struct _ns1__getVersionsOfApplicationOnSiteResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getVersionsOfApplicationOnSiteResponse)) soap_serialize__ns1__getVersionsOfApplicationOnSiteResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getVersionsOfApplicationOnSiteResponse(struct soap *soap, struct _ns1__getVersionsOfApplicationOnSiteResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getVersionsOfApplicationOnSiteResponse); if (soap_out_PointerTo_ns1__getVersionsOfApplicationOnSiteResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getVersionsOfApplicationOnSiteResponse(struct soap *soap, const char *tag, int id, struct _ns1__getVersionsOfApplicationOnSiteResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getVersionsOfApplicationOnSiteResponse); if (id < 0) return soap->error; return soap_out__ns1__getVersionsOfApplicationOnSiteResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getVersionsOfApplicationOnSiteResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getVersionsOfApplicationOnSiteResponse(struct soap *soap, struct _ns1__getVersionsOfApplicationOnSiteResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getVersionsOfApplicationOnSiteResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getVersionsOfApplicationOnSiteResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getVersionsOfApplicationOnSiteResponse(struct soap *soap, const char *tag, struct _ns1__getVersionsOfApplicationOnSiteResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getVersionsOfApplicationOnSiteResponse **)soap_malloc(soap, sizeof(struct _ns1__getVersionsOfApplicationOnSiteResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getVersionsOfApplicationOnSiteResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getVersionsOfApplicationOnSiteResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getVersionsOfApplicationOnSiteResponse, sizeof(struct _ns1__getVersionsOfApplicationOnSiteResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getVersionsOfApplicationOnSite(struct soap *soap, struct _ns1__getVersionsOfApplicationOnSite *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getVersionsOfApplicationOnSite)) soap_serialize__ns1__getVersionsOfApplicationOnSite(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getVersionsOfApplicationOnSite(struct soap *soap, struct _ns1__getVersionsOfApplicationOnSite *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getVersionsOfApplicationOnSite); if (soap_out_PointerTo_ns1__getVersionsOfApplicationOnSite(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getVersionsOfApplicationOnSite(struct soap *soap, const char *tag, int id, struct _ns1__getVersionsOfApplicationOnSite *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getVersionsOfApplicationOnSite); if (id < 0) return soap->error; return soap_out__ns1__getVersionsOfApplicationOnSite(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getVersionsOfApplicationOnSite ** SOAP_FMAC4 soap_get_PointerTo_ns1__getVersionsOfApplicationOnSite(struct soap *soap, struct _ns1__getVersionsOfApplicationOnSite **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getVersionsOfApplicationOnSite(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getVersionsOfApplicationOnSite ** SOAP_FMAC4 soap_in_PointerTo_ns1__getVersionsOfApplicationOnSite(struct soap *soap, const char *tag, struct _ns1__getVersionsOfApplicationOnSite **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getVersionsOfApplicationOnSite **)soap_malloc(soap, sizeof(struct _ns1__getVersionsOfApplicationOnSite *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getVersionsOfApplicationOnSite(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getVersionsOfApplicationOnSite **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getVersionsOfApplicationOnSite, sizeof(struct _ns1__getVersionsOfApplicationOnSite), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getAllSubmissionLocations1Response(struct soap *soap, struct _ns1__getAllSubmissionLocations1Response *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getAllSubmissionLocations1Response)) soap_serialize__ns1__getAllSubmissionLocations1Response(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getAllSubmissionLocations1Response(struct soap *soap, struct _ns1__getAllSubmissionLocations1Response *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getAllSubmissionLocations1Response); if (soap_out_PointerTo_ns1__getAllSubmissionLocations1Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getAllSubmissionLocations1Response(struct soap *soap, const char *tag, int id, struct _ns1__getAllSubmissionLocations1Response *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getAllSubmissionLocations1Response); if (id < 0) return soap->error; return soap_out__ns1__getAllSubmissionLocations1Response(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getAllSubmissionLocations1Response ** SOAP_FMAC4 soap_get_PointerTo_ns1__getAllSubmissionLocations1Response(struct soap *soap, struct _ns1__getAllSubmissionLocations1Response **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getAllSubmissionLocations1Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllSubmissionLocations1Response ** SOAP_FMAC4 soap_in_PointerTo_ns1__getAllSubmissionLocations1Response(struct soap *soap, const char *tag, struct _ns1__getAllSubmissionLocations1Response **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getAllSubmissionLocations1Response **)soap_malloc(soap, sizeof(struct _ns1__getAllSubmissionLocations1Response *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getAllSubmissionLocations1Response(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getAllSubmissionLocations1Response **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getAllSubmissionLocations1Response, sizeof(struct _ns1__getAllSubmissionLocations1Response), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getAllSubmissionLocations1(struct soap *soap, struct _ns1__getAllSubmissionLocations1 *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getAllSubmissionLocations1)) soap_serialize__ns1__getAllSubmissionLocations1(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getAllSubmissionLocations1(struct soap *soap, struct _ns1__getAllSubmissionLocations1 *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getAllSubmissionLocations1); if (soap_out_PointerTo_ns1__getAllSubmissionLocations1(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getAllSubmissionLocations1(struct soap *soap, const char *tag, int id, struct _ns1__getAllSubmissionLocations1 *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getAllSubmissionLocations1); if (id < 0) return soap->error; return soap_out__ns1__getAllSubmissionLocations1(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getAllSubmissionLocations1 ** SOAP_FMAC4 soap_get_PointerTo_ns1__getAllSubmissionLocations1(struct soap *soap, struct _ns1__getAllSubmissionLocations1 **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getAllSubmissionLocations1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllSubmissionLocations1 ** SOAP_FMAC4 soap_in_PointerTo_ns1__getAllSubmissionLocations1(struct soap *soap, const char *tag, struct _ns1__getAllSubmissionLocations1 **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getAllSubmissionLocations1 **)soap_malloc(soap, sizeof(struct _ns1__getAllSubmissionLocations1 *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getAllSubmissionLocations1(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getAllSubmissionLocations1 **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getAllSubmissionLocations1, sizeof(struct _ns1__getAllSubmissionLocations1), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__createJobResponse(struct soap *soap, struct _ns1__createJobResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__createJobResponse)) soap_serialize__ns1__createJobResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__createJobResponse(struct soap *soap, struct _ns1__createJobResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__createJobResponse); if (soap_out_PointerTo_ns1__createJobResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__createJobResponse(struct soap *soap, const char *tag, int id, struct _ns1__createJobResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__createJobResponse); if (id < 0) return soap->error; return soap_out__ns1__createJobResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__createJobResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__createJobResponse(struct soap *soap, struct _ns1__createJobResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__createJobResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__createJobResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__createJobResponse(struct soap *soap, const char *tag, struct _ns1__createJobResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__createJobResponse **)soap_malloc(soap, sizeof(struct _ns1__createJobResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__createJobResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__createJobResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__createJobResponse, sizeof(struct _ns1__createJobResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__createJob(struct soap *soap, struct _ns1__createJob *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__createJob)) soap_serialize__ns1__createJob(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__createJob(struct soap *soap, struct _ns1__createJob *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__createJob); if (soap_out_PointerTo_ns1__createJob(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__createJob(struct soap *soap, const char *tag, int id, struct _ns1__createJob *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__createJob); if (id < 0) return soap->error; return soap_out__ns1__createJob(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__createJob ** SOAP_FMAC4 soap_get_PointerTo_ns1__createJob(struct soap *soap, struct _ns1__createJob **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__createJob(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__createJob ** SOAP_FMAC4 soap_in_PointerTo_ns1__createJob(struct soap *soap, const char *tag, struct _ns1__createJob **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__createJob **)soap_malloc(soap, sizeof(struct _ns1__createJob *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__createJob(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__createJob **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__createJob, sizeof(struct _ns1__createJob), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getInterfaceVersionResponse(struct soap *soap, struct _ns1__getInterfaceVersionResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getInterfaceVersionResponse)) soap_serialize__ns1__getInterfaceVersionResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getInterfaceVersionResponse(struct soap *soap, struct _ns1__getInterfaceVersionResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getInterfaceVersionResponse); if (soap_out_PointerTo_ns1__getInterfaceVersionResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getInterfaceVersionResponse(struct soap *soap, const char *tag, int id, struct _ns1__getInterfaceVersionResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getInterfaceVersionResponse); if (id < 0) return soap->error; return soap_out__ns1__getInterfaceVersionResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getInterfaceVersionResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getInterfaceVersionResponse(struct soap *soap, struct _ns1__getInterfaceVersionResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getInterfaceVersionResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getInterfaceVersionResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getInterfaceVersionResponse(struct soap *soap, const char *tag, struct _ns1__getInterfaceVersionResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getInterfaceVersionResponse **)soap_malloc(soap, sizeof(struct _ns1__getInterfaceVersionResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getInterfaceVersionResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getInterfaceVersionResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getInterfaceVersionResponse, sizeof(struct _ns1__getInterfaceVersionResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getInterfaceVersion(struct soap *soap, struct _ns1__getInterfaceVersion *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getInterfaceVersion)) soap_serialize__ns1__getInterfaceVersion(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getInterfaceVersion(struct soap *soap, struct _ns1__getInterfaceVersion *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getInterfaceVersion); if (soap_out_PointerTo_ns1__getInterfaceVersion(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getInterfaceVersion(struct soap *soap, const char *tag, int id, struct _ns1__getInterfaceVersion *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getInterfaceVersion); if (id < 0) return soap->error; return soap_out__ns1__getInterfaceVersion(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getInterfaceVersion ** SOAP_FMAC4 soap_get_PointerTo_ns1__getInterfaceVersion(struct soap *soap, struct _ns1__getInterfaceVersion **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getInterfaceVersion(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getInterfaceVersion ** SOAP_FMAC4 soap_in_PointerTo_ns1__getInterfaceVersion(struct soap *soap, const char *tag, struct _ns1__getInterfaceVersion **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getInterfaceVersion **)soap_malloc(soap, sizeof(struct _ns1__getInterfaceVersion *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getInterfaceVersion(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getInterfaceVersion **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getInterfaceVersion, sizeof(struct _ns1__getInterfaceVersion), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getAllSubmissionLocationsResponse(struct soap *soap, struct _ns1__getAllSubmissionLocationsResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getAllSubmissionLocationsResponse)) soap_serialize__ns1__getAllSubmissionLocationsResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getAllSubmissionLocationsResponse(struct soap *soap, struct _ns1__getAllSubmissionLocationsResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getAllSubmissionLocationsResponse); if (soap_out_PointerTo_ns1__getAllSubmissionLocationsResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getAllSubmissionLocationsResponse(struct soap *soap, const char *tag, int id, struct _ns1__getAllSubmissionLocationsResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getAllSubmissionLocationsResponse); if (id < 0) return soap->error; return soap_out__ns1__getAllSubmissionLocationsResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getAllSubmissionLocationsResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getAllSubmissionLocationsResponse(struct soap *soap, struct _ns1__getAllSubmissionLocationsResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getAllSubmissionLocationsResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllSubmissionLocationsResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getAllSubmissionLocationsResponse(struct soap *soap, const char *tag, struct _ns1__getAllSubmissionLocationsResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getAllSubmissionLocationsResponse **)soap_malloc(soap, sizeof(struct _ns1__getAllSubmissionLocationsResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getAllSubmissionLocationsResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getAllSubmissionLocationsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getAllSubmissionLocationsResponse, sizeof(struct _ns1__getAllSubmissionLocationsResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getAllSubmissionLocations(struct soap *soap, struct _ns1__getAllSubmissionLocations *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getAllSubmissionLocations)) soap_serialize__ns1__getAllSubmissionLocations(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getAllSubmissionLocations(struct soap *soap, struct _ns1__getAllSubmissionLocations *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getAllSubmissionLocations); if (soap_out_PointerTo_ns1__getAllSubmissionLocations(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getAllSubmissionLocations(struct soap *soap, const char *tag, int id, struct _ns1__getAllSubmissionLocations *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getAllSubmissionLocations); if (id < 0) return soap->error; return soap_out__ns1__getAllSubmissionLocations(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getAllSubmissionLocations ** SOAP_FMAC4 soap_get_PointerTo_ns1__getAllSubmissionLocations(struct soap *soap, struct _ns1__getAllSubmissionLocations **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getAllSubmissionLocations(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllSubmissionLocations ** SOAP_FMAC4 soap_in_PointerTo_ns1__getAllSubmissionLocations(struct soap *soap, const char *tag, struct _ns1__getAllSubmissionLocations **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getAllSubmissionLocations **)soap_malloc(soap, sizeof(struct _ns1__getAllSubmissionLocations *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getAllSubmissionLocations(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getAllSubmissionLocations **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getAllSubmissionLocations, sizeof(struct _ns1__getAllSubmissionLocations), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__addJobPropertyResponse(struct soap *soap, struct _ns1__addJobPropertyResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__addJobPropertyResponse)) soap_serialize__ns1__addJobPropertyResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__addJobPropertyResponse(struct soap *soap, struct _ns1__addJobPropertyResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__addJobPropertyResponse); if (soap_out_PointerTo_ns1__addJobPropertyResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__addJobPropertyResponse(struct soap *soap, const char *tag, int id, struct _ns1__addJobPropertyResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__addJobPropertyResponse); if (id < 0) return soap->error; return soap_out__ns1__addJobPropertyResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__addJobPropertyResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__addJobPropertyResponse(struct soap *soap, struct _ns1__addJobPropertyResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__addJobPropertyResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__addJobPropertyResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__addJobPropertyResponse(struct soap *soap, const char *tag, struct _ns1__addJobPropertyResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__addJobPropertyResponse **)soap_malloc(soap, sizeof(struct _ns1__addJobPropertyResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__addJobPropertyResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__addJobPropertyResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__addJobPropertyResponse, sizeof(struct _ns1__addJobPropertyResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__addJobProperty(struct soap *soap, struct _ns1__addJobProperty *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__addJobProperty)) soap_serialize__ns1__addJobProperty(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__addJobProperty(struct soap *soap, struct _ns1__addJobProperty *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__addJobProperty); if (soap_out_PointerTo_ns1__addJobProperty(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__addJobProperty(struct soap *soap, const char *tag, int id, struct _ns1__addJobProperty *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__addJobProperty); if (id < 0) return soap->error; return soap_out__ns1__addJobProperty(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__addJobProperty ** SOAP_FMAC4 soap_get_PointerTo_ns1__addJobProperty(struct soap *soap, struct _ns1__addJobProperty **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__addJobProperty(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__addJobProperty ** SOAP_FMAC4 soap_in_PointerTo_ns1__addJobProperty(struct soap *soap, const char *tag, struct _ns1__addJobProperty **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__addJobProperty **)soap_malloc(soap, sizeof(struct _ns1__addJobProperty *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__addJobProperty(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__addJobProperty **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__addJobProperty, sizeof(struct _ns1__addJobProperty), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__addJobPropertiesResponse(struct soap *soap, struct _ns1__addJobPropertiesResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__addJobPropertiesResponse)) soap_serialize__ns1__addJobPropertiesResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__addJobPropertiesResponse(struct soap *soap, struct _ns1__addJobPropertiesResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__addJobPropertiesResponse); if (soap_out_PointerTo_ns1__addJobPropertiesResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__addJobPropertiesResponse(struct soap *soap, const char *tag, int id, struct _ns1__addJobPropertiesResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__addJobPropertiesResponse); if (id < 0) return soap->error; return soap_out__ns1__addJobPropertiesResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__addJobPropertiesResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__addJobPropertiesResponse(struct soap *soap, struct _ns1__addJobPropertiesResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__addJobPropertiesResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__addJobPropertiesResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__addJobPropertiesResponse(struct soap *soap, const char *tag, struct _ns1__addJobPropertiesResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__addJobPropertiesResponse **)soap_malloc(soap, sizeof(struct _ns1__addJobPropertiesResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__addJobPropertiesResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__addJobPropertiesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__addJobPropertiesResponse, sizeof(struct _ns1__addJobPropertiesResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__addJobProperties(struct soap *soap, struct _ns1__addJobProperties *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__addJobProperties)) soap_serialize__ns1__addJobProperties(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__addJobProperties(struct soap *soap, struct _ns1__addJobProperties *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__addJobProperties); if (soap_out_PointerTo_ns1__addJobProperties(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__addJobProperties(struct soap *soap, const char *tag, int id, struct _ns1__addJobProperties *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__addJobProperties); if (id < 0) return soap->error; return soap_out__ns1__addJobProperties(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__addJobProperties ** SOAP_FMAC4 soap_get_PointerTo_ns1__addJobProperties(struct soap *soap, struct _ns1__addJobProperties **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__addJobProperties(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__addJobProperties ** SOAP_FMAC4 soap_in_PointerTo_ns1__addJobProperties(struct soap *soap, const char *tag, struct _ns1__addJobProperties **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__addJobProperties **)soap_malloc(soap, sizeof(struct _ns1__addJobProperties *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__addJobProperties(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__addJobProperties **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__addJobProperties, sizeof(struct _ns1__addJobProperties), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getAllAvailableApplicationsResponse(struct soap *soap, struct _ns1__getAllAvailableApplicationsResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getAllAvailableApplicationsResponse)) soap_serialize__ns1__getAllAvailableApplicationsResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getAllAvailableApplicationsResponse(struct soap *soap, struct _ns1__getAllAvailableApplicationsResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getAllAvailableApplicationsResponse); if (soap_out_PointerTo_ns1__getAllAvailableApplicationsResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getAllAvailableApplicationsResponse(struct soap *soap, const char *tag, int id, struct _ns1__getAllAvailableApplicationsResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getAllAvailableApplicationsResponse); if (id < 0) return soap->error; return soap_out__ns1__getAllAvailableApplicationsResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getAllAvailableApplicationsResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getAllAvailableApplicationsResponse(struct soap *soap, struct _ns1__getAllAvailableApplicationsResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getAllAvailableApplicationsResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllAvailableApplicationsResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getAllAvailableApplicationsResponse(struct soap *soap, const char *tag, struct _ns1__getAllAvailableApplicationsResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getAllAvailableApplicationsResponse **)soap_malloc(soap, sizeof(struct _ns1__getAllAvailableApplicationsResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getAllAvailableApplicationsResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getAllAvailableApplicationsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getAllAvailableApplicationsResponse, sizeof(struct _ns1__getAllAvailableApplicationsResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getAllAvailableApplications(struct soap *soap, struct _ns1__getAllAvailableApplications *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getAllAvailableApplications)) soap_serialize__ns1__getAllAvailableApplications(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getAllAvailableApplications(struct soap *soap, struct _ns1__getAllAvailableApplications *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getAllAvailableApplications); if (soap_out_PointerTo_ns1__getAllAvailableApplications(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getAllAvailableApplications(struct soap *soap, const char *tag, int id, struct _ns1__getAllAvailableApplications *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getAllAvailableApplications); if (id < 0) return soap->error; return soap_out__ns1__getAllAvailableApplications(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getAllAvailableApplications ** SOAP_FMAC4 soap_get_PointerTo_ns1__getAllAvailableApplications(struct soap *soap, struct _ns1__getAllAvailableApplications **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getAllAvailableApplications(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllAvailableApplications ** SOAP_FMAC4 soap_in_PointerTo_ns1__getAllAvailableApplications(struct soap *soap, const char *tag, struct _ns1__getAllAvailableApplications **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getAllAvailableApplications **)soap_malloc(soap, sizeof(struct _ns1__getAllAvailableApplications *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getAllAvailableApplications(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getAllAvailableApplications **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getAllAvailableApplications, sizeof(struct _ns1__getAllAvailableApplications), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__killResponse(struct soap *soap, struct _ns1__killResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__killResponse)) soap_serialize__ns1__killResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__killResponse(struct soap *soap, struct _ns1__killResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__killResponse); if (soap_out_PointerTo_ns1__killResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__killResponse(struct soap *soap, const char *tag, int id, struct _ns1__killResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__killResponse); if (id < 0) return soap->error; return soap_out__ns1__killResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__killResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__killResponse(struct soap *soap, struct _ns1__killResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__killResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__killResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__killResponse(struct soap *soap, const char *tag, struct _ns1__killResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__killResponse **)soap_malloc(soap, sizeof(struct _ns1__killResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__killResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__killResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__killResponse, sizeof(struct _ns1__killResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__kill(struct soap *soap, struct _ns1__kill *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__kill)) soap_serialize__ns1__kill(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__kill(struct soap *soap, struct _ns1__kill *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__kill); if (soap_out_PointerTo_ns1__kill(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__kill(struct soap *soap, const char *tag, int id, struct _ns1__kill *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__kill); if (id < 0) return soap->error; return soap_out__ns1__kill(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__kill ** SOAP_FMAC4 soap_get_PointerTo_ns1__kill(struct soap *soap, struct _ns1__kill **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__kill(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__kill ** SOAP_FMAC4 soap_in_PointerTo_ns1__kill(struct soap *soap, const char *tag, struct _ns1__kill **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__kill **)soap_malloc(soap, sizeof(struct _ns1__kill *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__kill(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__kill **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__kill, sizeof(struct _ns1__kill), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__isFolderResponse(struct soap *soap, struct _ns1__isFolderResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__isFolderResponse)) soap_serialize__ns1__isFolderResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__isFolderResponse(struct soap *soap, struct _ns1__isFolderResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__isFolderResponse); if (soap_out_PointerTo_ns1__isFolderResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__isFolderResponse(struct soap *soap, const char *tag, int id, struct _ns1__isFolderResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__isFolderResponse); if (id < 0) return soap->error; return soap_out__ns1__isFolderResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__isFolderResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__isFolderResponse(struct soap *soap, struct _ns1__isFolderResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__isFolderResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__isFolderResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__isFolderResponse(struct soap *soap, const char *tag, struct _ns1__isFolderResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__isFolderResponse **)soap_malloc(soap, sizeof(struct _ns1__isFolderResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__isFolderResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__isFolderResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__isFolderResponse, sizeof(struct _ns1__isFolderResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__isFolder(struct soap *soap, struct _ns1__isFolder *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__isFolder)) soap_serialize__ns1__isFolder(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__isFolder(struct soap *soap, struct _ns1__isFolder *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__isFolder); if (soap_out_PointerTo_ns1__isFolder(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__isFolder(struct soap *soap, const char *tag, int id, struct _ns1__isFolder *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__isFolder); if (id < 0) return soap->error; return soap_out__ns1__isFolder(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__isFolder ** SOAP_FMAC4 soap_get_PointerTo_ns1__isFolder(struct soap *soap, struct _ns1__isFolder **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__isFolder(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__isFolder ** SOAP_FMAC4 soap_in_PointerTo_ns1__isFolder(struct soap *soap, const char *tag, struct _ns1__isFolder **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__isFolder **)soap_malloc(soap, sizeof(struct _ns1__isFolder *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__isFolder(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__isFolder **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__isFolder, sizeof(struct _ns1__isFolder), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__downloadResponse(struct soap *soap, struct _ns1__downloadResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__downloadResponse)) soap_serialize__ns1__downloadResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__downloadResponse(struct soap *soap, struct _ns1__downloadResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__downloadResponse); if (soap_out_PointerTo_ns1__downloadResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__downloadResponse(struct soap *soap, const char *tag, int id, struct _ns1__downloadResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__downloadResponse); if (id < 0) return soap->error; return soap_out__ns1__downloadResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__downloadResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__downloadResponse(struct soap *soap, struct _ns1__downloadResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__downloadResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__downloadResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__downloadResponse(struct soap *soap, const char *tag, struct _ns1__downloadResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__downloadResponse **)soap_malloc(soap, sizeof(struct _ns1__downloadResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__downloadResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__downloadResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__downloadResponse, sizeof(struct _ns1__downloadResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__download(struct soap *soap, struct _ns1__download *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__download)) soap_serialize__ns1__download(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__download(struct soap *soap, struct _ns1__download *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__download); if (soap_out_PointerTo_ns1__download(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__download(struct soap *soap, const char *tag, int id, struct _ns1__download *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__download); if (id < 0) return soap->error; return soap_out__ns1__download(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__download ** SOAP_FMAC4 soap_get_PointerTo_ns1__download(struct soap *soap, struct _ns1__download **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__download(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__download ** SOAP_FMAC4 soap_in_PointerTo_ns1__download(struct soap *soap, const char *tag, struct _ns1__download **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__download **)soap_malloc(soap, sizeof(struct _ns1__download *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__download(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__download **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__download, sizeof(struct _ns1__download), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getAllJobPropertiesResponse(struct soap *soap, struct _ns1__getAllJobPropertiesResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getAllJobPropertiesResponse)) soap_serialize__ns1__getAllJobPropertiesResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getAllJobPropertiesResponse(struct soap *soap, struct _ns1__getAllJobPropertiesResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getAllJobPropertiesResponse); if (soap_out_PointerTo_ns1__getAllJobPropertiesResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getAllJobPropertiesResponse(struct soap *soap, const char *tag, int id, struct _ns1__getAllJobPropertiesResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getAllJobPropertiesResponse); if (id < 0) return soap->error; return soap_out__ns1__getAllJobPropertiesResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getAllJobPropertiesResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getAllJobPropertiesResponse(struct soap *soap, struct _ns1__getAllJobPropertiesResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getAllJobPropertiesResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllJobPropertiesResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getAllJobPropertiesResponse(struct soap *soap, const char *tag, struct _ns1__getAllJobPropertiesResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getAllJobPropertiesResponse **)soap_malloc(soap, sizeof(struct _ns1__getAllJobPropertiesResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getAllJobPropertiesResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getAllJobPropertiesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getAllJobPropertiesResponse, sizeof(struct _ns1__getAllJobPropertiesResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getAllJobProperties(struct soap *soap, struct _ns1__getAllJobProperties *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getAllJobProperties)) soap_serialize__ns1__getAllJobProperties(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getAllJobProperties(struct soap *soap, struct _ns1__getAllJobProperties *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getAllJobProperties); if (soap_out_PointerTo_ns1__getAllJobProperties(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getAllJobProperties(struct soap *soap, const char *tag, int id, struct _ns1__getAllJobProperties *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getAllJobProperties); if (id < 0) return soap->error; return soap_out__ns1__getAllJobProperties(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getAllJobProperties ** SOAP_FMAC4 soap_get_PointerTo_ns1__getAllJobProperties(struct soap *soap, struct _ns1__getAllJobProperties **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getAllJobProperties(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllJobProperties ** SOAP_FMAC4 soap_in_PointerTo_ns1__getAllJobProperties(struct soap *soap, const char *tag, struct _ns1__getAllJobProperties **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getAllJobProperties **)soap_malloc(soap, sizeof(struct _ns1__getAllJobProperties *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getAllJobProperties(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getAllJobProperties **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getAllJobProperties, sizeof(struct _ns1__getAllJobProperties), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getAllJobnamesResponse(struct soap *soap, struct _ns1__getAllJobnamesResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getAllJobnamesResponse)) soap_serialize__ns1__getAllJobnamesResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getAllJobnamesResponse(struct soap *soap, struct _ns1__getAllJobnamesResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getAllJobnamesResponse); if (soap_out_PointerTo_ns1__getAllJobnamesResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getAllJobnamesResponse(struct soap *soap, const char *tag, int id, struct _ns1__getAllJobnamesResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getAllJobnamesResponse); if (id < 0) return soap->error; return soap_out__ns1__getAllJobnamesResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getAllJobnamesResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getAllJobnamesResponse(struct soap *soap, struct _ns1__getAllJobnamesResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getAllJobnamesResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllJobnamesResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getAllJobnamesResponse(struct soap *soap, const char *tag, struct _ns1__getAllJobnamesResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getAllJobnamesResponse **)soap_malloc(soap, sizeof(struct _ns1__getAllJobnamesResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getAllJobnamesResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getAllJobnamesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getAllJobnamesResponse, sizeof(struct _ns1__getAllJobnamesResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getAllJobnames(struct soap *soap, struct _ns1__getAllJobnames *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getAllJobnames)) soap_serialize__ns1__getAllJobnames(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getAllJobnames(struct soap *soap, struct _ns1__getAllJobnames *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getAllJobnames); if (soap_out_PointerTo_ns1__getAllJobnames(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getAllJobnames(struct soap *soap, const char *tag, int id, struct _ns1__getAllJobnames *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getAllJobnames); if (id < 0) return soap->error; return soap_out__ns1__getAllJobnames(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getAllJobnames ** SOAP_FMAC4 soap_get_PointerTo_ns1__getAllJobnames(struct soap *soap, struct _ns1__getAllJobnames **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getAllJobnames(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getAllJobnames ** SOAP_FMAC4 soap_in_PointerTo_ns1__getAllJobnames(struct soap *soap, const char *tag, struct _ns1__getAllJobnames **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getAllJobnames **)soap_malloc(soap, sizeof(struct _ns1__getAllJobnames *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getAllJobnames(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getAllJobnames **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getAllJobnames, sizeof(struct _ns1__getAllJobnames), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getDNResponse(struct soap *soap, struct _ns1__getDNResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getDNResponse)) soap_serialize__ns1__getDNResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getDNResponse(struct soap *soap, struct _ns1__getDNResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getDNResponse); if (soap_out_PointerTo_ns1__getDNResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getDNResponse(struct soap *soap, const char *tag, int id, struct _ns1__getDNResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getDNResponse); if (id < 0) return soap->error; return soap_out__ns1__getDNResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getDNResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getDNResponse(struct soap *soap, struct _ns1__getDNResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getDNResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getDNResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getDNResponse(struct soap *soap, const char *tag, struct _ns1__getDNResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getDNResponse **)soap_malloc(soap, sizeof(struct _ns1__getDNResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getDNResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getDNResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getDNResponse, sizeof(struct _ns1__getDNResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getDN(struct soap *soap, struct _ns1__getDN *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getDN)) soap_serialize__ns1__getDN(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getDN(struct soap *soap, struct _ns1__getDN *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getDN); if (soap_out_PointerTo_ns1__getDN(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getDN(struct soap *soap, const char *tag, int id, struct _ns1__getDN *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getDN); if (id < 0) return soap->error; return soap_out__ns1__getDN(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getDN ** SOAP_FMAC4 soap_get_PointerTo_ns1__getDN(struct soap *soap, struct _ns1__getDN **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getDN(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getDN ** SOAP_FMAC4 soap_in_PointerTo_ns1__getDN(struct soap *soap, const char *tag, struct _ns1__getDN **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getDN **)soap_malloc(soap, sizeof(struct _ns1__getDN *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getDN(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getDN **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getDN, sizeof(struct _ns1__getDN), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getSubmissionLocationsForApplicationResponse(struct soap *soap, struct _ns1__getSubmissionLocationsForApplicationResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getSubmissionLocationsForApplicationResponse)) soap_serialize__ns1__getSubmissionLocationsForApplicationResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getSubmissionLocationsForApplicationResponse(struct soap *soap, struct _ns1__getSubmissionLocationsForApplicationResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplicationResponse); if (soap_out_PointerTo_ns1__getSubmissionLocationsForApplicationResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getSubmissionLocationsForApplicationResponse(struct soap *soap, const char *tag, int id, struct _ns1__getSubmissionLocationsForApplicationResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getSubmissionLocationsForApplicationResponse); if (id < 0) return soap->error; return soap_out__ns1__getSubmissionLocationsForApplicationResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplicationResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getSubmissionLocationsForApplicationResponse(struct soap *soap, struct _ns1__getSubmissionLocationsForApplicationResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getSubmissionLocationsForApplicationResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplicationResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getSubmissionLocationsForApplicationResponse(struct soap *soap, const char *tag, struct _ns1__getSubmissionLocationsForApplicationResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getSubmissionLocationsForApplicationResponse **)soap_malloc(soap, sizeof(struct _ns1__getSubmissionLocationsForApplicationResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getSubmissionLocationsForApplicationResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getSubmissionLocationsForApplicationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getSubmissionLocationsForApplicationResponse, sizeof(struct _ns1__getSubmissionLocationsForApplicationResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getSubmissionLocationsForApplication(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication)) soap_serialize__ns1__getSubmissionLocationsForApplication(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getSubmissionLocationsForApplication(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication); if (soap_out_PointerTo_ns1__getSubmissionLocationsForApplication(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getSubmissionLocationsForApplication(struct soap *soap, const char *tag, int id, struct _ns1__getSubmissionLocationsForApplication *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getSubmissionLocationsForApplication); if (id < 0) return soap->error; return soap_out__ns1__getSubmissionLocationsForApplication(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication ** SOAP_FMAC4 soap_get_PointerTo_ns1__getSubmissionLocationsForApplication(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getSubmissionLocationsForApplication(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication ** SOAP_FMAC4 soap_in_PointerTo_ns1__getSubmissionLocationsForApplication(struct soap *soap, const char *tag, struct _ns1__getSubmissionLocationsForApplication **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getSubmissionLocationsForApplication **)soap_malloc(soap, sizeof(struct _ns1__getSubmissionLocationsForApplication *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getSubmissionLocationsForApplication(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getSubmissionLocationsForApplication **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication, sizeof(struct _ns1__getSubmissionLocationsForApplication), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__createJob1Response(struct soap *soap, struct _ns1__createJob1Response *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__createJob1Response)) soap_serialize__ns1__createJob1Response(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__createJob1Response(struct soap *soap, struct _ns1__createJob1Response *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__createJob1Response); if (soap_out_PointerTo_ns1__createJob1Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__createJob1Response(struct soap *soap, const char *tag, int id, struct _ns1__createJob1Response *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__createJob1Response); if (id < 0) return soap->error; return soap_out__ns1__createJob1Response(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__createJob1Response ** SOAP_FMAC4 soap_get_PointerTo_ns1__createJob1Response(struct soap *soap, struct _ns1__createJob1Response **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__createJob1Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__createJob1Response ** SOAP_FMAC4 soap_in_PointerTo_ns1__createJob1Response(struct soap *soap, const char *tag, struct _ns1__createJob1Response **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__createJob1Response **)soap_malloc(soap, sizeof(struct _ns1__createJob1Response *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__createJob1Response(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__createJob1Response **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__createJob1Response, sizeof(struct _ns1__createJob1Response), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__createJob1(struct soap *soap, struct _ns1__createJob1 *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__createJob1)) soap_serialize__ns1__createJob1(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__createJob1(struct soap *soap, struct _ns1__createJob1 *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__createJob1); if (soap_out_PointerTo_ns1__createJob1(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__createJob1(struct soap *soap, const char *tag, int id, struct _ns1__createJob1 *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__createJob1); if (id < 0) return soap->error; return soap_out__ns1__createJob1(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__createJob1 ** SOAP_FMAC4 soap_get_PointerTo_ns1__createJob1(struct soap *soap, struct _ns1__createJob1 **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__createJob1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__createJob1 ** SOAP_FMAC4 soap_in_PointerTo_ns1__createJob1(struct soap *soap, const char *tag, struct _ns1__createJob1 **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__createJob1 **)soap_malloc(soap, sizeof(struct _ns1__createJob1 *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__createJob1(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__createJob1 **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__createJob1, sizeof(struct _ns1__createJob1), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getApplicationDetailsResponse(struct soap *soap, struct _ns1__getApplicationDetailsResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getApplicationDetailsResponse)) soap_serialize__ns1__getApplicationDetailsResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getApplicationDetailsResponse(struct soap *soap, struct _ns1__getApplicationDetailsResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getApplicationDetailsResponse); if (soap_out_PointerTo_ns1__getApplicationDetailsResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getApplicationDetailsResponse(struct soap *soap, const char *tag, int id, struct _ns1__getApplicationDetailsResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getApplicationDetailsResponse); if (id < 0) return soap->error; return soap_out__ns1__getApplicationDetailsResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getApplicationDetailsResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getApplicationDetailsResponse(struct soap *soap, struct _ns1__getApplicationDetailsResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getApplicationDetailsResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getApplicationDetailsResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getApplicationDetailsResponse(struct soap *soap, const char *tag, struct _ns1__getApplicationDetailsResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getApplicationDetailsResponse **)soap_malloc(soap, sizeof(struct _ns1__getApplicationDetailsResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getApplicationDetailsResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getApplicationDetailsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getApplicationDetailsResponse, sizeof(struct _ns1__getApplicationDetailsResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getApplicationDetails(struct soap *soap, struct _ns1__getApplicationDetails *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getApplicationDetails)) soap_serialize__ns1__getApplicationDetails(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getApplicationDetails(struct soap *soap, struct _ns1__getApplicationDetails *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getApplicationDetails); if (soap_out_PointerTo_ns1__getApplicationDetails(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getApplicationDetails(struct soap *soap, const char *tag, int id, struct _ns1__getApplicationDetails *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getApplicationDetails); if (id < 0) return soap->error; return soap_out__ns1__getApplicationDetails(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getApplicationDetails ** SOAP_FMAC4 soap_get_PointerTo_ns1__getApplicationDetails(struct soap *soap, struct _ns1__getApplicationDetails **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getApplicationDetails(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getApplicationDetails ** SOAP_FMAC4 soap_in_PointerTo_ns1__getApplicationDetails(struct soap *soap, const char *tag, struct _ns1__getApplicationDetails **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getApplicationDetails **)soap_malloc(soap, sizeof(struct _ns1__getApplicationDetails *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getApplicationDetails(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getApplicationDetails **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getApplicationDetails, sizeof(struct _ns1__getApplicationDetails), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getSubmissionLocationsForApplication1Response(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication1Response *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication1Response)) soap_serialize__ns1__getSubmissionLocationsForApplication1Response(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getSubmissionLocationsForApplication1Response(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication1Response *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication1Response); if (soap_out_PointerTo_ns1__getSubmissionLocationsForApplication1Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getSubmissionLocationsForApplication1Response(struct soap *soap, const char *tag, int id, struct _ns1__getSubmissionLocationsForApplication1Response *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getSubmissionLocationsForApplication1Response); if (id < 0) return soap->error; return soap_out__ns1__getSubmissionLocationsForApplication1Response(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication1Response ** SOAP_FMAC4 soap_get_PointerTo_ns1__getSubmissionLocationsForApplication1Response(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication1Response **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getSubmissionLocationsForApplication1Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication1Response ** SOAP_FMAC4 soap_in_PointerTo_ns1__getSubmissionLocationsForApplication1Response(struct soap *soap, const char *tag, struct _ns1__getSubmissionLocationsForApplication1Response **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getSubmissionLocationsForApplication1Response **)soap_malloc(soap, sizeof(struct _ns1__getSubmissionLocationsForApplication1Response *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getSubmissionLocationsForApplication1Response(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getSubmissionLocationsForApplication1Response **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication1Response, sizeof(struct _ns1__getSubmissionLocationsForApplication1Response), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getSubmissionLocationsForApplication1(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication1 *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication1)) soap_serialize__ns1__getSubmissionLocationsForApplication1(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getSubmissionLocationsForApplication1(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication1 *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication1); if (soap_out_PointerTo_ns1__getSubmissionLocationsForApplication1(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getSubmissionLocationsForApplication1(struct soap *soap, const char *tag, int id, struct _ns1__getSubmissionLocationsForApplication1 *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getSubmissionLocationsForApplication1); if (id < 0) return soap->error; return soap_out__ns1__getSubmissionLocationsForApplication1(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication1 ** SOAP_FMAC4 soap_get_PointerTo_ns1__getSubmissionLocationsForApplication1(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication1 **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getSubmissionLocationsForApplication1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication1 ** SOAP_FMAC4 soap_in_PointerTo_ns1__getSubmissionLocationsForApplication1(struct soap *soap, const char *tag, struct _ns1__getSubmissionLocationsForApplication1 **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getSubmissionLocationsForApplication1 **)soap_malloc(soap, sizeof(struct _ns1__getSubmissionLocationsForApplication1 *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getSubmissionLocationsForApplication1(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getSubmissionLocationsForApplication1 **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication1, sizeof(struct _ns1__getSubmissionLocationsForApplication1), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__ls_USCOREstringResponse(struct soap *soap, struct _ns1__ls_USCOREstringResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__ls_USCOREstringResponse)) soap_serialize__ns1__ls_USCOREstringResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__ls_USCOREstringResponse(struct soap *soap, struct _ns1__ls_USCOREstringResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__ls_USCOREstringResponse); if (soap_out_PointerTo_ns1__ls_USCOREstringResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__ls_USCOREstringResponse(struct soap *soap, const char *tag, int id, struct _ns1__ls_USCOREstringResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__ls_USCOREstringResponse); if (id < 0) return soap->error; return soap_out__ns1__ls_USCOREstringResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__ls_USCOREstringResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__ls_USCOREstringResponse(struct soap *soap, struct _ns1__ls_USCOREstringResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__ls_USCOREstringResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__ls_USCOREstringResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__ls_USCOREstringResponse(struct soap *soap, const char *tag, struct _ns1__ls_USCOREstringResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__ls_USCOREstringResponse **)soap_malloc(soap, sizeof(struct _ns1__ls_USCOREstringResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__ls_USCOREstringResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__ls_USCOREstringResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__ls_USCOREstringResponse, sizeof(struct _ns1__ls_USCOREstringResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__ls_USCOREstring(struct soap *soap, struct _ns1__ls_USCOREstring *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__ls_USCOREstring)) soap_serialize__ns1__ls_USCOREstring(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__ls_USCOREstring(struct soap *soap, struct _ns1__ls_USCOREstring *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__ls_USCOREstring); if (soap_out_PointerTo_ns1__ls_USCOREstring(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__ls_USCOREstring(struct soap *soap, const char *tag, int id, struct _ns1__ls_USCOREstring *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__ls_USCOREstring); if (id < 0) return soap->error; return soap_out__ns1__ls_USCOREstring(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__ls_USCOREstring ** SOAP_FMAC4 soap_get_PointerTo_ns1__ls_USCOREstring(struct soap *soap, struct _ns1__ls_USCOREstring **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__ls_USCOREstring(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__ls_USCOREstring ** SOAP_FMAC4 soap_in_PointerTo_ns1__ls_USCOREstring(struct soap *soap, const char *tag, struct _ns1__ls_USCOREstring **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__ls_USCOREstring **)soap_malloc(soap, sizeof(struct _ns1__ls_USCOREstring *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__ls_USCOREstring(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__ls_USCOREstring **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__ls_USCOREstring, sizeof(struct _ns1__ls_USCOREstring), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__calculateAbsoluteJobDirectoryResponse(struct soap *soap, struct _ns1__calculateAbsoluteJobDirectoryResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__calculateAbsoluteJobDirectoryResponse)) soap_serialize__ns1__calculateAbsoluteJobDirectoryResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__calculateAbsoluteJobDirectoryResponse(struct soap *soap, struct _ns1__calculateAbsoluteJobDirectoryResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__calculateAbsoluteJobDirectoryResponse); if (soap_out_PointerTo_ns1__calculateAbsoluteJobDirectoryResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__calculateAbsoluteJobDirectoryResponse(struct soap *soap, const char *tag, int id, struct _ns1__calculateAbsoluteJobDirectoryResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__calculateAbsoluteJobDirectoryResponse); if (id < 0) return soap->error; return soap_out__ns1__calculateAbsoluteJobDirectoryResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__calculateAbsoluteJobDirectoryResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__calculateAbsoluteJobDirectoryResponse(struct soap *soap, struct _ns1__calculateAbsoluteJobDirectoryResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__calculateAbsoluteJobDirectoryResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__calculateAbsoluteJobDirectoryResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__calculateAbsoluteJobDirectoryResponse(struct soap *soap, const char *tag, struct _ns1__calculateAbsoluteJobDirectoryResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__calculateAbsoluteJobDirectoryResponse **)soap_malloc(soap, sizeof(struct _ns1__calculateAbsoluteJobDirectoryResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__calculateAbsoluteJobDirectoryResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__calculateAbsoluteJobDirectoryResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__calculateAbsoluteJobDirectoryResponse, sizeof(struct _ns1__calculateAbsoluteJobDirectoryResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__calculateAbsoluteJobDirectory(struct soap *soap, struct _ns1__calculateAbsoluteJobDirectory *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__calculateAbsoluteJobDirectory)) soap_serialize__ns1__calculateAbsoluteJobDirectory(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__calculateAbsoluteJobDirectory(struct soap *soap, struct _ns1__calculateAbsoluteJobDirectory *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__calculateAbsoluteJobDirectory); if (soap_out_PointerTo_ns1__calculateAbsoluteJobDirectory(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__calculateAbsoluteJobDirectory(struct soap *soap, const char *tag, int id, struct _ns1__calculateAbsoluteJobDirectory *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__calculateAbsoluteJobDirectory); if (id < 0) return soap->error; return soap_out__ns1__calculateAbsoluteJobDirectory(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__calculateAbsoluteJobDirectory ** SOAP_FMAC4 soap_get_PointerTo_ns1__calculateAbsoluteJobDirectory(struct soap *soap, struct _ns1__calculateAbsoluteJobDirectory **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__calculateAbsoluteJobDirectory(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__calculateAbsoluteJobDirectory ** SOAP_FMAC4 soap_in_PointerTo_ns1__calculateAbsoluteJobDirectory(struct soap *soap, const char *tag, struct _ns1__calculateAbsoluteJobDirectory **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__calculateAbsoluteJobDirectory **)soap_malloc(soap, sizeof(struct _ns1__calculateAbsoluteJobDirectory *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__calculateAbsoluteJobDirectory(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__calculateAbsoluteJobDirectory **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__calculateAbsoluteJobDirectory, sizeof(struct _ns1__calculateAbsoluteJobDirectory), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getMessagesSinceResponse(struct soap *soap, struct _ns1__getMessagesSinceResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getMessagesSinceResponse)) soap_serialize__ns1__getMessagesSinceResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getMessagesSinceResponse(struct soap *soap, struct _ns1__getMessagesSinceResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getMessagesSinceResponse); if (soap_out_PointerTo_ns1__getMessagesSinceResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getMessagesSinceResponse(struct soap *soap, const char *tag, int id, struct _ns1__getMessagesSinceResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getMessagesSinceResponse); if (id < 0) return soap->error; return soap_out__ns1__getMessagesSinceResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getMessagesSinceResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getMessagesSinceResponse(struct soap *soap, struct _ns1__getMessagesSinceResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getMessagesSinceResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getMessagesSinceResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getMessagesSinceResponse(struct soap *soap, const char *tag, struct _ns1__getMessagesSinceResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getMessagesSinceResponse **)soap_malloc(soap, sizeof(struct _ns1__getMessagesSinceResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getMessagesSinceResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getMessagesSinceResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getMessagesSinceResponse, sizeof(struct _ns1__getMessagesSinceResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getMessagesSince(struct soap *soap, struct _ns1__getMessagesSince *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getMessagesSince)) soap_serialize__ns1__getMessagesSince(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getMessagesSince(struct soap *soap, struct _ns1__getMessagesSince *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getMessagesSince); if (soap_out_PointerTo_ns1__getMessagesSince(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getMessagesSince(struct soap *soap, const char *tag, int id, struct _ns1__getMessagesSince *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getMessagesSince); if (id < 0) return soap->error; return soap_out__ns1__getMessagesSince(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getMessagesSince ** SOAP_FMAC4 soap_get_PointerTo_ns1__getMessagesSince(struct soap *soap, struct _ns1__getMessagesSince **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getMessagesSince(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getMessagesSince ** SOAP_FMAC4 soap_in_PointerTo_ns1__getMessagesSince(struct soap *soap, const char *tag, struct _ns1__getMessagesSince **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getMessagesSince **)soap_malloc(soap, sizeof(struct _ns1__getMessagesSince *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getMessagesSince(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getMessagesSince **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getMessagesSince, sizeof(struct _ns1__getMessagesSince), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__deleteFilesResponse(struct soap *soap, struct _ns1__deleteFilesResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__deleteFilesResponse)) soap_serialize__ns1__deleteFilesResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__deleteFilesResponse(struct soap *soap, struct _ns1__deleteFilesResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__deleteFilesResponse); if (soap_out_PointerTo_ns1__deleteFilesResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__deleteFilesResponse(struct soap *soap, const char *tag, int id, struct _ns1__deleteFilesResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__deleteFilesResponse); if (id < 0) return soap->error; return soap_out__ns1__deleteFilesResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__deleteFilesResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__deleteFilesResponse(struct soap *soap, struct _ns1__deleteFilesResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__deleteFilesResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__deleteFilesResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__deleteFilesResponse(struct soap *soap, const char *tag, struct _ns1__deleteFilesResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__deleteFilesResponse **)soap_malloc(soap, sizeof(struct _ns1__deleteFilesResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__deleteFilesResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__deleteFilesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__deleteFilesResponse, sizeof(struct _ns1__deleteFilesResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__deleteFiles(struct soap *soap, struct _ns1__deleteFiles *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__deleteFiles)) soap_serialize__ns1__deleteFiles(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__deleteFiles(struct soap *soap, struct _ns1__deleteFiles *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__deleteFiles); if (soap_out_PointerTo_ns1__deleteFiles(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__deleteFiles(struct soap *soap, const char *tag, int id, struct _ns1__deleteFiles *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__deleteFiles); if (id < 0) return soap->error; return soap_out__ns1__deleteFiles(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__deleteFiles ** SOAP_FMAC4 soap_get_PointerTo_ns1__deleteFiles(struct soap *soap, struct _ns1__deleteFiles **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__deleteFiles(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__deleteFiles ** SOAP_FMAC4 soap_in_PointerTo_ns1__deleteFiles(struct soap *soap, const char *tag, struct _ns1__deleteFiles **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__deleteFiles **)soap_malloc(soap, sizeof(struct _ns1__deleteFiles *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__deleteFiles(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__deleteFiles **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__deleteFiles, sizeof(struct _ns1__deleteFiles), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__listHostedApplicationTemplatesResponse(struct soap *soap, struct _ns1__listHostedApplicationTemplatesResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__listHostedApplicationTemplatesResponse)) soap_serialize__ns1__listHostedApplicationTemplatesResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__listHostedApplicationTemplatesResponse(struct soap *soap, struct _ns1__listHostedApplicationTemplatesResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__listHostedApplicationTemplatesResponse); if (soap_out_PointerTo_ns1__listHostedApplicationTemplatesResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__listHostedApplicationTemplatesResponse(struct soap *soap, const char *tag, int id, struct _ns1__listHostedApplicationTemplatesResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__listHostedApplicationTemplatesResponse); if (id < 0) return soap->error; return soap_out__ns1__listHostedApplicationTemplatesResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__listHostedApplicationTemplatesResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__listHostedApplicationTemplatesResponse(struct soap *soap, struct _ns1__listHostedApplicationTemplatesResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__listHostedApplicationTemplatesResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__listHostedApplicationTemplatesResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__listHostedApplicationTemplatesResponse(struct soap *soap, const char *tag, struct _ns1__listHostedApplicationTemplatesResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__listHostedApplicationTemplatesResponse **)soap_malloc(soap, sizeof(struct _ns1__listHostedApplicationTemplatesResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__listHostedApplicationTemplatesResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__listHostedApplicationTemplatesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__listHostedApplicationTemplatesResponse, sizeof(struct _ns1__listHostedApplicationTemplatesResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__listHostedApplicationTemplates(struct soap *soap, struct _ns1__listHostedApplicationTemplates *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__listHostedApplicationTemplates)) soap_serialize__ns1__listHostedApplicationTemplates(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__listHostedApplicationTemplates(struct soap *soap, struct _ns1__listHostedApplicationTemplates *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__listHostedApplicationTemplates); if (soap_out_PointerTo_ns1__listHostedApplicationTemplates(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__listHostedApplicationTemplates(struct soap *soap, const char *tag, int id, struct _ns1__listHostedApplicationTemplates *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__listHostedApplicationTemplates); if (id < 0) return soap->error; return soap_out__ns1__listHostedApplicationTemplates(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__listHostedApplicationTemplates ** SOAP_FMAC4 soap_get_PointerTo_ns1__listHostedApplicationTemplates(struct soap *soap, struct _ns1__listHostedApplicationTemplates **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__listHostedApplicationTemplates(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__listHostedApplicationTemplates ** SOAP_FMAC4 soap_in_PointerTo_ns1__listHostedApplicationTemplates(struct soap *soap, const char *tag, struct _ns1__listHostedApplicationTemplates **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__listHostedApplicationTemplates **)soap_malloc(soap, sizeof(struct _ns1__listHostedApplicationTemplates *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__listHostedApplicationTemplates(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__listHostedApplicationTemplates **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__listHostedApplicationTemplates, sizeof(struct _ns1__listHostedApplicationTemplates), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__downloadByteArray1Response(struct soap *soap, struct _ns1__downloadByteArray1Response *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__downloadByteArray1Response)) soap_serialize__ns1__downloadByteArray1Response(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__downloadByteArray1Response(struct soap *soap, struct _ns1__downloadByteArray1Response *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__downloadByteArray1Response); if (soap_out_PointerTo_ns1__downloadByteArray1Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__downloadByteArray1Response(struct soap *soap, const char *tag, int id, struct _ns1__downloadByteArray1Response *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__downloadByteArray1Response); if (id < 0) return soap->error; return soap_out__ns1__downloadByteArray1Response(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__downloadByteArray1Response ** SOAP_FMAC4 soap_get_PointerTo_ns1__downloadByteArray1Response(struct soap *soap, struct _ns1__downloadByteArray1Response **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__downloadByteArray1Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__downloadByteArray1Response ** SOAP_FMAC4 soap_in_PointerTo_ns1__downloadByteArray1Response(struct soap *soap, const char *tag, struct _ns1__downloadByteArray1Response **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__downloadByteArray1Response **)soap_malloc(soap, sizeof(struct _ns1__downloadByteArray1Response *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__downloadByteArray1Response(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__downloadByteArray1Response **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__downloadByteArray1Response, sizeof(struct _ns1__downloadByteArray1Response), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__downloadByteArray1(struct soap *soap, struct _ns1__downloadByteArray1 *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__downloadByteArray1)) soap_serialize__ns1__downloadByteArray1(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__downloadByteArray1(struct soap *soap, struct _ns1__downloadByteArray1 *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__downloadByteArray1); if (soap_out_PointerTo_ns1__downloadByteArray1(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__downloadByteArray1(struct soap *soap, const char *tag, int id, struct _ns1__downloadByteArray1 *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__downloadByteArray1); if (id < 0) return soap->error; return soap_out__ns1__downloadByteArray1(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__downloadByteArray1 ** SOAP_FMAC4 soap_get_PointerTo_ns1__downloadByteArray1(struct soap *soap, struct _ns1__downloadByteArray1 **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__downloadByteArray1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__downloadByteArray1 ** SOAP_FMAC4 soap_in_PointerTo_ns1__downloadByteArray1(struct soap *soap, const char *tag, struct _ns1__downloadByteArray1 **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__downloadByteArray1 **)soap_malloc(soap, sizeof(struct _ns1__downloadByteArray1 *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__downloadByteArray1(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__downloadByteArray1 **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__downloadByteArray1, sizeof(struct _ns1__downloadByteArray1), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getTemplate1Response(struct soap *soap, struct _ns1__getTemplate1Response *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getTemplate1Response)) soap_serialize__ns1__getTemplate1Response(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getTemplate1Response(struct soap *soap, struct _ns1__getTemplate1Response *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getTemplate1Response); if (soap_out_PointerTo_ns1__getTemplate1Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getTemplate1Response(struct soap *soap, const char *tag, int id, struct _ns1__getTemplate1Response *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getTemplate1Response); if (id < 0) return soap->error; return soap_out__ns1__getTemplate1Response(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getTemplate1Response ** SOAP_FMAC4 soap_get_PointerTo_ns1__getTemplate1Response(struct soap *soap, struct _ns1__getTemplate1Response **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getTemplate1Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getTemplate1Response ** SOAP_FMAC4 soap_in_PointerTo_ns1__getTemplate1Response(struct soap *soap, const char *tag, struct _ns1__getTemplate1Response **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getTemplate1Response **)soap_malloc(soap, sizeof(struct _ns1__getTemplate1Response *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getTemplate1Response(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getTemplate1Response **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getTemplate1Response, sizeof(struct _ns1__getTemplate1Response), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getTemplate1(struct soap *soap, struct _ns1__getTemplate1 *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getTemplate1)) soap_serialize__ns1__getTemplate1(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getTemplate1(struct soap *soap, struct _ns1__getTemplate1 *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getTemplate1); if (soap_out_PointerTo_ns1__getTemplate1(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getTemplate1(struct soap *soap, const char *tag, int id, struct _ns1__getTemplate1 *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getTemplate1); if (id < 0) return soap->error; return soap_out__ns1__getTemplate1(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getTemplate1 ** SOAP_FMAC4 soap_get_PointerTo_ns1__getTemplate1(struct soap *soap, struct _ns1__getTemplate1 **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getTemplate1(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getTemplate1 ** SOAP_FMAC4 soap_in_PointerTo_ns1__getTemplate1(struct soap *soap, const char *tag, struct _ns1__getTemplate1 **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getTemplate1 **)soap_malloc(soap, sizeof(struct _ns1__getTemplate1 *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getTemplate1(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getTemplate1 **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getTemplate1, sizeof(struct _ns1__getTemplate1), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplicationResponse(struct soap *soap, struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplicationResponse)) soap_serialize__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplicationResponse(struct soap *soap, struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplicationResponse); if (soap_out_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplicationResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplicationResponse(struct soap *soap, const char *tag, int id, struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplicationResponse); if (id < 0) return soap->error; return soap_out__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplicationResponse(struct soap *soap, struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplicationResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplicationResponse(struct soap *soap, const char *tag, struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse **)soap_malloc(soap, sizeof(struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getSubmissionLocationsPerVersionOfApplicationResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplicationResponse, sizeof(struct _ns1__getSubmissionLocationsPerVersionOfApplicationResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, struct _ns1__getSubmissionLocationsPerVersionOfApplication *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplication)) soap_serialize__ns1__getSubmissionLocationsPerVersionOfApplication(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, struct _ns1__getSubmissionLocationsPerVersionOfApplication *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication); if (soap_out_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, const char *tag, int id, struct _ns1__getSubmissionLocationsPerVersionOfApplication *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplication); if (id < 0) return soap->error; return soap_out__ns1__getSubmissionLocationsPerVersionOfApplication(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getSubmissionLocationsPerVersionOfApplication ** SOAP_FMAC4 soap_get_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, struct _ns1__getSubmissionLocationsPerVersionOfApplication **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsPerVersionOfApplication ** SOAP_FMAC4 soap_in_PointerTo_ns1__getSubmissionLocationsPerVersionOfApplication(struct soap *soap, const char *tag, struct _ns1__getSubmissionLocationsPerVersionOfApplication **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getSubmissionLocationsPerVersionOfApplication **)soap_malloc(soap, sizeof(struct _ns1__getSubmissionLocationsPerVersionOfApplication *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getSubmissionLocationsPerVersionOfApplication(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getSubmissionLocationsPerVersionOfApplication **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getSubmissionLocationsPerVersionOfApplication, sizeof(struct _ns1__getSubmissionLocationsPerVersionOfApplication), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getDataLocationsForVOResponse(struct soap *soap, struct _ns1__getDataLocationsForVOResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getDataLocationsForVOResponse)) soap_serialize__ns1__getDataLocationsForVOResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getDataLocationsForVOResponse(struct soap *soap, struct _ns1__getDataLocationsForVOResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getDataLocationsForVOResponse); if (soap_out_PointerTo_ns1__getDataLocationsForVOResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getDataLocationsForVOResponse(struct soap *soap, const char *tag, int id, struct _ns1__getDataLocationsForVOResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getDataLocationsForVOResponse); if (id < 0) return soap->error; return soap_out__ns1__getDataLocationsForVOResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getDataLocationsForVOResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getDataLocationsForVOResponse(struct soap *soap, struct _ns1__getDataLocationsForVOResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getDataLocationsForVOResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getDataLocationsForVOResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getDataLocationsForVOResponse(struct soap *soap, const char *tag, struct _ns1__getDataLocationsForVOResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getDataLocationsForVOResponse **)soap_malloc(soap, sizeof(struct _ns1__getDataLocationsForVOResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getDataLocationsForVOResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getDataLocationsForVOResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getDataLocationsForVOResponse, sizeof(struct _ns1__getDataLocationsForVOResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getDataLocationsForVO(struct soap *soap, struct _ns1__getDataLocationsForVO *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getDataLocationsForVO)) soap_serialize__ns1__getDataLocationsForVO(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getDataLocationsForVO(struct soap *soap, struct _ns1__getDataLocationsForVO *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getDataLocationsForVO); if (soap_out_PointerTo_ns1__getDataLocationsForVO(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getDataLocationsForVO(struct soap *soap, const char *tag, int id, struct _ns1__getDataLocationsForVO *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getDataLocationsForVO); if (id < 0) return soap->error; return soap_out__ns1__getDataLocationsForVO(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getDataLocationsForVO ** SOAP_FMAC4 soap_get_PointerTo_ns1__getDataLocationsForVO(struct soap *soap, struct _ns1__getDataLocationsForVO **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getDataLocationsForVO(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getDataLocationsForVO ** SOAP_FMAC4 soap_in_PointerTo_ns1__getDataLocationsForVO(struct soap *soap, const char *tag, struct _ns1__getDataLocationsForVO **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getDataLocationsForVO **)soap_malloc(soap, sizeof(struct _ns1__getDataLocationsForVO *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getDataLocationsForVO(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getDataLocationsForVO **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getDataLocationsForVO, sizeof(struct _ns1__getDataLocationsForVO), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__mkdirResponse(struct soap *soap, struct _ns1__mkdirResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__mkdirResponse)) soap_serialize__ns1__mkdirResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__mkdirResponse(struct soap *soap, struct _ns1__mkdirResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__mkdirResponse); if (soap_out_PointerTo_ns1__mkdirResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__mkdirResponse(struct soap *soap, const char *tag, int id, struct _ns1__mkdirResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__mkdirResponse); if (id < 0) return soap->error; return soap_out__ns1__mkdirResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__mkdirResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__mkdirResponse(struct soap *soap, struct _ns1__mkdirResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__mkdirResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__mkdirResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__mkdirResponse(struct soap *soap, const char *tag, struct _ns1__mkdirResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__mkdirResponse **)soap_malloc(soap, sizeof(struct _ns1__mkdirResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__mkdirResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__mkdirResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__mkdirResponse, sizeof(struct _ns1__mkdirResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__mkdir(struct soap *soap, struct _ns1__mkdir *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__mkdir)) soap_serialize__ns1__mkdir(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__mkdir(struct soap *soap, struct _ns1__mkdir *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__mkdir); if (soap_out_PointerTo_ns1__mkdir(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__mkdir(struct soap *soap, const char *tag, int id, struct _ns1__mkdir *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__mkdir); if (id < 0) return soap->error; return soap_out__ns1__mkdir(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__mkdir ** SOAP_FMAC4 soap_get_PointerTo_ns1__mkdir(struct soap *soap, struct _ns1__mkdir **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__mkdir(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__mkdir ** SOAP_FMAC4 soap_in_PointerTo_ns1__mkdir(struct soap *soap, const char *tag, struct _ns1__mkdir **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__mkdir **)soap_malloc(soap, sizeof(struct _ns1__mkdir *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__mkdir(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__mkdir **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__mkdir, sizeof(struct _ns1__mkdir), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getUserPropertyResponse(struct soap *soap, struct _ns1__getUserPropertyResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getUserPropertyResponse)) soap_serialize__ns1__getUserPropertyResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getUserPropertyResponse(struct soap *soap, struct _ns1__getUserPropertyResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getUserPropertyResponse); if (soap_out_PointerTo_ns1__getUserPropertyResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getUserPropertyResponse(struct soap *soap, const char *tag, int id, struct _ns1__getUserPropertyResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getUserPropertyResponse); if (id < 0) return soap->error; return soap_out__ns1__getUserPropertyResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getUserPropertyResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getUserPropertyResponse(struct soap *soap, struct _ns1__getUserPropertyResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getUserPropertyResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getUserPropertyResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getUserPropertyResponse(struct soap *soap, const char *tag, struct _ns1__getUserPropertyResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getUserPropertyResponse **)soap_malloc(soap, sizeof(struct _ns1__getUserPropertyResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getUserPropertyResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getUserPropertyResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getUserPropertyResponse, sizeof(struct _ns1__getUserPropertyResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getUserProperty(struct soap *soap, struct _ns1__getUserProperty *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getUserProperty)) soap_serialize__ns1__getUserProperty(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getUserProperty(struct soap *soap, struct _ns1__getUserProperty *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getUserProperty); if (soap_out_PointerTo_ns1__getUserProperty(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getUserProperty(struct soap *soap, const char *tag, int id, struct _ns1__getUserProperty *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getUserProperty); if (id < 0) return soap->error; return soap_out__ns1__getUserProperty(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getUserProperty ** SOAP_FMAC4 soap_get_PointerTo_ns1__getUserProperty(struct soap *soap, struct _ns1__getUserProperty **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getUserProperty(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getUserProperty ** SOAP_FMAC4 soap_in_PointerTo_ns1__getUserProperty(struct soap *soap, const char *tag, struct _ns1__getUserProperty **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getUserProperty **)soap_malloc(soap, sizeof(struct _ns1__getUserProperty *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getUserProperty(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getUserProperty **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getUserProperty, sizeof(struct _ns1__getUserProperty), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getStagingFileSystemForSubmissionLocationResponse(struct soap *soap, struct _ns1__getStagingFileSystemForSubmissionLocationResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocationResponse)) soap_serialize__ns1__getStagingFileSystemForSubmissionLocationResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getStagingFileSystemForSubmissionLocationResponse(struct soap *soap, struct _ns1__getStagingFileSystemForSubmissionLocationResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getStagingFileSystemForSubmissionLocationResponse); if (soap_out_PointerTo_ns1__getStagingFileSystemForSubmissionLocationResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getStagingFileSystemForSubmissionLocationResponse(struct soap *soap, const char *tag, int id, struct _ns1__getStagingFileSystemForSubmissionLocationResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocationResponse); if (id < 0) return soap->error; return soap_out__ns1__getStagingFileSystemForSubmissionLocationResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getStagingFileSystemForSubmissionLocationResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getStagingFileSystemForSubmissionLocationResponse(struct soap *soap, struct _ns1__getStagingFileSystemForSubmissionLocationResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getStagingFileSystemForSubmissionLocationResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getStagingFileSystemForSubmissionLocationResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getStagingFileSystemForSubmissionLocationResponse(struct soap *soap, const char *tag, struct _ns1__getStagingFileSystemForSubmissionLocationResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getStagingFileSystemForSubmissionLocationResponse **)soap_malloc(soap, sizeof(struct _ns1__getStagingFileSystemForSubmissionLocationResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getStagingFileSystemForSubmissionLocationResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getStagingFileSystemForSubmissionLocationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocationResponse, sizeof(struct _ns1__getStagingFileSystemForSubmissionLocationResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, struct _ns1__getStagingFileSystemForSubmissionLocation *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocation)) soap_serialize__ns1__getStagingFileSystemForSubmissionLocation(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, struct _ns1__getStagingFileSystemForSubmissionLocation *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getStagingFileSystemForSubmissionLocation); if (soap_out_PointerTo_ns1__getStagingFileSystemForSubmissionLocation(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, const char *tag, int id, struct _ns1__getStagingFileSystemForSubmissionLocation *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocation); if (id < 0) return soap->error; return soap_out__ns1__getStagingFileSystemForSubmissionLocation(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getStagingFileSystemForSubmissionLocation ** SOAP_FMAC4 soap_get_PointerTo_ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, struct _ns1__getStagingFileSystemForSubmissionLocation **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getStagingFileSystemForSubmissionLocation(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getStagingFileSystemForSubmissionLocation ** SOAP_FMAC4 soap_in_PointerTo_ns1__getStagingFileSystemForSubmissionLocation(struct soap *soap, const char *tag, struct _ns1__getStagingFileSystemForSubmissionLocation **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getStagingFileSystemForSubmissionLocation **)soap_malloc(soap, sizeof(struct _ns1__getStagingFileSystemForSubmissionLocation *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getStagingFileSystemForSubmissionLocation(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getStagingFileSystemForSubmissionLocation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getStagingFileSystemForSubmissionLocation, sizeof(struct _ns1__getStagingFileSystemForSubmissionLocation), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__psResponse(struct soap *soap, struct _ns1__psResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__psResponse)) soap_serialize__ns1__psResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__psResponse(struct soap *soap, struct _ns1__psResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__psResponse); if (soap_out_PointerTo_ns1__psResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__psResponse(struct soap *soap, const char *tag, int id, struct _ns1__psResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__psResponse); if (id < 0) return soap->error; return soap_out__ns1__psResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__psResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__psResponse(struct soap *soap, struct _ns1__psResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__psResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__psResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__psResponse(struct soap *soap, const char *tag, struct _ns1__psResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__psResponse **)soap_malloc(soap, sizeof(struct _ns1__psResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__psResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__psResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__psResponse, sizeof(struct _ns1__psResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__ps(struct soap *soap, struct _ns1__ps *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__ps)) soap_serialize__ns1__ps(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__ps(struct soap *soap, struct _ns1__ps *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__ps); if (soap_out_PointerTo_ns1__ps(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__ps(struct soap *soap, const char *tag, int id, struct _ns1__ps *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__ps); if (id < 0) return soap->error; return soap_out__ns1__ps(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__ps ** SOAP_FMAC4 soap_get_PointerTo_ns1__ps(struct soap *soap, struct _ns1__ps **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__ps(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__ps ** SOAP_FMAC4 soap_in_PointerTo_ns1__ps(struct soap *soap, const char *tag, struct _ns1__ps **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__ps **)soap_malloc(soap, sizeof(struct _ns1__ps *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__ps(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__ps **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__ps, sizeof(struct _ns1__ps), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getSubmissionLocationsForApplication2Response(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication2Response *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication2Response)) soap_serialize__ns1__getSubmissionLocationsForApplication2Response(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getSubmissionLocationsForApplication2Response(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication2Response *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication2Response); if (soap_out_PointerTo_ns1__getSubmissionLocationsForApplication2Response(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getSubmissionLocationsForApplication2Response(struct soap *soap, const char *tag, int id, struct _ns1__getSubmissionLocationsForApplication2Response *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getSubmissionLocationsForApplication2Response); if (id < 0) return soap->error; return soap_out__ns1__getSubmissionLocationsForApplication2Response(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication2Response ** SOAP_FMAC4 soap_get_PointerTo_ns1__getSubmissionLocationsForApplication2Response(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication2Response **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getSubmissionLocationsForApplication2Response(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication2Response ** SOAP_FMAC4 soap_in_PointerTo_ns1__getSubmissionLocationsForApplication2Response(struct soap *soap, const char *tag, struct _ns1__getSubmissionLocationsForApplication2Response **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getSubmissionLocationsForApplication2Response **)soap_malloc(soap, sizeof(struct _ns1__getSubmissionLocationsForApplication2Response *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getSubmissionLocationsForApplication2Response(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getSubmissionLocationsForApplication2Response **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication2Response, sizeof(struct _ns1__getSubmissionLocationsForApplication2Response), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getSubmissionLocationsForApplication2(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication2 *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication2)) soap_serialize__ns1__getSubmissionLocationsForApplication2(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getSubmissionLocationsForApplication2(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication2 *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getSubmissionLocationsForApplication2); if (soap_out_PointerTo_ns1__getSubmissionLocationsForApplication2(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getSubmissionLocationsForApplication2(struct soap *soap, const char *tag, int id, struct _ns1__getSubmissionLocationsForApplication2 *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getSubmissionLocationsForApplication2); if (id < 0) return soap->error; return soap_out__ns1__getSubmissionLocationsForApplication2(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication2 ** SOAP_FMAC4 soap_get_PointerTo_ns1__getSubmissionLocationsForApplication2(struct soap *soap, struct _ns1__getSubmissionLocationsForApplication2 **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getSubmissionLocationsForApplication2(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getSubmissionLocationsForApplication2 ** SOAP_FMAC4 soap_in_PointerTo_ns1__getSubmissionLocationsForApplication2(struct soap *soap, const char *tag, struct _ns1__getSubmissionLocationsForApplication2 **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getSubmissionLocationsForApplication2 **)soap_malloc(soap, sizeof(struct _ns1__getSubmissionLocationsForApplication2 *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getSubmissionLocationsForApplication2(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getSubmissionLocationsForApplication2 **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getSubmissionLocationsForApplication2, sizeof(struct _ns1__getSubmissionLocationsForApplication2), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__downloadByteArrayResponse(struct soap *soap, struct _ns1__downloadByteArrayResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__downloadByteArrayResponse)) soap_serialize__ns1__downloadByteArrayResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__downloadByteArrayResponse(struct soap *soap, struct _ns1__downloadByteArrayResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__downloadByteArrayResponse); if (soap_out_PointerTo_ns1__downloadByteArrayResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__downloadByteArrayResponse(struct soap *soap, const char *tag, int id, struct _ns1__downloadByteArrayResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__downloadByteArrayResponse); if (id < 0) return soap->error; return soap_out__ns1__downloadByteArrayResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__downloadByteArrayResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__downloadByteArrayResponse(struct soap *soap, struct _ns1__downloadByteArrayResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__downloadByteArrayResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__downloadByteArrayResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__downloadByteArrayResponse(struct soap *soap, const char *tag, struct _ns1__downloadByteArrayResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__downloadByteArrayResponse **)soap_malloc(soap, sizeof(struct _ns1__downloadByteArrayResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__downloadByteArrayResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__downloadByteArrayResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__downloadByteArrayResponse, sizeof(struct _ns1__downloadByteArrayResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__downloadByteArray(struct soap *soap, struct _ns1__downloadByteArray *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__downloadByteArray)) soap_serialize__ns1__downloadByteArray(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__downloadByteArray(struct soap *soap, struct _ns1__downloadByteArray *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__downloadByteArray); if (soap_out_PointerTo_ns1__downloadByteArray(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__downloadByteArray(struct soap *soap, const char *tag, int id, struct _ns1__downloadByteArray *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__downloadByteArray); if (id < 0) return soap->error; return soap_out__ns1__downloadByteArray(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__downloadByteArray ** SOAP_FMAC4 soap_get_PointerTo_ns1__downloadByteArray(struct soap *soap, struct _ns1__downloadByteArray **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__downloadByteArray(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__downloadByteArray ** SOAP_FMAC4 soap_in_PointerTo_ns1__downloadByteArray(struct soap *soap, const char *tag, struct _ns1__downloadByteArray **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__downloadByteArray **)soap_malloc(soap, sizeof(struct _ns1__downloadByteArray *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__downloadByteArray(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__downloadByteArray **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__downloadByteArray, sizeof(struct _ns1__downloadByteArray), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__dfResponse(struct soap *soap, struct _ns1__dfResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__dfResponse)) soap_serialize__ns1__dfResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__dfResponse(struct soap *soap, struct _ns1__dfResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__dfResponse); if (soap_out_PointerTo_ns1__dfResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__dfResponse(struct soap *soap, const char *tag, int id, struct _ns1__dfResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__dfResponse); if (id < 0) return soap->error; return soap_out__ns1__dfResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__dfResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__dfResponse(struct soap *soap, struct _ns1__dfResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__dfResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__dfResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__dfResponse(struct soap *soap, const char *tag, struct _ns1__dfResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__dfResponse **)soap_malloc(soap, sizeof(struct _ns1__dfResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__dfResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__dfResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__dfResponse, sizeof(struct _ns1__dfResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__df(struct soap *soap, struct _ns1__df *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__df)) soap_serialize__ns1__df(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__df(struct soap *soap, struct _ns1__df *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__df); if (soap_out_PointerTo_ns1__df(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__df(struct soap *soap, const char *tag, int id, struct _ns1__df *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__df); if (id < 0) return soap->error; return soap_out__ns1__df(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__df ** SOAP_FMAC4 soap_get_PointerTo_ns1__df(struct soap *soap, struct _ns1__df **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__df(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__df ** SOAP_FMAC4 soap_in_PointerTo_ns1__df(struct soap *soap, const char *tag, struct _ns1__df **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__df **)soap_malloc(soap, sizeof(struct _ns1__df *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__df(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__df **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__df, sizeof(struct _ns1__df), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getFqansResponse(struct soap *soap, struct _ns1__getFqansResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getFqansResponse)) soap_serialize__ns1__getFqansResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getFqansResponse(struct soap *soap, struct _ns1__getFqansResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getFqansResponse); if (soap_out_PointerTo_ns1__getFqansResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getFqansResponse(struct soap *soap, const char *tag, int id, struct _ns1__getFqansResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getFqansResponse); if (id < 0) return soap->error; return soap_out__ns1__getFqansResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getFqansResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getFqansResponse(struct soap *soap, struct _ns1__getFqansResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getFqansResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getFqansResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getFqansResponse(struct soap *soap, const char *tag, struct _ns1__getFqansResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getFqansResponse **)soap_malloc(soap, sizeof(struct _ns1__getFqansResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getFqansResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getFqansResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getFqansResponse, sizeof(struct _ns1__getFqansResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getFqans(struct soap *soap, struct _ns1__getFqans *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getFqans)) soap_serialize__ns1__getFqans(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getFqans(struct soap *soap, struct _ns1__getFqans *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getFqans); if (soap_out_PointerTo_ns1__getFqans(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getFqans(struct soap *soap, const char *tag, int id, struct _ns1__getFqans *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getFqans); if (id < 0) return soap->error; return soap_out__ns1__getFqans(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getFqans ** SOAP_FMAC4 soap_get_PointerTo_ns1__getFqans(struct soap *soap, struct _ns1__getFqans **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getFqans(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getFqans ** SOAP_FMAC4 soap_in_PointerTo_ns1__getFqans(struct soap *soap, const char *tag, struct _ns1__getFqans **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getFqans **)soap_malloc(soap, sizeof(struct _ns1__getFqans *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getFqans(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getFqans **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getFqans, sizeof(struct _ns1__getFqans), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getTemplateResponse(struct soap *soap, struct _ns1__getTemplateResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getTemplateResponse)) soap_serialize__ns1__getTemplateResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getTemplateResponse(struct soap *soap, struct _ns1__getTemplateResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getTemplateResponse); if (soap_out_PointerTo_ns1__getTemplateResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getTemplateResponse(struct soap *soap, const char *tag, int id, struct _ns1__getTemplateResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getTemplateResponse); if (id < 0) return soap->error; return soap_out__ns1__getTemplateResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getTemplateResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getTemplateResponse(struct soap *soap, struct _ns1__getTemplateResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getTemplateResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getTemplateResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getTemplateResponse(struct soap *soap, const char *tag, struct _ns1__getTemplateResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getTemplateResponse **)soap_malloc(soap, sizeof(struct _ns1__getTemplateResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getTemplateResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getTemplateResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getTemplateResponse, sizeof(struct _ns1__getTemplateResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getTemplate(struct soap *soap, struct _ns1__getTemplate *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getTemplate)) soap_serialize__ns1__getTemplate(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getTemplate(struct soap *soap, struct _ns1__getTemplate *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getTemplate); if (soap_out_PointerTo_ns1__getTemplate(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getTemplate(struct soap *soap, const char *tag, int id, struct _ns1__getTemplate *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getTemplate); if (id < 0) return soap->error; return soap_out__ns1__getTemplate(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getTemplate ** SOAP_FMAC4 soap_get_PointerTo_ns1__getTemplate(struct soap *soap, struct _ns1__getTemplate **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getTemplate(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getTemplate ** SOAP_FMAC4 soap_in_PointerTo_ns1__getTemplate(struct soap *soap, const char *tag, struct _ns1__getTemplate **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getTemplate **)soap_malloc(soap, sizeof(struct _ns1__getTemplate *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getTemplate(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getTemplate **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getTemplate, sizeof(struct _ns1__getTemplate), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__loginResponse(struct soap *soap, struct _ns1__loginResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__loginResponse)) soap_serialize__ns1__loginResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__loginResponse(struct soap *soap, struct _ns1__loginResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__loginResponse); if (soap_out_PointerTo_ns1__loginResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__loginResponse(struct soap *soap, const char *tag, int id, struct _ns1__loginResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__loginResponse); if (id < 0) return soap->error; return soap_out__ns1__loginResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__loginResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__loginResponse(struct soap *soap, struct _ns1__loginResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__loginResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__loginResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__loginResponse(struct soap *soap, const char *tag, struct _ns1__loginResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__loginResponse **)soap_malloc(soap, sizeof(struct _ns1__loginResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__loginResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__loginResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__loginResponse, sizeof(struct _ns1__loginResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__login(struct soap *soap, struct _ns1__login *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__login)) soap_serialize__ns1__login(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__login(struct soap *soap, struct _ns1__login *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__login); if (soap_out_PointerTo_ns1__login(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__login(struct soap *soap, const char *tag, int id, struct _ns1__login *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__login); if (id < 0) return soap->error; return soap_out__ns1__login(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__login ** SOAP_FMAC4 soap_get_PointerTo_ns1__login(struct soap *soap, struct _ns1__login **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__login(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__login ** SOAP_FMAC4 soap_in_PointerTo_ns1__login(struct soap *soap, const char *tag, struct _ns1__login **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__login **)soap_malloc(soap, sizeof(struct _ns1__login *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__login(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__login **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__login, sizeof(struct _ns1__login), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__mountResponse(struct soap *soap, struct _ns1__mountResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__mountResponse)) soap_serialize__ns1__mountResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__mountResponse(struct soap *soap, struct _ns1__mountResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__mountResponse); if (soap_out_PointerTo_ns1__mountResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__mountResponse(struct soap *soap, const char *tag, int id, struct _ns1__mountResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__mountResponse); if (id < 0) return soap->error; return soap_out__ns1__mountResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__mountResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__mountResponse(struct soap *soap, struct _ns1__mountResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__mountResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__mountResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__mountResponse(struct soap *soap, const char *tag, struct _ns1__mountResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__mountResponse **)soap_malloc(soap, sizeof(struct _ns1__mountResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__mountResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__mountResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__mountResponse, sizeof(struct _ns1__mountResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__mount(struct soap *soap, struct _ns1__mount *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__mount)) soap_serialize__ns1__mount(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__mount(struct soap *soap, struct _ns1__mount *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__mount); if (soap_out_PointerTo_ns1__mount(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__mount(struct soap *soap, const char *tag, int id, struct _ns1__mount *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__mount); if (id < 0) return soap->error; return soap_out__ns1__mount(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__mount ** SOAP_FMAC4 soap_get_PointerTo_ns1__mount(struct soap *soap, struct _ns1__mount **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__mount(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__mount ** SOAP_FMAC4 soap_in_PointerTo_ns1__mount(struct soap *soap, const char *tag, struct _ns1__mount **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__mount **)soap_malloc(soap, sizeof(struct _ns1__mount *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__mount(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__mount **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__mount, sizeof(struct _ns1__mount), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getJobFqanResponse(struct soap *soap, struct _ns1__getJobFqanResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getJobFqanResponse)) soap_serialize__ns1__getJobFqanResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getJobFqanResponse(struct soap *soap, struct _ns1__getJobFqanResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getJobFqanResponse); if (soap_out_PointerTo_ns1__getJobFqanResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getJobFqanResponse(struct soap *soap, const char *tag, int id, struct _ns1__getJobFqanResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getJobFqanResponse); if (id < 0) return soap->error; return soap_out__ns1__getJobFqanResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getJobFqanResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getJobFqanResponse(struct soap *soap, struct _ns1__getJobFqanResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getJobFqanResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobFqanResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getJobFqanResponse(struct soap *soap, const char *tag, struct _ns1__getJobFqanResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getJobFqanResponse **)soap_malloc(soap, sizeof(struct _ns1__getJobFqanResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getJobFqanResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getJobFqanResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getJobFqanResponse, sizeof(struct _ns1__getJobFqanResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getJobFqan(struct soap *soap, struct _ns1__getJobFqan *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getJobFqan)) soap_serialize__ns1__getJobFqan(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getJobFqan(struct soap *soap, struct _ns1__getJobFqan *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getJobFqan); if (soap_out_PointerTo_ns1__getJobFqan(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getJobFqan(struct soap *soap, const char *tag, int id, struct _ns1__getJobFqan *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getJobFqan); if (id < 0) return soap->error; return soap_out__ns1__getJobFqan(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getJobFqan ** SOAP_FMAC4 soap_get_PointerTo_ns1__getJobFqan(struct soap *soap, struct _ns1__getJobFqan **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getJobFqan(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getJobFqan ** SOAP_FMAC4 soap_in_PointerTo_ns1__getJobFqan(struct soap *soap, const char *tag, struct _ns1__getJobFqan **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getJobFqan **)soap_malloc(soap, sizeof(struct _ns1__getJobFqan *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getJobFqan(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getJobFqan **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getJobFqan, sizeof(struct _ns1__getJobFqan), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getChildrenFilesResponse(struct soap *soap, struct _ns1__getChildrenFilesResponse *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getChildrenFilesResponse)) soap_serialize__ns1__getChildrenFilesResponse(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getChildrenFilesResponse(struct soap *soap, struct _ns1__getChildrenFilesResponse *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getChildrenFilesResponse); if (soap_out_PointerTo_ns1__getChildrenFilesResponse(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getChildrenFilesResponse(struct soap *soap, const char *tag, int id, struct _ns1__getChildrenFilesResponse *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getChildrenFilesResponse); if (id < 0) return soap->error; return soap_out__ns1__getChildrenFilesResponse(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getChildrenFilesResponse ** SOAP_FMAC4 soap_get_PointerTo_ns1__getChildrenFilesResponse(struct soap *soap, struct _ns1__getChildrenFilesResponse **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getChildrenFilesResponse(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getChildrenFilesResponse ** SOAP_FMAC4 soap_in_PointerTo_ns1__getChildrenFilesResponse(struct soap *soap, const char *tag, struct _ns1__getChildrenFilesResponse **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getChildrenFilesResponse **)soap_malloc(soap, sizeof(struct _ns1__getChildrenFilesResponse *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getChildrenFilesResponse(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getChildrenFilesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getChildrenFilesResponse, sizeof(struct _ns1__getChildrenFilesResponse), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__getChildrenFiles(struct soap *soap, struct _ns1__getChildrenFiles *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__getChildrenFiles)) soap_serialize__ns1__getChildrenFiles(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__getChildrenFiles(struct soap *soap, struct _ns1__getChildrenFiles *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__getChildrenFiles); if (soap_out_PointerTo_ns1__getChildrenFiles(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__getChildrenFiles(struct soap *soap, const char *tag, int id, struct _ns1__getChildrenFiles *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__getChildrenFiles); if (id < 0) return soap->error; return soap_out__ns1__getChildrenFiles(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__getChildrenFiles ** SOAP_FMAC4 soap_get_PointerTo_ns1__getChildrenFiles(struct soap *soap, struct _ns1__getChildrenFiles **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__getChildrenFiles(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__getChildrenFiles ** SOAP_FMAC4 soap_in_PointerTo_ns1__getChildrenFiles(struct soap *soap, const char *tag, struct _ns1__getChildrenFiles **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__getChildrenFiles **)soap_malloc(soap, sizeof(struct _ns1__getChildrenFiles *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__getChildrenFiles(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__getChildrenFiles **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__getChildrenFiles, sizeof(struct _ns1__getChildrenFiles), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons2__VomsException(struct soap *soap, struct ns2__VomsException *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE_ns2__VomsException)) soap_serialize_ns2__VomsException(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons2__VomsException(struct soap *soap, struct ns2__VomsException *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons2__VomsException); if (soap_out_PointerTons2__VomsException(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons2__VomsException(struct soap *soap, const char *tag, int id, struct ns2__VomsException *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns2__VomsException); if (id < 0) return soap->error; return soap_out_ns2__VomsException(soap, tag, id, *a, type); } SOAP_FMAC3 struct ns2__VomsException ** SOAP_FMAC4 soap_get_PointerTons2__VomsException(struct soap *soap, struct ns2__VomsException **p, const char *tag, const char *type) { if ((p = soap_in_PointerTons2__VomsException(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns2__VomsException ** SOAP_FMAC4 soap_in_PointerTons2__VomsException(struct soap *soap, const char *tag, struct ns2__VomsException **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct ns2__VomsException **)soap_malloc(soap, sizeof(struct ns2__VomsException *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_ns2__VomsException(soap, tag, *a, type))) return NULL; } else { a = (struct ns2__VomsException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns2__VomsException, sizeof(struct ns2__VomsException), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons2__RemoteFileSystemException(struct soap *soap, struct ns2__RemoteFileSystemException *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE_ns2__RemoteFileSystemException)) soap_serialize_ns2__RemoteFileSystemException(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons2__RemoteFileSystemException(struct soap *soap, struct ns2__RemoteFileSystemException *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons2__RemoteFileSystemException); if (soap_out_PointerTons2__RemoteFileSystemException(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons2__RemoteFileSystemException(struct soap *soap, const char *tag, int id, struct ns2__RemoteFileSystemException *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns2__RemoteFileSystemException); if (id < 0) return soap->error; return soap_out_ns2__RemoteFileSystemException(soap, tag, id, *a, type); } SOAP_FMAC3 struct ns2__RemoteFileSystemException ** SOAP_FMAC4 soap_get_PointerTons2__RemoteFileSystemException(struct soap *soap, struct ns2__RemoteFileSystemException **p, const char *tag, const char *type) { if ((p = soap_in_PointerTons2__RemoteFileSystemException(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns2__RemoteFileSystemException ** SOAP_FMAC4 soap_in_PointerTons2__RemoteFileSystemException(struct soap *soap, const char *tag, struct ns2__RemoteFileSystemException **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct ns2__RemoteFileSystemException **)soap_malloc(soap, sizeof(struct ns2__RemoteFileSystemException *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_ns2__RemoteFileSystemException(soap, tag, *a, type))) return NULL; } else { a = (struct ns2__RemoteFileSystemException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns2__RemoteFileSystemException, sizeof(struct ns2__RemoteFileSystemException), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons2__NoValidCredentialException(struct soap *soap, struct ns2__NoValidCredentialException *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE_ns2__NoValidCredentialException)) soap_serialize_ns2__NoValidCredentialException(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons2__NoValidCredentialException(struct soap *soap, struct ns2__NoValidCredentialException *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons2__NoValidCredentialException); if (soap_out_PointerTons2__NoValidCredentialException(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons2__NoValidCredentialException(struct soap *soap, const char *tag, int id, struct ns2__NoValidCredentialException *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns2__NoValidCredentialException); if (id < 0) return soap->error; return soap_out_ns2__NoValidCredentialException(soap, tag, id, *a, type); } SOAP_FMAC3 struct ns2__NoValidCredentialException ** SOAP_FMAC4 soap_get_PointerTons2__NoValidCredentialException(struct soap *soap, struct ns2__NoValidCredentialException **p, const char *tag, const char *type) { if ((p = soap_in_PointerTons2__NoValidCredentialException(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns2__NoValidCredentialException ** SOAP_FMAC4 soap_in_PointerTons2__NoValidCredentialException(struct soap *soap, const char *tag, struct ns2__NoValidCredentialException **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct ns2__NoValidCredentialException **)soap_malloc(soap, sizeof(struct ns2__NoValidCredentialException *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_ns2__NoValidCredentialException(soap, tag, *a, type))) return NULL; } else { a = (struct ns2__NoValidCredentialException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns2__NoValidCredentialException, sizeof(struct ns2__NoValidCredentialException), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons2__NoSuchTemplateException(struct soap *soap, struct ns2__NoSuchTemplateException *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE_ns2__NoSuchTemplateException)) soap_serialize_ns2__NoSuchTemplateException(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons2__NoSuchTemplateException(struct soap *soap, struct ns2__NoSuchTemplateException *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons2__NoSuchTemplateException); if (soap_out_PointerTons2__NoSuchTemplateException(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons2__NoSuchTemplateException(struct soap *soap, const char *tag, int id, struct ns2__NoSuchTemplateException *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns2__NoSuchTemplateException); if (id < 0) return soap->error; return soap_out_ns2__NoSuchTemplateException(soap, tag, id, *a, type); } SOAP_FMAC3 struct ns2__NoSuchTemplateException ** SOAP_FMAC4 soap_get_PointerTons2__NoSuchTemplateException(struct soap *soap, struct ns2__NoSuchTemplateException **p, const char *tag, const char *type) { if ((p = soap_in_PointerTons2__NoSuchTemplateException(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns2__NoSuchTemplateException ** SOAP_FMAC4 soap_in_PointerTons2__NoSuchTemplateException(struct soap *soap, const char *tag, struct ns2__NoSuchTemplateException **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct ns2__NoSuchTemplateException **)soap_malloc(soap, sizeof(struct ns2__NoSuchTemplateException *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_ns2__NoSuchTemplateException(soap, tag, *a, type))) return NULL; } else { a = (struct ns2__NoSuchTemplateException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns2__NoSuchTemplateException, sizeof(struct ns2__NoSuchTemplateException), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons2__NoSuchJobException(struct soap *soap, struct ns2__NoSuchJobException *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE_ns2__NoSuchJobException)) soap_serialize_ns2__NoSuchJobException(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons2__NoSuchJobException(struct soap *soap, struct ns2__NoSuchJobException *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons2__NoSuchJobException); if (soap_out_PointerTons2__NoSuchJobException(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons2__NoSuchJobException(struct soap *soap, const char *tag, int id, struct ns2__NoSuchJobException *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns2__NoSuchJobException); if (id < 0) return soap->error; return soap_out_ns2__NoSuchJobException(soap, tag, id, *a, type); } SOAP_FMAC3 struct ns2__NoSuchJobException ** SOAP_FMAC4 soap_get_PointerTons2__NoSuchJobException(struct soap *soap, struct ns2__NoSuchJobException **p, const char *tag, const char *type) { if ((p = soap_in_PointerTons2__NoSuchJobException(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns2__NoSuchJobException ** SOAP_FMAC4 soap_in_PointerTons2__NoSuchJobException(struct soap *soap, const char *tag, struct ns2__NoSuchJobException **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct ns2__NoSuchJobException **)soap_malloc(soap, sizeof(struct ns2__NoSuchJobException *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_ns2__NoSuchJobException(soap, tag, *a, type))) return NULL; } else { a = (struct ns2__NoSuchJobException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns2__NoSuchJobException, sizeof(struct ns2__NoSuchJobException), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons2__JobSubmissionException(struct soap *soap, struct ns2__JobSubmissionException *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE_ns2__JobSubmissionException)) soap_serialize_ns2__JobSubmissionException(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons2__JobSubmissionException(struct soap *soap, struct ns2__JobSubmissionException *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons2__JobSubmissionException); if (soap_out_PointerTons2__JobSubmissionException(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons2__JobSubmissionException(struct soap *soap, const char *tag, int id, struct ns2__JobSubmissionException *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns2__JobSubmissionException); if (id < 0) return soap->error; return soap_out_ns2__JobSubmissionException(soap, tag, id, *a, type); } SOAP_FMAC3 struct ns2__JobSubmissionException ** SOAP_FMAC4 soap_get_PointerTons2__JobSubmissionException(struct soap *soap, struct ns2__JobSubmissionException **p, const char *tag, const char *type) { if ((p = soap_in_PointerTons2__JobSubmissionException(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns2__JobSubmissionException ** SOAP_FMAC4 soap_in_PointerTons2__JobSubmissionException(struct soap *soap, const char *tag, struct ns2__JobSubmissionException **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct ns2__JobSubmissionException **)soap_malloc(soap, sizeof(struct ns2__JobSubmissionException *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_ns2__JobSubmissionException(soap, tag, *a, type))) return NULL; } else { a = (struct ns2__JobSubmissionException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns2__JobSubmissionException, sizeof(struct ns2__JobSubmissionException), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons2__JobDescriptionNotValidException(struct soap *soap, struct ns2__JobDescriptionNotValidException *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE_ns2__JobDescriptionNotValidException)) soap_serialize_ns2__JobDescriptionNotValidException(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons2__JobDescriptionNotValidException(struct soap *soap, struct ns2__JobDescriptionNotValidException *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons2__JobDescriptionNotValidException); if (soap_out_PointerTons2__JobDescriptionNotValidException(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons2__JobDescriptionNotValidException(struct soap *soap, const char *tag, int id, struct ns2__JobDescriptionNotValidException *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns2__JobDescriptionNotValidException); if (id < 0) return soap->error; return soap_out_ns2__JobDescriptionNotValidException(soap, tag, id, *a, type); } SOAP_FMAC3 struct ns2__JobDescriptionNotValidException ** SOAP_FMAC4 soap_get_PointerTons2__JobDescriptionNotValidException(struct soap *soap, struct ns2__JobDescriptionNotValidException **p, const char *tag, const char *type) { if ((p = soap_in_PointerTons2__JobDescriptionNotValidException(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns2__JobDescriptionNotValidException ** SOAP_FMAC4 soap_in_PointerTons2__JobDescriptionNotValidException(struct soap *soap, const char *tag, struct ns2__JobDescriptionNotValidException **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct ns2__JobDescriptionNotValidException **)soap_malloc(soap, sizeof(struct ns2__JobDescriptionNotValidException *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_ns2__JobDescriptionNotValidException(soap, tag, *a, type))) return NULL; } else { a = (struct ns2__JobDescriptionNotValidException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns2__JobDescriptionNotValidException, sizeof(struct ns2__JobDescriptionNotValidException), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons4__JobCreationException(struct soap *soap, struct ns4__JobCreationException *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE_ns4__JobCreationException)) soap_serialize_ns4__JobCreationException(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons4__JobCreationException(struct soap *soap, struct ns4__JobCreationException *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons4__JobCreationException); if (soap_out_PointerTons4__JobCreationException(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons4__JobCreationException(struct soap *soap, const char *tag, int id, struct ns4__JobCreationException *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns4__JobCreationException); if (id < 0) return soap->error; return soap_out_ns4__JobCreationException(soap, tag, id, *a, type); } SOAP_FMAC3 struct ns4__JobCreationException ** SOAP_FMAC4 soap_get_PointerTons4__JobCreationException(struct soap *soap, struct ns4__JobCreationException **p, const char *tag, const char *type) { if ((p = soap_in_PointerTons4__JobCreationException(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns4__JobCreationException ** SOAP_FMAC4 soap_in_PointerTons4__JobCreationException(struct soap *soap, const char *tag, struct ns4__JobCreationException **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct ns4__JobCreationException **)soap_malloc(soap, sizeof(struct ns4__JobCreationException *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_ns4__JobCreationException(soap, tag, *a, type))) return NULL; } else { a = (struct ns4__JobCreationException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns4__JobCreationException, sizeof(struct ns4__JobCreationException), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToLONG64(struct soap *soap, LONG64 *const*a) { soap_reference(soap, *a, SOAP_TYPE_LONG64); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToLONG64(struct soap *soap, LONG64 *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToLONG64); if (soap_out_PointerToLONG64(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToLONG64(struct soap *soap, const char *tag, int id, LONG64 *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_LONG64); if (id < 0) return soap->error; return soap_out_LONG64(soap, tag, id, *a, type); } SOAP_FMAC3 LONG64 ** SOAP_FMAC4 soap_get_PointerToLONG64(struct soap *soap, LONG64 **p, const char *tag, const char *type) { if ((p = soap_in_PointerToLONG64(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 LONG64 ** SOAP_FMAC4 soap_in_PointerToLONG64(struct soap *soap, const char *tag, LONG64 **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (LONG64 **)soap_malloc(soap, sizeof(LONG64 *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_LONG64(soap, tag, *a, type))) return NULL; } else { a = (LONG64 **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_LONG64, sizeof(LONG64), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToxsd__boolean(struct soap *soap, enum xsd__boolean *const*a) { soap_reference(soap, *a, SOAP_TYPE_xsd__boolean); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToxsd__boolean(struct soap *soap, enum xsd__boolean *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToxsd__boolean); if (soap_out_PointerToxsd__boolean(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToxsd__boolean(struct soap *soap, const char *tag, int id, enum xsd__boolean *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_xsd__boolean); if (id < 0) return soap->error; return soap_out_xsd__boolean(soap, tag, id, *a, type); } SOAP_FMAC3 enum xsd__boolean ** SOAP_FMAC4 soap_get_PointerToxsd__boolean(struct soap *soap, enum xsd__boolean **p, const char *tag, const char *type) { if ((p = soap_in_PointerToxsd__boolean(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 enum xsd__boolean ** SOAP_FMAC4 soap_in_PointerToxsd__boolean(struct soap *soap, const char *tag, enum xsd__boolean **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (enum xsd__boolean **)soap_malloc(soap, sizeof(enum xsd__boolean *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_xsd__boolean(soap, tag, *a, type))) return NULL; } else { a = (enum xsd__boolean **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__boolean, sizeof(enum xsd__boolean), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__anyType2anyTypeMap(struct soap *soap, struct ns1__anyType2anyTypeMap *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE_ns1__anyType2anyTypeMap)) soap_serialize_ns1__anyType2anyTypeMap(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__anyType2anyTypeMap(struct soap *soap, struct ns1__anyType2anyTypeMap *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__anyType2anyTypeMap); if (soap_out_PointerTons1__anyType2anyTypeMap(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__anyType2anyTypeMap(struct soap *soap, const char *tag, int id, struct ns1__anyType2anyTypeMap *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__anyType2anyTypeMap); if (id < 0) return soap->error; return soap_out_ns1__anyType2anyTypeMap(soap, tag, id, *a, type); } SOAP_FMAC3 struct ns1__anyType2anyTypeMap ** SOAP_FMAC4 soap_get_PointerTons1__anyType2anyTypeMap(struct soap *soap, struct ns1__anyType2anyTypeMap **p, const char *tag, const char *type) { if ((p = soap_in_PointerTons1__anyType2anyTypeMap(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns1__anyType2anyTypeMap ** SOAP_FMAC4 soap_in_PointerTons1__anyType2anyTypeMap(struct soap *soap, const char *tag, struct ns1__anyType2anyTypeMap **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct ns1__anyType2anyTypeMap **)soap_malloc(soap, sizeof(struct ns1__anyType2anyTypeMap *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_ns1__anyType2anyTypeMap(soap, tag, *a, type))) return NULL; } else { a = (struct ns1__anyType2anyTypeMap **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__anyType2anyTypeMap, sizeof(struct ns1__anyType2anyTypeMap), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToxsd__base64Binary(struct soap *soap, struct xsd__base64Binary *const*a) { if (*a) soap_serialize_xsd__base64Binary(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToxsd__base64Binary(struct soap *soap, struct xsd__base64Binary *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToxsd__base64Binary); if (soap_out_PointerToxsd__base64Binary(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToxsd__base64Binary(struct soap *soap, const char *tag, int id, struct xsd__base64Binary *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, (struct soap_array*)&(*a)->__ptr, 1, type, SOAP_TYPE_xsd__base64Binary); if (id < 0) return soap->error; return soap_out_xsd__base64Binary(soap, tag, id, *a, type); } SOAP_FMAC3 struct xsd__base64Binary ** SOAP_FMAC4 soap_get_PointerToxsd__base64Binary(struct soap *soap, struct xsd__base64Binary **p, const char *tag, const char *type) { if ((p = soap_in_PointerToxsd__base64Binary(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct xsd__base64Binary ** SOAP_FMAC4 soap_in_PointerToxsd__base64Binary(struct soap *soap, const char *tag, struct xsd__base64Binary **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct xsd__base64Binary **)soap_malloc(soap, sizeof(struct xsd__base64Binary *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_xsd__base64Binary(soap, tag, *a, type))) return NULL; } else { a = (struct xsd__base64Binary **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__base64Binary, sizeof(struct xsd__base64Binary), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons3__ArrayOfMountPoint(struct soap *soap, struct ns3__ArrayOfMountPoint *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE_ns3__ArrayOfMountPoint)) soap_serialize_ns3__ArrayOfMountPoint(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons3__ArrayOfMountPoint(struct soap *soap, struct ns3__ArrayOfMountPoint *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons3__ArrayOfMountPoint); if (soap_out_PointerTons3__ArrayOfMountPoint(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons3__ArrayOfMountPoint(struct soap *soap, const char *tag, int id, struct ns3__ArrayOfMountPoint *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns3__ArrayOfMountPoint); if (id < 0) return soap->error; return soap_out_ns3__ArrayOfMountPoint(soap, tag, id, *a, type); } SOAP_FMAC3 struct ns3__ArrayOfMountPoint ** SOAP_FMAC4 soap_get_PointerTons3__ArrayOfMountPoint(struct soap *soap, struct ns3__ArrayOfMountPoint **p, const char *tag, const char *type) { if ((p = soap_in_PointerTons3__ArrayOfMountPoint(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns3__ArrayOfMountPoint ** SOAP_FMAC4 soap_in_PointerTons3__ArrayOfMountPoint(struct soap *soap, const char *tag, struct ns3__ArrayOfMountPoint **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct ns3__ArrayOfMountPoint **)soap_malloc(soap, sizeof(struct ns3__ArrayOfMountPoint *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_ns3__ArrayOfMountPoint(soap, tag, *a, type))) return NULL; } else { a = (struct ns3__ArrayOfMountPoint **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns3__ArrayOfMountPoint, sizeof(struct ns3__ArrayOfMountPoint), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons3__MountPoint(struct soap *soap, struct ns3__MountPoint *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE_ns3__MountPoint)) soap_serialize_ns3__MountPoint(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons3__MountPoint(struct soap *soap, struct ns3__MountPoint *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons3__MountPoint); if (soap_out_PointerTons3__MountPoint(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons3__MountPoint(struct soap *soap, const char *tag, int id, struct ns3__MountPoint *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns3__MountPoint); if (id < 0) return soap->error; return soap_out_ns3__MountPoint(soap, tag, id, *a, type); } SOAP_FMAC3 struct ns3__MountPoint ** SOAP_FMAC4 soap_get_PointerTons3__MountPoint(struct soap *soap, struct ns3__MountPoint **p, const char *tag, const char *type) { if ((p = soap_in_PointerTons3__MountPoint(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns3__MountPoint ** SOAP_FMAC4 soap_in_PointerTons3__MountPoint(struct soap *soap, const char *tag, struct ns3__MountPoint **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct ns3__MountPoint **)soap_malloc(soap, sizeof(struct ns3__MountPoint *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_ns3__MountPoint(soap, tag, *a, type))) return NULL; } else { a = (struct ns3__MountPoint **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns3__MountPoint, sizeof(struct ns3__MountPoint), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__ArrayOfString(struct soap *soap, struct ns1__ArrayOfString *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE_ns1__ArrayOfString)) soap_serialize_ns1__ArrayOfString(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__ArrayOfString(struct soap *soap, struct ns1__ArrayOfString *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__ArrayOfString); if (soap_out_PointerTons1__ArrayOfString(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__ArrayOfString(struct soap *soap, const char *tag, int id, struct ns1__ArrayOfString *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__ArrayOfString); if (id < 0) return soap->error; return soap_out_ns1__ArrayOfString(soap, tag, id, *a, type); } SOAP_FMAC3 struct ns1__ArrayOfString ** SOAP_FMAC4 soap_get_PointerTons1__ArrayOfString(struct soap *soap, struct ns1__ArrayOfString **p, const char *tag, const char *type) { if ((p = soap_in_PointerTons1__ArrayOfString(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct ns1__ArrayOfString ** SOAP_FMAC4 soap_in_PointerTons1__ArrayOfString(struct soap *soap, const char *tag, struct ns1__ArrayOfString **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct ns1__ArrayOfString **)soap_malloc(soap, sizeof(struct ns1__ArrayOfString *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_ns1__ArrayOfString(soap, tag, *a, type))) return NULL; } else { a = (struct ns1__ArrayOfString **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ArrayOfString, sizeof(struct ns1__ArrayOfString), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTo_ns1__anyType2anyTypeMap_entry(struct soap *soap, struct _ns1__anyType2anyTypeMap_entry *const*a) { if (!soap_reference(soap, *a, SOAP_TYPE__ns1__anyType2anyTypeMap_entry)) soap_serialize__ns1__anyType2anyTypeMap_entry(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTo_ns1__anyType2anyTypeMap_entry(struct soap *soap, struct _ns1__anyType2anyTypeMap_entry *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTo_ns1__anyType2anyTypeMap_entry); if (soap_out_PointerTo_ns1__anyType2anyTypeMap_entry(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTo_ns1__anyType2anyTypeMap_entry(struct soap *soap, const char *tag, int id, struct _ns1__anyType2anyTypeMap_entry *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE__ns1__anyType2anyTypeMap_entry); if (id < 0) return soap->error; return soap_out__ns1__anyType2anyTypeMap_entry(soap, tag, id, *a, type); } SOAP_FMAC3 struct _ns1__anyType2anyTypeMap_entry ** SOAP_FMAC4 soap_get_PointerTo_ns1__anyType2anyTypeMap_entry(struct soap *soap, struct _ns1__anyType2anyTypeMap_entry **p, const char *tag, const char *type) { if ((p = soap_in_PointerTo_ns1__anyType2anyTypeMap_entry(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 struct _ns1__anyType2anyTypeMap_entry ** SOAP_FMAC4 soap_in_PointerTo_ns1__anyType2anyTypeMap_entry(struct soap *soap, const char *tag, struct _ns1__anyType2anyTypeMap_entry **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (struct _ns1__anyType2anyTypeMap_entry **)soap_malloc(soap, sizeof(struct _ns1__anyType2anyTypeMap_entry *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in__ns1__anyType2anyTypeMap_entry(soap, tag, *a, type))) return NULL; } else { a = (struct _ns1__anyType2anyTypeMap_entry **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE__ns1__anyType2anyTypeMap_entry, sizeof(struct _ns1__anyType2anyTypeMap_entry), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTostring(struct soap *soap, char **const*a) { if (!soap_reference(soap, *a, SOAP_TYPE_string)) soap_serialize_string(soap, *a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTostring(struct soap *soap, char **const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTostring); if (soap_out_PointerTostring(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTostring(struct soap *soap, const char *tag, int id, char **const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_string); if (id < 0) return soap->error; return soap_out_string(soap, tag, id, *a, type); } SOAP_FMAC3 char *** SOAP_FMAC4 soap_get_PointerTostring(struct soap *soap, char ***p, const char *tag, const char *type) { if ((p = soap_in_PointerTostring(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 char *** SOAP_FMAC4 soap_in_PointerTostring(struct soap *soap, const char *tag, char ***a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (char ***)soap_malloc(soap, sizeof(char **)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_string(soap, tag, *a, type))) return NULL; } else { a = (char ***)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_string, sizeof(char *), 1); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTounsignedByte(struct soap *soap, unsigned char *const*a) { soap_reference(soap, *a, SOAP_TYPE_unsignedByte); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTounsignedByte(struct soap *soap, unsigned char *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTounsignedByte); if (soap_out_PointerTounsignedByte(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTounsignedByte(struct soap *soap, const char *tag, int id, unsigned char *const*a, const char *type) { id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_unsignedByte); if (id < 0) return soap->error; return soap_out_unsignedByte(soap, tag, id, *a, type); } SOAP_FMAC3 unsigned char ** SOAP_FMAC4 soap_get_PointerTounsignedByte(struct soap *soap, unsigned char **p, const char *tag, const char *type) { if ((p = soap_in_PointerTounsignedByte(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 unsigned char ** SOAP_FMAC4 soap_in_PointerTounsignedByte(struct soap *soap, const char *tag, unsigned char **a, const char *type) { if (soap_element_begin_in(soap, tag, 1, NULL)) return NULL; if (!a) if (!(a = (unsigned char **)soap_malloc(soap, sizeof(unsigned char *)))) return NULL; *a = NULL; if (!soap->null && *soap->href != '#') { soap_revert(soap); if (!(*a = soap_in_unsignedByte(soap, tag, *a, type))) return NULL; } else { a = (unsigned char **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_unsignedByte, sizeof(unsigned char), 0); if (soap->body && soap_element_end_in(soap, tag)) return NULL; } return a; } SOAP_FMAC3 void SOAP_FMAC4 soap_default__QName(struct soap *soap, char **a) { soap_default_string(soap, a); } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__QName(struct soap *soap, char *const*a) { soap_serialize_string(soap, a); } SOAP_FMAC3 int SOAP_FMAC4 soap_put__QName(struct soap *soap, char *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__QName); if (soap_out__QName(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out__QName(struct soap *soap, const char *tag, int id, char *const*a, const char *type) { return soap_outstring(soap, tag, id, a, type, SOAP_TYPE__QName); } SOAP_FMAC3 char ** SOAP_FMAC4 soap_get__QName(struct soap *soap, char **p, const char *tag, const char *type) { if ((p = soap_in__QName(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 char * * SOAP_FMAC4 soap_in__QName(struct soap *soap, const char *tag, char **a, const char *type) { return soap_instring(soap, tag, a, type, SOAP_TYPE__QName, 2, -1, -1); } SOAP_FMAC3 void SOAP_FMAC4 soap_default_string(struct soap *soap, char **a) { (void)soap; /* appease -Wall -Werror */ #ifdef SOAP_DEFAULT_string *a = SOAP_DEFAULT_string; #else *a = (char *)0; #endif } SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_string(struct soap *soap, char *const*a) { soap_reference(soap, *a, SOAP_TYPE_string); } SOAP_FMAC3 int SOAP_FMAC4 soap_put_string(struct soap *soap, char *const*a, const char *tag, const char *type) { register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_string); if (soap_out_string(soap, tag, id, a, type)) return soap->error; return soap_putindependent(soap); } SOAP_FMAC3 int SOAP_FMAC4 soap_out_string(struct soap *soap, const char *tag, int id, char *const*a, const char *type) { return soap_outstring(soap, tag, id, a, type, SOAP_TYPE_string); } SOAP_FMAC3 char ** SOAP_FMAC4 soap_get_string(struct soap *soap, char **p, const char *tag, const char *type) { if ((p = soap_in_string(soap, tag, p, type))) if (soap_getindependent(soap)) return NULL; return p; } SOAP_FMAC3 char * * SOAP_FMAC4 soap_in_string(struct soap *soap, const char *tag, char **a, const char *type) { return soap_instring(soap, tag, a, type, SOAP_TYPE_string, 1, -1, -1); } #ifdef __cplusplus } #endif /* End of soapC.c */ gdis-0.90/hirshfeld_data.h0000644000175000017500000170010310303010371014126 0ustar seansean gdouble rho[54][700]={{6.068973e-01,5.775295e-01,5.495828e-01,5.229885e-01,4.976811e-01,4.735983e-01,4.506809e-01,4.288724e-01,4.081193e-01,3.883704e-01,3.695772e-01,3.516933e-01,3.346749e-01,3.184800e-01,3.030687e-01,2.884032e-01,2.744474e-01,2.611669e-01,2.485290e-01,2.365027e-01,2.250583e-01,2.141677e-01,2.038042e-01,1.939421e-01,1.845572e-01,1.756265e-01,1.671279e-01,1.590406e-01,1.513446e-01,1.440211e-01,1.370519e-01,1.304199e-01,1.241089e-01,1.181033e-01,1.123883e-01,1.069498e-01,1.017745e-01,9.684963e-02,9.216307e-02,8.770330e-02,8.345934e-02,7.942074e-02,7.557757e-02,7.192037e-02,6.844014e-02,6.512832e-02,6.197676e-02,5.897771e-02,5.612378e-02,5.340795e-02,5.082353e-02,4.836418e-02,4.602384e-02,4.379675e-02,4.167742e-02,3.966065e-02,3.774147e-02,3.591516e-02,3.417723e-02,3.252339e-02,3.094958e-02,2.945193e-02,2.802675e-02,2.667054e-02,2.537995e-02,2.415181e-02,2.298311e-02,2.187096e-02,2.081262e-02,1.980550e-02,1.884711e-02,1.793510e-02,1.706722e-02,1.624133e-02,1.545542e-02,1.470753e-02,1.399583e-02,1.331857e-02,1.267409e-02,1.206079e-02,1.147717e-02,1.092179e-02,1.039328e-02,9.890350e-03,9.411756e-03,8.956321e-03,8.522924e-03,8.110500e-03,7.718033e-03,7.344557e-03,6.989154e-03,6.650949e-03,6.329109e-03,6.022844e-03,5.731398e-03,5.454056e-03,5.190134e-03,4.938983e-03,4.699986e-03,4.472554e-03,4.256127e-03,4.050173e-03,3.854185e-03,3.667681e-03,3.490202e-03,3.321311e-03,3.160593e-03,3.007651e-03,2.862111e-03,2.723614e-03,2.591818e-03,2.466400e-03,2.347051e-03,2.233477e-03,2.125399e-03,2.022551e-03,1.924680e-03,1.831544e-03,1.742916e-03,1.658576e-03,1.578318e-03,1.501943e-03,1.429264e-03,1.360102e-03,1.294286e-03,1.231656e-03,1.172056e-03,1.115340e-03,1.061369e-03,1.010009e-03,9.611349e-04,9.146256e-04,8.703669e-04,8.282498e-04,7.881708e-04,7.500312e-04,7.137372e-04,6.791994e-04,6.463330e-04,6.150569e-04,5.852943e-04,5.569719e-04,5.300200e-04,5.043724e-04,4.799658e-04,4.567402e-04,4.346386e-04,4.136064e-04,3.935920e-04,3.745461e-04,3.564218e-04,3.391745e-04,3.227619e-04,3.071434e-04,2.922807e-04,2.781373e-04,2.646782e-04,2.518704e-04,2.396824e-04,2.280842e-04,2.170472e-04,2.065443e-04,1.965496e-04,1.870386e-04,1.779878e-04,1.693749e-04,1.611789e-04,1.533794e-04,1.459574e-04,1.388945e-04,1.321734e-04,1.257775e-04,1.196912e-04,1.138993e-04,1.083877e-04,1.031428e-04,9.815176e-05,9.340219e-05,8.888246e-05,8.458144e-05,8.048854e-05,7.659370e-05,7.288733e-05,6.936031e-05,6.600396e-05,6.281003e-05,5.977065e-05,5.687835e-05,5.412601e-05,5.150685e-05,4.901443e-05,4.664262e-05,4.438559e-05,4.223777e-05,4.019388e-05,3.824890e-05,3.639804e-05,3.463673e-05,3.296066e-05,3.136570e-05,2.984791e-05,2.840357e-05,2.702912e-05,2.572118e-05,2.447653e-05,2.329211e-05,2.216501e-05,2.109244e-05,2.007178e-05,1.910051e-05,1.817623e-05,1.729668e-05,1.645970e-05,1.566321e-05,1.490527e-05,1.418400e-05,1.349764e-05,1.284449e-05,1.222294e-05,1.163148e-05,1.106863e-05,1.053302e-05,1.002332e-05,9.538296e-06,9.076737e-06,8.637514e-06,8.219545e-06,7.821801e-06,7.443304e-06,7.083122e-06,6.740370e-06,6.414203e-06,6.103820e-06,5.808456e-06,5.527385e-06,5.259915e-06,5.005387e-06,4.763177e-06,4.532687e-06,4.313350e-06,4.104627e-06,3.906004e-06,3.716992e-06,3.537127e-06,3.365965e-06,3.203086e-06,3.048089e-06,2.900592e-06,2.760232e-06,2.626665e-06,2.499560e-06,2.378606e-06,2.263506e-06,2.153975e-06,2.049744e-06,1.950557e-06,1.856169e-06,1.766349e-06,1.680876e-06,1.599538e-06,1.522136e-06,1.448480e-06,1.378388e-06,1.311688e-06,1.248215e-06,1.187814e-06,1.130336e-06,1.075639e-06,1.023589e-06,9.740573e-07,9.269226e-07,8.820688e-07,8.393855e-07,7.987676e-07,7.601153e-07,7.233333e-07,6.883312e-07,6.550228e-07,6.233263e-07,5.931635e-07,5.644603e-07,5.371461e-07,5.111536e-07,4.864189e-07,4.628810e-07,4.404822e-07,4.191673e-07,3.988838e-07,3.795818e-07,3.612138e-07,3.437347e-07,3.271014e-07,3.112729e-07,2.962104e-07,2.818768e-07,2.682368e-07,2.552568e-07,2.429049e-07,2.311507e-07,2.199654e-07,2.093212e-07,1.991922e-07,1.895533e-07,1.803808e-07,1.716522e-07,1.633459e-07,1.554416e-07,1.479198e-07,1.407619e-07,1.339505e-07,1.274686e-07,1.213004e-07,1.154307e-07,1.098450e-07,1.045296e-07,9.947139e-08,9.465797e-08,9.007747e-08,8.571862e-08,8.157070e-08,7.762349e-08,7.386729e-08,7.029285e-08,6.689138e-08,6.365450e-08,6.057426e-08,5.764307e-08,5.485372e-08,5.219935e-08,4.967343e-08,4.726973e-08,4.498235e-08,4.280565e-08,4.073428e-08,3.876315e-08,3.688740e-08,3.510242e-08,3.340381e-08,3.178740e-08,3.024921e-08,2.878545e-08,2.739252e-08,2.606700e-08,2.480562e-08,2.360527e-08,2.246301e-08,2.137603e-08,2.034164e-08,1.935731e-08,1.842061e-08,1.752924e-08,1.668100e-08,1.587380e-08,1.510567e-08,1.437471e-08,1.367911e-08,1.301718e-08,1.238728e-08,1.178786e-08,1.121744e-08,1.067463e-08,1.015809e-08,9.666537e-09,9.198773e-09,8.753644e-09,8.330055e-09,7.926964e-09,7.543378e-09,7.178354e-09,6.830993e-09,6.500441e-09,6.185885e-09,5.886550e-09,5.601700e-09,5.330634e-09,5.072684e-09,4.827217e-09,4.593628e-09,4.371342e-09,4.159813e-09,3.958519e-09,3.766967e-09,3.584683e-09,3.411220e-09,3.246151e-09,3.089070e-09,2.939590e-09,2.797343e-09,2.661980e-09,2.533166e-09,2.410587e-09,2.293938e-09,2.182935e-09,2.077302e-09,1.976782e-09,1.881125e-09,1.790098e-09,1.703475e-09,1.621044e-09,1.542601e-09,1.467955e-09,1.396920e-09,1.329323e-09,1.264997e-09,1.203784e-09,1.145533e-09,1.090101e-09,1.037351e-09,9.871533e-10,9.393850e-10,8.939281e-10,8.506709e-10,8.095070e-10,7.703349e-10,7.330584e-10,6.975857e-10,6.638295e-10,6.317068e-10,6.011385e-10,5.720494e-10,5.443679e-10,5.180260e-10,4.929587e-10,4.691044e-10,4.464044e-10,4.248029e-10,4.042467e-10,3.846852e-10,3.660703e-10,3.483561e-10,3.314992e-10,3.154579e-10,3.001929e-10,2.856666e-10,2.718432e-10,2.586887e-10,2.461707e-10,2.342585e-10,2.229228e-10,2.121355e-10,2.018703e-10,1.921018e-10,1.828060e-10,1.739600e-10,1.655421e-10,1.575315e-10,1.499085e-10,1.426545e-10,1.357514e-10,1.291824e-10,1.229313e-10,1.169826e-10,1.113218e-10,1.059350e-10,1.008088e-10,9.593063e-11,9.128855e-11,8.687110e-11,8.266740e-11,7.866713e-11,7.486042e-11,7.123793e-11,6.779072e-11,6.451033e-11,6.138867e-11,5.841808e-11,5.559123e-11,5.290117e-11,5.034128e-11,4.790526e-11,4.558713e-11,4.338117e-11,4.128195e-11,3.928432e-11,3.738335e-11,3.557437e-11,3.385292e-11,3.221478e-11,3.065591e-11,2.917247e-11,2.776081e-11,2.641747e-11,2.513912e-11,2.392264e-11,2.276503e-11,2.166343e-11,2.061513e-11,1.961757e-11,1.866827e-11,1.776491e-11,1.690527e-11,1.608722e-11,1.530876e-11,1.456797e-11,1.386303e-11,1.319220e-11,1.255382e-11,1.194634e-11,1.136826e-11,1.081815e-11,1.029466e-11,9.796502e-12,9.322449e-12,8.871336e-12,8.442052e-12,8.033541e-12,7.644798e-12,7.274866e-12,6.922835e-12,6.587839e-12,6.269053e-12,5.965694e-12,5.677014e-12,5.402303e-12,5.140886e-12,4.892118e-12,4.655389e-12,4.430114e-12,4.215741e-12,4.011741e-12,3.817613e-12,3.632879e-12,3.457084e-12,3.289795e-12,3.130602e-12,2.979112e-12,2.834953e-12,2.697770e-12,2.567225e-12,2.442997e-12,2.324780e-12,2.212284e-12,2.105231e-12,2.003359e-12,1.906417e-12,1.814165e-12,1.726378e-12,1.642838e-12,1.563341e-12,1.487691e-12,1.415702e-12,1.347196e-12,1.282005e-12,1.219969e-12,1.160935e-12,1.104757e-12,1.051298e-12,1.000425e-12,9.520149e-13,9.059469e-13,8.621081e-13,8.203907e-13,7.806920e-13,7.429143e-13,7.069646e-13,6.727546e-13,6.402000e-13,6.092207e-13,5.797405e-13,5.516869e-13,5.249908e-13,4.995864e-13,4.754115e-13,4.524063e-13,4.305143e-13,4.096818e-13,3.898573e-13,3.709921e-13,3.530397e-13,3.359562e-13,3.196992e-13,3.042290e-13,2.895073e-13,2.754981e-13,2.621667e-13,2.494805e-13,2.374081e-13,2.259199e-13,2.149877e-13,2.045844e-13,1.946846e-13,1.852638e-13,1.762989e-13,1.677678e-13,1.596495e-13,1.519240e-13,1.445724e-13,1.375766e-13,1.309192e-13,1.245841e-13,1.185554e-13,1.128185e-13,1.073592e-13,1.021641e-13,9.722041e-14,9.251591e-14,8.803907e-14,8.377885e-14,7.972480e-14,7.586691e-14,7.219571e-14,6.870216e-14,6.537766e-14,6.221404e-14,5.920350e-14,5.633864e-14,5.361241e-14,5.101811e-14,4.854934e-14,4.620004e-14,4.396442e-14,4.183698e-14,3.981249e-14,3.788596e-14,3.605266e-14,3.430807e-14,3.264790e-14,3.106807e-14,2.956469e-14,2.813405e-14,2.677264e-14,2.547712e-14,2.424428e-14,2.307110e-14,2.195469e-14,2.089230e-14,1.988132e-14,1.891926e-14,1.800376e-14,1.713256e-14,1.630351e-14,1.551459e-14,1.476384e-14,1.404941e-14,1.336956e-14,1.272261e-14,1.210696e-14,1.152111e-14,1.096360e-14,1.043307e-14,9.928214e-15,9.447788e-15,8.990610e-15,8.555554e-15,8.141551e-15,7.747581e-15,7.372675e-15,7.015912e-15,6.676412e-15,6.353340e-15,6.045902e-15,5.753341e-15,5.474936e-15,5.210004e-15,4.957892e-15,4.717980e-15,4.489676e-15,4.272421e-15,4.065679e-15,3.868940e-15,3.681722e-15,3.503564e-15,3.334026e-15,3.172693e-15,3.019166e-15,2.873069e-15,2.734041e-15,2.601741e-15,2.475842e-15,2.356036e-15,2.242028e-15,2.133536e-15,2.030294e-15,1.932048e-15,1.838556e-15,1.749589e-15,1.664926e-15,1.584360e-15,1.507693e-15,1.434736e-15,1.365309e-15,1.299242e-15,1.236371e-15,1.176543e-15,1.119610e-15,1.065432e-15,1.013876e-15,9.648146e-16,9.181272e-16,8.736990e-16,8.314207e-16,7.911882e-16,7.529026e-16,7.164697e-16,6.817997e-16,6.488074e-16,6.174116e-16,5.875351e-16,5.591042e-16,5.320492e-16}, {3.597297e+00,3.320786e+00,3.066698e+00,2.833125e+00,2.618331e+00,2.420734e+00,2.238889e+00,2.071480e+00,1.917303e+00,1.775261e+00,1.644349e+00,1.523652e+00,1.412329e+00,1.309615e+00,1.214807e+00,1.127265e+00,1.046400e+00,9.716754e-01,9.025982e-01,8.387174e-01,7.796198e-01,7.249264e-01,6.742902e-01,6.273924e-01,5.839411e-01,5.436681e-01,5.063272e-01,4.716924e-01,4.395561e-01,4.097275e-01,3.820312e-01,3.563059e-01,3.324032e-01,3.101866e-01,2.895302e-01,2.703183e-01,2.524442e-01,2.358094e-01,2.203234e-01,2.059023e-01,1.924690e-01,1.799523e-01,1.682861e-01,1.574097e-01,1.472669e-01,1.378056e-01,1.289778e-01,1.207388e-01,1.130475e-01,1.058658e-01,9.915819e-02,9.289197e-02,8.703674e-02,8.156431e-02,7.644853e-02,7.166514e-02,6.719159e-02,6.300696e-02,5.909181e-02,5.542806e-02,5.199892e-02,4.878876e-02,4.578305e-02,4.296826e-02,4.033181e-02,3.786197e-02,3.554783e-02,3.337922e-02,3.134667e-02,2.944133e-02,2.765498e-02,2.597993e-02,2.440903e-02,2.293557e-02,2.155334e-02,2.025649e-02,1.903960e-02,1.789758e-02,1.682569e-02,1.581950e-02,1.487486e-02,1.398791e-02,1.315501e-02,1.237280e-02,1.163809e-02,1.094793e-02,1.029955e-02,9.690346e-03,9.117900e-03,8.579938e-03,8.074330e-03,7.599085e-03,7.152336e-03,6.732334e-03,6.337443e-03,5.966127e-03,5.616948e-03,5.288556e-03,4.979689e-03,4.689161e-03,4.415861e-03,4.158746e-03,3.916839e-03,3.689222e-03,3.475035e-03,3.273471e-03,3.083771e-03,2.905224e-03,2.737164e-03,2.578962e-03,2.430030e-03,2.289817e-03,2.157802e-03,2.033498e-03,1.916448e-03,1.806222e-03,1.702414e-03,1.604646e-03,1.512561e-03,1.425824e-03,1.344119e-03,1.267149e-03,1.194637e-03,1.126321e-03,1.061955e-03,1.001306e-03,9.441581e-04,8.903056e-04,8.395562e-04,7.917287e-04,7.466529e-04,7.041683e-04,6.641243e-04,6.263789e-04,5.907986e-04,5.572578e-04,5.256382e-04,4.958285e-04,4.677239e-04,4.412260e-04,4.162417e-04,3.926838e-04,3.704700e-04,3.495227e-04,3.297691e-04,3.111404e-04,2.935720e-04,2.770030e-04,2.613759e-04,2.466366e-04,2.327344e-04,2.196213e-04,2.072520e-04,1.955840e-04,1.845772e-04,1.741938e-04,1.643982e-04,1.551569e-04,1.464382e-04,1.382124e-04,1.304514e-04,1.231288e-04,1.162195e-04,1.097001e-04,1.035484e-04,9.774354e-05,9.226583e-05,8.709670e-05,8.221864e-05,7.761517e-05,7.327073e-05,6.917064e-05,6.530108e-05,6.164900e-05,5.820211e-05,5.494882e-05,5.187817e-05,4.897987e-05,4.624419e-05,4.366194e-05,4.122448e-05,3.892364e-05,3.675173e-05,3.470149e-05,3.276606e-05,3.093898e-05,2.921417e-05,2.758585e-05,2.604862e-05,2.459736e-05,2.322722e-05,2.193367e-05,2.071239e-05,1.955934e-05,1.847068e-05,1.744281e-05,1.647231e-05,1.555598e-05,1.469077e-05,1.387382e-05,1.310244e-05,1.237406e-05,1.168629e-05,1.103684e-05,1.042359e-05,9.844501e-06,9.297665e-06,8.781282e-06,8.293649e-06,7.833160e-06,7.398300e-06,6.987638e-06,6.599824e-06,6.233581e-06,5.887708e-06,5.561067e-06,5.252586e-06,4.961254e-06,4.686113e-06,4.426261e-06,4.180848e-06,3.949067e-06,3.730161e-06,3.523412e-06,3.328144e-06,3.143716e-06,2.969527e-06,2.805007e-06,2.649616e-06,2.502849e-06,2.364224e-06,2.233290e-06,2.109619e-06,1.992807e-06,1.882472e-06,1.778256e-06,1.679818e-06,1.586836e-06,1.499009e-06,1.416050e-06,1.337688e-06,1.263668e-06,1.193749e-06,1.127704e-06,1.065318e-06,1.006387e-06,9.507200e-07,8.981359e-07,8.484637e-07,8.015417e-07,7.572176e-07,7.153472e-07,6.757946e-07,6.384313e-07,6.031358e-07,5.697937e-07,5.382966e-07,5.085424e-07,4.804344e-07,4.538814e-07,4.287974e-07,4.051009e-07,3.827151e-07,3.615675e-07,3.415894e-07,3.227162e-07,3.048865e-07,2.880428e-07,2.721303e-07,2.570976e-07,2.428960e-07,2.294794e-07,2.168045e-07,2.048301e-07,1.935176e-07,1.828303e-07,1.727336e-07,1.631949e-07,1.541833e-07,1.456696e-07,1.376263e-07,1.300275e-07,1.228484e-07,1.160660e-07,1.096582e-07,1.036044e-07,9.788502e-08,9.248153e-08,8.737650e-08,8.255341e-08,7.799670e-08,7.369163e-08,6.962430e-08,6.578158e-08,6.215105e-08,5.872099e-08,5.548032e-08,5.241858e-08,4.952588e-08,4.679288e-08,4.421077e-08,4.177120e-08,3.946630e-08,3.728864e-08,3.523119e-08,3.328730e-08,3.145071e-08,2.971549e-08,2.807605e-08,2.652709e-08,2.506361e-08,2.368090e-08,2.237450e-08,2.114020e-08,1.997401e-08,1.887217e-08,1.783113e-08,1.684754e-08,1.591822e-08,1.504018e-08,1.421058e-08,1.342676e-08,1.268618e-08,1.198647e-08,1.132535e-08,1.070072e-08,1.011054e-08,9.552917e-09,9.026059e-09,8.528266e-09,8.057933e-09,7.613544e-09,7.193670e-09,6.796956e-09,6.422125e-09,6.067969e-09,5.733348e-09,5.417184e-09,5.118459e-09,4.836209e-09,4.569527e-09,4.317554e-09,4.079478e-09,3.854532e-09,3.641992e-09,3.441173e-09,3.251430e-09,3.072151e-09,2.902759e-09,2.742709e-09,2.591484e-09,2.448599e-09,2.313594e-09,2.186033e-09,2.065507e-09,1.951626e-09,1.844026e-09,1.742358e-09,1.646297e-09,1.555533e-09,1.469773e-09,1.388742e-09,1.312180e-09,1.239838e-09,1.171486e-09,1.106902e-09,1.045879e-09,9.882205e-10,9.337412e-10,8.822656e-10,8.336281e-10,7.876722e-10,7.442500e-10,7.032218e-10,6.644556e-10,6.278267e-10,5.932172e-10,5.605158e-10,5.296172e-10,5.004221e-10,4.728365e-10,4.467717e-10,4.221439e-10,3.988737e-10,3.768864e-10,3.561112e-10,3.364813e-10,3.179336e-10,3.004083e-10,2.838492e-10,2.682029e-10,2.534191e-10,2.394503e-10,2.262515e-10,2.137803e-10,2.019966e-10,1.908625e-10,1.803421e-10,1.704016e-10,1.610091e-10,1.521343e-10,1.437488e-10,1.358255e-10,1.283389e-10,1.212650e-10,1.145811e-10,1.082655e-10,1.022981e-10,9.665964e-11,9.133196e-11,8.629795e-11,8.154141e-11,7.704706e-11,7.280044e-11,6.878789e-11,6.499651e-11,6.141412e-11,5.802918e-11,5.483081e-11,5.180874e-11,4.895324e-11,4.625513e-11,4.370573e-11,4.129686e-11,3.902075e-11,3.687010e-11,3.483799e-11,3.291789e-11,3.110361e-11,2.938934e-11,2.776954e-11,2.623903e-11,2.479287e-11,2.342643e-11,2.213529e-11,2.091532e-11,1.976259e-11,1.867339e-11,1.764422e-11,1.667178e-11,1.575293e-11,1.488473e-11,1.406438e-11,1.328924e-11,1.255682e-11,1.186477e-11,1.121086e-11,1.059300e-11,1.000918e-11,9.457546e-12,8.936312e-12,8.443806e-12,7.978444e-12,7.538730e-12,7.123250e-12,6.730669e-12,6.359724e-12,6.009224e-12,5.678041e-12,5.365111e-12,5.069428e-12,4.790040e-12,4.526051e-12,4.276610e-12,4.040918e-12,3.818215e-12,3.607786e-12,3.408954e-12,3.221080e-12,3.043561e-12,2.875825e-12,2.717334e-12,2.567577e-12,2.426074e-12,2.292369e-12,2.166034e-12,2.046660e-12,1.933866e-12,1.827288e-12,1.726584e-12,1.631430e-12,1.541520e-12,1.456565e-12,1.376292e-12,1.300443e-12,1.228775e-12,1.161056e-12,1.097069e-12,1.036608e-12,9.794800e-13,9.255001e-13,8.744950e-13,8.263010e-13,7.807630e-13,7.377346e-13,6.970776e-13,6.586612e-13,6.223620e-13,5.880633e-13,5.556548e-13,5.250324e-13,4.960977e-13,4.687575e-13,4.429241e-13,4.185144e-13,3.954499e-13,3.736566e-13,3.530643e-13,3.336068e-13,3.152216e-13,2.978497e-13,2.814352e-13,2.659252e-13,2.512701e-13,2.374225e-13,2.243382e-13,2.119749e-13,2.002929e-13,1.892548e-13,1.788250e-13,1.689699e-13,1.596580e-13,1.508592e-13,1.425454e-13,1.346897e-13,1.272670e-13,1.202533e-13,1.136262e-13,1.073643e-13,1.014475e-13,9.585671e-14,9.057407e-14,8.558255e-14,8.086612e-14,7.640961e-14,7.219870e-14,6.821985e-14,6.446028e-14,6.090789e-14,5.755128e-14,5.437965e-14,5.138281e-14,4.855112e-14,4.587549e-14,4.334731e-14,4.095846e-14,3.870126e-14,3.656845e-14,3.455318e-14,3.264897e-14,3.084970e-14,2.914959e-14,2.754317e-14,2.602528e-14,2.459104e-14,2.323584e-14,2.195533e-14,2.074538e-14,1.960212e-14,1.852186e-14,1.750113e-14,1.653665e-14,1.562533e-14,1.476422e-14,1.395058e-14,1.318177e-14,1.245533e-14,1.176893e-14,1.112035e-14,1.050751e-14,9.928452e-15,9.381302e-15,8.864305e-15,8.375800e-15,7.914215e-15,7.478069e-15,7.065958e-15,6.676558e-15,6.308618e-15,5.960955e-15,5.632451e-15,5.322051e-15,5.028757e-15,4.751626e-15,4.489768e-15,4.242340e-15,4.008548e-15,3.787640e-15,3.578906e-15,3.381676e-15,3.195314e-15,3.019223e-15,2.852836e-15,2.695619e-15,2.547066e-15,2.406699e-15,2.274068e-15,2.148746e-15,2.030330e-15,1.918441e-15,1.812717e-15,1.712820e-15,1.618428e-15,1.529238e-15,1.444963e-15,1.365332e-15,1.290090e-15,1.218994e-15,1.151816e-15,1.088341e-15,1.028363e-15,9.716912e-16,9.181422e-16,8.675442e-16,8.197347e-16,7.745598e-16,7.318746e-16,6.915416e-16,6.534314e-16,6.174214e-16,5.833959e-16,5.512455e-16,5.208669e-16,4.921624e-16,4.650398e-16,4.394119e-16,4.151963e-16,3.923153e-16,3.706952e-16,3.502665e-16,3.309637e-16,3.127246e-16,2.954906e-16,2.792064e-16,2.638196e-16,2.492808e-16,2.355432e-16,2.225626e-16,2.102974e-16,1.987081e-16,1.877575e-16,1.774104e-16,1.676335e-16,1.583954e-16,1.496664e-16,1.414184e-16,1.336250e-16,1.262610e-16,1.193029e-16,1.127282e-16,1.065159e-16,1.006459e-16,9.509943e-17,8.985859e-17,8.490658e-17,8.022746e-17,7.580621e-17,7.162860e-17,6.768123e-17,6.395138e-17,6.042709e-17,5.709701e-17,5.395045e-17,5.097730e-17,4.816799e-17,4.551351e-17,4.300530e-17,4.063533e-17,3.839595e-17,3.627999e-17,3.428064e-17,3.239147e-17,3.060641e-17,2.891972e-17,2.732599e-17,2.582008e-17,2.439716e-17,2.305266e-17,2.178225e-17,2.058185e-17,1.944761e-17,1.837587e-17,1.736320e-17,1.640633e-17,1.550219e-17,1.464788e-17,1.384066e-17,1.307791e-17,1.235720e-17,1.167621e-17,1.103275e-17,1.042474e-17,9.850246e-18,9.307409e-18,8.794488e-18,8.309833e-18,7.851887e-18,7.419178e-18,7.010315e-18,6.623984e-18}, {1.383424e+01,1.226590e+01,1.088309e+01,9.662867e+00,8.585260e+00,7.632852e+00,6.790450e+00,6.044786e+00,5.384264e+00,4.798741e+00,4.279335e+00,3.818262e+00,3.408697e+00,3.044646e+00,2.720846e+00,2.432668e+00,2.176037e+00,1.947367e+00,1.743494e+00,1.561630e+00,1.399312e+00,1.254363e+00,1.124861e+00,1.009103e+00,9.055823e-01,8.129637e-01,7.300631e-01,6.558297e-01,5.893310e-01,5.297380e-01,4.763141e-01,4.284037e-01,3.854235e-01,3.468537e-01,3.122313e-01,2.811433e-01,2.532213e-01,2.281365e-01,2.055950e-01,1.853345e-01,1.671202e-01,1.507423e-01,1.360130e-01,1.227642e-01,1.108451e-01,1.001210e-01,9.047080e-02,8.178604e-02,7.396943e-02,6.693364e-02,6.060028e-02,5.489893e-02,4.976637e-02,4.514575e-02,4.098600e-02,3.724117e-02,3.386997e-02,3.083522e-02,2.810349e-02,2.564467e-02,2.343167e-02,2.144009e-02,1.964796e-02,1.803549e-02,1.658483e-02,1.527993e-02,1.410629e-02,1.305088e-02,1.210192e-02,1.124880e-02,1.048196e-02,9.792774e-03,9.173471e-03,8.617035e-03,8.117142e-03,7.668088e-03,7.264731e-03,6.902432e-03,6.577007e-03,6.284687e-03,6.022069e-03,5.786087e-03,5.573977e-03,5.383249e-03,5.211657e-03,5.057178e-03,4.917990e-03,4.792452e-03,4.679086e-03,4.576563e-03,4.483686e-03,4.399379e-03,4.322675e-03,4.252705e-03,4.188688e-03,4.129924e-03,4.075785e-03,4.025708e-03,3.979188e-03,3.935774e-03,3.895064e-03,3.856698e-03,3.820353e-03,3.785745e-03,3.752620e-03,3.720750e-03,3.689938e-03,3.660005e-03,3.630796e-03,3.602173e-03,3.574016e-03,3.546220e-03,3.518692e-03,3.491354e-03,3.464137e-03,3.436981e-03,3.409836e-03,3.382661e-03,3.355420e-03,3.328084e-03,3.300630e-03,3.273037e-03,3.245294e-03,3.217389e-03,3.189314e-03,3.161067e-03,3.132645e-03,3.104051e-03,3.075286e-03,3.046355e-03,3.017265e-03,2.988023e-03,2.958637e-03,2.929118e-03,2.899475e-03,2.869720e-03,2.839863e-03,2.809917e-03,2.779893e-03,2.749803e-03,2.719661e-03,2.689478e-03,2.659268e-03,2.629041e-03,2.598812e-03,2.568591e-03,2.538390e-03,2.508223e-03,2.478099e-03,2.448030e-03,2.418028e-03,2.388102e-03,2.358264e-03,2.328523e-03,2.298889e-03,2.269371e-03,2.239979e-03,2.210721e-03,2.181606e-03,2.152642e-03,2.123836e-03,2.095195e-03,2.066728e-03,2.038440e-03,2.010338e-03,1.982429e-03,1.954717e-03,1.927208e-03,1.899908e-03,1.872821e-03,1.845951e-03,1.819304e-03,1.792883e-03,1.766692e-03,1.740735e-03,1.715014e-03,1.689532e-03,1.664293e-03,1.639299e-03,1.614551e-03,1.590053e-03,1.565806e-03,1.541811e-03,1.518070e-03,1.494585e-03,1.471356e-03,1.448385e-03,1.425671e-03,1.403217e-03,1.381021e-03,1.359084e-03,1.337407e-03,1.315989e-03,1.294830e-03,1.273930e-03,1.253289e-03,1.232905e-03,1.212779e-03,1.192909e-03,1.173295e-03,1.153936e-03,1.134830e-03,1.115977e-03,1.097375e-03,1.079024e-03,1.060920e-03,1.043065e-03,1.025454e-03,1.008088e-03,9.909646e-04,9.740818e-04,9.574380e-04,9.410314e-04,9.248602e-04,9.089225e-04,8.932163e-04,8.777398e-04,8.624908e-04,8.474674e-04,8.326674e-04,8.180889e-04,8.037296e-04,7.895874e-04,7.756602e-04,7.619457e-04,7.484418e-04,7.351462e-04,7.220567e-04,7.091711e-04,6.964871e-04,6.840025e-04,6.717149e-04,6.596222e-04,6.477220e-04,6.360121e-04,6.244901e-04,6.131539e-04,6.020011e-04,5.910294e-04,5.802367e-04,5.696206e-04,5.591788e-04,5.489092e-04,5.388095e-04,5.288774e-04,5.191108e-04,5.095074e-04,5.000650e-04,4.907814e-04,4.816545e-04,4.726820e-04,4.638619e-04,4.551921e-04,4.466703e-04,4.382944e-04,4.300625e-04,4.219724e-04,4.140220e-04,4.062094e-04,3.985325e-04,3.909893e-04,3.835778e-04,3.762960e-04,3.691421e-04,3.621140e-04,3.552098e-04,3.484278e-04,3.417659e-04,3.352224e-04,3.287954e-04,3.224831e-04,3.162837e-04,3.101954e-04,3.042165e-04,2.983453e-04,2.925800e-04,2.869189e-04,2.813604e-04,2.759028e-04,2.705445e-04,2.652838e-04,2.601193e-04,2.550492e-04,2.500721e-04,2.451864e-04,2.403906e-04,2.356833e-04,2.310629e-04,2.265279e-04,2.220771e-04,2.177088e-04,2.134219e-04,2.092147e-04,2.050862e-04,2.010348e-04,1.970592e-04,1.931582e-04,1.893305e-04,1.855748e-04,1.818899e-04,1.782746e-04,1.747275e-04,1.712477e-04,1.678338e-04,1.644847e-04,1.611993e-04,1.579765e-04,1.548151e-04,1.517141e-04,1.486724e-04,1.456889e-04,1.427627e-04,1.398926e-04,1.370778e-04,1.343171e-04,1.316096e-04,1.289544e-04,1.263506e-04,1.237971e-04,1.212931e-04,1.188377e-04,1.164299e-04,1.140690e-04,1.117541e-04,1.094843e-04,1.072588e-04,1.050768e-04,1.029375e-04,1.008400e-04,9.878373e-05,9.676779e-05,9.479147e-05,9.285404e-05,9.095475e-05,8.909292e-05,8.726783e-05,8.547880e-05,8.372516e-05,8.200623e-05,8.032138e-05,7.866995e-05,7.705132e-05,7.546487e-05,7.390999e-05,7.238608e-05,7.089256e-05,6.942884e-05,6.799436e-05,6.658857e-05,6.521092e-05,6.386086e-05,6.253788e-05,6.124144e-05,5.997106e-05,5.872621e-05,5.750642e-05,5.631120e-05,5.514007e-05,5.399258e-05,5.286826e-05,5.176666e-05,5.068735e-05,4.962989e-05,4.859387e-05,4.757885e-05,4.658443e-05,4.561022e-05,4.465581e-05,4.372082e-05,4.280487e-05,4.190758e-05,4.102860e-05,4.016756e-05,3.932410e-05,3.849789e-05,3.768858e-05,3.689584e-05,3.611934e-05,3.535876e-05,3.461379e-05,3.388412e-05,3.316944e-05,3.246945e-05,3.178387e-05,3.111241e-05,3.045479e-05,2.981073e-05,2.917996e-05,2.856221e-05,2.795723e-05,2.736476e-05,2.678455e-05,2.621636e-05,2.565993e-05,2.511505e-05,2.458147e-05,2.405897e-05,2.354732e-05,2.304631e-05,2.255572e-05,2.207534e-05,2.160497e-05,2.114440e-05,2.069343e-05,2.025187e-05,1.981954e-05,1.939623e-05,1.898178e-05,1.857599e-05,1.817870e-05,1.778973e-05,1.740890e-05,1.703607e-05,1.667105e-05,1.631370e-05,1.596385e-05,1.562135e-05,1.528606e-05,1.495781e-05,1.463648e-05,1.432192e-05,1.401398e-05,1.371254e-05,1.341746e-05,1.312861e-05,1.284585e-05,1.256907e-05,1.229815e-05,1.203295e-05,1.177337e-05,1.151928e-05,1.127058e-05,1.102715e-05,1.078888e-05,1.055566e-05,1.032740e-05,1.010399e-05,9.885321e-06,9.671304e-06,9.461839e-06,9.256832e-06,9.056190e-06,8.859823e-06,8.667641e-06,8.479556e-06,8.295485e-06,8.115342e-06,7.939045e-06,7.766515e-06,7.597673e-06,7.432441e-06,7.270744e-06,7.112508e-06,6.957660e-06,6.806129e-06,6.657846e-06,6.512742e-06,6.370751e-06,6.231807e-06,6.095847e-06,5.962806e-06,5.832625e-06,5.705242e-06,5.580599e-06,5.458638e-06,5.339302e-06,5.222536e-06,5.108285e-06,4.996497e-06,4.887120e-06,4.780101e-06,4.675392e-06,4.572944e-06,4.472708e-06,4.374638e-06,4.278687e-06,4.184811e-06,4.092966e-06,4.003109e-06,3.915197e-06,3.829188e-06,3.745043e-06,3.662722e-06,3.582186e-06,3.503397e-06,3.426317e-06,3.350911e-06,3.277141e-06,3.204975e-06,3.134377e-06,3.065313e-06,2.997752e-06,2.931660e-06,2.867007e-06,2.803761e-06,2.741893e-06,2.681372e-06,2.622171e-06,2.564260e-06,2.507613e-06,2.452201e-06,2.397999e-06,2.344980e-06,2.293119e-06,2.242391e-06,2.192772e-06,2.144237e-06,2.096764e-06,2.050330e-06,2.004912e-06,1.960488e-06,1.917037e-06,1.874538e-06,1.832970e-06,1.792313e-06,1.752548e-06,1.713656e-06,1.675616e-06,1.638412e-06,1.602024e-06,1.566436e-06,1.531629e-06,1.497588e-06,1.464294e-06,1.431733e-06,1.399888e-06,1.368744e-06,1.338286e-06,1.308498e-06,1.279366e-06,1.250875e-06,1.223013e-06,1.195765e-06,1.169118e-06,1.143058e-06,1.117574e-06,1.092651e-06,1.068279e-06,1.044446e-06,1.021138e-06,9.983459e-07,9.760572e-07,9.542614e-07,9.329475e-07,9.121050e-07,8.917237e-07,8.717935e-07,8.523045e-07,8.332471e-07,8.146118e-07,7.963894e-07,7.785708e-07,7.611472e-07,7.441100e-07,7.274507e-07,7.111609e-07,6.952327e-07,6.796580e-07,6.644291e-07,6.495384e-07,6.349785e-07,6.207421e-07,6.068221e-07,5.932116e-07,5.799038e-07,5.668919e-07,5.541695e-07,5.417303e-07,5.295679e-07,5.176763e-07,5.060495e-07,4.946817e-07,4.835672e-07,4.727004e-07,4.620758e-07,4.516881e-07,4.415321e-07,4.316026e-07,4.218946e-07,4.124034e-07,4.031239e-07,3.940517e-07,3.851820e-07,3.765105e-07,3.680327e-07,3.597444e-07,3.516414e-07,3.437195e-07,3.359747e-07,3.284032e-07,3.210011e-07,3.137646e-07,3.066901e-07,2.997740e-07,2.930127e-07,2.864028e-07,2.799410e-07,2.736240e-07,2.674485e-07,2.614115e-07,2.555098e-07,2.497405e-07,2.441005e-07,2.385871e-07,2.331974e-07,2.279286e-07,2.227781e-07,2.177432e-07,2.128214e-07,2.080101e-07,2.033069e-07,1.987094e-07,1.942152e-07,1.898221e-07,1.855276e-07,1.813298e-07,1.772263e-07,1.732152e-07,1.692943e-07,1.654616e-07,1.617152e-07,1.580531e-07,1.544735e-07,1.509745e-07,1.475542e-07,1.442111e-07,1.409432e-07,1.377490e-07,1.346268e-07,1.315750e-07,1.285919e-07,1.256762e-07,1.228262e-07,1.200405e-07,1.173176e-07,1.146562e-07,1.120548e-07,1.095122e-07,1.070270e-07,1.045978e-07,1.022236e-07,9.990295e-08,9.763474e-08,9.541779e-08,9.325093e-08,9.113304e-08,8.906303e-08,8.703982e-08,8.506236e-08,8.312962e-08,8.124059e-08,7.939430e-08,7.758978e-08,7.582610e-08,7.410233e-08,7.241757e-08,7.077096e-08,6.916164e-08,6.758875e-08,6.605149e-08,6.454905e-08,6.308064e-08,6.164551e-08,6.024290e-08,5.887207e-08,5.753232e-08,5.622294e-08,5.494325e-08,5.369258e-08,5.247027e-08,5.127568e-08,5.010820e-08,4.896720e-08,4.785209e-08,4.676229e-08,4.569722e-08,4.465633e-08,4.363906e-08,4.264490e-08,4.167331e-08,4.072378e-08,3.979582e-08,3.888894e-08,3.800266e-08,3.713652e-08,3.629006e-08,3.546284e-08,3.465442e-08,3.386437e-08,3.309229e-08,3.233776e-08,3.160039e-08,3.087978e-08,3.017557e-08,2.948737e-08,2.881482e-08,2.815758e-08,2.751529e-08,2.688762e-08,2.627423e-08}, {3.542773e+01,3.018104e+01,2.573595e+01,2.196559e+01,1.876395e+01,1.604227e+01,1.372619e+01,1.175328e+01,1.007108e+01,8.635439e+00,7.409137e+00,6.360780e+00,5.463839e+00,4.695870e+00,4.037868e+00,3.473715e+00,2.989728e+00,2.574278e+00,2.217474e+00,1.910889e+00,1.647341e+00,1.420700e+00,1.225731e+00,1.057958e+00,9.135519e-01,7.892330e-01,6.821909e-01,5.900149e-01,5.106363e-01,4.422780e-01,3.834131e-01,3.327281e-01,2.890933e-01,2.515357e-01,2.192175e-01,1.914166e-01,1.675107e-01,1.469628e-01,1.293098e-01,1.141522e-01,1.011448e-01,8.998975e-02,8.042990e-02,7.224306e-02,6.523735e-02,5.924702e-02,5.412891e-02,4.975940e-02,4.603170e-02,4.285364e-02,4.014566e-02,3.783911e-02,3.587478e-02,3.420164e-02,3.277573e-02,3.155919e-02,3.051947e-02,2.962860e-02,2.886257e-02,2.820081e-02,2.762569e-02,2.712216e-02,2.667738e-02,2.628044e-02,2.592205e-02,2.559437e-02,2.529079e-02,2.500573e-02,2.473456e-02,2.447340e-02,2.421905e-02,2.396891e-02,2.372084e-02,2.347314e-02,2.322445e-02,2.297373e-02,2.272020e-02,2.246329e-02,2.220261e-02,2.193793e-02,2.166914e-02,2.139624e-02,2.111931e-02,2.083852e-02,2.055407e-02,2.026620e-02,1.997522e-02,1.968143e-02,1.938515e-02,1.908673e-02,1.878652e-02,1.848486e-02,1.818210e-02,1.787857e-02,1.757462e-02,1.727057e-02,1.696672e-02,1.666339e-02,1.636087e-02,1.605942e-02,1.575931e-02,1.546078e-02,1.516408e-02,1.486942e-02,1.457701e-02,1.428703e-02,1.399967e-02,1.371508e-02,1.343343e-02,1.315484e-02,1.287945e-02,1.260737e-02,1.233871e-02,1.207356e-02,1.181199e-02,1.155410e-02,1.129993e-02,1.104955e-02,1.080300e-02,1.056032e-02,1.032155e-02,1.008670e-02,9.855807e-03,9.628870e-03,9.405898e-03,9.186894e-03,8.971853e-03,8.760767e-03,8.553622e-03,8.350402e-03,8.151085e-03,7.955647e-03,7.764062e-03,7.576297e-03,7.392320e-03,7.212095e-03,7.035584e-03,6.862747e-03,6.693543e-03,6.527926e-03,6.365853e-03,6.207277e-03,6.052150e-03,5.900424e-03,5.752048e-03,5.606973e-03,5.465148e-03,5.326521e-03,5.191040e-03,5.058653e-03,4.929307e-03,4.802950e-03,4.679528e-03,4.558990e-03,4.441282e-03,4.326352e-03,4.214148e-03,4.104617e-03,3.997708e-03,3.893368e-03,3.791548e-03,3.692196e-03,3.595262e-03,3.500697e-03,3.408451e-03,3.318475e-03,3.230723e-03,3.145145e-03,3.061696e-03,2.980329e-03,2.900998e-03,2.823659e-03,2.748268e-03,2.674780e-03,2.603154e-03,2.533346e-03,2.465316e-03,2.399022e-03,2.334425e-03,2.271485e-03,2.210163e-03,2.150422e-03,2.092224e-03,2.035534e-03,1.980314e-03,1.926529e-03,1.874147e-03,1.823131e-03,1.773450e-03,1.725072e-03,1.677963e-03,1.632093e-03,1.587433e-03,1.543951e-03,1.501618e-03,1.460407e-03,1.420289e-03,1.381237e-03,1.343225e-03,1.306225e-03,1.270213e-03,1.235163e-03,1.201052e-03,1.167854e-03,1.135548e-03,1.104110e-03,1.073518e-03,1.043751e-03,1.014786e-03,9.866042e-04,9.591842e-04,9.325067e-04,9.065524e-04,8.813024e-04,8.567384e-04,8.328425e-04,8.095972e-04,7.869855e-04,7.649908e-04,7.435967e-04,7.227875e-04,7.025478e-04,6.828625e-04,6.637169e-04,6.450967e-04,6.269880e-04,6.093771e-04,5.922509e-04,5.755963e-04,5.594008e-04,5.436520e-04,5.283381e-04,5.134473e-04,4.989684e-04,4.848902e-04,4.712019e-04,4.578930e-04,4.449533e-04,4.323728e-04,4.201418e-04,4.082509e-04,3.966907e-04,3.854524e-04,3.745271e-04,3.639065e-04,3.535821e-04,3.435459e-04,3.337900e-04,3.243069e-04,3.150889e-04,3.061290e-04,2.974199e-04,2.889549e-04,2.807272e-04,2.727303e-04,2.649579e-04,2.574038e-04,2.500620e-04,2.429267e-04,2.359921e-04,2.292527e-04,2.227031e-04,2.163380e-04,2.101525e-04,2.041414e-04,1.983000e-04,1.926236e-04,1.871075e-04,1.817474e-04,1.765388e-04,1.714777e-04,1.665598e-04,1.617812e-04,1.571381e-04,1.526265e-04,1.482430e-04,1.439838e-04,1.398455e-04,1.358248e-04,1.319183e-04,1.281229e-04,1.244354e-04,1.208529e-04,1.173723e-04,1.139908e-04,1.107057e-04,1.075142e-04,1.044137e-04,1.014017e-04,9.847560e-05,9.563304e-05,9.287167e-05,9.018920e-05,8.758339e-05,8.505210e-05,8.259322e-05,8.020470e-05,7.788455e-05,7.563085e-05,7.344171e-05,7.131532e-05,6.924988e-05,6.724369e-05,6.529505e-05,6.340234e-05,6.156397e-05,5.977841e-05,5.804414e-05,5.635972e-05,5.472373e-05,5.313480e-05,5.159158e-05,5.009277e-05,4.863712e-05,4.722339e-05,4.585039e-05,4.451695e-05,4.322196e-05,4.196431e-05,4.074295e-05,3.955682e-05,3.840494e-05,3.728632e-05,3.620000e-05,3.514507e-05,3.412063e-05,3.312581e-05,3.215976e-05,3.122165e-05,3.031069e-05,2.942609e-05,2.856711e-05,2.773300e-05,2.692306e-05,2.613659e-05,2.537292e-05,2.463139e-05,2.391137e-05,2.321224e-05,2.253339e-05,2.187425e-05,2.123425e-05,2.061284e-05,2.000948e-05,1.942365e-05,1.885485e-05,1.830259e-05,1.776639e-05,1.724579e-05,1.674034e-05,1.624960e-05,1.577314e-05,1.531056e-05,1.486145e-05,1.442543e-05,1.400212e-05,1.359114e-05,1.319215e-05,1.280479e-05,1.242873e-05,1.206365e-05,1.170922e-05,1.136514e-05,1.103110e-05,1.070682e-05,1.039201e-05,1.008641e-05,9.789728e-06,9.501724e-06,9.222142e-06,8.950735e-06,8.687269e-06,8.431511e-06,8.183238e-06,7.942233e-06,7.708285e-06,7.481187e-06,7.260742e-06,7.046755e-06,6.839039e-06,6.637411e-06,6.441695e-06,6.251717e-06,6.067311e-06,5.888315e-06,5.714570e-06,5.545925e-06,5.382230e-06,5.223340e-06,5.069117e-06,4.919423e-06,4.774127e-06,4.633100e-06,4.496217e-06,4.363358e-06,4.234404e-06,4.109243e-06,3.987763e-06,3.869856e-06,3.755418e-06,3.644348e-06,3.536547e-06,3.431919e-06,3.330372e-06,3.231815e-06,3.136162e-06,3.043326e-06,2.953225e-06,2.865780e-06,2.780912e-06,2.698546e-06,2.618609e-06,2.541029e-06,2.465737e-06,2.392667e-06,2.321752e-06,2.252930e-06,2.186139e-06,2.121320e-06,2.058415e-06,1.997367e-06,1.938122e-06,1.880628e-06,1.824831e-06,1.770684e-06,1.718137e-06,1.667143e-06,1.617656e-06,1.569633e-06,1.523029e-06,1.477804e-06,1.433917e-06,1.391328e-06,1.349999e-06,1.309894e-06,1.270975e-06,1.233208e-06,1.196560e-06,1.160997e-06,1.126486e-06,1.092998e-06,1.060502e-06,1.028969e-06,9.983703e-07,9.686782e-07,9.398662e-07,9.119082e-07,8.847791e-07,8.584543e-07,8.329102e-07,8.081237e-07,7.840725e-07,7.607347e-07,7.380894e-07,7.161160e-07,6.947948e-07,6.741064e-07,6.540321e-07,6.345538e-07,6.156538e-07,5.973150e-07,5.795210e-07,5.622554e-07,5.455027e-07,5.292478e-07,5.134758e-07,4.981725e-07,4.833240e-07,4.689169e-07,4.549380e-07,4.413747e-07,4.282147e-07,4.154460e-07,4.030571e-07,3.910366e-07,3.793737e-07,3.680578e-07,3.570785e-07,3.464259e-07,3.360903e-07,3.260623e-07,3.163328e-07,3.068929e-07,2.977340e-07,2.888478e-07,2.802262e-07,2.718614e-07,2.637456e-07,2.558716e-07,2.482321e-07,2.408203e-07,2.336292e-07,2.266524e-07,2.198835e-07,2.133163e-07,2.069448e-07,2.007633e-07,1.947660e-07,1.889475e-07,1.833025e-07,1.778257e-07,1.725123e-07,1.673574e-07,1.623562e-07,1.575041e-07,1.527968e-07,1.482299e-07,1.437993e-07,1.395008e-07,1.353307e-07,1.312849e-07,1.273599e-07,1.235520e-07,1.198578e-07,1.162738e-07,1.127969e-07,1.094237e-07,1.061513e-07,1.029765e-07,9.989659e-08,9.690862e-08,9.400988e-08,9.119772e-08,8.846955e-08,8.582288e-08,8.325526e-08,8.076436e-08,7.834787e-08,7.600358e-08,7.372933e-08,7.152305e-08,6.938270e-08,6.730631e-08,6.529198e-08,6.333786e-08,6.144215e-08,5.960311e-08,5.781904e-08,5.608831e-08,5.440932e-08,5.278054e-08,5.120045e-08,4.966762e-08,4.818062e-08,4.673809e-08,4.533871e-08,4.398118e-08,4.266425e-08,4.138672e-08,4.014740e-08,3.894515e-08,3.777887e-08,3.664749e-08,3.554995e-08,3.448525e-08,3.345241e-08,3.245048e-08,3.147853e-08,3.053566e-08,2.962102e-08,2.873374e-08,2.787302e-08,2.703807e-08,2.622810e-08,2.544239e-08,2.468019e-08,2.394081e-08,2.322356e-08,2.252778e-08,2.185284e-08,2.119811e-08,2.056297e-08,1.994686e-08,1.934920e-08,1.876943e-08,1.820702e-08,1.766145e-08,1.713223e-08,1.661885e-08,1.612085e-08,1.563776e-08,1.516914e-08,1.471456e-08,1.427360e-08,1.384584e-08,1.343090e-08,1.302839e-08,1.263793e-08,1.225917e-08,1.189176e-08,1.153536e-08,1.118963e-08,1.085426e-08,1.052894e-08,1.021337e-08,9.907249e-09,9.610304e-09,9.322256e-09,9.042839e-09,8.771795e-09,8.508873e-09,8.253830e-09,8.006430e-09,7.766444e-09,7.533650e-09,7.307832e-09,7.088782e-09,6.876297e-09,6.670180e-09,6.470241e-09,6.276294e-09,6.088160e-09,5.905664e-09,5.728639e-09,5.556920e-09,5.390348e-09,5.228768e-09,5.072032e-09,4.919994e-09,4.772513e-09,4.629454e-09,4.490682e-09,4.356070e-09,4.225494e-09,4.098832e-09,3.975966e-09,3.856784e-09,3.741175e-09,3.629032e-09,3.520250e-09,3.414729e-09,3.312372e-09,3.213083e-09,3.116771e-09,3.023347e-09,2.932723e-09,2.844816e-09,2.759544e-09,2.676829e-09,2.596594e-09,2.518764e-09,2.443267e-09,2.370034e-09,2.298996e-09,2.230088e-09,2.163246e-09,2.098408e-09,2.035514e-09,1.974506e-09,1.915326e-09,1.857921e-09,1.802237e-09,1.748222e-09,1.695827e-09,1.645002e-09,1.595702e-09,1.547879e-09,1.501490e-09,1.456492e-09,1.412843e-09,1.370502e-09,1.329431e-09,1.289591e-09,1.250946e-09,1.213459e-09,1.177096e-09,1.141823e-09,1.107607e-09,1.074418e-09,1.042223e-09,1.010993e-09,9.807001e-10,9.513149e-10,9.228107e-10,8.951609e-10,8.683400e-10,8.423231e-10,8.170861e-10,7.926056e-10,7.688590e-10,7.458242e-10,7.234799e-10,7.018054e-10,6.807806e-10,6.603860e-10,6.406028e-10,6.214125e-10,6.027975e-10,5.847404e-10,5.672245e-10,5.502336e-10,5.337521e-10,5.177644e-10,5.022560e-10,4.872124e-10,4.726197e-10,4.584643e-10,4.447332e-10,4.314135e-10,4.184931e-10}, {7.198461e+01,5.892684e+01,4.829424e+01,3.962376e+01,3.254352e+01,2.675428e+01,2.201481e+01,1.813027e+01,1.494302e+01,1.232530e+01,1.017335e+01,8.402841e+00,6.945053e+00,5.743949e+00,4.753754e+00,3.937025e+00,3.263094e+00,2.706813e+00,2.247534e+00,1.868288e+00,1.555109e+00,1.296498e+00,1.082975e+00,9.067172e-01,7.612677e-01,6.412899e-01,5.423721e-01,4.608647e-01,3.937472e-01,3.385188e-01,2.931081e-01,2.557996e-01,2.251717e-01,2.000467e-01,1.794489e-01,1.625702e-01,1.487416e-01,1.374092e-01,1.281152e-01,1.204810e-01,1.141941e-01,1.089969e-01,1.046772e-01,1.010607e-01,9.800427e-02,9.539089e-02,9.312507e-02,9.112914e-02,8.934023e-02,8.770766e-02,8.619082e-02,8.475742e-02,8.338198e-02,8.204462e-02,8.073006e-02,7.942672e-02,7.812608e-02,7.682207e-02,7.551057e-02,7.418906e-02,7.285625e-02,7.151180e-02,7.015616e-02,6.879031e-02,6.741569e-02,6.603401e-02,6.464718e-02,6.325724e-02,6.186630e-02,6.047648e-02,5.908984e-02,5.770843e-02,5.633418e-02,5.496894e-02,5.361446e-02,5.227235e-02,5.094413e-02,4.963117e-02,4.833474e-02,4.705597e-02,4.579588e-02,4.455538e-02,4.333528e-02,4.213625e-02,4.095891e-02,3.980374e-02,3.867118e-02,3.756153e-02,3.647507e-02,3.541198e-02,3.437238e-02,3.335632e-02,3.236381e-02,3.139481e-02,3.044921e-02,2.952688e-02,2.862765e-02,2.775131e-02,2.689761e-02,2.606629e-02,2.525707e-02,2.446962e-02,2.370361e-02,2.295870e-02,2.223452e-02,2.153070e-02,2.084685e-02,2.018259e-02,1.953750e-02,1.891119e-02,1.830326e-02,1.771328e-02,1.714085e-02,1.658556e-02,1.604700e-02,1.552475e-02,1.501842e-02,1.452760e-02,1.405189e-02,1.359089e-02,1.314422e-02,1.271149e-02,1.229233e-02,1.188635e-02,1.149319e-02,1.111250e-02,1.074392e-02,1.038710e-02,1.004170e-02,9.707387e-03,9.383841e-03,9.070741e-03,8.767777e-03,8.474644e-03,8.191046e-03,7.916693e-03,7.651305e-03,7.394605e-03,7.146326e-03,6.906208e-03,6.673995e-03,6.449442e-03,6.232307e-03,6.022358e-03,5.819366e-03,5.623111e-03,5.433378e-03,5.249959e-03,5.072651e-03,4.901259e-03,4.735590e-03,4.575460e-03,4.420690e-03,4.271105e-03,4.126537e-03,3.986821e-03,3.851798e-03,3.721316e-03,3.595224e-03,3.473378e-03,3.355638e-03,3.241869e-03,3.131939e-03,3.025720e-03,2.923090e-03,2.823929e-03,2.728122e-03,2.635557e-03,2.546126e-03,2.459724e-03,2.376249e-03,2.295604e-03,2.217694e-03,2.142427e-03,2.069714e-03,1.999469e-03,1.931609e-03,1.866054e-03,1.802727e-03,1.741551e-03,1.682455e-03,1.625368e-03,1.570222e-03,1.516952e-03,1.465493e-03,1.415786e-03,1.367769e-03,1.321387e-03,1.276582e-03,1.233303e-03,1.191497e-03,1.151114e-03,1.112106e-03,1.074426e-03,1.038029e-03,1.002871e-03,9.689094e-04,9.361045e-04,9.044165e-04,8.738072e-04,8.442400e-04,8.156794e-04,7.880910e-04,7.614417e-04,7.356995e-04,7.108333e-04,6.868134e-04,6.636109e-04,6.411978e-04,6.195473e-04,5.986332e-04,5.784306e-04,5.589149e-04,5.400629e-04,5.218519e-04,5.042599e-04,4.872659e-04,4.708493e-04,4.549906e-04,4.396706e-04,4.248709e-04,4.105738e-04,3.967622e-04,3.834194e-04,3.705294e-04,3.580767e-04,3.460465e-04,3.344244e-04,3.231963e-04,3.123488e-04,3.018690e-04,2.917443e-04,2.819625e-04,2.725120e-04,2.633815e-04,2.545600e-04,2.460371e-04,2.378025e-04,2.298463e-04,2.221592e-04,2.147319e-04,2.075556e-04,2.006217e-04,1.939220e-04,1.874485e-04,1.811934e-04,1.751494e-04,1.693092e-04,1.636660e-04,1.582130e-04,1.529437e-04,1.478519e-04,1.429316e-04,1.381769e-04,1.335822e-04,1.291420e-04,1.248512e-04,1.207046e-04,1.166973e-04,1.128246e-04,1.090820e-04,1.054650e-04,1.019694e-04,9.859099e-05,9.532587e-05,9.217020e-05,8.912024e-05,8.617243e-05,8.332331e-05,8.056954e-05,7.790788e-05,7.533522e-05,7.284856e-05,7.044498e-05,6.812167e-05,6.587593e-05,6.370514e-05,6.160676e-05,5.957835e-05,5.761755e-05,5.572208e-05,5.388974e-05,5.211839e-05,5.040599e-05,4.875054e-05,4.715014e-05,4.560293e-05,4.410711e-05,4.266097e-05,4.126282e-05,3.991107e-05,3.860414e-05,3.734054e-05,3.611881e-05,3.493754e-05,3.379539e-05,3.269103e-05,3.162320e-05,3.059068e-05,2.959228e-05,2.862687e-05,2.769333e-05,2.679061e-05,2.591768e-05,2.507353e-05,2.425721e-05,2.346778e-05,2.270436e-05,2.196606e-05,2.125207e-05,2.056156e-05,1.989375e-05,1.924789e-05,1.862324e-05,1.801911e-05,1.743480e-05,1.686966e-05,1.632306e-05,1.579437e-05,1.528300e-05,1.478838e-05,1.430995e-05,1.384718e-05,1.339955e-05,1.296654e-05,1.254769e-05,1.214252e-05,1.175058e-05,1.137144e-05,1.100466e-05,1.064984e-05,1.030659e-05,9.974522e-06,9.653269e-06,9.342474e-06,9.041794e-06,8.750894e-06,8.469452e-06,8.197157e-06,7.933709e-06,7.678816e-06,7.432197e-06,7.193580e-06,6.962702e-06,6.739310e-06,6.523158e-06,6.314008e-06,6.111630e-06,5.915804e-06,5.726314e-06,5.542952e-06,5.365519e-06,5.193820e-06,5.027669e-06,4.866882e-06,4.711286e-06,4.560711e-06,4.414993e-06,4.273974e-06,4.137500e-06,4.005423e-06,3.877600e-06,3.753892e-06,3.634166e-06,3.518291e-06,3.406144e-06,3.297601e-06,3.192547e-06,3.090868e-06,2.992455e-06,2.897201e-06,2.805003e-06,2.715764e-06,2.629386e-06,2.545778e-06,2.464849e-06,2.386513e-06,2.310686e-06,2.237287e-06,2.166236e-06,2.097459e-06,2.030882e-06,1.966433e-06,1.904045e-06,1.843650e-06,1.785185e-06,1.728586e-06,1.673795e-06,1.620752e-06,1.569401e-06,1.519688e-06,1.471561e-06,1.424967e-06,1.379859e-06,1.336187e-06,1.293906e-06,1.252972e-06,1.213340e-06,1.174970e-06,1.137820e-06,1.101852e-06,1.067028e-06,1.033310e-06,1.000664e-06,9.690555e-07,9.384507e-07,9.088177e-07,8.801254e-07,8.523438e-07,8.254437e-07,7.993970e-07,7.741763e-07,7.497553e-07,7.261085e-07,7.032111e-07,6.810391e-07,6.595696e-07,6.387800e-07,6.186486e-07,5.991546e-07,5.802775e-07,5.619978e-07,5.442963e-07,5.271548e-07,5.105553e-07,4.944806e-07,4.789141e-07,4.638395e-07,4.492412e-07,4.351041e-07,4.214135e-07,4.081553e-07,3.953157e-07,3.828813e-07,3.708395e-07,3.591776e-07,3.478837e-07,3.369461e-07,3.263534e-07,3.160947e-07,3.061595e-07,2.965375e-07,2.872188e-07,2.781938e-07,2.694531e-07,2.609878e-07,2.527892e-07,2.448487e-07,2.371584e-07,2.297101e-07,2.224964e-07,2.155097e-07,2.087429e-07,2.021890e-07,1.958414e-07,1.896934e-07,1.837389e-07,1.779716e-07,1.723858e-07,1.669755e-07,1.617354e-07,1.566600e-07,1.517441e-07,1.469828e-07,1.423711e-07,1.379043e-07,1.335779e-07,1.293874e-07,1.253285e-07,1.213971e-07,1.175892e-07,1.139009e-07,1.103285e-07,1.068682e-07,1.035165e-07,1.002701e-07,9.712554e-08,9.407973e-08,9.112951e-08,8.827188e-08,8.550393e-08,8.282284e-08,8.022588e-08,7.771040e-08,7.527384e-08,7.291372e-08,7.062763e-08,6.841326e-08,6.626834e-08,6.419069e-08,6.217820e-08,6.022883e-08,5.834058e-08,5.651155e-08,5.473987e-08,5.302374e-08,5.136141e-08,4.975120e-08,4.819148e-08,4.668064e-08,4.521718e-08,4.379958e-08,4.242642e-08,4.109631e-08,3.980788e-08,3.855984e-08,3.735091e-08,3.617988e-08,3.504554e-08,3.394675e-08,3.288240e-08,3.185141e-08,3.085272e-08,2.988533e-08,2.894826e-08,2.804055e-08,2.716128e-08,2.630957e-08,2.548454e-08,2.468537e-08,2.391124e-08,2.316136e-08,2.243498e-08,2.173137e-08,2.104980e-08,2.038959e-08,1.975006e-08,1.913058e-08,1.853050e-08,1.794923e-08,1.738617e-08,1.684076e-08,1.631244e-08,1.580067e-08,1.530494e-08,1.482474e-08,1.435960e-08,1.390902e-08,1.347257e-08,1.304980e-08,1.264027e-08,1.224358e-08,1.185932e-08,1.148711e-08,1.112656e-08,1.077731e-08,1.043901e-08,1.011131e-08,9.793881e-09,9.486403e-09,9.188564e-09,8.900061e-09,8.620602e-09,8.349904e-09,8.087693e-09,7.833702e-09,7.587674e-09,7.349360e-09,7.118518e-09,6.894915e-09,6.678323e-09,6.468522e-09,6.265301e-09,6.068453e-09,5.877779e-09,5.693085e-09,5.514183e-09,5.340893e-09,5.173038e-09,5.010449e-09,4.852960e-09,4.700412e-09,4.552650e-09,4.409524e-09,4.270888e-09,4.136603e-09,4.006531e-09,3.880541e-09,3.758504e-09,3.640298e-09,3.525802e-09,3.414899e-09,3.307478e-09,3.203429e-09,3.102646e-09,3.005026e-09,2.910472e-09,2.818887e-09,2.730177e-09,2.644253e-09,2.561027e-09,2.480415e-09,2.402335e-09,2.326707e-09,2.253455e-09,2.182503e-09,2.113781e-09,2.047218e-09,1.982746e-09,1.920299e-09,1.859815e-09,1.801232e-09,1.744490e-09,1.689531e-09,1.636300e-09,1.584741e-09,1.534804e-09,1.486436e-09,1.439589e-09,1.394215e-09,1.350268e-09,1.307703e-09,1.266476e-09,1.226546e-09,1.187872e-09,1.150414e-09,1.114135e-09,1.078997e-09,1.044964e-09,1.012002e-09,9.800778e-10,9.491579e-10,9.192110e-10,8.902066e-10,8.621152e-10,8.349081e-10,8.085574e-10,7.830363e-10,7.583188e-10,7.343795e-10,7.111941e-10,6.887389e-10,6.669908e-10,6.459278e-10,6.255282e-10,6.057713e-10,5.866368e-10,5.681052e-10,5.501575e-10,5.327754e-10,5.159410e-10,4.996372e-10,4.838473e-10,4.685551e-10,4.537450e-10,4.394019e-10,4.255109e-10,4.120580e-10,3.990293e-10,3.864115e-10,3.741916e-10,3.623572e-10,3.508961e-10,3.397966e-10,3.290472e-10,3.186371e-10,3.085554e-10,2.987919e-10,2.893365e-10,2.801796e-10,2.713117e-10,2.627237e-10,2.544069e-10,2.463527e-10,2.385528e-10,2.309992e-10,2.236842e-10,2.166002e-10,2.097399e-10,2.030964e-10,1.966628e-10,1.904324e-10,1.843989e-10,1.785561e-10,1.728979e-10,1.674185e-10,1.621123e-10,1.569739e-10,1.519979e-10,1.471792e-10,1.425129e-10,1.379942e-10,1.336183e-10,1.293809e-10,1.252774e-10,1.213038e-10,1.174559e-10,1.137297e-10,1.101215e-10,1.066274e-10,1.032438e-10,9.996741e-11,9.679468e-11,9.372238e-11,9.074735e-11,8.786650e-11,8.507686e-11,8.237556e-11,7.975981e-11,7.722690e-11}, {1.275555e+02,1.003324e+02,7.902950e+01,6.233055e+01,4.921957e+01,3.891043e+01,3.079343e+01,2.439462e+01,1.934481e+01,1.535578e+01,1.220210e+01,9.707137e+00,7.732211e+00,6.168288e+00,4.929500e+00,3.948125e+00,3.170684e+00,2.554889e+00,2.067269e+00,1.681303e+00,1.375957e+00,1.134540e+00,9.437957e-01,7.931935e-01,6.743635e-01,5.806527e-01,5.067729e-01,4.485215e-01,4.025603e-01,3.662387e-01,3.374549e-01,3.145434e-01,2.961872e-01,2.813463e-01,2.692019e-01,2.591109e-01,2.505700e-01,2.431874e-01,2.366593e-01,2.307519e-01,2.252867e-01,2.201288e-01,2.151775e-01,2.103592e-01,2.056210e-01,2.009261e-01,1.962505e-01,1.915793e-01,1.869051e-01,1.822257e-01,1.775425e-01,1.728600e-01,1.681843e-01,1.635226e-01,1.588828e-01,1.542731e-01,1.497016e-01,1.451761e-01,1.407040e-01,1.362922e-01,1.319469e-01,1.276737e-01,1.234778e-01,1.193635e-01,1.153345e-01,1.113939e-01,1.075446e-01,1.037883e-01,1.001269e-01,9.656124e-02,9.309219e-02,8.972002e-02,8.644470e-02,8.326589e-02,8.018296e-02,7.719507e-02,7.430112e-02,7.149984e-02,6.878979e-02,6.616940e-02,6.363695e-02,6.119066e-02,5.882862e-02,5.654890e-02,5.434948e-02,5.222832e-02,5.018334e-02,4.821245e-02,4.631355e-02,4.448455e-02,4.272336e-02,4.102789e-02,3.939609e-02,3.782593e-02,3.631540e-02,3.486254e-02,3.346540e-02,3.212211e-02,3.083079e-02,2.958964e-02,2.839688e-02,2.725080e-02,2.614971e-02,2.509197e-02,2.407601e-02,2.310028e-02,2.216328e-02,2.126357e-02,2.039974e-02,1.957043e-02,1.877433e-02,1.801017e-02,1.727671e-02,1.657277e-02,1.589721e-02,1.524892e-02,1.462684e-02,1.402993e-02,1.345720e-02,1.290770e-02,1.238052e-02,1.187475e-02,1.138956e-02,1.092412e-02,1.047763e-02,1.004935e-02,9.638541e-03,9.244497e-03,8.866544e-03,8.504034e-03,8.156341e-03,7.822868e-03,7.503037e-03,7.196295e-03,6.902111e-03,6.619973e-03,6.349392e-03,6.089896e-03,5.841034e-03,5.602373e-03,5.373494e-03,5.153999e-03,4.943503e-03,4.741640e-03,4.548054e-03,4.362408e-03,4.184376e-03,4.013645e-03,3.849917e-03,3.692903e-03,3.542330e-03,3.397931e-03,3.259453e-03,3.126654e-03,2.999300e-03,2.877168e-03,2.760042e-03,2.647717e-03,2.539995e-03,2.436688e-03,2.337613e-03,2.242597e-03,2.151473e-03,2.064081e-03,1.980267e-03,1.899884e-03,1.822791e-03,1.748852e-03,1.677939e-03,1.609926e-03,1.544694e-03,1.482129e-03,1.422121e-03,1.364566e-03,1.309361e-03,1.256411e-03,1.205624e-03,1.156909e-03,1.110182e-03,1.065361e-03,1.022368e-03,9.811285e-04,9.415693e-04,9.036220e-04,8.672203e-04,8.323008e-04,7.988027e-04,7.666676e-04,7.358397e-04,7.062653e-04,6.778930e-04,6.506735e-04,6.245596e-04,5.995060e-04,5.754693e-04,5.524077e-04,5.302814e-04,5.090521e-04,4.886830e-04,4.691390e-04,4.503864e-04,4.323927e-04,4.151270e-04,3.985594e-04,3.826616e-04,3.674060e-04,3.527665e-04,3.387180e-04,3.252364e-04,3.122984e-04,2.998820e-04,2.879659e-04,2.765297e-04,2.655539e-04,2.550196e-04,2.449091e-04,2.352049e-04,2.258906e-04,2.169503e-04,2.083688e-04,2.001316e-04,1.922247e-04,1.846346e-04,1.773485e-04,1.703541e-04,1.636396e-04,1.571935e-04,1.510052e-04,1.450640e-04,1.393600e-04,1.338836e-04,1.286256e-04,1.235772e-04,1.187299e-04,1.140756e-04,1.096066e-04,1.053152e-04,1.011944e-04,9.723730e-05,9.343730e-05,8.978807e-05,8.628355e-05,8.291792e-05,7.968559e-05,7.658121e-05,7.359964e-05,7.073595e-05,6.798542e-05,6.534350e-05,6.280585e-05,6.036829e-05,5.802680e-05,5.577756e-05,5.361687e-05,5.154119e-05,4.954712e-05,4.763142e-05,4.579094e-05,4.402270e-05,4.232382e-05,4.069153e-05,3.912318e-05,3.761622e-05,3.616823e-05,3.477685e-05,3.343984e-05,3.215504e-05,3.092038e-05,2.973387e-05,2.859360e-05,2.749775e-05,2.644455e-05,2.543233e-05,2.445945e-05,2.352437e-05,2.262560e-05,2.176170e-05,2.093130e-05,2.013308e-05,1.936577e-05,1.862815e-05,1.791907e-05,1.723739e-05,1.658204e-05,1.595199e-05,1.534625e-05,1.476385e-05,1.420390e-05,1.366551e-05,1.314783e-05,1.265007e-05,1.217143e-05,1.171117e-05,1.126858e-05,1.084296e-05,1.043366e-05,1.004004e-05,9.661485e-06,9.297415e-06,8.947267e-06,8.610498e-06,8.286589e-06,7.975042e-06,7.675378e-06,7.387135e-06,7.109872e-06,6.843165e-06,6.586604e-06,6.339799e-06,6.102372e-06,5.873961e-06,5.654219e-06,5.442812e-06,5.239418e-06,5.043730e-06,4.855450e-06,4.674295e-06,4.499990e-06,4.332272e-06,4.170890e-06,4.015599e-06,3.866167e-06,3.722369e-06,3.583989e-06,3.450821e-06,3.322665e-06,3.199330e-06,3.080632e-06,2.966394e-06,2.856445e-06,2.750624e-06,2.648771e-06,2.550737e-06,2.456376e-06,2.365548e-06,2.278120e-06,2.193963e-06,2.112951e-06,2.034967e-06,1.959895e-06,1.887625e-06,1.818052e-06,1.751072e-06,1.686588e-06,1.624507e-06,1.564736e-06,1.507189e-06,1.451783e-06,1.398436e-06,1.347071e-06,1.297613e-06,1.249991e-06,1.204135e-06,1.159979e-06,1.117460e-06,1.076516e-06,1.037088e-06,9.991182e-07,9.625533e-07,9.273402e-07,8.934282e-07,8.607688e-07,8.293151e-07,7.990221e-07,7.698464e-07,7.417463e-07,7.146818e-07,6.886141e-07,6.635062e-07,6.393222e-07,6.160279e-07,5.935902e-07,5.719770e-07,5.511580e-07,5.311034e-07,5.117850e-07,4.931754e-07,4.752483e-07,4.579785e-07,4.413415e-07,4.253140e-07,4.098734e-07,3.949979e-07,3.806667e-07,3.668597e-07,3.535574e-07,3.407413e-07,3.283934e-07,3.164964e-07,3.050338e-07,2.939894e-07,2.833479e-07,2.730944e-07,2.632147e-07,2.536950e-07,2.445221e-07,2.356831e-07,2.271660e-07,2.189587e-07,2.110501e-07,2.034290e-07,1.960849e-07,1.890077e-07,1.821877e-07,1.756153e-07,1.692815e-07,1.631776e-07,1.572952e-07,1.516261e-07,1.461626e-07,1.408971e-07,1.358225e-07,1.309317e-07,1.262180e-07,1.216750e-07,1.172964e-07,1.130763e-07,1.090089e-07,1.050885e-07,1.013099e-07,9.766788e-08,9.415747e-08,9.077388e-08,8.751250e-08,8.436888e-08,8.133874e-08,7.841796e-08,7.560257e-08,7.288873e-08,7.027277e-08,6.775112e-08,6.532037e-08,6.297722e-08,6.071849e-08,5.854113e-08,5.644218e-08,5.441880e-08,5.246826e-08,5.058791e-08,4.877523e-08,4.702775e-08,4.534313e-08,4.371909e-08,4.215343e-08,4.064405e-08,3.918891e-08,3.778606e-08,3.643360e-08,3.512972e-08,3.387266e-08,3.266073e-08,3.149231e-08,3.036583e-08,2.927976e-08,2.823267e-08,2.722313e-08,2.624981e-08,2.531138e-08,2.440660e-08,2.353426e-08,2.269318e-08,2.188225e-08,2.110037e-08,2.034650e-08,1.961964e-08,1.891881e-08,1.824308e-08,1.759154e-08,1.696333e-08,1.635760e-08,1.577355e-08,1.521040e-08,1.466741e-08,1.414383e-08,1.363899e-08,1.315221e-08,1.268283e-08,1.223023e-08,1.179382e-08,1.137301e-08,1.096725e-08,1.057598e-08,1.019870e-08,9.834899e-09,9.484097e-09,9.145829e-09,8.819644e-09,8.505110e-09,8.201810e-09,7.909342e-09,7.627317e-09,7.355362e-09,7.093116e-09,6.840233e-09,6.596376e-09,6.361224e-09,6.134464e-09,5.915796e-09,5.704931e-09,5.501591e-09,5.305505e-09,5.116415e-09,4.934071e-09,4.758230e-09,4.588662e-09,4.425142e-09,4.267453e-09,4.115388e-09,3.968746e-09,3.827332e-09,3.690960e-09,3.559451e-09,3.432629e-09,3.310329e-09,3.192389e-09,3.078653e-09,2.968970e-09,2.863197e-09,2.761194e-09,2.662825e-09,2.567963e-09,2.476481e-09,2.388259e-09,2.303180e-09,2.221133e-09,2.142009e-09,2.065704e-09,1.992118e-09,1.921153e-09,1.852717e-09,1.786718e-09,1.723071e-09,1.661691e-09,1.602497e-09,1.545412e-09,1.490360e-09,1.437269e-09,1.386069e-09,1.336692e-09,1.289074e-09,1.243152e-09,1.198866e-09,1.156157e-09,1.114969e-09,1.075248e-09,1.036941e-09,9.999986e-10,9.643718e-10,9.300138e-10,8.968794e-10,8.649249e-10,8.341084e-10,8.043893e-10,7.757285e-10,7.480884e-10,7.214326e-10,6.957261e-10,6.709350e-10,6.470267e-10,6.239698e-10,6.017341e-10,5.802902e-10,5.596099e-10,5.396662e-10,5.204327e-10,5.018841e-10,4.839961e-10,4.667452e-10,4.501086e-10,4.340646e-10,4.185920e-10,4.036704e-10,3.892803e-10,3.754026e-10,3.620193e-10,3.491127e-10,3.366658e-10,3.246622e-10,3.130862e-10,3.019225e-10,2.911565e-10,2.807740e-10,2.707613e-10,2.611054e-10,2.517934e-10,2.428132e-10,2.341529e-10,2.258011e-10,2.177469e-10,2.099797e-10,2.024892e-10,1.952656e-10,1.882994e-10,1.815814e-10,1.751029e-10,1.688551e-10,1.628301e-10,1.570197e-10,1.514165e-10,1.460129e-10,1.408019e-10,1.357767e-10,1.309306e-10,1.262572e-10,1.217504e-10,1.174043e-10,1.132131e-10,1.091713e-10,1.052737e-10,1.015150e-10,9.789028e-11,9.439483e-11,9.102403e-11,8.777343e-11,8.463874e-11,8.161585e-11,7.870077e-11,7.588965e-11,7.317880e-11,7.056465e-11,6.804374e-11,6.561276e-11,6.326850e-11,6.100787e-11,5.882790e-11,5.672570e-11,5.469851e-11,5.274366e-11,5.085856e-11,4.904074e-11,4.728779e-11,4.559740e-11,4.396734e-11,4.239546e-11,4.087969e-11,3.941803e-11,3.800855e-11,3.664939e-11,3.533875e-11,3.407491e-11,3.285619e-11,3.168099e-11,3.054776e-11,2.945500e-11,2.840126e-11,2.738516e-11,2.640535e-11,2.546054e-11,2.454948e-11,2.367097e-11,2.282384e-11,2.200698e-11,2.121931e-11,2.045978e-11,1.972739e-11,1.902117e-11,1.834019e-11,1.768355e-11,1.705038e-11,1.643985e-11,1.585113e-11,1.528347e-11,1.473609e-11,1.420829e-11,1.369936e-11,1.320863e-11,1.273544e-11,1.227918e-11,1.183923e-11,1.141502e-11,1.100599e-11,1.061158e-11,1.023128e-11,9.864592e-12,9.511019e-12,9.170097e-12,8.841374e-12,8.524413e-12,8.218796e-12,7.924115e-12,7.639982e-12,7.366019e-12,7.101862e-12,6.847161e-12,6.601578e-12,6.364788e-12,6.136476e-12,5.916339e-12,5.704085e-12,5.499432e-12,5.302108e-12,5.111852e-12,4.928411e-12,4.751540e-12,4.581005e-12,4.416580e-12,4.258046e-12,4.105192e-12,3.957815e-12,3.815720e-12}, {2.061350e+02,1.557917e+02,1.179388e+02,8.942076e+01,6.789713e+01,5.162654e+01,3.930977e+01,2.997488e+01,2.289294e+01,1.751596e+01,1.343109e+01,1.032664e+01,7.966868e+00,6.173166e+00,4.810008e+00,3.774418e+00,2.988065e+00,2.391304e+00,1.938684e+00,1.595554e+00,1.335488e+00,1.138330e+00,9.887114e-01,8.749217e-01,7.880438e-01,7.212983e-01,6.695399e-01,6.288731e-01,5.963575e-01,5.697823e-01,5.474934e-01,5.282609e-01,5.111772e-01,4.955790e-01,4.809882e-01,4.670653e-01,4.535750e-01,4.403593e-01,4.273170e-01,4.143886e-01,4.015439e-01,3.887740e-01,3.760838e-01,3.634878e-01,3.510059e-01,3.386610e-01,3.264771e-01,3.144777e-01,3.026852e-01,2.911202e-01,2.798010e-01,2.687436e-01,2.579614e-01,2.474656e-01,2.372648e-01,2.273658e-01,2.177730e-01,2.084891e-01,1.995152e-01,1.908506e-01,1.824937e-01,1.744415e-01,1.666898e-01,1.592339e-01,1.520681e-01,1.451862e-01,1.385815e-01,1.322468e-01,1.261748e-01,1.203576e-01,1.147876e-01,1.094566e-01,1.043567e-01,9.947996e-02,9.481828e-02,9.036379e-02,8.610868e-02,8.204528e-02,7.816604e-02,7.446359e-02,7.093075e-02,6.756049e-02,6.434602e-02,6.128072e-02,5.835819e-02,5.557226e-02,5.291694e-02,5.038646e-02,4.797526e-02,4.567801e-02,4.348956e-02,4.140496e-02,3.941946e-02,3.752853e-02,3.572779e-02,3.401305e-02,3.238033e-02,3.082578e-02,2.934574e-02,2.793670e-02,2.659531e-02,2.531838e-02,2.410284e-02,2.294577e-02,2.184440e-02,2.079607e-02,1.979823e-02,1.884847e-02,1.794448e-02,1.708407e-02,1.626514e-02,1.548570e-02,1.474384e-02,1.403776e-02,1.336572e-02,1.272609e-02,1.211729e-02,1.153784e-02,1.098632e-02,1.046138e-02,9.961726e-03,9.486144e-03,9.033466e-03,8.602582e-03,8.192438e-03,7.802030e-03,7.430401e-03,7.076643e-03,6.739891e-03,6.419321e-03,6.114150e-03,5.823633e-03,5.547060e-03,5.283757e-03,5.033083e-03,4.794425e-03,4.567205e-03,4.350867e-03,4.144888e-03,3.948766e-03,3.762025e-03,3.584213e-03,3.414898e-03,3.253671e-03,3.100141e-03,2.953938e-03,2.814709e-03,2.682117e-03,2.555843e-03,2.435583e-03,2.321048e-03,2.211961e-03,2.108063e-03,2.009102e-03,1.914842e-03,1.825058e-03,1.739534e-03,1.658066e-03,1.580459e-03,1.506530e-03,1.436101e-03,1.369005e-03,1.305083e-03,1.244182e-03,1.186158e-03,1.130875e-03,1.078200e-03,1.028010e-03,9.801858e-04,9.346146e-04,8.911892e-04,8.498072e-04,8.103715e-04,7.727894e-04,7.369727e-04,7.028375e-04,6.703039e-04,6.392960e-04,6.097412e-04,5.815707e-04,5.547187e-04,5.291229e-04,5.047238e-04,4.814647e-04,4.592917e-04,4.381534e-04,4.180009e-04,3.987878e-04,3.804696e-04,3.630041e-04,3.463512e-04,3.304725e-04,3.153316e-04,3.008938e-04,2.871260e-04,2.739967e-04,2.614759e-04,2.495350e-04,2.381469e-04,2.272855e-04,2.169263e-04,2.070457e-04,1.976212e-04,1.886316e-04,1.800565e-04,1.718766e-04,1.640733e-04,1.566292e-04,1.495274e-04,1.427521e-04,1.362879e-04,1.301204e-04,1.242359e-04,1.186211e-04,1.132635e-04,1.081512e-04,1.032728e-04,9.861747e-05,9.417482e-05,8.993504e-05,8.588871e-05,8.202691e-05,7.834109e-05,7.482313e-05,7.146528e-05,6.826014e-05,6.520069e-05,6.228020e-05,5.949228e-05,5.683082e-05,5.429002e-05,5.186432e-05,4.954843e-05,4.733733e-05,4.522620e-05,4.321046e-05,4.128575e-05,3.944788e-05,3.769290e-05,3.601701e-05,3.441660e-05,3.288822e-05,3.142859e-05,3.003457e-05,2.870317e-05,2.743154e-05,2.621696e-05,2.505685e-05,2.394871e-05,2.289019e-05,2.187905e-05,2.091312e-05,1.999037e-05,1.910883e-05,1.826665e-05,1.746203e-05,1.669329e-05,1.595879e-05,1.525701e-05,1.458645e-05,1.394572e-05,1.333346e-05,1.274840e-05,1.218931e-05,1.165503e-05,1.114444e-05,1.065647e-05,1.019011e-05,9.744399e-06,9.318400e-06,8.911233e-06,8.522056e-06,8.150063e-06,7.794488e-06,7.454595e-06,7.129686e-06,6.819090e-06,6.522171e-06,6.238317e-06,5.966948e-06,5.707508e-06,5.459466e-06,5.222315e-06,4.995572e-06,4.778773e-06,4.571479e-06,4.373267e-06,4.183735e-06,4.002498e-06,3.829189e-06,3.663458e-06,3.504969e-06,3.353402e-06,3.208452e-06,3.069826e-06,2.937246e-06,2.810445e-06,2.689168e-06,2.573172e-06,2.462224e-06,2.356103e-06,2.254596e-06,2.157501e-06,2.064624e-06,1.975779e-06,1.890790e-06,1.809488e-06,1.731711e-06,1.657305e-06,1.586122e-06,1.518022e-06,1.452868e-06,1.390534e-06,1.330895e-06,1.273834e-06,1.219238e-06,1.167000e-06,1.117017e-06,1.069191e-06,1.023428e-06,9.796377e-07,9.377348e-07,8.976372e-07,8.592663e-07,8.225471e-07,7.874079e-07,7.537801e-07,7.215982e-07,6.907995e-07,6.613240e-07,6.331144e-07,6.061159e-07,5.802760e-07,5.555448e-07,5.318741e-07,5.092182e-07,4.875332e-07,4.667772e-07,4.469101e-07,4.278935e-07,4.096908e-07,3.922668e-07,3.755880e-07,3.596224e-07,3.443391e-07,3.297088e-07,3.157035e-07,3.022962e-07,2.894613e-07,2.771741e-07,2.654110e-07,2.541497e-07,2.433685e-07,2.330469e-07,2.231651e-07,2.137043e-07,2.046465e-07,1.959742e-07,1.876712e-07,1.797215e-07,1.721099e-07,1.648222e-07,1.578443e-07,1.511630e-07,1.447657e-07,1.386403e-07,1.327750e-07,1.271589e-07,1.217812e-07,1.166317e-07,1.117009e-07,1.069792e-07,1.024579e-07,9.812826e-08,9.398225e-08,9.001200e-08,8.621004e-08,8.256918e-08,7.908258e-08,7.574367e-08,7.254616e-08,6.948405e-08,6.655156e-08,6.374320e-08,6.105368e-08,5.847796e-08,5.601120e-08,5.364877e-08,5.138625e-08,4.921939e-08,4.714413e-08,4.515659e-08,4.325304e-08,4.142992e-08,3.968383e-08,3.801149e-08,3.640978e-08,3.487571e-08,3.340641e-08,3.199913e-08,3.065126e-08,2.936028e-08,2.812377e-08,2.693943e-08,2.580506e-08,2.471854e-08,2.367784e-08,2.268103e-08,2.172626e-08,2.081173e-08,1.993577e-08,1.909672e-08,1.829304e-08,1.752323e-08,1.678586e-08,1.607956e-08,1.540301e-08,1.475497e-08,1.413422e-08,1.353961e-08,1.297005e-08,1.242447e-08,1.190187e-08,1.140127e-08,1.092174e-08,1.046240e-08,1.002239e-08,9.600910e-09,9.197163e-09,8.810409e-09,8.439929e-09,8.085038e-09,7.745080e-09,7.419424e-09,7.107469e-09,6.808637e-09,6.522376e-09,6.248156e-09,5.985469e-09,5.733831e-09,5.492776e-09,5.261858e-09,5.040651e-09,4.828745e-09,4.625750e-09,4.431291e-09,4.245007e-09,4.066556e-09,3.895607e-09,3.731844e-09,3.574967e-09,3.424684e-09,3.280718e-09,3.142805e-09,3.010688e-09,2.884125e-09,2.762881e-09,2.646734e-09,2.535468e-09,2.428879e-09,2.326770e-09,2.228952e-09,2.135245e-09,2.045477e-09,1.959481e-09,1.877099e-09,1.798180e-09,1.722577e-09,1.650152e-09,1.580770e-09,1.514304e-09,1.450631e-09,1.389634e-09,1.331201e-09,1.275223e-09,1.221598e-09,1.170226e-09,1.121014e-09,1.073869e-09,1.028706e-09,9.854411e-10,9.439944e-10,9.042896e-10,8.662536e-10,8.298162e-10,7.949102e-10,7.614714e-10,7.294380e-10,6.987511e-10,6.693540e-10,6.411926e-10,6.142149e-10,5.883713e-10,5.636140e-10,5.398974e-10,5.171779e-10,4.954135e-10,4.745641e-10,4.545912e-10,4.354581e-10,4.171294e-10,3.995714e-10,3.827516e-10,3.666390e-10,3.512040e-10,3.364181e-10,3.222539e-10,3.086855e-10,2.956876e-10,2.832364e-10,2.713089e-10,2.598831e-10,2.489379e-10,2.384530e-10,2.284093e-10,2.187880e-10,2.095715e-10,2.007428e-10,1.922855e-10,1.841841e-10,1.764235e-10,1.689895e-10,1.618683e-10,1.550468e-10,1.485124e-10,1.422531e-10,1.362571e-10,1.305136e-10,1.250118e-10,1.197416e-10,1.146933e-10,1.098575e-10,1.052253e-10,1.007881e-10,9.653780e-11,9.246646e-11,8.856657e-11,8.483092e-11,8.125260e-11,7.782500e-11,7.454177e-11,7.139684e-11,6.838440e-11,6.549887e-11,6.273491e-11,6.008740e-11,5.755146e-11,5.512237e-11,5.279565e-11,5.056698e-11,4.843225e-11,4.638750e-11,4.442893e-11,4.255293e-11,4.075602e-11,3.903486e-11,3.738627e-11,3.580720e-11,3.429471e-11,3.284601e-11,3.145840e-11,3.012932e-11,2.885630e-11,2.763698e-11,2.646909e-11,2.535048e-11,2.427906e-11,2.325285e-11,2.226994e-11,2.132851e-11,2.042682e-11,1.956317e-11,1.873599e-11,1.794371e-11,1.718489e-11,1.645810e-11,1.576199e-11,1.509528e-11,1.445672e-11,1.384513e-11,1.325936e-11,1.269834e-11,1.216101e-11,1.164638e-11,1.115349e-11,1.068143e-11,1.022931e-11,9.796293e-12,9.381576e-12,8.984385e-12,8.603980e-12,8.239654e-12,7.890728e-12,7.556553e-12,7.236505e-12,6.929988e-12,6.636433e-12,6.355290e-12,6.086036e-12,5.828170e-12,5.581211e-12,5.344698e-12,5.118190e-12,4.901264e-12,4.693516e-12,4.494558e-12,4.304019e-12,4.121544e-12,3.946791e-12,3.779434e-12,3.619162e-12,3.465674e-12,3.318684e-12,3.177917e-12,3.043110e-12,2.914012e-12,2.790381e-12,2.671986e-12,2.558605e-12,2.450027e-12,2.346048e-12,2.246474e-12,2.151119e-12,2.059805e-12,1.972360e-12,1.888620e-12,1.808430e-12,1.731638e-12,1.658101e-12,1.587682e-12,1.520248e-12,1.455673e-12,1.393836e-12,1.334621e-12,1.277918e-12,1.223619e-12,1.171624e-12,1.121834e-12,1.074156e-12,1.028501e-12,9.847825e-13,9.429194e-13,9.028328e-13,8.644473e-13,8.276910e-13,7.924949e-13,7.587927e-13,7.265212e-13,6.956199e-13,6.660305e-13,6.376976e-13,6.105678e-13,5.845902e-13,5.597159e-13,5.358982e-13,5.130922e-13,4.912550e-13,4.703456e-13,4.503246e-13,4.311543e-13,4.127987e-13,3.952232e-13,3.783946e-13,3.622814e-13,3.468532e-13,3.320808e-13,3.179365e-13,3.043935e-13,2.914265e-13,2.790109e-13,2.671233e-13,2.557413e-13,2.448435e-13,2.344092e-13,2.244188e-13,2.148535e-13,2.056952e-13,1.969266e-13,1.885311e-13,1.804930e-13,1.727970e-13,1.654285e-13,1.583738e-13,1.516193e-13,1.451525e-13,1.389610e-13,1.330331e-13,1.273577e-13,1.219240e-13,1.167217e-13,1.117410e-13,1.069725e-13,1.024072e-13,9.803634e-14,9.385173e-14,8.984544e-14,8.600988e-14,8.233778e-14,7.882220e-14,7.545647e-14}, {3.119747e+02,2.265176e+02,1.648029e+02,1.201295e+02,8.772630e+01,6.418314e+01,4.705372e+01,3.457738e+01,2.548317e+01,1.885108e+01,1.401358e+01,1.048530e+01,7.912632e+00,6.037601e+00,4.671746e+00,3.677261e+00,2.953322e+00,2.426140e+00,2.041721e+00,1.760578e+00,1.553862e+00,1.400532e+00,1.285278e+00,1.196994e+00,1.127655e+00,1.071495e+00,1.024400e+00,9.834581e-01,9.466333e-01,9.125239e-01,8.801837e-01,8.489928e-01,8.185617e-01,7.886617e-01,7.591751e-01,7.300580e-01,7.013144e-01,6.729774e-01,6.450964e-01,6.177278e-01,5.909290e-01,5.647544e-01,5.392532e-01,5.144674e-01,4.904319e-01,4.671739e-01,4.447133e-01,4.230632e-01,4.022303e-01,3.822157e-01,3.630156e-01,3.446218e-01,3.270222e-01,3.102020e-01,2.941434e-01,2.788267e-01,2.642306e-01,2.503323e-01,2.371084e-01,2.245347e-01,2.125865e-01,2.012393e-01,1.904683e-01,1.802491e-01,1.705575e-01,1.613700e-01,1.526635e-01,1.444153e-01,1.366036e-01,1.292073e-01,1.222059e-01,1.155798e-01,1.093100e-01,1.033783e-01,9.776746e-02,9.246072e-02,8.744219e-02,8.269670e-02,7.820980e-02,7.396769e-02,6.995727e-02,6.616608e-02,6.258229e-02,5.919464e-02,5.599248e-02,5.296569e-02,5.010470e-02,4.740041e-02,4.484423e-02,4.242802e-02,4.014407e-02,3.798511e-02,3.594423e-02,3.401491e-02,3.219101e-02,3.046668e-02,2.883644e-02,2.729507e-02,2.583767e-02,2.445959e-02,2.315646e-02,2.192413e-02,2.075869e-02,1.965645e-02,1.861392e-02,1.762782e-02,1.669502e-02,1.581260e-02,1.497779e-02,1.418796e-02,1.344065e-02,1.273352e-02,1.206438e-02,1.143113e-02,1.083182e-02,1.026459e-02,9.727684e-03,9.219455e-03,8.738336e-03,8.282853e-03,7.851611e-03,7.443295e-03,7.056659e-03,6.690530e-03,6.343797e-03,6.015411e-03,5.704382e-03,5.409773e-03,5.130700e-03,4.866327e-03,4.615863e-03,4.378561e-03,4.153716e-03,3.940660e-03,3.738762e-03,3.547427e-03,3.366090e-03,3.194218e-03,3.031307e-03,2.876881e-03,2.730487e-03,2.591701e-03,2.460119e-03,2.335359e-03,2.217060e-03,2.104881e-03,1.998499e-03,1.897608e-03,1.801919e-03,1.711159e-03,1.625068e-03,1.543402e-03,1.465928e-03,1.392427e-03,1.322690e-03,1.256522e-03,1.193736e-03,1.134155e-03,1.077613e-03,1.023952e-03,9.730209e-04,9.246789e-04,8.787916e-04,8.352318e-04,7.938789e-04,7.546189e-04,7.173437e-04,6.819508e-04,6.483432e-04,6.164291e-04,5.861213e-04,5.573372e-04,5.299987e-04,5.040317e-04,4.793659e-04,4.559347e-04,4.336751e-04,4.125271e-04,3.924342e-04,3.733425e-04,3.552012e-04,3.379618e-04,3.215786e-04,3.060081e-04,2.912092e-04,2.771427e-04,2.637717e-04,2.510610e-04,2.389773e-04,2.274889e-04,2.165660e-04,2.061799e-04,1.963039e-04,1.869122e-04,1.779806e-04,1.694860e-04,1.614066e-04,1.537216e-04,1.464114e-04,1.394572e-04,1.328412e-04,1.265468e-04,1.205578e-04,1.148592e-04,1.094365e-04,1.042760e-04,9.936479e-05,9.469054e-05,9.024155e-05,8.600670e-05,8.197544e-05,7.813776e-05,7.448413e-05,7.100553e-05,6.769336e-05,6.453948e-05,6.153614e-05,5.867599e-05,5.595202e-05,5.335761e-05,5.088645e-05,4.853253e-05,4.629016e-05,4.415392e-05,4.211868e-05,4.017953e-05,3.833184e-05,3.657118e-05,3.489336e-05,3.329438e-05,3.177045e-05,3.031795e-05,2.893347e-05,2.761373e-05,2.635563e-05,2.515623e-05,2.401272e-05,2.292243e-05,2.188282e-05,2.089149e-05,1.994612e-05,1.904455e-05,1.818468e-05,1.736455e-05,1.658228e-05,1.583606e-05,1.512421e-05,1.444510e-05,1.379718e-05,1.317900e-05,1.258914e-05,1.202629e-05,1.148918e-05,1.097659e-05,1.048739e-05,1.002048e-05,9.574817e-06,9.149417e-06,8.743335e-06,8.355671e-06,7.985572e-06,7.632221e-06,7.294844e-06,6.972701e-06,6.665088e-06,6.371334e-06,6.090800e-06,5.822878e-06,5.566987e-06,5.322574e-06,5.089113e-06,4.866102e-06,4.653062e-06,4.449538e-06,4.255094e-06,4.069316e-06,3.891810e-06,3.722198e-06,3.560123e-06,3.405241e-06,3.257226e-06,3.115768e-06,2.980569e-06,2.851347e-06,2.727831e-06,2.609764e-06,2.496900e-06,2.389007e-06,2.285859e-06,2.187244e-06,2.092958e-06,2.002808e-06,1.916608e-06,1.834182e-06,1.755361e-06,1.679984e-06,1.607898e-06,1.538956e-06,1.473019e-06,1.409952e-06,1.349629e-06,1.291928e-06,1.236733e-06,1.183932e-06,1.133420e-06,1.085096e-06,1.038864e-06,9.946305e-07,9.523082e-07,9.118130e-07,8.730646e-07,8.359863e-07,8.005048e-07,7.665502e-07,7.340557e-07,7.029573e-07,6.731941e-07,6.447077e-07,6.174426e-07,5.913454e-07,5.663654e-07,5.424539e-07,5.195644e-07,4.976527e-07,4.766763e-07,4.565947e-07,4.373690e-07,4.189623e-07,4.013392e-07,3.844657e-07,3.683097e-07,3.528400e-07,3.380271e-07,3.238428e-07,3.102599e-07,2.972527e-07,2.847964e-07,2.728674e-07,2.614430e-07,2.505016e-07,2.400225e-07,2.299860e-07,2.203730e-07,2.111656e-07,2.023464e-07,1.938988e-07,1.858069e-07,1.780557e-07,1.706306e-07,1.635177e-07,1.567038e-07,1.501761e-07,1.439224e-07,1.379313e-07,1.321914e-07,1.266922e-07,1.214235e-07,1.163755e-07,1.115388e-07,1.069046e-07,1.024642e-07,9.820957e-08,9.413274e-08,9.022625e-08,8.648292e-08,8.289586e-08,7.945850e-08,7.616453e-08,7.300792e-08,6.998290e-08,6.708392e-08,6.430570e-08,6.164316e-08,5.909145e-08,5.664592e-08,5.430212e-08,5.205578e-08,4.990282e-08,4.783932e-08,4.586155e-08,4.396592e-08,4.214899e-08,4.040748e-08,3.873822e-08,3.713821e-08,3.560456e-08,3.413448e-08,3.272534e-08,3.137459e-08,3.007980e-08,2.883863e-08,2.764885e-08,2.650832e-08,2.541500e-08,2.436691e-08,2.336218e-08,2.239900e-08,2.147565e-08,2.059047e-08,1.974187e-08,1.892834e-08,1.814843e-08,1.740072e-08,1.668390e-08,1.599668e-08,1.533783e-08,1.470617e-08,1.410058e-08,1.351998e-08,1.296333e-08,1.242965e-08,1.191797e-08,1.142740e-08,1.095705e-08,1.050609e-08,1.007372e-08,9.659169e-09,9.261702e-09,8.880612e-09,8.515222e-09,8.164884e-09,7.828976e-09,7.506902e-09,7.198091e-09,6.901995e-09,6.618090e-09,6.345872e-09,6.084860e-09,5.834591e-09,5.594622e-09,5.364529e-09,5.143903e-09,4.932356e-09,4.729512e-09,4.535013e-09,4.348516e-09,4.169689e-09,3.998219e-09,3.833801e-09,3.676145e-09,3.524972e-09,3.380016e-09,3.241021e-09,3.107742e-09,2.979942e-09,2.857397e-09,2.739891e-09,2.627215e-09,2.519172e-09,2.415570e-09,2.316228e-09,2.220969e-09,2.129626e-09,2.042038e-09,1.958050e-09,1.877515e-09,1.800290e-09,1.726239e-09,1.655232e-09,1.587143e-09,1.521854e-09,1.459248e-09,1.399215e-09,1.341650e-09,1.286451e-09,1.233521e-09,1.182766e-09,1.134098e-09,1.087431e-09,1.042681e-09,9.997714e-10,9.586254e-10,9.191709e-10,8.813383e-10,8.450610e-10,8.102751e-10,7.769192e-10,7.449348e-10,7.142654e-10,6.848569e-10,6.566577e-10,6.296179e-10,6.036901e-10,5.788284e-10,5.549890e-10,5.321301e-10,5.102113e-10,4.891939e-10,4.690410e-10,4.497170e-10,4.311879e-10,4.134210e-10,3.963849e-10,3.800498e-10,3.643866e-10,3.493680e-10,3.349672e-10,3.211591e-10,3.079192e-10,2.952241e-10,2.830515e-10,2.713799e-10,2.601887e-10,2.494582e-10,2.391694e-10,2.293042e-10,2.198451e-10,2.107755e-10,2.020794e-10,1.937413e-10,1.857466e-10,1.780812e-10,1.707316e-10,1.636846e-10,1.569279e-10,1.504496e-10,1.442382e-10,1.382828e-10,1.325727e-10,1.270979e-10,1.218488e-10,1.168160e-10,1.119906e-10,1.073642e-10,1.029285e-10,9.867564e-11,9.459816e-11,9.068881e-11,8.694067e-11,8.334712e-11,7.990178e-11,7.659856e-11,7.343161e-11,7.039531e-11,6.748428e-11,6.469338e-11,6.201764e-11,5.945233e-11,5.699290e-11,5.463499e-11,5.237442e-11,5.020717e-11,4.812941e-11,4.613744e-11,4.422773e-11,4.239689e-11,4.064168e-11,3.895896e-11,3.734576e-11,3.579921e-11,3.431656e-11,3.289517e-11,3.153253e-11,3.022620e-11,2.897387e-11,2.777331e-11,2.662238e-11,2.551904e-11,2.446132e-11,2.344735e-11,2.247530e-11,2.154347e-11,2.065018e-11,1.979384e-11,1.897293e-11,1.818600e-11,1.743162e-11,1.670847e-11,1.601524e-11,1.535072e-11,1.471370e-11,1.410306e-11,1.351770e-11,1.295658e-11,1.241870e-11,1.190309e-11,1.140885e-11,1.093508e-11,1.048094e-11,1.004561e-11,9.628326e-12,9.228335e-12,8.844922e-12,8.477402e-12,8.125117e-12,7.787439e-12,7.463762e-12,7.153507e-12,6.856119e-12,6.571065e-12,6.297836e-12,6.035942e-12,5.784913e-12,5.544301e-12,5.313673e-12,5.092616e-12,4.880735e-12,4.677649e-12,4.482993e-12,4.296420e-12,4.117593e-12,3.946193e-12,3.781911e-12,3.624453e-12,3.473535e-12,3.328887e-12,3.190248e-12,3.057371e-12,2.930015e-12,2.807952e-12,2.690963e-12,2.578836e-12,2.471372e-12,2.368375e-12,2.269661e-12,2.175052e-12,2.084378e-12,1.997475e-12,1.914188e-12,1.834365e-12,1.757863e-12,1.684545e-12,1.614278e-12,1.546935e-12,1.482396e-12,1.420543e-12,1.361265e-12,1.304455e-12,1.250010e-12,1.197833e-12,1.147829e-12,1.099908e-12,1.053983e-12,1.009972e-12,9.677937e-13,9.273733e-13,8.886374e-13,8.515158e-13,8.159416e-13,7.818503e-13,7.491803e-13,7.178724e-13,6.878700e-13,6.591187e-13,6.315666e-13,6.051637e-13,5.798621e-13,5.556161e-13,5.323817e-13,5.101169e-13,4.887811e-13,4.683358e-13,4.487439e-13,4.299698e-13,4.119795e-13,3.947402e-13,3.782209e-13,3.623913e-13,3.472229e-13,3.326880e-13,3.187602e-13,3.054143e-13,2.926260e-13,2.803720e-13,2.686301e-13,2.573789e-13,2.465980e-13,2.362676e-13,2.263692e-13,2.168846e-13,2.077965e-13,1.990885e-13,1.907446e-13,1.827497e-13,1.750892e-13,1.677491e-13,1.607162e-13,1.539774e-13,1.475207e-13,1.413342e-13,1.354065e-13,1.297270e-13,1.242852e-13,1.190712e-13,1.140755e-13,1.092890e-13,1.047029e-13,1.003089e-13,9.609888e-14,9.206523e-14,8.820054e-14,8.449776e-14,8.095012e-14,7.755113e-14,7.429457e-14,7.117450e-14,6.818520e-14,6.532119e-14,6.257725e-14,5.994835e-14}, {4.487102e+02,3.130831e+02,2.189588e+02,1.534795e+02,1.078366e+02,7.597033e+01,5.369599e+01,3.811400e+01,2.720906e+01,1.957671e+01,1.423595e+01,1.050021e+01,7.888278e+00,6.062497e+00,4.785787e+00,3.891666e+00,3.263278e+00,2.818687e+00,2.500551e+00,2.268849e+00,2.095758e+00,1.962034e+00,1.854461e+00,1.764048e+00,1.684749e+00,1.612569e+00,1.544926e+00,1.480205e+00,1.417446e+00,1.356121e+00,1.295986e+00,1.236974e+00,1.179121e+00,1.122523e+00,1.067298e+00,1.013570e+00,9.614542e-01,9.110497e-01,8.624370e-01,8.156759e-01,7.708064e-01,7.278494e-01,6.868092e-01,6.476747e-01,6.104223e-01,5.750173e-01,5.414163e-01,5.095689e-01,4.794188e-01,4.509060e-01,4.239673e-01,3.985378e-01,3.745516e-01,3.519424e-01,3.306445e-01,3.105932e-01,2.917247e-01,2.739773e-01,2.572909e-01,2.416074e-01,2.268710e-01,2.130284e-01,2.000282e-01,1.878216e-01,1.763622e-01,1.656057e-01,1.555103e-01,1.460361e-01,1.371457e-01,1.288035e-01,1.209761e-01,1.136319e-01,1.067412e-01,1.002758e-01,9.420960e-02,8.851768e-02,8.317680e-02,7.816511e-02,7.346209e-02,6.904848e-02,6.490621e-02,6.101833e-02,5.736895e-02,5.394318e-02,5.072704e-02,4.770747e-02,4.487219e-02,4.220971e-02,3.970926e-02,3.736077e-02,3.515478e-02,3.308244e-02,3.113546e-02,2.930607e-02,2.758699e-02,2.597140e-02,2.445292e-02,2.302557e-02,2.168372e-02,2.042214e-02,1.923589e-02,1.812037e-02,1.707123e-02,1.608444e-02,1.515619e-02,1.428292e-02,1.346128e-02,1.268815e-02,1.196058e-02,1.127582e-02,1.063129e-02,1.002457e-02,9.453368e-03,8.915564e-03,8.409151e-03,7.932251e-03,7.483099e-03,7.060039e-03,6.661518e-03,6.286076e-03,5.932341e-03,5.599029e-03,5.284928e-03,4.988905e-03,4.709893e-03,4.446889e-03,4.198952e-03,3.965197e-03,3.744793e-03,3.536958e-03,3.340957e-03,3.156100e-03,2.981737e-03,2.817258e-03,2.662089e-03,2.515689e-03,2.377551e-03,2.247196e-03,2.124175e-03,2.008066e-03,1.898470e-03,1.795013e-03,1.697343e-03,1.605127e-03,1.518053e-03,1.435828e-03,1.358175e-03,1.284833e-03,1.215556e-03,1.150115e-03,1.088291e-03,1.029878e-03,9.746854e-04,9.225295e-04,8.732394e-04,8.266537e-04,7.826201e-04,7.409953e-04,7.016442e-04,6.644394e-04,6.292607e-04,5.959951e-04,5.645358e-04,5.347821e-04,5.066392e-04,4.800177e-04,4.548331e-04,4.310059e-04,4.084609e-04,3.871274e-04,3.669386e-04,3.478314e-04,3.297463e-04,3.126272e-04,2.964212e-04,2.810783e-04,2.665512e-04,2.527954e-04,2.397689e-04,2.274320e-04,2.157472e-04,2.046791e-04,1.941943e-04,1.842611e-04,1.748499e-04,1.659324e-04,1.574821e-04,1.494737e-04,1.418836e-04,1.346893e-04,1.278697e-04,1.214046e-04,1.152751e-04,1.094634e-04,1.039526e-04,9.872652e-05,9.377018e-05,8.906924e-05,8.461020e-05,8.038026e-05,7.636733e-05,7.255998e-05,6.894739e-05,6.551933e-05,6.226612e-05,5.917859e-05,5.624808e-05,5.346639e-05,5.082576e-05,4.831884e-05,4.593868e-05,4.367870e-05,4.153267e-05,3.949469e-05,3.755917e-05,3.572083e-05,3.397465e-05,3.231591e-05,3.074009e-05,2.924295e-05,2.782046e-05,2.646880e-05,2.518434e-05,2.396367e-05,2.280353e-05,2.170084e-05,2.065269e-05,1.965631e-05,1.870907e-05,1.780850e-05,1.695223e-05,1.613804e-05,1.536380e-05,1.462750e-05,1.392724e-05,1.326122e-05,1.262771e-05,1.202510e-05,1.145183e-05,1.090645e-05,1.038757e-05,9.893863e-06,9.424089e-06,8.977057e-06,8.551641e-06,8.146772e-06,7.761435e-06,7.394667e-06,7.045552e-06,6.713222e-06,6.396852e-06,6.095660e-06,5.808901e-06,5.535868e-06,5.275891e-06,5.028332e-06,4.792586e-06,4.568077e-06,4.354259e-06,4.150612e-06,3.956643e-06,3.771882e-06,3.595885e-06,3.428226e-06,3.268503e-06,3.116334e-06,2.971355e-06,2.833219e-06,2.701597e-06,2.576177e-06,2.456661e-06,2.342766e-06,2.234224e-06,2.130777e-06,2.032184e-06,1.938211e-06,1.848640e-06,1.763260e-06,1.681873e-06,1.604287e-06,1.530324e-06,1.459811e-06,1.392584e-06,1.328489e-06,1.267377e-06,1.209107e-06,1.153545e-06,1.100564e-06,1.050041e-06,1.001861e-06,9.559148e-07,9.120961e-07,8.703055e-07,8.304480e-07,7.924328e-07,7.561738e-07,7.215888e-07,6.885995e-07,6.571314e-07,6.271135e-07,5.984782e-07,5.711611e-07,5.451008e-07,5.202387e-07,4.965193e-07,4.738893e-07,4.522983e-07,4.316980e-07,4.120425e-07,3.932880e-07,3.753928e-07,3.583172e-07,3.420232e-07,3.264748e-07,3.116374e-07,2.974784e-07,2.839664e-07,2.710715e-07,2.587654e-07,2.470209e-07,2.358123e-07,2.251148e-07,2.149050e-07,2.051604e-07,1.958598e-07,1.869826e-07,1.785096e-07,1.704222e-07,1.627027e-07,1.553342e-07,1.483007e-07,1.415870e-07,1.351782e-07,1.290606e-07,1.232207e-07,1.176460e-07,1.123243e-07,1.072440e-07,1.023942e-07,9.776436e-08,9.334442e-08,8.912482e-08,8.509645e-08,8.125060e-08,7.757896e-08,7.407361e-08,7.072698e-08,6.753185e-08,6.448134e-08,6.156888e-08,5.878820e-08,5.613331e-08,5.359851e-08,5.117833e-08,4.886759e-08,4.666131e-08,4.455476e-08,4.254342e-08,4.062297e-08,3.878930e-08,3.703847e-08,3.536673e-08,3.377051e-08,3.224637e-08,3.079106e-08,2.940146e-08,2.807460e-08,2.680765e-08,2.559788e-08,2.444273e-08,2.333971e-08,2.228647e-08,2.128076e-08,2.032043e-08,1.940344e-08,1.852782e-08,1.769170e-08,1.689331e-08,1.613094e-08,1.540295e-08,1.470781e-08,1.404402e-08,1.341017e-08,1.280492e-08,1.222696e-08,1.167507e-08,1.114808e-08,1.064485e-08,1.016432e-08,9.705458e-09,9.267294e-09,8.848892e-09,8.449360e-09,8.067848e-09,7.703543e-09,7.355668e-09,7.023485e-09,6.706284e-09,6.403390e-09,6.114158e-09,5.837973e-09,5.574246e-09,5.322416e-09,5.081946e-09,4.852324e-09,4.633061e-09,4.423691e-09,4.223767e-09,4.032864e-09,3.850574e-09,3.676510e-09,3.510301e-09,3.351593e-09,3.200048e-09,3.055342e-09,2.917168e-09,2.785231e-09,2.659250e-09,2.538957e-09,2.424094e-09,2.314418e-09,2.209694e-09,2.109699e-09,2.014219e-09,1.923053e-09,1.836003e-09,1.752886e-09,1.673524e-09,1.597747e-09,1.525394e-09,1.456311e-09,1.390349e-09,1.327368e-09,1.267234e-09,1.209818e-09,1.154997e-09,1.102655e-09,1.052679e-09,1.004964e-09,9.594057e-10,9.159083e-10,8.743783e-10,8.347269e-10,7.968693e-10,7.607246e-10,7.262155e-10,6.932680e-10,6.618116e-10,6.317791e-10,6.031061e-10,5.757312e-10,5.495958e-10,5.246439e-10,5.008220e-10,4.780790e-10,4.563662e-10,4.356371e-10,4.158471e-10,3.969539e-10,3.789169e-10,3.616974e-10,3.452584e-10,3.295647e-10,3.145824e-10,3.002795e-10,2.866253e-10,2.735903e-10,2.611466e-10,2.492674e-10,2.379272e-10,2.271015e-10,2.167671e-10,2.069018e-10,1.974843e-10,1.884943e-10,1.799125e-10,1.717203e-10,1.639003e-10,1.564354e-10,1.493096e-10,1.425075e-10,1.360145e-10,1.298165e-10,1.239003e-10,1.182529e-10,1.128623e-10,1.077168e-10,1.028052e-10,9.811701e-11,9.364204e-11,8.937062e-11,8.529352e-11,8.140193e-11,7.768743e-11,7.414198e-11,7.075790e-11,6.752788e-11,6.444491e-11,6.150232e-11,5.869374e-11,5.601307e-11,5.345452e-11,5.101252e-11,4.868179e-11,4.645727e-11,4.433413e-11,4.230776e-11,4.037377e-11,3.852796e-11,3.676630e-11,3.508499e-11,3.348036e-11,3.194893e-11,3.048737e-11,2.909249e-11,2.776126e-11,2.649079e-11,2.527831e-11,2.412118e-11,2.301688e-11,2.196301e-11,2.095726e-11,1.999745e-11,1.908149e-11,1.820737e-11,1.737319e-11,1.657713e-11,1.581745e-11,1.509250e-11,1.440069e-11,1.374051e-11,1.311051e-11,1.250933e-11,1.193564e-11,1.138820e-11,1.086580e-11,1.036731e-11,9.891624e-12,9.437711e-12,9.004574e-12,8.591266e-12,8.196882e-12,7.820555e-12,7.461464e-12,7.118819e-12,6.791869e-12,6.479899e-12,6.182222e-12,5.898186e-12,5.627167e-12,5.368571e-12,5.121830e-12,4.886400e-12,4.661766e-12,4.447433e-12,4.242931e-12,4.047808e-12,3.861638e-12,3.684009e-12,3.514530e-12,3.352830e-12,3.198551e-12,3.051354e-12,2.910915e-12,2.776924e-12,2.649086e-12,2.527119e-12,2.410754e-12,2.299734e-12,2.193815e-12,2.092763e-12,1.996354e-12,1.904377e-12,1.816627e-12,1.732910e-12,1.653043e-12,1.576848e-12,1.504157e-12,1.434809e-12,1.368651e-12,1.305537e-12,1.245326e-12,1.187886e-12,1.133089e-12,1.080814e-12,1.030945e-12,9.833718e-13,9.379890e-13,8.946958e-13,8.533964e-13,8.139990e-13,7.764163e-13,7.405649e-13,7.063653e-13,6.737415e-13,6.426211e-13,6.129349e-13,5.846171e-13,5.576046e-13,5.318376e-13,5.072586e-13,4.838130e-13,4.614487e-13,4.401160e-13,4.197673e-13,4.003574e-13,3.818430e-13,3.641830e-13,3.473380e-13,3.312705e-13,3.159446e-13,3.013263e-13,2.873829e-13,2.740833e-13,2.613979e-13,2.492984e-13,2.377577e-13,2.267502e-13,2.162512e-13,2.062374e-13,1.966862e-13,1.875765e-13,1.788878e-13,1.706008e-13,1.626968e-13,1.551583e-13,1.479684e-13,1.411110e-13,1.345707e-13,1.283329e-13,1.223837e-13,1.167097e-13,1.112983e-13,1.061372e-13,1.012150e-13,9.652060e-14,9.204350e-14,8.777365e-14,8.370149e-14,7.981787e-14,7.611409e-14,7.258184e-14,6.921319e-14,6.600058e-14,6.293679e-14,6.001495e-14,5.722849e-14,5.457115e-14,5.203697e-14,4.962024e-14,4.731553e-14,4.511767e-14,4.302170e-14,4.102292e-14,3.911682e-14,3.729912e-14,3.556573e-14,3.391273e-14,3.233643e-14,3.083325e-14,2.939982e-14,2.803290e-14,2.672942e-14,2.548643e-14,2.430114e-14,2.317088e-14,2.209308e-14,2.106533e-14,2.008530e-14,1.915078e-14,1.825966e-14,1.740994e-14,1.659968e-14,1.582707e-14,1.509035e-14,1.438786e-14,1.371801e-14,1.307930e-14,1.247027e-14,1.188955e-14,1.133583e-14,1.080784e-14,1.030441e-14,9.824385e-15,9.366683e-15,8.930267e-15,8.514149e-15,8.117387e-15,7.739082e-15,7.378378e-15,7.034456e-15,6.706538e-15,6.393880e-15,6.095773e-15,5.811541e-15,5.540540e-15,5.282154e-15,5.035798e-15,4.800913e-15,4.576965e-15}, {6.201463e+02,4.159362e+02,2.796913e+02,1.885901e+02,1.275679e+02,8.664117e+01,5.916952e+01,4.072234e+01,2.833501e+01,2.001914e+01,1.443855e+01,1.069402e+01,8.179926e+00,6.488249e+00,5.344244e+00,4.563155e+00,4.021032e+00,3.635025e+00,3.350034e+00,3.129684e+00,2.950189e+00,2.796208e+00,2.658020e+00,2.529629e+00,2.407471e+00,2.289549e+00,2.174858e+00,2.062997e+00,1.953915e+00,1.847751e+00,1.744727e+00,1.645083e+00,1.549044e+00,1.456795e+00,1.368475e+00,1.284172e+00,1.203930e+00,1.127747e+00,1.055587e+00,9.873785e-01,9.230276e-01,8.624182e-01,8.054192e-01,7.518875e-01,7.016727e-01,6.546196e-01,6.105706e-01,5.693686e-01,5.308579e-01,4.948860e-01,4.613045e-01,4.299700e-01,4.007446e-01,3.734963e-01,3.480992e-01,3.244337e-01,3.023866e-01,2.818507e-01,2.627252e-01,2.449151e-01,2.283312e-01,2.128899e-01,1.985128e-01,1.851266e-01,1.726628e-01,1.610575e-01,1.502511e-01,1.401878e-01,1.308160e-01,1.220873e-01,1.139569e-01,1.063829e-01,9.932647e-02,9.275147e-02,8.662429e-02,8.091368e-02,7.559062e-02,7.062811e-02,6.600110e-02,6.168628e-02,5.766200e-02,5.390815e-02,5.040604e-02,4.713829e-02,4.408878e-02,4.124249e-02,3.858549e-02,3.610481e-02,3.378841e-02,3.162508e-02,2.960441e-02,2.771670e-02,2.595296e-02,2.430479e-02,2.276440e-02,2.132453e-02,1.997842e-02,1.871980e-02,1.754280e-02,1.644198e-02,1.541226e-02,1.444892e-02,1.354755e-02,1.270405e-02,1.191460e-02,1.117563e-02,1.048383e-02,9.836088e-03,9.229529e-03,8.661456e-03,8.129357e-03,7.630891e-03,7.163870e-03,6.726255e-03,6.316142e-03,5.931754e-03,5.571432e-03,5.233626e-03,4.916891e-03,4.619874e-03,4.341314e-03,4.080032e-03,3.834927e-03,3.604967e-03,3.389192e-03,3.186703e-03,2.996657e-03,2.818269e-03,2.650804e-03,2.493574e-03,2.345937e-03,2.207290e-03,2.077071e-03,1.954753e-03,1.839843e-03,1.731880e-03,1.630432e-03,1.535095e-03,1.445491e-03,1.361265e-03,1.282085e-03,1.207640e-03,1.137640e-03,1.071811e-03,1.009898e-03,9.516613e-04,8.968764e-04,8.453331e-04,7.968340e-04,7.511944e-04,7.082408e-04,6.678108e-04,6.297519e-04,5.939212e-04,5.601845e-04,5.284159e-04,4.984976e-04,4.703186e-04,4.437750e-04,4.187693e-04,3.952099e-04,3.730107e-04,3.520911e-04,3.323753e-04,3.137920e-04,2.962745e-04,2.797598e-04,2.641891e-04,2.495069e-04,2.356610e-04,2.226027e-04,2.102858e-04,1.986671e-04,1.877059e-04,1.773642e-04,1.676058e-04,1.583971e-04,1.497063e-04,1.415034e-04,1.337604e-04,1.264508e-04,1.195497e-04,1.130337e-04,1.068808e-04,1.010702e-04,9.558232e-05,9.039889e-05,8.550257e-05,8.087705e-05,7.650699e-05,7.237793e-05,6.847627e-05,6.478918e-05,6.130457e-05,5.801108e-05,5.489795e-05,5.195510e-05,4.917300e-05,4.654265e-05,4.405561e-05,4.170388e-05,3.947994e-05,3.737669e-05,3.538745e-05,3.350590e-05,3.172608e-05,3.004239e-05,2.844951e-05,2.694246e-05,2.551651e-05,2.416722e-05,2.289037e-05,2.168201e-05,2.053839e-05,1.945597e-05,1.843142e-05,1.746159e-05,1.654350e-05,1.567434e-05,1.485145e-05,1.407234e-05,1.333463e-05,1.263608e-05,1.197457e-05,1.134813e-05,1.075484e-05,1.019294e-05,9.660731e-06,9.156623e-06,8.679110e-06,8.226768e-06,7.798249e-06,7.392282e-06,7.007663e-06,6.643253e-06,6.297975e-06,5.970813e-06,5.660802e-06,5.367032e-06,5.088641e-06,4.824814e-06,4.574780e-06,4.337809e-06,4.113210e-06,3.900330e-06,3.698551e-06,3.507288e-06,3.325986e-06,3.154121e-06,2.991197e-06,2.836743e-06,2.690316e-06,2.551494e-06,2.419879e-06,2.295092e-06,2.176776e-06,2.064593e-06,1.958223e-06,1.857360e-06,1.761719e-06,1.671026e-06,1.585023e-06,1.503467e-06,1.426125e-06,1.352778e-06,1.283218e-06,1.217249e-06,1.154684e-06,1.095346e-06,1.039068e-06,9.856906e-07,9.350638e-07,8.870450e-07,8.414990e-07,7.982980e-07,7.573205e-07,7.184516e-07,6.815822e-07,6.466090e-07,6.134340e-07,5.819644e-07,5.521121e-07,5.237937e-07,4.969301e-07,4.714463e-07,4.472711e-07,4.243371e-07,4.025805e-07,3.819405e-07,3.623597e-07,3.437835e-07,3.261604e-07,3.094412e-07,2.935795e-07,2.785313e-07,2.642547e-07,2.507100e-07,2.378597e-07,2.256681e-07,2.141014e-07,2.031275e-07,1.927160e-07,1.828380e-07,1.734662e-07,1.645745e-07,1.561385e-07,1.481346e-07,1.405407e-07,1.333359e-07,1.265001e-07,1.200146e-07,1.138612e-07,1.080230e-07,1.024839e-07,9.722848e-08,9.224227e-08,8.751146e-08,8.302298e-08,7.876442e-08,7.472399e-08,7.089054e-08,6.725345e-08,6.380269e-08,6.052871e-08,5.742246e-08,5.447535e-08,5.167924e-08,4.902640e-08,4.650949e-08,4.412155e-08,4.185599e-08,3.970653e-08,3.766725e-08,3.573248e-08,3.389690e-08,3.215541e-08,3.050320e-08,2.893571e-08,2.744859e-08,2.603773e-08,2.469923e-08,2.342937e-08,2.222466e-08,2.108174e-08,1.999746e-08,1.896882e-08,1.799295e-08,1.706717e-08,1.618891e-08,1.535573e-08,1.456532e-08,1.381549e-08,1.310417e-08,1.242937e-08,1.178923e-08,1.118198e-08,1.060592e-08,1.005946e-08,9.541081e-09,9.049341e-09,8.582877e-09,8.140392e-09,7.720657e-09,7.322504e-09,6.944827e-09,6.586576e-09,6.246753e-09,5.924413e-09,5.618660e-09,5.328641e-09,5.053550e-09,4.792620e-09,4.545123e-09,4.310371e-09,4.087709e-09,3.876516e-09,3.676202e-09,3.486209e-09,3.306006e-09,3.135091e-09,2.972986e-09,2.819239e-09,2.673419e-09,2.535119e-09,2.403952e-09,2.279552e-09,2.161570e-09,2.049676e-09,1.943557e-09,1.842916e-09,1.747471e-09,1.656955e-09,1.571112e-09,1.489704e-09,1.412502e-09,1.339288e-09,1.269858e-09,1.204017e-09,1.141579e-09,1.082369e-09,1.026221e-09,9.729772e-10,9.224874e-10,8.746098e-10,8.292097e-10,7.861592e-10,7.453370e-10,7.066283e-10,6.699239e-10,6.351203e-10,6.021194e-10,5.708281e-10,5.411582e-10,5.130258e-10,4.863515e-10,4.610600e-10,4.370798e-10,4.143432e-10,3.927858e-10,3.723466e-10,3.529679e-10,3.345948e-10,3.171753e-10,3.006599e-10,2.850020e-10,2.701572e-10,2.560832e-10,2.427404e-10,2.300907e-10,2.180983e-10,2.067291e-10,1.959509e-10,1.857329e-10,1.760463e-10,1.668633e-10,1.581580e-10,1.499056e-10,1.420825e-10,1.346665e-10,1.276365e-10,1.209724e-10,1.146553e-10,1.086671e-10,1.029907e-10,9.761007e-11,9.250972e-11,8.767513e-11,8.309248e-11,7.874869e-11,7.463134e-11,7.072867e-11,6.702951e-11,6.352328e-11,6.019994e-11,5.705000e-11,5.406442e-11,5.123465e-11,4.855259e-11,4.601054e-11,4.360123e-11,4.131773e-11,3.915351e-11,3.710233e-11,3.515833e-11,3.331591e-11,3.156977e-11,2.991491e-11,2.834657e-11,2.686023e-11,2.545161e-11,2.411668e-11,2.285157e-11,2.165266e-11,2.051648e-11,1.943976e-11,1.841941e-11,1.745247e-11,1.653616e-11,1.566783e-11,1.484498e-11,1.406524e-11,1.332635e-11,1.262617e-11,1.196269e-11,1.133398e-11,1.073824e-11,1.017373e-11,9.638816e-12,9.131959e-12,8.651689e-12,8.196614e-12,7.765417e-12,7.356847e-12,6.969721e-12,6.602915e-12,6.255367e-12,5.926067e-12,5.614060e-12,5.318440e-12,5.038349e-12,4.772973e-12,4.521541e-12,4.283322e-12,4.057624e-12,3.843790e-12,3.641198e-12,3.449259e-12,3.267413e-12,3.095132e-12,2.931914e-12,2.777282e-12,2.630787e-12,2.492001e-12,2.360519e-12,2.235959e-12,2.117957e-12,2.006168e-12,1.900265e-12,1.799941e-12,1.704901e-12,1.614867e-12,1.529578e-12,1.448783e-12,1.372246e-12,1.299744e-12,1.231064e-12,1.166004e-12,1.104376e-12,1.045997e-12,9.906979e-13,9.383158e-13,8.886972e-13,8.416968e-13,7.971768e-13,7.550064e-13,7.150620e-13,6.772264e-13,6.413885e-13,6.074430e-13,5.752903e-13,5.448358e-13,5.159901e-13,4.886684e-13,4.627904e-13,4.382799e-13,4.150648e-13,3.930769e-13,3.722513e-13,3.525269e-13,3.338454e-13,3.161518e-13,2.993942e-13,2.835229e-13,2.684913e-13,2.542550e-13,2.407721e-13,2.280027e-13,2.159091e-13,2.044558e-13,1.936088e-13,1.833361e-13,1.736075e-13,1.643940e-13,1.556686e-13,1.474053e-13,1.395799e-13,1.321691e-13,1.251509e-13,1.185048e-13,1.122108e-13,1.062506e-13,1.006063e-13,9.526127e-14,9.019968e-14,8.540653e-14,8.086760e-14,7.656944e-14,7.249930e-14,6.864511e-14,6.499544e-14,6.153945e-14,5.826689e-14,5.516803e-14,5.223368e-14,4.945513e-14,4.682410e-14,4.433280e-14,4.197381e-14,3.974011e-14,3.762507e-14,3.562240e-14,3.372613e-14,3.193062e-14,3.023053e-14,2.862081e-14,2.709664e-14,2.565350e-14,2.428709e-14,2.299333e-14,2.176837e-14,2.060856e-14,1.951043e-14,1.847071e-14,1.748631e-14,1.655428e-14,1.567185e-14,1.483637e-14,1.404536e-14,1.329645e-14,1.258740e-14,1.191611e-14,1.128055e-14,1.067884e-14,1.010916e-14,9.569830e-15,9.059224e-15,8.575816e-15,8.118162e-15,7.684890e-15,7.274705e-15,6.886378e-15,6.518747e-15,6.170710e-15,5.841225e-15,5.529305e-15,5.234014e-15,4.954469e-15,4.689830e-15,4.439304e-15,4.202140e-15,3.977626e-15,3.765089e-15,3.563890e-15,3.373427e-15,3.193126e-15,3.022448e-15,2.860878e-15,2.707932e-15,2.563150e-15,2.426097e-15,2.296361e-15,2.173553e-15,2.057302e-15,1.947260e-15,1.843094e-15,1.744493e-15,1.651158e-15,1.562810e-15,1.479182e-15,1.400022e-15,1.325093e-15,1.254167e-15,1.187033e-15,1.123487e-15,1.063338e-15,1.006404e-15,9.525142e-16,9.015060e-16,8.532254e-16,8.075268e-16,7.642723e-16,7.233314e-16,6.845805e-16,6.479026e-16,6.131871e-16,5.803291e-16,5.492293e-16,5.197938e-16,4.919337e-16,4.655648e-16,4.406074e-16,4.169860e-16,3.946292e-16,3.734694e-16,3.534427e-16,3.344884e-16,3.165492e-16,2.995708e-16,2.835018e-16,2.682936e-16,2.539001e-16,2.402778e-16,2.273854e-16,2.151838e-16,2.036361e-16,1.927072e-16,1.823642e-16,1.725755e-16,1.633116e-16,1.545443e-16,1.462470e-16,1.383947e-16,1.309634e-16,1.239306e-16,1.172750e-16,1.109764e-16,1.050156e-16,9.937462e-17,9.403623e-17,8.898426e-17}, {8.338331e+02,5.374981e+02,3.474772e+02,2.253836e+02,1.468212e+02,9.622525e+01,6.363007e+01,4.263530e+01,2.911959e+01,2.042367e+01,1.482924e+01,1.122533e+01,8.893814e+00,7.371093e+00,6.358696e+00,5.665270e+00,5.168916e+00,4.792678e+00,4.488586e+00,4.227264e+00,3.991177e+00,3.770239e+00,3.558982e+00,3.354732e+00,3.156447e+00,2.963984e+00,2.777651e+00,2.597931e+00,2.425323e+00,2.260263e+00,2.103078e+00,1.953977e+00,1.813052e+00,1.680288e+00,1.555581e+00,1.438749e+00,1.329554e+00,1.227711e+00,1.132903e+00,1.044792e+00,9.630258e-01,8.872478e-01,8.171019e-01,7.522373e-01,6.923119e-01,6.369951e-01,5.859698e-01,5.389334e-01,4.955989e-01,4.556952e-01,4.189671e-01,3.851751e-01,3.540952e-01,3.255185e-01,2.992502e-01,2.751094e-01,2.529281e-01,2.325508e-01,2.138334e-01,1.966428e-01,1.808560e-01,1.663596e-01,1.530489e-01,1.408275e-01,1.296067e-01,1.193047e-01,1.098465e-01,1.011630e-01,9.319051e-02,8.587081e-02,7.915024e-02,7.297956e-02,6.731357e-02,6.211075e-02,5.733299e-02,5.294533e-02,4.891568e-02,4.521458e-02,4.181500e-02,3.869217e-02,3.582333e-02,3.318760e-02,3.076584e-02,2.854048e-02,2.649539e-02,2.461579e-02,2.288811e-02,2.129989e-02,1.983971e-02,1.849708e-02,1.726237e-02,1.612676e-02,1.508214e-02,1.412106e-02,1.323670e-02,1.242279e-02,1.167357e-02,1.098376e-02,1.034850e-02,9.763339e-03,9.224184e-03,8.727279e-03,8.269173e-03,7.846695e-03,7.456937e-03,7.097224e-03,6.765100e-03,6.458309e-03,6.174780e-03,5.912610e-03,5.670049e-03,5.445491e-03,5.237461e-03,5.044603e-03,4.865673e-03,4.699526e-03,4.545112e-03,4.401466e-03,4.267701e-03,4.143004e-03,4.026626e-03,3.917882e-03,3.816141e-03,3.720824e-03,3.631400e-03,3.547382e-03,3.468321e-03,3.393806e-03,3.323462e-03,3.256942e-03,3.193928e-03,3.134131e-03,3.077284e-03,3.023141e-03,2.971480e-03,2.922095e-03,2.874798e-03,2.829418e-03,2.785795e-03,2.743788e-03,2.703263e-03,2.664100e-03,2.626190e-03,2.589431e-03,2.553731e-03,2.519008e-03,2.485184e-03,2.452189e-03,2.419961e-03,2.388441e-03,2.357577e-03,2.327320e-03,2.297629e-03,2.268462e-03,2.239785e-03,2.211564e-03,2.183772e-03,2.156380e-03,2.129366e-03,2.102707e-03,2.076384e-03,2.050379e-03,2.024678e-03,1.999265e-03,1.974129e-03,1.949257e-03,1.924640e-03,1.900269e-03,1.876136e-03,1.852234e-03,1.828557e-03,1.805098e-03,1.781855e-03,1.758821e-03,1.735994e-03,1.713370e-03,1.690947e-03,1.668723e-03,1.646694e-03,1.624861e-03,1.603220e-03,1.581772e-03,1.560515e-03,1.539448e-03,1.518571e-03,1.497883e-03,1.477384e-03,1.457073e-03,1.436951e-03,1.417016e-03,1.397270e-03,1.377712e-03,1.358342e-03,1.339160e-03,1.320166e-03,1.301360e-03,1.282742e-03,1.264313e-03,1.246071e-03,1.228017e-03,1.210151e-03,1.192473e-03,1.174982e-03,1.157679e-03,1.140564e-03,1.123635e-03,1.106893e-03,1.090338e-03,1.073969e-03,1.057785e-03,1.041787e-03,1.025974e-03,1.010345e-03,9.948991e-04,9.796367e-04,9.645567e-04,9.496583e-04,9.349409e-04,9.204037e-04,9.060458e-04,8.918665e-04,8.778647e-04,8.640395e-04,8.503900e-04,8.369153e-04,8.236141e-04,8.104856e-04,7.975285e-04,7.847418e-04,7.721243e-04,7.596748e-04,7.473922e-04,7.352751e-04,7.233223e-04,7.115327e-04,6.999047e-04,6.884372e-04,6.771288e-04,6.659782e-04,6.549839e-04,6.441446e-04,6.334590e-04,6.229255e-04,6.125428e-04,6.023094e-04,5.922239e-04,5.822848e-04,5.724908e-04,5.628402e-04,5.533317e-04,5.439637e-04,5.347349e-04,5.256436e-04,5.166884e-04,5.078678e-04,4.991803e-04,4.906245e-04,4.821988e-04,4.739017e-04,4.657318e-04,4.576876e-04,4.497675e-04,4.419701e-04,4.342939e-04,4.267375e-04,4.192993e-04,4.119780e-04,4.047720e-04,3.976799e-04,3.907002e-04,3.838315e-04,3.770725e-04,3.704216e-04,3.638774e-04,3.574386e-04,3.511037e-04,3.448714e-04,3.387402e-04,3.327088e-04,3.267759e-04,3.209401e-04,3.152000e-04,3.095544e-04,3.040019e-04,2.985411e-04,2.931709e-04,2.878900e-04,2.826969e-04,2.775906e-04,2.725697e-04,2.676330e-04,2.627794e-04,2.580074e-04,2.533161e-04,2.487041e-04,2.441704e-04,2.397137e-04,2.353329e-04,2.310268e-04,2.267944e-04,2.226344e-04,2.185459e-04,2.145277e-04,2.105788e-04,2.066980e-04,2.028843e-04,1.991368e-04,1.954543e-04,1.918358e-04,1.882804e-04,1.847871e-04,1.813548e-04,1.779827e-04,1.746697e-04,1.714149e-04,1.682174e-04,1.650763e-04,1.619906e-04,1.589596e-04,1.559822e-04,1.530577e-04,1.501851e-04,1.473636e-04,1.445924e-04,1.418707e-04,1.391977e-04,1.365725e-04,1.339943e-04,1.314625e-04,1.289761e-04,1.265346e-04,1.241370e-04,1.217827e-04,1.194710e-04,1.172011e-04,1.149724e-04,1.127841e-04,1.106356e-04,1.085261e-04,1.064551e-04,1.044219e-04,1.024257e-04,1.004661e-04,9.854238e-05,9.665390e-05,9.480007e-05,9.298030e-05,9.119400e-05,8.944059e-05,8.771951e-05,8.603019e-05,8.437208e-05,8.274465e-05,8.114735e-05,7.957966e-05,7.804106e-05,7.653104e-05,7.504911e-05,7.359476e-05,7.216752e-05,7.076690e-05,6.939244e-05,6.804367e-05,6.672014e-05,6.542140e-05,6.414700e-05,6.289653e-05,6.166955e-05,6.046564e-05,5.928438e-05,5.812539e-05,5.698824e-05,5.587257e-05,5.477797e-05,5.370406e-05,5.265049e-05,5.161687e-05,5.060285e-05,4.960808e-05,4.863220e-05,4.767488e-05,4.673577e-05,4.581454e-05,4.491088e-05,4.402446e-05,4.315496e-05,4.230207e-05,4.146550e-05,4.064494e-05,3.984010e-05,3.905070e-05,3.827644e-05,3.751705e-05,3.677225e-05,3.604178e-05,3.532537e-05,3.462277e-05,3.393371e-05,3.325794e-05,3.259523e-05,3.194532e-05,3.130799e-05,3.068298e-05,3.007009e-05,2.946907e-05,2.887972e-05,2.830180e-05,2.773511e-05,2.717944e-05,2.663458e-05,2.610033e-05,2.557648e-05,2.506286e-05,2.455925e-05,2.406547e-05,2.358135e-05,2.310669e-05,2.264132e-05,2.218506e-05,2.173774e-05,2.129919e-05,2.086924e-05,2.044774e-05,2.003452e-05,1.962942e-05,1.923230e-05,1.884299e-05,1.846135e-05,1.808723e-05,1.772050e-05,1.736100e-05,1.700860e-05,1.666317e-05,1.632457e-05,1.599268e-05,1.566735e-05,1.534847e-05,1.503592e-05,1.472956e-05,1.442929e-05,1.413498e-05,1.384653e-05,1.356381e-05,1.328672e-05,1.301514e-05,1.274898e-05,1.248813e-05,1.223248e-05,1.198193e-05,1.173639e-05,1.149576e-05,1.125994e-05,1.102884e-05,1.080237e-05,1.058043e-05,1.036295e-05,1.014982e-05,9.940978e-06,9.736328e-06,9.535789e-06,9.339283e-06,9.146730e-06,8.958054e-06,8.773177e-06,8.592027e-06,8.414529e-06,8.240613e-06,8.070208e-06,7.903245e-06,7.739656e-06,7.579375e-06,7.422337e-06,7.268479e-06,7.117737e-06,6.970050e-06,6.825357e-06,6.683601e-06,6.544722e-06,6.408665e-06,6.275372e-06,6.144790e-06,6.016864e-06,5.891542e-06,5.768773e-06,5.648506e-06,5.530690e-06,5.415278e-06,5.302222e-06,5.191475e-06,5.082990e-06,4.976723e-06,4.872630e-06,4.770666e-06,4.670791e-06,4.572962e-06,4.477137e-06,4.383278e-06,4.291345e-06,4.201299e-06,4.113102e-06,4.026718e-06,3.942110e-06,3.859242e-06,3.778080e-06,3.698589e-06,3.620736e-06,3.544487e-06,3.469811e-06,3.396676e-06,3.325051e-06,3.254905e-06,3.186208e-06,3.118932e-06,3.053047e-06,2.988526e-06,2.925340e-06,2.863464e-06,2.802870e-06,2.743533e-06,2.685426e-06,2.628526e-06,2.572807e-06,2.518246e-06,2.464819e-06,2.412503e-06,2.361275e-06,2.311114e-06,2.261998e-06,2.213905e-06,2.166814e-06,2.120706e-06,2.075560e-06,2.031356e-06,1.988075e-06,1.945699e-06,1.904209e-06,1.863586e-06,1.823814e-06,1.784874e-06,1.746750e-06,1.709424e-06,1.672882e-06,1.637105e-06,1.602079e-06,1.567789e-06,1.534219e-06,1.501354e-06,1.469180e-06,1.437683e-06,1.406848e-06,1.376663e-06,1.347113e-06,1.318186e-06,1.289868e-06,1.262148e-06,1.235013e-06,1.208450e-06,1.182448e-06,1.156996e-06,1.132082e-06,1.107694e-06,1.083823e-06,1.060456e-06,1.037584e-06,1.015197e-06,9.932845e-07,9.718363e-07,9.508431e-07,9.302953e-07,9.101837e-07,8.904993e-07,8.712331e-07,8.523765e-07,8.339208e-07,8.158578e-07,7.981793e-07,7.808771e-07,7.639436e-07,7.473709e-07,7.311516e-07,7.152782e-07,6.997436e-07,6.845405e-07,6.696622e-07,6.551018e-07,6.408525e-07,6.269080e-07,6.132618e-07,5.999076e-07,5.868393e-07,5.740510e-07,5.615367e-07,5.492906e-07,5.373072e-07,5.255809e-07,5.141063e-07,5.028780e-07,4.918910e-07,4.811401e-07,4.706203e-07,4.603267e-07,4.502546e-07,4.403994e-07,4.307563e-07,4.213210e-07,4.120890e-07,4.030561e-07,3.942180e-07,3.855706e-07,3.771098e-07,3.688317e-07,3.607325e-07,3.528083e-07,3.450554e-07,3.374702e-07,3.300492e-07,3.227887e-07,3.156855e-07,3.087361e-07,3.019374e-07,2.952860e-07,2.887789e-07,2.824129e-07,2.761852e-07,2.700926e-07,2.641324e-07,2.583017e-07,2.525978e-07,2.470178e-07,2.415593e-07,2.362196e-07,2.309961e-07,2.258864e-07,2.208880e-07,2.159985e-07,2.112157e-07,2.065372e-07,2.019608e-07,1.974842e-07,1.931055e-07,1.888223e-07,1.846328e-07,1.805349e-07,1.765266e-07,1.726059e-07,1.687711e-07,1.650202e-07,1.613515e-07,1.577632e-07,1.542535e-07,1.508208e-07,1.474633e-07,1.441795e-07,1.409678e-07,1.378266e-07,1.347545e-07,1.317498e-07,1.288112e-07,1.259371e-07,1.231263e-07,1.203774e-07,1.176890e-07,1.150597e-07,1.124884e-07,1.099738e-07,1.075146e-07,1.051096e-07,1.027576e-07,1.004576e-07,9.820832e-08,9.600873e-08,9.385772e-08,9.175425e-08,8.969727e-08,8.768579e-08,8.571879e-08,8.379533e-08,8.191444e-08,8.007521e-08,7.827671e-08,7.651807e-08,7.479841e-08,7.311688e-08,7.147265e-08,6.986491e-08,6.829285e-08,6.675570e-08,6.525269e-08,6.378308e-08,6.234613e-08,6.094113e-08,5.956738e-08,5.822419e-08,5.691090e-08,5.562685e-08,5.437139e-08,5.314390e-08,5.194377e-08,5.077039e-08,4.962318e-08}, {1.093731e+03,6.774982e+02,4.210448e+02,2.627480e+02,1.649329e+02,1.044703e+02,6.710926e+01,4.404271e+01,2.981536e+01,2.104303e+01,1.562526e+01,1.225928e+01,1.013878e+01,8.766710e+00,7.838604e+00,7.169714e+00,6.649476e+00,6.213027e+00,5.823414e+00,5.460508e+00,5.114127e+00,4.779798e+00,4.456174e+00,4.143487e+00,3.842642e+00,3.554707e+00,3.280639e+00,3.021167e+00,2.776742e+00,2.547547e+00,2.333522e+00,2.134407e+00,1.949774e+00,1.779076e+00,1.621673e+00,1.476868e+00,1.343928e+00,1.222103e+00,1.110647e+00,1.008825e+00,9.159253e-01,8.312633e-01,7.541886e-01,6.840859e-01,6.203776e-01,5.625236e-01,5.100212e-01,4.624043e-01,4.192421e-01,3.801374e-01,3.447249e-01,3.126693e-01,2.836634e-01,2.574263e-01,2.337013e-01,2.122543e-01,1.928718e-01,1.753595e-01,1.595407e-01,1.452546e-01,1.323554e-01,1.207104e-01,1.101995e-01,1.007134e-01,9.215351e-02,8.443008e-02,7.746200e-02,7.117578e-02,6.550493e-02,6.038924e-02,5.577430e-02,5.161085e-02,4.785439e-02,4.446469e-02,4.140538e-02,3.864364e-02,3.614981e-02,3.389710e-02,3.186135e-02,3.002074e-02,2.835560e-02,2.684818e-02,2.548249e-02,2.424409e-02,2.311999e-02,2.209849e-02,2.116905e-02,2.032217e-02,1.954931e-02,1.884280e-02,1.819571e-02,1.760186e-02,1.705564e-02,1.655206e-02,1.608662e-02,1.565529e-02,1.525443e-02,1.488082e-02,1.453154e-02,1.420400e-02,1.389588e-02,1.360508e-02,1.332976e-02,1.306825e-02,1.281908e-02,1.258093e-02,1.235264e-02,1.213314e-02,1.192154e-02,1.171699e-02,1.151877e-02,1.132624e-02,1.113884e-02,1.095605e-02,1.077744e-02,1.060263e-02,1.043126e-02,1.026305e-02,1.009774e-02,9.935100e-03,9.774933e-03,9.617072e-03,9.461373e-03,9.307711e-03,9.155980e-03,9.006090e-03,8.857965e-03,8.711542e-03,8.566768e-03,8.423601e-03,8.282006e-03,8.141955e-03,8.003427e-03,7.866405e-03,7.730876e-03,7.596834e-03,7.464272e-03,7.333189e-03,7.203582e-03,7.075455e-03,6.948808e-03,6.823646e-03,6.699971e-03,6.577790e-03,6.457105e-03,6.337922e-03,6.220246e-03,6.104079e-03,5.989427e-03,5.876292e-03,5.764678e-03,5.654586e-03,5.546017e-03,5.438973e-03,5.333453e-03,5.229457e-03,5.126983e-03,5.026029e-03,4.926591e-03,4.828666e-03,4.732248e-03,4.637333e-03,4.543914e-03,4.451985e-03,4.361538e-03,4.272564e-03,4.185054e-03,4.099000e-03,4.014391e-03,3.931216e-03,3.849464e-03,3.769124e-03,3.690183e-03,3.612628e-03,3.536447e-03,3.461626e-03,3.388151e-03,3.316008e-03,3.245183e-03,3.175660e-03,3.107425e-03,3.040463e-03,2.974757e-03,2.910293e-03,2.847054e-03,2.785024e-03,2.724188e-03,2.664528e-03,2.606030e-03,2.548675e-03,2.492449e-03,2.437333e-03,2.383313e-03,2.330371e-03,2.278491e-03,2.227657e-03,2.177851e-03,2.129058e-03,2.081261e-03,2.034444e-03,1.988590e-03,1.943685e-03,1.899711e-03,1.856652e-03,1.814494e-03,1.773220e-03,1.732815e-03,1.693263e-03,1.654550e-03,1.616659e-03,1.579577e-03,1.543288e-03,1.507778e-03,1.473032e-03,1.439036e-03,1.405776e-03,1.373237e-03,1.341407e-03,1.310272e-03,1.279817e-03,1.250030e-03,1.220898e-03,1.192408e-03,1.164548e-03,1.137304e-03,1.110665e-03,1.084618e-03,1.059151e-03,1.034253e-03,1.009912e-03,9.861175e-04,9.628571e-04,9.401202e-04,9.178961e-04,8.961741e-04,8.749437e-04,8.541947e-04,8.339170e-04,8.141006e-04,7.947359e-04,7.758131e-04,7.573230e-04,7.392563e-04,7.216039e-04,7.043570e-04,6.875068e-04,6.710447e-04,6.549625e-04,6.392517e-04,6.239044e-04,6.089126e-04,5.942685e-04,5.799645e-04,5.659932e-04,5.523471e-04,5.390192e-04,5.260024e-04,5.132898e-04,5.008746e-04,4.887502e-04,4.769101e-04,4.653480e-04,4.540576e-04,4.430328e-04,4.322677e-04,4.217564e-04,4.114932e-04,4.014725e-04,3.916887e-04,3.821366e-04,3.728108e-04,3.637062e-04,3.548178e-04,3.461405e-04,3.376697e-04,3.294005e-04,3.213284e-04,3.134488e-04,3.057573e-04,2.982495e-04,2.909213e-04,2.837684e-04,2.767869e-04,2.699727e-04,2.633220e-04,2.568310e-04,2.504960e-04,2.443133e-04,2.382795e-04,2.323909e-04,2.266444e-04,2.210364e-04,2.155638e-04,2.102235e-04,2.050122e-04,1.999271e-04,1.949650e-04,1.901232e-04,1.853988e-04,1.807891e-04,1.762913e-04,1.719027e-04,1.676209e-04,1.634433e-04,1.593674e-04,1.553908e-04,1.515111e-04,1.477261e-04,1.440336e-04,1.404312e-04,1.369169e-04,1.334886e-04,1.301442e-04,1.268817e-04,1.236991e-04,1.205947e-04,1.175664e-04,1.146125e-04,1.117312e-04,1.089207e-04,1.061793e-04,1.035055e-04,1.008975e-04,9.835382e-05,9.587287e-05,9.345314e-05,9.109317e-05,8.879151e-05,8.654675e-05,8.435753e-05,8.222251e-05,8.014036e-05,7.810982e-05,7.612963e-05,7.419858e-05,7.231547e-05,7.047915e-05,6.868847e-05,6.694233e-05,6.523964e-05,6.357935e-05,6.196043e-05,6.038188e-05,5.884269e-05,5.734193e-05,5.587864e-05,5.445192e-05,5.306087e-05,5.170462e-05,5.038232e-05,4.909314e-05,4.783627e-05,4.661091e-05,4.541629e-05,4.425166e-05,4.311629e-05,4.200945e-05,4.093044e-05,3.987858e-05,3.885321e-05,3.785366e-05,3.687930e-05,3.592951e-05,3.500369e-05,3.410124e-05,3.322159e-05,3.236417e-05,3.152843e-05,3.071385e-05,2.991988e-05,2.914603e-05,2.839179e-05,2.765668e-05,2.694022e-05,2.624195e-05,2.556142e-05,2.489818e-05,2.425182e-05,2.362190e-05,2.300802e-05,2.240977e-05,2.182677e-05,2.125865e-05,2.070501e-05,2.016552e-05,1.963980e-05,1.912752e-05,1.862834e-05,1.814193e-05,1.766798e-05,1.720617e-05,1.675619e-05,1.631775e-05,1.589056e-05,1.547434e-05,1.506881e-05,1.467371e-05,1.428876e-05,1.391372e-05,1.354833e-05,1.319235e-05,1.284555e-05,1.250769e-05,1.217854e-05,1.185790e-05,1.154553e-05,1.124124e-05,1.094481e-05,1.065606e-05,1.037477e-05,1.010078e-05,9.833878e-06,9.573900e-06,9.320667e-06,9.074006e-06,8.833751e-06,8.599738e-06,8.371809e-06,8.149809e-06,7.933587e-06,7.722995e-06,7.517890e-06,7.318131e-06,7.123583e-06,6.934111e-06,6.749586e-06,6.569882e-06,6.394876e-06,6.224445e-06,6.058475e-06,5.896849e-06,5.739458e-06,5.586191e-06,5.436943e-06,5.291610e-06,5.150093e-06,5.012293e-06,4.878113e-06,4.747462e-06,4.620247e-06,4.496381e-06,4.375776e-06,4.258349e-06,4.144018e-06,4.032702e-06,3.924324e-06,3.818807e-06,3.716078e-06,3.616064e-06,3.518694e-06,3.423901e-06,3.331617e-06,3.241778e-06,3.154319e-06,3.069179e-06,2.986298e-06,2.905616e-06,2.827077e-06,2.750624e-06,2.676204e-06,2.603763e-06,2.533249e-06,2.464613e-06,2.397805e-06,2.332778e-06,2.269484e-06,2.207879e-06,2.147919e-06,2.089559e-06,2.032759e-06,1.977477e-06,1.923673e-06,1.871310e-06,1.820348e-06,1.770751e-06,1.722484e-06,1.675510e-06,1.629797e-06,1.585311e-06,1.542019e-06,1.499890e-06,1.458894e-06,1.419000e-06,1.380179e-06,1.342404e-06,1.305646e-06,1.269878e-06,1.235075e-06,1.201210e-06,1.168260e-06,1.136198e-06,1.105003e-06,1.074651e-06,1.045120e-06,1.016387e-06,9.884324e-07,9.612345e-07,9.347733e-07,9.090293e-07,8.839834e-07,8.596170e-07,8.359119e-07,8.128505e-07,7.904157e-07,7.685907e-07,7.473592e-07,7.267053e-07,7.066136e-07,6.870690e-07,6.680570e-07,6.495631e-07,6.315736e-07,6.140750e-07,5.970539e-07,5.804977e-07,5.643938e-07,5.487301e-07,5.334948e-07,5.186762e-07,5.042633e-07,4.902451e-07,4.766109e-07,4.633504e-07,4.504536e-07,4.379106e-07,4.257118e-07,4.138480e-07,4.023101e-07,3.910893e-07,3.801770e-07,3.695649e-07,3.592449e-07,3.492090e-07,3.394496e-07,3.299591e-07,3.207302e-07,3.117559e-07,3.030292e-07,2.945434e-07,2.862920e-07,2.782686e-07,2.704670e-07,2.628811e-07,2.555050e-07,2.483332e-07,2.413599e-07,2.345798e-07,2.279876e-07,2.215782e-07,2.153465e-07,2.092878e-07,2.033973e-07,1.976704e-07,1.921026e-07,1.866895e-07,1.814270e-07,1.763109e-07,1.713372e-07,1.665020e-07,1.618014e-07,1.572319e-07,1.527897e-07,1.484714e-07,1.442736e-07,1.401930e-07,1.362263e-07,1.323704e-07,1.286223e-07,1.249790e-07,1.214376e-07,1.179952e-07,1.146493e-07,1.113970e-07,1.082358e-07,1.051633e-07,1.021768e-07,9.927419e-08,9.645298e-08,9.371096e-08,9.104594e-08,8.845579e-08,8.593843e-08,8.349185e-08,8.111408e-08,7.880321e-08,7.655739e-08,7.437481e-08,7.225371e-08,7.019238e-08,6.818916e-08,6.624244e-08,6.435064e-08,6.251224e-08,6.072574e-08,5.898970e-08,5.730272e-08,5.566342e-08,5.407047e-08,5.252259e-08,5.101850e-08,4.955700e-08,4.813689e-08,4.675701e-08,4.541623e-08,4.411347e-08,4.284766e-08,4.161776e-08,4.042276e-08,3.926170e-08,3.813361e-08,3.703758e-08,3.597270e-08,3.493810e-08,3.393293e-08,3.295636e-08,3.200758e-08,3.108583e-08,3.019033e-08,2.932035e-08,2.847516e-08,2.765408e-08,2.685642e-08,2.608152e-08,2.532874e-08,2.459746e-08,2.388706e-08,2.319697e-08,2.252660e-08,2.187540e-08,2.124283e-08,2.062836e-08,2.003148e-08,1.945169e-08,1.888851e-08,1.834147e-08,1.781010e-08,1.729398e-08,1.679265e-08,1.630571e-08,1.583275e-08,1.537337e-08,1.492718e-08,1.449381e-08,1.407290e-08,1.366409e-08,1.326703e-08,1.288140e-08,1.250687e-08,1.214311e-08,1.178984e-08,1.144674e-08,1.111352e-08,1.078992e-08,1.047564e-08,1.017043e-08,9.874023e-09,9.586173e-09,9.306634e-09,9.035168e-09,8.771545e-09,8.515540e-09,8.266936e-09,8.025521e-09,7.791089e-09,7.563441e-09,7.342382e-09,7.127723e-09,6.919282e-09,6.716879e-09,6.520343e-09,6.329503e-09,6.144198e-09,5.964268e-09,5.789559e-09,5.619921e-09,5.455208e-09,5.295279e-09,5.139996e-09,4.989225e-09,4.842837e-09,4.700706e-09,4.562709e-09,4.428727e-09,4.298644e-09,4.172348e-09,4.049730e-09,3.930684e-09,3.815106e-09,3.702898e-09,3.593960e-09,3.488200e-09,3.385525e-09,3.285846e-09,3.189076e-09,3.095132e-09,3.003931e-09,2.915395e-09,2.829446e-09,2.746009e-09,2.665012e-09}, {1.402906e+03,8.350357e+02,4.989208e+02,2.996579e+02,1.814507e+02,1.113488e+02,6.982057e+01,4.525514e+01,3.073746e+01,2.214653e+01,1.702863e+01,1.392683e+01,1.198054e+01,1.068569e+01,9.750816e+00,9.010576e+00,8.373817e+00,7.792475e+00,7.243006e+00,6.715388e+00,6.206690e+00,5.717372e+00,5.249221e+00,4.804248e+00,4.384152e+00,3.990097e+00,3.622664e+00,3.281895e+00,2.967374e+00,2.678318e+00,2.413671e+00,2.172185e+00,1.952489e+00,1.753146e+00,1.572694e+00,1.409688e+00,1.262717e+00,1.130428e+00,1.011536e+00,9.048314e-01,8.091854e-01,7.235501e-01,6.469584e-01,5.785214e-01,5.174257e-01,4.629290e-01,4.143563e-01,3.710948e-01,3.325900e-01,2.983405e-01,2.678944e-01,2.408443e-01,2.168241e-01,1.955049e-01,1.765915e-01,1.598193e-01,1.449516e-01,1.317763e-01,1.201042e-01,1.097660e-01,1.006107e-01,9.250383e-02,8.532530e-02,7.896828e-02,7.333767e-02,6.834889e-02,6.392678e-02,6.000457e-02,5.652300e-02,5.342949e-02,5.067745e-02,4.822562e-02,4.603744e-02,4.408063e-02,4.232661e-02,4.075018e-02,3.932910e-02,3.804374e-02,3.687686e-02,3.581325e-02,3.483957e-02,3.394411e-02,3.311659e-02,3.234803e-02,3.163057e-02,3.095735e-02,3.032240e-02,2.972051e-02,2.914718e-02,2.859850e-02,2.807111e-02,2.756208e-02,2.706893e-02,2.658952e-02,2.612202e-02,2.566490e-02,2.521684e-02,2.477674e-02,2.434369e-02,2.391693e-02,2.349583e-02,2.307989e-02,2.266871e-02,2.226196e-02,2.185940e-02,2.146086e-02,2.106619e-02,2.067531e-02,2.028818e-02,1.990478e-02,1.952512e-02,1.914922e-02,1.877712e-02,1.840888e-02,1.804456e-02,1.768423e-02,1.732796e-02,1.697583e-02,1.662792e-02,1.628429e-02,1.594503e-02,1.561019e-02,1.527985e-02,1.495407e-02,1.463290e-02,1.431639e-02,1.400459e-02,1.369753e-02,1.339526e-02,1.309780e-02,1.280517e-02,1.251738e-02,1.223446e-02,1.195641e-02,1.168322e-02,1.141489e-02,1.115142e-02,1.089279e-02,1.063897e-02,1.038996e-02,1.014571e-02,9.906208e-03,9.671412e-03,9.441286e-03,9.215790e-03,8.994880e-03,8.778511e-03,8.566634e-03,8.359200e-03,8.156155e-03,7.957444e-03,7.763013e-03,7.572803e-03,7.386755e-03,7.204810e-03,7.026905e-03,6.852980e-03,6.682971e-03,6.516815e-03,6.354448e-03,6.195805e-03,6.040822e-03,5.889435e-03,5.741579e-03,5.597188e-03,5.456198e-03,5.318544e-03,5.184163e-03,5.052990e-03,4.924962e-03,4.800015e-03,4.678088e-03,4.559117e-03,4.443041e-03,4.329800e-03,4.219333e-03,4.111581e-03,4.006485e-03,3.903987e-03,3.804029e-03,3.706555e-03,3.611510e-03,3.518839e-03,3.428488e-03,3.340403e-03,3.254533e-03,3.170826e-03,3.089232e-03,3.009702e-03,2.932186e-03,2.856637e-03,2.783008e-03,2.711253e-03,2.641328e-03,2.573187e-03,2.506788e-03,2.442088e-03,2.379046e-03,2.317621e-03,2.257773e-03,2.199464e-03,2.142654e-03,2.087308e-03,2.033388e-03,1.980858e-03,1.929684e-03,1.879833e-03,1.831269e-03,1.783962e-03,1.737878e-03,1.692988e-03,1.649260e-03,1.606665e-03,1.565175e-03,1.524760e-03,1.485394e-03,1.447049e-03,1.409700e-03,1.373320e-03,1.337884e-03,1.303370e-03,1.269751e-03,1.237006e-03,1.205112e-03,1.174046e-03,1.143788e-03,1.114315e-03,1.085609e-03,1.057649e-03,1.030415e-03,1.003888e-03,9.780513e-04,9.528853e-04,9.283731e-04,9.044974e-04,8.812418e-04,8.585900e-04,8.365263e-04,8.150352e-04,7.941019e-04,7.737117e-04,7.538504e-04,7.345042e-04,7.156597e-04,6.973036e-04,6.794233e-04,6.620062e-04,6.450403e-04,6.285137e-04,6.124149e-04,5.967328e-04,5.814565e-04,5.665753e-04,5.520789e-04,5.379572e-04,5.242004e-04,5.107990e-04,4.977438e-04,4.850256e-04,4.726356e-04,4.605653e-04,4.488063e-04,4.373505e-04,4.261900e-04,4.153170e-04,4.047241e-04,3.944040e-04,3.843495e-04,3.745538e-04,3.650100e-04,3.557116e-04,3.466523e-04,3.378258e-04,3.292260e-04,3.208470e-04,3.126832e-04,3.047289e-04,2.969787e-04,2.894272e-04,2.820693e-04,2.749000e-04,2.679145e-04,2.611078e-04,2.544755e-04,2.480129e-04,2.417157e-04,2.355796e-04,2.296004e-04,2.237741e-04,2.180967e-04,2.125643e-04,2.071733e-04,2.019200e-04,1.968007e-04,1.918122e-04,1.869509e-04,1.822136e-04,1.775971e-04,1.730983e-04,1.687141e-04,1.644417e-04,1.602781e-04,1.562205e-04,1.522663e-04,1.484127e-04,1.446572e-04,1.409972e-04,1.374303e-04,1.339541e-04,1.305663e-04,1.272646e-04,1.240468e-04,1.209107e-04,1.178544e-04,1.148756e-04,1.119725e-04,1.091430e-04,1.063854e-04,1.036977e-04,1.010782e-04,9.852521e-05,9.603692e-05,9.361172e-05,9.124800e-05,8.894418e-05,8.669875e-05,8.451020e-05,8.237710e-05,8.029802e-05,7.827159e-05,7.629647e-05,7.437135e-05,7.249496e-05,7.066605e-05,6.888342e-05,6.714588e-05,6.545230e-05,6.380156e-05,6.219255e-05,6.062423e-05,5.909556e-05,5.760554e-05,5.615317e-05,5.473750e-05,5.335761e-05,5.201258e-05,5.070153e-05,4.942359e-05,4.817793e-05,4.696373e-05,4.578019e-05,4.462652e-05,4.350199e-05,4.240583e-05,4.133735e-05,4.029583e-05,3.928059e-05,3.829097e-05,3.732631e-05,3.638600e-05,3.546940e-05,3.457592e-05,3.370498e-05,3.285599e-05,3.202842e-05,3.122172e-05,3.043535e-05,2.966881e-05,2.892159e-05,2.819320e-05,2.748318e-05,2.679105e-05,2.611636e-05,2.545867e-05,2.481756e-05,2.419260e-05,2.358339e-05,2.298952e-05,2.241061e-05,2.184629e-05,2.129618e-05,2.075993e-05,2.023718e-05,1.972760e-05,1.923085e-05,1.874661e-05,1.827456e-05,1.781440e-05,1.736582e-05,1.692854e-05,1.650227e-05,1.608673e-05,1.568165e-05,1.528677e-05,1.490183e-05,1.452657e-05,1.416076e-05,1.380416e-05,1.345654e-05,1.311766e-05,1.278731e-05,1.246528e-05,1.215135e-05,1.184532e-05,1.154699e-05,1.125616e-05,1.097266e-05,1.069629e-05,1.042687e-05,1.016423e-05,9.908200e-06,9.658612e-06,9.415303e-06,9.178115e-06,8.946895e-06,8.721492e-06,8.501760e-06,8.287556e-06,8.078740e-06,7.875178e-06,7.676737e-06,7.483289e-06,7.294707e-06,7.110869e-06,6.931655e-06,6.756951e-06,6.586641e-06,6.420616e-06,6.258767e-06,6.100990e-06,5.947182e-06,5.797243e-06,5.651077e-06,5.508587e-06,5.369683e-06,5.234273e-06,5.102269e-06,4.973587e-06,4.848142e-06,4.725853e-06,4.606640e-06,4.490427e-06,4.377139e-06,4.266700e-06,4.159040e-06,4.054089e-06,3.951779e-06,3.852044e-06,3.754818e-06,3.660039e-06,3.567644e-06,3.477575e-06,3.389773e-06,3.304181e-06,3.220742e-06,3.139404e-06,3.060113e-06,2.982817e-06,2.907468e-06,2.834015e-06,2.762411e-06,2.692610e-06,2.624566e-06,2.558235e-06,2.493574e-06,2.430542e-06,2.369096e-06,2.309198e-06,2.250808e-06,2.193889e-06,2.138403e-06,2.084315e-06,2.031589e-06,1.980192e-06,1.930089e-06,1.881248e-06,1.833638e-06,1.787227e-06,1.741986e-06,1.697885e-06,1.654895e-06,1.612989e-06,1.572139e-06,1.532318e-06,1.493502e-06,1.455664e-06,1.418780e-06,1.382825e-06,1.347778e-06,1.313614e-06,1.280312e-06,1.247850e-06,1.216206e-06,1.185361e-06,1.155294e-06,1.125986e-06,1.097417e-06,1.069569e-06,1.042424e-06,1.015964e-06,9.901719e-07,9.650309e-07,9.405247e-07,9.166372e-07,8.933529e-07,8.706567e-07,8.485337e-07,8.269695e-07,8.059500e-07,7.854617e-07,7.654910e-07,7.460250e-07,7.270510e-07,7.085566e-07,6.905297e-07,6.729586e-07,6.558318e-07,6.391380e-07,6.228665e-07,6.070066e-07,5.915478e-07,5.764802e-07,5.617939e-07,5.474792e-07,5.335269e-07,5.199277e-07,5.066728e-07,4.937536e-07,4.811615e-07,4.688883e-07,4.569261e-07,4.452668e-07,4.339030e-07,4.228272e-07,4.120321e-07,4.015107e-07,3.912560e-07,3.812613e-07,3.715200e-07,3.620259e-07,3.527726e-07,3.437540e-07,3.349643e-07,3.263977e-07,3.180486e-07,3.099114e-07,3.019808e-07,2.942516e-07,2.867188e-07,2.793773e-07,2.722223e-07,2.652491e-07,2.584532e-07,2.518301e-07,2.453753e-07,2.390847e-07,2.329541e-07,2.269794e-07,2.211567e-07,2.154823e-07,2.099522e-07,2.045629e-07,1.993108e-07,1.941925e-07,1.892045e-07,1.843436e-07,1.796066e-07,1.749903e-07,1.704916e-07,1.661076e-07,1.618354e-07,1.576722e-07,1.536152e-07,1.496616e-07,1.458090e-07,1.420547e-07,1.383962e-07,1.348311e-07,1.313571e-07,1.279719e-07,1.246731e-07,1.214586e-07,1.183262e-07,1.152740e-07,1.122998e-07,1.094016e-07,1.065776e-07,1.038258e-07,1.011445e-07,9.853179e-08,9.598597e-08,9.350534e-08,9.108824e-08,8.873306e-08,8.643823e-08,8.420221e-08,8.202351e-08,7.990068e-08,7.783228e-08,7.581694e-08,7.385331e-08,7.194007e-08,7.007594e-08,6.825967e-08,6.649004e-08,6.476586e-08,6.308599e-08,6.144927e-08,5.985463e-08,5.830099e-08,5.678729e-08,5.531253e-08,5.387571e-08,5.247587e-08,5.111205e-08,4.978334e-08,4.848885e-08,4.722771e-08,4.599905e-08,4.480205e-08,4.363591e-08,4.249983e-08,4.139305e-08,4.031482e-08,3.926440e-08,3.824109e-08,3.724420e-08,3.627304e-08,3.532697e-08,3.440533e-08,3.350751e-08,3.263289e-08,3.178087e-08,3.095089e-08,3.014238e-08,2.935478e-08,2.858756e-08,2.784020e-08,2.711218e-08,2.640302e-08,2.571223e-08,2.503933e-08,2.438388e-08,2.374541e-08,2.312350e-08,2.251771e-08,2.192764e-08,2.135289e-08,2.079305e-08,2.024774e-08,1.971659e-08,1.919924e-08,1.869534e-08,1.820452e-08,1.772647e-08,1.726085e-08,1.680733e-08,1.636562e-08,1.593540e-08,1.551637e-08,1.510826e-08,1.471078e-08,1.432364e-08,1.394660e-08,1.357938e-08,1.322174e-08,1.287342e-08,1.253419e-08,1.220381e-08,1.188205e-08,1.156869e-08,1.126351e-08,1.096630e-08,1.067686e-08,1.039498e-08,1.012046e-08,9.853131e-09,9.592788e-09,9.339256e-09,9.092358e-09,8.851923e-09,8.617783e-09,8.389774e-09,8.167738e-09,7.951519e-09,7.740968e-09,7.535937e-09,7.336282e-09,7.141865e-09,6.952548e-09,6.768200e-09,6.588692e-09,6.413897e-09,6.243694e-09,6.077962e-09,5.916586e-09,5.759452e-09,5.606450e-09,5.457472e-09,5.312414e-09}, {1.765707e+03,1.009904e+03,5.801890e+02,3.355506e+02,1.962677e+02,1.170541e+02,7.208768e+01,4.660709e+01,3.216472e+01,2.392984e+01,1.914842e+01,1.625986e+01,1.438874e+01,1.305163e+01,1.198795e+01,1.106238e+01,1.020877e+01,9.398155e+00,8.620622e+00,7.875295e+00,7.164907e+00,6.493010e+00,5.862649e+00,5.275840e+00,4.733468e+00,4.235382e+00,3.780574e+00,3.367383e+00,2.993678e+00,2.657023e+00,2.354813e+00,2.084375e+00,1.843049e+00,1.628246e+00,1.437490e+00,1.268443e+00,1.118920e+00,9.868986e-01,8.705210e-01,7.680889e-01,6.780592e-01,5.990356e-01,5.297597e-01,4.691011e-01,4.160476e-01,3.696949e-01,3.292373e-01,2.939582e-01,2.632219e-01,2.364651e-01,2.131896e-01,1.929555e-01,1.753751e-01,1.601068e-01,1.468504e-01,1.353420e-01,1.253506e-01,1.166734e-01,1.091332e-01,1.025751e-01,9.686399e-02,9.188196e-02,8.752649e-02,8.370841e-02,8.035032e-02,7.738511e-02,7.475473e-02,7.240899e-02,7.030462e-02,6.840435e-02,6.667618e-02,6.509266e-02,6.363032e-02,6.226916e-02,6.099215e-02,5.978488e-02,5.863517e-02,5.753279e-02,5.646917e-02,5.543720e-02,5.443098e-02,5.344570e-02,5.247742e-02,5.152300e-02,5.057995e-02,4.964632e-02,4.872065e-02,4.780185e-02,4.688917e-02,4.598214e-02,4.508048e-02,4.418413e-02,4.329316e-02,4.240774e-02,4.152816e-02,4.065476e-02,3.978792e-02,3.892808e-02,3.807567e-02,3.723117e-02,3.639502e-02,3.556768e-02,3.474958e-02,3.394115e-02,3.314279e-02,3.235488e-02,3.157776e-02,3.081177e-02,3.005719e-02,2.931430e-02,2.858334e-02,2.786451e-02,2.715800e-02,2.646395e-02,2.578251e-02,2.511377e-02,2.445780e-02,2.381466e-02,2.318438e-02,2.256697e-02,2.196242e-02,2.137070e-02,2.079175e-02,2.022552e-02,1.967192e-02,1.913087e-02,1.860224e-02,1.808593e-02,1.758181e-02,1.708973e-02,1.660954e-02,1.614108e-02,1.568420e-02,1.523871e-02,1.480445e-02,1.438122e-02,1.396885e-02,1.356714e-02,1.317590e-02,1.279494e-02,1.242405e-02,1.206304e-02,1.171171e-02,1.136985e-02,1.103727e-02,1.071377e-02,1.039915e-02,1.009320e-02,9.795738e-03,9.506559e-03,9.225470e-03,8.952279e-03,8.686796e-03,8.428832e-03,8.178203e-03,7.934724e-03,7.698216e-03,7.468500e-03,7.245402e-03,7.028751e-03,6.818377e-03,6.614114e-03,6.415801e-03,6.223278e-03,6.036388e-03,5.854979e-03,5.678900e-03,5.508006e-03,5.342154e-03,5.181202e-03,5.025015e-03,4.873458e-03,4.726400e-03,4.583716e-03,4.445280e-03,4.310970e-03,4.180669e-03,4.054262e-03,3.931636e-03,3.812682e-03,3.697293e-03,3.585365e-03,3.476797e-03,3.371491e-03,3.269352e-03,3.170286e-03,3.074202e-03,2.981013e-03,2.890633e-03,2.802979e-03,2.717969e-03,2.635526e-03,2.555572e-03,2.478034e-03,2.402839e-03,2.329917e-03,2.259201e-03,2.190623e-03,2.124121e-03,2.059631e-03,1.997093e-03,1.936449e-03,1.877641e-03,1.820614e-03,1.765315e-03,1.711691e-03,1.659692e-03,1.609268e-03,1.560373e-03,1.512959e-03,1.466983e-03,1.422401e-03,1.379169e-03,1.337249e-03,1.296599e-03,1.257182e-03,1.218961e-03,1.181898e-03,1.145959e-03,1.111110e-03,1.077317e-03,1.044550e-03,1.012776e-03,9.819662e-04,9.520906e-04,9.231212e-04,8.950305e-04,8.677919e-04,8.413795e-04,8.157684e-04,7.909343e-04,7.668536e-04,7.435035e-04,7.208618e-04,6.989072e-04,6.776188e-04,6.569765e-04,6.369606e-04,6.175522e-04,5.987329e-04,5.804849e-04,5.627909e-04,5.456341e-04,5.289983e-04,5.128677e-04,4.972269e-04,4.820612e-04,4.673562e-04,4.530979e-04,4.392729e-04,4.258680e-04,4.128705e-04,4.002680e-04,3.880487e-04,3.762010e-04,3.647135e-04,3.535753e-04,3.427760e-04,3.323053e-04,3.221532e-04,3.123100e-04,3.027665e-04,2.935135e-04,2.845422e-04,2.758442e-04,2.674111e-04,2.592350e-04,2.513080e-04,2.436227e-04,2.361716e-04,2.289477e-04,2.219441e-04,2.151541e-04,2.085713e-04,2.021894e-04,1.960022e-04,1.900040e-04,1.841889e-04,1.785513e-04,1.730860e-04,1.677877e-04,1.626513e-04,1.576719e-04,1.528447e-04,1.481652e-04,1.436287e-04,1.392311e-04,1.349680e-04,1.308353e-04,1.268292e-04,1.229457e-04,1.191812e-04,1.155319e-04,1.119944e-04,1.085654e-04,1.052414e-04,1.020193e-04,9.889596e-05,9.586840e-05,9.293370e-05,9.008902e-05,8.733161e-05,8.465881e-05,8.206803e-05,7.955677e-05,7.712260e-05,7.476317e-05,7.247619e-05,7.025945e-05,6.811079e-05,6.602814e-05,6.400947e-05,6.205283e-05,6.015632e-05,5.831810e-05,5.653637e-05,5.480941e-05,5.313555e-05,5.151314e-05,4.994062e-05,4.841645e-05,4.693914e-05,4.550727e-05,4.411943e-05,4.277428e-05,4.147049e-05,4.020680e-05,3.898198e-05,3.779483e-05,3.664419e-05,3.552895e-05,3.444800e-05,3.340029e-05,3.238481e-05,3.140056e-05,3.044657e-05,2.952191e-05,2.862569e-05,2.775702e-05,2.691506e-05,2.609897e-05,2.530797e-05,2.454128e-05,2.379815e-05,2.307785e-05,2.237968e-05,2.170295e-05,2.104700e-05,2.041120e-05,1.979492e-05,1.919755e-05,1.861851e-05,1.805725e-05,1.751319e-05,1.698583e-05,1.647463e-05,1.597910e-05,1.549876e-05,1.503313e-05,1.458177e-05,1.414422e-05,1.372007e-05,1.330890e-05,1.291031e-05,1.252391e-05,1.214932e-05,1.178618e-05,1.143413e-05,1.109283e-05,1.076196e-05,1.044117e-05,1.013018e-05,9.828664e-06,9.536340e-06,9.252921e-06,8.978132e-06,8.711707e-06,8.453388e-06,8.202924e-06,7.960072e-06,7.724598e-06,7.496274e-06,7.274880e-06,7.060201e-06,6.852030e-06,6.650167e-06,6.454416e-06,6.264591e-06,6.080507e-06,5.901989e-06,5.728864e-06,5.560966e-06,5.398135e-06,5.240215e-06,5.087054e-06,4.938506e-06,4.794429e-06,4.654687e-06,4.519144e-06,4.387673e-06,4.260149e-06,4.136450e-06,4.016459e-06,3.900062e-06,3.787149e-06,3.677614e-06,3.571352e-06,3.468263e-06,3.368251e-06,3.271221e-06,3.177083e-06,3.085746e-06,2.997127e-06,2.911142e-06,2.827711e-06,2.746756e-06,2.668200e-06,2.591972e-06,2.518001e-06,2.446216e-06,2.376553e-06,2.308947e-06,2.243335e-06,2.179656e-06,2.117852e-06,2.057866e-06,1.999643e-06,1.943130e-06,1.888274e-06,1.835026e-06,1.783337e-06,1.733160e-06,1.684449e-06,1.637160e-06,1.591251e-06,1.546679e-06,1.503404e-06,1.461388e-06,1.420593e-06,1.380981e-06,1.342518e-06,1.305168e-06,1.268900e-06,1.233679e-06,1.199475e-06,1.166258e-06,1.133998e-06,1.102666e-06,1.072235e-06,1.042678e-06,1.013969e-06,9.860824e-07,9.589942e-07,9.326806e-07,9.071186e-07,8.822859e-07,8.581609e-07,8.347228e-07,8.119511e-07,7.898263e-07,7.683293e-07,7.474415e-07,7.271450e-07,7.074225e-07,6.882570e-07,6.696322e-07,6.515324e-07,6.339419e-07,6.168461e-07,6.002304e-07,5.840808e-07,5.683837e-07,5.531258e-07,5.382946e-07,5.238774e-07,5.098623e-07,4.962376e-07,4.829920e-07,4.701145e-07,4.575945e-07,4.454215e-07,4.335858e-07,4.220774e-07,4.108869e-07,4.000053e-07,3.894235e-07,3.791332e-07,3.691257e-07,3.593931e-07,3.499276e-07,3.407214e-07,3.317671e-07,3.230576e-07,3.145859e-07,3.063452e-07,2.983290e-07,2.905309e-07,2.829448e-07,2.755645e-07,2.683843e-07,2.613985e-07,2.546017e-07,2.479884e-07,2.415537e-07,2.352923e-07,2.291995e-07,2.232706e-07,2.175008e-07,2.118859e-07,2.064214e-07,2.011031e-07,1.959270e-07,1.908892e-07,1.859856e-07,1.812127e-07,1.765669e-07,1.720445e-07,1.676421e-07,1.633565e-07,1.591844e-07,1.551227e-07,1.511683e-07,1.473184e-07,1.435699e-07,1.399202e-07,1.363665e-07,1.329062e-07,1.295367e-07,1.262556e-07,1.230604e-07,1.199488e-07,1.169186e-07,1.139674e-07,1.110932e-07,1.082939e-07,1.055675e-07,1.029119e-07,1.003253e-07,9.780572e-08,9.535148e-08,9.296077e-08,9.063188e-08,8.836314e-08,8.615295e-08,8.399974e-08,8.190197e-08,7.985817e-08,7.786690e-08,7.592675e-08,7.403636e-08,7.219441e-08,7.039960e-08,6.865069e-08,6.694647e-08,6.528573e-08,6.366734e-08,6.209018e-08,6.055316e-08,5.905521e-08,5.759531e-08,5.617246e-08,5.478568e-08,5.343404e-08,5.211659e-08,5.083246e-08,4.958077e-08,4.836066e-08,4.717133e-08,4.601196e-08,4.488177e-08,4.378000e-08,4.270592e-08,4.165881e-08,4.063797e-08,3.964271e-08,3.867238e-08,3.772632e-08,3.680392e-08,3.590457e-08,3.502766e-08,3.417263e-08,3.333890e-08,3.252594e-08,3.173321e-08,3.096019e-08,3.020637e-08,2.947127e-08,2.875440e-08,2.805530e-08,2.737353e-08,2.670862e-08,2.606017e-08,2.542774e-08,2.481093e-08,2.420935e-08,2.362261e-08,2.305033e-08,2.249214e-08,2.194770e-08,2.141665e-08,2.089866e-08,2.039339e-08,1.990052e-08,1.941975e-08,1.895077e-08,1.849328e-08,1.804699e-08,1.761163e-08,1.718692e-08,1.677259e-08,1.636838e-08,1.597405e-08,1.558934e-08,1.521401e-08,1.484783e-08,1.449057e-08,1.414201e-08,1.380194e-08,1.347014e-08,1.314640e-08,1.283054e-08,1.252234e-08,1.222163e-08,1.192821e-08,1.164191e-08,1.136255e-08,1.108995e-08,1.082396e-08,1.056441e-08,1.031114e-08,1.006400e-08,9.822826e-09,9.587483e-09,9.357825e-09,9.133712e-09,8.915008e-09,8.701580e-09,8.493299e-09,8.290040e-09,8.091678e-09,7.898095e-09,7.709173e-09,7.524798e-09,7.344860e-09,7.169250e-09,6.997863e-09,6.830596e-09,6.667348e-09,6.508021e-09,6.352521e-09,6.200753e-09,6.052628e-09,5.908057e-09,5.766954e-09,5.629234e-09,5.494815e-09,5.363618e-09,5.235564e-09,5.110577e-09,4.988583e-09,4.869510e-09,4.753287e-09,4.639845e-09,4.529117e-09,4.421037e-09,4.315541e-09,4.212568e-09,4.112056e-09,4.013946e-09,3.918180e-09,3.824702e-09,3.733456e-09,3.644390e-09,3.557449e-09,3.472584e-09,3.389745e-09,3.308882e-09,3.229949e-09,3.152898e-09,3.077686e-09,3.004267e-09,2.932598e-09,2.862639e-09,2.794347e-09,2.727683e-09,2.662608e-09,2.599084e-09,2.537073e-09,2.476540e-09,2.417449e-09,2.359766e-09,2.303456e-09,2.248488e-09,2.194829e-09,2.142447e-09,2.091313e-09,2.041396e-09,1.992668e-09,1.945100e-09,1.898664e-09}, {2.186308e+03,1.201746e+03,6.639545e+02,3.699798e+02,2.093999e+02,1.218593e+02,7.425703e+01,4.840586e+01,3.431487e+01,2.651062e+01,2.201303e+01,1.921705e+01,1.727330e+01,1.574452e+01,1.441540e+01,1.318752e+01,1.202200e+01,1.090849e+01,9.848764e+00,8.848524e+00,7.913408e+00,7.047404e+00,6.252402e+00,5.528312e+00,4.873405e+00,4.284719e+00,3.758433e+00,3.290199e+00,2.875398e+00,2.509342e+00,2.187417e+00,1.905193e+00,1.658482e+00,1.443386e+00,1.256313e+00,1.093985e+00,9.534327e-01,8.319820e-01,7.272399e-01,6.370737e-01,5.595909e-01,4.931184e-01,4.361817e-01,3.874853e-01,3.458943e-01,3.104165e-01,2.801870e-01,2.544534e-01,2.325623e-01,2.139480e-01,1.981212e-01,1.846598e-01,1.732005e-01,1.634309e-01,1.550832e-01,1.479282e-01,1.417703e-01,1.364427e-01,1.318039e-01,1.277338e-01,1.241308e-01,1.209097e-01,1.179986e-01,1.153374e-01,1.128763e-01,1.105738e-01,1.083957e-01,1.063141e-01,1.043063e-01,1.023539e-01,1.004424e-01,9.856037e-02,9.669893e-02,9.485142e-02,9.301298e-02,9.118021e-02,8.935095e-02,8.752398e-02,8.569892e-02,8.387596e-02,8.205581e-02,8.023953e-02,7.842847e-02,7.662416e-02,7.482827e-02,7.304253e-02,7.126870e-02,6.950856e-02,6.776382e-02,6.603614e-02,6.432713e-02,6.263827e-02,6.097100e-02,5.932659e-02,5.770625e-02,5.611107e-02,5.454202e-02,5.299997e-02,5.148568e-02,4.999981e-02,4.854291e-02,4.711545e-02,4.571780e-02,4.435023e-02,4.301296e-02,4.170610e-02,4.042972e-02,3.918379e-02,3.796825e-02,3.678297e-02,3.562775e-02,3.450237e-02,3.340655e-02,3.233997e-02,3.130230e-02,3.029313e-02,2.931207e-02,2.835868e-02,2.743250e-02,2.653304e-02,2.565983e-02,2.481235e-02,2.399008e-02,2.319249e-02,2.241906e-02,2.166923e-02,2.094248e-02,2.023824e-02,1.955598e-02,1.889514e-02,1.825520e-02,1.763559e-02,1.703580e-02,1.645529e-02,1.589352e-02,1.535000e-02,1.482419e-02,1.431560e-02,1.382373e-02,1.334810e-02,1.288823e-02,1.244364e-02,1.201388e-02,1.159850e-02,1.119705e-02,1.080911e-02,1.043426e-02,1.007209e-02,9.722186e-03,9.384172e-03,9.057666e-03,8.742296e-03,8.437702e-03,8.143535e-03,7.859454e-03,7.585128e-03,7.320236e-03,7.064465e-03,6.817513e-03,6.579085e-03,6.348898e-03,6.126673e-03,5.912144e-03,5.705050e-03,5.505140e-03,5.312170e-03,5.125905e-03,4.946115e-03,4.772580e-03,4.605085e-03,4.443424e-03,4.287396e-03,4.136807e-03,3.991471e-03,3.851206e-03,3.715837e-03,3.585195e-03,3.459115e-03,3.337442e-03,3.220020e-03,3.106703e-03,2.997349e-03,2.891820e-03,2.789982e-03,2.691707e-03,2.596872e-03,2.505356e-03,2.417044e-03,2.331825e-03,2.249589e-03,2.170235e-03,2.093659e-03,2.019767e-03,1.948464e-03,1.879660e-03,1.813268e-03,1.749203e-03,1.687385e-03,1.627734e-03,1.570175e-03,1.514635e-03,1.461044e-03,1.409334e-03,1.359438e-03,1.311293e-03,1.264839e-03,1.220017e-03,1.176768e-03,1.135039e-03,1.094776e-03,1.055928e-03,1.018446e-03,9.822814e-04,9.473890e-04,9.137241e-04,8.812438e-04,8.499069e-04,8.196732e-04,7.905044e-04,7.623632e-04,7.352137e-04,7.090212e-04,6.837525e-04,6.593751e-04,6.358579e-04,6.131709e-04,5.912850e-04,5.701723e-04,5.498057e-04,5.301591e-04,5.112074e-04,4.929262e-04,4.752921e-04,4.582825e-04,4.418754e-04,4.260498e-04,4.107853e-04,3.960623e-04,3.818617e-04,3.681654e-04,3.549555e-04,3.422151e-04,3.299276e-04,3.180772e-04,3.066485e-04,2.956267e-04,2.849975e-04,2.747472e-04,2.648623e-04,2.553300e-04,2.461379e-04,2.372740e-04,2.287268e-04,2.204851e-04,2.125381e-04,2.048755e-04,1.974871e-04,1.903633e-04,1.834948e-04,1.768725e-04,1.704877e-04,1.643320e-04,1.583973e-04,1.526758e-04,1.471598e-04,1.418422e-04,1.367158e-04,1.317739e-04,1.270099e-04,1.224175e-04,1.179906e-04,1.137233e-04,1.096099e-04,1.056449e-04,1.018230e-04,9.813917e-05,9.458840e-05,9.116597e-05,8.786728e-05,8.468790e-05,8.162357e-05,7.867017e-05,7.582371e-05,7.308036e-05,7.043643e-05,6.788833e-05,6.543264e-05,6.306602e-05,6.078527e-05,5.858730e-05,5.646913e-05,5.442788e-05,5.246078e-05,5.056516e-05,4.873843e-05,4.697810e-05,4.528179e-05,4.364716e-05,4.207199e-05,4.055412e-05,3.909149e-05,3.768209e-05,3.632398e-05,3.501532e-05,3.375430e-05,3.253919e-05,3.136833e-05,3.024010e-05,2.915297e-05,2.810543e-05,2.709604e-05,2.612341e-05,2.518621e-05,2.428314e-05,2.341295e-05,2.257446e-05,2.176650e-05,2.098796e-05,2.023776e-05,1.951488e-05,1.881830e-05,1.814707e-05,1.750027e-05,1.687700e-05,1.627640e-05,1.569764e-05,1.513992e-05,1.460247e-05,1.408455e-05,1.358544e-05,1.310446e-05,1.264094e-05,1.219424e-05,1.176375e-05,1.134886e-05,1.094902e-05,1.056366e-05,1.019226e-05,9.834298e-06,9.489293e-06,9.156764e-06,8.836255e-06,8.527324e-06,8.229548e-06,7.942517e-06,7.665838e-06,7.399130e-06,7.142029e-06,6.894182e-06,6.655250e-06,6.424906e-06,6.202837e-06,5.988738e-06,5.782318e-06,5.583296e-06,5.391400e-06,5.206371e-06,5.027956e-06,4.855914e-06,4.690013e-06,4.530026e-06,4.375739e-06,4.226942e-06,4.083436e-06,3.945028e-06,3.811530e-06,3.682765e-06,3.558560e-06,3.438748e-06,3.323170e-06,3.211671e-06,3.104103e-06,3.000324e-06,2.900194e-06,2.803583e-06,2.710361e-06,2.620407e-06,2.533601e-06,2.449830e-06,2.368984e-06,2.290956e-06,2.215645e-06,2.142954e-06,2.072786e-06,2.005052e-06,1.939663e-06,1.876536e-06,1.815588e-06,1.756741e-06,1.699920e-06,1.645052e-06,1.592068e-06,1.540899e-06,1.491481e-06,1.443751e-06,1.397648e-06,1.353115e-06,1.310097e-06,1.268537e-06,1.228386e-06,1.189593e-06,1.152110e-06,1.115889e-06,1.080888e-06,1.047062e-06,1.014370e-06,9.827713e-07,9.522284e-07,9.227038e-07,8.941617e-07,8.665675e-07,8.398881e-07,8.140914e-07,7.891466e-07,7.650239e-07,7.416946e-07,7.191311e-07,6.973069e-07,6.761962e-07,6.557743e-07,6.360174e-07,6.169025e-07,5.984073e-07,5.805107e-07,5.631919e-07,5.464312e-07,5.302093e-07,5.145079e-07,4.993091e-07,4.845959e-07,4.703516e-07,4.565603e-07,4.432066e-07,4.302758e-07,4.177534e-07,4.056257e-07,3.938794e-07,3.825017e-07,3.714801e-07,3.608027e-07,3.504580e-07,3.404349e-07,3.307227e-07,3.213110e-07,3.121898e-07,3.033495e-07,2.947808e-07,2.864747e-07,2.784227e-07,2.706162e-07,2.630472e-07,2.557081e-07,2.485912e-07,2.416893e-07,2.349953e-07,2.285027e-07,2.222047e-07,2.160952e-07,2.101679e-07,2.044172e-07,1.988372e-07,1.934224e-07,1.881677e-07,1.830679e-07,1.781181e-07,1.733134e-07,1.686493e-07,1.641213e-07,1.597251e-07,1.554567e-07,1.513118e-07,1.472867e-07,1.433777e-07,1.395810e-07,1.358932e-07,1.323110e-07,1.288309e-07,1.254500e-07,1.221650e-07,1.189731e-07,1.158714e-07,1.128571e-07,1.099275e-07,1.070802e-07,1.043124e-07,1.016220e-07,9.900638e-08,9.646344e-08,9.399096e-08,9.158680e-08,8.924892e-08,8.697533e-08,8.476412e-08,8.261342e-08,8.052145e-08,7.848645e-08,7.650675e-08,7.458070e-08,7.270674e-08,7.088334e-08,6.910901e-08,6.738232e-08,6.570189e-08,6.406636e-08,6.247444e-08,6.092486e-08,5.941642e-08,5.794791e-08,5.651819e-08,5.512616e-08,5.377074e-08,5.245088e-08,5.116558e-08,4.991385e-08,4.869474e-08,4.750734e-08,4.635075e-08,4.522411e-08,4.412658e-08,4.305734e-08,4.201561e-08,4.100063e-08,4.001164e-08,3.904794e-08,3.810883e-08,3.719362e-08,3.630166e-08,3.543232e-08,3.458497e-08,3.375902e-08,3.295389e-08,3.216901e-08,3.140383e-08,3.065783e-08,2.993048e-08,2.922128e-08,2.852975e-08,2.785541e-08,2.719781e-08,2.655651e-08,2.593105e-08,2.532104e-08,2.472606e-08,2.414571e-08,2.357961e-08,2.302738e-08,2.248867e-08,2.196311e-08,2.145037e-08,2.095012e-08,2.046202e-08,1.998576e-08,1.952104e-08,1.906756e-08,1.862503e-08,1.819317e-08,1.777170e-08,1.736037e-08,1.695891e-08,1.656707e-08,1.618460e-08,1.581128e-08,1.544686e-08,1.509112e-08,1.474385e-08,1.440483e-08,1.407386e-08,1.375072e-08,1.343524e-08,1.312721e-08,1.282645e-08,1.253278e-08,1.224602e-08,1.196601e-08,1.169257e-08,1.142555e-08,1.116478e-08,1.091012e-08,1.066141e-08,1.041850e-08,1.018126e-08,9.949554e-09,9.723235e-09,9.502178e-09,9.286254e-09,9.075340e-09,8.869314e-09,8.668059e-09,8.471458e-09,8.279401e-09,8.091778e-09,7.908482e-09,7.729411e-09,7.554462e-09,7.383538e-09,7.216542e-09,7.053381e-09,6.893964e-09,6.738203e-09,6.586009e-09,6.437299e-09,6.291991e-09,6.150004e-09,6.011260e-09,5.875682e-09,5.743197e-09,5.613731e-09,5.487213e-09,5.363576e-09,5.242750e-09,5.124671e-09,5.009275e-09,4.896498e-09,4.786281e-09,4.678563e-09,4.573287e-09,4.470395e-09,4.369833e-09,4.271546e-09,4.175482e-09,4.081590e-09,3.989820e-09,3.900122e-09,3.812449e-09,3.726754e-09,3.642992e-09,3.561119e-09,3.481091e-09,3.402865e-09,3.326401e-09,3.251659e-09,3.178598e-09,3.107181e-09,3.037369e-09,2.969127e-09,2.902419e-09,2.837209e-09,2.773464e-09,2.711151e-09,2.650236e-09,2.590688e-09,2.532476e-09,2.475570e-09,2.419940e-09,2.365558e-09,2.312394e-09,2.260422e-09,2.209615e-09,2.159946e-09,2.111389e-09,2.063920e-09,2.017515e-09,1.972148e-09,1.927796e-09,1.884438e-09,1.842050e-09,1.800611e-09,1.760099e-09,1.720493e-09,1.681774e-09,1.643921e-09,1.606914e-09,1.570736e-09,1.535367e-09,1.500788e-09,1.466984e-09,1.433935e-09,1.401626e-09,1.370039e-09,1.339159e-09,1.308969e-09,1.279455e-09,1.250601e-09,1.222392e-09,1.194814e-09,1.167853e-09,1.141496e-09,1.115728e-09,1.090536e-09,1.065908e-09,1.041831e-09,1.018293e-09,9.952815e-10,9.727852e-10,9.507924e-10,9.292919e-10,9.082728e-10,8.877242e-10,8.676359e-10,8.479974e-10,8.287988e-10,8.100302e-10,7.916822e-10,7.737452e-10,7.562103e-10,7.390684e-10,7.223108e-10,7.059289e-10,6.899143e-10,6.742589e-10}, {2.670097e+03,1.410108e+03,7.493091e+02,4.026160e+02,2.209845e+02,1.260973e+02,7.666652e+01,5.090262e+01,3.732638e+01,2.992348e+01,2.557605e+01,2.269649e+01,2.049968e+01,1.861550e+01,1.688347e+01,1.524486e+01,1.368691e+01,1.221479e+01,1.083818e+01,9.565431e+00,8.401419e+00,7.347331e+00,6.401141e+00,5.558355e+00,4.812774e+00,4.157146e+00,3.583692e+00,3.084509e+00,2.651850e+00,2.278322e+00,1.957010e+00,1.681540e+00,1.446114e+00,1.245505e+00,1.075047e+00,9.305951e-01,8.084971e-01,7.055474e-01,6.189465e-01,5.462595e-01,4.853770e-01,4.344772e-01,3.919925e-01,3.565778e-01,3.270826e-01,3.025255e-01,2.820721e-01,2.650148e-01,2.507557e-01,2.387907e-01,2.286966e-01,2.201191e-01,2.127630e-01,2.063830e-01,2.007762e-01,1.957761e-01,1.912461e-01,1.870754e-01,1.831746e-01,1.794722e-01,1.759116e-01,1.724487e-01,1.690494e-01,1.656882e-01,1.623464e-01,1.590109e-01,1.556729e-01,1.523275e-01,1.489724e-01,1.456074e-01,1.422343e-01,1.388558e-01,1.354758e-01,1.320985e-01,1.287288e-01,1.253716e-01,1.220320e-01,1.187147e-01,1.154247e-01,1.121666e-01,1.089445e-01,1.057627e-01,1.026248e-01,9.953408e-02,9.649370e-02,9.350634e-02,9.057438e-02,8.769989e-02,8.488462e-02,8.213006e-02,7.943739e-02,7.680755e-02,7.424123e-02,7.173890e-02,6.930083e-02,6.692707e-02,6.461754e-02,6.237195e-02,6.018990e-02,5.807084e-02,5.601413e-02,5.401899e-02,5.208456e-02,5.020992e-02,4.839405e-02,4.663588e-02,4.493430e-02,4.328813e-02,4.169618e-02,4.015721e-02,3.866997e-02,3.723319e-02,3.584558e-02,3.450587e-02,3.321276e-02,3.196495e-02,3.076118e-02,2.960015e-02,2.848061e-02,2.740131e-02,2.636102e-02,2.535852e-02,2.439261e-02,2.346212e-02,2.256590e-02,2.170282e-02,2.087177e-02,2.007169e-02,1.930151e-02,1.856020e-02,1.784677e-02,1.716025e-02,1.649968e-02,1.586414e-02,1.525274e-02,1.466461e-02,1.409891e-02,1.355482e-02,1.303156e-02,1.252834e-02,1.204444e-02,1.157914e-02,1.113174e-02,1.070157e-02,1.028799e-02,9.890363e-03,9.508095e-03,9.140601e-03,8.787319e-03,8.447706e-03,8.121241e-03,7.807419e-03,7.505755e-03,7.215782e-03,6.937049e-03,6.669122e-03,6.411585e-03,6.164034e-03,5.926084e-03,5.697361e-03,5.477508e-03,5.266181e-03,5.063047e-03,4.867788e-03,4.680098e-03,4.499681e-03,4.326255e-03,4.159547e-03,3.999296e-03,3.845249e-03,3.697166e-03,3.554812e-03,3.417966e-03,3.286412e-03,3.159944e-03,3.038364e-03,2.921481e-03,2.809113e-03,2.701084e-03,2.597225e-03,2.497373e-03,2.401373e-03,2.309074e-03,2.220334e-03,2.135014e-03,2.052980e-03,1.974106e-03,1.898269e-03,1.825351e-03,1.755239e-03,1.687824e-03,1.623002e-03,1.560673e-03,1.500739e-03,1.443109e-03,1.387693e-03,1.334406e-03,1.283166e-03,1.233894e-03,1.186513e-03,1.140952e-03,1.097139e-03,1.055007e-03,1.014493e-03,9.755329e-04,9.380676e-04,9.020397e-04,8.673937e-04,8.340767e-04,8.020376e-04,7.712274e-04,7.415988e-04,7.131066e-04,6.857072e-04,6.593586e-04,6.340206e-04,6.096544e-04,5.862228e-04,5.636900e-04,5.420216e-04,5.211845e-04,5.011468e-04,4.818779e-04,4.633484e-04,4.455301e-04,4.283956e-04,4.119188e-04,3.960745e-04,3.808386e-04,3.661877e-04,3.520995e-04,3.385525e-04,3.255258e-04,3.129997e-04,3.009549e-04,2.893730e-04,2.782363e-04,2.675278e-04,2.572311e-04,2.473303e-04,2.378104e-04,2.286568e-04,2.198554e-04,2.113927e-04,2.032557e-04,1.954320e-04,1.879095e-04,1.806768e-04,1.737226e-04,1.670363e-04,1.606077e-04,1.544268e-04,1.484841e-04,1.427705e-04,1.372772e-04,1.319957e-04,1.269178e-04,1.220358e-04,1.173422e-04,1.128296e-04,1.084912e-04,1.043201e-04,1.003101e-04,9.645476e-05,9.274829e-05,8.918489e-05,8.575907e-05,8.246552e-05,7.929914e-05,7.625503e-05,7.332847e-05,7.051493e-05,6.781004e-05,6.520962e-05,6.270962e-05,6.030618e-05,5.799555e-05,5.577417e-05,5.363857e-05,5.158544e-05,4.961159e-05,4.771396e-05,4.588960e-05,4.413567e-05,4.244946e-05,4.082833e-05,3.926977e-05,3.777136e-05,3.633077e-05,3.494575e-05,3.361417e-05,3.233394e-05,3.110307e-05,2.991967e-05,2.878188e-05,2.768793e-05,2.663614e-05,2.562486e-05,2.465253e-05,2.371763e-05,2.281871e-05,2.195438e-05,2.112330e-05,2.032418e-05,1.955578e-05,1.881691e-05,1.810643e-05,1.742322e-05,1.676625e-05,1.613448e-05,1.552694e-05,1.494270e-05,1.438085e-05,1.384053e-05,1.332089e-05,1.282114e-05,1.234050e-05,1.187825e-05,1.143366e-05,1.100605e-05,1.059477e-05,1.019918e-05,9.818670e-06,9.452667e-06,9.100606e-06,8.761947e-06,8.436172e-06,8.122784e-06,7.821305e-06,7.531274e-06,7.252249e-06,6.983807e-06,6.725538e-06,6.477050e-06,6.237967e-06,6.007926e-06,5.786579e-06,5.573591e-06,5.368641e-06,5.171419e-06,4.981628e-06,4.798983e-06,4.623210e-06,4.454043e-06,4.291231e-06,4.134530e-06,3.983704e-06,3.838530e-06,3.698790e-06,3.564277e-06,3.434791e-06,3.310140e-06,3.190139e-06,3.074610e-06,2.963384e-06,2.856296e-06,2.753188e-06,2.653909e-06,2.558314e-06,2.466262e-06,2.377618e-06,2.292254e-06,2.210045e-06,2.130871e-06,2.054618e-06,1.981174e-06,1.910434e-06,1.842295e-06,1.776659e-06,1.713433e-06,1.652524e-06,1.593846e-06,1.537315e-06,1.482850e-06,1.430373e-06,1.379810e-06,1.331089e-06,1.284141e-06,1.238900e-06,1.195301e-06,1.153285e-06,1.112790e-06,1.073761e-06,1.036144e-06,9.998844e-07,9.649332e-07,9.312415e-07,8.987625e-07,8.674512e-07,8.372644e-07,8.081605e-07,7.800994e-07,7.530427e-07,7.269533e-07,7.017956e-07,6.775352e-07,6.541393e-07,6.315759e-07,6.098146e-07,5.888260e-07,5.685818e-07,5.490547e-07,5.302186e-07,5.120483e-07,4.945194e-07,4.776087e-07,4.612936e-07,4.455524e-07,4.303645e-07,4.157097e-07,4.015687e-07,3.879229e-07,3.747544e-07,3.620461e-07,3.497812e-07,3.379440e-07,3.265189e-07,3.154912e-07,3.048466e-07,2.945714e-07,2.846524e-07,2.750768e-07,2.658324e-07,2.569073e-07,2.482902e-07,2.399701e-07,2.319365e-07,2.241792e-07,2.166883e-07,2.094546e-07,2.024687e-07,1.957221e-07,1.892062e-07,1.829130e-07,1.768345e-07,1.709632e-07,1.652919e-07,1.598135e-07,1.545213e-07,1.494087e-07,1.444696e-07,1.396977e-07,1.350873e-07,1.306327e-07,1.263286e-07,1.221697e-07,1.181509e-07,1.142675e-07,1.105146e-07,1.068879e-07,1.033828e-07,9.999532e-08,9.672129e-08,9.355684e-08,9.049819e-08,8.754170e-08,8.468387e-08,8.192131e-08,7.925076e-08,7.666908e-08,7.417323e-08,7.176027e-08,6.942739e-08,6.717185e-08,6.499102e-08,6.288236e-08,6.084343e-08,5.887186e-08,5.696537e-08,5.512175e-08,5.333888e-08,5.161471e-08,4.994726e-08,4.833462e-08,4.677494e-08,4.526644e-08,4.380741e-08,4.239617e-08,4.103114e-08,3.971076e-08,3.843354e-08,3.719804e-08,3.600286e-08,3.484666e-08,3.372814e-08,3.264605e-08,3.159916e-08,3.058633e-08,2.960640e-08,2.865830e-08,2.774097e-08,2.685338e-08,2.599456e-08,2.516356e-08,2.435945e-08,2.358135e-08,2.282840e-08,2.209978e-08,2.139468e-08,2.071233e-08,2.005198e-08,1.941291e-08,1.879443e-08,1.819586e-08,1.761654e-08,1.705585e-08,1.651318e-08,1.598794e-08,1.547955e-08,1.498749e-08,1.451120e-08,1.405018e-08,1.360392e-08,1.317196e-08,1.275382e-08,1.234906e-08,1.195724e-08,1.157795e-08,1.121077e-08,1.085532e-08,1.051121e-08,1.017808e-08,9.855580e-09,9.543359e-09,9.241087e-09,8.948444e-09,8.665119e-09,8.390813e-09,8.125236e-09,7.868106e-09,7.619152e-09,7.378111e-09,7.144729e-09,6.918761e-09,6.699968e-09,6.488121e-09,6.282997e-09,6.084381e-09,5.892064e-09,5.705845e-09,5.525529e-09,5.350928e-09,5.181858e-09,5.018143e-09,4.859613e-09,4.706102e-09,4.557450e-09,4.413501e-09,4.274107e-09,4.139122e-09,4.008406e-09,3.881823e-09,3.759242e-09,3.640534e-09,3.525579e-09,3.414255e-09,3.306448e-09,3.202046e-09,3.100941e-09,3.003029e-09,2.908207e-09,2.816379e-09,2.727450e-09,2.641327e-09,2.557922e-09,2.477148e-09,2.398922e-09,2.323165e-09,2.249797e-09,2.178743e-09,2.109929e-09,2.043286e-09,1.978745e-09,1.916238e-09,1.855702e-09,1.797075e-09,1.740296e-09,1.685307e-09,1.632051e-09,1.580474e-09,1.530523e-09,1.482146e-09,1.435295e-09,1.389919e-09,1.345975e-09,1.303415e-09,1.262197e-09,1.222277e-09,1.183617e-09,1.146174e-09,1.109912e-09,1.074793e-09,1.040781e-09,1.007842e-09,9.759402e-10,9.450446e-10,9.151230e-10,8.861448e-10,8.580803e-10,8.309008e-10,8.045784e-10,7.790861e-10,7.543978e-10,7.304881e-10,7.073327e-10,6.849078e-10,6.631903e-10,6.421580e-10,6.217894e-10,6.020636e-10,5.829603e-10,5.644600e-10,5.465437e-10,5.291930e-10,5.123902e-10,4.961179e-10,4.803596e-10,4.650989e-10,4.503204e-10,4.360087e-10,4.221493e-10,4.087278e-10,3.957305e-10,3.831441e-10,3.709556e-10,3.591525e-10,3.477226e-10,3.366543e-10,3.259360e-10,3.155569e-10,3.055062e-10,2.957736e-10,2.863491e-10,2.772230e-10,2.683858e-10,2.598285e-10,2.515422e-10,2.435185e-10,2.357490e-10,2.282257e-10,2.209409e-10,2.138871e-10,2.070569e-10,2.004433e-10,1.940396e-10,1.878390e-10,1.818352e-10,1.760219e-10,1.703932e-10,1.649432e-10,1.596663e-10,1.545570e-10,1.496101e-10,1.448203e-10,1.401828e-10,1.356928e-10,1.313455e-10,1.271365e-10,1.230613e-10,1.191159e-10,1.152960e-10,1.115977e-10,1.080172e-10,1.045506e-10,1.011946e-10,9.794540e-11,9.479979e-11,9.175445e-11,8.880620e-11,8.595197e-11,8.318879e-11,8.051377e-11,7.792412e-11,7.541712e-11,7.299017e-11,7.064073e-11,6.836633e-11,6.616461e-11,6.403324e-11,6.197001e-11,5.997275e-11,5.803936e-11,5.616782e-11,5.435617e-11,5.260250e-11,5.090497e-11,4.926179e-11,4.767125e-11,4.613166e-11,4.464141e-11,4.319892e-11,4.180268e-11,4.045122e-11,3.914311e-11,3.787697e-11,3.665147e-11,3.546531e-11,3.431723e-11,3.320604e-11,3.213054e-11}, {3.218035e+03,1.634007e+03,8.355007e+02,4.332818e+02,2.312221e+02,1.301015e+02,7.962299e+01,5.430542e+01,4.129447e+01,3.416620e+01,2.976393e+01,2.657995e+01,2.392769e+01,2.151983e+01,1.925526e+01,1.711328e+01,1.510272e+01,1.323866e+01,1.153302e+01,9.991569e+00,8.613982e+00,7.394924e+00,6.325473e+00,5.394415e+00,4.589322e+00,3.897365e+00,3.305900e+00,2.802861e+00,2.377003e+00,2.018038e+00,1.716687e+00,1.464677e+00,1.254703e+00,1.080370e+00,9.361159e-01,8.171325e-01,7.192884e-01,6.390498e-01,5.734088e-01,5.198156e-01,4.761184e-01,4.405084e-01,4.114712e-01,3.877442e-01,3.682791e-01,3.522094e-01,3.388222e-01,3.275337e-01,3.178690e-01,3.094434e-01,3.019480e-01,2.951367e-01,2.888148e-01,2.828306e-01,2.770670e-01,2.714357e-01,2.658711e-01,2.603264e-01,2.547694e-01,2.491797e-01,2.435462e-01,2.378648e-01,2.321368e-01,2.263674e-01,2.205649e-01,2.147392e-01,2.089019e-01,2.030649e-01,1.972407e-01,1.914415e-01,1.856790e-01,1.799647e-01,1.743092e-01,1.687224e-01,1.632132e-01,1.577900e-01,1.524600e-01,1.472298e-01,1.421048e-01,1.370900e-01,1.321894e-01,1.274063e-01,1.227434e-01,1.182027e-01,1.137856e-01,1.094930e-01,1.053253e-01,1.012825e-01,9.736410e-02,9.356930e-02,8.989694e-02,8.634561e-02,8.291363e-02,7.959908e-02,7.639987e-02,7.331376e-02,7.033833e-02,6.747108e-02,6.470940e-02,6.205062e-02,5.949199e-02,5.703075e-02,5.466409e-02,5.238919e-02,5.020325e-02,4.810345e-02,4.608701e-02,4.415117e-02,4.229319e-02,4.051039e-02,3.880013e-02,3.715982e-02,3.558690e-02,3.407891e-02,3.263341e-02,3.124805e-02,2.992052e-02,2.864859e-02,2.743008e-02,2.626290e-02,2.514500e-02,2.407441e-02,2.304922e-02,2.206757e-02,2.112770e-02,2.022788e-02,1.936646e-02,1.854184e-02,1.775247e-02,1.699689e-02,1.627367e-02,1.558143e-02,1.491888e-02,1.428473e-02,1.367779e-02,1.309688e-02,1.254089e-02,1.200876e-02,1.149945e-02,1.101198e-02,1.054541e-02,1.009883e-02,9.671386e-03,9.262244e-03,8.870612e-03,8.495731e-03,8.136875e-03,7.793350e-03,7.464491e-03,7.149662e-03,6.848255e-03,6.559687e-03,6.283404e-03,6.018873e-03,5.765584e-03,5.523053e-03,5.290814e-03,5.068422e-03,4.855453e-03,4.651500e-03,4.456174e-03,4.269105e-03,4.089937e-03,3.918331e-03,3.753963e-03,3.596522e-03,3.445711e-03,3.301248e-03,3.162861e-03,3.030290e-03,2.903289e-03,2.781619e-03,2.665054e-03,2.553378e-03,2.446383e-03,2.343870e-03,2.245650e-03,2.151541e-03,2.061370e-03,1.974970e-03,1.892183e-03,1.812857e-03,1.736845e-03,1.664010e-03,1.594216e-03,1.527337e-03,1.463251e-03,1.401841e-03,1.342994e-03,1.286603e-03,1.232567e-03,1.180786e-03,1.131166e-03,1.083618e-03,1.038055e-03,9.943945e-04,9.525569e-04,9.124666e-04,8.740509e-04,8.372401e-04,8.019676e-04,7.681694e-04,7.357843e-04,7.047535e-04,6.750208e-04,6.465324e-04,6.192365e-04,5.930836e-04,5.680262e-04,5.440190e-04,5.210182e-04,4.989821e-04,4.778706e-04,4.576454e-04,4.382695e-04,4.197076e-04,4.019261e-04,3.848923e-04,3.685752e-04,3.529451e-04,3.379732e-04,3.236322e-04,3.098958e-04,2.967388e-04,2.841371e-04,2.720675e-04,2.605078e-04,2.494366e-04,2.388337e-04,2.286794e-04,2.189550e-04,2.096424e-04,2.007244e-04,1.921846e-04,1.840070e-04,1.761765e-04,1.686784e-04,1.614988e-04,1.546244e-04,1.480423e-04,1.417402e-04,1.357063e-04,1.299293e-04,1.243984e-04,1.191032e-04,1.140337e-04,1.091804e-04,1.045342e-04,1.000862e-04,9.582821e-05,9.175203e-05,8.784999e-05,8.411471e-05,8.053911e-05,7.711641e-05,7.384009e-05,7.070395e-05,6.770201e-05,6.482855e-05,6.207810e-05,5.944542e-05,5.692548e-05,5.451347e-05,5.220477e-05,4.999497e-05,4.787985e-05,4.585534e-05,4.391758e-05,4.206284e-05,4.028757e-05,3.858837e-05,3.696196e-05,3.540522e-05,3.391517e-05,3.248894e-05,3.112378e-05,2.981707e-05,2.856631e-05,2.736907e-05,2.622307e-05,2.512609e-05,2.407602e-05,2.307085e-05,2.210863e-05,2.118752e-05,2.030575e-05,1.946162e-05,1.865351e-05,1.787987e-05,1.713920e-05,1.643009e-05,1.575118e-05,1.510116e-05,1.447879e-05,1.388287e-05,1.331227e-05,1.276588e-05,1.224268e-05,1.174165e-05,1.126185e-05,1.080235e-05,1.036229e-05,9.940815e-06,9.537136e-06,9.150483e-06,8.780122e-06,8.425353e-06,8.085505e-06,7.759934e-06,7.448028e-06,7.149199e-06,6.862884e-06,6.588547e-06,6.325672e-06,6.073768e-06,5.832364e-06,5.601010e-06,5.379275e-06,5.166749e-06,4.963035e-06,4.767758e-06,4.580557e-06,4.401088e-06,4.229019e-06,4.064036e-06,3.905837e-06,3.754132e-06,3.608646e-06,3.469114e-06,3.335284e-06,3.206913e-06,3.083770e-06,2.965634e-06,2.852292e-06,2.743544e-06,2.639193e-06,2.539056e-06,2.442954e-06,2.350718e-06,2.262186e-06,2.177201e-06,2.095615e-06,2.017287e-06,1.942079e-06,1.869861e-06,1.800509e-06,1.733904e-06,1.669930e-06,1.608479e-06,1.549447e-06,1.492732e-06,1.438240e-06,1.385878e-06,1.335559e-06,1.287199e-06,1.240716e-06,1.196035e-06,1.153080e-06,1.111783e-06,1.072074e-06,1.033890e-06,9.971680e-07,9.618490e-07,9.278760e-07,8.951946e-07,8.637526e-07,8.335001e-07,8.043892e-07,7.763741e-07,7.494109e-07,7.234574e-07,6.984735e-07,6.744204e-07,6.512613e-07,6.289605e-07,6.074841e-07,5.867996e-07,5.668757e-07,5.476825e-07,5.291914e-07,5.113748e-07,4.942064e-07,4.776609e-07,4.617141e-07,4.463427e-07,4.315244e-07,4.172379e-07,4.034627e-07,3.901792e-07,3.773684e-07,3.650122e-07,3.530934e-07,3.415952e-07,3.305016e-07,3.197974e-07,3.094679e-07,2.994988e-07,2.898766e-07,2.805883e-07,2.716215e-07,2.629640e-07,2.546045e-07,2.465317e-07,2.387352e-07,2.312047e-07,2.239304e-07,2.169028e-07,2.101130e-07,2.035522e-07,1.972122e-07,1.910848e-07,1.851624e-07,1.794375e-07,1.739030e-07,1.685521e-07,1.633782e-07,1.583750e-07,1.535364e-07,1.488564e-07,1.443296e-07,1.399504e-07,1.357137e-07,1.316144e-07,1.276478e-07,1.238092e-07,1.200941e-07,1.164982e-07,1.130174e-07,1.096477e-07,1.063853e-07,1.032265e-07,1.001678e-07,9.720565e-08,9.433683e-08,9.155816e-08,8.886658e-08,8.625915e-08,8.373303e-08,8.128549e-08,7.891388e-08,7.661567e-08,7.438842e-08,7.222977e-08,7.013743e-08,6.810923e-08,6.614303e-08,6.423682e-08,6.238861e-08,6.059651e-08,5.885869e-08,5.717340e-08,5.553891e-08,5.395360e-08,5.241587e-08,5.092420e-08,4.947711e-08,4.807316e-08,4.671100e-08,4.538928e-08,4.410672e-08,4.286208e-08,4.165418e-08,4.048184e-08,3.934396e-08,3.823945e-08,3.716727e-08,3.612642e-08,3.511592e-08,3.413483e-08,3.318224e-08,3.225727e-08,3.135908e-08,3.048683e-08,2.963974e-08,2.881705e-08,2.801799e-08,2.724186e-08,2.648797e-08,2.575563e-08,2.504420e-08,2.435305e-08,2.368157e-08,2.302917e-08,2.239528e-08,2.177935e-08,2.118084e-08,2.059924e-08,2.003404e-08,1.948476e-08,1.895093e-08,1.843209e-08,1.792781e-08,1.743765e-08,1.696121e-08,1.649808e-08,1.604787e-08,1.561022e-08,1.518474e-08,1.477110e-08,1.436895e-08,1.397795e-08,1.359779e-08,1.322816e-08,1.286874e-08,1.251926e-08,1.217942e-08,1.184895e-08,1.152758e-08,1.121505e-08,1.091111e-08,1.061553e-08,1.032805e-08,1.004845e-08,9.776519e-09,9.512026e-09,9.254767e-09,9.004538e-09,8.761142e-09,8.524388e-09,8.294088e-09,8.070064e-09,7.852139e-09,7.640144e-09,7.433914e-09,7.233288e-09,7.038110e-09,6.848230e-09,6.663501e-09,6.483780e-09,6.308928e-09,6.138812e-09,5.973301e-09,5.812267e-09,5.655588e-09,5.503144e-09,5.354819e-09,5.210499e-09,5.070076e-09,4.933441e-09,4.800492e-09,4.671128e-09,4.545251e-09,4.422765e-09,4.303580e-09,4.187603e-09,4.074749e-09,3.964932e-09,3.858070e-09,3.754082e-09,3.652891e-09,3.554421e-09,3.458598e-09,3.365350e-09,3.274607e-09,3.186303e-09,3.100371e-09,3.016747e-09,2.935368e-09,2.856175e-09,2.779108e-09,2.704110e-09,2.631124e-09,2.560098e-09,2.490979e-09,2.423714e-09,2.358254e-09,2.294551e-09,2.232558e-09,2.172228e-09,2.113517e-09,2.056381e-09,2.000779e-09,1.946669e-09,1.894010e-09,1.842765e-09,1.792896e-09,1.744365e-09,1.697136e-09,1.651175e-09,1.606448e-09,1.562922e-09,1.520565e-09,1.479345e-09,1.439232e-09,1.400196e-09,1.362209e-09,1.325243e-09,1.289269e-09,1.254263e-09,1.220198e-09,1.187048e-09,1.154790e-09,1.123399e-09,1.092852e-09,1.063127e-09,1.034202e-09,1.006056e-09,9.786668e-10,9.520153e-10,9.260815e-10,9.008462e-10,8.762907e-10,8.523970e-10,8.291473e-10,8.065243e-10,7.845115e-10,7.630924e-10,7.422512e-10,7.219725e-10,7.022412e-10,6.830426e-10,6.643626e-10,6.461872e-10,6.285030e-10,6.112968e-10,5.945559e-10,5.782678e-10,5.624203e-10,5.470017e-10,5.320006e-10,5.174056e-10,5.032060e-10,4.893912e-10,4.759508e-10,4.628748e-10,4.501534e-10,4.377772e-10,4.257369e-10,4.140235e-10,4.026282e-10,3.915424e-10,3.807579e-10,3.702666e-10,3.600606e-10,3.501322e-10,3.404741e-10,3.310788e-10,3.219394e-10,3.130489e-10,3.044008e-10,2.959884e-10,2.878054e-10,2.798456e-10,2.721031e-10,2.645719e-10,2.572464e-10,2.501211e-10,2.431905e-10,2.364493e-10,2.298926e-10,2.235152e-10,2.173124e-10,2.112795e-10,2.054118e-10,1.997049e-10,1.941544e-10,1.887561e-10,1.835059e-10,1.783998e-10,1.734339e-10,1.686044e-10,1.639075e-10,1.593398e-10,1.548976e-10,1.505777e-10,1.463766e-10,1.422912e-10,1.383183e-10,1.344548e-10,1.306978e-10,1.270444e-10,1.234917e-10,1.200371e-10,1.166779e-10,1.134114e-10,1.102352e-10,1.071467e-10,1.041436e-10,1.012236e-10,9.838435e-11,9.562371e-11,9.293951e-11,9.032967e-11,8.779216e-11,8.532499e-11,8.292625e-11,8.059407e-11,7.832662e-11,7.612213e-11,7.397888e-11,7.189518e-11,6.986942e-11,6.789999e-11,6.598536e-11,6.412402e-11,6.231451e-11,6.055540e-11,5.884531e-11,5.718290e-11,5.556684e-11}, {3.840221e+03,1.873215e+03,9.216389e+02,4.618188e+02,2.404018e+02,1.342515e+02,8.341588e+01,5.876415e+01,4.624305e+01,3.917121e+01,3.445329e+01,3.071768e+01,2.740291e+01,2.431314e+01,2.140551e+01,1.869153e+01,1.619399e+01,1.393013e+01,1.190699e+01,1.012176e+01,8.563959e+00,7.217856e+00,6.064706e+00,5.084439e+00,4.256914e+00,3.562757e+00,2.983891e+00,2.503823e+00,2.107767e+00,1.782650e+00,1.517048e+00,1.301070e+00,1.126225e+00,9.852770e-01,8.720988e-01,7.815340e-01,7.092679e-01,6.517097e-01,6.058874e-01,5.693542e-01,5.401072e-01,5.165163e-01,4.972634e-01,4.812895e-01,4.677509e-01,4.559805e-01,4.454569e-01,4.357768e-01,4.266331e-01,4.177963e-01,4.090989e-01,4.004225e-01,3.916877e-01,3.828452e-01,3.738691e-01,3.647509e-01,3.554953e-01,3.461164e-01,3.366347e-01,3.270750e-01,3.174644e-01,3.078312e-01,2.982039e-01,2.886099e-01,2.790757e-01,2.696259e-01,2.602832e-01,2.510682e-01,2.419996e-01,2.330937e-01,2.243648e-01,2.158251e-01,2.074851e-01,1.993531e-01,1.914360e-01,1.837391e-01,1.762662e-01,1.690197e-01,1.620011e-01,1.552106e-01,1.486476e-01,1.423104e-01,1.361969e-01,1.303042e-01,1.246287e-01,1.191667e-01,1.139137e-01,1.088651e-01,1.040160e-01,9.936108e-02,9.489514e-02,9.061267e-02,8.650812e-02,8.257589e-02,7.881033e-02,7.520583e-02,7.175678e-02,6.845765e-02,6.530295e-02,6.228729e-02,5.940537e-02,5.665199e-02,5.402209e-02,5.151071e-02,4.911303e-02,4.682436e-02,4.464015e-02,4.255600e-02,4.056764e-02,3.867095e-02,3.686194e-02,3.513677e-02,3.349174e-02,3.192329e-02,3.042799e-02,2.900255e-02,2.764380e-02,2.634871e-02,2.511437e-02,2.393799e-02,2.281690e-02,2.174853e-02,2.073044e-02,1.976029e-02,1.883583e-02,1.795494e-02,1.711555e-02,1.631572e-02,1.555359e-02,1.482738e-02,1.413539e-02,1.347599e-02,1.284766e-02,1.224890e-02,1.167833e-02,1.113460e-02,1.061644e-02,1.012263e-02,9.652023e-03,9.203506e-03,8.776034e-03,8.368606e-03,7.980272e-03,7.610124e-03,7.257299e-03,6.920976e-03,6.600371e-03,6.294741e-03,6.003377e-03,5.725602e-03,5.460775e-03,5.208283e-03,4.967545e-03,4.738006e-03,4.519139e-03,4.310440e-03,4.111431e-03,3.921657e-03,3.740685e-03,3.568101e-03,3.403512e-03,3.246545e-03,3.096841e-03,2.954063e-03,2.817886e-03,2.688003e-03,2.564120e-03,2.445958e-03,2.333250e-03,2.225744e-03,2.123197e-03,2.025379e-03,1.932072e-03,1.843065e-03,1.758161e-03,1.677168e-03,1.599907e-03,1.526204e-03,1.455896e-03,1.388825e-03,1.324843e-03,1.263806e-03,1.205580e-03,1.150034e-03,1.097045e-03,1.046496e-03,9.982744e-04,9.522726e-04,9.083890e-04,8.665260e-04,8.265908e-04,7.884948e-04,7.521535e-04,7.174863e-04,6.844162e-04,6.528699e-04,6.227774e-04,5.940720e-04,5.666898e-04,5.405701e-04,5.156549e-04,4.918889e-04,4.692193e-04,4.475957e-04,4.269700e-04,4.072963e-04,3.885309e-04,3.706320e-04,3.535598e-04,3.372762e-04,3.217449e-04,3.069313e-04,2.928024e-04,2.793265e-04,2.664738e-04,2.542153e-04,2.425237e-04,2.313730e-04,2.207380e-04,2.105951e-04,2.009216e-04,1.916956e-04,1.828967e-04,1.745049e-04,1.665016e-04,1.588688e-04,1.515893e-04,1.446467e-04,1.380256e-04,1.317109e-04,1.256885e-04,1.199449e-04,1.144671e-04,1.092428e-04,1.042603e-04,9.950835e-05,9.497622e-05,9.065372e-05,8.653113e-05,8.259915e-05,7.884895e-05,7.527206e-05,7.186045e-05,6.860641e-05,6.550263e-05,6.254213e-05,5.971823e-05,5.702459e-05,5.445515e-05,5.200412e-05,4.966600e-05,4.743554e-05,4.530772e-05,4.327777e-05,4.134114e-05,3.949348e-05,3.773065e-05,3.604871e-05,3.444389e-05,3.291260e-05,3.145144e-05,3.005712e-05,2.872655e-05,2.745676e-05,2.624493e-05,2.508837e-05,2.398450e-05,2.293088e-05,2.192517e-05,2.096516e-05,2.004872e-05,1.917383e-05,1.833856e-05,1.754109e-05,1.677965e-05,1.605259e-05,1.535831e-05,1.469529e-05,1.406209e-05,1.345734e-05,1.287971e-05,1.232796e-05,1.180090e-05,1.129739e-05,1.081634e-05,1.035673e-05,9.917556e-06,9.497895e-06,9.096846e-06,8.713558e-06,8.347217e-06,7.997047e-06,7.662309e-06,7.342299e-06,7.036344e-06,6.743806e-06,6.464072e-06,6.196561e-06,5.940717e-06,5.696012e-06,5.461941e-06,5.238023e-06,5.023799e-06,4.818831e-06,4.622703e-06,4.435016e-06,4.255390e-06,4.083465e-06,3.918895e-06,3.761351e-06,3.610518e-06,3.466098e-06,3.327804e-06,3.195365e-06,3.068519e-06,2.947019e-06,2.830629e-06,2.719122e-06,2.612283e-06,2.509907e-06,2.411797e-06,2.317766e-06,2.227635e-06,2.141234e-06,2.058400e-06,1.978977e-06,1.902818e-06,1.829780e-06,1.759729e-06,1.692535e-06,1.628075e-06,1.566231e-06,1.506891e-06,1.449947e-06,1.395298e-06,1.342844e-06,1.292493e-06,1.244154e-06,1.197744e-06,1.153179e-06,1.110383e-06,1.069280e-06,1.029799e-06,9.918722e-07,9.554348e-07,9.204244e-07,8.867816e-07,8.544494e-07,8.233735e-07,7.935019e-07,7.647850e-07,7.371752e-07,7.106270e-07,6.850969e-07,6.605433e-07,6.369264e-07,6.142080e-07,5.923518e-07,5.713229e-07,5.510878e-07,5.316145e-07,5.128726e-07,4.948326e-07,4.774666e-07,4.607476e-07,4.446499e-07,4.291490e-07,4.142211e-07,3.998438e-07,3.859953e-07,3.726549e-07,3.598027e-07,3.474196e-07,3.354874e-07,3.239885e-07,3.129063e-07,3.022245e-07,2.919278e-07,2.820013e-07,2.724310e-07,2.632030e-07,2.543046e-07,2.457229e-07,2.374462e-07,2.294628e-07,2.217617e-07,2.143322e-07,2.071642e-07,2.002479e-07,1.935738e-07,1.871331e-07,1.809169e-07,1.749170e-07,1.691254e-07,1.635344e-07,1.581367e-07,1.529252e-07,1.478930e-07,1.430336e-07,1.383408e-07,1.338085e-07,1.294309e-07,1.252023e-07,1.211175e-07,1.171713e-07,1.133587e-07,1.096749e-07,1.061154e-07,1.026757e-07,9.935153e-08,9.613887e-08,9.303376e-08,9.003241e-08,8.713117e-08,8.432654e-08,8.161513e-08,7.899369e-08,7.645909e-08,7.400832e-08,7.163846e-08,6.934672e-08,6.713041e-08,6.498693e-08,6.291378e-08,6.090854e-08,5.896889e-08,5.709260e-08,5.527751e-08,5.352154e-08,5.182267e-08,5.017899e-08,4.858862e-08,4.704976e-08,4.556069e-08,4.411974e-08,4.272528e-08,4.137576e-08,4.006969e-08,3.880561e-08,3.758213e-08,3.639790e-08,3.525162e-08,3.414203e-08,3.306792e-08,3.202811e-08,3.102149e-08,3.004696e-08,2.910347e-08,2.818999e-08,2.730555e-08,2.644920e-08,2.562003e-08,2.481714e-08,2.403969e-08,2.328684e-08,2.255780e-08,2.185180e-08,2.116810e-08,2.050597e-08,1.986472e-08,1.924367e-08,1.864218e-08,1.805962e-08,1.749538e-08,1.694888e-08,1.641954e-08,1.590682e-08,1.541018e-08,1.492912e-08,1.446313e-08,1.401175e-08,1.357449e-08,1.315092e-08,1.274060e-08,1.234312e-08,1.195805e-08,1.158502e-08,1.122363e-08,1.087353e-08,1.053436e-08,1.020577e-08,9.887422e-09,9.579003e-09,9.280199e-09,8.990705e-09,8.710231e-09,8.438492e-09,8.175216e-09,7.920135e-09,7.672995e-09,7.433546e-09,7.201547e-09,6.976766e-09,6.758977e-09,6.547962e-09,6.343508e-09,6.145413e-09,5.953476e-09,5.767506e-09,5.587318e-09,5.412731e-09,5.243570e-09,5.079667e-09,4.920859e-09,4.766987e-09,4.617897e-09,4.473440e-09,4.333474e-09,4.197858e-09,4.066458e-09,3.939142e-09,3.815784e-09,3.696261e-09,3.580453e-09,3.468247e-09,3.359530e-09,3.254194e-09,3.152134e-09,3.053249e-09,2.957440e-09,2.864612e-09,2.774672e-09,2.687532e-09,2.603105e-09,2.521306e-09,2.442053e-09,2.365270e-09,2.290878e-09,2.218803e-09,2.148975e-09,2.081323e-09,2.015780e-09,1.952281e-09,1.890762e-09,1.831162e-09,1.773422e-09,1.717485e-09,1.663293e-09,1.610794e-09,1.559934e-09,1.510663e-09,1.462932e-09,1.416693e-09,1.371900e-09,1.328508e-09,1.286473e-09,1.245754e-09,1.206310e-09,1.168100e-09,1.131088e-09,1.095235e-09,1.060505e-09,1.026865e-09,9.942798e-10,9.627167e-10,9.321442e-10,9.025314e-10,8.738485e-10,8.460667e-10,8.191579e-10,7.930950e-10,7.678516e-10,7.434024e-10,7.197225e-10,6.967880e-10,6.745758e-10,6.530633e-10,6.322287e-10,6.120509e-10,5.925094e-10,5.735844e-10,5.552567e-10,5.375076e-10,5.203191e-10,5.036737e-10,4.875544e-10,4.719448e-10,4.568289e-10,4.421913e-10,4.280171e-10,4.142918e-10,4.010013e-10,3.881320e-10,3.756708e-10,3.636048e-10,3.519216e-10,3.406093e-10,3.296562e-10,3.190511e-10,3.087831e-10,2.988415e-10,2.892161e-10,2.798969e-10,2.708745e-10,2.621393e-10,2.536825e-10,2.454951e-10,2.375688e-10,2.298954e-10,2.224668e-10,2.152753e-10,2.083136e-10,2.015742e-10,1.950503e-10,1.887349e-10,1.826216e-10,1.767039e-10,1.709757e-10,1.654310e-10,1.600639e-10,1.548688e-10,1.498404e-10,1.449733e-10,1.402624e-10,1.357027e-10,1.312896e-10,1.270182e-10,1.228842e-10,1.188831e-10,1.150107e-10,1.112630e-10,1.076360e-10,1.041258e-10,1.007288e-10,9.744128e-11,9.425980e-11,9.118099e-11,8.820158e-11,8.531838e-11,8.252834e-11,7.982848e-11,7.721592e-11,7.468787e-11,7.224164e-11,6.987461e-11,6.758425e-11,6.536810e-11,6.322379e-11,6.114902e-11,5.914155e-11,5.719925e-11,5.532001e-11,5.350181e-11,5.174269e-11,5.004076e-11,4.839419e-11,4.680118e-11,4.526003e-11,4.376906e-11,4.232666e-11,4.093127e-11,3.958136e-11,3.827549e-11,3.701222e-11,3.579019e-11,3.460806e-11,3.346455e-11,3.235841e-11,3.128844e-11,3.025346e-11,2.925234e-11,2.828399e-11,2.734736e-11,2.644140e-11,2.556514e-11,2.471760e-11,2.389786e-11,2.310502e-11,2.233820e-11,2.159657e-11,2.087929e-11,2.018558e-11,1.951469e-11,1.886585e-11,1.823836e-11,1.763153e-11,1.704467e-11,1.647715e-11,1.592833e-11,1.539760e-11,1.488437e-11,1.438807e-11,1.390815e-11,1.344407e-11,1.299533e-11,1.256141e-11,1.214183e-11,1.173612e-11,1.134384e-11,1.096453e-11,1.059778e-11,1.024318e-11,9.900319e-12,9.568823e-12,9.248317e-12,8.938441e-12,8.638845e-12,8.349192e-12,8.069156e-12,7.798421e-12}, {4.538457e+03,2.127986e+03,1.007774e+03,4.884100e+02,2.487786e+02,1.387528e+02,8.813135e+01,6.423665e+01,5.202928e+01,4.473558e+01,3.941941e+01,3.489249e+01,3.073462e+01,2.684109e+01,2.321942e+01,1.990299e+01,1.691833e+01,1.427585e+01,1.197032e+01,9.984533e+00,8.293402e+00,6.867590e+00,5.676239e+00,4.688903e+00,3.876788e+00,3.213487e+00,2.675325e+00,2.241461e+00,1.893811e+00,1.616870e+00,1.397482e+00,1.224586e+00,1.088958e+00,9.829630e-01,9.003260e-01,8.359268e-01,7.856166e-01,7.460572e-01,7.145837e-01,6.890860e-01,6.679086e-01,6.497665e-01,6.336744e-01,6.188883e-01,6.048568e-01,5.911810e-01,5.775825e-01,5.638757e-01,5.499474e-01,5.357385e-01,5.212305e-01,5.064345e-01,4.913823e-01,4.761193e-01,4.607000e-01,4.451829e-01,4.296282e-01,4.140954e-01,3.986413e-01,3.833192e-01,3.681783e-01,3.532629e-01,3.386122e-01,3.242607e-01,3.102379e-01,2.965686e-01,2.832733e-01,2.703681e-01,2.578655e-01,2.457746e-01,2.341010e-01,2.228479e-01,2.120158e-01,2.016028e-01,1.916055e-01,1.820184e-01,1.728348e-01,1.640469e-01,1.556456e-01,1.476211e-01,1.399632e-01,1.326607e-01,1.257024e-01,1.190767e-01,1.127718e-01,1.067760e-01,1.010772e-01,9.566385e-02,9.052417e-02,8.564670e-02,8.102016e-02,7.663351e-02,7.247597e-02,6.853706e-02,6.480661e-02,6.127477e-02,5.793201e-02,5.476914e-02,5.177732e-02,4.894803e-02,4.627311e-02,4.374472e-02,4.135534e-02,3.909780e-02,3.696523e-02,3.495107e-02,3.304906e-02,3.125325e-02,2.955796e-02,2.795777e-02,2.644754e-02,2.502239e-02,2.367767e-02,2.240896e-02,2.121209e-02,2.008309e-02,1.901818e-02,1.801380e-02,1.706658e-02,1.617330e-02,1.533094e-02,1.453663e-02,1.378766e-02,1.308146e-02,1.241560e-02,1.178779e-02,1.119587e-02,1.063778e-02,1.011159e-02,9.615470e-03,9.147698e-03,8.706644e-03,8.290768e-03,7.898620e-03,7.528831e-03,7.180107e-03,6.851231e-03,6.541051e-03,6.248483e-03,5.972505e-03,5.712152e-03,5.466515e-03,5.234736e-03,5.016008e-03,4.809569e-03,4.614700e-03,4.430726e-03,4.257009e-03,4.092948e-03,3.937977e-03,3.791563e-03,3.653203e-03,3.522425e-03,3.398783e-03,3.281857e-03,3.171251e-03,3.066593e-03,2.967533e-03,2.873741e-03,2.784905e-03,2.700732e-03,2.620948e-03,2.545293e-03,2.473522e-03,2.405406e-03,2.340729e-03,2.279286e-03,2.220887e-03,2.165351e-03,2.112508e-03,2.062198e-03,2.014272e-03,1.968589e-03,1.925014e-03,1.883424e-03,1.843700e-03,1.805733e-03,1.769418e-03,1.734657e-03,1.701358e-03,1.669436e-03,1.638809e-03,1.609400e-03,1.581138e-03,1.553955e-03,1.527788e-03,1.502578e-03,1.478268e-03,1.454807e-03,1.432144e-03,1.410234e-03,1.389034e-03,1.368501e-03,1.348598e-03,1.329290e-03,1.310541e-03,1.292322e-03,1.274601e-03,1.257352e-03,1.240548e-03,1.224164e-03,1.208179e-03,1.192569e-03,1.177315e-03,1.162399e-03,1.147802e-03,1.133508e-03,1.119502e-03,1.105769e-03,1.092295e-03,1.079068e-03,1.066075e-03,1.053307e-03,1.040751e-03,1.028400e-03,1.016243e-03,1.004271e-03,9.924784e-04,9.808561e-04,9.693976e-04,9.580963e-04,9.469464e-04,9.359421e-04,9.250782e-04,9.143498e-04,9.037523e-04,8.932815e-04,8.829334e-04,8.727042e-04,8.625906e-04,8.525893e-04,8.426972e-04,8.329116e-04,8.232299e-04,8.136496e-04,8.041685e-04,7.947844e-04,7.854954e-04,7.762995e-04,7.671952e-04,7.581808e-04,7.492548e-04,7.404157e-04,7.316623e-04,7.229934e-04,7.144078e-04,7.059044e-04,6.974822e-04,6.891403e-04,6.808777e-04,6.726937e-04,6.645874e-04,6.565581e-04,6.486051e-04,6.407277e-04,6.329252e-04,6.251971e-04,6.175428e-04,6.099617e-04,6.024532e-04,5.950170e-04,5.876524e-04,5.803591e-04,5.731364e-04,5.659841e-04,5.589016e-04,5.518886e-04,5.449446e-04,5.380691e-04,5.312619e-04,5.245225e-04,5.178505e-04,5.112456e-04,5.047072e-04,4.982352e-04,4.918290e-04,4.854884e-04,4.792129e-04,4.730022e-04,4.668558e-04,4.607735e-04,4.547548e-04,4.487994e-04,4.429069e-04,4.370769e-04,4.313091e-04,4.256030e-04,4.199582e-04,4.143745e-04,4.088513e-04,4.033884e-04,3.979853e-04,3.926417e-04,3.873571e-04,3.821311e-04,3.769634e-04,3.718535e-04,3.668011e-04,3.618057e-04,3.568670e-04,3.519845e-04,3.471578e-04,3.423866e-04,3.376703e-04,3.330086e-04,3.284011e-04,3.238473e-04,3.193469e-04,3.148994e-04,3.105044e-04,3.061614e-04,3.018701e-04,2.976301e-04,2.934408e-04,2.893019e-04,2.852130e-04,2.811736e-04,2.771832e-04,2.732416e-04,2.693482e-04,2.655026e-04,2.617044e-04,2.579532e-04,2.542485e-04,2.505900e-04,2.469771e-04,2.434095e-04,2.398867e-04,2.364084e-04,2.329741e-04,2.295833e-04,2.262357e-04,2.229308e-04,2.196682e-04,2.164476e-04,2.132684e-04,2.101303e-04,2.070329e-04,2.039757e-04,2.009583e-04,1.979804e-04,1.950414e-04,1.921411e-04,1.892791e-04,1.864548e-04,1.836679e-04,1.809181e-04,1.782049e-04,1.755279e-04,1.728867e-04,1.702810e-04,1.677104e-04,1.651744e-04,1.626727e-04,1.602050e-04,1.577708e-04,1.553697e-04,1.530014e-04,1.506656e-04,1.483618e-04,1.460897e-04,1.438489e-04,1.416391e-04,1.394599e-04,1.373109e-04,1.351919e-04,1.331024e-04,1.310421e-04,1.290106e-04,1.270077e-04,1.250329e-04,1.230860e-04,1.211666e-04,1.192744e-04,1.174090e-04,1.155702e-04,1.137576e-04,1.119708e-04,1.102096e-04,1.084737e-04,1.067627e-04,1.050763e-04,1.034142e-04,1.017762e-04,1.001619e-04,9.857100e-05,9.700324e-05,9.545832e-05,9.393595e-05,9.243584e-05,9.095770e-05,8.950126e-05,8.806623e-05,8.665235e-05,8.525933e-05,8.388692e-05,8.253483e-05,8.120281e-05,7.989060e-05,7.859792e-05,7.732454e-05,7.607019e-05,7.483462e-05,7.361759e-05,7.241884e-05,7.123813e-05,7.007523e-05,6.892989e-05,6.780188e-05,6.669097e-05,6.559692e-05,6.451950e-05,6.345850e-05,6.241368e-05,6.138483e-05,6.037173e-05,5.937416e-05,5.839190e-05,5.742476e-05,5.647252e-05,5.553496e-05,5.461190e-05,5.370313e-05,5.280844e-05,5.192765e-05,5.106056e-05,5.020697e-05,4.936669e-05,4.853954e-05,4.772534e-05,4.692389e-05,4.613502e-05,4.535856e-05,4.459431e-05,4.384211e-05,4.310179e-05,4.237317e-05,4.165609e-05,4.095037e-05,4.025587e-05,3.957241e-05,3.889983e-05,3.823798e-05,3.758670e-05,3.694584e-05,3.631523e-05,3.569475e-05,3.508422e-05,3.448352e-05,3.389249e-05,3.331099e-05,3.273888e-05,3.217602e-05,3.162228e-05,3.107751e-05,3.054159e-05,3.001438e-05,2.949576e-05,2.898558e-05,2.848374e-05,2.799009e-05,2.750453e-05,2.702692e-05,2.655714e-05,2.609508e-05,2.564063e-05,2.519365e-05,2.475405e-05,2.432170e-05,2.389651e-05,2.347835e-05,2.306712e-05,2.266271e-05,2.226502e-05,2.187395e-05,2.148939e-05,2.111124e-05,2.073941e-05,2.037379e-05,2.001429e-05,1.966081e-05,1.931326e-05,1.897155e-05,1.863558e-05,1.830527e-05,1.798052e-05,1.766126e-05,1.734738e-05,1.703882e-05,1.673548e-05,1.643728e-05,1.614414e-05,1.585598e-05,1.557272e-05,1.529428e-05,1.502059e-05,1.475157e-05,1.448715e-05,1.422725e-05,1.397179e-05,1.372072e-05,1.347395e-05,1.323142e-05,1.299306e-05,1.275881e-05,1.252859e-05,1.230234e-05,1.208000e-05,1.186150e-05,1.164678e-05,1.143578e-05,1.122844e-05,1.102470e-05,1.082450e-05,1.062778e-05,1.043448e-05,1.024455e-05,1.005794e-05,9.874586e-06,9.694437e-06,9.517440e-06,9.343542e-06,9.172694e-06,9.004843e-06,8.839941e-06,8.677938e-06,8.518787e-06,8.362439e-06,8.208849e-06,8.057969e-06,7.909755e-06,7.764162e-06,7.621146e-06,7.480663e-06,7.342672e-06,7.207130e-06,7.073997e-06,6.943230e-06,6.814791e-06,6.688641e-06,6.564739e-06,6.443049e-06,6.323533e-06,6.206153e-06,6.090874e-06,5.977660e-06,5.866475e-06,5.757285e-06,5.650055e-06,5.544753e-06,5.441346e-06,5.339800e-06,5.240083e-06,5.142166e-06,5.046015e-06,4.951602e-06,4.858895e-06,4.767866e-06,4.678486e-06,4.590726e-06,4.504557e-06,4.419954e-06,4.336887e-06,4.255331e-06,4.175259e-06,4.096646e-06,4.019466e-06,3.943693e-06,3.869304e-06,3.796275e-06,3.724580e-06,3.654198e-06,3.585105e-06,3.517278e-06,3.450696e-06,3.385335e-06,3.321176e-06,3.258195e-06,3.196374e-06,3.135691e-06,3.076126e-06,3.017660e-06,2.960272e-06,2.903944e-06,2.848657e-06,2.794393e-06,2.741133e-06,2.688859e-06,2.637555e-06,2.587201e-06,2.537783e-06,2.489282e-06,2.441683e-06,2.394969e-06,2.349124e-06,2.304134e-06,2.259982e-06,2.216653e-06,2.174133e-06,2.132408e-06,2.091462e-06,2.051282e-06,2.011853e-06,1.973164e-06,1.935199e-06,1.897946e-06,1.861392e-06,1.825524e-06,1.790331e-06,1.755799e-06,1.721916e-06,1.688672e-06,1.656053e-06,1.624050e-06,1.592650e-06,1.561842e-06,1.531617e-06,1.501962e-06,1.472868e-06,1.444325e-06,1.416322e-06,1.388849e-06,1.361897e-06,1.335456e-06,1.309517e-06,1.284070e-06,1.259107e-06,1.234618e-06,1.210595e-06,1.187030e-06,1.163913e-06,1.141236e-06,1.118992e-06,1.097172e-06,1.075768e-06,1.054774e-06,1.034180e-06,1.013980e-06,9.941666e-07,9.747323e-07,9.556701e-07,9.369732e-07,9.186347e-07,9.006479e-07,8.830062e-07,8.657033e-07,8.487328e-07,8.320885e-07,8.157643e-07,7.997542e-07,7.840523e-07,7.686528e-07,7.535500e-07,7.387385e-07,7.242126e-07,7.099671e-07,6.959967e-07,6.822962e-07,6.688605e-07,6.556846e-07,6.427636e-07,6.300927e-07,6.176672e-07,6.054825e-07,5.935340e-07,5.818171e-07,5.703277e-07,5.590612e-07,5.480136e-07,5.371806e-07,5.265582e-07,5.161424e-07,5.059292e-07,4.959148e-07,4.860955e-07,4.764675e-07,4.670271e-07,4.577708e-07,4.486951e-07,4.397965e-07,4.310717e-07,4.225173e-07,4.141301e-07,4.059068e-07,3.978444e-07,3.899398e-07,3.821898e-07,3.745917e-07,3.671424e-07,3.598391e-07,3.526790e-07,3.456593e-07,3.387774e-07,3.320306e-07,3.254163e-07,3.189319e-07,3.125750e-07,3.063430e-07,3.002337e-07,2.942445e-07}, {5.319917e+03,2.396907e+03,1.092834e+03,5.129547e+02,2.566399e+02,1.438927e+02,9.392880e+01,7.075475e+01,5.859640e+01,5.075318e+01,4.453611e+01,3.897778e+01,3.380838e+01,2.900906e+01,2.462642e+01,2.070281e+01,1.725621e+01,1.427967e+01,1.174717e+01,9.620530e+00,7.855382e+00,6.405535e+00,5.226014e+00,4.274908e+00,3.514380e+00,2.911073e+00,2.436130e+00,2.064965e+00,1.776901e+00,1.554744e+00,1.384340e+00,1.254147e+00,1.154837e+00,1.078939e+00,1.020521e+00,9.749213e-01,9.385120e-01,9.085039e-01,8.827812e-01,8.597650e-01,8.383009e-01,8.175671e-01,7.970000e-01,7.762336e-01,7.550514e-01,7.333484e-01,7.111000e-01,6.883392e-01,6.651374e-01,6.415906e-01,6.178085e-01,5.939068e-01,5.700009e-01,5.462020e-01,5.226145e-01,4.993335e-01,4.764444e-01,4.540220e-01,4.321309e-01,4.108251e-01,3.901491e-01,3.701382e-01,3.508193e-01,3.322117e-01,3.143277e-01,2.971736e-01,2.807501e-01,2.650534e-01,2.500756e-01,2.358053e-01,2.222283e-01,2.093278e-01,1.970852e-01,1.854805e-01,1.744922e-01,1.640983e-01,1.542759e-01,1.450020e-01,1.362533e-01,1.280066e-01,1.202390e-01,1.129277e-01,1.060506e-01,9.958582e-02,9.351235e-02,8.780964e-02,8.245787e-02,7.743794e-02,7.273148e-02,6.832086e-02,6.418919e-02,6.032035e-02,5.669894e-02,5.331030e-02,5.014050e-02,4.717629e-02,4.440512e-02,4.181507e-02,3.939490e-02,3.713395e-02,3.502216e-02,3.305006e-02,3.120868e-02,2.948961e-02,2.788491e-02,2.638711e-02,2.498920e-02,2.368458e-02,2.246707e-02,2.133086e-02,2.027049e-02,1.928088e-02,1.835722e-02,1.749505e-02,1.669017e-02,1.593865e-02,1.523683e-02,1.458128e-02,1.396879e-02,1.339637e-02,1.286122e-02,1.236075e-02,1.189250e-02,1.145421e-02,1.104377e-02,1.065919e-02,1.029865e-02,9.960423e-03,9.642921e-03,9.344656e-03,9.064247e-03,8.800408e-03,8.551944e-03,8.317743e-03,8.096771e-03,7.888070e-03,7.690746e-03,7.503972e-03,7.326979e-03,7.159055e-03,6.999536e-03,6.847811e-03,6.703309e-03,6.565504e-03,6.433907e-03,6.308065e-03,6.187562e-03,6.072008e-03,5.961045e-03,5.854343e-03,5.751594e-03,5.652516e-03,5.556847e-03,5.464346e-03,5.374790e-03,5.287975e-03,5.203709e-03,5.121819e-03,5.042145e-03,4.964538e-03,4.888862e-03,4.814992e-03,4.742812e-03,4.672217e-03,4.603111e-03,4.535403e-03,4.469012e-03,4.403863e-03,4.339888e-03,4.277023e-03,4.215212e-03,4.154402e-03,4.094544e-03,4.035595e-03,3.977514e-03,3.920267e-03,3.863818e-03,3.808137e-03,3.753198e-03,3.698975e-03,3.645446e-03,3.592588e-03,3.540384e-03,3.488817e-03,3.437871e-03,3.387531e-03,3.337786e-03,3.288622e-03,3.240031e-03,3.192002e-03,3.144526e-03,3.097596e-03,3.051203e-03,3.005343e-03,2.960008e-03,2.915193e-03,2.870893e-03,2.827103e-03,2.783819e-03,2.741037e-03,2.698753e-03,2.656963e-03,2.615665e-03,2.574854e-03,2.534528e-03,2.494684e-03,2.455318e-03,2.416429e-03,2.378014e-03,2.340070e-03,2.302593e-03,2.265583e-03,2.229035e-03,2.192948e-03,2.157319e-03,2.122145e-03,2.087423e-03,2.053151e-03,2.019326e-03,1.985946e-03,1.953007e-03,1.920507e-03,1.888442e-03,1.856811e-03,1.825609e-03,1.794834e-03,1.764483e-03,1.734553e-03,1.705040e-03,1.675941e-03,1.647253e-03,1.618973e-03,1.591097e-03,1.563622e-03,1.536544e-03,1.509860e-03,1.483567e-03,1.457661e-03,1.432138e-03,1.406994e-03,1.382227e-03,1.357832e-03,1.333806e-03,1.310144e-03,1.286844e-03,1.263901e-03,1.241312e-03,1.219073e-03,1.197180e-03,1.175630e-03,1.154417e-03,1.133540e-03,1.112993e-03,1.092773e-03,1.072876e-03,1.053299e-03,1.034037e-03,1.015087e-03,9.964447e-04,9.781064e-04,9.600683e-04,9.423266e-04,9.248776e-04,9.077175e-04,8.908425e-04,8.742490e-04,8.579331e-04,8.418912e-04,8.261196e-04,8.106147e-04,7.953727e-04,7.803901e-04,7.656633e-04,7.511887e-04,7.369627e-04,7.229819e-04,7.092428e-04,6.957418e-04,6.824755e-04,6.694406e-04,6.566336e-04,6.440512e-04,6.316900e-04,6.195468e-04,6.076182e-04,5.959012e-04,5.843923e-04,5.730886e-04,5.619868e-04,5.510838e-04,5.403766e-04,5.298621e-04,5.195372e-04,5.093992e-04,4.994449e-04,4.896714e-04,4.800760e-04,4.706557e-04,4.614077e-04,4.523293e-04,4.434177e-04,4.346702e-04,4.260841e-04,4.176568e-04,4.093857e-04,4.012682e-04,3.933016e-04,3.854837e-04,3.778117e-04,3.702834e-04,3.628962e-04,3.556479e-04,3.485360e-04,3.415582e-04,3.347123e-04,3.279960e-04,3.214070e-04,3.149432e-04,3.086025e-04,3.023826e-04,2.962815e-04,2.902971e-04,2.844274e-04,2.786704e-04,2.730240e-04,2.674864e-04,2.620556e-04,2.567297e-04,2.515069e-04,2.463853e-04,2.413632e-04,2.364386e-04,2.316099e-04,2.268754e-04,2.222334e-04,2.176821e-04,2.132200e-04,2.088454e-04,2.045567e-04,2.003523e-04,1.962308e-04,1.921906e-04,1.882301e-04,1.843480e-04,1.805428e-04,1.768130e-04,1.731573e-04,1.695742e-04,1.660625e-04,1.626208e-04,1.592478e-04,1.559421e-04,1.527026e-04,1.495280e-04,1.464171e-04,1.433686e-04,1.403814e-04,1.374543e-04,1.345862e-04,1.317760e-04,1.290225e-04,1.263247e-04,1.236814e-04,1.210918e-04,1.185546e-04,1.160690e-04,1.136340e-04,1.112484e-04,1.089115e-04,1.066222e-04,1.043796e-04,1.021829e-04,1.000311e-04,9.792333e-05,9.585878e-05,9.383657e-05,9.185588e-05,8.991590e-05,8.801582e-05,8.615487e-05,8.433227e-05,8.254727e-05,8.079912e-05,7.908710e-05,7.741048e-05,7.576857e-05,7.416068e-05,7.258613e-05,7.104426e-05,6.953441e-05,6.805594e-05,6.660824e-05,6.519068e-05,6.380265e-05,6.244357e-05,6.111286e-05,5.980993e-05,5.853424e-05,5.728524e-05,5.606238e-05,5.486513e-05,5.369298e-05,5.254543e-05,5.142196e-05,5.032209e-05,4.924535e-05,4.819125e-05,4.715934e-05,4.614917e-05,4.516029e-05,4.419227e-05,4.324467e-05,4.231709e-05,4.140911e-05,4.052033e-05,3.965035e-05,3.879879e-05,3.796526e-05,3.714940e-05,3.635084e-05,3.556923e-05,3.480421e-05,3.405544e-05,3.332258e-05,3.260531e-05,3.190330e-05,3.121623e-05,3.054380e-05,2.988569e-05,2.924161e-05,2.861127e-05,2.799439e-05,2.739067e-05,2.679985e-05,2.622165e-05,2.565582e-05,2.510209e-05,2.456020e-05,2.402992e-05,2.351100e-05,2.300319e-05,2.250627e-05,2.202000e-05,2.154416e-05,2.107854e-05,2.062291e-05,2.017707e-05,1.974081e-05,1.931392e-05,1.889621e-05,1.848748e-05,1.808755e-05,1.769623e-05,1.731333e-05,1.693867e-05,1.657209e-05,1.621341e-05,1.586246e-05,1.551908e-05,1.518310e-05,1.485437e-05,1.453274e-05,1.421805e-05,1.391016e-05,1.360891e-05,1.331418e-05,1.302581e-05,1.274368e-05,1.246764e-05,1.219758e-05,1.193336e-05,1.167485e-05,1.142194e-05,1.117450e-05,1.093242e-05,1.069558e-05,1.046387e-05,1.023718e-05,1.001540e-05,9.798429e-06,9.586158e-06,9.378488e-06,9.175321e-06,8.976559e-06,8.782107e-06,8.591873e-06,8.405766e-06,8.223697e-06,8.045578e-06,7.871324e-06,7.700853e-06,7.534082e-06,7.370931e-06,7.211322e-06,7.055179e-06,6.902426e-06,6.752991e-06,6.606801e-06,6.463787e-06,6.323879e-06,6.187010e-06,6.053115e-06,5.922129e-06,5.793989e-06,5.668633e-06,5.546001e-06,5.426034e-06,5.308674e-06,5.193865e-06,5.081550e-06,4.971676e-06,4.864191e-06,4.759041e-06,4.656177e-06,4.555548e-06,4.457107e-06,4.360805e-06,4.266595e-06,4.174434e-06,4.084275e-06,3.996076e-06,3.909794e-06,3.825386e-06,3.742813e-06,3.662035e-06,3.583011e-06,3.505705e-06,3.430078e-06,3.356095e-06,3.283718e-06,3.212914e-06,3.143648e-06,3.075887e-06,3.009597e-06,2.944748e-06,2.881306e-06,2.819242e-06,2.758526e-06,2.699128e-06,2.641019e-06,2.584172e-06,2.528558e-06,2.474152e-06,2.420926e-06,2.368855e-06,2.317914e-06,2.268078e-06,2.219323e-06,2.171626e-06,2.124963e-06,2.079311e-06,2.034650e-06,1.990956e-06,1.948210e-06,1.906390e-06,1.865476e-06,1.825449e-06,1.786289e-06,1.747976e-06,1.710494e-06,1.673823e-06,1.637946e-06,1.602846e-06,1.568506e-06,1.534908e-06,1.502038e-06,1.469878e-06,1.438414e-06,1.407630e-06,1.377512e-06,1.348045e-06,1.319215e-06,1.291008e-06,1.263411e-06,1.236409e-06,1.209991e-06,1.184143e-06,1.158853e-06,1.134109e-06,1.109899e-06,1.086211e-06,1.063035e-06,1.040358e-06,1.018170e-06,9.964604e-07,9.752189e-07,9.544350e-07,9.340990e-07,9.142010e-07,8.947316e-07,8.756813e-07,8.570411e-07,8.388021e-07,8.209556e-07,8.034929e-07,7.864059e-07,7.696862e-07,7.533260e-07,7.373174e-07,7.216528e-07,7.063247e-07,6.913259e-07,6.766491e-07,6.622873e-07,6.482339e-07,6.344819e-07,6.210250e-07,6.078567e-07,5.949708e-07,5.823611e-07,5.700217e-07,5.579466e-07,5.461302e-07,5.345669e-07,5.232511e-07,5.121776e-07,5.013410e-07,4.907363e-07,4.803585e-07,4.702025e-07,4.602637e-07,4.505373e-07,4.410187e-07,4.317034e-07,4.225872e-07,4.136655e-07,4.049343e-07,3.963895e-07,3.880269e-07,3.798427e-07,3.718331e-07,3.639942e-07,3.563223e-07,3.488140e-07,3.414656e-07,3.342737e-07,3.272349e-07,3.203459e-07,3.136036e-07,3.070046e-07,3.005461e-07,2.942248e-07,2.880380e-07,2.819826e-07,2.760559e-07,2.702551e-07,2.645775e-07,2.590204e-07,2.535812e-07,2.482575e-07,2.430467e-07,2.379464e-07,2.329543e-07,2.280680e-07,2.232852e-07,2.186038e-07,2.140215e-07,2.095362e-07,2.051459e-07,2.008486e-07,1.966421e-07,1.925246e-07,1.884942e-07,1.845490e-07,1.806872e-07,1.769071e-07,1.732067e-07,1.695846e-07,1.660389e-07,1.625680e-07,1.591704e-07,1.558445e-07,1.525888e-07,1.494017e-07,1.462818e-07,1.432276e-07,1.402379e-07,1.373111e-07,1.344459e-07,1.316411e-07,1.288953e-07,1.262074e-07,1.235759e-07,1.209999e-07,1.184780e-07,1.160091e-07,1.135921e-07,1.112260e-07,1.089095e-07,1.066417e-07,1.044215e-07,1.022479e-07,1.001200e-07,9.803670e-08,9.599712e-08,9.400031e-08,9.204539e-08,9.013144e-08,8.825762e-08,8.642306e-08}, {6.183556e+03,2.677181e+03,1.175547e+03,5.352035e+02,2.640588e+02,1.496999e+02,1.006781e+02,7.804183e+01,6.557957e+01,5.683395e+01,4.943854e+01,4.266704e+01,3.639298e+01,3.066551e+01,2.555019e+01,2.108010e+01,1.724985e+01,1.402391e+01,1.134761e+01,9.156735e+00,7.384625e+00,5.966869e+00,4.844110e+00,3.963461e+00,3.278984e+00,2.751567e+00,2.348460e+00,2.042616e+00,1.811980e+00,1.638771e+00,1.508806e+00,1.410898e+00,1.336315e+00,1.278324e+00,1.231797e+00,1.192888e+00,1.158764e+00,1.127380e+00,1.097305e+00,1.067574e+00,1.037577e+00,1.006965e+00,9.755801e-01,9.434000e-01,9.104952e-01,8.769960e-01,8.430687e-01,8.088973e-01,7.746703e-01,7.405714e-01,7.067735e-01,6.734347e-01,6.406957e-01,6.086788e-01,5.774883e-01,5.472101e-01,5.179134e-01,4.896517e-01,4.624638e-01,4.363757e-01,4.114021e-01,3.875472e-01,3.648069e-01,3.431693e-01,3.226164e-01,3.031250e-01,2.846676e-01,2.672133e-01,2.507287e-01,2.351782e-01,2.205250e-01,2.067315e-01,1.937596e-01,1.815711e-01,1.701281e-01,1.593932e-01,1.493298e-01,1.399020e-01,1.310751e-01,1.228155e-01,1.150908e-01,1.078699e-01,1.011228e-01,9.482120e-02,8.893776e-02,8.344666e-02,7.832330e-02,7.354440e-02,6.908791e-02,6.493296e-02,6.105991e-02,5.745020e-02,5.408637e-02,5.095199e-02,4.803165e-02,4.531086e-02,4.277602e-02,4.041442e-02,3.821413e-02,3.616400e-02,3.425360e-02,3.247317e-02,3.081363e-02,2.926647e-02,2.782376e-02,2.647812e-02,2.522265e-02,2.405094e-02,2.295701e-02,2.193530e-02,2.098064e-02,2.008820e-02,1.925352e-02,1.847242e-02,1.774106e-02,1.705583e-02,1.641341e-02,1.581069e-02,1.524480e-02,1.471308e-02,1.421306e-02,1.374244e-02,1.329909e-02,1.288105e-02,1.248648e-02,1.211370e-02,1.176113e-02,1.142733e-02,1.111095e-02,1.081074e-02,1.052556e-02,1.025433e-02,9.996065e-03,9.749856e-03,9.514857e-03,9.290287e-03,9.075422e-03,8.869595e-03,8.672188e-03,8.482631e-03,8.300395e-03,8.124994e-03,7.955976e-03,7.792925e-03,7.635457e-03,7.483216e-03,7.335875e-03,7.193130e-03,7.054702e-03,6.920332e-03,6.789782e-03,6.662831e-03,6.539275e-03,6.418927e-03,6.301614e-03,6.187174e-03,6.075460e-03,5.966335e-03,5.859673e-03,5.755357e-03,5.653280e-03,5.553340e-03,5.455447e-03,5.359514e-03,5.265463e-03,5.173221e-03,5.082720e-03,4.993897e-03,4.906693e-03,4.821055e-03,4.736933e-03,4.654279e-03,4.573050e-03,4.493207e-03,4.414710e-03,4.337524e-03,4.261618e-03,4.186959e-03,4.113519e-03,4.041270e-03,3.970187e-03,3.900245e-03,3.831423e-03,3.763698e-03,3.697050e-03,3.631459e-03,3.566907e-03,3.503376e-03,3.440849e-03,3.379311e-03,3.318745e-03,3.259137e-03,3.200473e-03,3.142737e-03,3.085918e-03,3.030002e-03,2.974976e-03,2.920828e-03,2.867545e-03,2.815117e-03,2.763531e-03,2.712777e-03,2.662843e-03,2.613718e-03,2.565392e-03,2.517854e-03,2.471094e-03,2.425102e-03,2.379867e-03,2.335380e-03,2.291631e-03,2.248609e-03,2.206306e-03,2.164712e-03,2.123817e-03,2.083612e-03,2.044088e-03,2.005235e-03,1.967045e-03,1.929508e-03,1.892616e-03,1.856359e-03,1.820728e-03,1.785716e-03,1.751312e-03,1.717510e-03,1.684299e-03,1.651671e-03,1.619619e-03,1.588133e-03,1.557206e-03,1.526829e-03,1.496994e-03,1.467694e-03,1.438919e-03,1.410662e-03,1.382916e-03,1.355671e-03,1.328922e-03,1.302660e-03,1.276877e-03,1.251567e-03,1.226721e-03,1.202332e-03,1.178393e-03,1.154897e-03,1.131837e-03,1.109206e-03,1.086996e-03,1.065202e-03,1.043815e-03,1.022830e-03,1.002239e-03,9.820369e-04,9.622163e-04,9.427709e-04,9.236946e-04,9.049809e-04,8.866239e-04,8.686173e-04,8.509552e-04,8.336317e-04,8.166409e-04,7.999771e-04,7.836345e-04,7.676076e-04,7.518909e-04,7.364787e-04,7.213659e-04,7.065471e-04,6.920170e-04,6.777705e-04,6.638026e-04,6.501083e-04,6.366825e-04,6.235205e-04,6.106175e-04,5.979688e-04,5.855698e-04,5.734159e-04,5.615025e-04,5.498254e-04,5.383801e-04,5.271623e-04,5.161679e-04,5.053927e-04,4.948326e-04,4.844836e-04,4.743418e-04,4.644033e-04,4.546642e-04,4.451209e-04,4.357696e-04,4.266066e-04,4.176285e-04,4.088317e-04,4.002128e-04,3.917683e-04,3.834950e-04,3.753895e-04,3.674487e-04,3.596694e-04,3.520485e-04,3.445829e-04,3.372696e-04,3.301057e-04,3.230883e-04,3.162145e-04,3.094816e-04,3.028868e-04,2.964274e-04,2.901008e-04,2.839044e-04,2.778355e-04,2.718918e-04,2.660708e-04,2.603700e-04,2.547870e-04,2.493197e-04,2.439655e-04,2.387224e-04,2.335882e-04,2.285605e-04,2.236375e-04,2.188169e-04,2.140967e-04,2.094749e-04,2.049496e-04,2.005188e-04,1.961806e-04,1.919332e-04,1.877747e-04,1.837034e-04,1.797176e-04,1.758154e-04,1.719952e-04,1.682553e-04,1.645942e-04,1.610102e-04,1.575018e-04,1.540674e-04,1.507056e-04,1.474148e-04,1.441936e-04,1.410406e-04,1.379544e-04,1.349337e-04,1.319770e-04,1.290832e-04,1.262509e-04,1.234788e-04,1.207658e-04,1.181105e-04,1.155119e-04,1.129687e-04,1.104798e-04,1.080442e-04,1.056606e-04,1.033280e-04,1.010455e-04,9.881181e-05,9.662608e-05,9.448728e-05,9.239443e-05,9.034659e-05,8.834282e-05,8.638219e-05,8.446382e-05,8.258682e-05,8.075034e-05,7.895352e-05,7.719554e-05,7.547559e-05,7.379287e-05,7.214660e-05,7.053602e-05,6.896038e-05,6.741895e-05,6.591101e-05,6.443585e-05,6.299278e-05,6.158114e-05,6.020026e-05,5.884948e-05,5.752818e-05,5.623573e-05,5.497152e-05,5.373495e-05,5.252544e-05,5.134242e-05,5.018532e-05,4.905360e-05,4.794671e-05,4.686412e-05,4.580533e-05,4.476982e-05,4.375709e-05,4.276667e-05,4.179807e-05,4.085083e-05,3.992449e-05,3.901861e-05,3.813274e-05,3.726646e-05,3.641935e-05,3.559100e-05,3.478101e-05,3.398897e-05,3.321451e-05,3.245724e-05,3.171679e-05,3.099281e-05,3.028494e-05,2.959283e-05,2.891613e-05,2.825452e-05,2.760768e-05,2.697527e-05,2.635698e-05,2.575252e-05,2.516158e-05,2.458386e-05,2.401909e-05,2.346697e-05,2.292723e-05,2.239961e-05,2.188384e-05,2.137965e-05,2.088680e-05,2.040505e-05,1.993413e-05,1.947383e-05,1.902391e-05,1.858413e-05,1.815429e-05,1.773415e-05,1.732351e-05,1.692215e-05,1.652988e-05,1.614649e-05,1.577179e-05,1.540559e-05,1.504769e-05,1.469792e-05,1.435610e-05,1.402204e-05,1.369559e-05,1.337656e-05,1.306480e-05,1.276015e-05,1.246244e-05,1.217152e-05,1.188725e-05,1.160947e-05,1.133804e-05,1.107282e-05,1.081367e-05,1.056045e-05,1.031303e-05,1.007129e-05,9.835096e-06,9.604322e-06,9.378849e-06,9.158557e-06,8.943332e-06,8.733060e-06,8.527628e-06,8.326930e-06,8.130857e-06,7.939307e-06,7.752178e-06,7.569369e-06,7.390785e-06,7.216329e-06,7.045908e-06,6.879432e-06,6.716811e-06,6.557958e-06,6.402789e-06,6.251218e-06,6.103166e-06,5.958552e-06,5.817299e-06,5.679330e-06,5.544570e-06,5.412947e-06,5.284389e-06,5.158827e-06,5.036192e-06,4.916418e-06,4.799439e-06,4.685192e-06,4.573615e-06,4.464646e-06,4.358225e-06,4.254296e-06,4.152800e-06,4.053681e-06,3.956886e-06,3.862361e-06,3.770054e-06,3.679914e-06,3.591892e-06,3.505938e-06,3.422005e-06,3.340047e-06,3.260018e-06,3.181873e-06,3.105570e-06,3.031066e-06,2.958318e-06,2.887288e-06,2.817934e-06,2.750219e-06,2.684104e-06,2.619552e-06,2.556527e-06,2.494994e-06,2.434918e-06,2.376265e-06,2.319002e-06,2.263097e-06,2.208519e-06,2.155236e-06,2.103218e-06,2.052437e-06,2.002862e-06,1.954466e-06,1.907222e-06,1.861102e-06,1.816081e-06,1.772132e-06,1.729231e-06,1.687353e-06,1.646474e-06,1.606571e-06,1.567620e-06,1.529600e-06,1.492489e-06,1.456265e-06,1.420908e-06,1.386397e-06,1.352712e-06,1.319834e-06,1.287744e-06,1.256424e-06,1.225854e-06,1.196018e-06,1.166898e-06,1.138478e-06,1.110740e-06,1.083669e-06,1.057249e-06,1.031465e-06,1.006301e-06,9.817424e-07,9.577757e-07,9.343864e-07,9.115609e-07,8.892858e-07,8.675480e-07,8.463349e-07,8.256339e-07,8.054328e-07,7.857199e-07,7.664834e-07,7.477121e-07,7.293949e-07,7.115209e-07,6.940796e-07,6.770607e-07,6.604541e-07,6.442499e-07,6.284387e-07,6.130109e-07,5.979574e-07,5.832693e-07,5.689378e-07,5.549545e-07,5.413109e-07,5.279989e-07,5.150106e-07,5.023382e-07,4.899742e-07,4.779112e-07,4.661419e-07,4.546592e-07,4.434564e-07,4.325266e-07,4.218633e-07,4.114601e-07,4.013107e-07,3.914091e-07,3.817493e-07,3.723253e-07,3.631316e-07,3.541626e-07,3.454129e-07,3.368772e-07,3.285503e-07,3.204271e-07,3.125028e-07,3.047726e-07,2.972317e-07,2.898756e-07,2.826998e-07,2.756999e-07,2.688717e-07,2.622110e-07,2.557138e-07,2.493760e-07,2.431939e-07,2.371636e-07,2.312815e-07,2.255440e-07,2.199475e-07,2.144887e-07,2.091641e-07,2.039705e-07,1.989048e-07,1.939637e-07,1.891444e-07,1.844438e-07,1.798590e-07,1.753872e-07,1.710256e-07,1.667716e-07,1.626225e-07,1.585759e-07,1.546290e-07,1.507797e-07,1.470253e-07,1.433637e-07,1.397926e-07,1.363097e-07,1.329130e-07,1.296002e-07,1.263693e-07,1.232184e-07,1.201454e-07,1.171485e-07,1.142258e-07,1.113755e-07,1.085957e-07,1.058848e-07,1.032412e-07,1.006630e-07,9.814874e-08,9.569685e-08,9.330577e-08,9.097401e-08,8.870012e-08,8.648268e-08,8.432028e-08,8.221159e-08,8.015527e-08,7.815004e-08,7.619463e-08,7.428783e-08,7.242844e-08,7.061528e-08,6.884721e-08,6.712313e-08,6.544195e-08,6.380261e-08,6.220408e-08,6.064534e-08,5.912543e-08,5.764337e-08,5.619823e-08,5.478911e-08,5.341510e-08,5.207535e-08,5.076900e-08,4.949523e-08,4.825323e-08,4.704222e-08,4.586142e-08,4.471010e-08,4.358751e-08,4.249295e-08,4.142573e-08,4.038516e-08,3.937058e-08,3.838136e-08,3.741685e-08,3.647646e-08,3.555957e-08,3.466561e-08,3.379400e-08,3.294420e-08,3.211565e-08,3.130784e-08,3.052024e-08,2.975235e-08,2.900369e-08,2.827378e-08,2.756214e-08,2.686832e-08,2.619189e-08}, {7.133884e+03,2.968833e+03,1.255970e+03,5.555336e+02,2.714517e+02,1.564662e+02,1.085213e+02,8.613032e+01,7.295462e+01,6.294026e+01,5.410287e+01,4.596335e+01,3.852141e+01,3.187011e+01,2.607074e+01,2.112781e+01,1.699801e+01,1.360704e+01,1.086498e+01,8.677814e+00,6.954852e+00,5.613151e+00,4.579581e+00,3.791432e+00,3.196089e+00,2.750201e+00,2.418595e+00,2.173130e+00,1.991582e+00,1.856622e+00,1.754909e+00,1.676316e+00,1.613268e+00,1.560199e+00,1.513105e+00,1.469184e+00,1.426542e+00,1.383970e+00,1.340757e+00,1.296557e+00,1.251274e+00,1.204986e+00,1.157880e+00,1.110208e+00,1.062253e+00,1.014303e+00,9.666419e-01,9.195305e-01,8.732054e-01,8.278736e-01,7.837115e-01,7.408649e-01,6.994507e-01,6.595588e-01,6.212542e-01,5.845797e-01,5.495587e-01,5.161976e-01,4.844880e-01,4.544096e-01,4.259316e-01,3.990151e-01,3.736144e-01,3.496788e-01,3.271538e-01,3.059820e-01,2.861044e-01,2.674613e-01,2.499924e-01,2.336380e-01,2.183392e-01,2.040383e-01,1.906791e-01,1.782073e-01,1.665703e-01,1.557177e-01,1.456013e-01,1.361750e-01,1.273950e-01,1.192196e-01,1.116094e-01,1.045271e-01,9.793756e-02,9.180752e-02,8.610582e-02,8.080314e-02,7.587198e-02,7.128655e-02,6.702271e-02,6.305788e-02,5.937095e-02,5.594222e-02,5.275330e-02,4.978705e-02,4.702749e-02,4.445973e-02,4.206995e-02,3.984525e-02,3.777365e-02,3.584403e-02,3.404605e-02,3.237010e-02,3.080727e-02,2.934929e-02,2.798847e-02,2.671772e-02,2.553042e-02,2.442045e-02,2.338216e-02,2.241029e-02,2.149997e-02,2.064670e-02,1.984630e-02,1.909492e-02,1.838897e-02,1.772515e-02,1.710040e-02,1.651187e-02,1.595696e-02,1.543323e-02,1.493843e-02,1.447051e-02,1.402753e-02,1.360772e-02,1.320944e-02,1.283117e-02,1.247152e-02,1.212917e-02,1.180294e-02,1.149172e-02,1.119447e-02,1.091026e-02,1.063821e-02,1.037750e-02,1.012739e-02,9.887183e-03,9.656246e-03,9.433985e-03,9.219851e-03,9.013340e-03,8.813985e-03,8.621351e-03,8.435040e-03,8.254682e-03,8.079933e-03,7.910478e-03,7.746022e-03,7.586295e-03,7.431045e-03,7.280039e-03,7.133061e-03,6.989912e-03,6.850406e-03,6.714371e-03,6.581648e-03,6.452088e-03,6.325554e-03,6.201919e-03,6.081062e-03,5.962875e-03,5.847252e-03,5.734100e-03,5.623327e-03,5.514851e-03,5.408593e-03,5.304481e-03,5.202445e-03,5.102423e-03,5.004353e-03,4.908180e-03,4.813851e-03,4.721314e-03,4.630524e-03,4.541435e-03,4.454005e-03,4.368195e-03,4.283967e-03,4.201285e-03,4.120114e-03,4.040422e-03,3.962177e-03,3.885351e-03,3.809914e-03,3.735839e-03,3.663100e-03,3.591671e-03,3.521529e-03,3.452649e-03,3.385009e-03,3.318586e-03,3.253360e-03,3.189310e-03,3.126415e-03,3.064655e-03,3.004013e-03,2.944469e-03,2.886004e-03,2.828602e-03,2.772244e-03,2.716913e-03,2.662594e-03,2.609269e-03,2.556922e-03,2.505538e-03,2.455100e-03,2.405595e-03,2.357006e-03,2.309318e-03,2.262519e-03,2.216591e-03,2.171523e-03,2.127300e-03,2.083907e-03,2.041332e-03,1.999561e-03,1.958582e-03,1.918380e-03,1.878943e-03,1.840258e-03,1.802314e-03,1.765097e-03,1.728595e-03,1.692797e-03,1.657690e-03,1.623263e-03,1.589504e-03,1.556403e-03,1.523946e-03,1.492124e-03,1.460925e-03,1.430340e-03,1.400356e-03,1.370963e-03,1.342151e-03,1.313911e-03,1.286231e-03,1.259101e-03,1.232513e-03,1.206455e-03,1.180920e-03,1.155896e-03,1.131375e-03,1.107348e-03,1.083806e-03,1.060740e-03,1.038141e-03,1.016000e-03,9.943089e-04,9.730596e-04,9.522437e-04,9.318531e-04,9.118797e-04,8.923156e-04,8.731533e-04,8.543849e-04,8.360031e-04,8.180005e-04,8.003698e-04,7.831038e-04,7.661956e-04,7.496383e-04,7.334249e-04,7.175490e-04,7.020039e-04,6.867831e-04,6.718803e-04,6.572893e-04,6.430039e-04,6.290182e-04,6.153261e-04,6.019219e-04,5.887999e-04,5.759545e-04,5.633801e-04,5.510713e-04,5.390228e-04,5.272294e-04,5.156860e-04,5.043874e-04,4.933289e-04,4.825055e-04,4.719124e-04,4.615451e-04,4.513988e-04,4.414691e-04,4.317516e-04,4.222419e-04,4.129358e-04,4.038292e-04,3.949178e-04,3.861977e-04,3.776649e-04,3.693157e-04,3.611461e-04,3.531525e-04,3.453312e-04,3.376787e-04,3.301914e-04,3.228659e-04,3.156989e-04,3.086869e-04,3.018269e-04,2.951155e-04,2.885498e-04,2.821265e-04,2.758428e-04,2.696958e-04,2.636824e-04,2.578000e-04,2.520457e-04,2.464169e-04,2.409109e-04,2.355251e-04,2.302569e-04,2.251039e-04,2.200636e-04,2.151337e-04,2.103117e-04,2.055954e-04,2.009825e-04,1.964709e-04,1.920583e-04,1.877427e-04,1.835219e-04,1.793940e-04,1.753569e-04,1.714088e-04,1.675476e-04,1.637716e-04,1.600789e-04,1.564677e-04,1.529363e-04,1.494829e-04,1.461059e-04,1.428035e-04,1.395743e-04,1.364167e-04,1.333289e-04,1.303097e-04,1.273574e-04,1.244707e-04,1.216481e-04,1.188882e-04,1.161897e-04,1.135512e-04,1.109714e-04,1.084491e-04,1.059829e-04,1.035718e-04,1.012144e-04,9.890959e-05,9.665626e-05,9.445327e-05,9.229951e-05,9.019391e-05,8.813542e-05,8.612300e-05,8.415564e-05,8.223237e-05,8.035221e-05,7.851422e-05,7.671747e-05,7.496106e-05,7.324409e-05,7.156572e-05,6.992508e-05,6.832134e-05,6.675370e-05,6.522135e-05,6.372353e-05,6.225946e-05,6.082841e-05,5.942964e-05,5.806244e-05,5.672612e-05,5.541999e-05,5.414339e-05,5.289565e-05,5.167615e-05,5.048425e-05,4.931935e-05,4.818083e-05,4.706813e-05,4.598067e-05,4.491788e-05,4.387921e-05,4.286414e-05,4.187213e-05,4.090267e-05,3.995527e-05,3.902942e-05,3.812465e-05,3.724048e-05,3.637647e-05,3.553215e-05,3.470709e-05,3.390085e-05,3.311302e-05,3.234319e-05,3.159095e-05,3.085590e-05,3.013767e-05,2.943587e-05,2.875013e-05,2.808011e-05,2.742543e-05,2.678577e-05,2.616077e-05,2.555012e-05,2.495348e-05,2.437055e-05,2.380101e-05,2.324456e-05,2.270091e-05,2.216976e-05,2.165085e-05,2.114388e-05,2.064859e-05,2.016472e-05,1.969201e-05,1.923020e-05,1.877905e-05,1.833832e-05,1.790777e-05,1.748717e-05,1.707630e-05,1.667493e-05,1.628284e-05,1.589984e-05,1.552570e-05,1.516024e-05,1.480324e-05,1.445453e-05,1.411391e-05,1.378119e-05,1.345620e-05,1.313876e-05,1.282870e-05,1.252585e-05,1.223004e-05,1.194111e-05,1.165892e-05,1.138329e-05,1.111409e-05,1.085116e-05,1.059437e-05,1.034356e-05,1.009861e-05,9.859379e-06,9.625736e-06,9.397552e-06,9.174704e-06,8.957067e-06,8.744522e-06,8.536952e-06,8.334243e-06,8.136283e-06,7.942961e-06,7.754172e-06,7.569811e-06,7.389775e-06,7.213966e-06,7.042284e-06,6.874636e-06,6.710927e-06,6.551067e-06,6.394966e-06,6.242538e-06,6.093698e-06,5.948362e-06,5.806450e-06,5.667881e-06,5.532579e-06,5.400467e-06,5.271472e-06,5.145521e-06,5.022543e-06,4.902469e-06,4.785232e-06,4.670766e-06,4.559006e-06,4.449890e-06,4.343354e-06,4.239341e-06,4.137789e-06,4.038644e-06,3.941847e-06,3.847344e-06,3.755082e-06,3.665008e-06,3.577071e-06,3.491221e-06,3.407410e-06,3.325589e-06,3.245712e-06,3.167733e-06,3.091609e-06,3.017294e-06,2.944748e-06,2.873928e-06,2.804794e-06,2.737306e-06,2.671426e-06,2.607116e-06,2.544339e-06,2.483058e-06,2.423239e-06,2.364848e-06,2.307850e-06,2.252213e-06,2.197904e-06,2.144893e-06,2.093148e-06,2.042641e-06,1.993341e-06,1.945220e-06,1.898251e-06,1.852405e-06,1.807657e-06,1.763981e-06,1.721351e-06,1.679742e-06,1.639130e-06,1.599492e-06,1.560805e-06,1.523045e-06,1.486192e-06,1.450223e-06,1.415117e-06,1.380854e-06,1.347415e-06,1.314779e-06,1.282927e-06,1.251841e-06,1.221502e-06,1.191893e-06,1.162996e-06,1.134795e-06,1.107272e-06,1.080412e-06,1.054199e-06,1.028618e-06,1.003652e-06,9.792886e-07,9.555123e-07,9.323092e-07,9.096658e-07,8.875686e-07,8.660045e-07,8.449609e-07,8.244253e-07,8.043855e-07,7.848297e-07,7.657463e-07,7.471240e-07,7.289517e-07,7.112187e-07,6.939145e-07,6.770287e-07,6.605514e-07,6.444727e-07,6.287831e-07,6.134732e-07,5.985339e-07,5.839564e-07,5.697320e-07,5.558521e-07,5.423085e-07,5.290931e-07,5.161980e-07,5.036155e-07,4.913381e-07,4.793584e-07,4.676694e-07,4.562639e-07,4.451352e-07,4.342765e-07,4.236815e-07,4.133437e-07,4.032569e-07,3.934151e-07,3.838124e-07,3.744430e-07,3.653013e-07,3.563817e-07,3.476790e-07,3.391878e-07,3.309031e-07,3.228200e-07,3.149334e-07,3.072387e-07,2.997312e-07,2.924064e-07,2.852599e-07,2.782873e-07,2.714846e-07,2.648474e-07,2.583720e-07,2.520542e-07,2.458903e-07,2.398767e-07,2.340095e-07,2.282854e-07,2.227008e-07,2.172523e-07,2.119367e-07,2.067507e-07,2.016912e-07,1.967551e-07,1.919393e-07,1.872411e-07,1.826576e-07,1.781858e-07,1.738233e-07,1.695672e-07,1.654150e-07,1.613642e-07,1.574123e-07,1.535569e-07,1.497956e-07,1.461263e-07,1.425466e-07,1.390543e-07,1.356474e-07,1.323238e-07,1.290813e-07,1.259181e-07,1.228323e-07,1.198219e-07,1.168851e-07,1.140201e-07,1.112251e-07,1.084986e-07,1.058387e-07,1.032439e-07,1.007125e-07,9.824310e-08,9.583412e-08,9.348408e-08,9.119156e-08,8.895514e-08,8.677346e-08,8.464519e-08,8.256903e-08,8.054369e-08,7.856794e-08,7.664058e-08,7.476041e-08,7.292629e-08,7.113709e-08,6.939171e-08,6.768909e-08,6.602819e-08,6.440797e-08,6.282745e-08,6.128566e-08,5.978165e-08,5.831449e-08,5.688330e-08,5.548718e-08,5.412528e-08,5.279676e-08,5.150081e-08,5.023664e-08,4.900345e-08,4.780050e-08,4.662705e-08,4.548237e-08,4.436577e-08,4.327654e-08,4.221403e-08,4.117758e-08,4.016655e-08,3.918032e-08,3.821828e-08,3.727984e-08,3.636442e-08,3.547146e-08,3.460041e-08,3.375073e-08,3.292190e-08,3.211341e-08,3.132476e-08,3.055546e-08,2.980504e-08,2.907303e-08,2.835899e-08,2.766248e-08,2.698306e-08,2.632032e-08,2.567384e-08,2.504324e-08,2.442811e-08,2.382809e-08,2.324280e-08,2.267187e-08,2.211496e-08,2.157173e-08,2.104183e-08,2.052494e-08}, {8.178330e+03,3.270919e+03,1.333731e+03,5.742348e+02,2.791565e+02,1.643428e+02,1.174315e+02,9.489444e+01,8.056973e+01,6.894061e+01,5.844042e+01,4.882689e+01,4.019905e+01,3.266488e+01,2.625642e+01,2.093049e+01,1.659247e+01,1.312073e+01,1.038533e+01,8.260338e+00,6.630824e+00,5.396215e+00,4.471172e+00,3.785020e+00,3.280383e+00,2.911483e+00,2.642360e+00,2.445185e+00,2.298738e+00,2.187087e+00,2.098473e+00,2.024382e+00,1.958795e+00,1.897585e+00,1.838037e+00,1.778475e+00,1.717970e+00,1.656118e+00,1.592875e+00,1.528428e+00,1.463105e+00,1.397307e+00,1.331464e+00,1.266000e+00,1.201312e+00,1.137760e+00,1.075658e+00,1.015269e+00,9.568115e-01,9.004553e-01,8.463283e-01,7.945194e-01,7.450832e-01,6.980445e-01,6.534020e-01,6.111331e-01,5.711971e-01,5.335386e-01,4.980909e-01,4.647780e-01,4.335177e-01,4.042229e-01,3.768037e-01,3.511686e-01,3.272258e-01,3.048843e-01,2.840544e-01,2.646485e-01,2.465816e-01,2.297718e-01,2.141401e-01,1.996111e-01,1.861131e-01,1.735775e-01,1.619398e-01,1.511387e-01,1.411165e-01,1.318190e-01,1.231951e-01,1.151970e-01,1.077799e-01,1.009020e-01,9.452421e-02,8.860997e-02,8.312533e-02,7.803865e-02,7.332048e-02,6.894348e-02,6.488224e-02,6.111316e-02,5.761438e-02,5.436560e-02,5.134803e-02,4.854426e-02,4.593817e-02,4.351485e-02,4.126049e-02,3.916233e-02,3.720856e-02,3.538828e-02,3.369141e-02,3.210862e-02,3.063132e-02,2.925156e-02,2.796200e-02,2.675586e-02,2.562688e-02,2.456930e-02,2.357778e-02,2.264740e-02,2.177363e-02,2.095227e-02,2.017946e-02,1.945164e-02,1.876550e-02,1.811802e-02,1.750639e-02,1.692802e-02,1.638054e-02,1.586174e-02,1.536959e-02,1.490221e-02,1.445787e-02,1.403499e-02,1.363207e-02,1.324777e-02,1.288083e-02,1.253009e-02,1.219448e-02,1.187300e-02,1.156475e-02,1.126888e-02,1.098460e-02,1.071121e-02,1.044804e-02,1.019446e-02,9.949901e-03,9.713845e-03,9.485800e-03,9.265314e-03,9.051968e-03,8.845373e-03,8.645170e-03,8.451025e-03,8.262630e-03,8.079695e-03,7.901956e-03,7.729162e-03,7.561084e-03,7.397508e-03,7.238232e-03,7.083071e-03,6.931850e-03,6.784409e-03,6.640594e-03,6.500265e-03,6.363289e-03,6.229542e-03,6.098906e-03,5.971274e-03,5.846542e-03,5.724613e-03,5.605397e-03,5.488807e-03,5.374763e-03,5.263188e-03,5.154010e-03,5.047159e-03,4.942572e-03,4.840185e-03,4.739940e-03,4.641782e-03,4.545655e-03,4.451511e-03,4.359299e-03,4.268972e-03,4.180487e-03,4.093800e-03,4.008870e-03,3.925656e-03,3.844122e-03,3.764229e-03,3.685942e-03,3.609227e-03,3.534050e-03,3.460380e-03,3.388184e-03,3.317432e-03,3.248096e-03,3.180146e-03,3.113554e-03,3.048293e-03,2.984338e-03,2.921662e-03,2.860239e-03,2.800046e-03,2.741059e-03,2.683254e-03,2.626608e-03,2.571100e-03,2.516706e-03,2.463406e-03,2.411179e-03,2.360004e-03,2.309861e-03,2.260731e-03,2.212594e-03,2.165430e-03,2.119223e-03,2.073953e-03,2.029602e-03,1.986153e-03,1.943589e-03,1.901892e-03,1.861047e-03,1.821036e-03,1.781845e-03,1.743457e-03,1.705856e-03,1.669028e-03,1.632958e-03,1.597632e-03,1.563033e-03,1.529150e-03,1.495968e-03,1.463473e-03,1.431651e-03,1.400491e-03,1.369979e-03,1.340102e-03,1.310847e-03,1.282204e-03,1.254159e-03,1.226701e-03,1.199819e-03,1.173501e-03,1.147735e-03,1.122512e-03,1.097819e-03,1.073648e-03,1.049986e-03,1.026825e-03,1.004154e-03,9.819631e-04,9.602431e-04,9.389844e-04,9.181776e-04,8.978138e-04,8.778840e-04,8.583794e-04,8.392914e-04,8.206116e-04,8.023317e-04,7.844435e-04,7.669391e-04,7.498107e-04,7.330506e-04,7.166513e-04,7.006053e-04,6.849054e-04,6.695445e-04,6.545157e-04,6.398121e-04,6.254270e-04,6.113537e-04,5.975860e-04,5.841174e-04,5.709417e-04,5.580528e-04,5.454448e-04,5.331119e-04,5.210482e-04,5.092482e-04,4.977064e-04,4.864173e-04,4.753757e-04,4.645763e-04,4.540141e-04,4.436841e-04,4.335814e-04,4.237012e-04,4.140388e-04,4.045896e-04,3.953491e-04,3.863128e-04,3.774765e-04,3.688359e-04,3.603868e-04,3.521251e-04,3.440469e-04,3.361483e-04,3.284253e-04,3.208743e-04,3.134916e-04,3.062735e-04,2.992166e-04,2.923174e-04,2.855724e-04,2.789784e-04,2.725321e-04,2.662304e-04,2.600701e-04,2.540481e-04,2.481615e-04,2.424073e-04,2.367827e-04,2.312848e-04,2.259109e-04,2.206584e-04,2.155245e-04,2.105066e-04,2.056024e-04,2.008092e-04,1.961246e-04,1.915463e-04,1.870720e-04,1.826993e-04,1.784260e-04,1.742501e-04,1.701692e-04,1.661813e-04,1.622844e-04,1.584765e-04,1.547556e-04,1.511198e-04,1.475672e-04,1.440960e-04,1.407043e-04,1.373905e-04,1.341527e-04,1.309893e-04,1.278986e-04,1.248790e-04,1.219290e-04,1.190470e-04,1.162314e-04,1.134808e-04,1.107937e-04,1.081688e-04,1.056046e-04,1.030997e-04,1.006528e-04,9.826272e-05,9.592805e-05,9.364758e-05,9.142010e-05,8.924441e-05,8.711934e-05,8.504375e-05,8.301653e-05,8.103657e-05,7.910281e-05,7.721421e-05,7.536973e-05,7.356839e-05,7.180919e-05,7.009118e-05,6.841343e-05,6.677502e-05,6.517505e-05,6.361264e-05,6.208694e-05,6.059711e-05,5.914233e-05,5.772180e-05,5.633473e-05,5.498036e-05,5.365793e-05,5.236671e-05,5.110599e-05,4.987507e-05,4.867325e-05,4.749988e-05,4.635428e-05,4.523583e-05,4.414389e-05,4.307785e-05,4.203712e-05,4.102110e-05,4.002923e-05,3.906095e-05,3.811570e-05,3.719296e-05,3.629219e-05,3.541290e-05,3.455458e-05,3.371673e-05,3.289890e-05,3.210059e-05,3.132137e-05,3.056079e-05,2.981841e-05,2.909379e-05,2.838654e-05,2.769624e-05,2.702249e-05,2.636491e-05,2.572311e-05,2.509673e-05,2.448540e-05,2.388877e-05,2.330649e-05,2.273823e-05,2.218364e-05,2.164242e-05,2.111424e-05,2.059880e-05,2.009580e-05,1.960493e-05,1.912592e-05,1.865849e-05,1.820235e-05,1.775724e-05,1.732290e-05,1.689907e-05,1.648551e-05,1.608196e-05,1.568820e-05,1.530398e-05,1.492908e-05,1.456328e-05,1.420636e-05,1.385810e-05,1.351831e-05,1.318678e-05,1.286331e-05,1.254770e-05,1.223978e-05,1.193935e-05,1.164624e-05,1.136027e-05,1.108127e-05,1.080907e-05,1.054351e-05,1.028442e-05,1.003166e-05,9.785074e-06,9.544507e-06,9.309817e-06,9.080863e-06,8.857505e-06,8.639609e-06,8.427043e-06,8.219678e-06,8.017389e-06,7.820052e-06,7.627549e-06,7.439761e-06,7.256575e-06,7.077879e-06,6.903564e-06,6.733524e-06,6.567656e-06,6.405858e-06,6.248031e-06,6.094079e-06,5.943907e-06,5.797423e-06,5.654539e-06,5.515166e-06,5.379219e-06,5.246613e-06,5.117269e-06,4.991106e-06,4.868047e-06,4.748016e-06,4.630939e-06,4.516743e-06,4.405360e-06,4.296719e-06,4.190754e-06,4.087399e-06,3.986591e-06,3.888267e-06,3.792366e-06,3.698830e-06,3.607599e-06,3.518618e-06,3.431832e-06,3.347186e-06,3.264628e-06,3.184107e-06,3.105573e-06,3.028978e-06,2.954272e-06,2.881411e-06,2.810348e-06,2.741040e-06,2.673443e-06,2.607516e-06,2.543217e-06,2.480506e-06,2.419344e-06,2.359693e-06,2.301515e-06,2.244775e-06,2.189437e-06,2.135467e-06,2.082830e-06,2.031494e-06,1.981427e-06,1.932598e-06,1.884975e-06,1.838529e-06,1.793232e-06,1.749054e-06,1.705969e-06,1.663948e-06,1.622967e-06,1.582999e-06,1.544019e-06,1.506002e-06,1.468926e-06,1.432766e-06,1.397500e-06,1.363106e-06,1.329562e-06,1.296848e-06,1.264943e-06,1.233826e-06,1.203479e-06,1.173881e-06,1.145016e-06,1.116864e-06,1.089408e-06,1.062631e-06,1.036515e-06,1.011045e-06,9.862044e-07,9.619778e-07,9.383498e-07,9.153056e-07,8.928309e-07,8.709115e-07,8.495336e-07,8.286838e-07,8.083491e-07,7.885166e-07,7.691740e-07,7.503090e-07,7.319099e-07,7.139651e-07,6.964633e-07,6.793936e-07,6.627453e-07,6.465078e-07,6.306711e-07,6.152252e-07,6.001604e-07,5.854673e-07,5.711366e-07,5.571594e-07,5.435269e-07,5.302306e-07,5.172620e-07,5.046132e-07,4.922762e-07,4.802433e-07,4.685068e-07,4.570596e-07,4.458943e-07,4.350041e-07,4.243820e-07,4.140216e-07,4.039162e-07,3.940596e-07,3.844456e-07,3.750681e-07,3.659214e-07,3.569997e-07,3.482975e-07,3.398093e-07,3.315298e-07,3.234538e-07,3.155763e-07,3.078924e-07,3.003973e-07,2.930864e-07,2.859550e-07,2.789987e-07,2.722133e-07,2.655944e-07,2.591379e-07,2.528399e-07,2.466964e-07,2.407036e-07,2.348577e-07,2.291552e-07,2.235924e-07,2.181660e-07,2.128726e-07,2.077089e-07,2.026716e-07,1.977577e-07,1.929640e-07,1.882878e-07,1.837259e-07,1.792757e-07,1.749343e-07,1.706991e-07,1.665675e-07,1.625368e-07,1.586047e-07,1.547686e-07,1.510262e-07,1.473753e-07,1.438135e-07,1.403386e-07,1.369485e-07,1.336412e-07,1.304145e-07,1.272665e-07,1.241953e-07,1.211990e-07,1.182756e-07,1.154235e-07,1.126409e-07,1.099260e-07,1.072773e-07,1.046930e-07,1.021716e-07,9.971151e-08,9.731128e-08,9.496942e-08,9.268449e-08,9.045510e-08,8.827988e-08,8.615749e-08,8.408666e-08,8.206610e-08,8.009459e-08,7.817092e-08,7.629393e-08,7.446246e-08,7.267540e-08,7.093167e-08,6.923020e-08,6.756995e-08,6.594993e-08,6.436913e-08,6.282661e-08,6.132143e-08,5.985267e-08,5.841944e-08,5.702088e-08,5.565613e-08,5.432438e-08,5.302481e-08,5.175663e-08,5.051909e-08,4.931144e-08,4.813294e-08,4.698288e-08,4.586058e-08,4.476534e-08,4.369652e-08,4.265347e-08,4.163556e-08,4.064218e-08,3.967273e-08,3.872663e-08,3.780331e-08,3.690222e-08,3.602281e-08,3.516456e-08,3.432695e-08,3.350949e-08,3.271167e-08,3.193304e-08,3.117311e-08,3.043143e-08,2.970757e-08,2.900109e-08,2.831156e-08,2.763858e-08,2.698175e-08,2.634067e-08,2.571496e-08,2.510425e-08,2.450817e-08,2.392638e-08,2.335852e-08,2.280426e-08,2.226327e-08,2.173523e-08,2.121983e-08,2.071675e-08,2.022571e-08,1.974640e-08,1.927856e-08,1.882189e-08,1.837614e-08,1.794103e-08,1.751631e-08,1.710173e-08,1.669705e-08,1.630203e-08,1.591643e-08,1.554002e-08,1.517259e-08}, {9.318462e+03,3.582612e+03,1.408543e+03,5.915041e+02,2.874575e+02,1.735038e+02,1.274423e+02,1.042680e+02,8.831291e+01,7.472101e+01,6.236259e+01,5.120710e+01,4.141511e+01,3.307375e+01,2.615747e+01,2.055532e+01,1.610859e+01,1.264124e+01,9.980320e+00,7.967667e+00,6.465431e+00,5.357599e+00,4.549147e+00,3.963954e+00,3.542211e+00,3.237742e+00,3.015500e+00,2.849339e+00,2.720110e+00,2.614081e+00,2.521646e+00,2.436298e+00,2.353817e+00,2.271642e+00,2.188387e+00,2.103477e+00,2.016878e+00,1.928894e+00,1.840026e+00,1.750872e+00,1.662050e+00,1.574160e+00,1.487752e+00,1.403309e+00,1.321241e+00,1.241881e+00,1.165491e+00,1.092264e+00,1.022334e+00,9.557801e-01,8.926332e-01,8.328860e-01,7.764979e-01,7.234012e-01,6.735070e-01,6.267093e-01,5.828900e-01,5.419221e-01,5.036727e-01,4.680057e-01,4.347841e-01,4.038713e-01,3.751328e-01,3.484375e-01,3.236579e-01,3.006714e-01,2.793604e-01,2.596127e-01,2.413215e-01,2.243859e-01,2.087105e-01,1.942053e-01,1.807860e-01,1.683735e-01,1.568937e-01,1.462775e-01,1.364604e-01,1.273823e-01,1.189874e-01,1.112238e-01,1.040433e-01,9.740123e-02,9.125623e-02,8.556998e-02,8.030702e-02,7.543457e-02,7.092234e-02,6.674233e-02,6.286872e-02,5.927766e-02,5.594714e-02,5.285688e-02,4.998816e-02,4.732375e-02,4.484774e-02,4.254549e-02,4.040351e-02,3.840937e-02,3.655163e-02,3.481974e-02,3.320400e-02,3.169547e-02,3.028593e-02,2.896779e-02,2.773409e-02,2.657841e-02,2.549483e-02,2.447792e-02,2.352267e-02,2.262446e-02,2.177905e-02,2.098253e-02,2.023129e-02,1.952204e-02,1.885170e-02,1.821747e-02,1.761677e-02,1.704719e-02,1.650655e-02,1.599282e-02,1.550413e-02,1.503876e-02,1.459511e-02,1.417174e-02,1.376728e-02,1.338049e-02,1.301022e-02,1.265541e-02,1.231508e-02,1.198832e-02,1.167430e-02,1.137225e-02,1.108144e-02,1.080122e-02,1.053097e-02,1.027014e-02,1.001819e-02,9.774637e-03,9.539033e-03,9.310957e-03,9.090023e-03,8.875870e-03,8.668162e-03,8.466588e-03,8.270859e-03,8.080704e-03,7.895871e-03,7.716127e-03,7.541251e-03,7.371040e-03,7.205301e-03,7.043856e-03,6.886536e-03,6.733185e-03,6.583655e-03,6.437806e-03,6.295509e-03,6.156640e-03,6.021082e-03,5.888728e-03,5.759472e-03,5.633218e-03,5.509872e-03,5.389347e-03,5.271559e-03,5.156429e-03,5.043881e-03,4.933843e-03,4.826247e-03,4.721027e-03,4.618121e-03,4.517467e-03,4.419009e-03,4.322692e-03,4.228462e-03,4.136269e-03,4.046062e-03,3.957796e-03,3.871424e-03,3.786903e-03,3.704189e-03,3.623241e-03,3.544020e-03,3.466487e-03,3.390605e-03,3.316337e-03,3.243647e-03,3.172502e-03,3.102869e-03,3.034714e-03,2.968006e-03,2.902715e-03,2.838810e-03,2.776262e-03,2.715043e-03,2.655125e-03,2.596481e-03,2.539083e-03,2.482908e-03,2.427928e-03,2.374119e-03,2.321458e-03,2.269919e-03,2.219481e-03,2.170121e-03,2.121815e-03,2.074544e-03,2.028285e-03,1.983017e-03,1.938721e-03,1.895376e-03,1.852962e-03,1.811461e-03,1.770854e-03,1.731122e-03,1.692247e-03,1.654212e-03,1.617000e-03,1.580592e-03,1.544974e-03,1.510128e-03,1.476038e-03,1.442689e-03,1.410065e-03,1.378152e-03,1.346935e-03,1.316398e-03,1.286529e-03,1.257313e-03,1.228736e-03,1.200785e-03,1.173447e-03,1.146710e-03,1.120560e-03,1.094985e-03,1.069973e-03,1.045513e-03,1.021592e-03,9.981997e-04,9.753246e-04,9.529556e-04,9.310822e-04,9.096937e-04,8.887800e-04,8.683309e-04,8.483366e-04,8.287873e-04,8.096736e-04,7.909861e-04,7.727158e-04,7.548538e-04,7.373912e-04,7.203195e-04,7.036304e-04,6.873156e-04,6.713670e-04,6.557767e-04,6.405371e-04,6.256405e-04,6.110796e-04,5.968470e-04,5.829357e-04,5.693386e-04,5.560490e-04,5.430601e-04,5.303655e-04,5.179586e-04,5.058333e-04,4.939834e-04,4.824029e-04,4.710858e-04,4.600264e-04,4.492190e-04,4.386581e-04,4.283384e-04,4.182544e-04,4.084010e-04,3.987732e-04,3.893658e-04,3.801742e-04,3.711934e-04,3.624189e-04,3.538460e-04,3.454703e-04,3.372875e-04,3.292931e-04,3.214831e-04,3.138533e-04,3.063998e-04,2.991185e-04,2.920057e-04,2.850575e-04,2.782703e-04,2.716405e-04,2.651646e-04,2.588390e-04,2.526605e-04,2.466257e-04,2.407314e-04,2.349745e-04,2.293517e-04,2.238602e-04,2.184969e-04,2.132589e-04,2.081435e-04,2.031478e-04,1.982691e-04,1.935047e-04,1.888521e-04,1.843088e-04,1.798722e-04,1.755399e-04,1.713095e-04,1.671788e-04,1.631454e-04,1.592071e-04,1.553617e-04,1.516071e-04,1.479413e-04,1.443622e-04,1.408677e-04,1.374561e-04,1.341252e-04,1.308734e-04,1.276988e-04,1.245995e-04,1.215739e-04,1.186203e-04,1.157370e-04,1.129223e-04,1.101747e-04,1.074926e-04,1.048746e-04,1.023190e-04,9.982457e-05,9.738974e-05,9.501317e-05,9.269350e-05,9.042941e-05,8.821961e-05,8.606281e-05,8.395779e-05,8.190333e-05,7.989825e-05,7.794139e-05,7.603163e-05,7.416786e-05,7.234899e-05,7.057398e-05,6.884179e-05,6.715142e-05,6.550187e-05,6.389219e-05,6.232144e-05,6.078869e-05,5.929305e-05,5.783365e-05,5.640962e-05,5.502012e-05,5.366435e-05,5.234149e-05,5.105077e-05,4.979142e-05,4.856270e-05,4.736388e-05,4.619424e-05,4.505310e-05,4.393977e-05,4.285359e-05,4.179390e-05,4.076009e-05,3.975152e-05,3.876760e-05,3.780773e-05,3.687134e-05,3.595787e-05,3.506676e-05,3.419747e-05,3.334950e-05,3.252231e-05,3.171541e-05,3.092831e-05,3.016055e-05,2.941163e-05,2.868113e-05,2.796858e-05,2.727356e-05,2.659564e-05,2.593441e-05,2.528947e-05,2.466041e-05,2.404686e-05,2.344844e-05,2.286478e-05,2.229553e-05,2.174032e-05,2.119884e-05,2.067072e-05,2.015567e-05,1.965334e-05,1.916345e-05,1.868567e-05,1.821972e-05,1.776531e-05,1.732215e-05,1.688998e-05,1.646851e-05,1.605750e-05,1.565668e-05,1.526581e-05,1.488464e-05,1.451293e-05,1.415045e-05,1.379698e-05,1.345229e-05,1.311617e-05,1.278840e-05,1.246879e-05,1.215713e-05,1.185323e-05,1.155689e-05,1.126793e-05,1.098616e-05,1.071142e-05,1.044352e-05,1.018230e-05,9.927588e-06,9.679230e-06,9.437066e-06,9.200944e-06,8.970713e-06,8.746229e-06,8.527348e-06,8.313933e-06,8.105848e-06,7.902960e-06,7.705142e-06,7.512266e-06,7.324211e-06,7.140857e-06,6.962087e-06,6.787788e-06,6.617847e-06,6.452158e-06,6.290614e-06,6.133112e-06,5.979552e-06,5.829836e-06,5.683867e-06,5.541553e-06,5.402802e-06,5.267526e-06,5.135638e-06,5.007054e-06,4.881691e-06,4.759469e-06,4.640310e-06,4.524136e-06,4.410874e-06,4.300451e-06,4.192796e-06,4.087840e-06,3.985515e-06,3.885755e-06,3.788497e-06,3.693678e-06,3.601236e-06,3.511113e-06,3.423251e-06,3.337592e-06,3.254081e-06,3.172666e-06,3.093292e-06,3.015910e-06,2.940469e-06,2.866921e-06,2.795218e-06,2.725314e-06,2.657164e-06,2.590723e-06,2.525950e-06,2.462801e-06,2.401237e-06,2.341218e-06,2.282705e-06,2.225659e-06,2.170045e-06,2.115826e-06,2.062968e-06,2.011435e-06,1.961196e-06,1.912217e-06,1.864466e-06,1.817913e-06,1.772528e-06,1.728282e-06,1.685145e-06,1.643090e-06,1.602090e-06,1.562118e-06,1.523148e-06,1.485155e-06,1.448116e-06,1.412004e-06,1.376799e-06,1.342475e-06,1.309012e-06,1.276388e-06,1.244582e-06,1.213572e-06,1.183340e-06,1.153865e-06,1.125129e-06,1.097112e-06,1.069797e-06,1.043167e-06,1.017203e-06,9.918897e-07,9.672101e-07,9.431484e-07,9.196891e-07,8.968169e-07,8.745172e-07,8.527756e-07,8.315780e-07,8.109107e-07,7.907605e-07,7.711142e-07,7.519593e-07,7.332834e-07,7.150745e-07,6.973208e-07,6.800108e-07,6.631335e-07,6.466779e-07,6.306335e-07,6.149899e-07,5.997371e-07,5.848652e-07,5.703647e-07,5.562262e-07,5.424407e-07,5.289992e-07,5.158932e-07,5.031142e-07,4.906541e-07,4.785047e-07,4.666583e-07,4.551073e-07,4.438443e-07,4.328621e-07,4.221536e-07,4.117119e-07,4.015304e-07,3.916025e-07,3.819219e-07,3.724823e-07,3.632778e-07,3.543024e-07,3.455504e-07,3.370161e-07,3.286942e-07,3.205793e-07,3.126662e-07,3.049499e-07,2.974254e-07,2.900880e-07,2.829329e-07,2.759556e-07,2.691517e-07,2.625167e-07,2.560465e-07,2.497369e-07,2.435840e-07,2.375838e-07,2.317325e-07,2.260263e-07,2.204617e-07,2.150351e-07,2.097431e-07,2.045822e-07,1.995493e-07,1.946411e-07,1.898544e-07,1.851864e-07,1.806339e-07,1.761942e-07,1.718644e-07,1.676418e-07,1.635236e-07,1.595074e-07,1.555905e-07,1.517704e-07,1.480448e-07,1.444114e-07,1.408677e-07,1.374116e-07,1.340409e-07,1.307534e-07,1.275472e-07,1.244201e-07,1.213702e-07,1.183956e-07,1.154944e-07,1.126647e-07,1.099049e-07,1.072131e-07,1.045877e-07,1.020271e-07,9.952951e-08,9.709350e-08,9.471750e-08,9.240003e-08,9.013964e-08,8.793490e-08,8.578444e-08,8.368691e-08,8.164100e-08,7.964542e-08,7.769893e-08,7.580032e-08,7.394838e-08,7.214198e-08,7.037998e-08,6.866128e-08,6.698480e-08,6.534951e-08,6.375438e-08,6.219843e-08,6.068067e-08,5.920017e-08,5.775600e-08,5.634727e-08,5.497310e-08,5.363263e-08,5.232504e-08,5.104950e-08,4.980524e-08,4.859147e-08,4.740744e-08,4.625243e-08,4.512570e-08,4.402658e-08,4.295436e-08,4.190840e-08,4.088804e-08,3.989266e-08,3.892163e-08,3.797435e-08,3.705025e-08,3.614875e-08,3.526929e-08,3.441134e-08,3.357435e-08,3.275782e-08,3.196125e-08,3.118413e-08,3.042600e-08,2.968639e-08,2.896483e-08,2.826089e-08,2.757414e-08,2.690415e-08,2.625051e-08,2.561282e-08,2.499068e-08,2.438372e-08,2.379156e-08,2.321384e-08,2.265021e-08,2.210032e-08,2.156382e-08,2.104041e-08,2.052974e-08,2.003152e-08,1.954543e-08,1.907118e-08,1.860848e-08,1.815705e-08,1.771660e-08,1.728688e-08,1.686761e-08,1.645855e-08,1.605944e-08,1.567004e-08,1.529011e-08,1.491942e-08,1.455775e-08,1.420486e-08,1.386056e-08,1.352463e-08,1.319686e-08,1.287706e-08,1.256503e-08,1.226058e-08,1.196353e-08,1.167369e-08,1.139089e-08,1.111496e-08,1.084573e-08}, {1.055952e+04,3.902803e+03,1.480347e+03,6.077281e+02,2.965777e+02,1.839051e+02,1.383428e+02,1.139951e+02,9.596607e+01,8.013985e+01,6.581109e+01,5.311765e+01,4.223627e+01,3.319649e+01,2.588923e+01,2.011954e+01,1.565581e+01,1.226411e+01,9.728311e+00,7.859887e+00,6.500925e+00,5.523169e+00,4.825028e+00,4.327755e+00,3.971498e+00,3.711633e+00,3.515538e+00,3.359872e+00,3.228350e+00,3.109954e+00,2.997536e+00,2.886731e+00,2.775131e+00,2.661669e+00,2.546159e+00,2.428968e+00,2.310778e+00,2.192418e+00,2.074759e+00,1.958638e+00,1.844815e+00,1.733949e+00,1.626590e+00,1.523176e+00,1.424036e+00,1.329406e+00,1.239431e+00,1.154184e+00,1.073672e+00,9.978472e-01,9.266213e-01,8.598693e-01,7.974401e-01,7.391628e-01,6.848526e-01,6.343157e-01,5.873533e-01,5.437653e-01,5.033528e-01,4.659205e-01,4.312780e-01,3.992415e-01,3.696343e-01,3.422880e-01,3.170424e-01,2.937460e-01,2.722557e-01,2.524375e-01,2.341653e-01,2.173215e-01,2.017964e-01,1.874877e-01,1.743006e-01,1.621468e-01,1.509447e-01,1.406189e-01,1.310993e-01,1.223215e-01,1.142259e-01,1.067577e-01,9.986632e-02,9.350516e-02,8.763140e-02,8.220561e-02,7.719157e-02,7.255598e-02,6.826823e-02,6.430022e-02,6.062615e-02,5.722231e-02,5.406697e-02,5.114015e-02,4.842354e-02,4.590031e-02,4.355504e-02,4.137358e-02,3.934292e-02,3.745115e-02,3.568732e-02,3.404140e-02,3.250416e-02,3.106715e-02,2.972261e-02,2.846340e-02,2.728298e-02,2.617533e-02,2.513493e-02,2.415672e-02,2.323603e-02,2.236858e-02,2.155043e-02,2.077796e-02,2.004784e-02,1.935702e-02,1.870267e-02,1.808221e-02,1.749325e-02,1.693359e-02,1.640121e-02,1.589424e-02,1.541098e-02,1.494983e-02,1.450933e-02,1.408815e-02,1.368503e-02,1.329883e-02,1.292849e-02,1.257303e-02,1.223155e-02,1.190321e-02,1.158723e-02,1.128290e-02,1.098955e-02,1.070657e-02,1.043340e-02,1.016950e-02,9.914374e-03,9.667577e-03,9.428682e-03,9.197295e-03,8.973050e-03,8.755606e-03,8.544644e-03,8.339869e-03,8.141002e-03,7.947786e-03,7.759978e-03,7.577353e-03,7.399698e-03,7.226815e-03,7.058517e-03,6.894629e-03,6.734986e-03,6.579434e-03,6.427825e-03,6.280023e-03,6.135897e-03,5.995324e-03,5.858188e-03,5.724378e-03,5.593789e-03,5.466323e-03,5.341885e-03,5.220384e-03,5.101736e-03,4.985859e-03,4.872673e-03,4.762106e-03,4.654085e-03,4.548543e-03,4.445412e-03,4.344632e-03,4.246140e-03,4.149879e-03,4.055792e-03,3.963827e-03,3.873929e-03,3.786051e-03,3.700141e-03,3.616154e-03,3.534045e-03,3.453768e-03,3.375282e-03,3.298544e-03,3.223515e-03,3.150156e-03,3.078428e-03,3.008295e-03,2.939721e-03,2.872671e-03,2.807111e-03,2.743008e-03,2.680329e-03,2.619044e-03,2.559121e-03,2.500530e-03,2.443243e-03,2.387230e-03,2.332465e-03,2.278919e-03,2.226566e-03,2.175380e-03,2.125336e-03,2.076410e-03,2.028576e-03,1.981811e-03,1.936091e-03,1.891395e-03,1.847700e-03,1.804985e-03,1.763227e-03,1.722407e-03,1.682503e-03,1.643497e-03,1.605368e-03,1.568097e-03,1.531666e-03,1.496057e-03,1.461252e-03,1.427232e-03,1.393982e-03,1.361484e-03,1.329721e-03,1.298679e-03,1.268340e-03,1.238690e-03,1.209713e-03,1.181395e-03,1.153722e-03,1.126678e-03,1.100251e-03,1.074426e-03,1.049191e-03,1.024532e-03,1.000437e-03,9.768933e-04,9.538885e-04,9.314107e-04,9.094484e-04,8.879901e-04,8.670245e-04,8.465408e-04,8.265282e-04,8.069763e-04,7.878747e-04,7.692134e-04,7.509827e-04,7.331727e-04,7.157743e-04,6.987780e-04,6.821750e-04,6.659564e-04,6.501135e-04,6.346380e-04,6.195215e-04,6.047561e-04,5.903336e-04,5.762465e-04,5.624872e-04,5.490483e-04,5.359224e-04,5.231026e-04,5.105819e-04,4.983535e-04,4.864108e-04,4.747473e-04,4.633567e-04,4.522327e-04,4.413694e-04,4.307607e-04,4.204008e-04,4.102841e-04,4.004051e-04,3.907583e-04,3.813383e-04,3.721401e-04,3.631585e-04,3.543885e-04,3.458254e-04,3.374643e-04,3.293006e-04,3.213299e-04,3.135476e-04,3.059494e-04,2.985311e-04,2.912885e-04,2.842176e-04,2.773145e-04,2.705752e-04,2.639959e-04,2.575730e-04,2.513028e-04,2.451819e-04,2.392067e-04,2.333739e-04,2.276801e-04,2.221221e-04,2.166969e-04,2.114012e-04,2.062321e-04,2.011866e-04,1.962619e-04,1.914551e-04,1.867635e-04,1.821844e-04,1.777152e-04,1.733532e-04,1.690960e-04,1.649412e-04,1.608863e-04,1.569290e-04,1.530670e-04,1.492980e-04,1.456200e-04,1.420306e-04,1.385279e-04,1.351099e-04,1.317744e-04,1.285197e-04,1.253437e-04,1.222446e-04,1.192206e-04,1.162699e-04,1.133908e-04,1.105816e-04,1.078406e-04,1.051662e-04,1.025569e-04,1.000111e-04,9.752726e-05,9.510394e-05,9.273968e-05,9.043310e-05,8.818280e-05,8.598746e-05,8.384577e-05,8.175643e-05,7.971821e-05,7.772987e-05,7.579024e-05,7.389814e-05,7.205243e-05,7.025200e-05,6.849577e-05,6.678268e-05,6.511169e-05,6.348178e-05,6.189198e-05,6.034132e-05,5.882885e-05,5.735366e-05,5.591484e-05,5.451152e-05,5.314285e-05,5.180798e-05,5.050609e-05,4.923640e-05,4.799812e-05,4.679049e-05,4.561277e-05,4.446424e-05,4.334417e-05,4.225189e-05,4.118672e-05,4.014800e-05,3.913509e-05,3.814735e-05,3.718418e-05,3.624497e-05,3.532914e-05,3.443613e-05,3.356537e-05,3.271632e-05,3.188844e-05,3.108123e-05,3.029418e-05,2.952678e-05,2.877857e-05,2.804906e-05,2.733780e-05,2.664435e-05,2.596826e-05,2.530910e-05,2.466647e-05,2.403995e-05,2.342915e-05,2.283368e-05,2.225316e-05,2.168722e-05,2.113551e-05,2.059766e-05,2.007335e-05,1.956223e-05,1.906397e-05,1.857827e-05,1.810480e-05,1.764327e-05,1.719337e-05,1.675483e-05,1.632735e-05,1.591067e-05,1.550451e-05,1.510861e-05,1.472272e-05,1.434659e-05,1.397997e-05,1.362263e-05,1.327434e-05,1.293487e-05,1.260400e-05,1.228151e-05,1.196721e-05,1.166087e-05,1.136230e-05,1.107132e-05,1.078772e-05,1.051132e-05,1.024195e-05,9.979425e-06,9.723573e-06,9.474228e-06,9.231226e-06,8.994409e-06,8.763621e-06,8.538710e-06,8.319529e-06,8.105932e-06,7.897780e-06,7.694935e-06,7.497263e-06,7.304635e-06,7.116923e-06,6.934002e-06,6.755752e-06,6.582055e-06,6.412795e-06,6.247861e-06,6.087143e-06,5.930535e-06,5.777932e-06,5.629233e-06,5.484339e-06,5.343154e-06,5.205583e-06,5.071536e-06,4.940922e-06,4.813655e-06,4.689649e-06,4.568821e-06,4.451092e-06,4.336382e-06,4.224614e-06,4.115714e-06,4.009608e-06,3.906225e-06,3.805497e-06,3.707355e-06,3.611734e-06,3.518569e-06,3.427798e-06,3.339359e-06,3.253194e-06,3.169244e-06,3.087452e-06,3.007764e-06,2.930126e-06,2.854485e-06,2.780790e-06,2.708992e-06,2.639042e-06,2.570892e-06,2.504498e-06,2.439813e-06,2.376794e-06,2.315399e-06,2.255585e-06,2.197312e-06,2.140542e-06,2.085234e-06,2.031352e-06,1.978860e-06,1.927721e-06,1.877901e-06,1.829365e-06,1.782082e-06,1.736019e-06,1.691143e-06,1.647426e-06,1.604838e-06,1.563348e-06,1.522929e-06,1.483554e-06,1.445195e-06,1.407827e-06,1.371424e-06,1.335960e-06,1.301413e-06,1.267758e-06,1.234973e-06,1.203034e-06,1.171921e-06,1.141612e-06,1.112086e-06,1.083323e-06,1.055303e-06,1.028007e-06,1.001418e-06,9.755150e-07,9.502820e-07,9.257015e-07,9.017564e-07,8.784305e-07,8.557078e-07,8.335726e-07,8.120099e-07,7.910049e-07,7.705431e-07,7.506106e-07,7.311936e-07,7.122789e-07,6.938535e-07,6.759047e-07,6.584203e-07,6.413882e-07,6.247967e-07,6.086346e-07,5.928906e-07,5.775539e-07,5.626141e-07,5.480609e-07,5.338843e-07,5.200745e-07,5.066220e-07,4.935177e-07,4.807525e-07,4.683177e-07,4.562047e-07,4.444051e-07,4.329109e-07,4.217142e-07,4.108072e-07,4.001826e-07,3.898329e-07,3.797510e-07,3.699301e-07,3.603634e-07,3.510442e-07,3.419663e-07,3.331233e-07,3.245091e-07,3.161179e-07,3.079439e-07,2.999814e-07,2.922250e-07,2.846693e-07,2.773092e-07,2.701395e-07,2.631554e-07,2.563520e-07,2.497247e-07,2.432689e-07,2.369801e-07,2.308541e-07,2.248866e-07,2.190735e-07,2.134109e-07,2.078947e-07,2.025213e-07,1.972870e-07,1.921880e-07,1.872210e-07,1.823825e-07,1.776692e-07,1.730778e-07,1.686052e-07,1.642483e-07,1.600041e-07,1.558698e-07,1.518423e-07,1.479190e-07,1.440973e-07,1.403743e-07,1.367477e-07,1.332149e-07,1.297734e-07,1.264209e-07,1.231552e-07,1.199739e-07,1.168748e-07,1.138559e-07,1.109151e-07,1.080503e-07,1.052596e-07,1.025410e-07,9.989271e-08,9.731290e-08,9.479978e-08,9.235163e-08,8.996677e-08,8.764356e-08,8.538040e-08,8.317574e-08,8.102807e-08,7.893590e-08,7.689781e-08,7.491238e-08,7.297827e-08,7.109415e-08,6.925871e-08,6.747069e-08,6.572888e-08,6.403208e-08,6.237912e-08,6.076886e-08,5.920021e-08,5.767208e-08,5.618343e-08,5.473324e-08,5.332051e-08,5.194426e-08,5.060357e-08,4.929751e-08,4.802518e-08,4.678571e-08,4.557825e-08,4.440197e-08,4.325607e-08,4.213977e-08,4.105228e-08,3.999288e-08,3.896083e-08,3.795543e-08,3.697599e-08,3.602184e-08,3.509232e-08,3.418679e-08,3.330464e-08,3.244527e-08,3.160808e-08,3.079249e-08,2.999797e-08,2.922394e-08,2.846990e-08,2.773532e-08,2.701969e-08,2.632254e-08,2.564338e-08,2.498174e-08,2.433718e-08,2.370925e-08,2.309752e-08,2.250158e-08,2.192102e-08,2.135543e-08,2.080444e-08,2.026767e-08,1.974474e-08,1.923531e-08,1.873902e-08,1.825553e-08,1.778451e-08,1.732565e-08,1.687862e-08,1.644313e-08,1.601886e-08,1.560555e-08,1.520289e-08,1.481062e-08,1.442847e-08,1.405617e-08,1.369348e-08,1.334014e-08,1.299592e-08,1.266057e-08,1.233387e-08,1.201560e-08,1.170554e-08,1.140347e-08,1.110919e-08,1.082251e-08,1.054321e-08,1.027112e-08,1.000605e-08,9.747807e-09,9.496228e-09,9.251137e-09,9.012366e-09,8.779752e-09,8.553137e-09,8.332366e-09,8.117288e-09,7.907756e-09,7.703627e-09,7.504763e-09,7.311026e-09,7.122285e-09,6.938412e-09,6.759280e-09,6.584767e-09,6.414755e-09}, {1.191158e+04,4.230405e+03,1.548925e+03,6.232765e+02,3.068290e+02,1.956654e+02,1.501254e+02,1.240258e+02,1.034881e+02,8.518446e+01,6.880224e+01,5.459610e+01,4.271166e+01,3.308530e+01,2.550068e+01,1.966488e+01,1.526653e+01,1.201164e+01,9.641729e+00,7.940378e+00,6.732785e+00,5.881784e+00,5.282348e+00,4.855833e+00,4.544620e+00,4.307430e+00,4.115423e+00,3.949040e+00,3.795516e+00,3.646952e+00,3.498861e+00,3.349077e+00,3.196961e+00,3.042821e+00,2.887513e+00,2.732158e+00,2.577959e+00,2.426078e+00,2.277568e+00,2.133334e+00,1.994118e+00,1.860499e+00,1.732899e+00,1.611603e+00,1.496769e+00,1.388451e+00,1.286614e+00,1.191152e+00,1.101900e+00,1.018650e+00,9.411606e-01,8.691686e-01,8.023949e-01,7.405526e-01,6.833525e-01,6.305072e-01,5.817348e-01,5.367613e-01,4.953229e-01,4.571670e-01,4.220535e-01,3.897553e-01,3.600583e-01,3.327616e-01,3.076774e-01,2.846302e-01,2.634573e-01,2.440071e-01,2.261397e-01,2.097253e-01,1.946443e-01,1.807864e-01,1.680500e-01,1.563417e-01,1.455755e-01,1.356725e-01,1.265605e-01,1.181730e-01,1.104493e-01,1.033335e-01,9.677479e-02,9.072635e-02,8.514546e-02,7.999303e-02,7.523328e-02,7.083350e-02,6.676376e-02,6.299671e-02,5.950734e-02,5.627275e-02,5.327203e-02,5.048605e-02,4.789731e-02,4.548980e-02,4.324889e-02,4.116117e-02,3.921440e-02,3.739735e-02,3.569975e-02,3.411221e-02,3.262612e-02,3.123359e-02,2.992739e-02,2.870090e-02,2.754807e-02,2.646331e-02,2.544153e-02,2.447805e-02,2.356857e-02,2.270914e-02,2.189613e-02,2.112623e-02,2.039637e-02,1.970374e-02,1.904576e-02,1.842004e-02,1.782439e-02,1.725680e-02,1.671540e-02,1.619850e-02,1.570450e-02,1.523194e-02,1.477950e-02,1.434591e-02,1.393004e-02,1.353083e-02,1.314728e-02,1.277850e-02,1.242364e-02,1.208193e-02,1.175263e-02,1.143509e-02,1.112866e-02,1.083279e-02,1.054692e-02,1.027055e-02,1.000322e-02,9.744502e-03,9.493975e-03,9.251267e-03,9.016021e-03,8.787907e-03,8.566613e-03,8.351850e-03,8.143343e-03,7.940837e-03,7.744091e-03,7.552878e-03,7.366985e-03,7.186210e-03,7.010364e-03,6.839267e-03,6.672751e-03,6.510653e-03,6.352823e-03,6.199116e-03,6.049395e-03,5.903531e-03,5.761398e-03,5.622879e-03,5.487862e-03,5.356240e-03,5.227909e-03,5.102773e-03,4.980736e-03,4.861710e-03,4.745609e-03,4.632348e-03,4.521851e-03,4.414038e-03,4.308839e-03,4.206182e-03,4.105998e-03,4.008222e-03,3.912792e-03,3.819645e-03,3.728723e-03,3.639969e-03,3.553326e-03,3.468743e-03,3.386167e-03,3.305548e-03,3.226837e-03,3.149988e-03,3.074954e-03,3.001690e-03,2.930155e-03,2.860305e-03,2.792101e-03,2.725502e-03,2.660470e-03,2.596968e-03,2.534959e-03,2.474407e-03,2.415278e-03,2.357539e-03,2.301156e-03,2.246097e-03,2.192332e-03,2.139830e-03,2.088561e-03,2.038497e-03,1.989609e-03,1.941870e-03,1.895253e-03,1.849732e-03,1.805281e-03,1.761876e-03,1.719492e-03,1.678106e-03,1.637694e-03,1.598233e-03,1.559702e-03,1.522080e-03,1.485344e-03,1.449475e-03,1.414452e-03,1.380256e-03,1.346868e-03,1.314268e-03,1.282439e-03,1.251363e-03,1.221023e-03,1.191400e-03,1.162479e-03,1.134244e-03,1.106678e-03,1.079766e-03,1.053493e-03,1.027844e-03,1.002804e-03,9.783599e-04,9.544971e-04,9.312023e-04,9.084623e-04,8.862642e-04,8.645954e-04,8.434436e-04,8.227968e-04,8.026432e-04,7.829712e-04,7.637698e-04,7.450278e-04,7.267347e-04,7.088798e-04,6.914531e-04,6.744444e-04,6.578440e-04,6.416423e-04,6.258301e-04,6.103981e-04,5.953375e-04,5.806397e-04,5.662960e-04,5.522981e-04,5.386380e-04,5.253077e-04,5.122995e-04,4.996057e-04,4.872190e-04,4.751321e-04,4.633381e-04,4.518299e-04,4.406008e-04,4.296442e-04,4.189538e-04,4.085231e-04,3.983462e-04,3.884169e-04,3.787293e-04,3.692779e-04,3.600569e-04,3.510608e-04,3.422845e-04,3.337225e-04,3.253699e-04,3.172217e-04,3.092729e-04,3.015189e-04,2.939549e-04,2.865765e-04,2.793792e-04,2.723587e-04,2.655108e-04,2.588313e-04,2.523162e-04,2.459616e-04,2.397636e-04,2.337185e-04,2.278225e-04,2.220721e-04,2.164639e-04,2.109943e-04,2.056600e-04,2.004579e-04,1.953846e-04,1.904371e-04,1.856124e-04,1.809074e-04,1.763193e-04,1.718453e-04,1.674825e-04,1.632284e-04,1.590802e-04,1.550353e-04,1.510914e-04,1.472459e-04,1.434964e-04,1.398405e-04,1.362761e-04,1.328009e-04,1.294126e-04,1.261093e-04,1.228887e-04,1.197489e-04,1.166879e-04,1.137037e-04,1.107946e-04,1.079585e-04,1.051939e-04,1.024988e-04,9.987160e-05,9.731061e-05,9.481421e-05,9.238080e-05,9.000882e-05,8.769676e-05,8.544315e-05,8.324653e-05,8.110550e-05,7.901867e-05,7.698472e-05,7.500233e-05,7.307021e-05,7.118713e-05,6.935186e-05,6.756322e-05,6.582004e-05,6.412119e-05,6.246557e-05,6.085211e-05,5.927974e-05,5.774745e-05,5.625424e-05,5.479912e-05,5.338114e-05,5.199937e-05,5.065292e-05,4.934088e-05,4.806240e-05,4.681664e-05,4.560278e-05,4.442000e-05,4.326754e-05,4.214463e-05,4.105052e-05,3.998448e-05,3.894582e-05,3.793384e-05,3.694786e-05,3.598724e-05,3.505132e-05,3.413949e-05,3.325112e-05,3.238564e-05,3.154246e-05,3.072101e-05,2.992075e-05,2.914113e-05,2.838163e-05,2.764174e-05,2.692096e-05,2.621881e-05,2.553480e-05,2.486849e-05,2.421941e-05,2.358712e-05,2.297121e-05,2.237124e-05,2.178682e-05,2.121755e-05,2.066303e-05,2.012290e-05,1.959678e-05,1.908431e-05,1.858515e-05,1.809895e-05,1.762538e-05,1.716411e-05,1.671484e-05,1.627725e-05,1.585104e-05,1.543592e-05,1.503160e-05,1.463781e-05,1.425427e-05,1.388073e-05,1.351691e-05,1.316258e-05,1.281749e-05,1.248140e-05,1.215407e-05,1.183528e-05,1.152482e-05,1.122245e-05,1.092799e-05,1.064121e-05,1.036192e-05,1.008994e-05,9.825057e-06,9.567101e-06,9.315891e-06,9.071250e-06,8.833009e-06,8.601001e-06,8.375064e-06,8.155041e-06,7.940778e-06,7.732126e-06,7.528938e-06,7.331073e-06,7.138392e-06,6.950759e-06,6.768045e-06,6.590119e-06,6.416859e-06,6.248142e-06,6.083849e-06,5.923866e-06,5.768080e-06,5.616382e-06,5.468664e-06,5.324824e-06,5.184759e-06,5.048371e-06,4.915564e-06,4.786245e-06,4.660322e-06,4.537707e-06,4.418313e-06,4.302055e-06,4.188852e-06,4.078624e-06,3.971293e-06,3.866783e-06,3.765020e-06,3.665933e-06,3.569451e-06,3.475505e-06,3.384030e-06,3.294961e-06,3.208234e-06,3.123788e-06,3.041564e-06,2.961503e-06,2.883548e-06,2.807644e-06,2.733738e-06,2.661776e-06,2.591708e-06,2.523484e-06,2.457055e-06,2.392375e-06,2.329398e-06,2.268078e-06,2.208372e-06,2.150238e-06,2.093635e-06,2.038521e-06,1.984859e-06,1.932610e-06,1.881736e-06,1.832202e-06,1.783972e-06,1.737013e-06,1.691290e-06,1.646770e-06,1.603424e-06,1.561219e-06,1.520125e-06,1.480114e-06,1.441156e-06,1.403224e-06,1.366291e-06,1.330331e-06,1.295318e-06,1.261228e-06,1.228035e-06,1.195716e-06,1.164248e-06,1.133610e-06,1.103778e-06,1.074732e-06,1.046451e-06,1.018914e-06,9.921032e-07,9.659982e-07,9.405807e-07,9.158326e-07,8.917362e-07,8.682744e-07,8.454305e-07,8.231882e-07,8.015315e-07,7.804452e-07,7.599141e-07,7.399237e-07,7.204596e-07,7.015081e-07,6.830555e-07,6.650888e-07,6.475952e-07,6.305621e-07,6.139775e-07,5.978295e-07,5.821066e-07,5.667976e-07,5.518916e-07,5.373780e-07,5.232465e-07,5.094869e-07,4.960895e-07,4.830447e-07,4.703433e-07,4.579761e-07,4.459344e-07,4.342097e-07,4.227934e-07,4.116776e-07,4.008543e-07,3.903158e-07,3.800546e-07,3.700634e-07,3.603350e-07,3.508626e-07,3.416394e-07,3.326589e-07,3.239146e-07,3.154003e-07,3.071100e-07,2.990377e-07,2.911778e-07,2.835246e-07,2.760727e-07,2.688167e-07,2.617516e-07,2.548723e-07,2.481739e-07,2.416516e-07,2.353008e-07,2.291170e-07,2.230958e-07,2.172329e-07,2.115242e-07,2.059655e-07,2.005530e-07,1.952827e-07,1.901510e-07,1.851542e-07,1.802887e-07,1.755511e-07,1.709380e-07,1.664462e-07,1.620724e-07,1.578136e-07,1.536667e-07,1.496287e-07,1.456969e-07,1.418684e-07,1.381405e-07,1.345106e-07,1.309760e-07,1.275343e-07,1.241830e-07,1.209198e-07,1.177423e-07,1.146483e-07,1.116355e-07,1.087019e-07,1.058454e-07,1.030639e-07,1.003555e-07,9.771821e-08,9.515020e-08,9.264965e-08,9.021477e-08,8.784385e-08,8.553519e-08,8.328718e-08,8.109820e-08,7.896672e-08,7.689121e-08,7.487021e-08,7.290229e-08,7.098605e-08,6.912013e-08,6.730322e-08,6.553402e-08,6.381127e-08,6.213377e-08,6.050032e-08,5.890977e-08,5.736098e-08,5.585286e-08,5.438435e-08,5.295440e-08,5.156200e-08,5.020616e-08,4.888592e-08,4.760035e-08,4.634854e-08,4.512961e-08,4.394268e-08,4.278692e-08,4.166151e-08,4.056565e-08,3.949857e-08,3.845951e-08,3.744774e-08,3.646253e-08,3.550320e-08,3.456906e-08,3.365946e-08,3.277374e-08,3.191128e-08,3.107148e-08,3.025373e-08,2.945745e-08,2.868209e-08,2.792710e-08,2.719193e-08,2.647607e-08,2.577902e-08,2.510028e-08,2.443936e-08,2.379581e-08,2.316916e-08,2.255897e-08,2.196482e-08,2.138627e-08,2.082292e-08,2.027438e-08,1.974024e-08,1.922014e-08,1.871371e-08,1.822058e-08,1.774042e-08,1.727287e-08,1.681760e-08,1.637430e-08,1.594266e-08,1.552236e-08,1.511310e-08,1.471460e-08,1.432658e-08,1.394876e-08,1.358087e-08,1.322265e-08,1.287385e-08,1.253423e-08,1.220353e-08,1.188153e-08,1.156799e-08,1.126271e-08,1.096545e-08,1.067601e-08,1.039418e-08,1.011977e-08,9.852574e-09,9.592410e-09,9.339090e-09,9.092436e-09,8.852272e-09,8.618428e-09,8.390739e-09,8.169042e-09,7.953180e-09,7.743000e-09,7.538353e-09,7.339094e-09,7.145081e-09,6.956177e-09,6.772247e-09,6.593161e-09,6.418791e-09,6.249014e-09,6.083709e-09,5.922759e-09,5.766049e-09,5.613468e-09,5.464908e-09,5.320262e-09,5.179428e-09,5.042307e-09,4.908799e-09,4.778811e-09,4.652250e-09,4.529026e-09,4.409052e-09,4.292241e-09}, {1.337081e+04,4.564807e+03,1.614379e+03,6.382960e+02,3.182109e+02,2.086547e+02,1.626043e+02,1.341813e+02,1.107430e+02,8.977595e+01,7.131448e+01,5.567030e+01,4.290663e+01,3.282983e+01,2.509336e+01,1.929425e+01,1.503699e+01,1.196800e+01,9.789688e+00,8.262148e+00,7.198384e+00,6.456663e+00,5.932244e+00,5.549595e+00,5.255610e+00,5.014006e+00,4.800833e+00,4.600990e+00,4.405571e+00,4.209899e+00,4.012074e+00,3.811948e+00,3.610396e+00,3.408818e+00,3.208815e+00,3.011976e+00,2.819753e+00,2.633395e+00,2.453919e+00,2.282108e+00,2.118519e+00,1.963514e+00,1.817276e+00,1.679841e+00,1.551121e+00,1.430932e+00,1.319013e+00,1.215047e+00,1.118674e+00,1.029508e+00,9.471474e-01,8.711849e-01,8.012132e-01,7.368319e-01,6.776521e-01,6.232989e-01,5.734143e-01,5.276582e-01,4.857098e-01,4.472676e-01,4.120497e-01,3.797930e-01,3.502533e-01,3.232041e-01,2.984361e-01,2.757560e-01,2.549861e-01,2.359627e-01,2.185355e-01,2.025669e-01,1.879306e-01,1.745112e-01,1.622028e-01,1.509092e-01,1.405419e-01,1.310206e-01,1.222717e-01,1.142283e-01,1.068292e-01,1.000187e-01,9.374602e-02,8.796485e-02,8.263298e-02,7.771196e-02,7.316674e-02,6.896535e-02,6.507869e-02,6.148021e-02,5.814570e-02,5.505310e-02,5.218228e-02,4.951489e-02,4.703417e-02,4.472485e-02,4.257297e-02,4.056579e-02,3.869170e-02,3.694006e-02,3.530116e-02,3.376614e-02,3.232686e-02,3.097593e-02,2.970654e-02,2.851247e-02,2.738805e-02,2.632805e-02,2.532770e-02,2.438262e-02,2.348879e-02,2.264253e-02,2.184045e-02,2.107946e-02,2.035669e-02,1.966952e-02,1.901554e-02,1.839253e-02,1.779845e-02,1.723141e-02,1.668967e-02,1.617164e-02,1.567584e-02,1.520091e-02,1.474558e-02,1.430869e-02,1.388916e-02,1.348600e-02,1.309827e-02,1.272513e-02,1.236578e-02,1.201947e-02,1.168553e-02,1.136331e-02,1.105223e-02,1.075172e-02,1.046127e-02,1.018040e-02,9.908658e-03,9.645627e-03,9.390912e-03,9.144144e-03,8.904977e-03,8.673089e-03,8.448173e-03,8.229944e-03,8.018132e-03,7.812483e-03,7.612759e-03,7.418733e-03,7.230192e-03,7.046933e-03,6.868766e-03,6.695510e-03,6.526992e-03,6.363050e-03,6.203528e-03,6.048278e-03,5.897162e-03,5.750043e-03,5.606795e-03,5.467296e-03,5.331429e-03,5.199082e-03,5.070149e-03,4.944528e-03,4.822120e-03,4.702832e-03,4.586572e-03,4.473254e-03,4.362795e-03,4.255113e-03,4.150132e-03,4.047777e-03,3.947976e-03,3.850660e-03,3.755761e-03,3.663214e-03,3.572957e-03,3.484930e-03,3.399073e-03,3.315331e-03,3.233648e-03,3.153971e-03,3.076248e-03,3.000429e-03,2.926467e-03,2.854313e-03,2.783923e-03,2.715251e-03,2.648255e-03,2.582892e-03,2.519123e-03,2.456907e-03,2.396207e-03,2.336984e-03,2.279202e-03,2.222827e-03,2.167822e-03,2.114156e-03,2.061794e-03,2.010707e-03,1.960861e-03,1.912228e-03,1.864777e-03,1.818481e-03,1.773310e-03,1.729239e-03,1.686240e-03,1.644288e-03,1.603357e-03,1.563423e-03,1.524461e-03,1.486449e-03,1.449364e-03,1.413183e-03,1.377885e-03,1.343447e-03,1.309851e-03,1.277076e-03,1.245101e-03,1.213908e-03,1.183478e-03,1.153792e-03,1.124834e-03,1.096585e-03,1.069028e-03,1.042148e-03,1.015927e-03,9.903493e-04,9.654005e-04,9.410650e-04,9.173281e-04,8.941754e-04,8.715930e-04,8.495671e-04,8.280844e-04,8.071318e-04,7.866967e-04,7.667664e-04,7.473290e-04,7.283725e-04,7.098854e-04,6.918563e-04,6.742743e-04,6.571285e-04,6.404084e-04,6.241037e-04,6.082044e-04,5.927008e-04,5.775831e-04,5.628422e-04,5.484689e-04,5.344542e-04,5.207894e-04,5.074662e-04,4.944761e-04,4.818111e-04,4.694633e-04,4.574250e-04,4.456886e-04,4.342468e-04,4.230924e-04,4.122183e-04,4.016177e-04,3.912841e-04,3.812107e-04,3.713912e-04,3.618195e-04,3.524894e-04,3.433950e-04,3.345306e-04,3.258904e-04,3.174690e-04,3.092609e-04,3.012610e-04,2.934640e-04,2.858650e-04,2.784591e-04,2.712415e-04,2.642075e-04,2.573526e-04,2.506724e-04,2.441625e-04,2.378187e-04,2.316368e-04,2.256129e-04,2.197430e-04,2.140233e-04,2.084499e-04,2.030194e-04,1.977281e-04,1.925724e-04,1.875491e-04,1.826549e-04,1.778864e-04,1.732405e-04,1.687142e-04,1.643044e-04,1.600082e-04,1.558228e-04,1.517453e-04,1.477731e-04,1.439034e-04,1.401338e-04,1.364616e-04,1.328844e-04,1.293999e-04,1.260055e-04,1.226991e-04,1.194785e-04,1.163414e-04,1.132857e-04,1.103094e-04,1.074105e-04,1.045869e-04,1.018367e-04,9.915810e-05,9.654926e-05,9.400837e-05,9.153371e-05,8.912357e-05,8.677631e-05,8.449031e-05,8.226401e-05,8.009587e-05,7.798439e-05,7.592812e-05,7.392564e-05,7.197556e-05,7.007654e-05,6.822726e-05,6.642643e-05,6.467281e-05,6.296517e-05,6.130233e-05,5.968313e-05,5.810644e-05,5.657116e-05,5.507621e-05,5.362055e-05,5.220316e-05,5.082305e-05,4.947925e-05,4.817082e-05,4.689683e-05,4.565638e-05,4.444862e-05,4.327268e-05,4.212773e-05,4.101297e-05,3.992761e-05,3.887088e-05,3.784203e-05,3.684034e-05,3.586510e-05,3.491560e-05,3.399119e-05,3.309120e-05,3.221499e-05,3.136194e-05,3.053144e-05,2.972291e-05,2.893575e-05,2.816942e-05,2.742337e-05,2.669706e-05,2.598997e-05,2.530160e-05,2.463146e-05,2.397906e-05,2.334394e-05,2.272564e-05,2.212373e-05,2.153776e-05,2.096732e-05,2.041200e-05,1.987140e-05,1.934512e-05,1.883281e-05,1.833407e-05,1.784856e-05,1.737592e-05,1.691583e-05,1.646793e-05,1.603191e-05,1.560746e-05,1.519428e-05,1.479205e-05,1.440049e-05,1.401933e-05,1.364828e-05,1.328707e-05,1.293545e-05,1.259316e-05,1.225996e-05,1.193560e-05,1.161984e-05,1.131247e-05,1.101325e-05,1.072197e-05,1.043843e-05,1.016240e-05,9.893709e-06,9.632143e-06,9.377519e-06,9.129652e-06,8.888362e-06,8.653475e-06,8.424820e-06,8.202233e-06,7.985551e-06,7.774617e-06,7.569280e-06,7.369389e-06,7.174801e-06,6.985374e-06,6.800972e-06,6.621460e-06,6.446708e-06,6.276590e-06,6.110983e-06,5.949766e-06,5.792823e-06,5.640041e-06,5.491308e-06,5.346516e-06,5.205562e-06,5.068343e-06,4.934759e-06,4.804714e-06,4.678114e-06,4.554867e-06,4.434884e-06,4.318078e-06,4.204365e-06,4.093662e-06,3.985890e-06,3.880969e-06,3.778826e-06,3.679385e-06,3.582575e-06,3.488326e-06,3.396569e-06,3.307240e-06,3.220272e-06,3.135604e-06,3.053173e-06,2.972922e-06,2.894791e-06,2.818725e-06,2.744668e-06,2.672568e-06,2.602371e-06,2.534029e-06,2.467490e-06,2.402709e-06,2.339637e-06,2.278230e-06,2.218443e-06,2.160233e-06,2.103559e-06,2.048379e-06,1.994655e-06,1.942347e-06,1.891418e-06,1.841831e-06,1.793551e-06,1.746543e-06,1.700773e-06,1.656209e-06,1.612818e-06,1.570570e-06,1.529434e-06,1.489380e-06,1.450381e-06,1.412408e-06,1.375434e-06,1.339433e-06,1.304378e-06,1.270245e-06,1.237010e-06,1.204648e-06,1.173136e-06,1.142453e-06,1.112576e-06,1.083483e-06,1.055155e-06,1.027570e-06,1.000710e-06,9.745549e-07,9.490863e-07,9.242860e-07,9.001364e-07,8.766203e-07,8.537210e-07,8.314223e-07,8.097082e-07,7.885635e-07,7.679730e-07,7.479221e-07,7.283966e-07,7.093827e-07,6.908669e-07,6.728361e-07,6.552775e-07,6.381786e-07,6.215273e-07,6.053119e-07,5.895209e-07,5.741432e-07,5.591677e-07,5.445841e-07,5.303819e-07,5.165511e-07,5.030820e-07,4.899650e-07,4.771910e-07,4.647508e-07,4.526358e-07,4.408373e-07,4.293471e-07,4.181571e-07,4.072593e-07,3.966462e-07,3.863103e-07,3.762442e-07,3.664409e-07,3.568936e-07,3.475954e-07,3.385399e-07,3.297207e-07,3.211316e-07,3.127666e-07,3.046198e-07,2.966855e-07,2.889581e-07,2.814322e-07,2.741026e-07,2.669640e-07,2.600116e-07,2.532404e-07,2.466457e-07,2.402228e-07,2.339673e-07,2.278748e-07,2.219411e-07,2.161619e-07,2.105333e-07,2.050513e-07,1.997121e-07,1.945119e-07,1.894472e-07,1.845143e-07,1.797099e-07,1.750305e-07,1.704730e-07,1.660341e-07,1.617108e-07,1.575000e-07,1.533988e-07,1.494043e-07,1.455138e-07,1.417245e-07,1.380338e-07,1.344391e-07,1.309380e-07,1.275280e-07,1.242066e-07,1.209717e-07,1.178209e-07,1.147521e-07,1.117631e-07,1.088519e-07,1.060164e-07,1.032546e-07,1.005647e-07,9.794468e-08,9.539283e-08,9.290735e-08,9.048650e-08,8.812861e-08,8.583203e-08,8.359517e-08,8.141649e-08,7.929445e-08,7.722760e-08,7.521449e-08,7.325373e-08,7.134395e-08,6.948384e-08,6.767209e-08,6.590746e-08,6.418872e-08,6.251466e-08,6.088414e-08,5.929603e-08,5.774921e-08,5.624261e-08,5.477520e-08,5.334595e-08,5.195387e-08,5.059799e-08,4.927738e-08,4.799111e-08,4.673831e-08,4.551809e-08,4.432960e-08,4.317204e-08,4.204459e-08,4.094646e-08,3.987691e-08,3.883519e-08,3.782056e-08,3.683234e-08,3.586983e-08,3.493237e-08,3.401931e-08,3.313001e-08,3.226385e-08,3.142024e-08,3.059859e-08,2.979833e-08,2.901890e-08,2.825977e-08,2.752040e-08,2.680028e-08,2.609892e-08,2.541582e-08,2.475051e-08,2.410254e-08,2.347144e-08,2.285678e-08,2.225814e-08,2.167510e-08,2.110725e-08,2.055419e-08,2.001556e-08,1.949096e-08,1.898003e-08,1.848243e-08,1.799780e-08,1.752581e-08,1.706613e-08,1.661844e-08,1.618242e-08,1.575778e-08,1.534422e-08,1.494145e-08,1.454918e-08,1.416716e-08,1.379511e-08,1.343277e-08,1.307989e-08,1.273622e-08,1.240153e-08,1.207558e-08,1.175815e-08,1.144901e-08,1.114794e-08,1.085474e-08,1.056920e-08,1.029113e-08,1.002033e-08,9.756604e-09,9.499777e-09,9.249666e-09,9.006096e-09,8.768899e-09,8.537907e-09,8.312960e-09,8.093899e-09,7.880573e-09,7.672830e-09,7.470528e-09,7.273522e-09,7.081677e-09,6.894856e-09,6.712930e-09,6.535771e-09,6.363255e-09,6.195261e-09,6.031670e-09,5.872369e-09,5.717245e-09,5.566190e-09,5.419097e-09,5.275864e-09,5.136389e-09,5.000574e-09,4.868325e-09,4.739548e-09,4.614152e-09,4.492050e-09,4.373155e-09,4.257383e-09,4.144654e-09,4.034888e-09,3.928007e-09,3.823935e-09,3.722601e-09,3.623932e-09}, {1.494257e+04,4.904865e+03,1.676410e+03,6.531285e+02,3.310752e+02,2.230177e+02,1.757432e+02,1.443381e+02,1.176030e+02,9.382995e+01,7.332246e+01,5.636830e+01,4.288657e+01,3.251441e+01,2.475441e+01,1.908585e+01,1.502936e+01,1.217634e+01,1.019629e+01,8.832254e+00,7.890774e+00,7.230273e+00,6.749938e+00,6.379974e+00,6.073574e+00,5.800549e+00,5.542429e+00,5.288787e+00,5.034545e+00,4.778040e+00,4.519667e+00,4.260948e+00,4.003914e+00,3.750711e+00,3.503359e+00,3.263619e+00,3.032935e+00,2.812417e+00,2.602855e+00,2.404751e+00,2.218351e+00,2.043691e+00,1.880632e+00,1.728899e+00,1.588108e+00,1.457802e+00,1.337468e+00,1.226560e+00,1.124516e+00,1.030766e+00,9.447480e-01,8.659131e-01,7.937304e-01,7.276923e-01,6.673168e-01,6.121494e-01,5.617633e-01,5.157602e-01,4.737697e-01,4.354482e-01,4.004784e-01,3.685677e-01,3.394471e-01,3.128696e-01,2.886090e-01,2.664583e-01,2.462283e-01,2.277465e-01,2.108554e-01,1.954116e-01,1.812847e-01,1.683559e-01,1.565172e-01,1.456705e-01,1.357265e-01,1.266043e-01,1.182303e-01,1.105377e-01,1.034659e-01,9.695965e-02,9.096910e-02,8.544880e-02,8.035753e-02,7.565785e-02,7.131576e-02,6.730035e-02,6.358356e-02,6.013987e-02,5.694610e-02,5.398114e-02,5.122581e-02,4.866266e-02,4.627578e-02,4.405072e-02,4.197428e-02,4.003446e-02,3.822030e-02,3.652181e-02,3.492989e-02,3.343620e-02,3.203315e-02,3.071379e-02,2.947178e-02,2.830131e-02,2.719706e-02,2.615417e-02,2.516818e-02,2.423501e-02,2.335090e-02,2.251241e-02,2.171639e-02,2.095993e-02,2.024036e-02,1.955524e-02,1.890229e-02,1.827944e-02,1.768476e-02,1.711649e-02,1.657299e-02,1.605276e-02,1.555438e-02,1.507659e-02,1.461817e-02,1.417802e-02,1.375511e-02,1.334850e-02,1.295729e-02,1.258066e-02,1.221785e-02,1.186814e-02,1.153088e-02,1.120543e-02,1.089122e-02,1.058772e-02,1.029441e-02,1.001083e-02,9.736532e-03,9.471097e-03,9.214138e-03,8.965290e-03,8.724207e-03,8.490566e-03,8.264062e-03,8.044407e-03,7.831330e-03,7.624573e-03,7.423895e-03,7.229066e-03,7.039868e-03,6.856096e-03,6.677553e-03,6.504055e-03,6.335424e-03,6.171493e-03,6.012102e-03,5.857097e-03,5.706335e-03,5.559675e-03,5.416986e-03,5.278140e-03,5.143016e-03,5.011499e-03,4.883476e-03,4.758841e-03,4.637492e-03,4.519330e-03,4.404261e-03,4.292194e-03,4.183041e-03,4.076719e-03,3.973146e-03,3.872244e-03,3.773938e-03,3.678155e-03,3.584826e-03,3.493881e-03,3.405257e-03,3.318889e-03,3.234717e-03,3.152681e-03,3.072724e-03,2.994791e-03,2.918827e-03,2.844781e-03,2.772603e-03,2.702243e-03,2.633654e-03,2.566790e-03,2.501606e-03,2.438060e-03,2.376108e-03,2.315710e-03,2.256827e-03,2.199419e-03,2.143450e-03,2.088882e-03,2.035680e-03,1.983810e-03,1.933239e-03,1.883933e-03,1.835861e-03,1.788992e-03,1.743295e-03,1.698743e-03,1.655305e-03,1.612955e-03,1.571665e-03,1.531409e-03,1.492161e-03,1.453897e-03,1.416592e-03,1.380222e-03,1.344764e-03,1.310195e-03,1.276494e-03,1.243640e-03,1.211611e-03,1.180386e-03,1.149947e-03,1.120274e-03,1.091348e-03,1.063150e-03,1.035663e-03,1.008869e-03,9.827508e-04,9.572921e-04,9.324766e-04,9.082884e-04,8.847121e-04,8.617325e-04,8.393349e-04,8.175051e-04,7.962290e-04,7.754930e-04,7.552837e-04,7.355881e-04,7.163936e-04,6.976877e-04,6.794584e-04,6.616939e-04,6.443827e-04,6.275135e-04,6.110755e-04,5.950578e-04,5.794502e-04,5.642424e-04,5.494244e-04,5.349866e-04,5.209196e-04,5.072141e-04,4.938610e-04,4.808516e-04,4.681774e-04,4.558299e-04,4.438010e-04,4.320828e-04,4.206673e-04,4.095471e-04,3.987148e-04,3.881630e-04,3.778849e-04,3.678734e-04,3.581219e-04,3.486238e-04,3.393727e-04,3.303624e-04,3.215869e-04,3.130401e-04,3.047163e-04,2.966098e-04,2.887152e-04,2.810270e-04,2.735399e-04,2.662490e-04,2.591492e-04,2.522355e-04,2.455034e-04,2.389480e-04,2.325650e-04,2.263499e-04,2.202984e-04,2.144062e-04,2.086694e-04,2.030840e-04,1.976459e-04,1.923516e-04,1.871971e-04,1.821790e-04,1.772937e-04,1.725378e-04,1.679079e-04,1.634008e-04,1.590133e-04,1.547423e-04,1.505847e-04,1.465377e-04,1.425983e-04,1.387638e-04,1.350313e-04,1.313984e-04,1.278623e-04,1.244205e-04,1.210705e-04,1.178100e-04,1.146367e-04,1.115481e-04,1.085422e-04,1.056166e-04,1.027694e-04,9.999851e-05,9.730182e-05,9.467743e-05,9.212342e-05,8.963795e-05,8.721919e-05,8.486539e-05,8.257483e-05,8.034584e-05,7.817678e-05,7.606606e-05,7.401214e-05,7.201351e-05,7.006870e-05,6.817628e-05,6.633485e-05,6.454306e-05,6.279958e-05,6.110313e-05,5.945245e-05,5.784633e-05,5.628356e-05,5.476299e-05,5.328350e-05,5.184398e-05,5.044336e-05,4.908061e-05,4.775470e-05,4.646464e-05,4.520948e-05,4.398828e-05,4.280013e-05,4.164413e-05,4.051942e-05,3.942517e-05,3.836054e-05,3.732475e-05,3.631701e-05,3.533658e-05,3.438270e-05,3.345467e-05,3.255179e-05,3.167339e-05,3.081878e-05,2.998735e-05,2.917845e-05,2.839148e-05,2.762585e-05,2.688098e-05,2.615630e-05,2.545127e-05,2.476536e-05,2.409805e-05,2.344883e-05,2.281722e-05,2.220273e-05,2.160491e-05,2.102329e-05,2.045745e-05,1.990694e-05,1.937137e-05,1.885031e-05,1.834337e-05,1.785018e-05,1.737036e-05,1.690354e-05,1.644937e-05,1.600751e-05,1.557762e-05,1.515938e-05,1.475246e-05,1.435657e-05,1.397140e-05,1.359666e-05,1.323207e-05,1.287734e-05,1.253222e-05,1.219644e-05,1.186974e-05,1.155188e-05,1.124262e-05,1.094173e-05,1.064897e-05,1.036412e-05,1.008697e-05,9.817316e-06,9.554943e-06,9.299659e-06,9.051268e-06,8.809584e-06,8.574424e-06,8.345610e-06,8.122971e-06,7.906337e-06,7.695545e-06,7.490437e-06,7.290857e-06,7.096656e-06,6.907686e-06,6.723807e-06,6.544878e-06,6.370766e-06,6.201340e-06,6.036472e-06,5.876039e-06,5.719919e-06,5.567996e-06,5.420156e-06,5.276287e-06,5.136283e-06,5.000037e-06,4.867448e-06,4.738417e-06,4.612847e-06,4.490645e-06,4.371718e-06,4.255979e-06,4.143340e-06,4.033717e-06,3.927030e-06,3.823198e-06,3.722143e-06,3.623792e-06,3.528070e-06,3.434907e-06,3.344233e-06,3.255981e-06,3.170085e-06,3.086482e-06,3.005110e-06,2.925908e-06,2.848818e-06,2.773783e-06,2.700747e-06,2.629657e-06,2.560459e-06,2.493104e-06,2.427540e-06,2.363721e-06,2.301598e-06,2.241126e-06,2.182262e-06,2.124960e-06,2.069181e-06,2.014881e-06,1.962023e-06,1.910566e-06,1.860474e-06,1.811709e-06,1.764237e-06,1.718021e-06,1.673030e-06,1.629229e-06,1.586586e-06,1.545072e-06,1.504655e-06,1.465307e-06,1.426998e-06,1.389701e-06,1.353388e-06,1.318034e-06,1.283612e-06,1.250099e-06,1.217469e-06,1.185698e-06,1.154765e-06,1.124647e-06,1.095321e-06,1.066768e-06,1.038965e-06,1.011894e-06,9.855348e-07,9.598682e-07,9.348760e-07,9.105402e-07,8.868434e-07,8.637686e-07,8.412993e-07,8.194194e-07,7.981133e-07,7.773656e-07,7.571617e-07,7.374871e-07,7.183277e-07,6.996700e-07,6.815006e-07,6.638066e-07,6.465754e-07,6.297948e-07,6.134528e-07,5.975379e-07,5.820388e-07,5.669445e-07,5.522443e-07,5.379278e-07,5.239849e-07,5.104057e-07,4.971807e-07,4.843005e-07,4.717560e-07,4.595384e-07,4.476391e-07,4.360497e-07,4.247620e-07,4.137682e-07,4.030604e-07,3.926313e-07,3.824733e-07,3.725796e-07,3.629430e-07,3.535569e-07,3.444147e-07,3.355100e-07,3.268366e-07,3.183883e-07,3.101594e-07,3.021441e-07,2.943367e-07,2.867319e-07,2.793243e-07,2.721088e-07,2.650803e-07,2.582340e-07,2.515652e-07,2.450691e-07,2.387413e-07,2.325774e-07,2.265730e-07,2.207242e-07,2.150267e-07,2.094766e-07,2.040702e-07,1.988036e-07,1.936733e-07,1.886756e-07,1.838071e-07,1.790645e-07,1.744445e-07,1.699439e-07,1.655596e-07,1.612885e-07,1.571278e-07,1.530745e-07,1.491260e-07,1.452793e-07,1.415320e-07,1.378814e-07,1.343250e-07,1.308605e-07,1.274853e-07,1.241972e-07,1.209939e-07,1.178732e-07,1.148331e-07,1.118713e-07,1.089860e-07,1.061750e-07,1.034365e-07,1.007686e-07,9.816941e-08,9.563726e-08,9.317037e-08,9.076706e-08,8.842567e-08,8.614462e-08,8.392234e-08,8.175731e-08,7.964805e-08,7.759313e-08,7.559114e-08,7.364072e-08,7.174053e-08,6.988928e-08,6.808571e-08,6.632858e-08,6.461670e-08,6.294891e-08,6.132406e-08,5.974104e-08,5.819879e-08,5.669625e-08,5.523239e-08,5.380622e-08,5.241677e-08,5.106309e-08,4.974427e-08,4.845940e-08,4.720760e-08,4.598804e-08,4.479988e-08,4.364230e-08,4.251453e-08,4.141580e-08,4.034535e-08,3.930246e-08,3.828643e-08,3.729656e-08,3.633218e-08,3.539263e-08,3.447727e-08,3.358549e-08,3.271667e-08,3.187023e-08,3.104558e-08,3.024218e-08,2.945947e-08,2.869692e-08,2.795401e-08,2.723025e-08,2.652513e-08,2.583817e-08,2.516892e-08,2.451691e-08,2.388170e-08,2.326287e-08,2.265998e-08,2.207263e-08,2.150043e-08,2.094297e-08,2.039989e-08,1.987081e-08,1.935537e-08,1.885323e-08,1.836403e-08,1.788746e-08,1.742317e-08,1.697087e-08,1.653023e-08,1.610097e-08,1.568278e-08,1.527539e-08,1.487851e-08,1.449188e-08,1.411523e-08,1.374831e-08,1.339086e-08,1.304264e-08,1.270342e-08,1.237296e-08,1.205104e-08,1.173744e-08,1.143194e-08,1.113434e-08,1.084444e-08,1.056202e-08,1.028692e-08,1.001892e-08,9.757859e-09,9.503551e-09,9.255822e-09,9.014504e-09,8.779431e-09,8.550444e-09,8.327384e-09,8.110101e-09,7.898444e-09,7.692270e-09,7.491437e-09,7.295807e-09,7.105247e-09,6.919626e-09,6.738816e-09,6.562695e-09,6.391141e-09,6.224036e-09,6.061266e-09,5.902719e-09,5.748287e-09,5.597862e-09,5.451343e-09,5.308627e-09,5.169618e-09,5.034220e-09,4.902339e-09,4.773884e-09,4.648768e-09,4.526904e-09,4.408209e-09,4.292599e-09,4.179997e-09,4.070324e-09,3.963504e-09,3.859464e-09,3.758132e-09,3.659438e-09,3.563315e-09,3.469694e-09,3.378513e-09,3.289707e-09,3.203215e-09,3.118978e-09}, {1.662673e+04,5.247214e+03,1.734649e+03,6.678494e+02,3.451281e+02,2.382183e+02,1.890093e+02,1.541052e+02,1.238527e+02,9.728417e+01,7.487400e+01,5.680414e+01,4.279557e+01,3.228697e+01,2.461867e+01,1.915204e+01,1.532974e+01,1.269642e+01,1.089735e+01,9.666214e+00,8.809404e+00,8.190293e+00,7.715367e+00,7.322758e+00,6.973202e+00,6.643147e+00,6.319642e+00,5.996647e+00,5.672423e+00,5.347734e+00,5.024644e+00,4.705737e+00,4.393635e+00,4.090720e+00,3.798993e+00,3.520016e+00,3.254922e+00,3.004436e+00,2.768935e+00,2.548494e+00,2.342946e+00,2.151933e+00,1.974952e+00,1.811392e+00,1.660575e+00,1.521776e+00,1.394249e+00,1.277246e+00,1.170028e+00,1.071876e+00,9.820995e-01,9.000402e-01,8.250758e-01,7.566218e-01,6.941322e-01,6.370988e-01,5.850512e-01,5.375548e-01,4.942094e-01,4.546475e-01,4.185319e-01,3.855545e-01,3.554336e-01,3.279120e-01,3.027556e-01,2.797510e-01,2.587042e-01,2.394386e-01,2.217940e-01,2.056247e-01,1.907984e-01,1.771951e-01,1.647058e-01,1.532315e-01,1.426826e-01,1.329775e-01,1.240424e-01,1.158100e-01,1.082196e-01,1.012156e-01,9.474796e-02,8.877090e-02,8.324293e-02,7.812630e-02,7.338670e-02,6.899287e-02,6.491636e-02,6.113128e-02,5.761401e-02,5.434302e-02,5.129868e-02,4.846306e-02,4.581978e-02,4.335389e-02,4.105170e-02,3.890069e-02,3.688941e-02,3.500735e-02,3.324489e-02,3.159319e-02,3.004416e-02,2.859034e-02,2.722490e-02,2.594154e-02,2.473446e-02,2.359834e-02,2.252824e-02,2.151965e-02,2.056836e-02,1.967052e-02,1.882256e-02,1.802116e-02,1.726328e-02,1.654609e-02,1.586696e-02,1.522347e-02,1.461335e-02,1.403452e-02,1.348504e-02,1.296309e-02,1.246700e-02,1.199520e-02,1.154624e-02,1.111877e-02,1.071152e-02,1.032331e-02,9.953048e-03,9.599704e-03,9.262321e-03,8.940004e-03,8.631915e-03,8.337272e-03,8.055341e-03,7.785435e-03,7.526913e-03,7.279171e-03,7.041643e-03,6.813801e-03,6.595145e-03,6.385208e-03,6.183551e-03,5.989762e-03,5.803451e-03,5.624254e-03,5.451826e-03,5.285844e-03,5.126002e-03,4.972013e-03,4.823605e-03,4.680523e-03,4.542524e-03,4.409380e-03,4.280877e-03,4.156809e-03,4.036984e-03,3.921220e-03,3.809344e-03,3.701192e-03,3.596609e-03,3.495449e-03,3.397572e-03,3.302846e-03,3.211144e-03,3.122349e-03,3.036346e-03,2.953028e-03,2.872292e-03,2.794041e-03,2.718181e-03,2.644625e-03,2.573287e-03,2.504087e-03,2.436949e-03,2.371799e-03,2.308567e-03,2.247186e-03,2.187593e-03,2.129726e-03,2.073526e-03,2.018937e-03,1.965907e-03,1.914382e-03,1.864315e-03,1.815657e-03,1.768364e-03,1.722391e-03,1.677697e-03,1.634241e-03,1.591986e-03,1.550893e-03,1.510926e-03,1.472052e-03,1.434238e-03,1.397450e-03,1.361659e-03,1.326835e-03,1.292948e-03,1.259972e-03,1.227880e-03,1.196645e-03,1.166244e-03,1.136651e-03,1.107845e-03,1.079801e-03,1.052499e-03,1.025918e-03,1.000037e-03,9.748368e-04,9.502979e-04,9.264020e-04,9.031314e-04,8.804687e-04,8.583970e-04,8.369002e-04,8.159624e-04,7.955684e-04,7.757034e-04,7.563529e-04,7.375030e-04,7.191402e-04,7.012512e-04,6.838234e-04,6.668443e-04,6.503019e-04,6.341845e-04,6.184808e-04,6.031797e-04,5.882704e-04,5.737427e-04,5.595863e-04,5.457914e-04,5.323485e-04,5.192482e-04,5.064816e-04,4.940398e-04,4.819143e-04,4.700967e-04,4.585790e-04,4.473534e-04,4.364121e-04,4.257478e-04,4.153531e-04,4.052212e-04,3.953450e-04,3.857179e-04,3.763335e-04,3.671855e-04,3.582676e-04,3.495740e-04,3.410987e-04,3.328362e-04,3.247809e-04,3.169275e-04,3.092707e-04,3.018054e-04,2.945268e-04,2.874299e-04,2.805102e-04,2.737629e-04,2.671838e-04,2.607684e-04,2.545126e-04,2.484122e-04,2.424633e-04,2.366620e-04,2.310044e-04,2.254869e-04,2.201060e-04,2.148580e-04,2.097397e-04,2.047477e-04,1.998787e-04,1.951296e-04,1.904975e-04,1.859792e-04,1.815719e-04,1.772727e-04,1.730790e-04,1.689880e-04,1.649971e-04,1.611038e-04,1.573056e-04,1.536001e-04,1.499850e-04,1.464579e-04,1.430166e-04,1.396590e-04,1.363830e-04,1.331864e-04,1.300674e-04,1.270239e-04,1.240540e-04,1.211559e-04,1.183278e-04,1.155679e-04,1.128745e-04,1.102460e-04,1.076807e-04,1.051771e-04,1.027335e-04,1.003486e-04,9.802080e-05,9.574873e-05,9.353098e-05,9.136621e-05,8.925310e-05,8.719037e-05,8.517678e-05,8.321109e-05,8.129213e-05,7.941875e-05,7.758981e-05,7.580421e-05,7.406090e-05,7.235882e-05,7.069697e-05,6.907435e-05,6.749001e-05,6.594299e-05,6.443240e-05,6.295733e-05,6.151692e-05,6.011032e-05,5.873670e-05,5.739527e-05,5.608524e-05,5.480584e-05,5.355633e-05,5.233599e-05,5.114411e-05,4.998000e-05,4.884298e-05,4.773241e-05,4.664764e-05,4.558806e-05,4.455305e-05,4.354203e-05,4.255441e-05,4.158964e-05,4.064718e-05,3.972648e-05,3.882702e-05,3.794830e-05,3.708982e-05,3.625110e-05,3.543167e-05,3.463108e-05,3.384886e-05,3.308459e-05,3.233785e-05,3.160821e-05,3.089527e-05,3.019864e-05,2.951793e-05,2.885277e-05,2.820278e-05,2.756763e-05,2.694695e-05,2.634040e-05,2.574766e-05,2.516839e-05,2.460230e-05,2.404906e-05,2.350838e-05,2.297996e-05,2.246353e-05,2.195879e-05,2.146548e-05,2.098333e-05,2.051209e-05,2.005150e-05,1.960132e-05,1.916129e-05,1.873120e-05,1.831080e-05,1.789989e-05,1.749823e-05,1.710561e-05,1.672183e-05,1.634669e-05,1.597998e-05,1.562151e-05,1.527109e-05,1.492855e-05,1.459369e-05,1.426635e-05,1.394635e-05,1.363352e-05,1.332771e-05,1.302874e-05,1.273648e-05,1.245075e-05,1.217142e-05,1.189834e-05,1.163137e-05,1.137036e-05,1.111519e-05,1.086573e-05,1.062183e-05,1.038339e-05,1.015027e-05,9.922351e-06,9.699523e-06,9.481667e-06,9.268672e-06,9.060428e-06,8.856829e-06,8.657770e-06,8.463150e-06,8.272869e-06,8.086830e-06,7.904936e-06,7.727097e-06,7.553221e-06,7.383219e-06,7.217004e-06,7.054493e-06,6.895602e-06,6.740251e-06,6.588360e-06,6.439853e-06,6.294654e-06,6.152689e-06,6.013886e-06,5.878175e-06,5.745488e-06,5.615756e-06,5.488914e-06,5.364899e-06,5.243646e-06,5.125095e-06,5.009186e-06,4.895860e-06,4.785060e-06,4.676730e-06,4.570815e-06,4.467261e-06,4.366017e-06,4.267030e-06,4.170252e-06,4.075632e-06,3.983124e-06,3.892681e-06,3.804256e-06,3.717805e-06,3.633285e-06,3.550653e-06,3.469867e-06,3.390886e-06,3.313670e-06,3.238180e-06,3.164379e-06,3.092228e-06,3.021692e-06,2.952734e-06,2.885320e-06,2.819415e-06,2.754987e-06,2.692002e-06,2.630429e-06,2.570236e-06,2.511393e-06,2.453870e-06,2.397639e-06,2.342669e-06,2.288934e-06,2.236406e-06,2.185059e-06,2.134866e-06,2.085802e-06,2.037842e-06,1.990961e-06,1.945135e-06,1.900342e-06,1.856558e-06,1.813762e-06,1.771930e-06,1.731042e-06,1.691077e-06,1.652015e-06,1.613835e-06,1.576517e-06,1.540044e-06,1.504395e-06,1.469554e-06,1.435501e-06,1.402219e-06,1.369692e-06,1.337902e-06,1.306833e-06,1.276469e-06,1.246795e-06,1.217794e-06,1.189453e-06,1.161756e-06,1.134690e-06,1.108239e-06,1.082390e-06,1.057131e-06,1.032447e-06,1.008326e-06,9.847559e-07,9.617236e-07,9.392174e-07,9.172256e-07,8.957366e-07,8.747393e-07,8.542226e-07,8.341757e-07,8.145883e-07,7.954499e-07,7.767506e-07,7.584804e-07,7.406299e-07,7.231895e-07,7.061500e-07,6.895026e-07,6.732383e-07,6.573485e-07,6.418249e-07,6.266591e-07,6.118433e-07,5.973693e-07,5.832297e-07,5.694168e-07,5.559232e-07,5.427418e-07,5.298656e-07,5.172875e-07,5.050010e-07,4.929993e-07,4.812761e-07,4.698251e-07,4.586401e-07,4.477150e-07,4.370440e-07,4.266213e-07,4.164413e-07,4.064985e-07,3.967874e-07,3.873029e-07,3.780397e-07,3.689928e-07,3.601574e-07,3.515285e-07,3.431015e-07,3.348717e-07,3.268347e-07,3.189861e-07,3.113216e-07,3.038369e-07,2.965279e-07,2.893907e-07,2.824212e-07,2.756157e-07,2.689703e-07,2.624815e-07,2.561455e-07,2.499590e-07,2.439184e-07,2.380204e-07,2.322617e-07,2.266392e-07,2.211496e-07,2.157900e-07,2.105572e-07,2.054485e-07,2.004608e-07,1.955915e-07,1.908378e-07,1.861970e-07,1.816664e-07,1.772436e-07,1.729261e-07,1.687113e-07,1.645970e-07,1.605807e-07,1.566602e-07,1.528333e-07,1.490978e-07,1.454516e-07,1.418925e-07,1.384186e-07,1.350278e-07,1.317183e-07,1.284881e-07,1.253354e-07,1.222583e-07,1.192551e-07,1.163240e-07,1.134634e-07,1.106717e-07,1.079471e-07,1.052881e-07,1.026932e-07,1.001609e-07,9.768971e-08,9.527815e-08,9.292484e-08,9.062840e-08,8.838751e-08,8.620084e-08,8.406712e-08,8.198509e-08,7.995353e-08,7.797125e-08,7.603708e-08,7.414988e-08,7.230854e-08,7.051196e-08,6.875909e-08,6.704889e-08,6.538034e-08,6.375245e-08,6.216426e-08,6.061482e-08,5.910320e-08,5.762850e-08,5.618985e-08,5.478638e-08,5.341725e-08,5.208163e-08,5.077874e-08,4.950779e-08,4.826800e-08,4.705864e-08,4.587897e-08,4.472828e-08,4.360588e-08,4.251108e-08,4.144322e-08,4.040166e-08,3.938576e-08,3.839490e-08,3.742848e-08,3.648590e-08,3.556661e-08,3.467002e-08,3.379560e-08,3.294281e-08,3.211112e-08,3.130002e-08,3.050902e-08,2.973762e-08,2.898536e-08,2.825176e-08,2.753638e-08,2.683877e-08,2.615851e-08,2.549515e-08,2.484831e-08,2.421757e-08,2.360254e-08,2.300284e-08,2.241810e-08,2.184794e-08,2.129202e-08,2.074999e-08,2.022150e-08,1.970622e-08,1.920384e-08,1.871403e-08,1.823648e-08,1.777090e-08,1.731700e-08,1.687448e-08,1.644306e-08,1.602248e-08,1.561247e-08,1.521276e-08,1.482310e-08,1.444325e-08,1.407296e-08,1.371199e-08,1.336013e-08,1.301713e-08,1.268279e-08,1.235689e-08,1.203922e-08,1.172957e-08,1.142775e-08,1.113356e-08,1.084682e-08,1.056733e-08,1.029493e-08,1.002943e-08,9.770659e-09,9.518453e-09,9.272649e-09,9.033085e-09,8.799608e-09,8.572066e-09,8.350309e-09,8.134195e-09,7.923582e-09,7.718332e-09,7.518312e-09,7.323391e-09,7.133441e-09,6.948339e-09}, {1.844859e+04,5.597695e+03,1.791027e+03,6.835486e+02,3.612926e+02,2.551115e+02,2.031571e+02,1.640972e+02,1.299503e+02,1.004449e+02,7.614233e+01,5.704408e+01,4.262093e+01,3.208209e+01,2.459046e+01,1.938459e+01,1.583015e+01,1.342899e+01,1.180698e+01,1.069325e+01,9.898163e+00,9.293329e+00,8.795003e+00,8.350979e+00,7.930680e+00,7.517885e+00,7.105534e+00,6.692120e+00,6.279239e+00,5.869993e+00,5.467978e+00,5.076680e+00,4.699145e+00,4.337833e+00,3.994570e+00,3.670581e+00,3.366553e+00,3.082710e+00,2.818899e+00,2.574669e+00,2.349341e+00,2.142073e+00,1.951913e+00,1.777839e+00,1.618799e+00,1.473734e+00,1.341603e+00,1.221394e+00,1.112140e+00,1.012921e+00,9.228746e-01,8.411930e-01,7.671264e-01,6.999815e-01,6.391203e-01,5.839571e-01,5.339562e-01,4.886291e-01,4.475307e-01,4.102567e-01,3.764402e-01,3.457488e-01,3.178817e-01,2.925667e-01,2.695581e-01,2.486337e-01,2.295934e-01,2.122563e-01,1.964593e-01,1.820555e-01,1.689121e-01,1.569098e-01,1.459406e-01,1.359074e-01,1.267225e-01,1.183068e-01,1.105890e-01,1.035045e-01,9.699536e-02,9.100900e-02,8.549800e-02,8.041949e-02,7.573474e-02,7.140869e-02,6.740963e-02,6.370888e-02,6.028043e-02,5.710073e-02,5.414845e-02,5.140423e-02,4.885049e-02,4.647130e-02,4.425217e-02,4.217995e-02,4.024266e-02,3.842942e-02,3.673032e-02,3.513633e-02,3.363924e-02,3.223153e-02,3.090637e-02,2.965751e-02,2.847924e-02,2.736634e-02,2.631406e-02,2.531800e-02,2.437419e-02,2.347895e-02,2.262891e-02,2.182101e-02,2.105239e-02,2.032045e-02,1.962281e-02,1.895725e-02,1.832175e-02,1.771442e-02,1.713355e-02,1.657754e-02,1.604491e-02,1.553430e-02,1.504444e-02,1.457418e-02,1.412242e-02,1.368815e-02,1.327045e-02,1.286844e-02,1.248131e-02,1.210832e-02,1.174874e-02,1.140194e-02,1.106730e-02,1.074424e-02,1.043223e-02,1.013076e-02,9.839372e-03,9.557610e-03,9.285064e-03,9.021341e-03,8.766072e-03,8.518912e-03,8.279531e-03,8.047621e-03,7.822887e-03,7.605055e-03,7.393861e-03,7.189056e-03,6.990405e-03,6.797684e-03,6.610678e-03,6.429187e-03,6.253015e-03,6.081980e-03,5.915906e-03,5.754624e-03,5.597975e-03,5.445806e-03,5.297970e-03,5.154326e-03,5.014741e-03,4.879084e-03,4.747232e-03,4.619067e-03,4.494473e-03,4.373342e-03,4.255566e-03,4.141046e-03,4.029682e-03,3.921381e-03,3.816051e-03,3.713605e-03,3.613957e-03,3.517027e-03,3.422735e-03,3.331005e-03,3.241763e-03,3.154939e-03,3.070462e-03,2.988268e-03,2.908290e-03,2.830466e-03,2.754737e-03,2.681044e-03,2.609329e-03,2.539537e-03,2.471617e-03,2.405514e-03,2.341181e-03,2.278568e-03,2.217627e-03,2.158314e-03,2.100583e-03,2.044392e-03,1.989698e-03,1.936462e-03,1.884643e-03,1.834203e-03,1.785106e-03,1.737314e-03,1.690793e-03,1.645509e-03,1.601428e-03,1.558519e-03,1.516749e-03,1.476089e-03,1.436509e-03,1.397979e-03,1.360473e-03,1.323962e-03,1.288420e-03,1.253822e-03,1.220143e-03,1.187357e-03,1.155442e-03,1.124374e-03,1.094131e-03,1.064691e-03,1.036033e-03,1.008136e-03,9.809805e-04,9.545461e-04,9.288141e-04,9.037660e-04,8.793837e-04,8.556497e-04,8.325470e-04,8.100588e-04,7.881689e-04,7.668617e-04,7.461218e-04,7.259342e-04,7.062843e-04,6.871581e-04,6.685418e-04,6.504218e-04,6.327852e-04,6.156193e-04,5.989116e-04,5.826501e-04,5.668230e-04,5.514189e-04,5.364267e-04,5.218355e-04,5.076347e-04,4.938141e-04,4.803637e-04,4.672737e-04,4.545345e-04,4.421371e-04,4.300722e-04,4.183313e-04,4.069056e-04,3.957870e-04,3.849673e-04,3.744386e-04,3.641931e-04,3.542236e-04,3.445225e-04,3.350829e-04,3.258979e-04,3.169606e-04,3.082645e-04,2.998033e-04,2.915707e-04,2.835606e-04,2.757672e-04,2.681847e-04,2.608075e-04,2.536301e-04,2.466473e-04,2.398539e-04,2.332447e-04,2.268150e-04,2.205599e-04,2.144748e-04,2.085552e-04,2.027966e-04,1.971947e-04,1.917455e-04,1.864446e-04,1.812883e-04,1.762727e-04,1.713939e-04,1.666484e-04,1.620325e-04,1.575427e-04,1.531758e-04,1.489283e-04,1.447971e-04,1.407790e-04,1.368711e-04,1.330703e-04,1.293738e-04,1.257787e-04,1.222823e-04,1.188820e-04,1.155752e-04,1.123592e-04,1.092318e-04,1.061904e-04,1.032328e-04,1.003567e-04,9.755982e-05,9.484010e-05,9.219541e-05,8.962372e-05,8.712304e-05,8.469145e-05,8.232707e-05,8.002806e-05,7.779265e-05,7.561910e-05,7.350573e-05,7.145090e-05,6.945300e-05,6.751049e-05,6.562185e-05,6.378560e-05,6.200031e-05,6.026460e-05,5.857709e-05,5.693648e-05,5.534146e-05,5.379080e-05,5.228328e-05,5.081770e-05,4.939292e-05,4.800781e-05,4.666129e-05,4.535229e-05,4.407978e-05,4.284275e-05,4.164022e-05,4.047125e-05,3.933490e-05,3.823028e-05,3.715651e-05,3.611274e-05,3.509813e-05,3.411188e-05,3.315321e-05,3.222135e-05,3.131556e-05,3.043512e-05,2.957932e-05,2.874747e-05,2.793893e-05,2.715303e-05,2.638915e-05,2.564668e-05,2.492502e-05,2.422359e-05,2.354184e-05,2.287920e-05,2.223516e-05,2.160919e-05,2.100079e-05,2.040947e-05,1.983475e-05,1.927617e-05,1.873328e-05,1.820564e-05,1.769282e-05,1.719442e-05,1.671003e-05,1.623925e-05,1.578171e-05,1.533704e-05,1.490487e-05,1.448486e-05,1.407666e-05,1.367995e-05,1.329440e-05,1.291971e-05,1.255556e-05,1.220166e-05,1.185772e-05,1.152347e-05,1.119863e-05,1.088293e-05,1.057613e-05,1.027797e-05,9.988212e-06,9.706615e-06,9.432952e-06,9.166999e-06,8.908541e-06,8.657366e-06,8.413271e-06,8.176055e-06,7.945525e-06,7.721494e-06,7.503778e-06,7.292199e-06,7.086586e-06,6.886770e-06,6.692588e-06,6.503880e-06,6.320494e-06,6.142280e-06,5.969090e-06,5.800785e-06,5.637227e-06,5.478280e-06,5.323817e-06,5.173710e-06,5.027837e-06,4.886077e-06,4.748316e-06,4.614441e-06,4.484342e-06,4.357912e-06,4.235048e-06,4.115649e-06,3.999619e-06,3.886861e-06,3.777283e-06,3.670797e-06,3.567313e-06,3.466749e-06,3.369021e-06,3.274049e-06,3.181756e-06,3.092066e-06,3.004905e-06,2.920203e-06,2.837890e-06,2.757898e-06,2.680162e-06,2.604618e-06,2.531204e-06,2.459861e-06,2.390530e-06,2.323154e-06,2.257677e-06,2.194047e-06,2.132211e-06,2.072119e-06,2.013720e-06,1.956969e-06,1.901817e-06,1.848220e-06,1.796134e-06,1.745517e-06,1.696326e-06,1.648522e-06,1.602066e-06,1.556919e-06,1.513044e-06,1.470407e-06,1.428971e-06,1.388702e-06,1.349569e-06,1.311538e-06,1.274579e-06,1.238662e-06,1.203757e-06,1.169835e-06,1.136870e-06,1.104833e-06,1.073698e-06,1.043441e-06,1.014037e-06,9.854603e-07,9.576892e-07,9.307003e-07,9.044718e-07,8.789821e-07,8.542105e-07,8.301366e-07,8.067408e-07,7.840040e-07,7.619076e-07,7.404335e-07,7.195643e-07,6.992828e-07,6.795725e-07,6.604173e-07,6.418016e-07,6.237101e-07,6.061280e-07,5.890411e-07,5.724354e-07,5.562973e-07,5.406136e-07,5.253715e-07,5.105587e-07,4.961629e-07,4.821725e-07,4.685760e-07,4.553624e-07,4.425208e-07,4.300408e-07,4.179122e-07,4.061251e-07,3.946699e-07,3.835372e-07,3.727180e-07,3.622034e-07,3.519849e-07,3.420541e-07,3.324029e-07,3.230234e-07,3.139081e-07,3.050494e-07,2.964402e-07,2.880734e-07,2.799421e-07,2.720399e-07,2.643602e-07,2.568967e-07,2.496434e-07,2.425944e-07,2.357439e-07,2.290863e-07,2.226162e-07,2.163283e-07,2.102175e-07,2.042789e-07,1.985075e-07,1.928987e-07,1.874478e-07,1.821506e-07,1.770025e-07,1.719995e-07,1.671374e-07,1.624123e-07,1.578203e-07,1.533578e-07,1.490209e-07,1.448063e-07,1.407105e-07,1.367300e-07,1.328618e-07,1.291026e-07,1.254493e-07,1.218991e-07,1.184489e-07,1.150960e-07,1.118376e-07,1.086711e-07,1.055938e-07,1.026034e-07,9.969728e-08,9.687313e-08,9.412864e-08,9.146156e-08,8.886973e-08,8.635101e-08,8.390336e-08,8.152478e-08,7.921331e-08,7.696708e-08,7.478425e-08,7.266304e-08,7.060170e-08,6.859856e-08,6.665198e-08,6.476036e-08,6.292216e-08,6.113588e-08,5.940005e-08,5.771326e-08,5.607413e-08,5.448130e-08,5.293349e-08,5.142941e-08,4.996785e-08,4.854760e-08,4.716751e-08,4.582643e-08,4.452327e-08,4.325697e-08,4.202648e-08,4.083080e-08,3.966894e-08,3.853996e-08,3.744293e-08,3.637694e-08,3.534113e-08,3.433463e-08,3.335664e-08,3.240633e-08,3.148294e-08,3.058570e-08,2.971388e-08,2.886676e-08,2.804364e-08,2.724385e-08,2.646673e-08,2.571163e-08,2.497795e-08,2.426507e-08,2.357241e-08,2.289939e-08,2.224547e-08,2.161010e-08,2.099276e-08,2.039294e-08,1.981015e-08,1.924391e-08,1.869374e-08,1.815920e-08,1.763984e-08,1.713524e-08,1.664498e-08,1.616864e-08,1.570585e-08,1.525621e-08,1.481936e-08,1.439493e-08,1.398258e-08,1.358195e-08,1.319273e-08,1.281458e-08,1.244719e-08,1.209026e-08,1.174350e-08,1.140661e-08,1.107932e-08,1.076135e-08,1.045244e-08,1.015233e-08,9.860784e-09,9.577546e-09,9.302384e-09,9.035071e-09,8.775383e-09,8.523105e-09,8.278026e-09,8.039943e-09,7.808656e-09,7.583974e-09,7.365709e-09,7.153679e-09,6.947706e-09,6.747620e-09,6.553253e-09,6.364443e-09,6.181032e-09,6.002866e-09,5.829797e-09,5.661680e-09,5.498374e-09,5.339743e-09,5.185653e-09,5.035976e-09,4.890586e-09,4.749361e-09,4.612182e-09,4.478936e-09,4.349509e-09,4.223793e-09,4.101682e-09,3.983075e-09,3.867870e-09,3.755972e-09,3.647285e-09,3.541719e-09,3.439184e-09,3.339594e-09,3.242866e-09,3.148917e-09,3.057668e-09,2.969043e-09,2.882966e-09,2.799365e-09,2.718169e-09,2.639309e-09,2.562719e-09,2.488333e-09,2.416090e-09,2.345927e-09,2.277785e-09,2.211607e-09,2.147337e-09,2.084918e-09,2.024300e-09,1.965430e-09,1.908258e-09,1.852736e-09,1.798816e-09,1.746453e-09,1.695602e-09,1.646219e-09,1.598263e-09,1.551693e-09,1.506469e-09,1.462552e-09,1.419905e-09,1.378491e-09,1.338276e-09,1.299224e-09,1.261302e-09,1.224478e-09,1.188721e-09,1.153999e-09,1.120283e-09,1.087545e-09,1.055755e-09,1.024887e-09}, {2.038814e+04,5.951452e+03,1.844739e+03,7.002254e+02,3.793343e+02,2.731631e+02,2.175535e+02,1.737591e+02,1.355055e+02,1.031000e+02,7.706475e+01,5.713076e+01,4.246666e+01,3.202929e+01,2.479918e+01,1.989670e+01,1.661910e+01,1.443479e+01,1.295868e+01,1.192224e+01,1.114508e+01,1.051083e+01,9.948036e+00,9.415724e+00,8.892822e+00,8.370728e+00,7.848190e+00,7.327903e+00,6.814328e+00,6.312352e+00,5.826527e+00,5.360676e+00,4.917741e+00,4.499777e+00,4.108016e+00,3.742982e+00,3.404611e+00,3.092375e+00,2.805395e+00,2.542535e+00,2.302489e+00,2.083846e+00,1.885145e+00,1.704916e+00,1.541713e+00,1.394137e+00,1.260851e+00,1.140592e+00,1.032177e+00,9.345040e-01,8.465552e-01,7.673938e-01,6.961617e-01,6.320755e-01,5.744224e-01,5.225554e-01,4.758888e-01,4.338932e-01,3.960910e-01,3.620519e-01,3.313890e-01,3.037541e-01,2.788350e-01,2.563512e-01,2.360512e-01,2.177099e-01,2.011253e-01,1.861165e-01,1.725217e-01,1.601961e-01,1.490098e-01,1.388468e-01,1.296032e-01,1.211859e-01,1.135118e-01,1.065064e-01,1.001028e-01,9.424141e-02,8.886869e-02,8.393671e-02,7.940250e-02,7.522756e-02,7.137737e-02,6.782096e-02,6.453055e-02,6.148120e-02,5.865051e-02,5.601835e-02,5.356665e-02,5.127915e-02,4.914121e-02,4.713967e-02,4.526268e-02,4.349954e-02,4.184063e-02,4.027725e-02,3.880156e-02,3.740648e-02,3.608559e-02,3.483310e-02,3.364377e-02,3.251284e-02,3.143601e-02,3.040935e-02,2.942934e-02,2.849272e-02,2.759657e-02,2.673820e-02,2.591518e-02,2.512527e-02,2.436645e-02,2.363684e-02,2.293474e-02,2.225857e-02,2.160692e-02,2.097844e-02,2.037192e-02,1.978623e-02,1.922034e-02,1.867329e-02,1.814417e-02,1.763218e-02,1.713654e-02,1.665653e-02,1.619148e-02,1.574078e-02,1.530384e-02,1.488011e-02,1.446909e-02,1.407028e-02,1.368323e-02,1.330751e-02,1.294273e-02,1.258849e-02,1.224443e-02,1.191021e-02,1.158550e-02,1.126998e-02,1.096336e-02,1.066536e-02,1.037570e-02,1.009413e-02,9.820392e-03,9.554250e-03,9.295477e-03,9.043852e-03,8.799163e-03,8.561208e-03,8.329788e-03,8.104717e-03,7.885810e-03,7.672892e-03,7.465792e-03,7.264347e-03,7.068396e-03,6.877785e-03,6.692366e-03,6.511993e-03,6.336527e-03,6.165832e-03,5.999776e-03,5.838232e-03,5.681075e-03,5.528185e-03,5.379445e-03,5.234742e-03,5.093965e-03,4.957007e-03,4.823765e-03,4.694136e-03,4.568024e-03,4.445331e-03,4.325965e-03,4.209836e-03,4.096856e-03,3.986940e-03,3.880003e-03,3.775966e-03,3.674749e-03,3.576276e-03,3.480473e-03,3.387267e-03,3.296588e-03,3.208367e-03,3.122537e-03,3.039033e-03,2.957793e-03,2.878754e-03,2.801857e-03,2.727044e-03,2.654258e-03,2.583444e-03,2.514549e-03,2.447519e-03,2.382305e-03,2.318856e-03,2.257126e-03,2.197067e-03,2.138633e-03,2.081780e-03,2.026466e-03,1.972648e-03,1.920285e-03,1.869339e-03,1.819769e-03,1.771539e-03,1.724612e-03,1.678953e-03,1.634526e-03,1.591299e-03,1.549238e-03,1.508312e-03,1.468489e-03,1.429740e-03,1.392036e-03,1.355346e-03,1.319645e-03,1.284905e-03,1.251099e-03,1.218203e-03,1.186191e-03,1.155039e-03,1.124723e-03,1.095222e-03,1.066512e-03,1.038572e-03,1.011381e-03,9.849179e-04,9.591638e-04,9.340990e-04,9.097046e-04,8.859623e-04,8.628543e-04,8.403634e-04,8.184727e-04,7.971658e-04,7.764268e-04,7.562403e-04,7.365912e-04,7.174649e-04,6.988471e-04,6.807240e-04,6.630821e-04,6.459084e-04,6.291901e-04,6.129149e-04,5.970707e-04,5.816458e-04,5.666288e-04,5.520087e-04,5.377747e-04,5.239164e-04,5.104235e-04,4.972862e-04,4.844949e-04,4.720402e-04,4.599130e-04,4.481045e-04,4.366060e-04,4.254093e-04,4.145061e-04,4.038886e-04,3.935490e-04,3.834800e-04,3.736741e-04,3.641245e-04,3.548240e-04,3.457662e-04,3.369445e-04,3.283525e-04,3.199841e-04,3.118334e-04,3.038944e-04,2.961616e-04,2.886295e-04,2.812926e-04,2.741458e-04,2.671841e-04,2.604025e-04,2.537962e-04,2.473605e-04,2.410910e-04,2.349833e-04,2.290329e-04,2.232359e-04,2.175880e-04,2.120855e-04,2.067244e-04,2.015010e-04,1.964117e-04,1.914529e-04,1.866213e-04,1.819134e-04,1.773260e-04,1.728560e-04,1.685003e-04,1.642559e-04,1.601198e-04,1.560893e-04,1.521616e-04,1.483340e-04,1.446038e-04,1.409686e-04,1.374259e-04,1.339733e-04,1.306083e-04,1.273289e-04,1.241326e-04,1.210174e-04,1.179812e-04,1.150220e-04,1.121377e-04,1.093263e-04,1.065861e-04,1.039152e-04,1.013118e-04,9.877413e-05,9.630053e-05,9.388936e-05,9.153900e-05,8.924790e-05,8.701453e-05,8.483742e-05,8.271512e-05,8.064624e-05,7.862940e-05,7.666327e-05,7.474657e-05,7.287803e-05,7.105641e-05,6.928054e-05,6.754923e-05,6.586137e-05,6.421583e-05,6.261155e-05,6.104748e-05,5.952260e-05,5.803592e-05,5.658646e-05,5.517329e-05,5.379549e-05,5.245215e-05,5.114242e-05,4.986544e-05,4.862038e-05,4.740644e-05,4.622283e-05,4.506879e-05,4.394358e-05,4.284646e-05,4.177674e-05,4.073372e-05,3.971673e-05,3.872511e-05,3.775823e-05,3.681548e-05,3.589623e-05,3.499991e-05,3.412593e-05,3.327375e-05,3.244280e-05,3.163257e-05,3.084252e-05,3.007217e-05,2.932101e-05,2.858856e-05,2.787436e-05,2.717795e-05,2.649888e-05,2.583673e-05,2.519107e-05,2.456149e-05,2.394758e-05,2.334897e-05,2.276526e-05,2.219608e-05,2.164108e-05,2.109989e-05,2.057218e-05,2.005761e-05,1.955586e-05,1.906659e-05,1.858951e-05,1.812430e-05,1.767068e-05,1.722836e-05,1.679705e-05,1.637648e-05,1.596639e-05,1.556651e-05,1.517658e-05,1.479637e-05,1.442563e-05,1.406413e-05,1.371163e-05,1.336792e-05,1.303277e-05,1.270596e-05,1.238731e-05,1.207659e-05,1.177362e-05,1.147821e-05,1.119015e-05,1.090928e-05,1.063541e-05,1.036837e-05,1.010799e-05,9.854111e-06,9.606561e-06,9.365187e-06,9.129836e-06,8.900358e-06,8.676608e-06,8.458443e-06,8.245724e-06,8.038317e-06,7.836090e-06,7.638914e-06,7.446663e-06,7.259215e-06,7.076451e-06,6.898255e-06,6.724513e-06,6.555114e-06,6.389950e-06,6.228917e-06,6.071912e-06,5.918834e-06,5.769587e-06,5.624074e-06,5.482203e-06,5.343883e-06,5.209027e-06,5.077548e-06,4.949361e-06,4.824386e-06,4.702542e-06,4.583751e-06,4.467938e-06,4.355028e-06,4.244950e-06,4.137631e-06,4.033005e-06,3.931004e-06,3.831562e-06,3.734615e-06,3.640103e-06,3.547963e-06,3.458137e-06,3.370567e-06,3.285197e-06,3.201973e-06,3.120840e-06,3.041746e-06,2.964641e-06,2.889475e-06,2.816199e-06,2.744767e-06,2.675132e-06,2.607250e-06,2.541077e-06,2.476569e-06,2.413687e-06,2.352388e-06,2.292633e-06,2.234384e-06,2.177604e-06,2.122254e-06,2.068301e-06,2.015707e-06,1.964441e-06,1.914468e-06,1.865756e-06,1.818274e-06,1.771990e-06,1.726876e-06,1.682900e-06,1.640036e-06,1.598254e-06,1.557529e-06,1.517833e-06,1.479140e-06,1.441427e-06,1.404667e-06,1.368837e-06,1.333913e-06,1.299874e-06,1.266696e-06,1.234359e-06,1.202840e-06,1.172120e-06,1.142179e-06,1.112996e-06,1.084552e-06,1.056830e-06,1.029811e-06,1.003478e-06,9.778119e-07,9.527974e-07,9.284179e-07,9.046573e-07,8.814999e-07,8.589307e-07,8.369348e-07,8.154977e-07,7.946054e-07,7.742442e-07,7.544006e-07,7.350616e-07,7.162145e-07,6.978468e-07,6.799465e-07,6.625018e-07,6.455012e-07,6.289334e-07,6.127875e-07,5.970529e-07,5.817192e-07,5.667762e-07,5.522141e-07,5.380232e-07,5.241942e-07,5.107179e-07,4.975854e-07,4.847879e-07,4.723170e-07,4.601645e-07,4.483222e-07,4.367823e-07,4.255372e-07,4.145793e-07,4.039015e-07,3.934965e-07,3.833575e-07,3.734778e-07,3.638507e-07,3.544699e-07,3.453291e-07,3.364222e-07,3.277432e-07,3.192865e-07,3.110463e-07,3.030171e-07,2.951936e-07,2.875706e-07,2.801429e-07,2.729056e-07,2.658538e-07,2.589829e-07,2.522881e-07,2.457652e-07,2.394096e-07,2.332171e-07,2.271835e-07,2.213049e-07,2.155773e-07,2.099967e-07,2.045595e-07,1.992620e-07,1.941007e-07,1.890721e-07,1.841727e-07,1.793993e-07,1.747488e-07,1.702178e-07,1.658035e-07,1.615027e-07,1.573127e-07,1.532306e-07,1.492536e-07,1.453790e-07,1.416043e-07,1.379268e-07,1.343441e-07,1.308538e-07,1.274535e-07,1.241409e-07,1.209137e-07,1.177698e-07,1.147070e-07,1.117232e-07,1.088165e-07,1.059849e-07,1.032264e-07,1.005391e-07,9.792127e-08,9.537109e-08,9.288683e-08,9.046679e-08,8.810933e-08,8.581284e-08,8.357576e-08,8.139656e-08,7.927376e-08,7.720590e-08,7.519158e-08,7.322942e-08,7.131807e-08,6.945625e-08,6.764266e-08,6.587607e-08,6.415527e-08,6.247909e-08,6.084637e-08,5.925600e-08,5.770689e-08,5.619797e-08,5.472821e-08,5.329661e-08,5.190217e-08,5.054394e-08,4.922099e-08,4.793240e-08,4.667730e-08,4.545482e-08,4.426412e-08,4.310437e-08,4.197478e-08,4.087457e-08,3.980298e-08,3.875928e-08,3.774274e-08,3.675266e-08,3.578836e-08,3.484917e-08,3.393444e-08,3.304355e-08,3.217586e-08,3.133079e-08,3.050775e-08,2.970617e-08,2.892549e-08,2.816518e-08,2.742470e-08,2.670354e-08,2.600121e-08,2.531721e-08,2.465106e-08,2.400232e-08,2.337052e-08,2.275522e-08,2.215601e-08,2.157245e-08,2.100415e-08,2.045071e-08,1.991174e-08,1.938687e-08,1.887573e-08,1.837797e-08,1.789324e-08,1.742119e-08,1.696151e-08,1.651386e-08,1.607794e-08,1.565344e-08,1.524006e-08,1.483752e-08,1.444554e-08,1.406383e-08,1.369213e-08,1.333018e-08,1.297773e-08,1.263452e-08,1.230033e-08,1.197491e-08,1.165803e-08,1.134948e-08,1.104903e-08,1.075647e-08,1.047161e-08,1.019423e-08,9.924143e-09,9.661158e-09,9.405091e-09,9.155760e-09,8.912989e-09,8.676607e-09,8.446447e-09,8.222347e-09,8.004148e-09,7.791697e-09,7.584842e-09,7.383437e-09,7.187341e-09,6.996414e-09,6.810520e-09,6.629529e-09,6.453312e-09,6.281743e-09,6.114702e-09,5.952069e-09,5.793730e-09,5.639571e-09,5.489484e-09,5.343360e-09,5.201098e-09,5.062594e-09,4.927752e-09,4.796474e-09,4.668667e-09}, {2.247048e+04,6.307014e+03,1.895920e+03,7.182595e+02,3.993280e+02,2.922999e+02,2.321257e+02,1.830649e+02,1.405344e+02,1.052899e+02,7.769141e+01,5.711395e+01,4.237589e+01,3.216079e+01,2.526331e+01,2.069155e+01,1.768438e+01,1.568741e+01,1.431420e+01,1.330620e+01,1.249784e+01,1.178848e+01,1.112110e+01,1.046692e+01,9.814543e+00,9.162613e+00,8.515020e+00,7.877862e+00,7.257629e+00,6.660209e+00,6.090402e+00,5.551759e+00,5.046611e+00,4.576190e+00,4.140805e+00,3.740019e+00,3.372821e+00,3.037781e+00,2.733181e+00,2.457122e+00,2.207610e+00,1.982628e+00,1.780178e+00,1.598328e+00,1.435229e+00,1.289138e+00,1.158425e+00,1.041579e+00,9.372068e-01,8.440332e-01,7.608953e-01,6.867368e-01,6.206019e-01,5.616283e-01,5.090398e-01,4.621395e-01,4.203029e-01,3.829712e-01,3.496452e-01,3.198796e-01,2.932772e-01,2.694849e-01,2.481881e-01,2.291073e-01,2.119944e-01,1.966287e-01,1.828148e-01,1.703791e-01,1.591676e-01,1.490439e-01,1.398870e-01,1.315899e-01,1.240575e-01,1.172057e-01,1.109601e-01,1.052544e-01,1.000304e-01,9.523608e-02,9.082563e-02,8.675836e-02,8.299821e-02,7.951326e-02,7.627517e-02,7.325884e-02,7.044202e-02,6.780495e-02,6.533010e-02,6.300192e-02,6.080660e-02,5.873187e-02,5.676681e-02,5.490173e-02,5.312799e-02,5.143792e-02,4.982466e-02,4.828211e-02,4.680482e-02,4.538791e-02,4.402704e-02,4.271829e-02,4.145818e-02,4.024357e-02,3.907163e-02,3.793982e-02,3.684584e-02,3.578763e-02,3.476329e-02,3.377113e-02,3.280959e-02,3.187725e-02,3.097282e-02,3.009511e-02,2.924302e-02,2.841555e-02,2.761177e-02,2.683080e-02,2.607184e-02,2.533415e-02,2.461701e-02,2.391976e-02,2.324178e-02,2.258247e-02,2.194129e-02,2.131770e-02,2.071119e-02,2.012128e-02,1.954751e-02,1.898943e-02,1.844662e-02,1.791868e-02,1.740519e-02,1.690579e-02,1.642009e-02,1.594775e-02,1.548841e-02,1.504174e-02,1.460740e-02,1.418509e-02,1.377448e-02,1.337528e-02,1.298719e-02,1.260993e-02,1.224320e-02,1.188675e-02,1.154030e-02,1.120359e-02,1.087636e-02,1.055838e-02,1.024939e-02,9.949160e-03,9.657457e-03,9.374054e-03,9.098732e-03,8.831274e-03,8.571470e-03,8.319114e-03,8.074005e-03,7.835948e-03,7.604750e-03,7.380226e-03,7.162192e-03,6.950471e-03,6.744889e-03,6.545278e-03,6.351470e-03,6.163307e-03,5.980630e-03,5.803286e-03,5.631126e-03,5.464005e-03,5.301780e-03,5.144314e-03,4.991472e-03,4.843123e-03,4.699138e-03,4.559394e-03,4.423770e-03,4.292146e-03,4.164410e-03,4.040448e-03,3.920152e-03,3.803417e-03,3.690139e-03,3.580218e-03,3.473557e-03,3.370060e-03,3.269637e-03,3.172196e-03,3.077652e-03,2.985918e-03,2.896914e-03,2.810558e-03,2.726773e-03,2.645483e-03,2.566616e-03,2.490098e-03,2.415862e-03,2.343839e-03,2.273965e-03,2.206175e-03,2.140408e-03,2.076604e-03,2.014704e-03,1.954653e-03,1.896394e-03,1.839875e-03,1.785044e-03,1.731850e-03,1.680245e-03,1.630182e-03,1.581614e-03,1.534497e-03,1.488787e-03,1.444443e-03,1.401423e-03,1.359689e-03,1.319201e-03,1.279922e-03,1.241816e-03,1.204848e-03,1.168984e-03,1.134190e-03,1.100436e-03,1.067689e-03,1.035919e-03,1.005098e-03,9.751961e-04,9.461865e-04,9.180424e-04,8.907377e-04,8.642474e-04,8.385470e-04,8.136128e-04,7.894219e-04,7.659521e-04,7.431816e-04,7.210896e-04,6.996557e-04,6.788602e-04,6.586841e-04,6.391087e-04,6.201160e-04,6.016887e-04,5.838098e-04,5.664629e-04,5.496320e-04,5.333018e-04,5.174573e-04,5.020839e-04,4.871676e-04,4.726947e-04,4.586520e-04,4.450266e-04,4.318060e-04,4.189782e-04,4.065315e-04,3.944544e-04,3.827359e-04,3.713654e-04,3.603325e-04,3.496271e-04,3.392394e-04,3.291601e-04,3.193798e-04,3.098897e-04,3.006812e-04,2.917459e-04,2.830756e-04,2.746625e-04,2.664990e-04,2.585775e-04,2.508909e-04,2.434323e-04,2.361948e-04,2.291719e-04,2.223572e-04,2.157446e-04,2.093280e-04,2.031016e-04,1.970598e-04,1.911971e-04,1.855082e-04,1.799879e-04,1.746313e-04,1.694335e-04,1.643898e-04,1.594956e-04,1.547464e-04,1.501381e-04,1.456664e-04,1.413273e-04,1.371169e-04,1.330313e-04,1.290668e-04,1.252200e-04,1.214872e-04,1.178651e-04,1.143505e-04,1.109401e-04,1.076310e-04,1.044200e-04,1.013043e-04,9.828101e-05,9.534750e-05,9.250107e-05,8.973914e-05,8.705922e-05,8.445889e-05,8.193577e-05,7.948761e-05,7.711217e-05,7.480732e-05,7.257096e-05,7.040106e-05,6.829567e-05,6.625287e-05,6.427082e-05,6.234771e-05,6.048181e-05,5.867142e-05,5.691490e-05,5.521066e-05,5.355715e-05,5.195288e-05,5.039637e-05,4.888622e-05,4.742107e-05,4.599956e-05,4.462043e-05,4.328240e-05,4.198426e-05,4.072483e-05,3.950297e-05,3.831756e-05,3.716752e-05,3.605181e-05,3.496940e-05,3.391931e-05,3.290058e-05,3.191228e-05,3.095351e-05,3.002339e-05,2.912107e-05,2.824573e-05,2.739657e-05,2.657280e-05,2.577368e-05,2.499847e-05,2.424646e-05,2.351696e-05,2.280931e-05,2.212285e-05,2.145696e-05,2.081102e-05,2.018443e-05,1.957663e-05,1.898705e-05,1.841515e-05,1.786041e-05,1.732231e-05,1.680036e-05,1.629407e-05,1.580298e-05,1.532664e-05,1.486460e-05,1.441644e-05,1.398175e-05,1.356012e-05,1.315117e-05,1.275450e-05,1.236977e-05,1.199661e-05,1.163467e-05,1.128362e-05,1.094313e-05,1.061290e-05,1.029260e-05,9.981949e-06,9.680652e-06,9.388430e-06,9.105010e-06,8.830130e-06,8.563534e-06,8.304973e-06,8.054206e-06,7.810999e-06,7.575127e-06,7.346367e-06,7.124509e-06,6.909343e-06,6.700669e-06,6.498292e-06,6.302023e-06,6.111679e-06,5.927081e-06,5.748056e-06,5.574437e-06,5.406062e-06,5.242772e-06,5.084415e-06,4.930842e-06,4.781908e-06,4.637476e-06,4.497408e-06,4.361573e-06,4.229844e-06,4.102097e-06,3.978212e-06,3.858073e-06,3.741566e-06,3.628582e-06,3.519015e-06,3.412761e-06,3.309721e-06,3.209798e-06,3.112897e-06,3.018928e-06,2.927801e-06,2.839431e-06,2.753735e-06,2.670631e-06,2.590042e-06,2.511891e-06,2.436105e-06,2.362612e-06,2.291343e-06,2.222231e-06,2.155210e-06,2.090217e-06,2.027191e-06,1.966072e-06,1.906802e-06,1.849326e-06,1.793589e-06,1.739539e-06,1.687124e-06,1.636296e-06,1.587005e-06,1.539205e-06,1.492852e-06,1.447901e-06,1.404310e-06,1.362038e-06,1.321044e-06,1.281290e-06,1.242739e-06,1.205354e-06,1.169099e-06,1.133941e-06,1.099846e-06,1.066781e-06,1.034717e-06,1.003621e-06,9.734661e-07,9.442223e-07,9.158622e-07,8.883592e-07,8.616873e-07,8.358212e-07,8.107365e-07,7.864096e-07,7.628174e-07,7.399377e-07,7.177488e-07,6.962299e-07,6.753606e-07,6.551212e-07,6.354926e-07,6.164564e-07,5.979945e-07,5.800895e-07,5.627246e-07,5.458834e-07,5.295500e-07,5.137090e-07,4.983455e-07,4.834451e-07,4.689936e-07,4.549775e-07,4.413837e-07,4.281992e-07,4.154118e-07,4.030093e-07,3.909802e-07,3.793131e-07,3.679970e-07,3.570214e-07,3.463758e-07,3.360504e-07,3.260355e-07,3.163215e-07,3.068995e-07,2.977606e-07,2.888962e-07,2.802981e-07,2.719581e-07,2.638685e-07,2.560216e-07,2.484102e-07,2.410272e-07,2.338656e-07,2.269187e-07,2.201801e-07,2.136435e-07,2.073027e-07,2.011518e-07,1.951852e-07,1.893972e-07,1.837825e-07,1.783358e-07,1.730520e-07,1.679263e-07,1.629539e-07,1.581301e-07,1.534505e-07,1.489107e-07,1.445065e-07,1.402339e-07,1.360888e-07,1.320674e-07,1.281661e-07,1.243811e-07,1.207089e-07,1.171463e-07,1.136899e-07,1.103364e-07,1.070829e-07,1.039262e-07,1.008635e-07,9.789200e-08,9.500889e-08,9.221154e-08,8.949738e-08,8.686390e-08,8.430870e-08,8.182941e-08,7.942376e-08,7.708955e-08,7.482463e-08,7.262692e-08,7.049440e-08,6.842514e-08,6.641722e-08,6.446882e-08,6.257816e-08,6.074350e-08,5.896316e-08,5.723553e-08,5.555903e-08,5.393213e-08,5.235335e-08,5.082125e-08,4.933443e-08,4.789155e-08,4.649129e-08,4.513237e-08,4.381358e-08,4.253371e-08,4.129159e-08,4.008611e-08,3.891617e-08,3.778071e-08,3.667872e-08,3.560918e-08,3.457113e-08,3.356365e-08,3.258581e-08,3.163674e-08,3.071558e-08,2.982151e-08,2.895371e-08,2.811141e-08,2.729385e-08,2.650030e-08,2.573004e-08,2.498238e-08,2.425666e-08,2.355222e-08,2.286843e-08,2.220468e-08,2.156038e-08,2.093495e-08,2.032784e-08,1.973849e-08,1.916639e-08,1.861103e-08,1.807190e-08,1.754854e-08,1.704047e-08,1.654725e-08,1.606843e-08,1.560360e-08,1.515233e-08,1.471423e-08,1.428891e-08,1.387599e-08,1.347511e-08,1.308592e-08,1.270806e-08,1.234121e-08,1.198504e-08,1.163924e-08,1.130351e-08,1.097754e-08,1.066105e-08,1.035376e-08,1.005540e-08,9.765716e-09,9.484444e-09,9.211341e-09,8.946165e-09,8.688686e-09,8.438678e-09,8.195921e-09,7.960204e-09,7.731320e-09,7.509069e-09,7.293258e-09,7.083697e-09,6.880205e-09,6.682603e-09,6.490720e-09,6.304389e-09,6.123447e-09,5.947737e-09,5.777106e-09,5.611407e-09,5.450495e-09,5.294231e-09,5.142479e-09,4.995108e-09,4.851990e-09,4.713002e-09,4.578023e-09,4.446937e-09,4.319630e-09,4.195992e-09,4.075917e-09,3.959301e-09,3.846044e-09,3.736048e-09,3.629218e-09,3.525462e-09,3.424692e-09,3.326821e-09,3.231764e-09,3.139440e-09,3.049770e-09,2.962676e-09,2.878085e-09,2.795924e-09,2.716122e-09,2.638611e-09,2.563324e-09,2.490198e-09,2.419171e-09,2.350180e-09,2.283168e-09,2.218077e-09,2.154852e-09,2.093439e-09,2.033785e-09,1.975840e-09,1.919554e-09,1.864881e-09,1.811772e-09,1.760183e-09,1.710071e-09,1.661392e-09,1.614105e-09,1.568171e-09,1.523550e-09,1.480205e-09,1.438098e-09,1.397195e-09,1.357460e-09,1.318860e-09,1.281363e-09,1.244936e-09,1.209549e-09,1.175172e-09,1.141776e-09,1.109333e-09,1.077815e-09,1.047197e-09,1.017451e-09,9.885538e-10,9.604802e-10,9.332067e-10,9.067105e-10,8.809691e-10,8.559612e-10,8.316655e-10,8.080617e-10,7.851300e-10,7.628512e-10,7.412066e-10,7.201780e-10,6.997478e-10,6.798989e-10}, {2.469005e+04,6.664290e+03,1.944892e+03,7.379370e+02,4.213588e+02,3.124251e+02,2.467043e+02,1.918682e+02,1.449586e+02,1.070070e+02,7.806474e+01,5.706017e+01,4.241720e+01,3.253307e+01,2.602059e+01,2.178721e+01,1.902680e+01,1.717443e+01,1.585204e+01,1.481824e+01,1.392707e+01,1.309643e+01,1.228518e+01,1.147718e+01,1.067048e+01,9.870407e+00,9.085193e+00,8.323483e+00,7.592960e+00,6.899723e+00,6.248117e+00,5.640809e+00,5.078996e+00,4.562657e+00,4.090818e+00,3.661794e+00,3.273400e+00,2.923126e+00,2.608280e+00,2.326100e+00,2.073835e+00,1.848811e+00,1.648470e+00,1.470397e+00,1.312343e+00,1.172225e+00,1.048135e+00,9.383307e-01,8.412325e-01,7.554144e-01,6.795935e-01,6.126198e-01,5.534654e-01,5.012140e-01,4.550503e-01,4.142507e-01,3.781736e-01,3.462515e-01,3.179826e-01,2.929243e-01,2.706863e-01,2.509246e-01,2.333367e-01,2.176566e-01,2.036505e-01,1.911132e-01,1.798647e-01,1.697471e-01,1.606219e-01,1.523680e-01,1.448791e-01,1.380625e-01,1.318369e-01,1.261313e-01,1.208835e-01,1.160394e-01,1.115517e-01,1.073789e-01,1.034850e-01,9.983853e-02,9.641208e-02,9.318170e-02,9.012653e-02,8.722840e-02,8.447147e-02,8.184195e-02,7.932780e-02,7.691855e-02,7.460507e-02,7.237939e-02,7.023457e-02,6.816452e-02,6.616397e-02,6.422825e-02,6.235331e-02,6.053559e-02,5.877193e-02,5.705958e-02,5.539608e-02,5.377925e-02,5.220717e-02,5.067808e-02,4.919044e-02,4.774283e-02,4.633397e-02,4.496268e-02,4.362788e-02,4.232857e-02,4.106382e-02,3.983276e-02,3.863454e-02,3.746840e-02,3.633358e-02,3.522936e-02,3.415506e-02,3.310999e-02,3.209351e-02,3.110498e-02,3.014379e-02,2.920932e-02,2.830098e-02,2.741818e-02,2.656036e-02,2.572692e-02,2.491733e-02,2.413103e-02,2.336746e-02,2.262610e-02,2.190641e-02,2.120787e-02,2.052997e-02,1.987219e-02,1.923403e-02,1.861500e-02,1.801461e-02,1.743239e-02,1.686785e-02,1.632054e-02,1.579000e-02,1.527578e-02,1.477743e-02,1.429454e-02,1.382667e-02,1.337340e-02,1.293433e-02,1.250907e-02,1.209721e-02,1.169837e-02,1.131219e-02,1.093829e-02,1.057632e-02,1.022592e-02,9.886761e-03,9.558501e-03,9.240817e-03,8.933392e-03,8.635916e-03,8.348088e-03,8.069613e-03,7.800205e-03,7.539586e-03,7.287483e-03,7.043633e-03,6.807779e-03,6.579671e-03,6.359065e-03,6.145727e-03,5.939426e-03,5.739938e-03,5.547049e-03,5.360546e-03,5.180226e-03,5.005891e-03,4.837348e-03,4.674411e-03,4.516898e-03,4.364633e-03,4.217447e-03,4.075174e-03,3.937654e-03,3.804731e-03,3.676256e-03,3.552082e-03,3.432068e-03,3.316078e-03,3.203979e-03,3.095642e-03,2.990943e-03,2.889762e-03,2.791983e-03,2.697491e-03,2.606180e-03,2.517941e-03,2.432675e-03,2.350280e-03,2.270662e-03,2.193728e-03,2.119389e-03,2.047557e-03,1.978148e-03,1.911083e-03,1.846281e-03,1.783667e-03,1.723169e-03,1.664714e-03,1.608234e-03,1.553663e-03,1.500937e-03,1.449994e-03,1.400773e-03,1.353217e-03,1.307269e-03,1.262876e-03,1.219986e-03,1.178546e-03,1.138509e-03,1.099828e-03,1.062456e-03,1.026349e-03,9.914652e-04,9.577626e-04,9.252016e-04,8.937436e-04,8.633514e-04,8.339889e-04,8.056213e-04,7.782152e-04,7.517379e-04,7.261582e-04,7.014456e-04,6.775708e-04,6.545057e-04,6.322227e-04,6.106954e-04,5.898983e-04,5.698068e-04,5.503969e-04,5.316456e-04,5.135306e-04,4.960305e-04,4.791243e-04,4.627921e-04,4.470144e-04,4.317724e-04,4.170481e-04,4.028239e-04,3.890829e-04,3.758088e-04,3.629857e-04,3.505984e-04,3.386321e-04,3.270726e-04,3.159061e-04,3.051194e-04,2.946995e-04,2.846341e-04,2.749110e-04,2.655189e-04,2.564463e-04,2.476826e-04,2.392172e-04,2.310401e-04,2.231415e-04,2.155118e-04,2.081421e-04,2.010236e-04,1.941476e-04,1.875060e-04,1.810908e-04,1.748943e-04,1.689092e-04,1.631283e-04,1.575446e-04,1.521514e-04,1.469423e-04,1.419110e-04,1.370515e-04,1.323579e-04,1.278246e-04,1.234463e-04,1.192175e-04,1.151332e-04,1.111886e-04,1.073788e-04,1.036993e-04,1.001456e-04,9.671353e-05,9.339884e-05,9.019759e-05,8.710590e-05,8.412005e-05,8.123643e-05,7.845156e-05,7.576207e-05,7.316472e-05,7.065635e-05,6.823394e-05,6.589456e-05,6.363536e-05,6.145363e-05,5.934670e-05,5.731203e-05,5.534715e-05,5.344968e-05,5.161731e-05,4.984782e-05,4.813906e-05,4.648894e-05,4.489548e-05,4.335672e-05,4.187080e-05,4.043591e-05,3.905030e-05,3.771228e-05,3.642022e-05,3.517256e-05,3.396776e-05,3.280436e-05,3.168094e-05,3.059612e-05,2.954859e-05,2.853707e-05,2.756032e-05,2.661714e-05,2.570638e-05,2.482694e-05,2.397773e-05,2.315772e-05,2.236590e-05,2.160130e-05,2.086299e-05,2.015007e-05,1.946166e-05,1.879692e-05,1.815503e-05,1.753521e-05,1.693671e-05,1.635877e-05,1.580071e-05,1.526183e-05,1.474147e-05,1.423900e-05,1.375379e-05,1.328527e-05,1.283284e-05,1.239596e-05,1.197408e-05,1.156670e-05,1.117332e-05,1.079344e-05,1.042661e-05,1.007237e-05,9.730300e-06,9.399968e-06,9.080973e-06,8.772924e-06,8.475444e-06,8.188168e-06,7.910744e-06,7.642832e-06,7.384105e-06,7.134246e-06,6.892948e-06,6.659917e-06,6.434867e-06,6.217524e-06,6.007620e-06,5.804901e-06,5.609117e-06,5.420031e-06,5.237410e-06,5.061032e-06,4.890682e-06,4.726152e-06,4.567242e-06,4.413756e-06,4.265510e-06,4.122321e-06,3.984017e-06,3.850427e-06,3.721391e-06,3.596751e-06,3.476356e-06,3.360060e-06,3.247721e-06,3.139204e-06,3.034376e-06,2.933112e-06,2.835287e-06,2.740785e-06,2.649490e-06,2.561293e-06,2.476086e-06,2.393768e-06,2.314239e-06,2.237403e-06,2.163168e-06,2.091444e-06,2.022145e-06,1.955189e-06,1.890494e-06,1.827983e-06,1.767582e-06,1.709218e-06,1.652821e-06,1.598323e-06,1.545661e-06,1.494771e-06,1.445592e-06,1.398066e-06,1.352136e-06,1.307749e-06,1.264850e-06,1.223390e-06,1.183320e-06,1.144591e-06,1.107158e-06,1.070978e-06,1.036006e-06,1.002203e-06,9.695285e-07,9.379438e-07,9.074120e-07,8.778973e-07,8.493653e-07,8.217826e-07,7.951168e-07,7.693370e-07,7.444131e-07,7.203161e-07,6.970180e-07,6.744918e-07,6.527113e-07,6.316513e-07,6.112876e-07,5.915965e-07,5.725554e-07,5.541424e-07,5.363362e-07,5.191165e-07,5.024635e-07,4.863581e-07,4.707819e-07,4.557172e-07,4.411467e-07,4.270539e-07,4.134227e-07,4.002377e-07,3.874839e-07,3.751468e-07,3.632127e-07,3.516679e-07,3.404995e-07,3.296949e-07,3.192419e-07,3.091290e-07,2.993446e-07,2.898779e-07,2.807183e-07,2.718557e-07,2.632800e-07,2.549819e-07,2.469521e-07,2.391817e-07,2.316622e-07,2.243851e-07,2.173426e-07,2.105268e-07,2.039303e-07,1.975459e-07,1.913665e-07,1.853853e-07,1.795960e-07,1.739921e-07,1.685675e-07,1.633164e-07,1.582332e-07,1.533122e-07,1.485481e-07,1.439359e-07,1.394705e-07,1.351473e-07,1.309614e-07,1.269085e-07,1.229842e-07,1.191843e-07,1.155048e-07,1.119417e-07,1.084913e-07,1.051500e-07,1.019141e-07,9.878025e-08,9.574519e-08,9.280570e-08,8.995868e-08,8.720115e-08,8.453022e-08,8.194311e-08,7.943710e-08,7.700960e-08,7.465808e-08,7.238009e-08,7.017327e-08,6.803535e-08,6.596412e-08,6.395744e-08,6.201324e-08,6.012954e-08,5.830439e-08,5.653594e-08,5.482237e-08,5.316193e-08,5.155294e-08,4.999376e-08,4.848280e-08,4.701855e-08,4.559951e-08,4.422426e-08,4.289140e-08,4.159961e-08,4.034757e-08,3.913404e-08,3.795781e-08,3.681769e-08,3.571255e-08,3.464129e-08,3.360284e-08,3.259618e-08,3.162031e-08,3.067426e-08,2.975709e-08,2.886792e-08,2.800585e-08,2.717004e-08,2.635968e-08,2.557397e-08,2.481214e-08,2.407345e-08,2.335718e-08,2.266263e-08,2.198913e-08,2.133602e-08,2.070268e-08,2.008848e-08,1.949285e-08,1.891520e-08,1.835498e-08,1.781165e-08,1.728470e-08,1.677360e-08,1.627789e-08,1.579708e-08,1.533072e-08,1.487835e-08,1.443957e-08,1.401394e-08,1.360106e-08,1.320055e-08,1.281202e-08,1.243511e-08,1.206946e-08,1.171474e-08,1.137060e-08,1.103673e-08,1.071281e-08,1.039854e-08,1.009363e-08,9.797789e-09,9.510745e-09,9.232232e-09,8.961991e-09,8.699772e-09,8.445331e-09,8.198434e-09,7.958852e-09,7.726365e-09,7.500759e-09,7.281827e-09,7.069367e-09,6.863184e-09,6.663090e-09,6.468902e-09,6.280443e-09,6.097539e-09,5.920026e-09,5.747741e-09,5.580527e-09,5.418234e-09,5.260713e-09,5.107822e-09,4.959422e-09,4.815381e-09,4.675567e-09,4.539854e-09,4.408121e-09,4.280249e-09,4.156123e-09,4.035631e-09,3.918666e-09,3.805123e-09,3.694900e-09,3.587899e-09,3.484025e-09,3.383184e-09,3.285287e-09,3.190246e-09,3.097978e-09,3.008400e-09,2.921433e-09,2.837000e-09,2.755026e-09,2.675438e-09,2.598166e-09,2.523142e-09,2.450300e-09,2.379575e-09,2.310905e-09,2.244231e-09,2.179492e-09,2.116633e-09,2.055598e-09,1.996333e-09,1.938787e-09,1.882910e-09,1.828652e-09,1.775966e-09,1.724806e-09,1.675128e-09,1.626887e-09,1.580043e-09,1.534554e-09,1.490380e-09,1.447484e-09,1.405828e-09,1.365376e-09,1.326093e-09,1.287944e-09,1.250897e-09,1.214919e-09,1.179980e-09,1.146050e-09,1.113098e-09,1.081096e-09,1.050018e-09,1.019836e-09,9.905232e-10,9.620556e-10,9.344083e-10,9.075575e-10,8.814800e-10,8.561535e-10,8.315563e-10,8.076671e-10,7.844655e-10,7.619315e-10,7.400460e-10,7.187900e-10,6.981455e-10,6.780946e-10,6.586203e-10,6.397059e-10,6.213352e-10,6.034926e-10,5.861627e-10,5.693308e-10,5.529826e-10,5.371039e-10,5.216814e-10,5.067019e-10,4.921525e-10,4.780209e-10,4.642951e-10,4.509634e-10,4.380144e-10,4.254370e-10,4.132207e-10,4.013550e-10,3.898298e-10,3.786353e-10,3.677621e-10,3.572008e-10,3.469425e-10,3.369785e-10,3.273003e-10,3.178998e-10,3.087689e-10,2.998999e-10,2.912853e-10,2.829177e-10,2.747901e-10,2.668956e-10,2.592275e-10,2.517793e-10,2.445447e-10,2.375175e-10,2.306918e-10,2.240619e-10,2.176221e-10,2.113669e-10,2.052911e-10}, {2.706083e+04,7.021693e+03,1.991917e+03,7.595089e+02,4.453150e+02,3.333042e+02,2.610978e+02,2.000693e+02,1.487629e+02,1.082954e+02,7.826240e+01,5.705841e+01,4.267476e+01,3.321502e+01,2.711917e+01,2.320947e+01,2.065088e+01,1.888181e+01,1.754332e+01,1.641863e+01,1.538602e+01,1.438448e+01,1.338970e+01,1.239802e+01,1.141620e+01,1.045507e+01,9.525960e+00,8.638762e+00,7.801146e+00,7.018354e+00,6.293353e+00,5.627161e+00,5.019221e+00,4.467774e+00,3.970197e+00,3.523285e+00,3.123492e+00,2.767103e+00,2.450386e+00,2.169681e+00,1.921483e+00,1.702480e+00,1.509586e+00,1.339954e+00,1.190980e+00,1.060299e+00,9.457726e-01,8.454825e-01,7.577108e-01,6.809268e-01,6.137705e-01,5.550372e-01,5.036625e-01,4.587078e-01,4.193477e-01,3.848571e-01,3.546004e-01,3.280214e-01,3.046341e-01,2.840141e-01,2.657919e-01,2.496456e-01,2.352956e-01,2.224991e-01,2.110454e-01,2.007524e-01,1.914622e-01,1.830386e-01,1.753641e-01,1.683373e-01,1.618712e-01,1.558908e-01,1.503319e-01,1.451392e-01,1.402657e-01,1.356710e-01,1.313209e-01,1.271859e-01,1.232412e-01,1.194656e-01,1.158411e-01,1.123526e-01,1.089871e-01,1.057339e-01,1.025837e-01,9.952881e-02,9.656277e-02,9.368006e-02,9.087605e-02,8.814684e-02,8.548912e-02,8.290008e-02,8.037731e-02,7.791876e-02,7.552263e-02,7.318737e-02,7.091158e-02,6.869402e-02,6.653354e-02,6.442911e-02,6.237973e-02,6.038447e-02,5.844241e-02,5.655269e-02,5.471442e-02,5.292674e-02,5.118881e-02,4.949974e-02,4.785869e-02,4.626477e-02,4.471710e-02,4.321480e-02,4.175697e-02,4.034272e-02,3.897113e-02,3.764128e-02,3.635227e-02,3.510317e-02,3.389306e-02,3.272102e-02,3.158614e-02,3.048748e-02,2.942415e-02,2.839524e-02,2.739984e-02,2.643706e-02,2.550603e-02,2.460586e-02,2.373570e-02,2.289469e-02,2.208201e-02,2.129681e-02,2.053830e-02,1.980568e-02,1.909817e-02,1.841500e-02,1.775542e-02,1.711870e-02,1.650413e-02,1.591099e-02,1.533861e-02,1.478632e-02,1.425346e-02,1.373941e-02,1.324354e-02,1.276525e-02,1.230395e-02,1.185908e-02,1.143008e-02,1.101641e-02,1.061756e-02,1.023301e-02,9.862272e-03,9.504871e-03,9.160342e-03,8.828239e-03,8.508127e-03,8.199585e-03,7.902206e-03,7.615596e-03,7.339374e-03,7.073170e-03,6.816629e-03,6.569406e-03,6.331166e-03,6.101589e-03,5.880362e-03,5.667185e-03,5.461768e-03,5.263830e-03,5.073101e-03,4.889320e-03,4.712234e-03,4.541600e-03,4.377183e-03,4.218757e-03,4.066104e-03,3.919013e-03,3.777280e-03,3.640711e-03,3.509115e-03,3.382312e-03,3.260125e-03,3.142386e-03,3.028932e-03,2.919605e-03,2.814255e-03,2.712735e-03,2.614906e-03,2.520631e-03,2.429780e-03,2.342228e-03,2.257854e-03,2.176541e-03,2.098177e-03,2.022654e-03,1.949868e-03,1.879718e-03,1.812108e-03,1.746946e-03,1.684140e-03,1.623606e-03,1.565260e-03,1.509021e-03,1.454814e-03,1.402563e-03,1.352198e-03,1.303650e-03,1.256851e-03,1.211740e-03,1.168253e-03,1.126332e-03,1.085920e-03,1.046962e-03,1.009405e-03,9.731985e-04,9.382931e-04,9.046418e-04,8.721989e-04,8.409208e-04,8.107653e-04,7.816916e-04,7.536608e-04,7.266350e-04,7.005779e-04,6.754546e-04,6.512314e-04,6.278758e-04,6.053565e-04,5.836434e-04,5.627075e-04,5.425208e-04,5.230564e-04,5.042882e-04,4.861913e-04,4.687416e-04,4.519158e-04,4.356915e-04,4.200473e-04,4.049622e-04,3.904163e-04,3.763902e-04,3.628654e-04,3.498239e-04,3.372484e-04,3.251223e-04,3.134295e-04,3.021545e-04,2.912824e-04,2.807989e-04,2.706899e-04,2.609423e-04,2.515431e-04,2.424798e-04,2.337405e-04,2.253136e-04,2.171881e-04,2.093531e-04,2.017984e-04,1.945139e-04,1.874900e-04,1.807174e-04,1.741872e-04,1.678908e-04,1.618198e-04,1.559662e-04,1.503223e-04,1.448806e-04,1.396339e-04,1.345753e-04,1.296980e-04,1.249957e-04,1.204621e-04,1.160911e-04,1.118771e-04,1.078143e-04,1.038975e-04,1.001214e-04,9.648107e-05,9.297159e-05,8.958832e-05,8.632678e-05,8.318263e-05,8.015167e-05,7.722988e-05,7.441337e-05,7.169838e-05,6.908128e-05,6.655859e-05,6.412694e-05,6.178307e-05,5.952385e-05,5.734626e-05,5.524738e-05,5.322440e-05,5.127460e-05,4.939537e-05,4.758418e-05,4.583860e-05,4.415628e-05,4.253496e-05,4.097244e-05,3.946663e-05,3.801548e-05,3.661704e-05,3.526942e-05,3.397079e-05,3.271939e-05,3.151353e-05,3.035157e-05,2.923193e-05,2.815310e-05,2.711359e-05,2.611200e-05,2.514696e-05,2.421716e-05,2.332131e-05,2.245821e-05,2.162666e-05,2.082553e-05,2.005373e-05,1.931018e-05,1.859387e-05,1.790381e-05,1.723906e-05,1.659870e-05,1.598184e-05,1.538763e-05,1.481526e-05,1.426392e-05,1.373286e-05,1.322134e-05,1.272866e-05,1.225411e-05,1.179706e-05,1.135685e-05,1.093288e-05,1.052456e-05,1.013131e-05,9.752587e-06,9.387861e-06,9.036619e-06,8.698371e-06,8.372640e-06,8.058971e-06,7.756921e-06,7.466067e-06,7.185997e-06,6.916317e-06,6.656646e-06,6.406618e-06,6.165878e-06,5.934086e-06,5.710914e-06,5.496044e-06,5.289171e-06,5.090003e-06,4.898254e-06,4.713652e-06,4.535933e-06,4.364845e-06,4.200142e-06,4.041589e-06,3.888960e-06,3.742035e-06,3.600604e-06,3.464463e-06,3.333417e-06,3.207278e-06,3.085864e-06,2.969000e-06,2.856518e-06,2.748254e-06,2.644053e-06,2.543764e-06,2.447241e-06,2.354345e-06,2.264941e-06,2.178899e-06,2.096094e-06,2.016405e-06,1.939718e-06,1.865919e-06,1.794901e-06,1.726560e-06,1.660798e-06,1.597516e-06,1.536624e-06,1.478031e-06,1.421651e-06,1.367403e-06,1.315205e-06,1.264982e-06,1.216660e-06,1.170167e-06,1.125434e-06,1.082396e-06,1.040990e-06,1.001153e-06,9.628274e-07,9.259561e-07,8.904844e-07,8.563598e-07,8.235316e-07,7.919509e-07,7.615710e-07,7.323465e-07,7.042339e-07,6.771913e-07,6.511784e-07,6.261564e-07,6.020878e-07,5.789366e-07,5.566683e-07,5.352495e-07,5.146480e-07,4.948329e-07,4.757746e-07,4.574443e-07,4.398146e-07,4.228588e-07,4.065515e-07,3.908680e-07,3.757847e-07,3.612789e-07,3.473286e-07,3.339128e-07,3.210111e-07,3.086040e-07,2.966727e-07,2.851992e-07,2.741659e-07,2.635562e-07,2.533540e-07,2.435437e-07,2.341103e-07,2.250396e-07,2.163177e-07,2.079313e-07,1.998676e-07,1.921143e-07,1.846596e-07,1.774919e-07,1.706005e-07,1.639746e-07,1.576042e-07,1.514795e-07,1.455910e-07,1.399299e-07,1.344872e-07,1.292547e-07,1.242244e-07,1.193884e-07,1.147394e-07,1.102701e-07,1.059736e-07,1.018434e-07,9.787302e-08,9.405634e-08,9.038746e-08,8.686070e-08,8.347059e-08,8.021188e-08,7.707952e-08,7.406863e-08,7.117455e-08,6.839278e-08,6.571899e-08,6.314902e-08,6.067888e-08,5.830470e-08,5.602279e-08,5.382959e-08,5.172167e-08,4.969575e-08,4.774866e-08,4.587734e-08,4.407888e-08,4.235046e-08,4.068936e-08,3.909299e-08,3.755884e-08,3.608450e-08,3.466766e-08,3.330609e-08,3.199765e-08,3.074027e-08,2.953199e-08,2.837090e-08,2.725516e-08,2.618302e-08,2.515279e-08,2.416283e-08,2.321159e-08,2.229756e-08,2.141930e-08,2.057541e-08,1.976455e-08,1.898546e-08,1.823688e-08,1.751763e-08,1.682657e-08,1.616260e-08,1.552467e-08,1.491177e-08,1.432291e-08,1.375716e-08,1.321362e-08,1.269142e-08,1.218973e-08,1.170776e-08,1.124472e-08,1.079988e-08,1.037254e-08,9.962001e-09,9.567613e-09,9.188744e-09,8.824787e-09,8.475160e-09,8.139301e-09,7.816671e-09,7.506753e-09,7.209050e-09,6.923082e-09,6.648391e-09,6.384533e-09,6.131085e-09,5.887639e-09,5.653802e-09,5.429197e-09,5.213462e-09,5.006249e-09,4.807224e-09,4.616065e-09,4.432462e-09,4.256119e-09,4.086751e-09,3.924084e-09,3.767854e-09,3.617807e-09,3.473701e-09,3.335302e-09,3.202385e-09,3.074735e-09,2.952143e-09,2.834411e-09,2.721347e-09,2.612768e-09,2.508496e-09,2.408361e-09,2.312201e-09,2.219858e-09,2.131182e-09,2.046029e-09,1.964258e-09,1.885737e-09,1.810337e-09,1.737935e-09,1.668412e-09,1.601654e-09,1.537553e-09,1.476003e-09,1.416903e-09,1.360156e-09,1.305669e-09,1.253352e-09,1.203120e-09,1.154890e-09,1.108583e-09,1.064122e-09,1.021434e-09,9.804496e-10,9.411003e-10,9.033215e-10,8.670509e-10,8.322287e-10,7.987973e-10,7.667014e-10,7.358881e-10,7.063064e-10,6.779074e-10,6.506439e-10,6.244709e-10,5.993450e-10,5.752246e-10,5.520696e-10,5.298416e-10,5.085038e-10,4.880206e-10,4.683580e-10,4.494834e-10,4.313653e-10,4.139736e-10,3.972793e-10,3.812546e-10,3.658728e-10,3.511083e-10,3.369364e-10,3.233335e-10,3.102768e-10,2.977446e-10,2.857159e-10,2.741705e-10,2.630892e-10,2.524533e-10,2.422452e-10,2.324477e-10,2.230443e-10,2.140194e-10,2.053576e-10,1.970446e-10,1.890664e-10,1.814094e-10,1.740610e-10,1.670086e-10,1.602405e-10,1.537453e-10,1.475120e-10,1.415300e-10,1.357894e-10,1.302804e-10,1.249938e-10,1.199206e-10,1.150522e-10,1.103804e-10,1.058974e-10,1.015955e-10,9.746743e-11,9.350626e-11,8.970524e-11,8.605795e-11,8.255819e-11,7.920003e-11,7.597777e-11,7.288594e-11,6.991928e-11,6.707277e-11,6.434155e-11,6.172098e-11,5.920661e-11,5.679414e-11,5.447948e-11,5.225868e-11,5.012795e-11,4.808366e-11,4.612233e-11,4.424059e-11,4.243524e-11,4.070319e-11,3.904149e-11,3.744728e-11,3.591785e-11,3.445058e-11,3.304294e-11,3.169253e-11,3.039704e-11,2.915425e-11,2.796201e-11,2.681829e-11,2.572112e-11,2.466862e-11,2.365897e-11,2.269044e-11,2.176137e-11,2.087015e-11,2.001525e-11,1.919520e-11,1.840859e-11,1.765405e-11,1.693029e-11,1.623606e-11,1.557015e-11,1.493143e-11,1.431878e-11,1.373115e-11,1.316752e-11,1.262691e-11,1.210839e-11,1.161106e-11,1.113406e-11,1.067656e-11,1.023777e-11,9.816929e-12,9.413304e-12,9.026195e-12,8.654929e-12,8.298863e-12,7.957375e-12,7.629873e-12,7.315786e-12,7.014567e-12,6.725693e-12,6.448658e-12,6.182982e-12,5.928199e-12,5.683867e-12,5.449557e-12,5.224861e-12,5.009387e-12,4.802758e-12}, {2.957221e+04,7.379692e+03,2.037359e+03,7.830971e+02,4.711201e+02,3.547773e+02,2.751923e+02,2.076587e+02,1.520303e+02,1.092844e+02,7.841167e+01,5.720101e+01,4.319106e+01,3.419931e+01,2.851135e+01,2.488391e+01,2.246954e+01,2.072192e+01,1.930881e+01,1.804220e+01,1.682634e+01,1.562145e+01,1.441926e+01,1.322748e+01,1.206027e+01,1.093277e+01,9.858312e+00,8.847145e+00,7.906188e+00,7.039231e+00,6.247398e+00,5.529687e+00,4.883496e+00,4.305096e+00,3.790025e+00,3.333413e+00,2.930227e+00,2.575454e+00,2.264238e+00,1.991965e+00,1.754325e+00,1.547337e+00,1.367369e+00,1.211128e+00,1.075657e+00,9.583102e-01,8.567394e-01,7.688657e-01,6.928576e-01,6.271072e-01,5.702074e-01,5.209302e-01,4.782071e-01,4.411104e-01,4.088365e-01,3.806906e-01,3.560736e-01,3.344697e-01,3.154354e-01,2.985907e-01,2.836098e-01,2.702147e-01,2.581680e-01,2.472677e-01,2.373421e-01,2.282457e-01,2.198551e-01,2.120664e-01,2.047919e-01,1.979579e-01,1.915026e-01,1.853745e-01,1.795304e-01,1.739344e-01,1.685570e-01,1.633736e-01,1.583640e-01,1.535116e-01,1.488028e-01,1.442268e-01,1.397744e-01,1.354384e-01,1.312130e-01,1.270934e-01,1.230758e-01,1.191572e-01,1.153351e-01,1.116073e-01,1.079722e-01,1.044283e-01,1.009744e-01,9.760930e-02,9.433198e-02,9.114142e-02,8.803664e-02,8.501663e-02,8.208039e-02,7.922688e-02,7.645499e-02,7.376361e-02,7.115155e-02,6.861758e-02,6.616042e-02,6.377874e-02,6.147117e-02,5.923631e-02,5.707269e-02,5.497884e-02,5.295325e-02,5.099439e-02,4.910071e-02,4.727064e-02,4.550262e-02,4.379505e-02,4.214637e-02,4.055499e-02,3.901933e-02,3.753784e-02,3.610896e-02,3.473115e-02,3.340289e-02,3.212269e-02,3.088906e-02,2.970055e-02,2.855572e-02,2.745317e-02,2.639153e-02,2.536944e-02,2.438560e-02,2.343870e-02,2.252749e-02,2.165074e-02,2.080726e-02,1.999588e-02,1.921548e-02,1.846494e-02,1.774320e-02,1.704922e-02,1.638200e-02,1.574055e-02,1.512392e-02,1.453121e-02,1.396152e-02,1.341400e-02,1.288780e-02,1.238214e-02,1.189623e-02,1.142933e-02,1.098070e-02,1.054965e-02,1.013551e-02,9.737632e-03,9.355379e-03,8.988152e-03,8.635367e-03,8.296463e-03,7.970901e-03,7.658159e-03,7.357736e-03,7.069150e-03,6.791937e-03,6.525650e-03,6.269860e-03,6.024153e-03,5.788132e-03,5.561414e-03,5.343633e-03,5.134435e-03,4.933481e-03,4.740444e-03,4.555011e-03,4.376882e-03,4.205766e-03,4.041385e-03,3.883473e-03,3.731773e-03,3.586039e-03,3.446034e-03,3.311531e-03,3.182312e-03,3.058167e-03,2.938895e-03,2.824304e-03,2.714207e-03,2.608426e-03,2.506791e-03,2.409138e-03,2.315308e-03,2.225151e-03,2.138522e-03,2.055280e-03,1.975293e-03,1.898432e-03,1.824572e-03,1.753597e-03,1.685392e-03,1.619848e-03,1.556861e-03,1.496329e-03,1.438156e-03,1.382250e-03,1.328521e-03,1.276884e-03,1.227257e-03,1.179560e-03,1.133719e-03,1.089661e-03,1.047315e-03,1.006615e-03,9.674968e-04,9.298979e-04,8.937594e-04,8.590240e-04,8.256372e-04,7.935463e-04,7.627008e-04,7.330522e-04,7.045538e-04,6.771609e-04,6.508306e-04,6.255214e-04,6.011936e-04,5.778093e-04,5.553316e-04,5.337254e-04,5.129569e-04,4.929936e-04,4.738043e-04,4.553589e-04,4.376286e-04,4.205857e-04,4.042036e-04,3.884567e-04,3.733203e-04,3.587709e-04,3.447858e-04,3.313431e-04,3.184218e-04,3.060017e-04,2.940635e-04,2.825885e-04,2.715589e-04,2.609573e-04,2.507673e-04,2.409729e-04,2.315589e-04,2.225105e-04,2.138136e-04,2.054546e-04,1.974204e-04,1.896986e-04,1.822769e-04,1.751439e-04,1.682883e-04,1.616994e-04,1.553670e-04,1.492810e-04,1.434319e-04,1.378107e-04,1.324084e-04,1.272166e-04,1.222271e-04,1.174322e-04,1.128242e-04,1.083960e-04,1.041405e-04,1.000511e-04,9.612133e-05,9.234503e-05,8.871623e-05,8.522921e-05,8.187847e-05,7.865872e-05,7.556487e-05,7.259204e-05,6.973553e-05,6.699082e-05,6.435357e-05,6.181959e-05,5.938487e-05,5.704555e-05,5.479792e-05,5.263840e-05,5.056358e-05,4.857015e-05,4.665494e-05,4.481490e-05,4.304710e-05,4.134872e-05,3.971706e-05,3.814951e-05,3.664357e-05,3.519684e-05,3.380699e-05,3.247182e-05,3.118917e-05,2.995701e-05,2.877334e-05,2.763629e-05,2.654401e-05,2.549476e-05,2.448685e-05,2.351867e-05,2.258865e-05,2.169531e-05,2.083719e-05,2.001293e-05,1.922119e-05,1.846069e-05,1.773021e-05,1.702857e-05,1.635463e-05,1.570731e-05,1.508557e-05,1.448839e-05,1.391480e-05,1.336389e-05,1.283475e-05,1.232654e-05,1.183842e-05,1.136961e-05,1.091934e-05,1.048688e-05,1.007154e-05,9.672632e-06,9.289512e-06,8.921557e-06,8.568169e-06,8.228772e-06,7.902815e-06,7.589766e-06,7.289116e-06,7.000374e-06,6.723071e-06,6.456753e-06,6.200988e-06,5.955357e-06,5.719459e-06,5.492910e-06,5.275340e-06,5.066394e-06,4.865729e-06,4.673019e-06,4.487948e-06,4.310214e-06,4.139526e-06,3.975606e-06,3.818184e-06,3.667004e-06,3.521819e-06,3.382390e-06,3.248489e-06,3.119898e-06,2.996406e-06,2.877811e-06,2.763918e-06,2.654541e-06,2.549501e-06,2.448625e-06,2.351750e-06,2.258715e-06,2.169369e-06,2.083566e-06,2.001164e-06,1.922029e-06,1.846030e-06,1.773045e-06,1.702952e-06,1.635638e-06,1.570992e-06,1.508907e-06,1.449283e-06,1.392022e-06,1.337030e-06,1.284216e-06,1.233495e-06,1.184783e-06,1.138001e-06,1.093071e-06,1.049922e-06,1.008480e-06,9.686802e-07,9.304559e-07,8.937448e-07,8.584870e-07,8.246248e-07,7.921027e-07,7.608676e-07,7.308684e-07,7.020561e-07,6.743836e-07,6.478057e-07,6.222790e-07,5.977617e-07,5.742138e-07,5.515968e-07,5.298740e-07,5.090097e-07,4.889699e-07,4.697220e-07,4.512346e-07,4.334775e-07,4.164217e-07,4.000395e-07,3.843042e-07,3.691901e-07,3.546727e-07,3.407282e-07,3.273341e-07,3.144684e-07,3.021103e-07,2.902397e-07,2.788372e-07,2.678844e-07,2.573634e-07,2.472572e-07,2.375493e-07,2.282239e-07,2.192660e-07,2.106611e-07,2.023950e-07,1.944545e-07,1.868267e-07,1.794992e-07,1.724601e-07,1.656981e-07,1.592022e-07,1.529618e-07,1.469670e-07,1.412079e-07,1.356753e-07,1.303603e-07,1.252542e-07,1.203488e-07,1.156362e-07,1.111087e-07,1.067592e-07,1.025804e-07,9.856584e-08,9.470888e-08,9.100336e-08,8.744329e-08,8.402296e-08,8.073684e-08,7.757967e-08,7.454634e-08,7.163200e-08,6.883194e-08,6.614168e-08,6.355690e-08,6.107343e-08,5.868729e-08,5.639466e-08,5.419186e-08,5.207535e-08,5.004174e-08,4.808777e-08,4.621031e-08,4.440636e-08,4.267302e-08,4.100752e-08,3.940720e-08,3.786949e-08,3.639194e-08,3.497219e-08,3.360797e-08,3.229709e-08,3.103747e-08,2.982709e-08,2.866402e-08,2.754641e-08,2.647248e-08,2.544050e-08,2.444885e-08,2.349593e-08,2.258022e-08,2.170028e-08,2.085470e-08,2.004213e-08,1.926129e-08,1.851092e-08,1.778984e-08,1.709689e-08,1.643099e-08,1.579107e-08,1.517610e-08,1.458513e-08,1.401721e-08,1.347143e-08,1.294693e-08,1.244289e-08,1.195849e-08,1.149298e-08,1.104561e-08,1.061568e-08,1.020250e-08,9.805418e-09,9.423810e-09,9.057069e-09,8.704615e-09,8.365889e-09,8.040356e-09,7.727502e-09,7.426830e-09,7.137866e-09,6.860154e-09,6.593254e-09,6.336744e-09,6.090219e-09,5.853291e-09,5.625584e-09,5.406739e-09,5.196411e-09,4.994268e-09,4.799991e-09,4.613273e-09,4.433819e-09,4.261348e-09,4.095586e-09,3.936273e-09,3.783157e-09,3.635997e-09,3.494560e-09,3.358625e-09,3.227977e-09,3.102410e-09,2.981726e-09,2.865735e-09,2.754255e-09,2.647110e-09,2.544131e-09,2.445157e-09,2.350031e-09,2.258603e-09,2.170731e-09,2.086275e-09,2.005102e-09,1.927086e-09,1.852102e-09,1.780034e-09,1.710768e-09,1.644195e-09,1.580210e-09,1.518712e-09,1.459605e-09,1.402796e-09,1.348196e-09,1.295719e-09,1.245281e-09,1.196805e-09,1.150213e-09,1.105433e-09,1.062394e-09,1.021028e-09,9.812700e-10,9.430582e-10,9.063322e-10,8.710342e-10,8.371088e-10,8.045025e-10,7.731642e-10,7.430445e-10,7.140961e-10,6.862736e-10,6.595331e-10,6.338325e-10,6.091316e-10,5.853915e-10,5.625748e-10,5.406456e-10,5.195695e-10,4.993133e-10,4.798452e-10,4.611345e-10,4.431518e-10,4.258688e-10,4.092584e-10,3.932944e-10,3.779516e-10,3.632060e-10,3.490343e-10,3.354142e-10,3.223244e-10,3.097441e-10,2.976536e-10,2.860339e-10,2.748666e-10,2.641342e-10,2.538197e-10,2.439069e-10,2.343803e-10,2.252247e-10,2.164258e-10,2.079698e-10,1.998431e-10,1.920332e-10,1.845276e-10,1.773145e-10,1.703825e-10,1.637208e-10,1.573187e-10,1.511663e-10,1.452537e-10,1.395717e-10,1.341113e-10,1.288638e-10,1.238211e-10,1.189750e-10,1.143181e-10,1.098428e-10,1.055421e-10,1.014093e-10,9.743785e-11,9.362138e-11,8.995391e-11,8.642962e-11,8.304296e-11,7.978855e-11,7.666125e-11,7.365611e-11,7.076837e-11,6.799345e-11,6.532697e-11,6.276469e-11,6.030256e-11,5.793667e-11,5.566328e-11,5.347877e-11,5.137969e-11,4.936271e-11,4.742462e-11,4.556234e-11,4.377293e-11,4.205353e-11,4.040143e-11,3.881399e-11,3.728869e-11,3.582310e-11,3.441491e-11,3.306186e-11,3.176180e-11,3.051267e-11,2.931249e-11,2.815932e-11,2.705135e-11,2.598681e-11,2.496400e-11,2.398128e-11,2.303710e-11,2.212995e-11,2.125838e-11,2.042100e-11,1.961648e-11,1.884352e-11,1.810090e-11,1.738744e-11,1.670198e-11,1.604343e-11,1.541075e-11,1.480291e-11,1.421895e-11,1.365794e-11,1.311897e-11,1.260118e-11,1.210375e-11,1.162587e-11,1.116678e-11,1.072575e-11,1.030206e-11,9.895036e-12,9.504029e-12,9.128408e-12,8.767571e-12,8.420938e-12,8.087952e-12,7.768078e-12,7.460802e-12,7.165629e-12,6.882085e-12,6.609713e-12,6.348075e-12,6.096750e-12,5.855333e-12,5.623434e-12,5.400681e-12,5.186714e-12,4.981187e-12,4.783770e-12,4.594144e-12,4.412002e-12,4.237050e-12,4.069005e-12,3.907597e-12,3.752564e-12,3.603655e-12,3.460630e-12,3.323256e-12,3.191313e-12,3.064585e-12,2.942867e-12}, {3.222820e+04,7.737521e+03,2.081669e+03,8.088526e+02,4.986264e+02,3.766571e+02,2.888648e+02,2.145804e+02,1.547492e+02,1.099901e+02,7.854757e+01,5.753652e+01,4.402315e+01,3.554561e+01,3.025300e+01,2.685666e+01,2.451455e+01,2.270944e+01,2.114549e+01,1.966941e+01,1.821457e+01,1.676344e+01,1.532348e+01,1.391257e+01,1.255063e+01,1.125535e+01,1.004027e+01,8.914416e+00,7.882521e+00,6.945742e+00,6.102395e+00,5.348705e+00,4.679457e+00,4.088541e+00,3.569384e+00,3.115275e+00,2.719609e+00,2.376051e+00,2.078647e+00,1.821884e+00,1.600728e+00,1.410623e+00,1.247487e+00,1.107685e+00,9.880046e-01,8.856198e-01,7.980575e-01,7.231631e-01,6.590666e-01,6.041507e-01,5.570217e-01,5.164821e-01,4.815061e-01,4.512174e-01,4.248695e-01,4.018284e-01,3.815569e-01,3.636012e-01,3.475789e-01,3.331688e-01,3.201021e-01,3.081541e-01,2.971381e-01,2.868992e-01,2.773095e-01,2.682639e-01,2.596764e-01,2.514768e-01,2.436084e-01,2.360255e-01,2.286917e-01,2.215780e-01,2.146616e-01,2.079251e-01,2.013547e-01,1.949402e-01,1.886739e-01,1.825503e-01,1.765654e-01,1.707164e-01,1.650015e-01,1.594195e-01,1.539697e-01,1.486516e-01,1.434650e-01,1.384097e-01,1.334854e-01,1.286919e-01,1.240288e-01,1.194955e-01,1.150912e-01,1.108152e-01,1.066662e-01,1.026431e-01,9.874430e-02,9.496833e-02,9.131337e-02,8.777751e-02,8.435871e-02,8.105481e-02,7.786352e-02,7.478249e-02,7.180927e-02,6.894136e-02,6.617619e-02,6.351115e-02,6.094362e-02,5.847094e-02,5.609045e-02,5.379947e-02,5.159535e-02,4.947545e-02,4.743714e-02,4.547781e-02,4.359492e-02,4.178592e-02,4.004834e-02,3.837972e-02,3.677767e-02,3.523986e-02,3.376398e-02,3.234780e-02,3.098914e-02,2.968588e-02,2.843594e-02,2.723731e-02,2.608806e-02,2.498627e-02,2.393013e-02,2.291785e-02,2.194771e-02,2.101806e-02,2.012728e-02,1.927382e-02,1.845618e-02,1.767293e-02,1.692266e-02,1.620403e-02,1.551575e-02,1.485657e-02,1.422530e-02,1.362077e-02,1.304189e-02,1.248758e-02,1.195681e-02,1.144862e-02,1.096204e-02,1.049617e-02,1.005013e-02,9.623099e-03,9.214264e-03,8.822857e-03,8.448138e-03,8.089399e-03,7.745960e-03,7.417172e-03,7.102409e-03,6.801073e-03,6.512592e-03,6.236417e-03,5.972021e-03,5.718902e-03,5.476576e-03,5.244581e-03,5.022476e-03,4.809837e-03,4.606258e-03,4.411351e-03,4.224744e-03,4.046082e-03,3.875025e-03,3.711246e-03,3.554433e-03,3.404289e-03,3.260527e-03,3.122874e-03,2.991068e-03,2.864859e-03,2.744008e-03,2.628285e-03,2.517470e-03,2.411355e-03,2.309737e-03,2.212426e-03,2.119236e-03,2.029992e-03,1.944525e-03,1.862675e-03,1.784287e-03,1.709213e-03,1.637312e-03,1.568450e-03,1.502496e-03,1.439327e-03,1.378824e-03,1.320874e-03,1.265369e-03,1.212205e-03,1.161282e-03,1.112506e-03,1.065785e-03,1.021031e-03,9.781625e-04,9.370986e-04,8.977631e-04,8.600828e-04,8.239876e-04,7.894106e-04,7.562875e-04,7.245570e-04,6.941601e-04,6.650406e-04,6.371445e-04,6.104202e-04,5.848184e-04,5.602916e-04,5.367945e-04,5.142839e-04,4.927180e-04,4.720571e-04,4.522632e-04,4.332997e-04,4.151317e-04,3.977257e-04,3.810497e-04,3.650730e-04,3.497662e-04,3.351012e-04,3.210510e-04,3.075898e-04,2.946928e-04,2.823364e-04,2.704978e-04,2.591554e-04,2.482883e-04,2.378765e-04,2.279011e-04,2.183436e-04,2.091866e-04,2.004132e-04,1.920074e-04,1.839538e-04,1.762376e-04,1.688447e-04,1.617615e-04,1.549751e-04,1.484729e-04,1.422432e-04,1.362745e-04,1.305559e-04,1.250768e-04,1.198273e-04,1.147977e-04,1.099789e-04,1.053620e-04,1.009386e-04,9.670049e-05,9.264000e-05,8.874968e-05,8.502240e-05,8.145133e-05,7.802993e-05,7.475194e-05,7.161136e-05,6.860242e-05,6.571963e-05,6.295770e-05,6.031157e-05,5.777639e-05,5.534752e-05,5.302050e-05,5.079108e-05,4.865516e-05,4.660884e-05,4.464835e-05,4.277010e-05,4.097066e-05,3.924672e-05,3.759512e-05,3.601283e-05,3.449695e-05,3.304469e-05,3.165339e-05,3.032050e-05,2.904357e-05,2.782025e-05,2.664831e-05,2.552558e-05,2.445001e-05,2.341962e-05,2.243251e-05,2.148688e-05,2.058098e-05,1.971314e-05,1.888178e-05,1.808537e-05,1.732243e-05,1.659157e-05,1.589143e-05,1.522074e-05,1.457825e-05,1.396279e-05,1.337322e-05,1.280845e-05,1.226745e-05,1.174921e-05,1.125278e-05,1.077725e-05,1.032174e-05,9.885408e-06,9.467448e-06,9.067090e-06,8.683596e-06,8.316257e-06,7.964394e-06,7.627358e-06,7.304527e-06,6.995302e-06,6.699114e-06,6.415413e-06,6.143676e-06,5.883399e-06,5.634102e-06,5.395321e-06,5.166616e-06,4.947562e-06,4.737754e-06,4.536803e-06,4.344337e-06,4.159998e-06,3.983445e-06,3.814349e-06,3.652398e-06,3.497291e-06,3.348739e-06,3.206466e-06,3.070209e-06,2.939713e-06,2.814737e-06,2.695047e-06,2.580421e-06,2.470646e-06,2.365517e-06,2.264839e-06,2.168423e-06,2.076091e-06,1.987670e-06,1.902994e-06,1.821907e-06,1.744256e-06,1.669897e-06,1.598691e-06,1.530505e-06,1.465211e-06,1.402687e-06,1.342816e-06,1.285486e-06,1.230591e-06,1.178026e-06,1.127694e-06,1.079499e-06,1.033353e-06,9.891680e-07,9.468612e-07,9.063532e-07,8.675680e-07,8.304326e-07,7.948773e-07,7.608352e-07,7.282422e-07,6.970369e-07,6.671607e-07,6.385571e-07,6.111723e-07,5.849547e-07,5.598547e-07,5.358250e-07,5.128202e-07,4.907969e-07,4.697134e-07,4.495297e-07,4.302079e-07,4.117112e-07,3.940046e-07,3.770546e-07,3.608290e-07,3.452971e-07,3.304294e-07,3.161977e-07,3.025748e-07,2.895350e-07,2.770533e-07,2.651062e-07,2.536708e-07,2.427253e-07,2.322489e-07,2.222216e-07,2.126243e-07,2.034387e-07,1.946472e-07,1.862329e-07,1.781799e-07,1.704727e-07,1.630966e-07,1.560374e-07,1.492816e-07,1.428163e-07,1.366290e-07,1.307079e-07,1.250415e-07,1.196191e-07,1.144301e-07,1.094647e-07,1.047131e-07,1.001664e-07,9.581563e-08,9.165251e-08,8.766896e-08,8.385731e-08,8.021018e-08,7.672052e-08,7.338159e-08,7.018691e-08,6.713030e-08,6.420584e-08,6.140784e-08,5.873089e-08,5.616977e-08,5.371952e-08,5.137537e-08,4.913276e-08,4.698732e-08,4.493487e-08,4.297141e-08,4.109311e-08,3.929630e-08,3.757748e-08,3.593328e-08,3.436048e-08,3.285601e-08,3.141693e-08,3.004041e-08,2.872374e-08,2.746436e-08,2.625978e-08,2.510764e-08,2.400567e-08,2.295170e-08,2.194366e-08,2.097956e-08,2.005750e-08,1.917566e-08,1.833229e-08,1.752575e-08,1.675442e-08,1.601678e-08,1.531137e-08,1.463680e-08,1.399172e-08,1.337486e-08,1.278499e-08,1.222093e-08,1.168158e-08,1.116585e-08,1.067272e-08,1.020120e-08,9.750354e-09,9.319285e-09,8.907131e-09,8.513067e-09,8.136306e-09,7.776093e-09,7.431708e-09,7.102460e-09,6.787689e-09,6.486764e-09,6.199079e-09,5.924057e-09,5.661145e-09,5.409813e-09,5.169556e-09,4.939888e-09,4.720348e-09,4.510492e-09,4.309895e-09,4.118153e-09,3.934878e-09,3.759698e-09,3.592259e-09,3.432221e-09,3.279260e-09,3.133065e-09,2.993339e-09,2.859798e-09,2.732171e-09,2.610197e-09,2.493628e-09,2.382226e-09,2.275765e-09,2.174026e-09,2.076801e-09,1.983893e-09,1.895110e-09,1.810272e-09,1.729203e-09,1.651738e-09,1.577718e-09,1.506991e-09,1.439411e-09,1.374840e-09,1.313144e-09,1.254197e-09,1.197876e-09,1.144067e-09,1.092657e-09,1.043540e-09,9.966153e-10,9.517854e-10,9.089575e-10,8.680428e-10,8.289566e-10,7.916177e-10,7.559487e-10,7.218753e-10,6.893267e-10,6.582353e-10,6.285362e-10,6.001676e-10,5.730704e-10,5.471878e-10,5.224660e-10,4.988532e-10,4.763001e-10,4.547594e-10,4.341860e-10,4.145369e-10,3.957707e-10,3.778482e-10,3.607316e-10,3.443850e-10,3.287740e-10,3.138658e-10,2.996289e-10,2.860333e-10,2.730503e-10,2.606526e-10,2.488139e-10,2.375093e-10,2.267147e-10,2.164074e-10,2.065655e-10,1.971682e-10,1.881954e-10,1.796283e-10,1.714485e-10,1.636386e-10,1.561822e-10,1.490632e-10,1.422665e-10,1.357777e-10,1.295828e-10,1.236687e-10,1.180227e-10,1.126328e-10,1.074874e-10,1.025755e-10,9.788655e-11,9.341056e-11,8.913790e-11,8.505939e-11,8.116627e-11,7.745018e-11,7.390311e-11,7.051745e-11,6.728588e-11,6.420144e-11,6.125749e-11,5.844767e-11,5.576590e-11,5.320639e-11,5.076361e-11,4.843226e-11,4.620731e-11,4.408391e-11,4.205748e-11,4.012361e-11,3.827810e-11,3.651695e-11,3.483631e-11,3.323255e-11,3.170215e-11,3.024179e-11,2.884829e-11,2.751860e-11,2.624982e-11,2.503917e-11,2.388402e-11,2.278184e-11,2.173020e-11,2.072682e-11,1.976948e-11,1.885609e-11,1.798465e-11,1.715324e-11,1.636003e-11,1.560328e-11,1.488133e-11,1.419258e-11,1.353552e-11,1.290869e-11,1.231073e-11,1.174029e-11,1.119614e-11,1.067705e-11,1.018189e-11,9.709563e-12,9.259016e-12,8.829253e-12,8.419322e-12,8.028313e-12,7.655359e-12,7.299630e-12,6.960336e-12,6.636722e-12,6.328068e-12,6.033686e-12,5.752922e-12,5.485148e-12,5.229767e-12,4.986209e-12,4.753930e-12,4.532410e-12,4.321156e-12,4.119692e-12,3.927569e-12,3.744356e-12,3.569642e-12,3.403035e-12,3.244161e-12,3.092664e-12,2.948202e-12,2.810452e-12,2.679103e-12,2.553859e-12,2.434438e-12,2.320571e-12,2.212001e-12,2.108484e-12,2.009785e-12,1.915681e-12,1.825960e-12,1.740418e-12,1.658863e-12,1.581109e-12,1.506981e-12,1.436309e-12,1.368934e-12,1.304704e-12,1.243471e-12,1.185097e-12,1.129449e-12,1.076400e-12,1.025830e-12,9.776243e-13,9.316717e-13,8.878681e-13,8.461134e-13,8.063123e-13,7.683739e-13,7.322116e-13,6.977425e-13,6.648879e-13,6.335726e-13,6.037248e-13,5.752760e-13,5.481612e-13,5.223180e-13,4.976871e-13,4.742120e-13,4.518387e-13,4.305158e-13,4.101942e-13,3.908272e-13,3.723701e-13,3.547804e-13,3.380176e-13,3.220429e-13,3.068195e-13,2.923124e-13,2.784878e-13,2.653140e-13,2.527603e-13,2.407978e-13,2.293988e-13,2.185368e-13,2.081868e-13,1.983246e-13,1.889274e-13,1.799733e-13,1.714417e-13}, {3.502384e+04,8.096069e+03,2.124751e+03,8.367469e+02,5.276487e+02,3.985965e+02,3.017990e+02,2.206921e+02,1.569742e+02,1.106034e+02,7.891111e+01,5.828309e+01,4.532187e+01,3.732136e+01,3.233303e+01,2.905501e+01,2.667311e+01,2.471249e+01,2.291983e+01,2.117794e+01,1.944775e+01,1.773095e+01,1.604720e+01,1.442110e+01,1.287530e+01,1.142749e+01,1.008952e+01,8.867644e+00,7.763409e+00,6.774622e+00,5.896353e+00,5.121806e+00,4.443045e+00,3.851566e+00,3.338731e+00,2.896075e+00,2.515525e+00,2.189538e+00,1.911173e+00,1.674132e+00,1.472760e+00,1.302025e+00,1.157485e+00,1.035249e+00,9.319246e-01,8.445749e-01,7.706684e-01,7.080337e-01,6.548165e-01,6.094403e-01,5.705702e-01,5.370805e-01,5.080257e-01,4.826150e-01,4.601897e-01,4.402037e-01,4.222060e-01,4.058263e-01,3.907617e-01,3.767665e-01,3.636420e-01,3.512290e-01,3.394007e-01,3.280574e-01,3.171212e-01,3.065319e-01,2.962440e-01,2.862236e-01,2.764459e-01,2.668934e-01,2.575543e-01,2.484212e-01,2.394898e-01,2.307582e-01,2.222262e-01,2.138947e-01,2.057653e-01,1.978398e-01,1.901201e-01,1.826079e-01,1.753049e-01,1.682119e-01,1.613298e-01,1.546585e-01,1.481977e-01,1.419464e-01,1.359034e-01,1.300666e-01,1.244338e-01,1.190021e-01,1.137685e-01,1.087295e-01,1.038813e-01,9.921988e-02,9.474094e-02,9.044005e-02,8.631260e-02,8.235385e-02,7.855898e-02,7.492310e-02,7.144127e-02,6.810856e-02,6.492000e-02,6.187068e-02,5.895572e-02,5.617028e-02,5.350961e-02,5.096902e-02,4.854391e-02,4.622977e-02,4.402222e-02,4.191695e-02,3.990980e-02,3.799669e-02,3.617368e-02,3.443695e-02,3.278279e-02,3.120763e-02,2.970801e-02,2.828058e-02,2.692214e-02,2.562957e-02,2.439990e-02,2.323025e-02,2.211788e-02,2.106012e-02,2.005445e-02,1.909842e-02,1.818970e-02,1.732605e-02,1.650533e-02,1.572549e-02,1.498456e-02,1.428068e-02,1.361206e-02,1.297697e-02,1.237379e-02,1.180095e-02,1.125697e-02,1.074043e-02,1.024996e-02,9.784283e-03,9.342162e-03,8.922423e-03,8.523949e-03,8.145675e-03,7.786586e-03,7.445716e-03,7.122148e-03,6.815006e-03,6.523457e-03,6.246710e-03,5.984012e-03,5.734646e-03,5.497932e-03,5.273221e-03,5.059899e-03,4.857380e-03,4.665109e-03,4.482557e-03,4.309222e-03,4.144627e-03,3.988320e-03,3.839871e-03,3.698872e-03,3.564934e-03,3.437690e-03,3.316789e-03,3.201902e-03,3.092712e-03,2.988921e-03,2.890245e-03,2.796417e-03,2.707180e-03,2.622293e-03,2.541526e-03,2.464661e-03,2.391493e-03,2.321825e-03,2.255472e-03,2.192258e-03,2.132016e-03,2.074588e-03,2.019825e-03,1.967584e-03,1.917732e-03,1.870139e-03,1.824687e-03,1.781260e-03,1.739751e-03,1.700056e-03,1.662078e-03,1.625727e-03,1.590913e-03,1.557556e-03,1.525577e-03,1.494902e-03,1.465461e-03,1.437188e-03,1.410021e-03,1.383901e-03,1.358771e-03,1.334578e-03,1.311273e-03,1.288807e-03,1.267137e-03,1.246220e-03,1.226016e-03,1.206487e-03,1.187598e-03,1.169314e-03,1.151603e-03,1.134436e-03,1.117785e-03,1.101621e-03,1.085921e-03,1.070659e-03,1.055814e-03,1.041363e-03,1.027288e-03,1.013568e-03,1.000186e-03,9.871245e-04,9.743684e-04,9.619022e-04,9.497118e-04,9.377838e-04,9.261056e-04,9.146654e-04,9.034518e-04,8.924545e-04,8.816635e-04,8.710694e-04,8.606635e-04,8.504375e-04,8.403835e-04,8.304942e-04,8.207628e-04,8.111827e-04,8.017478e-04,7.924525e-04,7.832912e-04,7.742590e-04,7.653510e-04,7.565627e-04,7.478900e-04,7.393289e-04,7.308757e-04,7.225268e-04,7.142790e-04,7.061293e-04,6.980747e-04,6.901125e-04,6.822401e-04,6.744553e-04,6.667556e-04,6.591391e-04,6.516036e-04,6.441475e-04,6.367689e-04,6.294662e-04,6.222378e-04,6.150823e-04,6.079984e-04,6.009847e-04,5.940401e-04,5.871634e-04,5.803536e-04,5.736097e-04,5.669307e-04,5.603157e-04,5.537640e-04,5.472746e-04,5.408469e-04,5.344802e-04,5.281738e-04,5.219270e-04,5.157392e-04,5.096100e-04,5.035387e-04,4.975247e-04,4.915678e-04,4.856672e-04,4.798226e-04,4.740336e-04,4.682998e-04,4.626206e-04,4.569958e-04,4.514250e-04,4.459077e-04,4.404437e-04,4.350326e-04,4.296741e-04,4.243678e-04,4.191134e-04,4.139106e-04,4.087590e-04,4.036585e-04,3.986086e-04,3.936091e-04,3.886596e-04,3.837600e-04,3.789098e-04,3.741088e-04,3.693568e-04,3.646533e-04,3.599982e-04,3.553912e-04,3.508319e-04,3.463202e-04,3.418556e-04,3.374379e-04,3.330669e-04,3.287422e-04,3.244635e-04,3.202307e-04,3.160433e-04,3.119010e-04,3.078037e-04,3.037510e-04,2.997426e-04,2.957781e-04,2.918574e-04,2.879802e-04,2.841460e-04,2.803546e-04,2.766058e-04,2.728992e-04,2.692345e-04,2.656114e-04,2.620296e-04,2.584888e-04,2.549886e-04,2.515289e-04,2.481092e-04,2.447292e-04,2.413887e-04,2.380874e-04,2.348248e-04,2.316008e-04,2.284149e-04,2.252669e-04,2.221564e-04,2.190832e-04,2.160470e-04,2.130473e-04,2.100839e-04,2.071565e-04,2.042647e-04,2.014083e-04,1.985869e-04,1.958002e-04,1.930480e-04,1.903297e-04,1.876453e-04,1.849942e-04,1.823764e-04,1.797913e-04,1.772387e-04,1.747183e-04,1.722298e-04,1.697728e-04,1.673471e-04,1.649524e-04,1.625882e-04,1.602544e-04,1.579507e-04,1.556766e-04,1.534319e-04,1.512164e-04,1.490296e-04,1.468714e-04,1.447413e-04,1.426392e-04,1.405646e-04,1.385174e-04,1.364972e-04,1.345037e-04,1.325367e-04,1.305958e-04,1.286807e-04,1.267913e-04,1.249271e-04,1.230879e-04,1.212735e-04,1.194835e-04,1.177176e-04,1.159757e-04,1.142574e-04,1.125625e-04,1.108906e-04,1.092415e-04,1.076150e-04,1.060108e-04,1.044286e-04,1.028682e-04,1.013292e-04,9.981154e-05,9.831486e-05,9.683892e-05,9.538348e-05,9.394828e-05,9.253309e-05,9.113766e-05,8.976175e-05,8.840511e-05,8.706752e-05,8.574874e-05,8.444853e-05,8.316667e-05,8.190292e-05,8.065706e-05,7.942886e-05,7.821811e-05,7.702458e-05,7.584805e-05,7.468831e-05,7.354515e-05,7.241834e-05,7.130769e-05,7.021299e-05,6.913403e-05,6.807060e-05,6.702250e-05,6.598955e-05,6.497153e-05,6.396826e-05,6.297953e-05,6.200517e-05,6.104497e-05,6.009876e-05,5.916635e-05,5.824755e-05,5.734219e-05,5.645009e-05,5.557106e-05,5.470493e-05,5.385154e-05,5.301071e-05,5.218226e-05,5.136604e-05,5.056188e-05,4.976961e-05,4.898907e-05,4.822010e-05,4.746255e-05,4.671626e-05,4.598107e-05,4.525683e-05,4.454340e-05,4.384062e-05,4.314834e-05,4.246642e-05,4.179472e-05,4.113309e-05,4.048140e-05,3.983950e-05,3.920726e-05,3.858455e-05,3.797123e-05,3.736716e-05,3.677223e-05,3.618629e-05,3.560923e-05,3.504092e-05,3.448123e-05,3.393004e-05,3.338724e-05,3.285269e-05,3.232629e-05,3.180792e-05,3.129747e-05,3.079481e-05,3.029985e-05,2.981246e-05,2.933255e-05,2.885999e-05,2.839470e-05,2.793655e-05,2.748545e-05,2.704130e-05,2.660400e-05,2.617344e-05,2.574953e-05,2.533218e-05,2.492128e-05,2.451674e-05,2.411848e-05,2.372639e-05,2.334039e-05,2.296038e-05,2.258629e-05,2.221802e-05,2.185549e-05,2.149862e-05,2.114731e-05,2.080150e-05,2.046109e-05,2.012600e-05,1.979617e-05,1.947150e-05,1.915193e-05,1.883738e-05,1.852777e-05,1.822303e-05,1.792309e-05,1.762787e-05,1.733731e-05,1.705133e-05,1.676987e-05,1.649286e-05,1.622023e-05,1.595192e-05,1.568786e-05,1.542798e-05,1.517223e-05,1.492055e-05,1.467286e-05,1.442911e-05,1.418925e-05,1.395321e-05,1.372093e-05,1.349236e-05,1.326744e-05,1.304611e-05,1.282833e-05,1.261403e-05,1.240316e-05,1.219568e-05,1.199153e-05,1.179065e-05,1.159300e-05,1.139853e-05,1.120720e-05,1.101894e-05,1.083372e-05,1.065149e-05,1.047220e-05,1.029580e-05,1.012226e-05,9.951529e-06,9.783561e-06,9.618315e-06,9.455750e-06,9.295823e-06,9.138493e-06,8.983721e-06,8.831467e-06,8.681692e-06,8.534357e-06,8.389423e-06,8.246855e-06,8.106614e-06,7.968665e-06,7.832972e-06,7.699499e-06,7.568212e-06,7.439077e-06,7.312060e-06,7.187127e-06,7.064246e-06,6.943385e-06,6.824512e-06,6.707595e-06,6.592605e-06,6.479510e-06,6.368281e-06,6.258888e-06,6.151302e-06,6.045495e-06,5.941439e-06,5.839105e-06,5.738467e-06,5.639497e-06,5.542170e-06,5.446458e-06,5.352337e-06,5.259781e-06,5.168766e-06,5.079266e-06,4.991257e-06,4.904716e-06,4.819619e-06,4.735943e-06,4.653666e-06,4.572765e-06,4.493217e-06,4.415002e-06,4.338098e-06,4.262483e-06,4.188138e-06,4.115041e-06,4.043173e-06,3.972514e-06,3.903044e-06,3.834744e-06,3.767595e-06,3.701579e-06,3.636677e-06,3.572872e-06,3.510145e-06,3.448479e-06,3.387856e-06,3.328261e-06,3.269676e-06,3.212085e-06,3.155471e-06,3.099819e-06,3.045113e-06,2.991337e-06,2.938477e-06,2.886517e-06,2.835443e-06,2.785241e-06,2.735895e-06,2.687392e-06,2.639719e-06,2.592860e-06,2.546804e-06,2.501537e-06,2.457046e-06,2.413318e-06,2.370341e-06,2.328102e-06,2.286589e-06,2.245790e-06,2.205694e-06,2.166288e-06,2.127561e-06,2.089503e-06,2.052101e-06,2.015346e-06,1.979225e-06,1.943730e-06,1.908849e-06,1.874572e-06,1.840890e-06,1.807791e-06,1.775267e-06,1.743308e-06,1.711905e-06,1.681047e-06,1.650727e-06,1.620935e-06,1.591662e-06,1.562900e-06,1.534639e-06,1.506873e-06,1.479591e-06,1.452787e-06,1.426451e-06,1.400577e-06,1.375157e-06,1.350182e-06,1.325645e-06,1.301540e-06,1.277858e-06,1.254592e-06,1.231736e-06,1.209282e-06,1.187224e-06,1.165555e-06,1.144268e-06,1.123357e-06,1.102815e-06,1.082637e-06,1.062816e-06,1.043345e-06,1.024220e-06,1.005433e-06,9.869800e-07,9.688544e-07,9.510508e-07,9.335637e-07,9.163876e-07,8.995172e-07,8.829473e-07,8.666728e-07,8.506885e-07,8.349895e-07,8.195708e-07,8.044277e-07,7.895554e-07,7.749493e-07,7.606047e-07,7.465171e-07,7.326821e-07,7.190954e-07,7.057526e-07,6.926495e-07,6.797819e-07,6.671459e-07,6.547373e-07,6.425523e-07,6.305869e-07,6.188373e-07,6.072998e-07,5.959706e-07,5.848462e-07,5.739230e-07}, {3.800872e+04,8.451889e+03,2.167247e+03,8.671500e+02,5.581750e+02,4.207203e+02,3.142679e+02,2.262351e+02,1.587936e+02,1.110451e+02,7.930825e+01,5.920330e+01,4.686675e+01,3.936043e+01,3.465440e+01,3.144881e+01,2.896959e+01,2.679328e+01,2.471514e+01,2.265777e+01,2.061156e+01,1.859810e+01,1.664903e+01,1.479492e+01,1.306010e+01,1.146102e+01,1.000653e+01,8.698945e+00,7.535450e+00,6.509498e+00,5.612038e+00,4.832529e+00,4.159736e+00,3.582314e+00,3.089234e+00,2.670065e+00,2.315141e+00,2.015659e+00,1.763708e+00,1.552261e+00,1.375134e+00,1.226934e+00,1.102995e+00,9.993011e-01,9.124237e-01,8.394497e-01,7.779184e-01,7.257625e-01,6.812539e-01,6.429561e-01,6.096809e-01,5.804511e-01,5.544672e-01,5.310798e-01,5.097639e-01,4.900989e-01,4.717500e-01,4.544533e-01,4.380027e-01,4.222395e-01,4.070428e-01,3.923225e-01,3.780126e-01,3.640664e-01,3.504520e-01,3.371488e-01,3.241450e-01,3.114350e-01,2.990176e-01,2.868949e-01,2.750706e-01,2.635497e-01,2.523374e-01,2.414389e-01,2.308588e-01,2.206008e-01,2.106679e-01,2.010620e-01,1.917838e-01,1.828330e-01,1.742084e-01,1.659074e-01,1.579268e-01,1.502624e-01,1.429091e-01,1.358613e-01,1.291127e-01,1.226564e-01,1.164851e-01,1.105910e-01,1.049662e-01,9.960251e-02,9.449141e-02,8.962440e-02,8.499290e-02,8.058828e-02,7.640195e-02,7.242539e-02,6.865016e-02,6.506794e-02,6.167056e-02,5.845003e-02,5.539852e-02,5.250842e-02,4.977232e-02,4.718303e-02,4.473359e-02,4.241726e-02,4.022756e-02,3.815822e-02,3.620321e-02,3.435675e-02,3.261327e-02,3.096744e-02,2.941417e-02,2.794857e-02,2.656598e-02,2.526193e-02,2.403218e-02,2.287268e-02,2.177956e-02,2.074916e-02,1.977797e-02,1.886269e-02,1.800015e-02,1.718736e-02,1.642148e-02,1.569982e-02,1.501982e-02,1.437907e-02,1.377527e-02,1.320627e-02,1.267001e-02,1.216456e-02,1.168809e-02,1.123887e-02,1.081526e-02,1.041573e-02,1.003882e-02,9.683160e-03,9.347461e-03,9.030502e-03,8.731136e-03,8.448282e-03,8.180923e-03,7.928100e-03,7.688912e-03,7.462512e-03,7.248103e-03,7.044935e-03,6.852304e-03,6.669549e-03,6.496048e-03,6.331219e-03,6.174513e-03,6.025418e-03,5.883451e-03,5.748160e-03,5.619123e-03,5.495941e-03,5.378244e-03,5.265682e-03,5.157929e-03,5.054681e-03,4.955651e-03,4.860572e-03,4.769194e-03,4.681284e-03,4.596622e-03,4.515005e-03,4.436243e-03,4.360156e-03,4.286580e-03,4.215358e-03,4.146347e-03,4.079411e-03,4.014425e-03,3.951271e-03,3.889840e-03,3.830032e-03,3.771750e-03,3.714907e-03,3.659421e-03,3.605216e-03,3.552220e-03,3.500369e-03,3.449601e-03,3.399859e-03,3.351090e-03,3.303246e-03,3.256280e-03,3.210152e-03,3.164822e-03,3.120253e-03,3.076413e-03,3.033270e-03,2.990796e-03,2.948963e-03,2.907748e-03,2.867127e-03,2.827079e-03,2.787586e-03,2.748628e-03,2.710189e-03,2.672255e-03,2.634810e-03,2.597841e-03,2.561336e-03,2.525285e-03,2.489675e-03,2.454499e-03,2.419746e-03,2.385409e-03,2.351480e-03,2.317952e-03,2.284818e-03,2.252071e-03,2.219707e-03,2.187720e-03,2.156105e-03,2.124856e-03,2.093971e-03,2.063444e-03,2.033271e-03,2.003450e-03,1.973976e-03,1.944846e-03,1.916057e-03,1.887607e-03,1.859491e-03,1.831708e-03,1.804254e-03,1.777127e-03,1.750325e-03,1.723844e-03,1.697683e-03,1.671840e-03,1.646311e-03,1.621094e-03,1.596188e-03,1.571590e-03,1.547298e-03,1.523309e-03,1.499622e-03,1.476234e-03,1.453143e-03,1.430346e-03,1.407843e-03,1.385629e-03,1.363704e-03,1.342064e-03,1.320709e-03,1.299635e-03,1.278840e-03,1.258322e-03,1.238079e-03,1.218108e-03,1.198407e-03,1.178974e-03,1.159807e-03,1.140903e-03,1.122260e-03,1.103875e-03,1.085747e-03,1.067872e-03,1.050249e-03,1.032875e-03,1.015748e-03,9.988645e-04,9.822233e-04,9.658216e-04,9.496569e-04,9.337270e-04,9.180292e-04,9.025613e-04,8.873208e-04,8.723053e-04,8.575124e-04,8.429396e-04,8.285845e-04,8.144447e-04,8.005178e-04,7.868014e-04,7.732931e-04,7.599904e-04,7.468910e-04,7.339926e-04,7.212926e-04,7.087888e-04,6.964787e-04,6.843601e-04,6.724305e-04,6.606877e-04,6.491293e-04,6.377530e-04,6.265565e-04,6.155375e-04,6.046937e-04,5.940229e-04,5.835229e-04,5.731913e-04,5.630261e-04,5.530249e-04,5.431855e-04,5.335059e-04,5.239838e-04,5.146172e-04,5.054038e-04,4.963416e-04,4.874285e-04,4.786624e-04,4.700413e-04,4.615631e-04,4.532258e-04,4.450274e-04,4.369659e-04,4.290394e-04,4.212459e-04,4.135835e-04,4.060503e-04,3.986443e-04,3.913638e-04,3.842069e-04,3.771717e-04,3.702564e-04,3.634593e-04,3.567785e-04,3.502124e-04,3.437591e-04,3.374170e-04,3.311844e-04,3.250595e-04,3.190408e-04,3.131266e-04,3.073153e-04,3.016053e-04,2.959950e-04,2.904828e-04,2.850672e-04,2.797468e-04,2.745199e-04,2.693851e-04,2.643410e-04,2.593860e-04,2.545188e-04,2.497379e-04,2.450421e-04,2.404298e-04,2.358997e-04,2.314506e-04,2.270810e-04,2.227897e-04,2.185754e-04,2.144368e-04,2.103728e-04,2.063819e-04,2.024632e-04,1.986152e-04,1.948370e-04,1.911272e-04,1.874848e-04,1.839086e-04,1.803975e-04,1.769505e-04,1.735664e-04,1.702441e-04,1.669827e-04,1.637811e-04,1.606382e-04,1.575531e-04,1.545247e-04,1.515522e-04,1.486344e-04,1.457706e-04,1.429598e-04,1.402009e-04,1.374933e-04,1.348358e-04,1.322278e-04,1.296683e-04,1.271564e-04,1.246914e-04,1.222724e-04,1.198986e-04,1.175692e-04,1.152834e-04,1.130404e-04,1.108396e-04,1.086801e-04,1.065613e-04,1.044823e-04,1.024425e-04,1.004412e-04,9.847765e-05,9.655124e-05,9.466128e-05,9.280711e-05,9.098809e-05,8.920359e-05,8.745298e-05,8.573565e-05,8.405100e-05,8.239844e-05,8.077737e-05,7.918724e-05,7.762747e-05,7.609751e-05,7.459682e-05,7.312487e-05,7.168112e-05,7.026505e-05,6.887617e-05,6.751397e-05,6.617796e-05,6.486766e-05,6.358258e-05,6.232228e-05,6.108628e-05,5.987413e-05,5.868541e-05,5.751966e-05,5.637646e-05,5.525540e-05,5.415606e-05,5.307803e-05,5.202092e-05,5.098434e-05,4.996789e-05,4.897121e-05,4.799393e-05,4.703567e-05,4.609608e-05,4.517482e-05,4.427153e-05,4.338587e-05,4.251752e-05,4.166614e-05,4.083142e-05,4.001303e-05,3.921068e-05,3.842405e-05,3.765285e-05,3.689678e-05,3.615556e-05,3.542890e-05,3.471652e-05,3.401816e-05,3.333355e-05,3.266242e-05,3.200451e-05,3.135957e-05,3.072736e-05,3.010763e-05,2.950013e-05,2.890465e-05,2.832093e-05,2.774876e-05,2.718792e-05,2.663819e-05,2.609935e-05,2.557119e-05,2.505350e-05,2.454609e-05,2.404876e-05,2.356131e-05,2.308354e-05,2.261528e-05,2.215633e-05,2.170652e-05,2.126566e-05,2.083359e-05,2.041014e-05,1.999513e-05,1.958840e-05,1.918979e-05,1.879914e-05,1.841630e-05,1.804111e-05,1.767343e-05,1.731310e-05,1.695998e-05,1.661394e-05,1.627484e-05,1.594253e-05,1.561688e-05,1.529777e-05,1.498506e-05,1.467863e-05,1.437836e-05,1.408413e-05,1.379581e-05,1.351329e-05,1.323645e-05,1.296519e-05,1.269939e-05,1.243895e-05,1.218375e-05,1.193371e-05,1.168870e-05,1.144865e-05,1.121343e-05,1.098297e-05,1.075717e-05,1.053593e-05,1.031916e-05,1.010678e-05,9.898698e-06,9.694827e-06,9.495086e-06,9.299391e-06,9.107663e-06,8.919823e-06,8.735793e-06,8.555497e-06,8.378861e-06,8.205811e-06,8.036278e-06,7.870189e-06,7.707477e-06,7.548074e-06,7.391914e-06,7.238932e-06,7.089065e-06,6.942250e-06,6.798427e-06,6.657534e-06,6.519515e-06,6.384310e-06,6.251864e-06,6.122121e-06,5.995028e-06,5.870530e-06,5.748576e-06,5.629115e-06,5.512097e-06,5.397472e-06,5.285192e-06,5.175210e-06,5.067481e-06,4.961958e-06,4.858597e-06,4.757355e-06,4.658188e-06,4.561056e-06,4.465917e-06,4.372730e-06,4.281457e-06,4.192058e-06,4.104496e-06,4.018734e-06,3.934735e-06,3.852464e-06,3.771886e-06,3.692966e-06,3.615671e-06,3.539967e-06,3.465824e-06,3.393208e-06,3.322090e-06,3.252438e-06,3.184224e-06,3.117417e-06,3.051989e-06,2.987912e-06,2.925159e-06,2.863703e-06,2.803518e-06,2.744577e-06,2.686855e-06,2.630328e-06,2.574971e-06,2.520760e-06,2.467672e-06,2.415684e-06,2.364774e-06,2.314920e-06,2.266099e-06,2.218292e-06,2.171477e-06,2.125634e-06,2.080743e-06,2.036785e-06,1.993740e-06,1.951591e-06,1.910318e-06,1.869904e-06,1.830331e-06,1.791582e-06,1.753640e-06,1.716488e-06,1.680111e-06,1.644492e-06,1.609616e-06,1.575468e-06,1.542032e-06,1.509294e-06,1.477240e-06,1.445856e-06,1.415127e-06,1.385041e-06,1.355584e-06,1.326743e-06,1.298506e-06,1.270860e-06,1.243793e-06,1.217293e-06,1.191348e-06,1.165947e-06,1.141079e-06,1.116733e-06,1.092897e-06,1.069562e-06,1.046716e-06,1.024351e-06,1.002456e-06,9.810208e-07,9.600365e-07,9.394936e-07,9.193831e-07,8.996959e-07,8.804232e-07,8.615566e-07,8.430875e-07,8.250078e-07,8.073093e-07,7.899843e-07,7.730248e-07,7.564233e-07,7.401724e-07,7.242649e-07,7.086935e-07,6.934513e-07,6.785315e-07,6.639272e-07,6.496321e-07,6.356396e-07,6.219435e-07,6.085375e-07,5.954156e-07,5.825719e-07,5.700007e-07,5.576961e-07,5.456527e-07,5.338650e-07,5.223277e-07,5.110356e-07,4.999834e-07,4.891662e-07,4.785792e-07,4.682174e-07,4.580761e-07,4.481508e-07,4.384370e-07,4.289301e-07,4.196259e-07,4.105201e-07,4.016086e-07,3.928873e-07,3.843521e-07,3.759992e-07,3.678248e-07,3.598251e-07,3.519964e-07,3.443352e-07,3.368379e-07,3.295011e-07,3.223213e-07,3.152954e-07,3.084200e-07,3.016920e-07,2.951083e-07,2.886658e-07,2.823616e-07,2.761927e-07,2.701563e-07,2.642496e-07,2.584698e-07,2.528144e-07,2.472805e-07,2.418658e-07,2.365675e-07,2.313834e-07,2.263110e-07,2.213478e-07,2.164917e-07,2.117403e-07,2.070914e-07,2.025428e-07,1.980925e-07,1.937382e-07,1.894781e-07,1.853100e-07,1.812321e-07,1.772424e-07,1.733390e-07,1.695201e-07,1.657839e-07,1.621287e-07,1.585527e-07,1.550543e-07}, {4.115307e+04,8.804343e+03,2.209002e+03,8.996721e+02,5.896247e+02,4.424149e+02,3.258283e+02,2.310428e+02,1.603053e+02,1.115926e+02,8.009243e+01,6.063901e+01,4.893040e+01,4.183888e+01,3.729340e+01,3.402705e+01,3.132636e+01,2.883070e+01,2.638859e+01,2.396258e+01,2.157001e+01,1.924852e+01,1.703752e+01,1.496944e+01,1.306665e+01,1.134138e+01,9.797111e+00,8.430395e+00,7.232811e+00,6.192627e+00,5.296192e+00,4.529009e+00,3.876524e+00,3.324682e+00,2.860279e+00,2.471183e+00,2.146432e+00,1.876263e+00,1.652083e+00,1.466405e+00,1.312765e+00,1.185627e+00,1.080284e+00,9.927643e-01,9.197342e-01,8.584173e-01,8.065141e-01,7.621326e-01,7.237262e-01,6.900395e-01,6.600605e-01,6.329802e-01,6.081573e-01,5.850884e-01,5.633828e-01,5.427415e-01,5.229388e-01,5.038081e-01,4.852291e-01,4.671182e-01,4.494199e-01,4.320999e-01,4.151402e-01,3.985344e-01,3.822840e-01,3.663961e-01,3.508811e-01,3.357511e-01,3.210184e-01,3.066950e-01,2.927917e-01,2.793179e-01,2.662810e-01,2.536865e-01,2.415378e-01,2.298363e-01,2.185814e-01,2.077708e-01,1.974005e-01,1.874649e-01,1.779570e-01,1.688685e-01,1.601904e-01,1.519123e-01,1.440236e-01,1.365127e-01,1.293676e-01,1.225762e-01,1.161257e-01,1.100035e-01,1.041969e-01,9.869315e-02,9.347955e-02,8.854362e-02,8.387304e-02,7.945573e-02,7.527989e-02,7.133402e-02,6.760693e-02,6.408779e-02,6.076614e-02,5.763187e-02,5.467526e-02,5.188694e-02,4.925795e-02,4.677971e-02,4.444398e-02,4.224291e-02,4.016902e-02,3.821516e-02,3.637455e-02,3.464072e-02,3.300753e-02,3.146916e-02,3.002009e-02,2.865508e-02,2.736917e-02,2.615769e-02,2.501619e-02,2.394049e-02,2.292664e-02,2.197089e-02,2.106974e-02,2.021986e-02,1.941813e-02,1.866159e-02,1.794748e-02,1.727318e-02,1.663624e-02,1.603436e-02,1.546535e-02,1.492718e-02,1.441794e-02,1.393583e-02,1.347915e-02,1.304633e-02,1.263587e-02,1.224638e-02,1.187656e-02,1.152517e-02,1.119107e-02,1.087319e-02,1.057050e-02,1.028207e-02,1.000702e-02,9.744516e-03,9.493780e-03,9.254091e-03,9.024769e-03,8.805180e-03,8.594730e-03,8.392864e-03,8.199065e-03,8.012846e-03,7.833754e-03,7.661367e-03,7.495288e-03,7.335149e-03,7.180602e-03,7.031328e-03,6.887023e-03,6.747409e-03,6.612221e-03,6.481215e-03,6.354163e-03,6.230852e-03,6.111082e-03,5.994667e-03,5.881434e-03,5.771222e-03,5.663880e-03,5.559266e-03,5.457249e-03,5.357707e-03,5.260525e-03,5.165596e-03,5.072821e-03,4.982106e-03,4.893365e-03,4.806517e-03,4.721484e-03,4.638197e-03,4.556590e-03,4.476600e-03,4.398169e-03,4.321243e-03,4.245772e-03,4.171707e-03,4.099003e-03,4.027620e-03,3.957518e-03,3.888660e-03,3.821010e-03,3.754537e-03,3.689209e-03,3.624997e-03,3.561875e-03,3.499816e-03,3.438795e-03,3.378789e-03,3.319776e-03,3.261736e-03,3.204647e-03,3.148492e-03,3.093252e-03,3.038910e-03,2.985449e-03,2.932853e-03,2.881108e-03,2.830197e-03,2.780108e-03,2.730826e-03,2.682339e-03,2.634634e-03,2.587698e-03,2.541519e-03,2.496086e-03,2.451388e-03,2.407413e-03,2.364150e-03,2.321590e-03,2.279722e-03,2.238536e-03,2.198022e-03,2.158170e-03,2.118971e-03,2.080416e-03,2.042496e-03,2.005201e-03,1.968522e-03,1.932452e-03,1.896981e-03,1.862101e-03,1.827803e-03,1.794080e-03,1.760923e-03,1.728324e-03,1.696275e-03,1.664768e-03,1.633796e-03,1.603350e-03,1.573424e-03,1.544009e-03,1.515099e-03,1.486685e-03,1.458761e-03,1.431319e-03,1.404353e-03,1.377854e-03,1.351817e-03,1.326235e-03,1.301099e-03,1.276405e-03,1.252144e-03,1.228311e-03,1.204899e-03,1.181902e-03,1.159312e-03,1.137124e-03,1.115331e-03,1.093928e-03,1.072908e-03,1.052265e-03,1.031993e-03,1.012086e-03,9.925388e-04,9.733450e-04,9.544992e-04,9.359956e-04,9.178288e-04,8.999932e-04,8.824835e-04,8.652942e-04,8.484201e-04,8.318560e-04,8.155967e-04,7.996372e-04,7.839724e-04,7.685974e-04,7.535073e-04,7.386974e-04,7.241628e-04,7.098988e-04,6.959010e-04,6.821646e-04,6.686853e-04,6.554587e-04,6.424802e-04,6.297458e-04,6.172510e-04,6.049919e-04,5.929642e-04,5.811639e-04,5.695870e-04,5.582296e-04,5.470879e-04,5.361580e-04,5.254361e-04,5.149187e-04,5.046020e-04,4.944825e-04,4.845566e-04,4.748209e-04,4.652720e-04,4.559065e-04,4.467211e-04,4.377126e-04,4.288778e-04,4.202135e-04,4.117166e-04,4.033841e-04,3.952130e-04,3.872003e-04,3.793432e-04,3.716388e-04,3.640843e-04,3.566769e-04,3.494140e-04,3.422928e-04,3.353108e-04,3.284654e-04,3.217540e-04,3.151742e-04,3.087236e-04,3.023996e-04,2.962001e-04,2.901225e-04,2.841647e-04,2.783245e-04,2.725995e-04,2.669877e-04,2.614870e-04,2.560951e-04,2.508102e-04,2.456301e-04,2.405530e-04,2.355767e-04,2.306995e-04,2.259195e-04,2.212348e-04,2.166435e-04,2.121440e-04,2.077345e-04,2.034132e-04,1.991785e-04,1.950287e-04,1.909622e-04,1.869774e-04,1.830728e-04,1.792467e-04,1.754977e-04,1.718243e-04,1.682250e-04,1.646985e-04,1.612432e-04,1.578579e-04,1.545412e-04,1.512916e-04,1.481081e-04,1.449892e-04,1.419337e-04,1.389403e-04,1.360080e-04,1.331354e-04,1.303214e-04,1.275648e-04,1.248646e-04,1.222196e-04,1.196288e-04,1.170911e-04,1.146054e-04,1.121707e-04,1.097860e-04,1.074504e-04,1.051628e-04,1.029224e-04,1.007281e-04,9.857914e-05,9.647453e-05,9.441342e-05,9.239493e-05,9.041824e-05,8.848250e-05,8.658690e-05,8.473065e-05,8.291295e-05,8.113304e-05,7.939017e-05,7.768359e-05,7.601257e-05,7.437641e-05,7.277441e-05,7.120587e-05,6.967013e-05,6.816653e-05,6.669442e-05,6.525317e-05,6.384215e-05,6.246076e-05,6.110839e-05,5.978446e-05,5.848839e-05,5.721962e-05,5.597759e-05,5.476177e-05,5.357161e-05,5.240660e-05,5.126622e-05,5.014998e-05,4.905737e-05,4.798792e-05,4.694116e-05,4.591661e-05,4.491383e-05,4.393237e-05,4.297179e-05,4.203166e-05,4.111157e-05,4.021109e-05,3.932983e-05,3.846739e-05,3.762338e-05,3.679743e-05,3.598915e-05,3.519818e-05,3.442417e-05,3.366676e-05,3.292560e-05,3.220037e-05,3.149073e-05,3.079635e-05,3.011692e-05,2.945213e-05,2.880166e-05,2.816523e-05,2.754254e-05,2.693330e-05,2.633723e-05,2.575405e-05,2.518350e-05,2.462530e-05,2.407921e-05,2.354496e-05,2.302230e-05,2.251100e-05,2.201081e-05,2.152150e-05,2.104283e-05,2.057459e-05,2.011655e-05,1.966850e-05,1.923022e-05,1.880151e-05,1.838217e-05,1.797199e-05,1.757079e-05,1.717836e-05,1.679453e-05,1.641911e-05,1.605192e-05,1.569279e-05,1.534154e-05,1.499800e-05,1.466202e-05,1.433343e-05,1.401206e-05,1.369777e-05,1.339040e-05,1.308981e-05,1.279585e-05,1.250838e-05,1.222725e-05,1.195233e-05,1.168349e-05,1.142059e-05,1.116351e-05,1.091213e-05,1.066631e-05,1.042594e-05,1.019090e-05,9.961072e-06,9.736348e-06,9.516615e-06,9.301764e-06,9.091689e-06,8.886288e-06,8.685457e-06,8.489097e-06,8.297112e-06,8.109405e-06,7.925884e-06,7.746456e-06,7.571034e-06,7.399528e-06,7.231853e-06,7.067926e-06,6.907665e-06,6.750988e-06,6.597818e-06,6.448077e-06,6.301691e-06,6.158585e-06,6.018687e-06,5.881928e-06,5.748237e-06,5.617547e-06,5.489792e-06,5.364908e-06,5.242830e-06,5.123497e-06,5.006849e-06,4.892826e-06,4.781370e-06,4.672424e-06,4.565932e-06,4.461841e-06,4.360097e-06,4.260648e-06,4.163442e-06,4.068431e-06,3.975566e-06,3.884798e-06,3.796081e-06,3.709370e-06,3.624620e-06,3.541787e-06,3.460828e-06,3.381702e-06,3.304368e-06,3.228785e-06,3.154916e-06,3.082720e-06,3.012162e-06,2.943204e-06,2.875811e-06,2.809947e-06,2.745579e-06,2.682672e-06,2.621194e-06,2.561114e-06,2.502399e-06,2.445019e-06,2.388945e-06,2.334146e-06,2.280594e-06,2.228261e-06,2.177120e-06,2.127143e-06,2.078305e-06,2.030580e-06,1.983943e-06,1.938370e-06,1.893835e-06,1.850317e-06,1.807791e-06,1.766237e-06,1.725631e-06,1.685952e-06,1.647179e-06,1.609292e-06,1.572272e-06,1.536097e-06,1.500749e-06,1.466210e-06,1.432460e-06,1.399483e-06,1.367260e-06,1.335775e-06,1.305011e-06,1.274951e-06,1.245579e-06,1.216880e-06,1.188839e-06,1.161440e-06,1.134670e-06,1.108513e-06,1.082956e-06,1.057985e-06,1.033587e-06,1.009748e-06,9.864568e-07,9.637000e-07,9.414656e-07,9.197416e-07,8.985165e-07,8.777789e-07,8.575176e-07,8.377219e-07,8.183810e-07,7.994847e-07,7.810227e-07,7.629851e-07,7.453623e-07,7.281448e-07,7.113232e-07,6.948887e-07,6.788323e-07,6.631453e-07,6.478194e-07,6.328462e-07,6.182177e-07,6.039261e-07,5.899635e-07,5.763225e-07,5.629957e-07,5.499759e-07,5.372561e-07,5.248293e-07,5.126890e-07,5.008284e-07,4.892413e-07,4.779213e-07,4.668623e-07,4.560583e-07,4.455034e-07,4.351920e-07,4.251185e-07,4.152774e-07,4.056633e-07,3.962710e-07,3.870956e-07,3.781318e-07,3.693750e-07,3.608204e-07,3.524632e-07,3.442990e-07,3.363233e-07,3.285318e-07,3.209203e-07,3.134846e-07,3.062207e-07,2.991245e-07,2.921923e-07,2.854204e-07,2.788049e-07,2.723422e-07,2.660290e-07,2.598617e-07,2.538370e-07,2.479515e-07,2.422021e-07,2.365857e-07,2.310991e-07,2.257395e-07,2.205038e-07,2.153891e-07,2.103928e-07,2.055121e-07,2.007443e-07,1.960868e-07,1.915371e-07,1.870927e-07,1.827511e-07,1.785100e-07,1.743671e-07,1.703200e-07,1.663667e-07,1.625048e-07,1.587324e-07,1.550473e-07,1.514476e-07,1.479312e-07,1.444962e-07,1.411408e-07,1.378631e-07,1.346613e-07,1.315337e-07,1.284786e-07,1.254942e-07,1.225789e-07,1.197312e-07,1.169495e-07,1.142323e-07,1.115780e-07,1.089852e-07,1.064525e-07,1.039786e-07,1.015619e-07,9.920131e-08,9.689542e-08,9.464299e-08,9.244278e-08,9.029358e-08,8.819421e-08,8.614353e-08,8.414040e-08,8.218373e-08,8.027244e-08,7.840547e-08,7.658181e-08,7.480046e-08,7.306042e-08,7.136075e-08,6.970052e-08,6.807880e-08,6.649471e-08,6.494738e-08,6.343595e-08,6.195960e-08,6.051751e-08}, {2.804622e+05,5.558620e+04,1.154434e+04,2.843880e+03,1.027304e+03,5.518192e+02,3.551541e+02,2.384256e+02,1.618553e+02,1.124907e+02,8.194381e+01,6.366160e+01,5.281189e+01,4.613008e+01,4.158673e+01,3.802260e+01,3.484031e+01,3.177771e+01,2.875606e+01,2.578552e+01,2.291044e+01,2.018024e+01,1.763582e+01,1.530479e+01,1.320136e+01,1.132821e+01,9.679220e+00,8.242041e+00,7.000416e+00,5.935991e+00,5.029692e+00,4.262701e+00,3.617108e+00,3.076313e+00,2.625241e+00,2.250419e+00,1.939968e+00,1.683526e+00,1.472141e+00,1.298142e+00,1.155008e+00,1.037226e+00,9.401681e-01,8.599718e-01,7.934290e-01,7.378911e-01,6.911819e-01,6.515237e-01,6.174716e-01,5.878580e-01,5.617452e-01,5.383844e-01,5.171822e-01,4.976718e-01,4.794888e-01,4.623520e-01,4.460465e-01,4.304100e-01,4.153226e-01,4.006966e-01,3.864701e-01,3.726005e-01,3.590602e-01,3.458324e-01,3.329081e-01,3.202842e-01,3.079613e-01,2.959422e-01,2.842311e-01,2.728327e-01,2.617514e-01,2.509914e-01,2.405558e-01,2.304469e-01,2.206660e-01,2.112131e-01,2.020873e-01,1.932865e-01,1.848076e-01,1.766468e-01,1.687994e-01,1.612597e-01,1.540218e-01,1.470788e-01,1.404237e-01,1.340489e-01,1.279466e-01,1.221087e-01,1.165270e-01,1.111930e-01,1.060984e-01,1.012347e-01,9.659347e-02,9.216639e-02,8.794518e-02,8.392170e-02,8.008796e-02,7.643611e-02,7.295850e-02,6.964766e-02,6.649635e-02,6.349750e-02,6.064428e-02,5.793009e-02,5.534854e-02,5.289347e-02,5.055893e-02,4.833921e-02,4.622883e-02,4.422250e-02,4.231517e-02,4.050199e-02,3.877830e-02,3.713968e-02,3.558186e-02,3.410078e-02,3.269259e-02,3.135356e-02,3.008018e-02,2.886909e-02,2.771709e-02,2.662113e-02,2.557831e-02,2.458588e-02,2.364121e-02,2.274181e-02,2.188532e-02,2.106950e-02,2.029221e-02,1.955144e-02,1.884525e-02,1.817185e-02,1.752950e-02,1.691658e-02,1.633153e-02,1.577290e-02,1.523930e-02,1.472941e-02,1.424200e-02,1.377588e-02,1.332996e-02,1.290318e-02,1.249454e-02,1.210311e-02,1.172800e-02,1.136836e-02,1.102342e-02,1.069241e-02,1.037463e-02,1.006941e-02,9.776119e-03,9.494159e-03,9.222967e-03,8.962008e-03,8.710782e-03,8.468811e-03,8.235647e-03,8.010866e-03,7.794068e-03,7.584874e-03,7.382925e-03,7.187886e-03,6.999435e-03,6.817272e-03,6.641111e-03,6.470683e-03,6.305734e-03,6.146021e-03,5.991318e-03,5.841408e-03,5.696088e-03,5.555164e-03,5.418455e-03,5.285787e-03,5.156996e-03,5.031926e-03,4.910432e-03,4.792374e-03,4.677618e-03,4.566040e-03,4.457521e-03,4.351948e-03,4.249213e-03,4.149215e-03,4.051856e-03,3.957044e-03,3.864691e-03,3.774715e-03,3.687035e-03,3.601575e-03,3.518264e-03,3.437032e-03,3.357814e-03,3.280547e-03,3.205170e-03,3.131627e-03,3.059862e-03,2.989822e-03,2.921459e-03,2.854722e-03,2.789567e-03,2.725948e-03,2.663823e-03,2.603150e-03,2.543892e-03,2.486009e-03,2.429466e-03,2.374226e-03,2.320257e-03,2.267526e-03,2.216001e-03,2.165652e-03,2.116449e-03,2.068365e-03,2.021371e-03,1.975441e-03,1.930549e-03,1.886672e-03,1.843783e-03,1.801861e-03,1.760882e-03,1.720824e-03,1.681666e-03,1.643387e-03,1.605966e-03,1.569385e-03,1.533625e-03,1.498665e-03,1.464489e-03,1.431079e-03,1.398418e-03,1.366488e-03,1.335274e-03,1.304759e-03,1.274929e-03,1.245767e-03,1.217260e-03,1.189392e-03,1.162150e-03,1.135520e-03,1.109488e-03,1.084042e-03,1.059168e-03,1.034854e-03,1.011088e-03,9.878575e-04,9.651510e-04,9.429569e-04,9.212642e-04,9.000618e-04,8.793390e-04,8.590852e-04,8.392903e-04,8.199442e-04,8.010370e-04,7.825591e-04,7.645011e-04,7.468538e-04,7.296081e-04,7.127552e-04,6.962864e-04,6.801933e-04,6.644676e-04,6.491012e-04,6.340861e-04,6.194146e-04,6.050790e-04,5.910718e-04,5.773859e-04,5.640140e-04,5.509491e-04,5.381844e-04,5.257133e-04,5.135291e-04,5.016254e-04,4.899959e-04,4.786345e-04,4.675352e-04,4.566920e-04,4.460992e-04,4.357512e-04,4.256424e-04,4.157674e-04,4.061210e-04,3.966978e-04,3.874930e-04,3.785014e-04,3.697184e-04,3.611390e-04,3.527588e-04,3.445731e-04,3.365774e-04,3.287675e-04,3.211391e-04,3.136881e-04,3.064103e-04,2.993017e-04,2.923586e-04,2.855771e-04,2.789534e-04,2.724840e-04,2.661652e-04,2.599936e-04,2.539658e-04,2.480785e-04,2.423283e-04,2.367122e-04,2.312270e-04,2.258697e-04,2.206373e-04,2.155270e-04,2.105358e-04,2.056610e-04,2.008998e-04,1.962498e-04,1.917082e-04,1.872725e-04,1.829402e-04,1.787090e-04,1.745765e-04,1.705403e-04,1.665983e-04,1.627481e-04,1.589878e-04,1.553151e-04,1.517280e-04,1.482245e-04,1.448026e-04,1.414605e-04,1.381963e-04,1.350081e-04,1.318941e-04,1.288527e-04,1.258821e-04,1.229806e-04,1.201466e-04,1.173786e-04,1.146750e-04,1.120343e-04,1.094549e-04,1.069355e-04,1.044747e-04,1.020711e-04,9.972327e-05,9.742999e-05,9.518996e-05,9.300192e-05,9.086465e-05,8.877697e-05,8.673770e-05,8.474571e-05,8.279990e-05,8.089918e-05,7.904248e-05,7.722878e-05,7.545707e-05,7.372637e-05,7.203571e-05,7.038415e-05,6.877078e-05,6.719470e-05,6.565504e-05,6.415095e-05,6.268159e-05,6.124615e-05,5.984384e-05,5.847388e-05,5.713552e-05,5.582802e-05,5.455064e-05,5.330270e-05,5.208351e-05,5.089239e-05,4.972868e-05,4.859176e-05,4.748099e-05,4.639576e-05,4.533548e-05,4.429957e-05,4.328745e-05,4.229859e-05,4.133243e-05,4.038844e-05,3.946612e-05,3.856495e-05,3.768445e-05,3.682414e-05,3.598355e-05,3.516221e-05,3.435969e-05,3.357555e-05,3.280936e-05,3.206070e-05,3.132918e-05,3.061438e-05,2.991594e-05,2.923346e-05,2.856658e-05,2.791494e-05,2.727819e-05,2.665598e-05,2.604797e-05,2.545385e-05,2.487329e-05,2.430597e-05,2.375160e-05,2.320987e-05,2.268049e-05,2.216319e-05,2.165767e-05,2.116368e-05,2.068094e-05,2.020920e-05,1.974820e-05,1.929770e-05,1.885746e-05,1.842724e-05,1.800681e-05,1.759595e-05,1.719444e-05,1.680207e-05,1.641862e-05,1.604389e-05,1.567768e-05,1.531981e-05,1.497006e-05,1.462827e-05,1.429425e-05,1.396782e-05,1.364881e-05,1.333705e-05,1.303238e-05,1.273462e-05,1.244363e-05,1.215926e-05,1.188134e-05,1.160973e-05,1.134430e-05,1.108489e-05,1.083138e-05,1.058362e-05,1.034149e-05,1.010486e-05,9.873608e-06,9.647604e-06,9.426733e-06,9.210878e-06,8.999925e-06,8.793763e-06,8.592284e-06,8.395381e-06,8.202949e-06,8.014889e-06,7.831101e-06,7.651487e-06,7.475954e-06,7.304409e-06,7.136761e-06,6.972922e-06,6.812806e-06,6.656329e-06,6.503408e-06,6.353963e-06,6.207915e-06,6.065187e-06,5.925704e-06,5.789392e-06,5.656181e-06,5.525999e-06,5.398779e-06,5.274453e-06,5.152955e-06,5.034222e-06,4.918192e-06,4.804803e-06,4.693995e-06,4.585710e-06,4.479892e-06,4.376483e-06,4.275431e-06,4.176681e-06,4.080182e-06,3.985882e-06,3.893732e-06,3.803684e-06,3.715689e-06,3.629702e-06,3.545676e-06,3.463569e-06,3.383335e-06,3.304934e-06,3.228323e-06,3.153463e-06,3.080312e-06,3.008834e-06,2.938989e-06,2.870742e-06,2.804055e-06,2.738894e-06,2.675224e-06,2.613012e-06,2.552224e-06,2.492828e-06,2.434793e-06,2.378087e-06,2.322682e-06,2.268546e-06,2.215652e-06,2.163972e-06,2.113478e-06,2.064142e-06,2.015940e-06,1.968845e-06,1.922832e-06,1.877876e-06,1.833954e-06,1.791042e-06,1.749117e-06,1.708157e-06,1.668141e-06,1.629045e-06,1.590851e-06,1.553536e-06,1.517082e-06,1.481468e-06,1.446676e-06,1.412687e-06,1.379482e-06,1.347044e-06,1.315356e-06,1.284400e-06,1.254159e-06,1.224618e-06,1.195761e-06,1.167571e-06,1.140034e-06,1.113135e-06,1.086859e-06,1.061192e-06,1.036120e-06,1.011630e-06,9.877083e-07,9.643420e-07,9.415183e-07,9.192250e-07,8.974498e-07,8.761810e-07,8.554069e-07,8.351163e-07,8.152981e-07,7.959416e-07,7.770360e-07,7.585712e-07,7.405369e-07,7.229234e-07,7.057210e-07,6.889203e-07,6.725121e-07,6.564873e-07,6.408372e-07,6.255531e-07,6.106268e-07,5.960498e-07,5.818142e-07,5.679122e-07,5.543361e-07,5.410784e-07,5.281317e-07,5.154889e-07,5.031430e-07,4.910872e-07,4.793147e-07,4.678190e-07,4.565938e-07,4.456328e-07,4.349299e-07,4.244791e-07,4.142746e-07,4.043107e-07,3.945819e-07,3.850827e-07,3.758077e-07,3.667519e-07,3.579101e-07,3.492774e-07,3.408488e-07,3.326198e-07,3.245856e-07,3.167417e-07,3.090837e-07,3.016073e-07,2.943082e-07,2.871824e-07,2.802258e-07,2.734345e-07,2.668045e-07,2.603322e-07,2.540139e-07,2.478460e-07,2.418250e-07,2.359474e-07,2.302099e-07,2.246093e-07,2.191422e-07,2.138057e-07,2.085966e-07,2.035120e-07,1.985489e-07,1.937046e-07,1.889761e-07,1.843609e-07,1.798562e-07,1.754594e-07,1.711681e-07,1.669797e-07,1.628918e-07,1.589021e-07,1.550082e-07,1.512079e-07,1.474990e-07,1.438793e-07,1.403467e-07,1.368992e-07,1.335348e-07,1.302515e-07,1.270473e-07,1.239205e-07,1.208692e-07,1.178916e-07,1.149859e-07,1.121504e-07,1.093836e-07,1.066837e-07,1.040492e-07,1.014785e-07,9.897015e-08,9.652260e-08,9.413443e-08,9.180423e-08,8.953062e-08,8.731225e-08,8.514781e-08,8.303602e-08,8.097562e-08,7.896537e-08,7.700410e-08,7.509062e-08,7.322380e-08,7.140252e-08,6.962569e-08,6.789225e-08,6.620115e-08,6.455140e-08,6.294199e-08,6.137196e-08,5.984037e-08,5.834628e-08,5.688881e-08,5.546707e-08,5.408021e-08,5.272738e-08,5.140776e-08,5.012057e-08,4.886501e-08,4.764032e-08,4.644576e-08,4.528061e-08,4.414415e-08,4.303569e-08,4.195456e-08,4.090009e-08,3.987164e-08,3.886858e-08,3.789030e-08,3.693619e-08,3.600567e-08,3.509817e-08,3.421313e-08,3.335000e-08,3.250826e-08,3.168738e-08,3.088685e-08,3.010619e-08,2.934490e-08,2.860252e-08,2.787859e-08,2.717265e-08,2.648427e-08,2.581302e-08,2.515848e-08,2.452024e-08,2.389791e-08,2.329110e-08,2.269942e-08,2.212250e-08,2.155999e-08,2.101154e-08,2.047679e-08,1.995541e-08,1.944708e-08}, {4.795750e+04,9.499889e+03,2.292296e+03,9.717516e+02,6.553273e+02,4.847162e+02,3.467306e+02,2.390689e+02,1.629031e+02,1.132543e+02,8.280063e+01,6.481682e+01,5.423871e+01,4.768842e+01,4.311703e+01,3.939375e+01,3.596574e+01,3.261443e+01,2.929649e+01,2.604746e+01,2.292780e+01,1.999547e+01,1.729425e+01,1.485072e+01,1.267546e+01,1.076612e+01,9.110872e+00,7.691573e+00,6.486432e+00,5.472060e+00,4.624962e+00,3.922560e+00,3.343841e+00,2.869721e+00,2.483201e+00,2.169380e+00,1.915373e+00,1.710167e+00,1.544452e+00,1.410430e+00,1.301631e+00,1.212733e+00,1.139397e+00,1.078113e+00,1.026072e+00,9.810451e-01,9.412802e-01,9.054186e-01,8.724195e-01,8.414976e-01,8.120719e-01,7.837224e-01,7.561553e-01,7.291734e-01,7.026536e-01,6.765279e-01,6.507681e-01,6.253746e-01,6.003669e-01,5.757767e-01,5.516422e-01,5.280042e-01,5.049035e-01,4.823783e-01,4.604633e-01,4.391883e-01,4.185781e-01,3.986524e-01,3.794255e-01,3.609067e-01,3.431005e-01,3.260072e-01,3.096231e-01,2.939408e-01,2.789503e-01,2.646384e-01,2.509901e-01,2.379884e-01,2.256146e-01,2.138492e-01,2.026715e-01,1.920603e-01,1.819939e-01,1.724504e-01,1.634081e-01,1.548451e-01,1.467399e-01,1.390713e-01,1.318186e-01,1.249617e-01,1.184809e-01,1.123571e-01,1.065720e-01,1.011080e-01,9.594792e-02,9.107560e-02,8.647539e-02,8.213238e-02,7.803235e-02,7.416176e-02,7.050771e-02,6.705797e-02,6.380090e-02,6.072548e-02,5.782129e-02,5.507843e-02,5.248758e-02,5.003988e-02,4.772702e-02,4.554111e-02,4.347473e-02,4.152088e-02,3.967297e-02,3.792476e-02,3.627043e-02,3.470444e-02,3.322162e-02,3.181709e-02,3.048626e-02,2.922481e-02,2.802868e-02,2.689407e-02,2.581739e-02,2.479527e-02,2.382454e-02,2.290223e-02,2.202555e-02,2.119187e-02,2.039873e-02,1.964381e-02,1.892493e-02,1.824005e-02,1.758726e-02,1.696475e-02,1.637082e-02,1.580389e-02,1.526247e-02,1.474513e-02,1.425058e-02,1.377757e-02,1.332492e-02,1.289156e-02,1.247645e-02,1.207862e-02,1.169716e-02,1.133121e-02,1.097998e-02,1.064271e-02,1.031868e-02,1.000722e-02,9.707708e-03,9.419544e-03,9.142171e-03,8.875061e-03,8.617719e-03,8.369679e-03,8.130498e-03,7.899762e-03,7.677079e-03,7.462080e-03,7.254415e-03,7.053756e-03,6.859791e-03,6.672228e-03,6.490787e-03,6.315208e-03,6.145241e-03,5.980653e-03,5.821220e-03,5.666732e-03,5.516991e-03,5.371806e-03,5.231000e-03,5.094401e-03,4.961849e-03,4.833191e-03,4.708280e-03,4.586979e-03,4.469156e-03,4.354687e-03,4.243451e-03,4.135335e-03,4.030232e-03,3.928037e-03,3.828654e-03,3.731987e-03,3.637946e-03,3.546447e-03,3.457408e-03,3.370748e-03,3.286394e-03,3.204274e-03,3.124318e-03,3.046461e-03,2.970638e-03,2.896789e-03,2.824855e-03,2.754780e-03,2.686510e-03,2.619993e-03,2.555178e-03,2.492017e-03,2.430464e-03,2.370474e-03,2.312003e-03,2.255009e-03,2.199453e-03,2.145294e-03,2.092496e-03,2.041021e-03,1.990835e-03,1.941904e-03,1.894193e-03,1.847672e-03,1.802309e-03,1.758074e-03,1.714938e-03,1.672872e-03,1.631849e-03,1.591842e-03,1.552826e-03,1.514774e-03,1.477664e-03,1.441470e-03,1.406170e-03,1.371742e-03,1.338162e-03,1.305411e-03,1.273468e-03,1.242312e-03,1.211923e-03,1.182283e-03,1.153374e-03,1.125176e-03,1.097672e-03,1.070846e-03,1.044680e-03,1.019158e-03,9.942644e-04,9.699833e-04,9.462998e-04,9.231991e-04,9.006669e-04,8.786892e-04,8.572523e-04,8.363429e-04,8.159481e-04,7.960551e-04,7.766516e-04,7.577256e-04,7.392653e-04,7.212593e-04,7.036963e-04,6.865655e-04,6.698562e-04,6.535581e-04,6.376609e-04,6.221549e-04,6.070304e-04,5.922779e-04,5.778883e-04,5.638527e-04,5.501623e-04,5.368085e-04,5.237832e-04,5.110781e-04,4.986853e-04,4.865972e-04,4.748061e-04,4.633049e-04,4.520861e-04,4.411430e-04,4.304686e-04,4.200564e-04,4.098997e-04,3.999924e-04,3.903281e-04,3.809009e-04,3.717049e-04,3.627344e-04,3.539838e-04,3.454475e-04,3.371204e-04,3.289972e-04,3.210728e-04,3.133424e-04,3.058011e-04,2.984441e-04,2.912671e-04,2.842653e-04,2.774346e-04,2.707707e-04,2.642694e-04,2.579267e-04,2.517387e-04,2.457015e-04,2.398113e-04,2.340646e-04,2.284578e-04,2.229874e-04,2.176500e-04,2.124423e-04,2.073611e-04,2.024033e-04,1.975659e-04,1.928457e-04,1.882400e-04,1.837459e-04,1.793607e-04,1.750816e-04,1.709060e-04,1.668314e-04,1.628553e-04,1.589752e-04,1.551887e-04,1.514937e-04,1.478877e-04,1.443687e-04,1.409344e-04,1.375828e-04,1.343119e-04,1.311196e-04,1.280041e-04,1.249634e-04,1.219958e-04,1.190993e-04,1.162723e-04,1.135131e-04,1.108200e-04,1.081914e-04,1.056257e-04,1.031214e-04,1.006770e-04,9.829094e-05,9.596191e-05,9.368848e-05,9.146930e-05,8.930304e-05,8.718842e-05,8.512418e-05,8.310911e-05,8.114200e-05,7.922169e-05,7.734704e-05,7.551696e-05,7.373036e-05,7.198619e-05,7.028343e-05,6.862107e-05,6.699814e-05,6.541368e-05,6.386678e-05,6.235652e-05,6.088203e-05,5.944244e-05,5.803691e-05,5.666463e-05,5.532480e-05,5.401664e-05,5.273940e-05,5.149232e-05,5.027469e-05,4.908581e-05,4.792498e-05,4.679154e-05,4.568483e-05,4.460422e-05,4.354909e-05,4.251882e-05,4.151283e-05,4.053053e-05,3.957137e-05,3.863479e-05,3.772026e-05,3.682726e-05,3.595527e-05,3.510379e-05,3.427235e-05,3.346046e-05,3.266767e-05,3.189352e-05,3.113756e-05,3.039938e-05,2.967856e-05,2.897467e-05,2.828733e-05,2.761614e-05,2.696072e-05,2.632070e-05,2.569572e-05,2.508542e-05,2.448946e-05,2.390750e-05,2.333922e-05,2.278429e-05,2.224239e-05,2.171323e-05,2.119650e-05,2.069191e-05,2.019918e-05,1.971803e-05,1.924818e-05,1.878938e-05,1.834136e-05,1.790388e-05,1.747668e-05,1.705952e-05,1.665218e-05,1.625441e-05,1.586600e-05,1.548673e-05,1.511638e-05,1.475475e-05,1.440163e-05,1.405682e-05,1.372013e-05,1.339138e-05,1.307036e-05,1.275691e-05,1.245085e-05,1.215200e-05,1.186020e-05,1.157528e-05,1.129708e-05,1.102545e-05,1.076022e-05,1.050126e-05,1.024842e-05,1.000155e-05,9.760509e-06,9.525169e-06,9.295394e-06,9.071053e-06,8.852021e-06,8.638174e-06,8.429389e-06,8.225550e-06,8.026541e-06,7.832249e-06,7.642563e-06,7.457378e-06,7.276587e-06,7.100087e-06,6.927779e-06,6.759565e-06,6.595349e-06,6.435038e-06,6.278540e-06,6.125766e-06,5.976629e-06,5.831045e-06,5.688930e-06,5.550202e-06,5.414783e-06,5.282596e-06,5.153564e-06,5.027614e-06,4.904673e-06,4.784671e-06,4.667539e-06,4.553210e-06,4.441618e-06,4.332699e-06,4.226390e-06,4.122630e-06,4.021359e-06,3.922519e-06,3.826052e-06,3.731903e-06,3.640016e-06,3.550340e-06,3.462822e-06,3.377410e-06,3.294056e-06,3.212711e-06,3.133328e-06,3.055860e-06,2.980262e-06,2.906491e-06,2.834502e-06,2.764254e-06,2.695706e-06,2.628817e-06,2.563549e-06,2.499862e-06,2.437720e-06,2.377086e-06,2.317923e-06,2.260198e-06,2.203877e-06,2.148925e-06,2.095310e-06,2.043001e-06,1.991966e-06,1.942176e-06,1.893600e-06,1.846209e-06,1.799977e-06,1.754874e-06,1.710874e-06,1.667950e-06,1.626077e-06,1.585231e-06,1.545385e-06,1.506517e-06,1.468603e-06,1.431619e-06,1.395545e-06,1.360358e-06,1.326036e-06,1.292560e-06,1.259908e-06,1.228061e-06,1.197000e-06,1.166705e-06,1.137158e-06,1.108342e-06,1.080238e-06,1.052830e-06,1.026100e-06,1.000033e-06,9.746116e-07,9.498210e-07,9.256459e-07,9.020713e-07,8.790827e-07,8.566658e-07,8.348069e-07,8.134923e-07,7.927089e-07,7.724438e-07,7.526843e-07,7.334182e-07,7.146334e-07,6.963183e-07,6.784614e-07,6.610515e-07,6.440777e-07,6.275294e-07,6.113962e-07,5.956679e-07,5.803346e-07,5.653867e-07,5.508147e-07,5.366094e-07,5.227618e-07,5.092631e-07,4.961048e-07,4.832784e-07,4.707760e-07,4.585893e-07,4.467108e-07,4.351327e-07,4.238477e-07,4.128486e-07,4.021282e-07,3.916798e-07,3.814965e-07,3.715719e-07,3.618994e-07,3.524730e-07,3.432864e-07,3.343337e-07,3.256091e-07,3.171070e-07,3.088218e-07,3.007481e-07,2.928806e-07,2.852143e-07,2.777441e-07,2.704650e-07,2.633725e-07,2.564617e-07,2.497281e-07,2.431673e-07,2.367751e-07,2.305470e-07,2.244792e-07,2.185674e-07,2.128079e-07,2.071967e-07,2.017302e-07,1.964047e-07,1.912167e-07,1.861626e-07,1.812392e-07,1.764432e-07,1.717713e-07,1.672203e-07,1.627873e-07,1.584692e-07,1.542632e-07,1.501664e-07,1.461760e-07,1.422893e-07,1.385037e-07,1.348167e-07,1.312257e-07,1.277283e-07,1.243221e-07,1.210048e-07,1.177741e-07,1.146279e-07,1.115639e-07,1.085800e-07,1.056743e-07,1.028447e-07,1.000892e-07,9.740604e-08,9.479328e-08,9.224913e-08,8.977184e-08,8.735968e-08,8.501098e-08,8.272412e-08,8.049751e-08,7.832958e-08,7.621884e-08,7.416380e-08,7.216303e-08,7.021513e-08,6.831874e-08,6.647252e-08,6.467518e-08,6.292545e-08,6.122209e-08,5.956392e-08,5.794974e-08,5.637844e-08,5.484888e-08,5.335999e-08,5.191071e-08,5.050001e-08,4.912688e-08,4.779035e-08,4.648947e-08,4.522329e-08,4.399092e-08,4.279148e-08,4.162410e-08,4.048794e-08,3.938219e-08,3.830605e-08,3.725875e-08,3.623953e-08,3.524765e-08,3.428240e-08,3.334307e-08,3.242899e-08,3.153949e-08,3.067392e-08,2.983165e-08,2.901208e-08,2.821459e-08,2.743862e-08,2.668358e-08,2.594893e-08,2.523413e-08,2.453865e-08,2.386198e-08,2.320362e-08,2.256310e-08,2.193992e-08,2.133365e-08,2.074381e-08,2.016999e-08,1.961175e-08,1.906868e-08,1.854037e-08,1.802644e-08,1.752649e-08,1.704016e-08,1.656708e-08,1.610690e-08,1.565927e-08,1.522386e-08,1.480034e-08,1.438839e-08,1.398771e-08,1.359799e-08,1.321893e-08,1.285026e-08,1.249169e-08,1.214294e-08,1.180377e-08,1.147390e-08,1.115310e-08,1.084110e-08,1.053769e-08,1.024262e-08,9.955667e-09,9.676619e-09,9.405259e-09,9.141379e-09,8.884777e-09,8.635256e-09,8.392624e-09,8.156695e-09,7.927287e-09,7.704223e-09}, {5.161291e+04,9.840121e+03,2.334407e+03,1.011581e+03,6.894684e+02,5.051955e+02,3.560765e+02,2.424051e+02,1.641500e+02,1.145088e+02,8.480834e+01,6.757476e+01,5.743725e+01,5.096602e+01,4.617818e+01,4.204521e+01,3.811152e+01,3.423452e+01,3.042240e+01,2.674089e+01,2.326424e+01,2.005285e+01,1.714580e+01,1.456101e+01,1.229872e+01,1.034602e+01,8.681113e+00,7.277060e+00,6.104570e+00,5.134098e+00,4.337253e+00,3.687681e+00,3.161555e+00,2.737781e+00,2.397999e+00,2.126464e+00,1.909846e+00,1.736987e+00,1.598649e+00,1.487262e+00,1.396684e+00,1.321983e+00,1.259239e+00,1.205372e+00,1.157991e+00,1.115266e+00,1.075820e+00,1.038633e+00,1.002972e+00,9.683258e-01,9.343533e-01,9.008432e-01,8.676807e-01,8.348207e-01,8.022676e-01,7.700590e-01,7.382531e-01,7.069194e-01,6.761319e-01,6.459639e-01,6.164846e-01,5.877568e-01,5.598351e-01,5.327657e-01,5.065858e-01,4.813236e-01,4.569990e-01,4.336242e-01,4.112040e-01,3.897368e-01,3.692152e-01,3.496269e-01,3.309553e-01,3.131802e-01,2.962785e-01,2.802246e-01,2.649911e-01,2.505493e-01,2.368692e-01,2.239206e-01,2.116727e-01,2.000948e-01,1.891562e-01,1.788270e-01,1.690773e-01,1.598785e-01,1.512022e-01,1.430213e-01,1.353094e-01,1.280412e-01,1.211924e-01,1.147396e-01,1.086606e-01,1.029341e-01,9.753994e-02,9.245880e-02,8.767245e-02,8.316358e-02,7.891580e-02,7.491359e-02,7.114232e-02,6.758816e-02,6.423806e-02,6.107973e-02,5.810158e-02,5.529273e-02,5.264292e-02,5.014251e-02,4.778243e-02,4.555418e-02,4.344975e-02,4.146165e-02,3.958283e-02,3.780667e-02,3.612697e-02,3.453793e-02,3.303407e-02,3.161030e-02,3.026180e-02,2.898409e-02,2.777295e-02,2.662443e-02,2.553482e-02,2.450065e-02,2.351867e-02,2.258583e-02,2.169926e-02,2.085629e-02,2.005439e-02,1.929122e-02,1.856457e-02,1.787235e-02,1.721262e-02,1.658357e-02,1.598348e-02,1.541073e-02,1.486384e-02,1.434137e-02,1.384201e-02,1.336450e-02,1.290767e-02,1.247042e-02,1.205172e-02,1.165060e-02,1.126614e-02,1.089748e-02,1.054381e-02,1.020438e-02,9.878460e-03,9.565385e-03,9.264519e-03,8.975263e-03,8.697054e-03,8.429361e-03,8.171685e-03,7.923551e-03,7.684516e-03,7.454158e-03,7.232080e-03,7.017907e-03,6.811284e-03,6.611877e-03,6.419368e-03,6.233458e-03,6.053863e-03,5.880314e-03,5.712556e-03,5.550348e-03,5.393462e-03,5.241680e-03,5.094796e-03,4.952615e-03,4.814950e-03,4.681626e-03,4.552475e-03,4.427336e-03,4.306058e-03,4.188496e-03,4.074513e-03,3.963976e-03,3.856761e-03,3.752747e-03,3.651822e-03,3.553876e-03,3.458804e-03,3.366507e-03,3.276891e-03,3.189864e-03,3.105338e-03,3.023231e-03,2.943462e-03,2.865954e-03,2.790634e-03,2.717432e-03,2.646280e-03,2.577111e-03,2.509865e-03,2.444480e-03,2.380900e-03,2.319068e-03,2.258930e-03,2.200436e-03,2.143535e-03,2.088180e-03,2.034324e-03,1.981924e-03,1.930935e-03,1.881317e-03,1.833030e-03,1.786034e-03,1.740294e-03,1.695772e-03,1.652433e-03,1.610245e-03,1.569174e-03,1.529188e-03,1.490258e-03,1.452354e-03,1.415447e-03,1.379509e-03,1.344514e-03,1.310434e-03,1.277247e-03,1.244925e-03,1.213447e-03,1.182789e-03,1.152928e-03,1.123843e-03,1.095513e-03,1.067918e-03,1.041037e-03,1.014852e-03,9.893434e-04,9.644936e-04,9.402848e-04,9.166999e-04,8.937223e-04,8.713358e-04,8.495247e-04,8.282738e-04,8.075681e-04,7.873933e-04,7.677354e-04,7.485806e-04,7.299158e-04,7.117280e-04,6.940047e-04,6.767337e-04,6.599032e-04,6.435015e-04,6.275174e-04,6.119401e-04,5.967589e-04,5.819634e-04,5.675436e-04,5.534897e-04,5.397922e-04,5.264417e-04,5.134293e-04,5.007461e-04,4.883837e-04,4.763336e-04,4.645878e-04,4.531384e-04,4.419777e-04,4.310983e-04,4.204929e-04,4.101543e-04,4.000757e-04,3.902505e-04,3.806719e-04,3.713338e-04,3.622298e-04,3.533540e-04,3.447005e-04,3.362635e-04,3.280376e-04,3.200172e-04,3.121971e-04,3.045722e-04,2.971375e-04,2.898881e-04,2.828192e-04,2.759262e-04,2.692047e-04,2.626502e-04,2.562585e-04,2.500254e-04,2.439469e-04,2.380190e-04,2.322379e-04,2.266000e-04,2.211014e-04,2.157387e-04,2.105085e-04,2.054073e-04,2.004320e-04,1.955792e-04,1.908460e-04,1.862293e-04,1.817261e-04,1.773335e-04,1.730489e-04,1.688694e-04,1.647924e-04,1.608153e-04,1.569357e-04,1.531510e-04,1.494588e-04,1.458570e-04,1.423431e-04,1.389150e-04,1.355705e-04,1.323076e-04,1.291242e-04,1.260183e-04,1.229879e-04,1.200313e-04,1.171465e-04,1.143318e-04,1.115855e-04,1.089057e-04,1.062909e-04,1.037395e-04,1.012499e-04,9.882052e-05,9.644993e-05,9.413664e-05,9.187926e-05,8.967639e-05,8.752670e-05,8.542887e-05,8.338162e-05,8.138372e-05,7.943394e-05,7.753111e-05,7.567407e-05,7.386170e-05,7.209291e-05,7.036662e-05,6.868180e-05,6.703744e-05,6.543254e-05,6.386614e-05,6.233731e-05,6.084513e-05,5.938870e-05,5.796716e-05,5.657966e-05,5.522537e-05,5.390348e-05,5.261321e-05,5.135379e-05,5.012448e-05,4.892455e-05,4.775328e-05,4.660998e-05,4.549398e-05,4.440462e-05,4.334126e-05,4.230326e-05,4.129003e-05,4.030095e-05,3.933546e-05,3.839298e-05,3.747296e-05,3.657486e-05,3.569816e-05,3.484234e-05,3.400690e-05,3.319135e-05,3.239523e-05,3.161805e-05,3.085938e-05,3.011876e-05,2.939577e-05,2.868998e-05,2.800098e-05,2.732838e-05,2.667179e-05,2.603081e-05,2.540508e-05,2.479424e-05,2.419793e-05,2.361580e-05,2.304753e-05,2.249277e-05,2.195121e-05,2.142254e-05,2.090644e-05,2.040262e-05,1.991079e-05,1.943067e-05,1.896197e-05,1.850442e-05,1.805777e-05,1.762175e-05,1.719611e-05,1.678060e-05,1.637499e-05,1.597904e-05,1.559252e-05,1.521521e-05,1.484689e-05,1.448735e-05,1.413638e-05,1.379378e-05,1.345935e-05,1.313289e-05,1.281422e-05,1.250316e-05,1.219952e-05,1.190312e-05,1.161381e-05,1.133141e-05,1.105575e-05,1.078668e-05,1.052404e-05,1.026768e-05,1.001746e-05,9.773217e-06,9.534822e-06,9.302133e-06,9.075017e-06,8.853342e-06,8.636978e-06,8.425800e-06,8.219687e-06,8.018517e-06,7.822174e-06,7.630544e-06,7.443516e-06,7.260981e-06,7.082832e-06,6.908966e-06,6.739281e-06,6.573678e-06,6.412061e-06,6.254336e-06,6.100410e-06,5.950193e-06,5.803598e-06,5.660538e-06,5.520931e-06,5.384693e-06,5.251746e-06,5.122010e-06,4.995411e-06,4.871873e-06,4.751324e-06,4.633693e-06,4.518911e-06,4.406909e-06,4.297623e-06,4.190987e-06,4.086938e-06,3.985415e-06,3.886358e-06,3.789707e-06,3.695407e-06,3.603400e-06,3.513633e-06,3.426051e-06,3.340603e-06,3.257237e-06,3.175905e-06,3.096557e-06,3.019146e-06,2.943626e-06,2.869952e-06,2.798079e-06,2.727965e-06,2.659567e-06,2.592844e-06,2.527757e-06,2.464265e-06,2.402331e-06,2.341918e-06,2.282988e-06,2.225506e-06,2.169438e-06,2.114750e-06,2.061407e-06,2.009379e-06,1.958633e-06,1.909139e-06,1.860865e-06,1.813784e-06,1.767866e-06,1.723082e-06,1.679407e-06,1.636812e-06,1.595272e-06,1.554761e-06,1.515255e-06,1.476729e-06,1.439159e-06,1.402523e-06,1.366797e-06,1.331959e-06,1.297988e-06,1.264863e-06,1.232564e-06,1.201070e-06,1.170361e-06,1.140419e-06,1.111224e-06,1.082760e-06,1.055007e-06,1.027948e-06,1.001568e-06,9.758476e-07,9.507726e-07,9.263265e-07,9.024942e-07,8.792604e-07,8.566107e-07,8.345305e-07,8.130061e-07,7.920237e-07,7.715700e-07,7.516320e-07,7.321971e-07,7.132529e-07,6.947873e-07,6.767884e-07,6.592449e-07,6.421454e-07,6.254790e-07,6.092350e-07,5.934030e-07,5.779727e-07,5.629343e-07,5.482780e-07,5.339944e-07,5.200742e-07,5.065084e-07,4.932882e-07,4.804050e-07,4.678505e-07,4.556164e-07,4.436948e-07,4.320780e-07,4.207582e-07,4.097281e-07,3.989805e-07,3.885083e-07,3.783047e-07,3.683629e-07,3.586763e-07,3.492386e-07,3.400436e-07,3.310851e-07,3.223572e-07,3.138541e-07,3.055702e-07,2.975000e-07,2.896381e-07,2.819792e-07,2.745183e-07,2.672503e-07,2.601704e-07,2.532738e-07,2.465559e-07,2.400122e-07,2.336383e-07,2.274298e-07,2.213826e-07,2.154927e-07,2.097559e-07,2.041685e-07,1.987266e-07,1.934265e-07,1.882646e-07,1.832375e-07,1.783416e-07,1.735737e-07,1.689304e-07,1.644086e-07,1.600052e-07,1.557172e-07,1.515416e-07,1.474755e-07,1.435161e-07,1.396607e-07,1.359067e-07,1.322514e-07,1.286922e-07,1.252268e-07,1.218527e-07,1.185676e-07,1.153691e-07,1.122551e-07,1.092233e-07,1.062717e-07,1.033982e-07,1.006007e-07,9.787728e-08,9.522605e-08,9.264512e-08,9.013267e-08,8.768693e-08,8.530617e-08,8.298870e-08,8.073287e-08,7.853709e-08,7.639980e-08,7.431946e-08,7.229460e-08,7.032378e-08,6.840558e-08,6.653863e-08,6.472159e-08,6.295315e-08,6.123206e-08,5.955706e-08,5.792695e-08,5.634056e-08,5.479673e-08,5.329436e-08,5.183235e-08,5.040965e-08,4.902522e-08,4.767805e-08,4.636716e-08,4.509160e-08,4.385043e-08,4.264276e-08,4.146769e-08,4.032436e-08,3.921194e-08,3.812961e-08,3.707656e-08,3.605204e-08,3.505527e-08,3.408553e-08,3.314210e-08,3.222428e-08,3.133139e-08,3.046276e-08,2.961775e-08,2.879574e-08,2.799610e-08,2.721825e-08,2.646161e-08,2.572559e-08,2.500967e-08,2.431329e-08,2.363594e-08,2.297711e-08,2.233630e-08,2.171303e-08,2.110683e-08,2.051723e-08,1.994381e-08,1.938611e-08,1.884373e-08,1.831624e-08,1.780324e-08,1.730436e-08,1.681919e-08,1.634739e-08,1.588858e-08,1.544241e-08,1.500855e-08,1.458666e-08,1.417641e-08,1.377750e-08,1.338961e-08,1.301245e-08,1.264573e-08,1.228915e-08,1.194246e-08,1.160537e-08,1.127763e-08,1.095899e-08,1.064919e-08,1.034799e-08,1.005517e-08,9.770491e-09,9.493732e-09,9.224678e-09,8.963118e-09,8.708847e-09,8.461666e-09,8.221382e-09,7.987805e-09,7.760752e-09,7.540044e-09,7.325507e-09,7.116971e-09,6.914273e-09,6.717251e-09,6.525750e-09,6.339618e-09,6.158706e-09,5.982872e-09,5.811976e-09,5.645881e-09,5.484454e-09}, {5.546568e+04,1.017840e+04,2.377727e+03,1.054031e+03,7.243438e+02,5.251316e+02,3.646535e+02,2.452864e+02,1.653552e+02,1.160239e+02,8.721974e+01,7.074816e+01,6.098112e+01,5.448186e+01,4.936531e+01,4.472381e+01,4.020758e+01,3.575181e+01,3.141430e+01,2.728723e+01,2.345435e+01,1.997443e+01,1.687831e+01,1.417238e+01,1.184433e+01,9.868981e+00,8.213515e+00,6.841446e+00,5.715602e+00,4.800142e+00,4.061818e+00,3.470669e+00,3.000307e+00,2.627930e+00,2.334142e+00,2.102682e+00,1.920088e+00,1.775353e+00,1.659575e+00,1.565646e+00,1.487951e+00,1.422115e+00,1.364776e+00,1.313387e+00,1.266058e+00,1.221417e+00,1.178496e+00,1.136639e+00,1.095426e+00,1.054617e+00,1.014095e+00,9.738399e-01,9.338896e-01,8.943232e-01,8.552421e-01,8.167579e-01,7.789836e-01,7.420268e-01,7.059859e-01,6.709475e-01,6.369850e-01,6.041580e-01,5.725124e-01,5.420812e-01,5.128855e-01,4.849350e-01,4.582299e-01,4.327615e-01,4.085138e-01,3.854642e-01,3.635850e-01,3.428441e-01,3.232061e-01,3.046327e-01,2.870840e-01,2.705185e-01,2.548942e-01,2.401686e-01,2.262995e-01,2.132449e-01,2.009637e-01,1.894155e-01,1.785612e-01,1.683629e-01,1.587838e-01,1.497889e-01,1.413443e-01,1.334179e-01,1.259788e-01,1.189978e-01,1.124471e-01,1.063003e-01,1.005326e-01,9.512023e-02,9.004111e-02,8.527422e-02,8.079983e-02,7.659936e-02,7.265535e-02,6.895143e-02,6.547219e-02,6.220322e-02,5.913099e-02,5.624284e-02,5.352689e-02,5.097206e-02,4.856794e-02,4.630483e-02,4.417365e-02,4.216589e-02,4.027364e-02,3.848947e-02,3.680646e-02,3.521814e-02,3.371847e-02,3.230181e-02,3.096289e-02,2.969679e-02,2.849892e-02,2.736499e-02,2.629100e-02,2.527321e-02,2.430813e-02,2.339251e-02,2.252330e-02,2.169766e-02,2.091294e-02,2.016665e-02,1.945650e-02,1.878031e-02,1.813606e-02,1.752187e-02,1.693597e-02,1.637671e-02,1.584256e-02,1.533208e-02,1.484390e-02,1.437678e-02,1.392954e-02,1.350107e-02,1.309033e-02,1.269637e-02,1.231827e-02,1.195519e-02,1.160633e-02,1.127095e-02,1.094835e-02,1.063787e-02,1.033890e-02,1.005086e-02,9.773206e-03,9.505438e-03,9.247072e-03,8.997661e-03,8.756780e-03,8.524034e-03,8.299047e-03,8.081467e-03,7.870963e-03,7.667221e-03,7.469946e-03,7.278861e-03,7.093703e-03,6.914222e-03,6.740186e-03,6.571372e-03,6.407570e-03,6.248582e-03,6.094219e-03,5.944305e-03,5.798669e-03,5.657151e-03,5.519599e-03,5.385868e-03,5.255822e-03,5.129328e-03,5.006263e-03,4.886508e-03,4.769950e-03,4.656482e-03,4.546000e-03,4.438407e-03,4.333608e-03,4.231515e-03,4.132040e-03,4.035103e-03,3.940625e-03,3.848529e-03,3.758745e-03,3.671203e-03,3.585835e-03,3.502579e-03,3.421373e-03,3.342158e-03,3.264877e-03,3.189475e-03,3.115899e-03,3.044100e-03,2.974027e-03,2.905634e-03,2.838875e-03,2.773706e-03,2.710085e-03,2.647970e-03,2.587322e-03,2.528103e-03,2.470275e-03,2.413802e-03,2.358650e-03,2.304785e-03,2.252174e-03,2.200786e-03,2.150589e-03,2.101554e-03,2.053653e-03,2.006856e-03,1.961137e-03,1.916470e-03,1.872829e-03,1.830188e-03,1.788524e-03,1.747813e-03,1.708033e-03,1.669160e-03,1.631173e-03,1.594051e-03,1.557774e-03,1.522321e-03,1.487674e-03,1.453813e-03,1.420719e-03,1.388376e-03,1.356765e-03,1.325869e-03,1.295672e-03,1.266157e-03,1.237310e-03,1.209113e-03,1.181554e-03,1.154616e-03,1.128285e-03,1.102549e-03,1.077392e-03,1.052803e-03,1.028767e-03,1.005273e-03,9.823080e-04,9.598601e-04,9.379177e-04,9.164692e-04,8.955037e-04,8.750101e-04,8.549779e-04,8.353967e-04,8.162563e-04,7.975469e-04,7.792587e-04,7.613824e-04,7.439087e-04,7.268286e-04,7.101333e-04,6.938142e-04,6.778630e-04,6.622713e-04,6.470312e-04,6.321349e-04,6.175746e-04,6.033430e-04,5.894326e-04,5.758364e-04,5.625473e-04,5.495585e-04,5.368634e-04,5.244554e-04,5.123281e-04,5.004752e-04,4.888908e-04,4.775688e-04,4.665034e-04,4.556889e-04,4.451198e-04,4.347904e-04,4.246957e-04,4.148302e-04,4.051890e-04,3.957671e-04,3.865595e-04,3.775615e-04,3.687685e-04,3.601758e-04,3.517791e-04,3.435739e-04,3.355561e-04,3.277213e-04,3.200657e-04,3.125850e-04,3.052756e-04,2.981334e-04,2.911549e-04,2.843363e-04,2.776741e-04,2.711648e-04,2.648050e-04,2.585912e-04,2.525203e-04,2.465891e-04,2.407944e-04,2.351331e-04,2.296023e-04,2.241991e-04,2.189205e-04,2.137638e-04,2.087262e-04,2.038051e-04,1.989978e-04,1.943018e-04,1.897145e-04,1.852336e-04,1.808565e-04,1.765810e-04,1.724047e-04,1.683255e-04,1.643411e-04,1.604493e-04,1.566481e-04,1.529354e-04,1.493092e-04,1.457676e-04,1.423086e-04,1.389303e-04,1.356309e-04,1.324086e-04,1.292616e-04,1.261883e-04,1.231869e-04,1.202558e-04,1.173934e-04,1.145981e-04,1.118683e-04,1.092027e-04,1.065996e-04,1.040577e-04,1.015756e-04,9.915187e-05,9.678517e-05,9.447420e-05,9.221767e-05,9.001433e-05,8.786295e-05,8.576234e-05,8.371131e-05,8.170872e-05,7.975345e-05,7.784440e-05,7.598051e-05,7.416072e-05,7.238401e-05,7.064938e-05,6.895585e-05,6.730247e-05,6.568830e-05,6.411243e-05,6.257396e-05,6.107203e-05,5.960577e-05,5.817436e-05,5.677699e-05,5.541285e-05,5.408117e-05,5.278119e-05,5.151216e-05,5.027337e-05,4.906409e-05,4.788365e-05,4.673135e-05,4.560654e-05,4.450858e-05,4.343683e-05,4.239067e-05,4.136951e-05,4.037275e-05,3.939981e-05,3.845014e-05,3.752319e-05,3.661841e-05,3.573529e-05,3.487331e-05,3.403198e-05,3.321080e-05,3.240929e-05,3.162700e-05,3.086346e-05,3.011824e-05,2.939089e-05,2.868099e-05,2.798813e-05,2.731190e-05,2.665191e-05,2.600777e-05,2.537910e-05,2.476554e-05,2.416673e-05,2.358231e-05,2.301195e-05,2.245530e-05,2.191204e-05,2.138185e-05,2.086442e-05,2.035944e-05,1.986662e-05,1.938567e-05,1.891630e-05,1.845824e-05,1.801121e-05,1.757495e-05,1.714921e-05,1.673373e-05,1.632826e-05,1.593257e-05,1.554643e-05,1.516959e-05,1.480185e-05,1.444298e-05,1.409277e-05,1.375101e-05,1.341750e-05,1.309204e-05,1.277444e-05,1.246451e-05,1.216206e-05,1.186692e-05,1.157891e-05,1.129785e-05,1.102359e-05,1.075595e-05,1.049478e-05,1.023993e-05,9.991234e-06,9.748552e-06,9.511737e-06,9.280648e-06,9.055148e-06,8.835102e-06,8.620379e-06,8.410850e-06,8.206390e-06,8.006877e-06,7.812193e-06,7.622219e-06,7.436844e-06,7.255955e-06,7.079446e-06,6.907210e-06,6.739143e-06,6.575147e-06,6.415122e-06,6.258972e-06,6.106604e-06,5.957927e-06,5.812852e-06,5.671292e-06,5.533161e-06,5.398377e-06,5.266860e-06,5.138530e-06,5.013311e-06,4.891126e-06,4.771904e-06,4.655572e-06,4.542061e-06,4.431302e-06,4.323228e-06,4.217776e-06,4.114882e-06,4.014483e-06,3.916520e-06,3.820934e-06,3.727666e-06,3.636662e-06,3.547867e-06,3.461226e-06,3.376688e-06,3.294202e-06,3.213719e-06,3.135189e-06,3.058567e-06,2.983805e-06,2.910858e-06,2.839684e-06,2.770238e-06,2.702479e-06,2.636366e-06,2.571860e-06,2.508921e-06,2.447512e-06,2.387595e-06,2.329135e-06,2.272096e-06,2.216443e-06,2.162144e-06,2.109166e-06,2.057475e-06,2.007043e-06,1.957837e-06,1.909828e-06,1.862987e-06,1.817286e-06,1.772698e-06,1.729195e-06,1.686750e-06,1.645340e-06,1.604937e-06,1.565519e-06,1.527061e-06,1.489539e-06,1.452932e-06,1.417217e-06,1.382372e-06,1.348377e-06,1.315210e-06,1.282852e-06,1.251283e-06,1.220484e-06,1.190436e-06,1.161121e-06,1.132521e-06,1.104620e-06,1.077399e-06,1.050843e-06,1.024935e-06,9.996600e-07,9.750023e-07,9.509468e-07,9.274791e-07,9.045848e-07,8.822501e-07,8.604613e-07,8.392053e-07,8.184690e-07,7.982400e-07,7.785058e-07,7.592544e-07,7.404742e-07,7.221536e-07,7.042816e-07,6.868472e-07,6.698398e-07,6.532490e-07,6.370647e-07,6.212770e-07,6.058763e-07,5.908532e-07,5.761985e-07,5.619032e-07,5.479586e-07,5.343562e-07,5.210877e-07,5.081448e-07,4.955198e-07,4.832049e-07,4.711924e-07,4.594752e-07,4.480459e-07,4.368976e-07,4.260234e-07,4.154166e-07,4.050708e-07,3.949796e-07,3.851367e-07,3.755362e-07,3.661721e-07,3.570386e-07,3.481302e-07,3.394413e-07,3.309665e-07,3.227008e-07,3.146389e-07,3.067759e-07,2.991069e-07,2.916272e-07,2.843322e-07,2.772174e-07,2.702783e-07,2.635107e-07,2.569104e-07,2.504732e-07,2.441953e-07,2.380726e-07,2.321015e-07,2.262781e-07,2.205990e-07,2.150605e-07,2.096592e-07,2.043918e-07,1.992549e-07,1.942455e-07,1.893602e-07,1.845962e-07,1.799504e-07,1.754200e-07,1.710021e-07,1.666939e-07,1.624928e-07,1.583961e-07,1.544013e-07,1.505059e-07,1.467073e-07,1.430033e-07,1.393916e-07,1.358698e-07,1.324357e-07,1.290872e-07,1.258222e-07,1.226386e-07,1.195345e-07,1.165078e-07,1.135566e-07,1.106792e-07,1.078736e-07,1.051381e-07,1.024710e-07,9.987066e-08,9.733531e-08,9.486341e-08,9.245338e-08,9.010370e-08,8.781288e-08,8.557946e-08,8.340203e-08,8.127919e-08,7.920961e-08,7.719196e-08,7.522496e-08,7.330735e-08,7.143791e-08,6.961545e-08,6.783880e-08,6.610684e-08,6.441844e-08,6.277253e-08,6.116806e-08,5.960400e-08,5.807935e-08,5.659311e-08,5.514436e-08,5.373214e-08,5.235555e-08,5.101371e-08,4.970575e-08,4.843083e-08,4.718813e-08,4.597684e-08,4.479618e-08,4.364539e-08,4.252372e-08,4.143046e-08,4.036488e-08,3.932630e-08,3.831404e-08,3.732745e-08,3.636589e-08,3.542873e-08,3.451535e-08,3.362518e-08,3.275762e-08,3.191211e-08,3.108809e-08,3.028504e-08,2.950241e-08,2.873971e-08,2.799644e-08,2.727210e-08,2.656621e-08,2.587833e-08,2.520799e-08,2.455475e-08,2.391819e-08,2.329788e-08,2.269342e-08,2.210441e-08,2.153046e-08,2.097118e-08,2.042622e-08,1.989521e-08,1.937779e-08,1.887363e-08,1.838239e-08,1.790375e-08,1.743738e-08,1.698298e-08,1.654024e-08,1.610887e-08,1.568858e-08,1.527910e-08,1.488014e-08,1.449145e-08,1.411276e-08,1.374381e-08,1.338437e-08,1.303419e-08}, {6.357826e+04,1.119954e+04,2.538555e+03,1.118352e+03,7.626699e+02,5.447568e+02,3.726089e+02,2.480355e+02,1.669023e+02,1.181184e+02,9.022114e+01,7.437818e+01,6.478786e+01,5.806621e+01,5.245952e+01,4.719432e+01,4.202697e+01,3.696403e+01,3.210381e+01,2.755558e+01,2.340439e+01,1.970067e+01,1.646201e+01,1.367975e+01,1.132670e+01,9.364227e+00,7.747875e+00,6.431624e+00,5.370757e+00,4.523691e+00,3.852990e+00,3.325791e+00,2.913837e+00,2.593259e+00,2.344200e+00,2.150378e+00,1.998616e+00,1.878390e+00,1.781405e+00,1.701211e+00,1.632869e+00,1.572659e+00,1.517833e+00,1.466413e+00,1.417014e+00,1.368710e+00,1.320919e+00,1.273314e+00,1.225754e+00,1.178225e+00,1.130800e+00,1.083605e+00,1.036797e+00,9.905436e-01,9.450138e-01,9.003662e-01,8.567449e-01,8.142762e-01,7.730669e-01,7.332039e-01,6.947546e-01,6.577681e-01,6.222766e-01,5.882968e-01,5.558323e-01,5.248746e-01,4.954051e-01,4.673971e-01,4.408164e-01,4.156236e-01,3.917744e-01,3.692217e-01,3.479156e-01,3.278047e-01,3.088369e-01,2.909595e-01,2.741203e-01,2.582676e-01,2.433508e-01,2.293204e-01,2.161284e-01,2.037285e-01,1.920759e-01,1.811280e-01,1.708437e-01,1.611839e-01,1.521115e-01,1.435912e-01,1.355894e-01,1.280744e-01,1.210164e-01,1.143870e-01,1.081597e-01,1.023092e-01,9.681208e-02,9.164608e-02,8.679036e-02,8.222539e-02,7.793280e-02,7.389541e-02,7.009708e-02,6.652272e-02,6.315820e-02,5.999026e-02,5.700652e-02,5.419540e-02,5.154603e-02,4.904828e-02,4.669266e-02,4.447029e-02,4.237287e-02,4.039264e-02,3.852235e-02,3.675521e-02,3.508487e-02,3.350540e-02,3.201124e-02,3.059721e-02,2.925845e-02,2.799042e-02,2.678886e-02,2.564981e-02,2.456954e-02,2.354457e-02,2.257163e-02,2.164768e-02,2.076987e-02,1.993550e-02,1.914208e-02,1.838726e-02,1.766884e-02,1.698475e-02,1.633306e-02,1.571196e-02,1.511975e-02,1.455483e-02,1.401570e-02,1.350097e-02,1.300931e-02,1.253947e-02,1.209031e-02,1.166073e-02,1.124969e-02,1.085624e-02,1.047946e-02,1.011850e-02,9.772554e-03,9.440871e-03,9.122734e-03,8.817472e-03,8.524452e-03,8.243079e-03,7.972790e-03,7.713054e-03,7.463372e-03,7.223270e-03,6.992302e-03,6.770047e-03,6.556106e-03,6.350102e-03,6.151679e-03,5.960500e-03,5.776246e-03,5.598613e-03,5.427316e-03,5.262082e-03,5.102655e-03,4.948789e-03,4.800253e-03,4.656826e-03,4.518300e-03,4.384474e-03,4.255160e-03,4.130178e-03,4.009356e-03,3.892532e-03,3.779549e-03,3.670261e-03,3.564524e-03,3.462206e-03,3.363177e-03,3.267314e-03,3.174500e-03,3.084624e-03,2.997577e-03,2.913258e-03,2.831568e-03,2.752414e-03,2.675705e-03,2.601356e-03,2.529284e-03,2.459410e-03,2.391658e-03,2.325956e-03,2.262232e-03,2.200421e-03,2.140458e-03,2.082281e-03,2.025830e-03,1.971049e-03,1.917881e-03,1.866275e-03,1.816179e-03,1.767545e-03,1.720324e-03,1.674472e-03,1.629944e-03,1.586699e-03,1.544695e-03,1.503894e-03,1.464258e-03,1.425749e-03,1.388334e-03,1.351977e-03,1.316646e-03,1.282309e-03,1.248936e-03,1.216497e-03,1.184964e-03,1.154309e-03,1.124505e-03,1.095526e-03,1.067349e-03,1.039947e-03,1.013299e-03,9.873818e-04,9.621735e-04,9.376530e-04,9.138000e-04,8.905947e-04,8.680182e-04,8.460518e-04,8.246778e-04,8.038787e-04,7.836379e-04,7.639392e-04,7.447667e-04,7.261053e-04,7.079403e-04,6.902573e-04,6.730425e-04,6.562826e-04,6.399645e-04,6.240757e-04,6.086039e-04,5.935374e-04,5.788647e-04,5.645747e-04,5.506567e-04,5.371001e-04,5.238949e-04,5.110314e-04,4.984998e-04,4.862912e-04,4.743964e-04,4.628069e-04,4.515142e-04,4.405101e-04,4.297868e-04,4.193365e-04,4.091518e-04,3.992254e-04,3.895504e-04,3.801200e-04,3.709275e-04,3.619664e-04,3.532307e-04,3.447141e-04,3.364110e-04,3.283154e-04,3.204220e-04,3.127254e-04,3.052203e-04,2.979016e-04,2.907645e-04,2.838042e-04,2.770160e-04,2.703954e-04,2.639379e-04,2.576395e-04,2.514959e-04,2.455031e-04,2.396571e-04,2.339543e-04,2.283909e-04,2.229633e-04,2.176680e-04,2.125016e-04,2.074609e-04,2.025425e-04,1.977435e-04,1.930608e-04,1.884914e-04,1.840324e-04,1.796812e-04,1.754348e-04,1.712908e-04,1.672465e-04,1.632994e-04,1.594471e-04,1.556873e-04,1.520176e-04,1.484358e-04,1.449397e-04,1.415272e-04,1.381962e-04,1.349446e-04,1.317706e-04,1.286723e-04,1.256477e-04,1.226950e-04,1.198125e-04,1.169986e-04,1.142514e-04,1.115693e-04,1.089509e-04,1.063945e-04,1.038986e-04,1.014617e-04,9.908249e-05,9.675950e-05,9.449137e-05,9.227679e-05,9.011446e-05,8.800313e-05,8.594156e-05,8.392856e-05,8.196297e-05,8.004365e-05,7.816949e-05,7.633940e-05,7.455235e-05,7.280729e-05,7.110322e-05,6.943917e-05,6.781419e-05,6.622735e-05,6.467773e-05,6.316446e-05,6.168667e-05,6.024352e-05,5.883419e-05,5.745787e-05,5.611380e-05,5.480120e-05,5.351932e-05,5.226745e-05,5.104488e-05,4.985091e-05,4.868488e-05,4.754611e-05,4.643398e-05,4.534784e-05,4.428710e-05,4.325116e-05,4.223942e-05,4.125133e-05,4.028632e-05,3.934386e-05,3.842341e-05,3.752447e-05,3.664652e-05,3.578907e-05,3.495165e-05,3.413378e-05,3.333500e-05,3.255488e-05,3.179297e-05,3.104884e-05,3.032209e-05,2.961230e-05,2.891907e-05,2.824203e-05,2.758079e-05,2.693499e-05,2.630425e-05,2.568824e-05,2.508660e-05,2.449901e-05,2.392513e-05,2.336464e-05,2.281723e-05,2.228260e-05,2.176045e-05,2.125048e-05,2.075242e-05,2.026598e-05,1.979089e-05,1.932690e-05,1.887373e-05,1.843114e-05,1.799889e-05,1.757672e-05,1.716441e-05,1.676173e-05,1.636844e-05,1.598434e-05,1.560921e-05,1.524284e-05,1.488502e-05,1.453556e-05,1.419426e-05,1.386093e-05,1.353539e-05,1.321745e-05,1.290693e-05,1.260367e-05,1.230750e-05,1.201825e-05,1.173575e-05,1.145986e-05,1.119041e-05,1.092726e-05,1.067026e-05,1.041927e-05,1.017414e-05,9.934747e-06,9.700949e-06,9.472618e-06,9.249626e-06,9.031849e-06,8.819165e-06,8.611455e-06,8.408605e-06,8.210499e-06,8.017029e-06,7.828086e-06,7.643563e-06,7.463360e-06,7.287374e-06,7.115507e-06,6.947663e-06,6.783750e-06,6.623674e-06,6.467346e-06,6.314680e-06,6.165590e-06,6.019992e-06,5.877805e-06,5.738949e-06,5.603348e-06,5.470924e-06,5.341604e-06,5.215315e-06,5.091987e-06,4.971551e-06,4.853939e-06,4.739085e-06,4.626925e-06,4.517397e-06,4.410438e-06,4.305989e-06,4.203991e-06,4.104387e-06,4.007122e-06,3.912140e-06,3.819388e-06,3.728814e-06,3.640368e-06,3.554000e-06,3.469661e-06,3.387304e-06,3.306883e-06,3.228351e-06,3.151667e-06,3.076785e-06,3.003664e-06,2.932263e-06,2.862542e-06,2.794462e-06,2.727983e-06,2.663070e-06,2.599684e-06,2.537791e-06,2.477356e-06,2.418343e-06,2.360722e-06,2.304458e-06,2.249520e-06,2.195876e-06,2.143498e-06,2.092355e-06,2.042418e-06,1.993659e-06,1.946050e-06,1.899565e-06,1.854177e-06,1.809861e-06,1.766591e-06,1.724343e-06,1.683094e-06,1.642819e-06,1.603496e-06,1.565102e-06,1.527617e-06,1.491018e-06,1.455284e-06,1.420396e-06,1.386334e-06,1.353078e-06,1.320610e-06,1.288911e-06,1.257962e-06,1.227747e-06,1.198248e-06,1.169449e-06,1.141332e-06,1.113882e-06,1.087084e-06,1.060921e-06,1.035379e-06,1.010444e-06,9.861015e-07,9.623369e-07,9.391371e-07,9.164887e-07,8.943788e-07,8.727948e-07,8.517242e-07,8.311550e-07,8.110754e-07,7.914740e-07,7.723393e-07,7.536605e-07,7.354269e-07,7.176279e-07,7.002533e-07,6.832932e-07,6.667377e-07,6.505773e-07,6.348028e-07,6.194050e-07,6.043750e-07,5.897042e-07,5.753840e-07,5.614063e-07,5.477630e-07,5.344461e-07,5.214479e-07,5.087610e-07,4.963779e-07,4.842915e-07,4.724948e-07,4.609809e-07,4.497432e-07,4.387750e-07,4.280701e-07,4.176222e-07,4.074253e-07,3.974733e-07,3.877605e-07,3.782812e-07,3.690299e-07,3.600011e-07,3.511897e-07,3.425904e-07,3.341983e-07,3.260083e-07,3.180158e-07,3.102159e-07,3.026042e-07,2.951762e-07,2.879275e-07,2.808538e-07,2.739510e-07,2.672150e-07,2.606419e-07,2.542278e-07,2.479688e-07,2.418613e-07,2.359018e-07,2.300865e-07,2.244122e-07,2.188755e-07,2.134730e-07,2.082016e-07,2.030582e-07,1.980396e-07,1.931429e-07,1.883653e-07,1.837038e-07,1.791556e-07,1.747181e-07,1.703886e-07,1.661646e-07,1.620435e-07,1.580227e-07,1.541001e-07,1.502731e-07,1.465395e-07,1.428970e-07,1.393435e-07,1.358768e-07,1.324948e-07,1.291956e-07,1.259771e-07,1.228373e-07,1.197744e-07,1.167866e-07,1.138719e-07,1.110288e-07,1.082553e-07,1.055499e-07,1.029110e-07,1.003368e-07,9.782592e-08,9.537674e-08,9.298779e-08,9.065762e-08,8.838481e-08,8.616797e-08,8.400574e-08,8.189681e-08,7.983988e-08,7.783370e-08,7.587703e-08,7.396867e-08,7.210746e-08,7.029225e-08,6.852192e-08,6.679538e-08,6.511157e-08,6.346946e-08,6.186802e-08,6.030627e-08,5.878324e-08,5.729799e-08,5.584960e-08,5.443717e-08,5.305982e-08,5.171671e-08,5.040699e-08,4.912984e-08,4.788448e-08,4.667013e-08,4.548602e-08,4.433142e-08,4.320561e-08,4.210788e-08,4.103755e-08,3.999394e-08,3.897640e-08,3.798429e-08,3.701698e-08,3.607387e-08,3.515437e-08,3.425788e-08,3.338385e-08,3.253173e-08,3.170097e-08,3.089106e-08,3.010147e-08,2.933170e-08,2.858128e-08,2.784971e-08,2.713654e-08,2.644131e-08,2.576358e-08,2.510292e-08,2.445889e-08,2.383111e-08,2.321915e-08,2.262263e-08,2.204117e-08,2.147439e-08,2.092193e-08,2.038344e-08,1.985856e-08,1.934697e-08,1.884832e-08,1.836230e-08,1.788860e-08,1.742691e-08,1.697692e-08,1.653835e-08,1.611092e-08,1.569434e-08,1.528835e-08,1.489268e-08,1.450707e-08,1.413128e-08,1.376505e-08,1.340815e-08,1.306034e-08,1.272141e-08,1.239112e-08,1.206925e-08,1.175561e-08,1.144998e-08,1.115215e-08,1.086195e-08,1.057916e-08,1.030362e-08,1.003512e-08,9.773512e-09,9.518604e-09,9.270232e-09,9.028232e-09,8.792443e-09,8.562708e-09}, {6.371602e+04,1.083789e+04,2.467406e+03,1.145297e+03,7.945634e+02,5.625993e+02,3.797888e+02,2.505855e+02,1.686532e+02,1.206209e+02,9.365975e+01,7.835855e+01,6.880313e+01,6.170899e+01,5.548265e+01,4.949844e+01,4.362183e+01,3.792721e+01,3.254672e+01,2.759920e+01,2.316389e+01,1.927694e+01,1.593804e+01,1.312016e+01,1.077909e+01,8.861447e+00,7.310631e+00,6.071033e+00,5.090691e+00,4.322783e+00,3.726297e+00,3.266118e+00,2.912763e+00,2.641893e+00,2.433731e+00,2.272444e+00,2.145543e+00,2.043321e+00,1.958358e+00,1.885080e+00,1.819387e+00,1.758338e+00,1.699889e+00,1.642684e+00,1.585883e+00,1.529021e+00,1.471907e+00,1.414535e+00,1.357025e+00,1.299571e+00,1.242410e+00,1.185790e+00,1.129959e+00,1.075147e+00,1.021563e+00,9.693875e-01,9.187731e-01,8.698422e-01,8.226896e-01,7.773834e-01,7.339681e-01,6.924667e-01,6.528834e-01,6.152064e-01,5.794101e-01,5.454575e-01,5.133026e-01,4.828919e-01,4.541662e-01,4.270622e-01,4.015139e-01,3.774534e-01,3.548119e-01,3.335206e-01,3.135114e-01,2.947173e-01,2.770727e-01,2.605140e-01,2.449797e-01,2.304106e-01,2.167499e-01,2.039435e-01,1.919395e-01,1.806889e-01,1.701450e-01,1.602636e-01,1.510032e-01,1.423244e-01,1.341901e-01,1.265654e-01,1.194177e-01,1.127161e-01,1.064318e-01,1.005378e-01,9.500866e-02,8.982075e-02,8.495186e-02,8.038123e-02,7.608946e-02,7.205844e-02,6.827123e-02,6.471200e-02,6.136599e-02,5.821940e-02,5.525938e-02,5.247389e-02,4.985172e-02,4.738241e-02,4.505619e-02,4.286395e-02,4.079716e-02,3.884789e-02,3.700873e-02,3.527276e-02,3.363352e-02,3.208498e-02,3.062150e-02,2.923783e-02,2.792905e-02,2.669059e-02,2.551814e-02,2.440772e-02,2.335556e-02,2.235818e-02,2.141230e-02,2.051487e-02,1.966301e-02,1.885406e-02,1.808551e-02,1.735501e-02,1.666037e-02,1.599953e-02,1.537057e-02,1.477169e-02,1.420119e-02,1.365749e-02,1.313911e-02,1.264464e-02,1.217279e-02,1.172232e-02,1.129209e-02,1.088100e-02,1.048806e-02,1.011229e-02,9.752802e-03,9.408755e-03,9.079353e-03,8.763848e-03,8.461537e-03,8.171758e-03,7.893888e-03,7.627337e-03,7.371553e-03,7.126013e-03,6.890223e-03,6.663719e-03,6.446061e-03,6.236834e-03,6.035646e-03,5.842126e-03,5.655925e-03,5.476710e-03,5.304167e-03,5.138000e-03,4.977926e-03,4.823680e-03,4.675007e-03,4.531669e-03,4.393437e-03,4.260096e-03,4.131440e-03,4.007274e-03,3.887414e-03,3.771681e-03,3.659910e-03,3.551940e-03,3.447620e-03,3.346805e-03,3.249356e-03,3.155143e-03,3.064040e-03,2.975927e-03,2.890691e-03,2.808221e-03,2.728415e-03,2.651172e-03,2.576398e-03,2.504001e-03,2.433895e-03,2.365995e-03,2.300223e-03,2.236502e-03,2.174758e-03,2.114922e-03,2.056926e-03,2.000707e-03,1.946201e-03,1.893349e-03,1.842096e-03,1.792385e-03,1.744164e-03,1.697383e-03,1.651994e-03,1.607949e-03,1.565203e-03,1.523714e-03,1.483441e-03,1.444342e-03,1.406379e-03,1.369516e-03,1.333717e-03,1.298947e-03,1.265174e-03,1.232364e-03,1.200489e-03,1.169518e-03,1.139421e-03,1.110173e-03,1.081746e-03,1.054114e-03,1.027254e-03,1.001140e-03,9.757495e-04,9.510608e-04,9.270521e-04,9.037026e-04,8.809922e-04,8.589015e-04,8.374119e-04,8.165051e-04,7.961637e-04,7.763708e-04,7.571100e-04,7.383654e-04,7.201219e-04,7.023647e-04,6.850793e-04,6.682520e-04,6.518694e-04,6.359185e-04,6.203868e-04,6.052622e-04,5.905329e-04,5.761875e-04,5.622151e-04,5.486050e-04,5.353469e-04,5.224307e-04,5.098468e-04,4.975858e-04,4.856387e-04,4.739966e-04,4.626510e-04,4.515936e-04,4.408165e-04,4.303118e-04,4.200721e-04,4.100901e-04,4.003586e-04,3.908708e-04,3.816201e-04,3.726001e-04,3.638044e-04,3.552270e-04,3.468621e-04,3.387038e-04,3.307468e-04,3.229855e-04,3.154148e-04,3.080296e-04,3.008251e-04,2.937963e-04,2.869388e-04,2.802479e-04,2.737195e-04,2.673491e-04,2.611326e-04,2.550662e-04,2.491459e-04,2.433679e-04,2.377285e-04,2.322243e-04,2.268516e-04,2.216073e-04,2.164879e-04,2.114904e-04,2.066116e-04,2.018486e-04,1.971983e-04,1.926581e-04,1.882250e-04,1.838965e-04,1.796699e-04,1.755427e-04,1.715124e-04,1.675766e-04,1.637329e-04,1.599792e-04,1.563131e-04,1.527326e-04,1.492355e-04,1.458198e-04,1.424835e-04,1.392246e-04,1.360414e-04,1.329319e-04,1.298943e-04,1.269270e-04,1.240283e-04,1.211964e-04,1.184298e-04,1.157269e-04,1.130862e-04,1.105062e-04,1.079855e-04,1.055226e-04,1.031163e-04,1.007650e-04,9.846761e-05,9.622276e-05,9.402924e-05,9.188583e-05,8.979136e-05,8.774468e-05,8.574467e-05,8.379024e-05,8.188032e-05,8.001388e-05,7.818990e-05,7.640739e-05,7.466539e-05,7.296296e-05,7.129919e-05,6.967317e-05,6.808405e-05,6.653096e-05,6.501307e-05,6.352958e-05,6.207969e-05,6.066264e-05,5.927766e-05,5.792402e-05,5.660101e-05,5.530793e-05,5.404408e-05,5.280881e-05,5.160146e-05,5.042140e-05,4.926800e-05,4.814066e-05,4.703878e-05,4.596180e-05,4.490913e-05,4.388024e-05,4.287457e-05,4.189162e-05,4.093086e-05,3.999179e-05,3.907392e-05,3.817677e-05,3.729988e-05,3.644279e-05,3.560505e-05,3.478623e-05,3.398590e-05,3.320364e-05,3.243905e-05,3.169173e-05,3.096130e-05,3.024737e-05,2.954957e-05,2.886755e-05,2.820094e-05,2.754941e-05,2.691261e-05,2.629021e-05,2.568189e-05,2.508734e-05,2.450625e-05,2.393832e-05,2.338325e-05,2.284075e-05,2.231055e-05,2.179236e-05,2.128592e-05,2.079097e-05,2.030725e-05,1.983451e-05,1.937251e-05,1.892099e-05,1.847974e-05,1.804852e-05,1.762710e-05,1.721527e-05,1.681281e-05,1.641951e-05,1.603517e-05,1.565960e-05,1.529258e-05,1.493393e-05,1.458347e-05,1.424101e-05,1.390637e-05,1.357938e-05,1.325986e-05,1.294765e-05,1.264259e-05,1.234452e-05,1.205327e-05,1.176870e-05,1.149065e-05,1.121899e-05,1.095356e-05,1.069423e-05,1.044087e-05,1.019333e-05,9.951485e-06,9.715211e-06,9.484381e-06,9.258873e-06,9.038567e-06,8.823347e-06,8.613097e-06,8.407708e-06,8.207068e-06,8.011071e-06,7.819613e-06,7.632592e-06,7.449907e-06,7.271461e-06,7.097159e-06,6.926906e-06,6.760611e-06,6.598186e-06,6.439542e-06,6.284594e-06,6.133259e-06,5.985454e-06,5.841100e-06,5.700119e-06,5.562435e-06,5.427972e-06,5.296657e-06,5.168419e-06,5.043188e-06,4.920896e-06,4.801476e-06,4.684863e-06,4.570992e-06,4.459801e-06,4.351230e-06,4.245218e-06,4.141706e-06,4.040639e-06,3.941959e-06,3.845613e-06,3.751547e-06,3.659708e-06,3.570046e-06,3.482511e-06,3.397054e-06,3.313627e-06,3.232183e-06,3.152678e-06,3.075066e-06,2.999303e-06,2.925348e-06,2.853158e-06,2.782693e-06,2.713913e-06,2.646778e-06,2.581252e-06,2.517296e-06,2.454874e-06,2.393951e-06,2.334492e-06,2.276463e-06,2.219831e-06,2.164562e-06,2.110626e-06,2.057992e-06,2.006628e-06,1.956506e-06,1.907596e-06,1.859871e-06,1.813301e-06,1.767861e-06,1.723524e-06,1.680264e-06,1.638055e-06,1.596874e-06,1.556695e-06,1.517496e-06,1.479253e-06,1.441944e-06,1.405546e-06,1.370038e-06,1.335400e-06,1.301610e-06,1.268648e-06,1.236496e-06,1.205133e-06,1.174541e-06,1.144701e-06,1.115597e-06,1.087209e-06,1.059522e-06,1.032518e-06,1.006182e-06,9.804965e-07,9.554469e-07,9.310179e-07,9.071944e-07,8.839622e-07,8.613068e-07,8.392146e-07,8.176720e-07,7.966657e-07,7.761829e-07,7.562110e-07,7.367376e-07,7.177507e-07,6.992385e-07,6.811897e-07,6.635929e-07,6.464372e-07,6.297120e-07,6.134067e-07,5.975112e-07,5.820156e-07,5.669101e-07,5.521851e-07,5.378315e-07,5.238402e-07,5.102023e-07,4.969092e-07,4.839524e-07,4.713238e-07,4.590152e-07,4.470189e-07,4.353271e-07,4.239324e-07,4.128275e-07,4.020053e-07,3.914587e-07,3.811810e-07,3.711655e-07,3.614059e-07,3.518956e-07,3.426287e-07,3.335989e-07,3.248006e-07,3.162278e-07,3.078751e-07,2.997369e-07,2.918079e-07,2.840829e-07,2.765569e-07,2.692248e-07,2.620817e-07,2.551231e-07,2.483442e-07,2.417406e-07,2.353079e-07,2.290418e-07,2.229380e-07,2.169926e-07,2.112015e-07,2.055609e-07,2.000670e-07,1.947160e-07,1.895043e-07,1.844285e-07,1.794851e-07,1.746708e-07,1.699822e-07,1.654162e-07,1.609698e-07,1.566397e-07,1.524232e-07,1.483172e-07,1.443190e-07,1.404259e-07,1.366351e-07,1.329441e-07,1.293502e-07,1.258511e-07,1.224443e-07,1.191273e-07,1.158980e-07,1.127541e-07,1.096933e-07,1.067136e-07,1.038128e-07,1.009890e-07,9.824003e-08,9.556410e-08,9.295930e-08,9.042377e-08,8.795573e-08,8.555344e-08,8.321518e-08,8.093930e-08,7.872418e-08,7.656825e-08,7.446995e-08,7.242781e-08,7.044034e-08,6.850613e-08,6.662379e-08,6.479197e-08,6.300934e-08,6.127462e-08,5.958655e-08,5.794392e-08,5.634554e-08,5.479023e-08,5.327688e-08,5.180438e-08,5.037166e-08,4.897766e-08,4.762138e-08,4.630181e-08,4.501799e-08,4.376897e-08,4.255383e-08,4.137169e-08,4.022166e-08,3.910289e-08,3.801456e-08,3.695586e-08,3.592600e-08,3.492422e-08,3.394977e-08,3.300192e-08,3.207997e-08,3.118321e-08,3.031100e-08,2.946266e-08,2.863755e-08,2.783507e-08,2.705460e-08,2.629556e-08,2.555736e-08,2.483945e-08,2.414130e-08,2.346235e-08,2.280211e-08,2.216007e-08,2.153573e-08,2.092862e-08,2.033828e-08,1.976425e-08,1.920610e-08,1.866339e-08,1.813570e-08,1.762264e-08,1.712380e-08,1.663880e-08,1.616727e-08,1.570883e-08,1.526314e-08,1.482984e-08,1.440861e-08,1.399910e-08,1.360101e-08,1.321401e-08,1.283782e-08,1.247213e-08,1.211666e-08,1.177112e-08,1.143525e-08,1.110878e-08,1.079146e-08,1.048303e-08,1.018324e-08,9.891875e-09,9.608686e-09,9.333453e-09,9.065958e-09,8.805987e-09,8.553334e-09,8.307796e-09,8.069177e-09,7.837287e-09,7.611940e-09,7.392955e-09,7.180156e-09,6.973371e-09,6.772435e-09,6.577185e-09,6.387464e-09,6.203118e-09,6.023998e-09,5.849959e-09,5.680860e-09,5.516563e-09,5.356934e-09,5.201844e-09,5.051166e-09}, {6.812853e+04,1.115940e+04,2.514499e+03,1.194150e+03,8.297565e+02,5.801006e+02,3.864424e+02,2.531342e+02,1.708409e+02,1.237343e+02,9.766315e+01,8.273529e+01,7.300972e+01,6.535633e+01,5.836836e+01,5.157473e+01,4.494548e+01,3.861322e+01,3.273307e+01,2.742348e+01,2.274965e+01,1.872730e+01,1.533392e+01,1.252139e+01,1.022703e+01,8.382148e+00,6.918086e+00,5.770171e+00,4.879942e+00,4.196209e+00,3.675269e+00,3.280601e+00,2.982257e+00,2.756094e+00,2.582971e+00,2.447955e+00,2.339594e+00,2.249265e+00,2.170608e+00,2.099048e+00,2.031395e+00,1.965515e+00,1.900071e+00,1.834304e+00,1.767877e+00,1.700737e+00,1.633027e+00,1.565005e+00,1.496993e+00,1.429340e+00,1.362392e+00,1.296473e+00,1.231879e+00,1.168866e+00,1.107650e+00,1.048407e+00,9.912744e-01,9.363514e-01,8.837059e-01,8.333758e-01,7.853738e-01,7.396905e-01,6.962981e-01,6.551535e-01,6.162014e-01,5.793767e-01,5.446071e-01,5.118144e-01,4.809173e-01,4.518317e-01,4.244729e-01,3.987559e-01,3.745967e-01,3.519126e-01,3.306230e-01,3.106499e-01,2.919177e-01,2.743540e-01,2.578893e-01,2.424574e-01,2.279953e-01,2.144431e-01,2.017441e-01,1.898448e-01,1.786946e-01,1.682459e-01,1.584537e-01,1.492760e-01,1.406731e-01,1.326079e-01,1.250457e-01,1.179538e-01,1.113017e-01,1.050607e-01,9.920425e-02,9.370729e-02,8.854649e-02,8.370003e-02,7.914754e-02,7.486998e-02,7.084959e-02,6.706978e-02,6.351505e-02,6.017095e-02,5.702398e-02,5.406154e-02,5.127188e-02,4.864401e-02,4.616768e-02,4.383334e-02,4.163205e-02,3.955546e-02,3.759580e-02,3.574579e-02,3.399864e-02,3.234800e-02,3.078795e-02,2.931295e-02,2.791783e-02,2.659774e-02,2.534817e-02,2.416488e-02,2.304393e-02,2.198161e-02,2.097446e-02,2.001925e-02,1.911295e-02,1.825271e-02,1.743589e-02,1.665999e-02,1.592269e-02,1.522179e-02,1.455525e-02,1.392116e-02,1.331771e-02,1.274321e-02,1.219608e-02,1.167483e-02,1.117806e-02,1.070446e-02,1.025280e-02,9.821920e-03,9.410731e-03,9.018208e-03,8.643387e-03,8.285362e-03,7.943278e-03,7.616330e-03,7.303762e-03,7.004858e-03,6.718945e-03,6.445387e-03,6.183585e-03,5.932973e-03,5.693016e-03,5.463209e-03,5.243074e-03,5.032160e-03,4.830040e-03,4.636308e-03,4.450583e-03,4.272502e-03,4.101721e-03,3.937913e-03,3.780771e-03,3.630000e-03,3.485322e-03,3.346472e-03,3.213200e-03,3.085265e-03,2.962442e-03,2.844512e-03,2.731272e-03,2.622523e-03,2.518081e-03,2.417766e-03,2.321409e-03,2.228847e-03,2.139927e-03,2.054501e-03,1.972428e-03,1.893572e-03,1.817806e-03,1.745006e-03,1.675055e-03,1.607840e-03,1.543252e-03,1.481190e-03,1.421553e-03,1.364248e-03,1.309182e-03,1.256270e-03,1.205428e-03,1.156575e-03,1.109635e-03,1.064533e-03,1.021201e-03,9.795677e-04,9.395697e-04,9.011438e-04,8.642298e-04,8.287697e-04,7.947079e-04,7.619908e-04,7.305670e-04,7.003870e-04,6.714032e-04,6.435698e-04,6.168429e-04,5.911800e-04,5.665404e-04,5.428848e-04,5.201756e-04,4.983763e-04,4.774521e-04,4.573693e-04,4.380954e-04,4.195993e-04,4.018510e-04,3.848216e-04,3.684833e-04,3.528092e-04,3.377737e-04,3.233518e-04,3.095197e-04,2.962544e-04,2.835337e-04,2.713364e-04,2.596418e-04,2.484303e-04,2.376829e-04,2.273811e-04,2.175075e-04,2.080451e-04,1.989775e-04,1.902890e-04,1.819646e-04,1.739897e-04,1.663504e-04,1.590331e-04,1.520249e-04,1.453134e-04,1.388866e-04,1.327330e-04,1.268415e-04,1.212014e-04,1.158026e-04,1.106351e-04,1.056895e-04,1.009567e-04,9.642800e-05,9.209492e-05,8.794940e-05,8.398370e-05,8.019034e-05,7.656217e-05,7.309231e-05,6.977414e-05,6.660131e-05,6.356773e-05,6.066755e-05,5.789514e-05,5.524511e-05,5.271227e-05,5.029167e-05,4.797852e-05,4.576825e-05,4.365646e-05,4.163895e-05,3.971166e-05,3.787073e-05,3.611243e-05,3.443319e-05,3.282960e-05,3.129837e-05,2.983637e-05,2.844058e-05,2.710811e-05,2.583620e-05,2.462219e-05,2.346354e-05,2.235782e-05,2.130269e-05,2.029592e-05,1.933538e-05,1.841900e-05,1.754484e-05,1.671101e-05,1.591571e-05,1.515722e-05,1.443390e-05,1.374417e-05,1.308651e-05,1.245949e-05,1.186172e-05,1.129188e-05,1.074871e-05,1.023100e-05,9.737588e-06,9.267372e-06,8.819293e-06,8.392341e-06,7.985549e-06,7.597994e-06,7.228792e-06,6.877099e-06,6.542109e-06,6.223051e-06,5.919188e-06,5.629818e-06,5.354267e-06,5.091895e-06,4.842088e-06,4.604260e-06,4.377853e-06,4.162332e-06,3.957188e-06,3.761934e-06,3.576106e-06,3.399261e-06,3.230974e-06,3.070843e-06,2.918482e-06,2.773523e-06,2.635616e-06,2.504425e-06,2.379632e-06,2.260932e-06,2.148035e-06,2.040663e-06,1.938553e-06,1.841452e-06,1.749121e-06,1.661330e-06,1.577862e-06,1.498507e-06,1.423069e-06,1.351358e-06,1.283193e-06,1.218404e-06,1.156826e-06,1.098304e-06,1.042689e-06,9.898407e-07,9.396234e-07,8.919090e-07,8.465753e-07,8.035060e-07,7.625902e-07,7.237224e-07,6.868021e-07,6.517337e-07,6.184260e-07,5.867924e-07,5.567503e-07,5.282212e-07,5.011303e-07,4.754066e-07,4.509821e-07,4.277927e-07,4.057769e-07,3.848764e-07,3.650357e-07,3.462021e-07,3.283253e-07,3.113577e-07,2.952536e-07,2.799701e-07,2.654659e-07,2.517021e-07,2.386414e-07,2.262485e-07,2.144900e-07,2.033337e-07,1.927495e-07,1.827084e-07,1.731831e-07,1.641474e-07,1.555765e-07,1.474471e-07,1.397366e-07,1.324238e-07,1.254886e-07,1.189117e-07,1.126749e-07,1.067609e-07,1.011533e-07,9.583629e-08,9.079517e-08,8.601580e-08,8.148479e-08,7.718942e-08,7.311762e-08,6.925791e-08,6.559940e-08,6.213176e-08,5.884516e-08,5.573028e-08,5.277829e-08,4.998077e-08,4.732975e-08,4.481767e-08,4.243734e-08,4.018194e-08,3.804501e-08,3.602040e-08,3.410228e-08,3.228514e-08,3.056371e-08,2.893304e-08,2.738838e-08,2.592526e-08,2.453944e-08,2.322687e-08,2.198374e-08,2.080641e-08,1.969145e-08,1.863560e-08,1.763575e-08,1.668897e-08,1.579248e-08,1.494364e-08,1.413995e-08,1.337903e-08,1.265863e-08,1.197663e-08,1.133099e-08,1.071981e-08,1.014125e-08,9.593613e-09,9.075250e-09,8.584616e-09,8.120245e-09,7.680747e-09,7.264804e-09,6.871167e-09,6.498653e-09,6.146141e-09,5.812568e-09,5.496927e-09,5.198265e-09,4.915678e-09,4.648309e-09,4.395348e-09,4.156026e-09,3.929615e-09,3.715426e-09,3.512806e-09,3.321136e-09,3.139831e-09,2.968334e-09,2.806122e-09,2.652696e-09,2.507585e-09,2.370343e-09,2.240547e-09,2.117797e-09,2.001714e-09,1.891940e-09,1.788135e-09,1.689977e-09,1.597162e-09,1.509402e-09,1.426424e-09,1.347970e-09,1.273795e-09,1.203669e-09,1.137372e-09,1.074697e-09,1.015448e-09,9.594391e-10,9.064949e-10,8.564492e-10,8.091446e-10,7.644323e-10,7.221714e-10,6.822288e-10,6.444783e-10,6.088006e-10,5.750829e-10,5.432184e-10,5.131062e-10,4.846505e-10,4.577612e-10,4.323526e-10,4.083438e-10,3.856585e-10,3.642242e-10,3.439724e-10,3.248385e-10,3.067613e-10,2.896828e-10,2.735484e-10,2.583062e-10,2.439072e-10,2.303053e-10,2.174565e-10,2.053196e-10,1.938554e-10,1.830269e-10,1.727990e-10,1.631388e-10,1.540150e-10,1.453980e-10,1.372598e-10,1.295741e-10,1.223159e-10,1.154615e-10,1.089887e-10,1.028764e-10,9.710457e-11,9.165449e-11,8.650831e-11,8.164921e-11,7.706129e-11,7.272951e-11,6.863968e-11,6.477837e-11,6.113291e-11,5.769131e-11,5.444225e-11,5.137503e-11,4.847954e-11,4.574624e-11,4.316609e-11,4.073057e-11,3.843164e-11,3.626168e-11,3.421350e-11,3.228031e-11,3.045571e-11,2.873362e-11,2.710833e-11,2.557443e-11,2.412681e-11,2.276066e-11,2.147142e-11,2.025477e-11,1.910667e-11,1.802328e-11,1.700096e-11,1.603630e-11,1.512607e-11,1.426721e-11,1.345685e-11,1.269225e-11,1.197086e-11,1.129024e-11,1.064810e-11,1.004229e-11,9.470755e-12,8.931570e-12,8.422915e-12,7.943072e-12,7.490418e-12,7.063421e-12,6.660636e-12,6.280698e-12,5.922317e-12,5.584279e-12,5.265434e-12,4.964699e-12,4.681051e-12,4.413525e-12,4.161210e-12,3.923245e-12,3.698819e-12,3.487166e-12,3.287563e-12,3.099327e-12,2.921815e-12,2.754419e-12,2.596565e-12,2.447713e-12,2.307352e-12,2.175001e-12,2.050203e-12,1.932532e-12,1.821581e-12,1.716970e-12,1.618337e-12,1.525343e-12,1.437668e-12,1.355007e-12,1.277077e-12,1.203608e-12,1.134345e-12,1.069050e-12,1.007495e-12,9.494687e-13,8.947686e-13,8.432052e-13,7.945997e-13,7.487832e-13,7.055964e-13,6.648891e-13,6.265197e-13,5.903546e-13,5.562677e-13,5.241401e-13,4.938599e-13,4.653212e-13,4.384244e-13,4.130754e-13,3.891857e-13,3.666716e-13,3.454542e-13,3.254593e-13,3.066167e-13,2.888603e-13,2.721277e-13,2.563603e-13,2.415026e-13,2.275024e-13,2.143103e-13,2.018800e-13,1.901676e-13,1.791320e-13,1.687340e-13,1.589372e-13,1.497068e-13,1.410103e-13,1.328169e-13,1.250976e-13,1.178251e-13,1.109738e-13,1.045192e-13,9.843849e-14,9.271016e-14,8.731384e-14,8.223037e-14,7.744170e-14,7.293080e-14,6.868161e-14,6.467904e-14,6.090881e-14,5.735750e-14,5.401245e-14,5.086173e-14,4.789409e-14,4.509895e-14,4.246631e-14,3.998676e-14,3.765145e-14,3.545200e-14,3.338056e-14,3.142970e-14,2.959242e-14,2.786215e-14,2.623267e-14,2.469814e-14,2.325304e-14,2.189219e-14,2.061069e-14,1.940393e-14,1.826757e-14,1.719752e-14,1.618992e-14,1.524114e-14,1.434777e-14,1.350658e-14,1.271453e-14,1.196876e-14,1.126658e-14,1.060545e-14,9.982984e-15,9.396922e-15,8.845146e-15,8.325658e-15,7.836574e-15,7.376122e-15,6.942632e-15,6.534531e-15,6.150338e-15,5.788656e-15,5.448171e-15,5.127646e-15,4.825914e-15,4.541879e-15,4.274504e-15,4.022818e-15,3.785901e-15,3.562892e-15,3.352975e-15,3.155386e-15,2.969403e-15,2.794346e-15,2.629575e-15,2.474489e-15,2.328520e-15,2.191134e-15,2.061828e-15,1.940129e-15,1.825590e-15,1.717791e-15,1.616338e-15,1.520857e-15,1.430999e-15,1.346434e-15,1.266850e-15}, {7.275513e+04,1.147751e+04,2.564058e+03,1.245612e+03,8.652377e+02,5.969031e+02,3.925301e+02,2.555877e+02,1.733030e+02,1.272729e+02,1.020608e+02,8.737378e+01,7.731443e+01,6.895267e+01,6.109119e+01,5.341978e+01,4.600966e+01,3.904364e+01,3.269054e+01,2.705965e+01,2.219491e+01,1.808603e+01,1.468442e+01,1.191841e+01,9.705501e+00,7.961198e+00,6.604898e+00,5.563330e+00,4.772247e+00,4.176895e+00,3.731714e+00,3.399575e+00,3.150795e+00,2.962075e+00,2.815466e+00,2.697400e+00,2.597844e+00,2.509559e+00,2.427485e+00,2.348223e+00,2.269624e+00,2.190453e+00,2.110134e+00,2.028542e+00,1.945852e+00,1.862426e+00,1.778722e+00,1.695242e+00,1.612485e+00,1.530919e+00,1.450968e+00,1.372999e+00,1.297318e+00,1.224173e+00,1.153757e+00,1.086206e+00,1.021612e+00,9.600244e-01,9.014559e-01,8.458894e-01,7.932820e-01,7.435701e-01,6.966737e-01,6.525002e-01,6.109474e-01,5.719064e-01,5.352643e-01,5.009058e-01,4.687149e-01,4.385765e-01,4.103774e-01,3.840068e-01,3.593576e-01,3.363263e-01,3.148137e-01,2.947249e-01,2.759697e-01,2.584623e-01,2.421217e-01,2.268711e-01,2.126386e-01,1.993561e-01,1.869599e-01,1.753903e-01,1.645913e-01,1.545105e-01,1.450989e-01,1.363109e-01,1.281038e-01,1.204378e-01,1.132758e-01,1.065833e-01,1.003281e-01,9.448021e-02,8.901173e-02,8.389673e-02,7.911105e-02,7.463221e-02,7.043933e-02,6.651294e-02,6.283498e-02,5.938861e-02,5.615820e-02,5.312918e-02,5.028803e-02,4.762214e-02,4.511981e-02,4.277013e-02,4.056296e-02,3.848887e-02,3.653907e-02,3.470538e-02,3.298021e-02,3.135645e-02,2.982752e-02,2.838726e-02,2.702997e-02,2.575030e-02,2.454329e-02,2.340431e-02,2.232904e-02,2.131347e-02,2.035384e-02,1.944666e-02,1.858866e-02,1.777680e-02,1.700824e-02,1.628033e-02,1.559059e-02,1.493672e-02,1.431655e-02,1.372807e-02,1.316940e-02,1.263877e-02,1.213454e-02,1.165516e-02,1.119921e-02,1.076532e-02,1.035224e-02,9.958788e-03,9.583857e-03,9.226410e-03,8.885477e-03,8.560148e-03,8.249569e-03,7.952938e-03,7.669506e-03,7.398566e-03,7.139457e-03,6.891555e-03,6.654277e-03,6.427073e-03,6.209427e-03,6.000851e-03,5.800888e-03,5.609108e-03,5.425105e-03,5.248496e-03,5.078920e-03,4.916038e-03,4.759530e-03,4.609092e-03,4.464438e-03,4.325299e-03,4.191419e-03,4.062557e-03,3.938485e-03,3.818987e-03,3.703858e-03,3.592905e-03,3.485944e-03,3.382802e-03,3.283313e-03,3.187321e-03,3.094677e-03,3.005241e-03,2.918878e-03,2.835461e-03,2.754869e-03,2.676986e-03,2.601704e-03,2.528918e-03,2.458528e-03,2.390440e-03,2.324563e-03,2.260812e-03,2.199105e-03,2.139362e-03,2.081510e-03,2.025478e-03,1.971196e-03,1.918600e-03,1.867627e-03,1.818218e-03,1.770316e-03,1.723866e-03,1.678816e-03,1.635116e-03,1.592719e-03,1.551577e-03,1.511649e-03,1.472890e-03,1.435261e-03,1.398722e-03,1.363238e-03,1.328771e-03,1.295288e-03,1.262756e-03,1.231142e-03,1.200417e-03,1.170551e-03,1.141517e-03,1.113286e-03,1.085834e-03,1.059135e-03,1.033165e-03,1.007901e-03,9.833203e-04,9.594017e-04,9.361246e-04,9.134689e-04,8.914154e-04,8.699457e-04,8.490419e-04,8.286867e-04,8.088636e-04,7.895566e-04,7.707503e-04,7.524297e-04,7.345805e-04,7.171887e-04,7.002411e-04,6.837245e-04,6.676267e-04,6.519354e-04,6.366389e-04,6.217262e-04,6.071861e-04,5.930083e-04,5.791824e-04,5.656987e-04,5.525477e-04,5.397200e-04,5.272069e-04,5.149996e-04,5.030898e-04,4.914695e-04,4.801307e-04,4.690659e-04,4.582678e-04,4.477293e-04,4.374434e-04,4.274034e-04,4.176029e-04,4.080357e-04,3.986955e-04,3.895766e-04,3.806732e-04,3.719797e-04,3.634908e-04,3.552011e-04,3.471057e-04,3.391997e-04,3.314781e-04,3.239365e-04,3.165702e-04,3.093750e-04,3.023464e-04,2.954805e-04,2.887732e-04,2.822205e-04,2.758187e-04,2.695642e-04,2.634532e-04,2.574823e-04,2.516482e-04,2.459475e-04,2.403770e-04,2.349336e-04,2.296142e-04,2.244159e-04,2.193359e-04,2.143712e-04,2.095191e-04,2.047771e-04,2.001425e-04,1.956127e-04,1.911854e-04,1.868581e-04,1.826286e-04,1.784944e-04,1.744535e-04,1.705036e-04,1.666427e-04,1.628686e-04,1.591795e-04,1.555733e-04,1.520481e-04,1.486021e-04,1.452334e-04,1.419404e-04,1.387212e-04,1.355742e-04,1.324978e-04,1.294903e-04,1.265503e-04,1.236760e-04,1.208662e-04,1.181193e-04,1.154339e-04,1.128086e-04,1.102420e-04,1.077329e-04,1.052800e-04,1.028820e-04,1.005376e-04,9.824567e-05,9.600505e-05,9.381458e-05,9.167312e-05,8.957960e-05,8.753294e-05,8.553210e-05,8.357605e-05,8.166380e-05,7.979438e-05,7.796684e-05,7.618023e-05,7.443367e-05,7.272624e-05,7.105710e-05,6.942538e-05,6.783026e-05,6.627092e-05,6.474658e-05,6.325646e-05,6.179980e-05,6.037586e-05,5.898391e-05,5.762325e-05,5.629319e-05,5.499305e-05,5.372216e-05,5.247988e-05,5.126557e-05,5.007862e-05,4.891843e-05,4.778439e-05,4.667594e-05,4.559250e-05,4.453352e-05,4.349847e-05,4.248681e-05,4.149802e-05,4.053160e-05,3.958705e-05,3.866389e-05,3.776165e-05,3.687986e-05,3.601807e-05,3.517583e-05,3.435272e-05,3.354830e-05,3.276217e-05,3.199392e-05,3.124315e-05,3.050948e-05,2.979252e-05,2.909191e-05,2.840727e-05,2.773826e-05,2.708453e-05,2.644574e-05,2.582156e-05,2.521165e-05,2.461571e-05,2.403343e-05,2.346449e-05,2.290860e-05,2.236548e-05,2.183483e-05,2.131637e-05,2.080985e-05,2.031498e-05,1.983150e-05,1.935917e-05,1.889774e-05,1.844695e-05,1.800658e-05,1.757638e-05,1.715613e-05,1.674561e-05,1.634460e-05,1.595289e-05,1.557026e-05,1.519651e-05,1.483144e-05,1.447486e-05,1.412658e-05,1.378641e-05,1.345416e-05,1.312966e-05,1.281273e-05,1.250320e-05,1.220090e-05,1.190568e-05,1.161736e-05,1.133580e-05,1.106084e-05,1.079233e-05,1.053012e-05,1.027408e-05,1.002406e-05,9.779919e-06,9.541532e-06,9.308763e-06,9.081486e-06,8.859576e-06,8.642909e-06,8.431366e-06,8.224830e-06,8.023187e-06,7.826324e-06,7.634132e-06,7.446503e-06,7.263334e-06,7.084522e-06,6.909967e-06,6.739570e-06,6.573236e-06,6.410873e-06,6.252387e-06,6.097690e-06,5.946694e-06,5.799313e-06,5.655465e-06,5.515068e-06,5.378041e-06,5.244306e-06,5.113787e-06,4.986410e-06,4.862101e-06,4.740789e-06,4.622405e-06,4.506880e-06,4.394147e-06,4.284141e-06,4.176800e-06,4.072059e-06,3.969860e-06,3.870141e-06,3.772846e-06,3.677916e-06,3.585298e-06,3.494936e-06,3.406777e-06,3.320769e-06,3.236863e-06,3.155008e-06,3.075156e-06,2.997259e-06,2.921272e-06,2.847149e-06,2.774846e-06,2.704320e-06,2.635530e-06,2.568432e-06,2.502989e-06,2.439159e-06,2.376905e-06,2.316189e-06,2.256975e-06,2.199226e-06,2.142908e-06,2.087987e-06,2.034428e-06,1.982200e-06,1.931270e-06,1.881608e-06,1.833183e-06,1.785964e-06,1.739924e-06,1.695034e-06,1.651265e-06,1.608591e-06,1.566986e-06,1.526424e-06,1.486879e-06,1.448326e-06,1.410743e-06,1.374105e-06,1.338388e-06,1.303572e-06,1.269634e-06,1.236552e-06,1.204306e-06,1.172875e-06,1.142240e-06,1.112380e-06,1.083278e-06,1.054914e-06,1.027270e-06,1.000328e-06,9.740726e-07,9.484853e-07,9.235500e-07,8.992507e-07,8.755718e-07,8.524978e-07,8.300140e-07,8.081056e-07,7.867585e-07,7.659587e-07,7.456927e-07,7.259473e-07,7.067094e-07,6.879665e-07,6.697063e-07,6.519167e-07,6.345860e-07,6.177028e-07,6.012559e-07,5.852343e-07,5.696274e-07,5.544249e-07,5.396166e-07,5.251926e-07,5.111432e-07,4.974591e-07,4.841310e-07,4.711500e-07,4.585073e-07,4.461943e-07,4.342029e-07,4.225247e-07,4.111520e-07,4.000769e-07,3.892919e-07,3.787897e-07,3.685631e-07,3.586050e-07,3.489086e-07,3.394674e-07,3.302746e-07,3.213241e-07,3.126096e-07,3.041252e-07,2.958648e-07,2.878228e-07,2.799936e-07,2.723717e-07,2.649518e-07,2.577287e-07,2.506973e-07,2.438528e-07,2.371902e-07,2.307049e-07,2.243923e-07,2.182480e-07,2.122676e-07,2.064468e-07,2.007816e-07,1.952678e-07,1.899016e-07,1.846791e-07,1.795966e-07,1.746504e-07,1.698370e-07,1.651529e-07,1.605948e-07,1.561593e-07,1.518433e-07,1.476437e-07,1.435573e-07,1.395812e-07,1.357125e-07,1.319484e-07,1.282862e-07,1.247231e-07,1.212566e-07,1.178841e-07,1.146032e-07,1.114113e-07,1.083063e-07,1.052856e-07,1.023473e-07,9.948897e-08,9.670860e-08,9.400409e-08,9.137344e-08,8.881467e-08,8.632589e-08,8.390522e-08,8.155086e-08,7.926102e-08,7.703400e-08,7.486811e-08,7.276172e-08,7.071324e-08,6.872112e-08,6.678385e-08,6.489995e-08,6.306799e-08,6.128658e-08,5.955437e-08,5.787002e-08,5.623224e-08,5.463979e-08,5.309143e-08,5.158599e-08,5.012230e-08,4.869922e-08,4.731567e-08,4.597057e-08,4.466288e-08,4.339158e-08,4.215569e-08,4.095425e-08,3.978631e-08,3.865097e-08,3.754734e-08,3.647456e-08,3.543177e-08,3.441818e-08,3.343297e-08,3.247537e-08,3.154463e-08,3.064001e-08,2.976079e-08,2.890628e-08,2.807580e-08,2.726870e-08,2.648432e-08,2.572204e-08,2.498126e-08,2.426138e-08,2.356183e-08,2.288205e-08,2.222148e-08,2.157960e-08,2.095590e-08,2.034986e-08,1.976100e-08,1.918885e-08,1.863294e-08,1.809282e-08,1.756805e-08,1.705820e-08,1.656286e-08,1.608164e-08,1.561412e-08,1.515993e-08,1.471871e-08,1.429008e-08,1.387369e-08,1.346921e-08,1.307630e-08,1.269463e-08,1.232390e-08,1.196379e-08,1.161401e-08,1.127426e-08,1.094427e-08,1.062376e-08,1.031247e-08,1.001013e-08,9.716489e-09,9.431307e-09,9.154345e-09,8.885368e-09,8.624153e-09,8.370479e-09,8.124134e-09,7.884909e-09,7.652604e-09,7.427022e-09,7.207972e-09,6.995269e-09,6.788733e-09,6.588189e-09,6.393466e-09,6.204398e-09,6.020825e-09,5.842589e-09,5.669540e-09,5.501528e-09,5.338410e-09,5.180046e-09,5.026301e-09,4.877042e-09,4.732140e-09,4.591472e-09,4.454915e-09,4.322352e-09,4.193668e-09,4.068752e-09,3.947495e-09,3.829792e-09,3.715542e-09,3.604644e-09}, {7.761931e+04,1.178992e+04,2.611799e+03,1.291783e+03,8.913559e+02,6.032082e+02,3.889973e+02,2.500576e+02,1.694497e+02,1.259057e+02,1.026541e+02,8.904835e+01,7.930191e+01,7.074201e+01,6.242023e+01,5.421165e+01,4.630295e+01,3.893577e+01,3.229861e+01,2.649658e+01,2.155710e+01,1.744857e+01,1.410096e+01,1.142351e+01,9.317950e+00,7.687621e+00,6.443081e+00,5.505066e+00,4.805643e+00,4.288156e+00,3.906457e+00,3.623752e+00,3.411302e+00,3.247121e+00,3.114755e+00,3.002186e+00,2.900897e+00,2.805070e+00,2.710933e+00,2.616231e+00,2.519806e+00,2.421264e+00,2.320730e+00,2.218651e+00,2.115659e+00,2.012470e+00,1.909814e+00,1.808386e+00,1.708817e+00,1.611660e+00,1.517377e+00,1.426343e+00,1.338848e+00,1.255102e+00,1.175244e+00,1.099350e+00,1.027443e+00,9.594985e-01,8.954556e-01,8.352227e-01,7.786842e-01,7.257063e-01,6.761419e-01,6.298349e-01,5.866237e-01,5.463444e-01,5.088328e-01,4.739270e-01,4.414682e-01,4.113025e-01,3.832816e-01,3.572632e-01,3.331120e-01,3.106991e-01,2.899032e-01,2.706094e-01,2.527101e-01,2.361045e-01,2.206980e-01,2.064027e-01,1.931363e-01,1.808226e-01,1.693906e-01,1.587744e-01,1.489131e-01,1.397500e-01,1.312329e-01,1.233133e-01,1.159465e-01,1.090911e-01,1.027090e-01,9.676472e-02,9.122585e-02,8.606226e-02,8.124622e-02,7.675208e-02,7.255622e-02,6.863680e-02,6.497367e-02,6.154824e-02,5.834332e-02,5.534306e-02,5.253281e-02,4.989904e-02,4.742923e-02,4.511184e-02,4.293617e-02,4.089233e-02,3.897120e-02,3.716430e-02,3.546380e-02,3.386246e-02,3.235357e-02,3.093089e-02,2.958866e-02,2.832153e-02,2.712456e-02,2.599313e-02,2.492297e-02,2.391013e-02,2.295093e-02,2.204194e-02,2.117998e-02,2.036210e-02,1.958555e-02,1.884778e-02,1.814640e-02,1.747920e-02,1.684412e-02,1.623923e-02,1.566275e-02,1.511300e-02,1.458842e-02,1.408755e-02,1.360906e-02,1.315165e-02,1.271415e-02,1.229546e-02,1.189453e-02,1.151041e-02,1.114218e-02,1.078899e-02,1.045006e-02,1.012463e-02,9.812013e-03,9.511552e-03,9.222633e-03,8.944679e-03,8.677150e-03,8.419536e-03,8.171360e-03,7.932172e-03,7.701548e-03,7.479090e-03,7.264423e-03,7.057192e-03,6.857065e-03,6.663725e-03,6.476877e-03,6.296239e-03,6.121545e-03,5.952545e-03,5.789001e-03,5.630688e-03,5.477394e-03,5.328916e-03,5.185062e-03,5.045652e-03,4.910512e-03,4.779478e-03,4.652395e-03,4.529115e-03,4.409496e-03,4.293405e-03,4.180712e-03,4.071297e-03,3.965042e-03,3.861837e-03,3.761576e-03,3.664158e-03,3.569485e-03,3.477464e-03,3.388009e-03,3.301032e-03,3.216454e-03,3.134196e-03,3.054184e-03,2.976346e-03,2.900613e-03,2.826920e-03,2.755202e-03,2.685399e-03,2.617453e-03,2.551306e-03,2.486905e-03,2.424198e-03,2.363134e-03,2.303664e-03,2.245743e-03,2.189325e-03,2.134367e-03,2.080827e-03,2.028663e-03,1.977839e-03,1.928315e-03,1.880055e-03,1.833024e-03,1.787188e-03,1.742515e-03,1.698971e-03,1.656527e-03,1.615153e-03,1.574820e-03,1.535499e-03,1.497164e-03,1.459789e-03,1.423348e-03,1.387816e-03,1.353170e-03,1.319386e-03,1.286442e-03,1.254317e-03,1.222988e-03,1.192436e-03,1.162640e-03,1.133581e-03,1.105240e-03,1.077600e-03,1.050641e-03,1.024348e-03,9.987026e-04,9.736893e-04,9.492920e-04,9.254954e-04,9.022843e-04,8.796443e-04,8.575612e-04,8.360211e-04,8.150106e-04,7.945166e-04,7.745264e-04,7.550276e-04,7.360081e-04,7.174561e-04,6.993603e-04,6.817094e-04,6.644926e-04,6.476993e-04,6.313193e-04,6.153423e-04,5.997587e-04,5.845588e-04,5.697335e-04,5.552735e-04,5.411701e-04,5.274147e-04,5.139987e-04,5.009140e-04,4.881527e-04,4.757068e-04,4.635688e-04,4.517312e-04,4.401869e-04,4.289287e-04,4.179497e-04,4.072432e-04,3.968026e-04,3.866215e-04,3.766937e-04,3.670130e-04,3.575736e-04,3.483695e-04,3.393950e-04,3.306448e-04,3.221132e-04,3.137951e-04,3.056853e-04,2.977788e-04,2.900705e-04,2.825559e-04,2.752300e-04,2.680885e-04,2.611267e-04,2.543404e-04,2.477253e-04,2.412772e-04,2.349920e-04,2.288659e-04,2.228949e-04,2.170752e-04,2.114031e-04,2.058752e-04,2.004877e-04,1.952373e-04,1.901206e-04,1.851344e-04,1.802754e-04,1.755406e-04,1.709268e-04,1.664311e-04,1.620505e-04,1.577823e-04,1.536237e-04,1.495719e-04,1.456244e-04,1.417784e-04,1.380316e-04,1.343814e-04,1.308254e-04,1.273613e-04,1.239869e-04,1.206998e-04,1.174979e-04,1.143790e-04,1.113411e-04,1.083822e-04,1.055002e-04,1.026932e-04,9.995941e-05,9.729689e-05,9.470387e-05,9.217859e-05,8.971935e-05,8.732446e-05,8.499231e-05,8.272129e-05,8.050985e-05,7.835649e-05,7.625971e-05,7.421808e-05,7.223019e-05,7.029466e-05,6.841017e-05,6.657539e-05,6.478906e-05,6.304992e-05,6.135678e-05,5.970844e-05,5.810376e-05,5.654159e-05,5.502086e-05,5.354048e-05,5.209942e-05,5.069665e-05,4.933118e-05,4.800204e-05,4.670830e-05,4.544902e-05,4.422331e-05,4.303031e-05,4.186914e-05,4.073899e-05,3.963904e-05,3.856850e-05,3.752660e-05,3.651259e-05,3.552574e-05,3.456533e-05,3.363068e-05,3.272109e-05,3.183592e-05,3.097451e-05,3.013625e-05,2.932052e-05,2.852672e-05,2.775427e-05,2.700261e-05,2.627120e-05,2.555948e-05,2.486694e-05,2.419307e-05,2.353737e-05,2.289937e-05,2.227858e-05,2.167455e-05,2.108684e-05,2.051500e-05,1.995862e-05,1.941728e-05,1.889058e-05,1.837813e-05,1.787954e-05,1.739445e-05,1.692249e-05,1.646331e-05,1.601657e-05,1.558194e-05,1.515908e-05,1.474769e-05,1.434745e-05,1.395807e-05,1.357925e-05,1.321070e-05,1.285216e-05,1.250335e-05,1.216400e-05,1.183387e-05,1.151271e-05,1.120026e-05,1.089630e-05,1.060060e-05,1.031294e-05,1.003308e-05,9.760839e-06,9.495991e-06,9.238343e-06,8.987697e-06,8.743866e-06,8.506663e-06,8.275910e-06,8.051430e-06,7.833054e-06,7.620617e-06,7.413957e-06,7.212916e-06,7.017343e-06,6.827089e-06,6.642009e-06,6.461962e-06,6.286813e-06,6.116426e-06,5.950674e-06,5.789429e-06,5.632569e-06,5.479976e-06,5.331531e-06,5.187124e-06,5.046643e-06,4.909982e-06,4.777037e-06,4.647706e-06,4.521891e-06,4.399497e-06,4.280429e-06,4.164598e-06,4.051915e-06,3.942295e-06,3.835653e-06,3.731909e-06,3.630983e-06,3.532800e-06,3.437283e-06,3.344361e-06,3.253963e-06,3.166019e-06,3.080463e-06,2.997230e-06,2.916257e-06,2.837481e-06,2.760844e-06,2.686286e-06,2.613750e-06,2.543183e-06,2.474530e-06,2.407739e-06,2.342759e-06,2.279541e-06,2.218037e-06,2.158200e-06,2.099985e-06,2.043347e-06,1.988244e-06,1.934633e-06,1.882475e-06,1.831729e-06,1.782358e-06,1.734323e-06,1.687588e-06,1.642118e-06,1.597879e-06,1.554836e-06,1.512958e-06,1.472213e-06,1.432569e-06,1.393998e-06,1.356469e-06,1.319954e-06,1.284427e-06,1.249859e-06,1.216226e-06,1.183500e-06,1.151659e-06,1.120678e-06,1.090532e-06,1.061201e-06,1.032662e-06,1.004892e-06,9.778718e-07,9.515805e-07,9.259983e-07,9.011061e-07,8.768850e-07,8.533170e-07,8.303842e-07,8.080694e-07,7.863560e-07,7.652276e-07,7.446684e-07,7.246629e-07,7.051962e-07,6.862536e-07,6.678211e-07,6.498847e-07,6.324310e-07,6.154470e-07,5.989200e-07,5.828376e-07,5.671878e-07,5.519590e-07,5.371396e-07,5.227187e-07,5.086855e-07,4.950296e-07,4.817406e-07,4.688088e-07,4.562245e-07,4.439783e-07,4.320610e-07,4.204639e-07,4.091782e-07,3.981956e-07,3.875079e-07,3.771072e-07,3.669857e-07,3.571358e-07,3.475504e-07,3.382222e-07,3.291443e-07,3.203099e-07,3.117126e-07,3.033460e-07,2.952038e-07,2.872800e-07,2.795687e-07,2.720642e-07,2.647609e-07,2.576535e-07,2.507366e-07,2.440052e-07,2.374543e-07,2.310789e-07,2.248745e-07,2.188363e-07,2.129600e-07,2.072412e-07,2.016756e-07,1.962592e-07,1.909880e-07,1.858580e-07,1.808654e-07,1.760066e-07,1.712780e-07,1.666761e-07,1.621975e-07,1.578389e-07,1.535970e-07,1.494688e-07,1.454512e-07,1.415412e-07,1.377360e-07,1.340327e-07,1.304286e-07,1.269211e-07,1.235075e-07,1.201854e-07,1.169523e-07,1.138058e-07,1.107436e-07,1.077634e-07,1.048631e-07,1.020405e-07,9.929348e-08,9.662010e-08,9.401836e-08,9.148634e-08,8.902217e-08,8.662403e-08,8.429017e-08,8.201886e-08,7.980842e-08,7.765724e-08,7.556372e-08,7.352633e-08,7.154355e-08,6.961394e-08,6.773607e-08,6.590856e-08,6.413005e-08,6.239924e-08,6.071486e-08,5.907566e-08,5.748044e-08,5.592801e-08,5.441724e-08,5.294701e-08,5.151624e-08,5.012387e-08,4.876888e-08,4.745026e-08,4.616704e-08,4.491829e-08,4.370307e-08,4.252049e-08,4.136967e-08,4.024978e-08,3.915997e-08,3.809945e-08,3.706743e-08,3.606316e-08,3.508588e-08,3.413488e-08,3.320945e-08,3.230892e-08,3.143261e-08,3.057987e-08,2.975008e-08,2.894262e-08,2.815690e-08,2.739233e-08,2.664835e-08,2.592440e-08,2.521995e-08,2.453448e-08,2.386748e-08,2.321846e-08,2.258693e-08,2.197242e-08,2.137449e-08,2.079268e-08,2.022656e-08,1.967572e-08,1.913975e-08,1.861824e-08,1.811081e-08,1.761708e-08,1.713669e-08,1.666927e-08,1.621448e-08,1.577198e-08,1.534145e-08,1.492255e-08,1.451498e-08,1.411844e-08,1.373262e-08,1.335724e-08,1.299203e-08,1.263670e-08,1.229099e-08,1.195465e-08,1.162742e-08,1.130906e-08,1.099932e-08,1.069799e-08,1.040482e-08,1.011961e-08,9.842132e-09,9.572187e-09,9.309569e-09,9.054082e-09,8.805534e-09,8.563738e-09,8.328512e-09,8.099679e-09,7.877068e-09,7.660510e-09,7.449843e-09,7.244907e-09,7.045550e-09,6.851619e-09,6.662969e-09,6.479457e-09,6.300946e-09,6.127299e-09,5.958386e-09,5.794079e-09,5.634253e-09,5.478788e-09,5.327566e-09,5.180472e-09,5.037394e-09,4.898225e-09,4.762858e-09,4.631190e-09,4.503123e-09,4.378557e-09,4.257399e-09,4.139555e-09,4.024938e-09,3.913458e-09,3.805032e-09,3.699575e-09,3.597009e-09,3.497254e-09,3.400234e-09,3.305876e-09,3.214106e-09,3.124855e-09,3.038054e-09,2.953637e-09,2.871538e-09}, {8.266350e+04,1.209551e+04,2.670987e+03,1.355374e+03,9.359634e+02,6.280271e+02,4.032102e+02,2.606342e+02,1.794190e+02,1.358065e+02,1.120226e+02,9.727824e+01,8.599321e+01,7.576577e+01,6.586447e+01,5.629770e+01,4.731120e+01,3.915247e+01,3.198350e+01,2.586676e+01,2.078209e+01,1.665233e+01,1.336753e+01,1.080417e+01,8.838608e+00,7.355574e+00,6.252776e+00,5.442794e+00,4.853157e+00,4.425345e+00,4.113217e+00,3.881218e+00,3.702583e+00,3.557667e+00,3.432457e+00,3.317312e+00,3.205903e+00,3.094359e+00,2.980587e+00,2.863738e+00,2.743799e+00,2.621292e+00,2.497044e+00,2.372029e+00,2.247257e+00,2.123697e+00,2.002232e+00,1.883635e+00,1.768553e+00,1.657509e+00,1.550905e+00,1.449033e+00,1.352083e+00,1.260159e+00,1.173292e+00,1.091449e+00,1.014544e+00,9.424545e-01,8.750226e-01,8.120684e-01,7.533947e-01,6.987932e-01,6.480494e-01,6.009465e-01,5.572686e-01,5.168035e-01,4.793442e-01,4.446907e-01,4.126513e-01,3.830430e-01,3.556919e-01,3.304338e-01,3.071141e-01,2.855876e-01,2.657186e-01,2.473801e-01,2.304543e-01,2.148312e-01,2.004090e-01,1.870933e-01,1.747968e-01,1.634386e-01,1.529443e-01,1.432452e-01,1.342777e-01,1.259835e-01,1.183088e-01,1.112042e-01,1.046241e-01,9.852676e-02,9.287363e-02,8.762938e-02,8.276156e-02,7.824032e-02,7.403825e-02,7.013019e-02,6.649302e-02,6.310549e-02,5.994813e-02,5.700300e-02,5.425366e-02,5.168499e-02,4.928312e-02,4.703528e-02,4.492975e-02,4.295576e-02,4.110340e-02,3.936358e-02,3.772792e-02,3.618873e-02,3.473892e-02,3.337198e-02,3.208192e-02,3.086322e-02,2.971079e-02,2.861997e-02,2.758644e-02,2.660624e-02,2.567570e-02,2.479145e-02,2.395038e-02,2.314963e-02,2.238654e-02,2.165866e-02,2.096375e-02,2.029971e-02,1.966462e-02,1.905670e-02,1.847429e-02,1.791587e-02,1.738003e-02,1.686545e-02,1.637092e-02,1.589533e-02,1.543761e-02,1.499681e-02,1.457201e-02,1.416239e-02,1.376717e-02,1.338560e-02,1.301703e-02,1.266081e-02,1.231637e-02,1.198314e-02,1.166061e-02,1.134831e-02,1.104578e-02,1.075260e-02,1.046837e-02,1.019272e-02,9.925303e-03,9.665787e-03,9.413861e-03,9.169234e-03,8.931629e-03,8.700785e-03,8.476456e-03,8.258409e-03,8.046421e-03,7.840283e-03,7.639796e-03,7.444770e-03,7.255024e-03,7.070387e-03,6.890694e-03,6.715791e-03,6.545526e-03,6.379757e-03,6.218348e-03,6.061168e-03,5.908090e-03,5.758995e-03,5.613766e-03,5.472293e-03,5.334468e-03,5.200187e-03,5.069353e-03,4.941869e-03,4.817643e-03,4.696585e-03,4.578610e-03,4.463635e-03,4.351578e-03,4.242362e-03,4.135912e-03,4.032155e-03,3.931019e-03,3.832437e-03,3.736341e-03,3.642668e-03,3.551354e-03,3.462339e-03,3.375564e-03,3.290971e-03,3.208504e-03,3.128110e-03,3.049736e-03,2.973330e-03,2.898843e-03,2.826225e-03,2.755431e-03,2.686413e-03,2.619127e-03,2.553530e-03,2.489579e-03,2.427232e-03,2.366450e-03,2.307194e-03,2.249424e-03,2.193104e-03,2.138198e-03,2.084670e-03,2.032486e-03,1.981612e-03,1.932015e-03,1.883663e-03,1.836526e-03,1.790573e-03,1.745774e-03,1.702101e-03,1.659525e-03,1.618019e-03,1.577556e-03,1.538110e-03,1.499656e-03,1.462169e-03,1.425624e-03,1.389999e-03,1.355269e-03,1.321413e-03,1.288409e-03,1.256235e-03,1.224870e-03,1.194295e-03,1.164489e-03,1.135434e-03,1.107109e-03,1.079498e-03,1.052582e-03,1.026343e-03,1.000765e-03,9.758303e-04,9.515236e-04,9.278289e-04,9.047306e-04,8.822138e-04,8.602639e-04,8.388665e-04,8.180078e-04,7.976741e-04,7.778521e-04,7.585291e-04,7.396923e-04,7.213296e-04,7.034289e-04,6.859786e-04,6.689672e-04,6.523838e-04,6.362174e-04,6.204576e-04,6.050940e-04,5.901166e-04,5.755157e-04,5.612817e-04,5.474054e-04,5.338776e-04,5.206896e-04,5.078327e-04,4.952986e-04,4.830790e-04,4.711661e-04,4.595520e-04,4.482292e-04,4.371903e-04,4.264281e-04,4.159356e-04,4.057059e-04,3.957324e-04,3.860086e-04,3.765281e-04,3.672849e-04,3.582728e-04,3.494860e-04,3.409188e-04,3.325657e-04,3.244212e-04,3.164800e-04,3.087370e-04,3.011871e-04,2.938255e-04,2.866474e-04,2.796481e-04,2.728231e-04,2.661680e-04,2.596786e-04,2.533505e-04,2.471797e-04,2.411622e-04,2.352943e-04,2.295719e-04,2.239916e-04,2.185497e-04,2.132426e-04,2.080671e-04,2.030197e-04,1.980973e-04,1.932966e-04,1.886146e-04,1.840483e-04,1.795948e-04,1.752513e-04,1.710149e-04,1.668830e-04,1.628529e-04,1.589221e-04,1.550880e-04,1.513483e-04,1.477006e-04,1.441425e-04,1.406718e-04,1.372863e-04,1.339839e-04,1.307624e-04,1.276199e-04,1.245543e-04,1.215638e-04,1.186465e-04,1.158004e-04,1.130239e-04,1.103152e-04,1.076726e-04,1.050944e-04,1.025791e-04,1.001251e-04,9.773079e-05,9.539474e-05,9.311549e-05,9.089163e-05,8.872178e-05,8.660459e-05,8.453875e-05,8.252299e-05,8.055606e-05,7.863676e-05,7.676389e-05,7.493632e-05,7.315291e-05,7.141257e-05,6.971425e-05,6.805689e-05,6.643949e-05,6.486106e-05,6.332064e-05,6.181729e-05,6.035010e-05,5.891818e-05,5.752065e-05,5.615668e-05,5.482544e-05,5.352612e-05,5.225795e-05,5.102015e-05,4.981198e-05,4.863273e-05,4.748167e-05,4.635813e-05,4.526142e-05,4.419090e-05,4.314592e-05,4.212586e-05,4.113012e-05,4.015809e-05,3.920922e-05,3.828292e-05,3.737866e-05,3.649590e-05,3.563412e-05,3.479280e-05,3.397146e-05,3.316961e-05,3.238677e-05,3.162250e-05,3.087633e-05,3.014784e-05,2.943660e-05,2.874218e-05,2.806419e-05,2.740224e-05,2.675593e-05,2.612489e-05,2.550875e-05,2.490716e-05,2.431976e-05,2.374622e-05,2.318620e-05,2.263939e-05,2.210546e-05,2.158411e-05,2.107504e-05,2.057795e-05,2.009256e-05,1.961859e-05,1.915576e-05,1.870382e-05,1.826251e-05,1.783156e-05,1.741074e-05,1.699981e-05,1.659852e-05,1.620666e-05,1.582400e-05,1.545031e-05,1.508540e-05,1.472904e-05,1.438104e-05,1.404121e-05,1.370934e-05,1.338526e-05,1.306877e-05,1.275970e-05,1.245787e-05,1.216311e-05,1.187527e-05,1.159416e-05,1.131964e-05,1.105155e-05,1.078974e-05,1.053407e-05,1.028438e-05,1.004054e-05,9.802412e-06,9.569861e-06,9.342756e-06,9.120971e-06,8.904380e-06,8.692863e-06,8.486300e-06,8.284575e-06,8.087577e-06,7.895194e-06,7.707319e-06,7.523846e-06,7.344672e-06,7.169698e-06,6.998826e-06,6.831959e-06,6.669005e-06,6.509873e-06,6.354472e-06,6.202717e-06,6.054523e-06,5.909806e-06,5.768486e-06,5.630484e-06,5.495722e-06,5.364126e-06,5.235621e-06,5.110135e-06,4.987599e-06,4.867944e-06,4.751103e-06,4.637010e-06,4.525601e-06,4.416815e-06,4.310590e-06,4.206867e-06,4.105588e-06,4.006695e-06,3.910133e-06,3.815849e-06,3.723789e-06,3.633902e-06,3.546137e-06,3.460444e-06,3.376776e-06,3.295086e-06,3.215327e-06,3.137455e-06,3.061425e-06,2.987196e-06,2.914724e-06,2.843970e-06,2.774893e-06,2.707454e-06,2.641616e-06,2.577340e-06,2.514591e-06,2.453332e-06,2.393530e-06,2.335150e-06,2.278159e-06,2.222525e-06,2.168216e-06,2.115202e-06,2.063451e-06,2.012935e-06,1.963625e-06,1.915492e-06,1.868509e-06,1.822650e-06,1.777888e-06,1.734196e-06,1.691552e-06,1.649929e-06,1.609303e-06,1.569653e-06,1.530954e-06,1.493184e-06,1.456322e-06,1.420347e-06,1.385237e-06,1.350972e-06,1.317533e-06,1.284899e-06,1.253053e-06,1.221975e-06,1.191648e-06,1.162053e-06,1.133174e-06,1.104994e-06,1.077495e-06,1.050663e-06,1.024482e-06,9.989353e-07,9.740089e-07,9.496878e-07,9.259578e-07,9.028050e-07,8.802156e-07,8.581763e-07,8.366741e-07,8.156961e-07,7.952301e-07,7.752639e-07,7.557854e-07,7.367833e-07,7.182461e-07,7.001628e-07,6.825226e-07,6.653149e-07,6.485294e-07,6.321560e-07,6.161849e-07,6.006065e-07,5.854114e-07,5.705904e-07,5.561346e-07,5.420353e-07,5.282838e-07,5.148719e-07,5.017913e-07,4.890342e-07,4.765928e-07,4.644595e-07,4.526268e-07,4.410875e-07,4.298346e-07,4.188612e-07,4.081604e-07,3.977258e-07,3.875509e-07,3.776294e-07,3.679551e-07,3.585222e-07,3.493247e-07,3.403569e-07,3.316133e-07,3.230884e-07,3.147769e-07,3.066736e-07,2.987734e-07,2.910715e-07,2.835629e-07,2.762429e-07,2.691070e-07,2.621507e-07,2.553695e-07,2.487592e-07,2.423155e-07,2.360345e-07,2.299120e-07,2.239443e-07,2.181276e-07,2.124580e-07,2.069320e-07,2.015461e-07,1.962968e-07,1.911808e-07,1.861947e-07,1.813353e-07,1.765996e-07,1.719844e-07,1.674868e-07,1.631038e-07,1.588327e-07,1.546706e-07,1.506149e-07,1.466628e-07,1.428119e-07,1.390596e-07,1.354035e-07,1.318410e-07,1.283701e-07,1.249882e-07,1.216933e-07,1.184830e-07,1.153555e-07,1.123084e-07,1.093399e-07,1.064479e-07,1.036306e-07,1.008861e-07,9.821249e-08,9.560804e-08,9.307100e-08,9.059968e-08,8.819242e-08,8.584760e-08,8.356364e-08,8.133901e-08,7.917222e-08,7.706178e-08,7.500629e-08,7.300433e-08,7.105457e-08,6.915567e-08,6.730634e-08,6.550531e-08,6.375137e-08,6.204331e-08,6.037997e-08,5.876020e-08,5.718289e-08,5.564695e-08,5.415134e-08,5.269501e-08,5.127696e-08,4.989622e-08,4.855182e-08,4.724283e-08,4.596835e-08,4.472749e-08,4.351937e-08,4.234317e-08,4.119806e-08,4.008323e-08,3.899791e-08,3.794133e-08,3.691276e-08,3.591146e-08,3.493674e-08,3.398790e-08,3.306427e-08,3.216521e-08,3.129007e-08,3.043823e-08,2.960909e-08,2.880205e-08,2.801654e-08,2.725201e-08,2.650790e-08,2.578368e-08,2.507884e-08,2.439286e-08,2.372525e-08,2.307554e-08,2.244325e-08,2.182794e-08,2.122914e-08,2.064643e-08,2.007940e-08,1.952762e-08,1.899069e-08,1.846823e-08,1.795986e-08,1.746519e-08,1.698388e-08,1.651557e-08,1.605991e-08,1.561658e-08,1.518524e-08,1.476558e-08,1.435729e-08,1.396007e-08,1.357362e-08,1.319767e-08,1.283192e-08,1.247611e-08,1.212998e-08,1.179327e-08,1.146573e-08,1.114711e-08,1.083717e-08,1.053569e-08,1.024243e-08,9.957190e-09,9.679739e-09,9.409875e-09,9.147393e-09,8.892097e-09}, {8.789902e+04,1.239892e+04,2.728495e+03,1.412766e+03,9.706171e+02,6.423607e+02,4.081308e+02,2.635565e+02,1.832551e+02,1.408248e+02,1.174976e+02,1.023973e+02,9.020592e+01,7.883532e+01,6.779842e+01,5.725244e+01,4.751005e+01,3.882877e+01,3.134711e+01,2.508838e+01,1.998926e+01,1.593220e+01,1.277307e+01,1.036141e+01,8.553706e+00,7.221013e+00,6.252458e+00,5.555972e+00,5.057331e+00,4.698278e+00,4.434244e+00,4.232010e+00,4.067510e+00,3.923874e+00,3.789761e+00,3.657976e+00,3.524347e+00,3.386851e+00,3.244928e+00,3.098973e+00,2.949950e+00,2.799123e+00,2.647863e+00,2.497524e+00,2.349354e+00,2.204455e+00,2.063758e+00,1.928016e+00,1.797812e+00,1.673569e+00,1.555566e+00,1.443960e+00,1.338801e+00,1.240048e+00,1.147591e+00,1.061262e+00,9.808506e-01,9.061116e-01,8.367791e-01,7.725724e-01,7.132032e-01,6.583814e-01,6.078192e-01,5.612345e-01,5.183537e-01,4.789138e-01,4.426634e-01,4.093636e-01,3.787890e-01,3.507273e-01,3.249798e-01,3.013608e-01,2.796974e-01,2.598290e-01,2.416069e-01,2.248933e-01,2.095614e-01,1.954939e-01,1.825833e-01,1.707305e-01,1.598446e-01,1.498421e-01,1.406468e-01,1.321886e-01,1.244036e-01,1.172331e-01,1.106239e-01,1.045270e-01,9.889781e-02,9.369572e-02,8.888360e-02,8.442762e-02,8.029696e-02,7.646350e-02,7.290164e-02,6.958806e-02,6.650153e-02,6.362271e-02,6.093398e-02,5.841934e-02,5.606417e-02,5.385522e-02,5.178039e-02,4.982869e-02,4.799011e-02,4.625554e-02,4.461668e-02,4.306600e-02,4.159662e-02,4.020229e-02,3.887732e-02,3.761651e-02,3.641515e-02,3.526893e-02,3.417392e-02,3.312655e-02,3.212355e-02,3.116195e-02,3.023903e-02,2.935230e-02,2.849950e-02,2.767854e-02,2.688752e-02,2.612471e-02,2.538851e-02,2.467744e-02,2.399017e-02,2.332546e-02,2.268217e-02,2.205924e-02,2.145571e-02,2.087068e-02,2.030331e-02,1.975285e-02,1.921857e-02,1.869981e-02,1.819596e-02,1.770643e-02,1.723068e-02,1.676821e-02,1.631854e-02,1.588123e-02,1.545586e-02,1.504203e-02,1.463936e-02,1.424751e-02,1.386613e-02,1.349491e-02,1.313353e-02,1.278172e-02,1.243919e-02,1.210568e-02,1.178093e-02,1.146470e-02,1.115675e-02,1.085686e-02,1.056482e-02,1.028041e-02,1.000343e-02,9.733680e-03,9.470980e-03,9.215145e-03,8.965995e-03,8.723359e-03,8.487070e-03,8.256966e-03,8.032889e-03,7.814688e-03,7.602211e-03,7.395316e-03,7.193860e-03,6.997706e-03,6.806721e-03,6.620774e-03,6.439738e-03,6.263489e-03,6.091906e-03,5.924872e-03,5.762271e-03,5.603992e-03,5.449925e-03,5.299963e-03,5.154002e-03,5.011941e-03,4.873680e-03,4.739122e-03,4.608173e-03,4.480741e-03,4.356736e-03,4.236070e-03,4.118657e-03,4.004413e-03,3.893257e-03,3.785109e-03,3.679891e-03,3.577528e-03,3.477945e-03,3.381070e-03,3.286832e-03,3.195163e-03,3.105995e-03,3.019264e-03,2.934904e-03,2.852855e-03,2.773054e-03,2.695443e-03,2.619964e-03,2.546560e-03,2.475176e-03,2.405760e-03,2.338258e-03,2.272619e-03,2.208794e-03,2.146735e-03,2.086393e-03,2.027724e-03,1.970682e-03,1.915223e-03,1.861305e-03,1.808886e-03,1.757926e-03,1.708386e-03,1.660226e-03,1.613409e-03,1.567900e-03,1.523661e-03,1.480660e-03,1.438862e-03,1.398233e-03,1.358743e-03,1.320360e-03,1.283054e-03,1.246795e-03,1.211554e-03,1.177304e-03,1.144017e-03,1.111666e-03,1.080226e-03,1.049671e-03,1.019978e-03,9.911216e-04,9.630793e-04,9.358283e-04,9.093468e-04,8.836133e-04,8.586069e-04,8.343075e-04,8.106953e-04,7.877512e-04,7.654564e-04,7.437928e-04,7.227428e-04,7.022892e-04,6.824152e-04,6.631045e-04,6.443415e-04,6.261106e-04,6.083969e-04,5.911859e-04,5.744633e-04,5.582155e-04,5.424291e-04,5.270910e-04,5.121885e-04,4.977094e-04,4.836417e-04,4.699737e-04,4.566941e-04,4.437920e-04,4.312566e-04,4.190776e-04,4.072448e-04,3.957483e-04,3.845788e-04,3.737268e-04,3.631833e-04,3.529396e-04,3.429871e-04,3.333176e-04,3.239230e-04,3.147955e-04,3.059274e-04,2.973114e-04,2.889403e-04,2.808071e-04,2.729050e-04,2.652274e-04,2.577679e-04,2.505204e-04,2.434787e-04,2.366370e-04,2.299895e-04,2.235307e-04,2.172553e-04,2.111579e-04,2.052336e-04,1.994773e-04,1.938842e-04,1.884497e-04,1.831693e-04,1.780386e-04,1.730532e-04,1.682090e-04,1.635020e-04,1.589283e-04,1.544840e-04,1.501654e-04,1.459690e-04,1.418913e-04,1.379289e-04,1.340784e-04,1.303368e-04,1.267008e-04,1.231674e-04,1.197338e-04,1.163970e-04,1.131544e-04,1.100032e-04,1.069408e-04,1.039647e-04,1.010724e-04,9.826148e-05,9.552972e-05,9.287480e-05,9.029454e-05,8.778682e-05,8.534956e-05,8.298076e-05,8.067848e-05,7.844080e-05,7.626591e-05,7.415201e-05,7.209737e-05,7.010030e-05,6.815917e-05,6.627239e-05,6.443841e-05,6.265574e-05,6.092292e-05,5.923854e-05,5.760122e-05,5.600962e-05,5.446246e-05,5.295848e-05,5.149645e-05,5.007518e-05,4.869352e-05,4.735036e-05,4.604460e-05,4.477518e-05,4.354109e-05,4.234132e-05,4.117491e-05,4.004091e-05,3.893842e-05,3.786654e-05,3.682440e-05,3.581119e-05,3.482607e-05,3.386827e-05,3.293700e-05,3.203154e-05,3.115115e-05,3.029512e-05,2.946278e-05,2.865347e-05,2.786653e-05,2.710133e-05,2.635728e-05,2.563378e-05,2.493025e-05,2.424614e-05,2.358089e-05,2.293400e-05,2.230494e-05,2.169321e-05,2.109834e-05,2.051985e-05,1.995728e-05,1.941020e-05,1.887817e-05,1.836078e-05,1.785761e-05,1.736827e-05,1.689238e-05,1.642956e-05,1.597945e-05,1.554170e-05,1.511596e-05,1.470191e-05,1.429922e-05,1.390757e-05,1.352666e-05,1.315619e-05,1.279587e-05,1.244542e-05,1.210458e-05,1.177307e-05,1.145063e-05,1.113703e-05,1.083200e-05,1.053532e-05,1.024676e-05,9.966094e-06,9.693101e-06,9.427573e-06,9.169304e-06,8.918095e-06,8.673751e-06,8.436084e-06,8.204910e-06,7.980052e-06,7.761336e-06,7.548594e-06,7.341661e-06,7.140378e-06,6.944592e-06,6.754150e-06,6.568907e-06,6.388720e-06,6.213452e-06,6.042967e-06,5.877134e-06,5.715827e-06,5.558922e-06,5.406298e-06,5.257839e-06,5.113430e-06,4.972962e-06,4.836326e-06,4.703419e-06,4.574138e-06,4.448384e-06,4.326061e-06,4.207076e-06,4.091338e-06,3.978759e-06,3.869251e-06,3.762732e-06,3.659120e-06,3.558336e-06,3.460304e-06,3.364947e-06,3.272193e-06,3.181972e-06,3.094215e-06,3.008854e-06,2.925825e-06,2.845063e-06,2.766508e-06,2.690099e-06,2.615778e-06,2.543488e-06,2.473174e-06,2.404782e-06,2.338261e-06,2.273558e-06,2.210625e-06,2.149414e-06,2.089878e-06,2.031971e-06,1.975649e-06,1.920869e-06,1.867589e-06,1.815769e-06,1.765368e-06,1.716348e-06,1.668672e-06,1.622303e-06,1.577206e-06,1.533345e-06,1.490688e-06,1.449201e-06,1.408854e-06,1.369614e-06,1.331452e-06,1.294338e-06,1.258245e-06,1.223143e-06,1.189007e-06,1.155810e-06,1.123526e-06,1.092130e-06,1.061599e-06,1.031909e-06,1.003037e-06,9.749608e-07,9.476584e-07,9.211089e-07,8.952918e-07,8.701873e-07,8.457758e-07,8.220384e-07,7.989569e-07,7.765133e-07,7.546902e-07,7.334706e-07,7.128382e-07,6.927769e-07,6.732710e-07,6.543055e-07,6.358656e-07,6.179369e-07,6.005054e-07,5.835576e-07,5.670802e-07,5.510603e-07,5.354855e-07,5.203435e-07,5.056226e-07,4.913111e-07,4.773978e-07,4.638720e-07,4.507228e-07,4.379400e-07,4.255136e-07,4.134338e-07,4.016910e-07,3.902760e-07,3.791798e-07,3.683936e-07,3.579090e-07,3.477175e-07,3.378113e-07,3.281823e-07,3.188230e-07,3.097259e-07,3.008839e-07,2.922898e-07,2.839369e-07,2.758185e-07,2.679282e-07,2.602595e-07,2.528065e-07,2.455631e-07,2.385236e-07,2.316822e-07,2.250336e-07,2.185724e-07,2.122935e-07,2.061916e-07,2.002620e-07,1.944999e-07,1.889007e-07,1.834597e-07,1.781726e-07,1.730352e-07,1.680432e-07,1.631927e-07,1.584796e-07,1.539002e-07,1.494508e-07,1.451277e-07,1.409274e-07,1.368465e-07,1.328816e-07,1.290295e-07,1.252871e-07,1.216513e-07,1.181191e-07,1.146876e-07,1.113540e-07,1.081155e-07,1.049695e-07,1.019135e-07,9.894475e-08,9.606097e-08,9.325973e-08,9.053871e-08,8.789565e-08,8.532836e-08,8.283471e-08,8.041263e-08,7.806010e-08,7.577516e-08,7.355591e-08,7.140049e-08,6.930710e-08,6.727398e-08,6.529945e-08,6.338183e-08,6.151953e-08,5.971096e-08,5.795462e-08,5.624902e-08,5.459273e-08,5.298434e-08,5.142249e-08,4.990587e-08,4.843319e-08,4.700320e-08,4.561468e-08,4.426646e-08,4.295738e-08,4.168634e-08,4.045224e-08,3.925404e-08,3.809070e-08,3.696124e-08,3.586468e-08,3.480009e-08,3.376655e-08,3.276317e-08,3.178909e-08,3.084346e-08,2.992548e-08,2.903435e-08,2.816929e-08,2.732956e-08,2.651444e-08,2.572321e-08,2.495518e-08,2.420969e-08,2.348609e-08,2.278375e-08,2.210206e-08,2.144041e-08,2.079823e-08,2.017497e-08,1.957006e-08,1.898298e-08,1.841322e-08,1.786027e-08,1.732365e-08,1.680288e-08,1.629750e-08,1.580707e-08,1.533115e-08,1.486932e-08,1.442117e-08,1.398631e-08,1.356434e-08,1.315489e-08,1.275760e-08,1.237211e-08,1.199807e-08,1.163516e-08,1.128305e-08,1.094141e-08,1.060996e-08,1.028838e-08,9.976390e-09,9.673708e-09,9.380061e-09,9.095184e-09,8.818821e-09,8.550720e-09,8.290639e-09,8.038342e-09,7.793601e-09,7.556193e-09,7.325902e-09,7.102519e-09,6.885840e-09,6.675667e-09,6.471808e-09,6.274077e-09,6.082293e-09,5.896279e-09,5.715866e-09,5.540888e-09,5.371183e-09,5.206595e-09,5.046973e-09,4.892169e-09,4.742041e-09,4.596449e-09,4.455259e-09,4.318340e-09,4.185565e-09,4.056810e-09,3.931956e-09,3.810887e-09,3.693489e-09,3.579654e-09,3.469274e-09,3.362248e-09,3.258474e-09,3.157855e-09,3.060297e-09,2.965709e-09,2.874001e-09,2.785087e-09,2.698883e-09,2.615309e-09,2.534285e-09,2.455734e-09,2.379583e-09,2.305759e-09,2.234193e-09,2.164815e-09,2.097561e-09,2.032366e-09,1.969169e-09,1.907909e-09,1.848527e-09,1.790968e-09,1.735175e-09,1.681096e-09,1.628679e-09}, {9.337120e+04,1.269501e+04,2.789494e+03,1.472318e+03,1.004819e+03,6.557183e+02,4.126468e+02,2.667103e+02,1.876275e+02,1.463601e+02,1.232885e+02,1.075852e+02,9.427870e+01,8.162949e+01,6.939719e+01,5.787367e+01,4.741906e+01,3.828230e+01,3.056349e+01,2.423612e+01,1.918700e+01,1.525473e+01,1.225985e+01,1.002540e+01,8.389419e+00,7.211231e+00,6.373458e+00,5.781405e+00,5.360918e+00,5.055558e+00,4.823581e+00,4.635076e+00,4.469380e+00,4.312888e+00,4.157226e+00,3.997793e+00,3.832618e+00,3.661482e+00,3.485265e+00,3.305473e+00,3.123898e+00,2.942393e+00,2.762719e+00,2.586459e+00,2.414969e+00,2.249358e+00,2.090496e+00,1.939023e+00,1.795372e+00,1.659796e+00,1.532395e+00,1.413138e+00,1.301892e+00,1.198441e+00,1.102505e+00,1.013761e+00,9.318512e-01,8.563998e-01,7.870204e-01,7.233243e-01,6.649273e-01,6.114539e-01,5.625413e-01,5.178418e-01,4.770250e-01,4.397783e-01,4.058081e-01,3.748395e-01,3.466166e-01,3.209015e-01,2.974742e-01,2.761315e-01,2.566864e-01,2.389671e-01,2.228159e-01,2.080887e-01,1.946536e-01,1.823904e-01,1.711894e-01,1.609509e-01,1.515842e-01,1.430069e-01,1.351441e-01,1.279280e-01,1.212972e-01,1.151961e-01,1.095743e-01,1.043862e-01,9.959071e-02,9.515065e-02,9.103245e-02,8.720582e-02,8.364343e-02,8.032064e-02,7.721525e-02,7.430725e-02,7.157860e-02,6.901308e-02,6.659607e-02,6.431443e-02,6.215631e-02,6.011107e-02,5.816912e-02,5.632186e-02,5.456154e-02,5.288117e-02,5.127450e-02,4.973587e-02,4.826022e-02,4.684296e-02,4.548000e-02,4.416761e-02,4.290246e-02,4.168153e-02,4.050211e-02,3.936174e-02,3.825819e-02,3.718944e-02,3.615368e-02,3.514925e-02,3.417463e-02,3.322846e-02,3.230947e-02,3.141651e-02,3.054854e-02,2.970457e-02,2.888372e-02,2.808516e-02,2.730811e-02,2.655187e-02,2.581577e-02,2.509917e-02,2.440151e-02,2.372221e-02,2.306077e-02,2.241668e-02,2.178947e-02,2.117870e-02,2.058393e-02,2.000475e-02,1.944078e-02,1.889162e-02,1.835690e-02,1.783628e-02,1.732941e-02,1.683596e-02,1.635559e-02,1.588800e-02,1.543287e-02,1.498991e-02,1.455882e-02,1.413931e-02,1.373112e-02,1.333396e-02,1.294756e-02,1.257167e-02,1.220603e-02,1.185039e-02,1.150449e-02,1.116812e-02,1.084101e-02,1.052296e-02,1.021372e-02,9.913089e-03,9.620836e-03,9.336754e-03,9.060634e-03,8.792273e-03,8.531473e-03,8.278038e-03,8.031778e-03,7.792506e-03,7.560041e-03,7.334203e-03,7.114817e-03,6.901715e-03,6.694728e-03,6.493693e-03,6.298453e-03,6.108850e-03,5.924734e-03,5.745955e-03,5.572369e-03,5.403835e-03,5.240214e-03,5.081372e-03,4.927177e-03,4.777502e-03,4.632221e-03,4.491212e-03,4.354356e-03,4.221539e-03,4.092645e-03,3.967567e-03,3.846195e-03,3.728426e-03,3.614158e-03,3.503291e-03,3.395730e-03,3.291379e-03,3.190148e-03,3.091947e-03,2.996689e-03,2.904289e-03,2.814666e-03,2.727740e-03,2.643432e-03,2.561667e-03,2.482371e-03,2.405472e-03,2.330900e-03,2.258588e-03,2.188469e-03,2.120480e-03,2.054558e-03,1.990642e-03,1.928673e-03,1.868595e-03,1.810350e-03,1.753885e-03,1.699148e-03,1.646086e-03,1.594651e-03,1.544794e-03,1.496468e-03,1.449628e-03,1.404228e-03,1.360226e-03,1.317581e-03,1.276251e-03,1.236196e-03,1.197380e-03,1.159764e-03,1.123312e-03,1.087989e-03,1.053762e-03,1.020596e-03,9.884599e-04,9.573225e-04,9.271532e-04,8.979228e-04,8.696027e-04,8.421652e-04,8.155832e-04,7.898309e-04,7.648827e-04,7.407142e-04,7.173013e-04,6.946211e-04,6.726509e-04,6.513691e-04,6.307544e-04,6.107863e-04,5.914449e-04,5.727109e-04,5.545655e-04,5.369906e-04,5.199685e-04,5.034821e-04,4.875148e-04,4.720506e-04,4.570737e-04,4.425692e-04,4.285222e-04,4.149187e-04,4.017447e-04,3.889869e-04,3.766323e-04,3.646683e-04,3.530828e-04,3.418639e-04,3.310001e-04,3.204804e-04,3.102939e-04,3.004302e-04,2.908792e-04,2.816310e-04,2.726763e-04,2.640056e-04,2.556102e-04,2.474813e-04,2.396106e-04,2.319899e-04,2.246113e-04,2.174673e-04,2.105503e-04,2.038533e-04,1.973693e-04,1.910915e-04,1.850135e-04,1.791288e-04,1.734315e-04,1.679155e-04,1.625752e-04,1.574049e-04,1.523992e-04,1.475530e-04,1.428611e-04,1.383187e-04,1.339211e-04,1.296635e-04,1.255416e-04,1.215511e-04,1.176878e-04,1.139476e-04,1.103266e-04,1.068210e-04,1.034272e-04,1.001416e-04,9.696067e-05,9.388116e-05,9.089981e-05,8.801350e-05,8.521920e-05,8.251397e-05,7.989496e-05,7.735944e-05,7.490472e-05,7.252824e-05,7.022749e-05,6.800006e-05,6.584360e-05,6.375585e-05,6.173462e-05,5.977777e-05,5.788326e-05,5.604908e-05,5.427332e-05,5.255411e-05,5.088963e-05,4.927814e-05,4.771795e-05,4.620742e-05,4.474495e-05,4.332902e-05,4.195813e-05,4.063085e-05,3.934578e-05,3.810157e-05,3.689693e-05,3.573057e-05,3.460129e-05,3.350789e-05,3.244923e-05,3.142420e-05,3.043173e-05,2.947077e-05,2.854032e-05,2.763940e-05,2.676708e-05,2.592243e-05,2.510458e-05,2.431267e-05,2.354587e-05,2.280338e-05,2.208443e-05,2.138826e-05,2.071414e-05,2.006138e-05,1.942930e-05,1.881723e-05,1.822453e-05,1.765060e-05,1.709482e-05,1.655663e-05,1.603546e-05,1.553077e-05,1.504204e-05,1.456875e-05,1.411043e-05,1.366658e-05,1.323675e-05,1.282050e-05,1.241739e-05,1.202701e-05,1.164894e-05,1.128281e-05,1.092822e-05,1.058482e-05,1.025225e-05,9.930168e-06,9.618234e-06,9.316130e-06,9.023545e-06,8.740177e-06,8.465734e-06,8.199932e-06,7.942498e-06,7.693167e-06,7.451683e-06,7.217796e-06,6.991267e-06,6.771863e-06,6.559358e-06,6.353535e-06,6.154181e-06,5.961093e-06,5.774073e-06,5.592928e-06,5.417473e-06,5.247530e-06,5.082923e-06,4.923484e-06,4.769050e-06,4.619464e-06,4.474572e-06,4.334227e-06,4.198285e-06,4.066608e-06,3.939061e-06,3.815513e-06,3.695840e-06,3.579919e-06,3.467633e-06,3.358866e-06,3.253508e-06,3.151452e-06,3.052594e-06,2.956834e-06,2.864073e-06,2.774219e-06,2.687179e-06,2.602866e-06,2.521193e-06,2.442078e-06,2.365441e-06,2.291203e-06,2.219290e-06,2.149628e-06,2.082147e-06,2.016779e-06,1.953457e-06,1.892118e-06,1.832698e-06,1.775138e-06,1.719380e-06,1.665368e-06,1.613045e-06,1.562361e-06,1.513263e-06,1.465701e-06,1.419629e-06,1.374998e-06,1.331764e-06,1.289884e-06,1.249314e-06,1.210014e-06,1.171945e-06,1.135067e-06,1.099343e-06,1.064739e-06,1.031217e-06,9.987450e-07,9.672898e-07,9.368196e-07,9.073036e-07,8.787119e-07,8.510158e-07,8.241872e-07,7.981991e-07,7.730251e-07,7.486399e-07,7.250188e-07,7.021380e-07,6.799742e-07,6.585052e-07,6.377093e-07,6.175654e-07,5.980531e-07,5.791528e-07,5.608453e-07,5.431121e-07,5.259352e-07,5.092974e-07,4.931817e-07,4.775719e-07,4.624522e-07,4.478072e-07,4.336222e-07,4.198827e-07,4.065748e-07,3.936851e-07,3.812005e-07,3.691084e-07,3.573964e-07,3.460528e-07,3.350659e-07,3.244247e-07,3.141183e-07,3.041363e-07,2.944686e-07,2.851052e-07,2.760368e-07,2.672540e-07,2.587479e-07,2.505100e-07,2.425317e-07,2.348050e-07,2.273221e-07,2.200752e-07,2.130569e-07,2.062603e-07,1.996782e-07,1.933039e-07,1.871311e-07,1.811533e-07,1.753644e-07,1.697586e-07,1.643301e-07,1.590733e-07,1.539828e-07,1.490535e-07,1.442803e-07,1.396582e-07,1.351826e-07,1.308488e-07,1.266524e-07,1.225891e-07,1.186547e-07,1.148451e-07,1.111564e-07,1.075849e-07,1.041268e-07,1.007786e-07,9.753685e-08,9.439814e-08,9.135926e-08,8.841707e-08,8.556852e-08,8.281066e-08,8.014064e-08,7.755569e-08,7.505313e-08,7.263036e-08,7.028487e-08,6.801421e-08,6.581603e-08,6.368803e-08,6.162801e-08,5.963382e-08,5.770336e-08,5.583464e-08,5.402570e-08,5.227465e-08,5.057965e-08,4.893894e-08,4.735080e-08,4.581356e-08,4.432560e-08,4.288538e-08,4.149136e-08,4.014210e-08,3.883617e-08,3.757219e-08,3.634883e-08,3.516481e-08,3.401887e-08,3.290981e-08,3.183645e-08,3.079765e-08,2.979232e-08,2.881940e-08,2.787784e-08,2.696666e-08,2.608488e-08,2.523157e-08,2.440582e-08,2.360674e-08,2.283350e-08,2.208526e-08,2.136123e-08,2.066064e-08,1.998272e-08,1.932677e-08,1.869208e-08,1.807796e-08,1.748376e-08,1.690884e-08,1.635258e-08,1.581439e-08,1.529368e-08,1.478990e-08,1.430250e-08,1.383096e-08,1.337477e-08,1.293342e-08,1.250646e-08,1.209341e-08,1.169383e-08,1.130728e-08,1.093334e-08,1.057161e-08,1.022170e-08,9.883217e-09,9.555801e-09,9.239093e-09,8.932748e-09,8.636430e-09,8.349816e-09,8.072592e-09,7.804454e-09,7.545109e-09,7.294272e-09,7.051668e-09,6.817030e-09,6.590099e-09,6.370627e-09,6.158371e-09,5.953097e-09,5.754578e-09,5.562595e-09,5.376935e-09,5.197394e-09,5.023772e-09,4.855876e-09,4.693520e-09,4.536525e-09,4.384714e-09,4.237919e-09,4.095977e-09,3.958730e-09,3.826023e-09,3.697709e-09,3.573644e-09,3.453690e-09,3.337712e-09,3.225580e-09,3.117168e-09,3.012354e-09,2.911021e-09,2.813054e-09,2.718343e-09,2.626781e-09,2.538265e-09,2.452695e-09,2.369974e-09,2.290009e-09,2.212708e-09,2.137984e-09,2.065753e-09,1.995933e-09,1.928443e-09,1.863207e-09,1.800152e-09,1.739204e-09,1.680295e-09,1.623356e-09,1.568324e-09,1.515135e-09,1.463727e-09,1.414043e-09,1.366025e-09,1.319618e-09,1.274769e-09,1.231426e-09,1.189538e-09,1.149059e-09,1.109940e-09,1.072138e-09,1.035607e-09,1.000307e-09,9.661950e-10,9.332330e-10,9.013822e-10,8.706057e-10,8.408676e-10,8.121334e-10,7.843695e-10,7.575438e-10,7.316247e-10,7.065822e-10,6.823868e-10,6.590104e-10,6.364255e-10,6.146056e-10,5.935253e-10,5.731596e-10,5.534847e-10,5.344774e-10,5.161154e-10,4.983771e-10,4.812414e-10,4.646882e-10,4.486979e-10,4.332517e-10,4.183311e-10,4.039186e-10,3.899971e-10,3.765500e-10,3.635613e-10,3.510157e-10,3.388982e-10,3.271943e-10,3.158901e-10,3.049722e-10,2.944274e-10,2.842432e-10,2.744074e-10,2.649082e-10,2.557342e-10}, {9.907380e+04,1.298522e+04,2.853786e+03,1.533456e+03,1.038374e+03,6.682474e+02,4.169769e+02,2.702205e+02,1.925423e+02,1.523417e+02,1.292994e+02,1.127566e+02,9.815384e+01,8.412167e+01,7.066137e+01,5.818241e+01,4.707251e+01,3.755422e+01,2.967554e+01,2.335078e+01,1.841140e+01,1.464969e+01,1.185052e+01,9.811549e+00,8.354264e+00,7.328479e+00,6.612593e+00,6.111396e+00,5.752640e+00,5.483213e+00,5.265386e+00,5.073431e+00,4.890703e+00,4.707244e+00,4.517852e+00,4.320588e+00,4.115640e+00,3.904486e+00,3.689291e+00,3.472488e+00,3.256506e+00,3.043591e+00,2.835710e+00,2.634503e+00,2.441273e+00,2.257001e+00,2.082369e+00,1.917800e+00,1.763489e+00,1.619445e+00,1.485524e+00,1.361462e+00,1.246903e+00,1.141424e+00,1.044556e+00,9.558012e-01,8.746471e-01,8.005788e-01,7.330871e-01,6.716759e-01,6.158669e-01,5.652037e-01,5.192539e-01,4.776106e-01,4.398934e-01,4.057480e-01,3.748462e-01,3.468851e-01,3.215859e-01,2.986930e-01,2.779725e-01,2.592113e-01,2.422150e-01,2.268072e-01,2.128280e-01,2.001324e-01,1.885896e-01,1.780813e-01,1.685011e-01,1.597531e-01,1.517510e-01,1.444175e-01,1.376829e-01,1.314851e-01,1.257683e-01,1.204826e-01,1.155833e-01,1.110308e-01,1.067893e-01,1.028273e-01,9.911653e-02,9.563178e-02,9.235070e-02,8.925342e-02,8.632224e-02,8.354148e-02,8.089718e-02,7.837700e-02,7.596995e-02,7.366633e-02,7.145751e-02,6.933585e-02,6.729458e-02,6.532772e-02,6.342993e-02,6.159652e-02,5.982328e-02,5.810651e-02,5.644290e-02,5.482951e-02,5.326371e-02,5.174318e-02,5.026580e-02,4.882970e-02,4.743317e-02,4.607469e-02,4.475286e-02,4.346642e-02,4.221421e-02,4.099516e-02,3.980830e-02,3.865270e-02,3.752752e-02,3.643195e-02,3.536524e-02,3.432668e-02,3.331559e-02,3.233130e-02,3.137321e-02,3.044071e-02,2.953320e-02,2.865014e-02,2.779096e-02,2.695512e-02,2.614211e-02,2.535140e-02,2.458249e-02,2.383488e-02,2.310809e-02,2.240163e-02,2.171504e-02,2.104784e-02,2.039958e-02,1.976981e-02,1.915808e-02,1.856395e-02,1.798700e-02,1.742680e-02,1.688292e-02,1.635497e-02,1.584253e-02,1.534521e-02,1.486262e-02,1.439437e-02,1.394008e-02,1.349939e-02,1.307194e-02,1.265736e-02,1.225531e-02,1.186545e-02,1.148744e-02,1.112096e-02,1.076568e-02,1.042129e-02,1.008748e-02,9.763957e-03,9.450427e-03,9.146602e-03,8.852203e-03,8.566958e-03,8.290600e-03,8.022872e-03,7.763519e-03,7.512295e-03,7.268961e-03,7.033281e-03,6.805029e-03,6.583982e-03,6.369925e-03,6.162647e-03,5.961943e-03,5.767615e-03,5.579469e-03,5.397317e-03,5.220976e-03,5.050268e-03,4.885020e-03,4.725064e-03,4.570237e-03,4.420381e-03,4.275342e-03,4.134969e-03,3.999118e-03,3.867649e-03,3.740423e-03,3.617309e-03,3.498178e-03,3.382904e-03,3.271366e-03,3.163447e-03,3.059032e-03,2.958011e-03,2.860276e-03,2.765723e-03,2.674251e-03,2.585762e-03,2.500162e-03,2.417357e-03,2.337260e-03,2.259783e-03,2.184843e-03,2.112358e-03,2.042249e-03,1.974441e-03,1.908860e-03,1.845433e-03,1.784092e-03,1.724768e-03,1.667398e-03,1.611918e-03,1.558266e-03,1.506384e-03,1.456215e-03,1.407702e-03,1.360791e-03,1.315432e-03,1.271573e-03,1.229166e-03,1.188163e-03,1.148518e-03,1.110188e-03,1.073128e-03,1.037299e-03,1.002658e-03,9.691686e-04,9.367915e-04,9.054906e-04,8.752307e-04,8.459776e-04,8.176981e-04,7.903602e-04,7.639330e-04,7.383864e-04,7.136914e-04,6.898199e-04,6.667447e-04,6.444396e-04,6.228791e-04,6.020385e-04,5.818940e-04,5.624227e-04,5.436021e-04,5.254107e-04,5.078276e-04,4.908327e-04,4.744063e-04,4.585297e-04,4.431845e-04,4.283531e-04,4.140183e-04,4.001637e-04,3.867732e-04,3.738313e-04,3.613231e-04,3.492342e-04,3.375505e-04,3.262585e-04,3.153451e-04,3.047977e-04,2.946040e-04,2.847522e-04,2.752309e-04,2.660290e-04,2.571357e-04,2.485409e-04,2.402344e-04,2.322066e-04,2.244481e-04,2.169500e-04,2.097035e-04,2.027002e-04,1.959318e-04,1.893905e-04,1.830687e-04,1.769590e-04,1.710543e-04,1.653477e-04,1.598325e-04,1.545023e-04,1.493509e-04,1.443722e-04,1.395605e-04,1.349102e-04,1.304158e-04,1.260720e-04,1.218738e-04,1.178164e-04,1.138949e-04,1.101048e-04,1.064417e-04,1.029012e-04,9.947935e-05,9.617206e-05,9.297548e-05,8.988590e-05,8.689972e-05,8.401344e-05,8.122372e-05,7.852729e-05,7.592103e-05,7.340190e-05,7.096696e-05,6.861338e-05,6.633843e-05,6.413946e-05,6.201391e-05,5.995932e-05,5.797330e-05,5.605355e-05,5.419783e-05,5.240400e-05,5.066997e-05,4.899374e-05,4.737336e-05,4.580696e-05,4.429273e-05,4.282891e-05,4.141381e-05,4.004579e-05,3.872329e-05,3.744476e-05,3.620874e-05,3.501380e-05,3.385856e-05,3.274169e-05,3.166191e-05,3.061798e-05,2.960869e-05,2.863288e-05,2.768944e-05,2.677728e-05,2.589535e-05,2.504265e-05,2.421819e-05,2.342104e-05,2.265028e-05,2.190503e-05,2.118443e-05,2.048768e-05,1.981396e-05,1.916251e-05,1.853259e-05,1.792349e-05,1.733450e-05,1.676496e-05,1.621422e-05,1.568165e-05,1.516665e-05,1.466864e-05,1.418705e-05,1.372134e-05,1.327097e-05,1.283544e-05,1.241425e-05,1.200694e-05,1.161303e-05,1.123209e-05,1.086368e-05,1.050738e-05,1.016281e-05,9.829566e-06,9.507276e-06,9.195576e-06,8.894118e-06,8.602562e-06,8.320580e-06,8.047857e-06,7.784087e-06,7.528974e-06,7.282231e-06,7.043583e-06,6.812763e-06,6.589512e-06,6.373581e-06,6.164729e-06,5.962722e-06,5.767335e-06,5.578350e-06,5.395555e-06,5.218749e-06,5.047732e-06,4.882316e-06,4.722315e-06,4.567552e-06,4.417855e-06,4.273057e-06,4.132998e-06,3.997521e-06,3.866477e-06,3.739719e-06,3.617108e-06,3.498508e-06,3.383786e-06,3.272816e-06,3.165475e-06,3.061644e-06,2.961208e-06,2.864055e-06,2.770079e-06,2.679175e-06,2.591243e-06,2.506186e-06,2.423909e-06,2.344321e-06,2.267335e-06,2.192866e-06,2.120831e-06,2.051151e-06,1.983748e-06,1.918549e-06,1.855482e-06,1.794476e-06,1.735465e-06,1.678383e-06,1.623168e-06,1.569758e-06,1.518094e-06,1.468120e-06,1.419781e-06,1.373023e-06,1.327794e-06,1.284045e-06,1.241727e-06,1.200794e-06,1.161200e-06,1.122902e-06,1.085858e-06,1.050027e-06,1.015368e-06,9.818450e-07,9.494195e-07,9.180561e-07,8.877202e-07,8.583783e-07,8.299979e-07,8.025478e-07,7.759976e-07,7.503180e-07,7.254805e-07,7.014577e-07,6.782231e-07,6.557509e-07,6.340163e-07,6.129952e-07,5.926644e-07,5.730014e-07,5.539843e-07,5.355920e-07,5.178043e-07,5.006014e-07,4.839642e-07,4.678741e-07,4.523135e-07,4.372650e-07,4.227118e-07,4.086378e-07,3.950274e-07,3.818654e-07,3.691371e-07,3.568285e-07,3.449257e-07,3.334155e-07,3.222851e-07,3.115221e-07,3.011144e-07,2.910505e-07,2.813190e-07,2.719091e-07,2.628104e-07,2.540125e-07,2.455056e-07,2.372803e-07,2.293272e-07,2.216376e-07,2.142026e-07,2.070141e-07,2.000638e-07,1.933441e-07,1.868472e-07,1.805660e-07,1.744934e-07,1.686224e-07,1.629465e-07,1.574592e-07,1.521544e-07,1.470260e-07,1.420684e-07,1.372757e-07,1.326427e-07,1.281640e-07,1.238346e-07,1.196496e-07,1.156041e-07,1.116937e-07,1.079138e-07,1.042602e-07,1.007287e-07,9.731518e-08,9.401584e-08,9.082688e-08,8.774467e-08,8.476566e-08,8.188645e-08,7.910374e-08,7.641433e-08,7.381514e-08,7.130317e-08,6.887555e-08,6.652946e-08,6.426222e-08,6.207120e-08,5.995388e-08,5.790780e-08,5.593061e-08,5.402002e-08,5.217380e-08,5.038983e-08,4.866603e-08,4.700040e-08,4.539100e-08,4.383595e-08,4.233346e-08,4.088176e-08,3.947917e-08,3.812404e-08,3.681478e-08,3.554988e-08,3.432784e-08,3.314724e-08,3.200668e-08,3.090483e-08,2.984040e-08,2.881212e-08,2.781879e-08,2.685924e-08,2.593233e-08,2.503697e-08,2.417211e-08,2.333670e-08,2.252978e-08,2.175038e-08,2.099756e-08,2.027045e-08,1.956817e-08,1.888989e-08,1.823480e-08,1.760212e-08,1.699109e-08,1.640098e-08,1.583109e-08,1.528073e-08,1.474924e-08,1.423598e-08,1.374035e-08,1.326173e-08,1.279956e-08,1.235328e-08,1.192235e-08,1.150624e-08,1.110446e-08,1.071652e-08,1.034196e-08,9.980303e-09,9.631126e-09,9.294001e-09,8.968518e-09,8.654280e-09,8.350905e-09,8.058022e-09,7.775274e-09,7.502314e-09,7.238809e-09,6.984436e-09,6.738882e-09,6.501846e-09,6.273038e-09,6.052174e-09,5.838984e-09,5.633204e-09,5.434581e-09,5.242869e-09,5.057830e-09,4.879237e-09,4.706867e-09,4.540506e-09,4.379949e-09,4.224994e-09,4.075451e-09,3.931131e-09,3.791856e-09,3.657451e-09,3.527749e-09,3.402587e-09,3.281808e-09,3.165261e-09,3.052800e-09,2.944283e-09,2.839575e-09,2.738543e-09,2.641059e-09,2.547002e-09,2.456251e-09,2.368693e-09,2.284217e-09,2.202716e-09,2.124086e-09,2.048227e-09,1.975044e-09,1.904442e-09,1.836333e-09,1.770630e-09,1.707248e-09,1.646106e-09,1.587127e-09,1.530236e-09,1.475358e-09,1.422424e-09,1.371366e-09,1.322119e-09,1.274618e-09,1.228803e-09,1.184615e-09,1.141996e-09,1.100893e-09,1.061250e-09,1.023019e-09,9.861473e-10,9.505891e-10,9.162976e-10,8.832284e-10,8.513385e-10,8.205863e-10,7.909317e-10,7.623362e-10,7.347622e-10,7.081739e-10,6.825365e-10,6.578163e-10,6.339809e-10,6.109991e-10,5.888408e-10,5.674766e-10,5.468787e-10,5.270198e-10,5.078737e-10,4.894152e-10,4.716198e-10,4.544641e-10,4.379254e-10,4.219817e-10,4.066119e-10,3.917955e-10,3.775130e-10,3.637453e-10,3.504740e-10,3.376815e-10,3.253507e-10,3.134652e-10,3.020091e-10,2.909670e-10,2.803241e-10,2.700663e-10,2.601797e-10,2.506511e-10,2.414676e-10,2.326169e-10,2.240871e-10,2.158667e-10,2.079446e-10,2.003101e-10,1.929528e-10,1.858629e-10,1.790308e-10,1.724470e-10,1.661029e-10,1.599896e-10,1.540990e-10,1.484229e-10,1.429537e-10,1.376840e-10,1.326064e-10,1.277142e-10,1.230006e-10,1.184591e-10,1.140836e-10,1.098680e-10,1.058066e-10,1.018938e-10,9.812420e-11,9.449264e-11}, {1.050051e+05,1.327006e+04,2.921788e+03,1.596143e+03,1.071200e+03,6.799559e+02,4.211832e+02,2.741406e+02,1.980109e+02,1.587390e+02,1.354743e+02,1.178496e+02,1.017789e+02,8.627767e+01,7.157779e+01,5.818499e+01,4.649214e+01,3.667660e+01,2.872049e+01,2.247025e+01,1.769745e+01,1.414667e+01,1.156781e+01,9.735125e+00,8.456122e+00,7.573848e+00,6.965080e+00,6.536379e+00,6.219299e+00,5.965540e+00,5.742485e+00,5.529340e+00,5.313945e+00,5.090222e+00,4.856201e+00,4.612537e+00,4.361421e+00,4.105817e+00,3.848935e+00,3.593890e+00,3.343503e+00,3.100184e+00,2.865894e+00,2.642142e+00,2.430016e+00,2.230226e+00,2.043151e+00,1.868897e+00,1.707342e+00,1.558188e+00,1.420999e+00,1.295240e+00,1.180306e+00,1.075549e+00,9.802990e-01,8.938786e-01,8.156192e-01,7.448693e-01,6.810021e-01,6.234208e-01,5.715620e-01,5.248977e-01,4.829364e-01,4.452225e-01,4.113366e-01,3.808934e-01,3.535406e-01,3.289576e-01,3.068528e-01,2.869621e-01,2.690472e-01,2.528931e-01,2.383064e-01,2.251136e-01,2.131594e-01,2.023049e-01,1.924261e-01,1.834125e-01,1.751657e-01,1.675987e-01,1.606338e-01,1.542027e-01,1.482446e-01,1.427060e-01,1.375397e-01,1.327041e-01,1.281627e-01,1.238834e-01,1.198379e-01,1.160016e-01,1.123529e-01,1.088729e-01,1.055451e-01,1.023552e-01,9.929057e-02,9.634043e-02,9.349525e-02,9.074681e-02,8.808795e-02,8.551244e-02,8.301490e-02,8.059062e-02,7.823554e-02,7.594608e-02,7.371914e-02,7.155202e-02,6.944232e-02,6.738794e-02,6.538701e-02,6.343788e-02,6.153904e-02,5.968916e-02,5.788700e-02,5.613143e-02,5.442140e-02,5.275592e-02,5.113408e-02,4.955497e-02,4.801777e-02,4.652163e-02,4.506576e-02,4.364939e-02,4.227174e-02,4.093206e-02,3.962959e-02,3.836359e-02,3.713333e-02,3.593806e-02,3.477706e-02,3.364959e-02,3.255494e-02,3.149237e-02,3.046117e-02,2.946063e-02,2.849002e-02,2.754866e-02,2.663582e-02,2.575082e-02,2.489297e-02,2.406159e-02,2.325599e-02,2.247552e-02,2.171951e-02,2.098731e-02,2.027829e-02,1.959180e-02,1.892724e-02,1.828399e-02,1.766144e-02,1.705902e-02,1.647615e-02,1.591225e-02,1.536678e-02,1.483919e-02,1.432894e-02,1.383554e-02,1.335845e-02,1.289720e-02,1.245129e-02,1.202025e-02,1.160363e-02,1.120097e-02,1.081185e-02,1.043583e-02,1.007249e-02,9.721448e-03,9.382298e-03,9.054663e-03,8.738171e-03,8.432464e-03,8.137191e-03,7.852013e-03,7.576602e-03,7.310636e-03,7.053805e-03,6.805809e-03,6.566355e-03,6.335160e-03,6.111950e-03,5.896459e-03,5.688429e-03,5.487609e-03,5.293759e-03,5.106643e-03,4.926035e-03,4.751716e-03,4.583471e-03,4.421096e-03,4.264390e-03,4.113162e-03,3.967224e-03,3.826396e-03,3.690504e-03,3.559378e-03,3.432854e-03,3.310776e-03,3.192989e-03,3.079347e-03,2.969706e-03,2.863929e-03,2.761881e-03,2.663435e-03,2.568464e-03,2.476849e-03,2.388473e-03,2.303224e-03,2.220992e-03,2.141674e-03,2.065166e-03,1.991371e-03,1.920195e-03,1.851546e-03,1.785335e-03,1.721477e-03,1.659890e-03,1.600494e-03,1.543212e-03,1.487969e-03,1.434695e-03,1.383319e-03,1.333776e-03,1.286000e-03,1.239928e-03,1.195502e-03,1.152662e-03,1.111353e-03,1.071521e-03,1.033113e-03,9.960781e-04,9.603688e-04,9.259377e-04,8.927393e-04,8.607299e-04,8.298672e-04,8.001105e-04,7.714204e-04,7.437590e-04,7.170896e-04,6.913769e-04,6.665868e-04,6.426863e-04,6.196438e-04,5.974285e-04,5.760109e-04,5.553626e-04,5.354559e-04,5.162644e-04,4.977624e-04,4.799253e-04,4.627293e-04,4.461514e-04,4.301693e-04,4.147618e-04,3.999083e-04,3.855887e-04,3.717841e-04,3.584758e-04,3.456461e-04,3.332777e-04,3.213541e-04,3.098592e-04,2.987777e-04,2.880946e-04,2.777957e-04,2.678671e-04,2.582954e-04,2.490678e-04,2.401720e-04,2.315959e-04,2.233280e-04,2.153573e-04,2.076730e-04,2.002648e-04,1.931227e-04,1.862371e-04,1.795989e-04,1.731990e-04,1.670288e-04,1.610802e-04,1.553451e-04,1.498157e-04,1.444847e-04,1.393450e-04,1.343895e-04,1.296117e-04,1.250052e-04,1.205637e-04,1.162813e-04,1.121524e-04,1.081713e-04,1.043327e-04,1.006314e-04,9.706265e-05,9.362151e-05,9.030342e-05,8.710394e-05,8.401880e-05,8.104388e-05,7.817521e-05,7.540896e-05,7.274145e-05,7.016911e-05,6.768852e-05,6.529639e-05,6.298952e-05,6.076485e-05,5.861942e-05,5.655039e-05,5.455501e-05,5.263063e-05,5.077469e-05,4.898475e-05,4.725844e-05,4.559346e-05,4.398762e-05,4.243879e-05,4.094494e-05,3.950409e-05,3.811434e-05,3.677386e-05,3.548089e-05,3.423372e-05,3.303072e-05,3.187031e-05,3.075096e-05,2.967121e-05,2.862964e-05,2.762488e-05,2.665563e-05,2.572062e-05,2.481861e-05,2.394845e-05,2.310899e-05,2.229914e-05,2.151784e-05,2.076407e-05,2.003687e-05,1.933527e-05,1.865838e-05,1.800531e-05,1.737522e-05,1.676729e-05,1.618074e-05,1.561480e-05,1.506875e-05,1.454187e-05,1.403350e-05,1.354297e-05,1.306966e-05,1.261295e-05,1.217226e-05,1.174701e-05,1.133668e-05,1.094071e-05,1.055862e-05,1.018991e-05,9.834111e-06,9.490762e-06,9.159427e-06,8.839683e-06,8.531121e-06,8.233348e-06,7.945983e-06,7.668662e-06,7.401029e-06,7.142746e-06,6.893483e-06,6.652923e-06,6.420761e-06,6.196702e-06,5.980462e-06,5.771766e-06,5.570351e-06,5.375960e-06,5.188348e-06,5.007277e-06,4.832519e-06,4.663852e-06,4.501063e-06,4.343947e-06,4.192305e-06,4.045946e-06,3.904685e-06,3.768344e-06,3.636752e-06,3.509743e-06,3.387156e-06,3.268838e-06,3.154639e-06,3.044417e-06,2.938031e-06,2.835349e-06,2.736241e-06,2.640583e-06,2.548255e-06,2.459140e-06,2.373128e-06,2.290109e-06,2.209981e-06,2.132641e-06,2.057994e-06,1.985945e-06,1.916404e-06,1.849284e-06,1.784501e-06,1.721974e-06,1.661624e-06,1.603375e-06,1.547155e-06,1.492893e-06,1.440521e-06,1.389974e-06,1.341187e-06,1.294100e-06,1.248654e-06,1.204792e-06,1.162459e-06,1.121602e-06,1.082169e-06,1.044111e-06,1.007381e-06,9.719318e-07,9.377195e-07,9.047011e-07,8.728352e-07,8.420817e-07,8.124019e-07,7.837587e-07,7.561161e-07,7.294393e-07,7.036947e-07,6.788501e-07,6.548740e-07,6.317365e-07,6.094084e-07,5.878615e-07,5.670687e-07,5.470039e-07,5.276416e-07,5.089576e-07,4.909283e-07,4.735308e-07,4.567432e-07,4.405444e-07,4.249138e-07,4.098317e-07,3.952790e-07,3.812372e-07,3.676887e-07,3.546162e-07,3.420032e-07,3.298337e-07,3.180921e-07,3.067637e-07,2.958341e-07,2.852892e-07,2.751157e-07,2.653007e-07,2.558317e-07,2.466966e-07,2.378837e-07,2.293818e-07,2.211800e-07,2.132679e-07,2.056353e-07,1.982725e-07,1.911700e-07,1.843188e-07,1.777100e-07,1.713352e-07,1.651862e-07,1.592550e-07,1.535341e-07,1.480160e-07,1.426938e-07,1.375604e-07,1.326093e-07,1.278341e-07,1.232286e-07,1.187869e-07,1.145031e-07,1.103719e-07,1.063877e-07,1.025454e-07,9.884009e-08,9.526687e-08,9.182111e-08,8.849832e-08,8.529418e-08,8.220449e-08,7.922522e-08,7.635248e-08,7.358251e-08,7.091168e-08,6.833648e-08,6.585354e-08,6.345960e-08,6.115151e-08,5.892622e-08,5.678082e-08,5.471247e-08,5.271843e-08,5.079609e-08,4.894288e-08,4.715637e-08,4.543418e-08,4.377403e-08,4.217371e-08,4.063110e-08,3.914414e-08,3.771086e-08,3.632934e-08,3.499774e-08,3.371428e-08,3.247725e-08,3.128498e-08,3.013589e-08,2.902842e-08,2.796110e-08,2.693248e-08,2.594119e-08,2.498588e-08,2.406528e-08,2.317813e-08,2.232324e-08,2.149945e-08,2.070565e-08,1.994075e-08,1.920373e-08,1.849358e-08,1.780933e-08,1.715006e-08,1.651486e-08,1.590287e-08,1.531324e-08,1.474519e-08,1.419792e-08,1.367069e-08,1.316277e-08,1.267347e-08,1.220211e-08,1.174805e-08,1.131066e-08,1.088933e-08,1.048349e-08,1.009257e-08,9.716038e-09,9.353361e-09,9.004043e-09,8.667596e-09,8.343554e-09,8.031466e-09,7.730897e-09,7.441427e-09,7.162653e-09,6.894185e-09,6.635646e-09,6.386676e-09,6.146925e-09,5.916055e-09,5.693744e-09,5.479677e-09,5.273554e-09,5.075083e-09,4.883985e-09,4.699989e-09,4.522835e-09,4.352273e-09,4.188059e-09,4.029962e-09,3.877756e-09,3.731226e-09,3.590161e-09,3.454362e-09,3.323634e-09,3.197790e-09,3.076651e-09,2.960043e-09,2.847798e-09,2.739756e-09,2.635762e-09,2.535666e-09,2.439323e-09,2.346595e-09,2.257348e-09,2.171453e-09,2.088786e-09,2.009228e-09,1.932662e-09,1.858978e-09,1.788069e-09,1.719831e-09,1.654166e-09,1.590977e-09,1.530172e-09,1.471664e-09,1.415365e-09,1.361194e-09,1.309072e-09,1.258921e-09,1.210669e-09,1.164243e-09,1.119577e-09,1.076605e-09,1.035262e-09,9.954874e-10,9.572233e-10,9.204127e-10,8.850010e-10,8.509358e-10,8.181665e-10,7.866444e-10,7.563227e-10,7.271562e-10,6.991015e-10,6.721167e-10,6.461615e-10,6.211972e-10,5.971863e-10,5.740929e-10,5.518824e-10,5.305214e-10,5.099779e-10,4.902209e-10,4.712207e-10,4.529487e-10,4.353773e-10,4.184799e-10,4.022310e-10,3.866061e-10,3.715814e-10,3.571341e-10,3.432424e-10,3.298852e-10,3.170420e-10,3.046934e-10,2.928206e-10,2.814054e-10,2.704304e-10,2.598788e-10,2.497344e-10,2.399819e-10,2.306061e-10,2.215927e-10,2.129278e-10,2.045982e-10,1.965910e-10,1.888939e-10,1.814949e-10,1.743828e-10,1.675464e-10,1.609753e-10,1.546592e-10,1.485884e-10,1.427534e-10,1.371452e-10,1.317550e-10,1.265745e-10,1.215957e-10,1.168107e-10,1.122121e-10,1.077927e-10,1.035456e-10,9.946414e-11,9.554197e-11,9.177292e-11,8.815107e-11,8.467074e-11,8.132647e-11,7.811298e-11,7.502521e-11,7.205831e-11,6.920759e-11,6.646855e-11,6.383686e-11,6.130836e-11,5.887904e-11,5.654506e-11,5.430270e-11,5.214842e-11,5.007879e-11,4.809052e-11,4.618043e-11,4.434550e-11,4.258279e-11,4.088949e-11,3.926289e-11,3.770039e-11,3.619949e-11,3.475780e-11,3.337299e-11,3.204284e-11,3.076522e-11,2.953808e-11,2.835943e-11,2.722739e-11,2.614013e-11,2.509589e-11,2.409299e-11,2.312980e-11}, {1.111639e+05,1.354932e+04,2.993400e+03,1.660057e+03,1.103131e+03,6.908764e+02,4.253851e+02,2.785760e+02,2.040804e+02,1.655404e+02,1.417640e+02,1.228026e+02,1.050992e+02,8.806083e+01,7.213174e+01,5.788701e+01,4.569913e+01,3.568015e+01,2.773271e+01,2.162764e+01,1.707346e+01,1.376700e+01,1.142522e+01,9.801892e+00,8.693863e+00,7.940576e+00,7.419960e+00,7.042638e+00,6.745731e+00,6.487037e+00,6.239908e+00,5.989008e+00,5.726910e+00,5.451468e+00,5.163855e+00,4.867140e+00,4.565283e+00,4.262474e+00,3.962700e+00,3.669502e+00,3.385848e+00,3.114092e+00,2.855993e+00,2.612761e+00,2.385121e+00,2.173385e+00,1.977528e+00,1.797253e+00,1.632054e+00,1.481272e+00,1.344139e+00,1.219816e+00,1.107431e+00,1.006094e+00,9.149267e-01,8.330713e-01,7.597037e-01,6.940409e-01,6.353461e-01,5.829316e-01,5.361599e-01,4.944436e-01,4.572448e-01,4.240727e-01,3.944816e-01,3.680687e-01,3.444706e-01,3.233612e-01,3.044483e-01,2.874709e-01,2.721967e-01,2.584191e-01,2.459552e-01,2.346433e-01,2.243406e-01,2.149215e-01,2.062758e-01,1.983066e-01,1.909294e-01,1.840705e-01,1.776656e-01,1.716588e-01,1.660017e-01,1.606524e-01,1.555748e-01,1.507377e-01,1.461143e-01,1.416817e-01,1.374203e-01,1.333132e-01,1.293463e-01,1.255074e-01,1.217863e-01,1.181742e-01,1.146639e-01,1.112491e-01,1.079246e-01,1.046860e-01,1.015297e-01,9.845251e-02,9.545175e-02,9.252519e-02,8.967089e-02,8.688719e-02,8.417262e-02,8.152587e-02,7.894576e-02,7.643123e-02,7.398126e-02,7.159489e-02,6.927119e-02,6.700926e-02,6.480819e-02,6.266708e-02,6.058502e-02,5.856110e-02,5.659438e-02,5.468390e-02,5.282870e-02,5.102779e-02,4.928016e-02,4.758480e-02,4.594067e-02,4.434673e-02,4.280190e-02,4.130512e-02,3.985531e-02,3.845140e-02,3.709229e-02,3.577690e-02,3.450414e-02,3.327293e-02,3.208220e-02,3.093087e-02,2.981788e-02,2.874218e-02,2.770273e-02,2.669851e-02,2.572850e-02,2.479169e-02,2.388712e-02,2.301381e-02,2.217081e-02,2.135720e-02,2.057206e-02,1.981450e-02,1.908365e-02,1.837867e-02,1.769870e-02,1.704295e-02,1.641062e-02,1.580094e-02,1.521315e-02,1.464654e-02,1.410037e-02,1.357397e-02,1.306667e-02,1.257780e-02,1.210674e-02,1.165286e-02,1.121559e-02,1.079433e-02,1.038853e-02,9.997646e-03,9.621151e-03,9.258538e-03,8.909315e-03,8.573006e-03,8.249149e-03,7.937299e-03,7.637027e-03,7.347914e-03,7.069560e-03,6.801576e-03,6.543586e-03,6.295228e-03,6.056151e-03,5.826018e-03,5.604502e-03,5.391289e-03,5.186074e-03,4.988564e-03,4.798476e-03,4.615538e-03,4.439486e-03,4.270065e-03,4.107032e-03,3.950150e-03,3.799191e-03,3.653937e-03,3.514174e-03,3.379700e-03,3.250318e-03,3.125838e-03,3.006078e-03,2.890861e-03,2.780018e-03,2.673386e-03,2.570807e-03,2.472129e-03,2.377207e-03,2.285900e-03,2.198071e-03,2.113591e-03,2.032333e-03,1.954176e-03,1.879004e-03,1.806704e-03,1.737167e-03,1.670290e-03,1.605973e-03,1.544117e-03,1.484631e-03,1.427425e-03,1.372412e-03,1.319509e-03,1.268636e-03,1.219716e-03,1.172676e-03,1.127443e-03,1.083948e-03,1.042127e-03,1.001914e-03,9.632489e-04,9.260725e-04,8.903281e-04,8.559608e-04,8.229181e-04,7.911494e-04,7.606060e-04,7.312409e-04,7.030091e-04,6.758671e-04,6.497732e-04,6.246871e-04,6.005701e-04,5.773851e-04,5.550963e-04,5.336691e-04,5.130705e-04,4.932686e-04,4.742327e-04,4.559333e-04,4.383419e-04,4.214314e-04,4.051754e-04,3.895488e-04,3.745271e-04,3.600870e-04,3.462061e-04,3.328627e-04,3.200360e-04,3.077062e-04,2.958538e-04,2.844605e-04,2.735085e-04,2.629806e-04,2.528605e-04,2.431324e-04,2.337809e-04,2.247916e-04,2.161504e-04,2.078438e-04,1.998587e-04,1.921828e-04,1.848040e-04,1.777107e-04,1.708919e-04,1.643370e-04,1.580356e-04,1.519779e-04,1.461544e-04,1.405562e-04,1.351743e-04,1.300003e-04,1.250263e-04,1.202444e-04,1.156472e-04,1.112274e-04,1.069783e-04,1.028931e-04,9.896543e-05,9.518925e-05,9.155864e-05,8.806794e-05,8.471172e-05,8.148476e-05,7.838202e-05,7.539869e-05,7.253013e-05,6.977188e-05,6.711967e-05,6.456936e-05,6.211702e-05,5.975884e-05,5.749116e-05,5.531048e-05,5.321343e-05,5.119676e-05,4.925735e-05,4.739223e-05,4.559850e-05,4.387341e-05,4.221430e-05,4.061861e-05,3.908390e-05,3.760780e-05,3.618806e-05,3.482249e-05,3.350901e-05,3.224560e-05,3.103032e-05,2.986134e-05,2.873685e-05,2.765514e-05,2.661458e-05,2.561356e-05,2.465058e-05,2.372417e-05,2.283291e-05,2.197547e-05,2.115054e-05,2.035688e-05,1.959328e-05,1.885859e-05,1.815171e-05,1.747156e-05,1.681713e-05,1.618742e-05,1.558151e-05,1.499846e-05,1.443742e-05,1.389753e-05,1.337800e-05,1.287805e-05,1.239692e-05,1.193391e-05,1.148832e-05,1.105949e-05,1.064678e-05,1.024958e-05,9.867297e-06,9.499367e-06,9.145244e-06,8.804405e-06,8.476347e-06,8.160583e-06,7.856650e-06,7.564098e-06,7.282498e-06,7.011436e-06,6.750512e-06,6.499344e-06,6.257564e-06,6.024817e-06,5.800763e-06,5.585074e-06,5.377435e-06,5.177543e-06,4.985106e-06,4.799844e-06,4.621487e-06,4.449776e-06,4.284461e-06,4.125302e-06,3.972068e-06,3.824537e-06,3.682494e-06,3.545736e-06,3.414062e-06,3.287284e-06,3.165218e-06,3.047688e-06,2.934524e-06,2.825563e-06,2.720649e-06,2.619629e-06,2.522360e-06,2.428700e-06,2.338516e-06,2.251677e-06,2.168060e-06,2.087543e-06,2.010013e-06,1.935357e-06,1.863469e-06,1.794245e-06,1.727588e-06,1.663401e-06,1.601592e-06,1.542073e-06,1.484760e-06,1.429570e-06,1.376425e-06,1.325248e-06,1.275967e-06,1.228512e-06,1.182814e-06,1.138809e-06,1.096434e-06,1.055629e-06,1.016335e-06,9.784962e-07,9.420592e-07,9.069719e-07,8.731844e-07,8.406486e-07,8.093182e-07,7.791486e-07,7.500968e-07,7.221216e-07,6.951832e-07,6.692432e-07,6.442647e-07,6.202121e-07,5.970514e-07,5.747494e-07,5.532745e-07,5.325961e-07,5.126848e-07,4.935123e-07,4.750512e-07,4.572752e-07,4.401591e-07,4.236785e-07,4.078099e-07,3.925307e-07,3.778191e-07,3.636541e-07,3.500156e-07,3.368841e-07,3.242409e-07,3.120679e-07,3.003477e-07,2.890636e-07,2.781995e-07,2.677399e-07,2.576697e-07,2.479747e-07,2.386409e-07,2.296550e-07,2.210041e-07,2.126758e-07,2.046582e-07,1.969397e-07,1.895094e-07,1.823565e-07,1.754708e-07,1.688423e-07,1.624616e-07,1.563194e-07,1.504070e-07,1.447158e-07,1.392376e-07,1.339645e-07,1.288889e-07,1.240034e-07,1.193011e-07,1.147751e-07,1.104189e-07,1.062262e-07,1.021908e-07,9.830699e-08,9.456908e-08,9.097167e-08,8.750951e-08,8.417758e-08,8.097103e-08,7.788520e-08,7.491558e-08,7.205785e-08,6.930784e-08,6.666153e-08,6.411506e-08,6.166470e-08,5.930686e-08,5.703808e-08,5.485506e-08,5.275457e-08,5.073353e-08,4.878898e-08,4.691805e-08,4.511798e-08,4.338613e-08,4.171995e-08,4.011696e-08,3.857480e-08,3.709119e-08,3.566394e-08,3.429092e-08,3.297011e-08,3.169954e-08,3.047732e-08,2.930164e-08,2.817075e-08,2.708296e-08,2.603665e-08,2.503025e-08,2.406227e-08,2.313125e-08,2.223580e-08,2.137458e-08,2.054630e-08,1.974971e-08,1.898362e-08,1.824686e-08,1.753835e-08,1.685699e-08,1.620178e-08,1.557171e-08,1.496583e-08,1.438324e-08,1.382303e-08,1.328437e-08,1.276644e-08,1.226845e-08,1.178963e-08,1.132927e-08,1.088666e-08,1.046113e-08,1.005201e-08,9.658701e-09,9.280584e-09,8.917084e-09,8.567643e-09,8.231725e-09,7.908812e-09,7.598409e-09,7.300035e-09,7.013232e-09,6.737557e-09,6.472583e-09,6.217900e-09,5.973113e-09,5.737844e-09,5.511727e-09,5.294410e-09,5.085556e-09,4.884839e-09,4.691946e-09,4.506576e-09,4.328440e-09,4.157259e-09,3.992764e-09,3.834699e-09,3.682814e-09,3.536872e-09,3.396643e-09,3.261906e-09,3.132448e-09,3.008067e-09,2.888564e-09,2.773751e-09,2.663447e-09,2.557477e-09,2.455672e-09,2.357871e-09,2.263918e-09,2.173665e-09,2.086966e-09,2.003685e-09,1.923687e-09,1.846845e-09,1.773037e-09,1.702143e-09,1.634050e-09,1.568650e-09,1.505836e-09,1.445508e-09,1.387569e-09,1.331925e-09,1.278487e-09,1.227167e-09,1.177884e-09,1.130557e-09,1.085110e-09,1.041469e-09,9.995624e-10,9.593230e-10,9.206850e-10,8.835855e-10,8.479640e-10,8.137622e-10,7.809243e-10,7.493966e-10,7.191274e-10,6.900671e-10,6.621679e-10,6.353841e-10,6.096716e-10,5.849881e-10,5.612928e-10,5.385467e-10,5.167123e-10,4.957533e-10,4.756351e-10,4.563244e-10,4.377892e-10,4.199986e-10,4.029231e-10,3.865344e-10,3.708050e-10,3.557089e-10,3.412207e-10,3.273163e-10,3.139724e-10,3.011668e-10,2.888779e-10,2.770851e-10,2.657686e-10,2.549095e-10,2.444893e-10,2.344907e-10,2.248967e-10,2.156912e-10,2.068585e-10,1.983838e-10,1.902527e-10,1.824514e-10,1.749667e-10,1.677859e-10,1.608969e-10,1.542878e-10,1.479474e-10,1.418649e-10,1.360300e-10,1.304326e-10,1.250633e-10,1.199128e-10,1.149722e-10,1.102332e-10,1.056877e-10,1.013276e-10,9.714572e-11,9.313470e-11,8.928766e-11,8.559798e-11,8.205928e-11,7.866546e-11,7.541063e-11,7.228918e-11,6.929568e-11,6.642496e-11,6.367202e-11,6.103209e-11,5.850057e-11,5.607306e-11,5.374533e-11,5.151331e-11,4.937312e-11,4.732101e-11,4.535340e-11,4.346684e-11,4.165803e-11,3.992378e-11,3.826107e-11,3.666697e-11,3.513868e-11,3.367351e-11,3.226887e-11,3.092229e-11,2.963139e-11,2.839390e-11,2.720762e-11,2.607046e-11,2.498040e-11,2.393551e-11,2.293394e-11,2.197391e-11,2.105371e-11,2.017171e-11,1.932633e-11,1.851607e-11,1.773948e-11,1.699518e-11,1.628184e-11,1.559818e-11,1.494298e-11,1.431507e-11,1.371331e-11,1.313663e-11,1.258400e-11,1.205442e-11,1.154693e-11,1.106063e-11,1.059464e-11,1.014812e-11,9.720256e-12,9.310283e-12,8.917458e-12,8.541070e-12,8.180437e-12,7.834906e-12,7.503850e-12,7.186668e-12,6.882783e-12,6.591644e-12,6.312720e-12,6.045503e-12,5.789507e-12} }; gdis-0.90/host.h0000644000175000017500000000300010537725453012160 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ gpointer host_new(gchar *); void host_free(gpointer); void host_free_all(void); gint host_connect(gpointer); void host_disconnect(gpointer); gchar *host_talk(gpointer, const gchar *); const gchar *host_name(gpointer); const gchar *host_cwd(gpointer); gint host_file_write(gpointer, gchar *, gchar *); gint host_file_read(gpointer, gchar *, gchar *); gpointer host_service_get(gpointer, const gchar *); void host_service_foreach(gpointer, gpointer, gpointer); void host_service_cycle(gpointer, const gchar *); gint host_service_available(gpointer); gint host_service_flags(gpointer); gchar *host_service_fullpath(gpointer); enum {SERVICE_BACKGROUND, SERVICE_MPI, SERVICE_QSUB, SERVICE_QSUB_MPI, SERVICE_PRIMARY, SERVICE_SECONDARY}; gdis-0.90/matrix.h0000644000175000017500000000563510240065306012510 0ustar seansean enum {IDENTITY, INVERSION, PLANE, PAXIS, IAXIS, REFLECTION, ALIGNMENT, LATMAT}; /* dim 2 */ #define ARR2SET(vec, a) {*vec = *a ; *(vec+1) = *(a+1);} #define ARR2ADD(vec, a) {*vec += *a ; *(vec+1) += *(a+1);} #define VEC2ADD(vec, a, b) {*vec += a ; *(vec+1) += b;} #define VEC2SET(vec, a, b) {*vec = a ; *(vec+1) = b;} /* dim 3 */ #define VEC3MUL(vec,m) {*vec *= m ; *(vec+1) *= m ; *(vec+2) *= m;} #define VEC2MUL(vec,m) {*vec *= m ; *(vec+1) *= m;} #define VEC3MAGSQ(vec) (*vec * *vec + *(vec+1) * *(vec+1) + \ *(vec+2) * *(vec+2)) #define VEC3MAG(vec) sqrt(VEC3MAGSQ(vec)) #define VEC3ABS(a) {*a*=fabs(*a); *(a+1)*=fabs(*(a+1)); *(a+2)*=fabs(*(a+2));} #define VEC3SET(a,x,y,z) {*a = x; *(a+1) = y; *(a+2) = z;} #define VEC3ADD(a,x,y,z) {*a += x; *(a+1) += y; *(a+2) += z;} #define VEC3SUB(a,x,y,z) {*a -= x; *(a+1) -= y; *(a+2) -= z;} #define ARR3SET(a,b) {*a = *b; *(a+1) = *(b+1); *(a+2) = *(b+2);} #define ARR3ADD(a,b) {*a += *b; *(a+1) += *(b+1); *(a+2) += *(b+2);} #define ARR3SUB(a,b) {*a -= *b; *(a+1) -= *(b+1); *(a+2) -= *(b+2);} #define ARR3MUL(a,b) {*a *= *b; *(a+1) *= *(b+1); *(a+2) *= *(b+2);} #define DOT3PROD(a,b) (a[0]*b[0] + a[1]*b[1] + a[2]*b[2]) /* dim 4 */ #define VEC4SET(a,x,y,z,t) {*a = x; *(a+1) = y; *(a+2) = z; *(a+3) = t;} #define VEC4MUL(v,m) {*v *= m; *(v+1) *= m; *(v+2) *= m; *(v+3) *= m;} #define ARR4SET(a,b) {*a=*b; *(a+1)=*(b+1); *(a+2)=*(b+2); *(a+3)=*(b+3);} #define P4MAT(s,m) {printf("%s\n|%f, %f, %f, %f|\n|%f, %f, %f, %f|\n\ |%f, %f, %f, %f|\n|%f, %f, %f, %f|\n",s,*m,*(m+1),*(m+2),*(m+3),*(m+4),\ *(m+5),*(m+6),*(m+7),*(m+8),*(m+9),*(m+10),*(m+11),*(m+12),*(m+13),*(m+14),\ *(m+15));} /* matrix/vector manipulation */ void vecmat(gdouble *, gdouble *); void vectmat(gdouble *, gdouble *); void vec4mat(gdouble *, gdouble *); void matmat(gdouble *, gdouble *); void mat4mat(gdouble *, gdouble *); gint matrix_invert(gdouble *); void matrix_transpose(gdouble *); void matrix_transpose_44(gdouble *); void calc_norm(gdouble *, gdouble *, gdouble *, gdouble *); void matrix_lattice_init(struct model_pak *); void matrix_lattice_new(gdouble *, struct model_pak *); void matrix_identity(gdouble *); void matrix_rotation(gdouble *, gdouble , gint); void matrix_z_alignment(gdouble *, gdouble *); void matrix_v_alignment(gdouble *, gdouble *, gdouble *); void matrix_v_rotation(gdouble *, gdouble *, gdouble); void matrix_v_reflection(gdouble *, gdouble *); void matrix_relative_rotation(gdouble *, gdouble, gint, struct model_pak *); void crossprod(gdouble *, gdouble *, gdouble *); void proj_vop(gdouble *, gdouble *, gdouble *); gdouble calc_sep(gdouble *, gdouble *); gdouble calc_volume(gdouble *); gint normalize(gdouble *, gint); gdouble magnitude(gdouble *, gint); gdouble via(gdouble *, gdouble *, gint); gdouble matrix_determinant(gdouble *); gint matrix_is_inversion(gdouble *); gint matrix_is_identity(gdouble *); gint matrix_is_z_rotation(gdouble *); gint matrix_order(gdouble *); gdis-0.90/project.c0000644000175000017500000003066210600706736012654 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include "gdis.h" #include "coords.h" #include "model.h" #include "graph.h" #include "surface.h" #include "molsurf.h" #include "numeric.h" #include "parse.h" #include "project.h" #include "file.h" #include "scan.h" #include "interface.h" /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /***************************/ /* destroy a configuration */ /***************************/ void project_config_free(gpointer data) { } /**********************/ /* destroy a projects */ /**********************/ void project_free(gpointer data) { struct project_pak *project = data; g_assert(project != NULL); g_free(project->label); g_free(project->path); g_slist_free(project->models); g_slist_free(project->configs); /* TODO - free (project specific) hash table data */ g_hash_table_destroy(project->data); g_free(project); } /************************/ /* create a new project */ /************************/ gpointer project_new(const gchar *label) { struct project_pak *project; project = g_malloc(sizeof(struct project_pak)); sysenv.projects = g_slist_append(sysenv.projects, project); project->path = NULL; if (label) project->label = g_strdup(label); else project->label = g_strdup("project x"); project->models = NULL; project->configs = NULL; project->data = g_hash_table_new(g_str_hash, g_str_equal); return(project); } /****************************/ /* add a model to a project */ /****************************/ void project_model_add(struct model_pak *model, gpointer data) { struct project_pak *project = data; project->models = g_slist_append(project->models, model); } /***********************************/ /* create a new model in a project */ /***********************************/ gpointer project_model_new(gpointer data) { struct project_pak *project = data; struct model_pak *model; /* NB: too many things look at model_pak -> keep public */ model = g_malloc(sizeof(struct model_pak)); project->models = g_slist_append(project->models, model); model_init(model); model->project = project; return(model); } /***************************/ /* project data primitives */ /***************************/ void project_data_set(gchar *key, gpointer data, gpointer p) { struct project_pak *project = p; g_assert(project != NULL); g_hash_table_insert(project->data, key, data); } gpointer project_data_get(gchar *key, gpointer p) { struct project_pak *project = p; g_assert(project != NULL); return(g_hash_table_lookup(project->data, key)); } /***********************************************/ /* create a new computional code configuration */ /***********************************************/ gpointer project_config_get(gint id, gpointer data) { gchar *label; GSList *list; struct config_pak *config; struct project_pak *project = data; g_assert(project != NULL); /* search for pre-existing config */ for (list=project->configs ; list ; list=g_slist_next(list)) { config = list->data; if (config->id == id) return(config); } /* create new config */ switch (id) { case ABINIT: label = g_strdup("abinit"); break; case CASTEP: label = g_strdup("castep"); break; case GAMESS: label = g_strdup("gamess"); break; case GAUSS: label = g_strdup("gaussian"); break; case GULP: label = g_strdup("gulp"); break; default: gui_text_show(ERROR, "Unknown computational code.\n"); return(NULL); } config = g_malloc(sizeof(struct config_pak)); /* TODO - add using a sort */ project->configs = g_slist_prepend(project->configs, config); config->id = id; config->label = label; config->data = NULL; return(config); } /************************/ /* extract project path */ /************************/ gchar *project_path(gpointer data) { struct project_pak *project = data; g_assert(project != NULL); return(project->path); } /****************************************************/ /* extract a pointer to the nth model of a projects */ /****************************************************/ gpointer project_model_get(gint n, gpointer data) { struct project_pak *project = data; g_assert(project != NULL); return(g_slist_nth_data(project->models, n)); } /*************************/ /* process solvent data */ /*************************/ void project_solvent_plot(GArray *energy, struct model_pak *model) { gint i, j, bins; gdouble value, min, max, de, *plot; gpointer graph; g_assert(model != NULL); g_assert(energy != NULL); if (!energy->len) return; min = max = g_array_index(energy, gdouble, 0); for (i=0 ; ilen ; i++) { value = g_array_index(energy, gdouble, i); if (value < min) min = value; if (value > max) max = value; } de = max - min; bins = 50; plot = g_malloc(bins * sizeof(gdouble)); for (i=bins ; i-- ; ) plot[i] = 0.0; for (i=0 ; ilen ; i++) { value = g_array_index(energy, gdouble, i); value -= min; value /= de; value *= bins; j = (gint) (value - 0.5); j = CLAMP(j, 0, bins-1); plot[j]++; } graph = graph_new("Solvent", model); graph_add_data(bins, plot, min, max, graph); g_free(plot); } /**********************************/ /* read in a project control file */ /**********************************/ #define DEBUG_PROJECT_READ 0 gint project_read(gchar *filename, struct model_pak *model) { gint a, b, i, j, ii, ij, ix, jx, ia, ib; gint set, fail, type, size, num_tokens; gint grid[2]; gchar *basename, *fullname, **buff; gdouble e, min, max, x[2], cell[2], *surface=NULL; gpointer scan, project; GArray *energy; GSList *list, *list_bad=NULL, *list_error=NULL, *list_nomin=NULL; struct model_pak temp_model; g_assert(model != NULL); g_assert(filename != NULL); /* init */ fullname = g_build_filename(sysenv.cwd, filename, NULL); model_init(&temp_model); temp_model.grafted = TRUE; /* CURRENT */ project = project_new("solvent"); project_model_add(model, project); model->project = project; #if DEBUG_PROJECT_READ printf("Reading project file: %s\n", fullname); #endif scan = scan_new(fullname); g_free(fullname); energy = g_array_new(FALSE, FALSE, sizeof(gdouble)); a = b = ia = ib = size = set = type = 0; while (!scan_complete(scan)) { buff = scan_get_tokens(scan, &num_tokens); /* keyword checks */ if (buff) { if (g_strncasecmp(*buff, "\%set", 4) == 0) { switch (type) { case 1: if (num_tokens == 5) { /* grid points */ grid[0] = str_to_float(*(buff+1)); grid[1] = str_to_float(*(buff+2)); /* sampling fraction */ cell[0] = str_to_float(*(buff+3)); cell[1] = str_to_float(*(buff+4)); /* total number of grid points on surface (includes symmetry related images) */ a = nearest_int(grid[0]/cell[0]); b = nearest_int(grid[1]/cell[1]); /* number of images required to fill entire cell */ ia = nearest_int(1.0/cell[0]); ib = nearest_int(1.0/cell[1]); /* allocation */ size = a*b; surface = g_malloc(size*sizeof(gdouble)); for (i=size ; i-- ; ) surface[i] = 0.0; set = 1; } else { printf("Bad solvent set.\n"); g_assert_not_reached(); } break; default: set = 1; } g_strfreev(buff); continue; } if (g_strncasecmp(*buff, "\%title", 6) == 0) { /* FIXME - properly defined project types */ if (num_tokens > 1) { if (g_strncasecmp(*(buff+1), "solvent", 7) == 0) type = 1; } g_strfreev(buff); continue; } } else { set=0; break; } /* processing */ if (set) { /* printf("set dimension: %d x %d, scaling: %f x %f\n", max[0], max[1], scale[0], scale[1]); */ basename = parse_strip(*buff); fullname = g_strdup_printf("%s%s%s.got", sysenv.cwd, DIR_SEP, basename); fail = 0; #if DEBUG_PROJECT_READ printf("reading: %s ", fullname); #endif /* bad read check */ temp_model.error_file_read = g_string_assign(temp_model.error_file_read, ""); if (read_gulp_output(fullname, &temp_model)) { list_bad = g_slist_prepend(list_bad, g_strdup_printf("%s.got", basename)); fail++; } /* check for any GULP errors */ if ((temp_model.error_file_read)->len) { list_error = g_slist_prepend(list_error, g_strdup_printf("%s.got", basename)); fail++; } /* ignore anything that didn't converge */ if (temp_model.gulp.gnorm > 0.1) { list_nomin = g_slist_prepend(list_nomin, g_strdup_printf("%s.got", basename)); fail++; } /* we have a valid energy that can be processed */ if (!fail) { #if DEBUG_PROJECT_READ printf("[%f][%f]\n", temp_model.gulp.energy, temp_model.gulp.gnorm); #endif g_array_append_val(energy, temp_model.gulp.energy); /* project dependent parsing */ if (surface) { switch (type) { case 1: /* grid point -> array index */ x[0] = str_to_float(*(buff+1)); x[1] = str_to_float(*(buff+2)); x[0] *= a; x[1] *= b; i = nearest_int(x[0]); j = nearest_int(x[1]); /* images (if any) */ for (ij=0 ; ijdata); } printf("=======================================\n"); } if (list_error) { list_error = g_slist_reverse(list_error); printf("The following files had GULP errors:\n"); for (list=list_error ; list ; list=g_slist_next(list)) { printf("%s\n", (gchar *) list->data); } printf("=======================================\n"); } if (list_nomin) { list_nomin = g_slist_reverse(list_nomin); printf("The following files failed to minimize:\n"); for (list=list_nomin ; list ; list=g_slist_next(list)) { printf("%s\n", (gchar *) list->data); } printf("=======================================\n"); } /* process the data set(s) */ switch (type) { case 1: #if DEBUG_PROJECT_READ printf("Processing solvent data...\n"); #endif min = G_MAXDOUBLE; max = -G_MAXDOUBLE; for (i=size ; i-- ; ) { e = *(surface+i); if (e < min) min = e; if (e > max) max = e; } /* setup colour scale */ /* TODO - make the names generic */ model->epot_min = min; model->epot_max = max; model->epot_div = 11; /* plot molsurf and colour with dock energy */ project_data_set("dock:a", GINT_TO_POINTER(a), project); project_data_set("dock:b", GINT_TO_POINTER(b), project); project_data_set("dock:min", g_strdup_printf("%f", min), project); project_data_set("dock:max", g_strdup_printf("%f", max), project); project_data_set("dock:energy", surface, project); ms_cube(0.8, MS_MOLECULAR, MS_SOLVENT, model); coords_init(CENT_COORDS, model); /* graph the solvent interaction */ project_solvent_plot(energy, model); break; default: printf("Unknown project type.\n"); break; } /* cleanup */ model_free(&temp_model); g_array_free(energy, TRUE); tree_model_refresh(model); free_slist(list_bad); free_slist(list_error); free_slist(list_nomin); return(0); } gdis-0.90/file_nwchem.c0000644000175000017500000001241410600706735013460 0ustar seansean/* Copyright (C) 2004 by Andrew Lloyd Rohl andrew@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include "gdis.h" #include "coords.h" #include "file.h" #include "parse.h" #include "model.h" #include "interface.h" /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; gint read_nw(gchar *filename, struct model_pak *data) { FILE *fp; gchar line[LINELEN], *name; fp = fopen(filename, "rt"); if (!fp) { sprintf(line, "Unable to open file %s\n", filename); gui_text_show(ERROR, line); return(1); } else { name = g_path_get_basename(filename); sprintf(line, "Opening %s: \n", name); g_free(name); gui_text_show(STANDARD, line); } strcpy(data->filename, filename); g_free(data->basename); data->basename = parse_strip(filename); model_prep(data); return(0); } /*******************************************/ /* read single NWChem output configuration */ /*******************************************/ #define DEBUG_READ_NWOUT 0 gint read_nwout_block(FILE *fp, struct model_pak *model) { gint num_tokens; gchar **buff, line[LINELEN], *text; GString *title, *gstring; GSList *clist; struct core_pak *core; clist = model->cores; /* skip until get a 1 in first column for first coordinate */ if (fgetline(fp, line)) return(1); while (g_ascii_strncasecmp(line, " 1", 5) != 0) { if (fgetline(fp, line)) return(1); } buff = tokenize(line, &num_tokens); while (num_tokens > 0) { if (clist) { core = (struct core_pak *) clist->data; clist = g_slist_next(clist); } else { core = new_core(*(buff+1), model); model->cores = g_slist_append(model->cores, core); } core->x[0] = str_to_float(*(buff+3)); core->x[1] = str_to_float(*(buff+4)); core->x[2] = str_to_float(*(buff+5)); #if DEBUG_READ_NWOUT printf("new coords %f %f %f\n", core->x[0], core->x[1], core->x[2]); #endif /* get next line */ g_strfreev(buff); if (fgetline(fp, line)) return(2); buff = tokenize(line, &num_tokens); } g_strfreev(buff); /* read until get the details of the current optimisation step */ while (g_ascii_strncasecmp(line, "@", 1) != 0) { if (fgetline(fp, line)) return(0); } buff = tokenize(line, &num_tokens); while (g_ascii_strncasecmp(line, "@", 1) == 0) { if (g_ascii_isdigit(buff[1][0])) { text = format_value_and_units(*(buff+2), 5); gstring = g_string_new(text); g_free(text); g_string_append(gstring, " a.u."); property_add_ranked(3, "Energy", gstring->str, model); g_string_free(gstring, TRUE); model->nwchem.energy = str_to_float(*(buff+2)); model->nwchem.max_grad = str_to_float(*(buff+4)); text = format_value_and_units(*(buff+5), 5); gstring = g_string_new(text); g_free(text); g_string_append(gstring, " a.u./A"); property_add_ranked(4, "RMS Gradient", gstring->str, model); g_string_free(gstring, TRUE); model->nwchem.rms_grad = str_to_float(*(buff+5)); model->nwchem.have_energy = model->nwchem.have_max_grad = model->nwchem.have_rms_grad = TRUE; } /* get next line */ g_strfreev(buff); if (fgetline(fp, line)) return(2); buff = tokenize(line, &num_tokens); } /* has the optimiser finished successfully? Looking for 4 ok's */ if (num_tokens == 4) model->nwchem.min_ok = TRUE; g_free(model->title); title = g_string_new(""); g_string_append_printf(title, "E"); g_string_append_printf(title, "(DFT)"); g_string_append_printf(title, " = %.5f au", model->nwchem.energy); g_string_append_printf(title, ", grad = %.5f", model->nwchem.rms_grad); model->title = g_strdup(title->str); g_string_free(title, TRUE); return(0); } /*******************************/ /* NWChem output frame reading */ /*******************************/ gint read_nwout_frame(FILE *fp, struct model_pak *model) { return(read_nwout_block(fp, model)); } /********************************/ /* Read in a NWChem output file */ /********************************/ gint read_nwout(gchar *filename, struct model_pak *model) { gint frame; gchar line[LINELEN]; FILE *fp; fp = fopen(filename, "rt"); if (!fp) return(1); frame=0; while (!fgetline(fp, line)) { if (g_strrstr(line, "Geometry \"geometry\" -> \"geometry\"") != NULL) { /* go through all frames to count them */ add_frame_offset(fp, model); read_nwout_block(fp, model); frame++; if (model->nwchem.min_ok) break; } } /* done */ strcpy(model->filename, filename); g_free(model->basename); model->basename = parse_strip(filename); model->num_frames = model->cur_frame = frame; model->cur_frame--; model_prep(model); return(0); } gdis-0.90/make_gdis.app0000755000175000017500000001355310521321202013451 0ustar seansean#!/bin/bash ################################################################################ # Environment variable check. These should be set in the makefile. if [[ -z $PLATYPUS ]]; then echo "Error: environment variable PLATYPUS does not exist" echo "I hope you are running this script from the makefile." exit 42 fi if [[ -z $FINK ]]; then echo "Error: environment variable FINK does not exist" echo "I hope you are running this script from the makefile." exit 42 fi if [[ ! -d $FINK ]]; then echo "Error: environment variable FINK does not point to a real directory." echo "$FINK" exit 42 fi ################################################################################ # A convenience function. function checkfile() { if [[ ! -f $1 ]]; then echo "Error: file $1 does not exist" exit 69 fi } ################################################################################ # $FINK with slashes escaped. FINK1=$( echo $FINK | sed 's/\//\\\//g' ) rm -rf gdis.app checkfile gdis checkfile gdis.elements checkfile gdis.manual checkfile gdis.library checkfile GDIS.icns checkfile gdis.app.template/Contents/Resources/script echo "Running Platypus..." $PLATYPUS -a GDIS -f gdis -f gdis.elements -f gdis.manual -f gdis.library -t python -o None -i GDIS.icns -V 0.89 -u "Sean Fleming" -I "org.sean.gdis" -D gdis.app.template/Contents/Resources/script gdis.app if [[ ! -f gdis.app/Contents/Resources/gdis ]]; then echo "Error: Platypus failed." exit 1 else echo "done." fi # Fix in case script is not executable after above step. if [[ ! -x gdis.app/Contents/Resources/script ]]; then chmod a+x gdis.app/Contents/Resources/script fi # Workaround for platypus icon copy bug if [[ ! -f gdis.app/Contents/Resources/GDIS.icns ]]; then cp GDIS.icns gdis.app/Contents/Resources sed -i "" 's/appIcon.icns/GDIS.icns/' gdis.app/Contents/Info.plist fi mkdir -p gdis.app/Contents/Frameworks #Make fink library dependencies to be within gdis.app. echo "Fixing library dependencies in gdis..." for lib in `otool -L gdis.app/Contents/Resources/gdis | grep -i "$FINK"` ; do if [[ -n $( echo $lib | grep -i $FINK ) ]]; then checkfile $lib cp -f $lib gdis.app/Contents/Frameworks newlib=$( echo "$lib" | sed 's/^.*\//\@executable_path\/..\/Frameworks\//' ) echo " $newlib" install_name_tool -change $lib $newlib gdis.app/Contents/Resources/gdis fi done echo "Copying pango..." for file in `find $FINK/lib/pango` ; do # newfile=$( echo "$file" | sed "s/$FINK1\/lib/gdis.app\/Contents\/Frameworks/" ) newfile=$( echo "$file" | perl -p -e "s/$FINK1\/lib/gdis.app\/Contents\/Frameworks/gi" ) if [[ -d $file ]]; then mkdir -p $newfile else newfile1=$( echo "$newfile" | grep -E -v -e "\.(la|a)$" ) if [[ -n "$newfile1" ]] ; then echo " $newfile1" checkfile $file cp $file $newfile fi fi done #Some fink libraries are dependent on other fink libraries. For now copy them #manually. echo "Copying extra libs to gdis.app/Contents/Frameworks" checkfile $FINK/lib/libintl.3.dylib cp $FINK/lib/libintl.3.dylib gdis.app/Contents/Frameworks #Got to copy pango.modules to Resources/etc/pango and put in $CWD/lib/pango/... #Also copy pango.aliases there too. mkdir -p gdis.app/Contents/Resources/etc/pango checkfile $FINK/etc/pango/pangox.aliases cp $FINK/etc/pango/pangox.aliases gdis.app/Contents/Resources/etc/pango/pangox.aliases #pango-querymodules | grep -v "^#" | sed "s/$FINK1\/lib/\$\{CWD\}\/..\/Frameworks/" | sed -E "s/^([^ ]+)/\"\1\"/" > gdis.app/Contents/Resources/etc/pango/pango.modules pango-querymodules | grep -v "^#" | perl -p -e "s/$FINK1\/lib/\\$\{\CWD}\/..\/Frameworks/gi" | sed -E "s/^([^ ]+)/\"\1\"/" > gdis.app/Contents/Resources/etc/pango/pango.modules echo "Copying GTK2..." mkdir -p gdis.app/Contents/Frameworks/gtk-2.0/$GTK2VERS for file in `find $FINK/lib/gtk-2.0/$GTK2VERS` ; do # newfile=$( echo "$file" | sed "s/$FINK1\/lib/gdis.app\/Contents\/Frameworks/" ) newfile=$( echo "$file" | perl -p -e "s/$FINK1\/lib/gdis.app\/Contents\/Frameworks/gi" ) if [[ -d $file ]]; then mkdir -p $newfile else newfile1=$( echo "$newfile" | grep -E -v -e "\.(la|a)$" ) if [[ -n "$newfile1" ]] ; then echo " $newfile1" checkfile $file cp $file $newfile fi fi done mkdir -p gdis.app/Contents/Resources/etc/gtk-2.0 #gtk-query-immodules-2.0 | sed "s/$FINK1\/lib/\$\{CWD\}\/..\/Frameworks/" | grep -v "^#" > gdis.app/Contents/Resources/etc/gtk-2.0/gtk.immodules gtk-query-immodules-2.0 | perl -p -e "s/$FINK1\/lib/\\$\{\CWD}\/..\/Frameworks/gi" | grep -v "^#" > gdis.app/Contents/Resources/etc/gtk-2.0/gtk.immodules # Get rid of fink dependencies out of libraries too. echo "Fixing inter-library dependencies..." for file in `find gdis.app/Contents/Frameworks -name "*.dylib" -or -name "*.so"`; do echo " processing $file" newlib=$( echo "$file" | sed 's/^.*\//\@executable_path\/..\/Frameworks\//' ) install_name_tool -id $newlib $file for lib in `otool -L $file | grep -i "$FINK"` ; do if [[ -n $( echo $lib | grep -i $FINK ) ]]; then newlib=$( echo "$lib" | sed 's/^.*\//\@executable_path\/..\/Frameworks\//' ) install_name_tool -change $lib $newlib $file fi done done gdk-pixbuf-query-loaders | perl -p -e "s/$FINK1\/lib/\\$\{\CWD}\/..\/Frameworks/gi"> gdis.app/Contents/Resources/gdk-pixbuf.loaders #gdk-pixbuf-query-loaders | sed "s/$FINK1\/lib/\$\{CWD\}\/..\/Frameworks/"> gdis.app/Contents/Resources/gdk-pixbuf.loaders # Final check that we've sorted out all the Fink dependencies. echo "Just checking sure we got all the Fink dependencies sorted..." for file in `find gdis.app/Contents/Frameworks -name "*.dylib" -or -name "*.so"`; do if [[ -n `otool -L $file | grep -i "$FINK"` ]]; then echo "$file still has a FINK depenency" fi done if [[ -n `otool -L gdis.app/Contents/Resources/gdis | grep -i "$FINK"` ]]; then echo "gdis.app/Contents/Resources/gdis still has a FINK depenency" fi gdis-0.90/tb_surface.xpm0000644000175000017500000000070310144615502013667 0ustar seansean/* XPM */ static char * tb_surface_xpm[] = { "16 16 5 1", " c None", ". c #FFFFFF", "+ c #383F38", "@ c #657765", "# c #869E86", " .. ", " ...++ ", " ..++@@++ ", " ++@@@@@@++ ", " ++@@@@@@@@@@++ ", " +#++@@@@@@++#+ ", " +###++@@++###+ ", " +######+#####+ ", " +#####+######+ ", " +######+#####+ ", " +#####+######+ ", " +######+#####+ ", " +#####+######+ ", " + ####+### + ", " #+## ", " + "}; gdis-0.90/type.c0000644000175000017500000004017510635400742012163 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include "gdis.h" #include "coords.h" #include "model.h" #include "file.h" #include "parse.h" #include "type.h" #include "type_pak.h" #include "task.h" #include "interface.h" /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /* typing ruleset construction */ /* FIXME - associate with model? globally? either/or? eg like element data */ /****************************************/ /* print the contents of type structure */ /****************************************/ void type_print(gpointer data) { struct type_pak *type = data; printf(" *** Typing rule: %p\n", type); printf(" FF assignment = %s\n", type->ff); printf(" Rule list, size = %d\n", g_slist_length(type->rules)); } /***********************************/ /* create a new atom typing object */ /***********************************/ gpointer type_new(void) { struct type_pak *type; type = g_malloc(sizeof(struct type_pak)); type->set_ff = FALSE; type->ff = NULL; type->set_charge = FALSE; type->charge = 0.0; type->rules = NULL; return(type); } /************************/ /* free a typing object */ /************************/ void type_free(gpointer data) { struct type_pak *type = data; g_assert(type != NULL); g_free(type->ff); free_slist(type->rules); g_free(type); } /*************************************************/ /* search for undefined types in a list of cores */ /*************************************************/ gint type_check_list(GSList *cores) { gint n=0; struct core_pak *core; GSList *list; for (list=cores ; list ; list=g_slist_next(list)) { core = list->data; /* NULL or '?' */ if (!core->atom_type) n++; } return(n); } /***********************************/ /* configure forcefield assignment */ /***********************************/ void type_ff_set(gint flag, const gchar *ff, gpointer data) { struct type_pak *type = data; g_assert(type != NULL); type->set_ff = flag; type->ff = g_strdup(ff); } /*******************************/ /* configure charge assignment */ /*******************************/ void type_charge_set(gint flag, gdouble charge, gpointer data) { struct type_pak *type = data; g_assert(type != NULL); type->set_charge = flag; type->charge = charge; } /***************************************/ /* add a rule to an atom typing object */ /***************************************/ /* TODO - more flexible eg not only elem, but label matching? */ void type_rule_add(gint level, gint count, const gchar *elem, gpointer data) { struct type_pak *type = data; struct rule_pak *rule; rule = g_malloc(sizeof(struct rule_pak)); rule->atom_number = elem_symbol_test(elem); rule->count = count; rule->level = level; type->rules = g_slist_prepend(type->rules, rule); } /*****************************************/ /* test a rule against a particular atom */ /*****************************************/ gint type_rule_match(struct rule_pak *rule, struct core_pak *core) { gint count; GSList *list, *neighbours; struct core_pak *core2; switch (rule->level) { case 0: if (rule->atom_number == core->atom_code) return(TRUE); else return(FALSE); case 1: neighbours = connect_neighbours(core); count = 0; for (list=neighbours ; list ; list=g_slist_next(list)) { core2 = list->data; if (rule->atom_number == core2->atom_code) count++; } if (count >= rule->count) return(TRUE); else return(FALSE); default: printf("FIXME - rule matching at level %d not implemented yet.\n", rule->level); } return(FALSE); } /******************************************/ /* apply a typing rule to a list of atoms */ /******************************************/ gint type_apply(gpointer data, GSList *cores) { gint match; GSList *list1, *list2; struct core_pak *core; struct type_pak *type = data; g_assert(type != NULL); /* foreach atom - check it satisfies all rules in the type's rule list */ for (list1=cores ; list1 ; list1=g_slist_next(list1)) { core = list1->data; /* rule match */ match = TRUE; for (list2=type->rules ; list2 ; list2=g_slist_next(list2)) { /* check for failed rule (only need 1 failure to terminate) */ if (!type_rule_match(list2->data, core)) { match = FALSE; break; } } if (match) { /* printf("core %p : assigning type %s\n", core, type->ff); */ g_free(core->atom_type); core->atom_type = g_strdup(type->ff); } } /* TODO - return the number matched? */ return(0); } /**************************/ /* remove all atom typing */ /**************************/ void type_clear(struct model_pak *model) { GSList *clist; struct core_pak *core; g_assert(model != NULL); for (clist=model->cores ; clist ; clist=g_slist_next(clist)) { core = clist->data; if (core->atom_type) { g_free(core->atom_type); core->atom_type = NULL; } } } /*************************************************************************/ /* get the number of bonded atoms of type atom_code attached to the core */ /*************************************************************************/ #define DEBUG_TYPE_CORE_HAS_BOND 0 gint type_core_has_bond(gint atom_code, struct core_pak *core) { gint match=0; GSList *blist; struct bond_pak *bond; struct core_pak *core1, *core2; #if DEBUG_TYPE_CORE_HAS_BOND printf("bond search [%s] - [%s]:\n", core->label, elements[atom_code].symbol); #endif for (blist=core->bonds ; blist ; blist=g_slist_next(blist)) { bond = blist->data; if (bond->type == BOND_HBOND) continue; core1 = bond->atom1; core2 = bond->atom2; if (core1 == core) { if (core2->atom_code == atom_code) match++; } else { if (core1->atom_code == atom_code) match++; } } #if DEBUG_TYPE_CORE_HAS_BOND printf("%d matches found.\n", match); #endif return(match); } /********************************************/ /* assign CVFF atom labels to a given model */ /********************************************/ void type_as_cvff(struct model_pak *model) { gint nb, nc; GSList *clist, *mlist; struct core_pak *core; struct mol_pak *mol; g_assert(model != NULL); /* wipe any pre-existing typing */ type_clear(model); /* loop over molecules -> can get some useful info (eg charge/size) */ for (mlist=model->moles ; mlist ; mlist=g_slist_next(mlist)) { mol = mlist->data; nc = g_slist_length(mol->cores); /* TODO - get molecule charge */ for (clist=mol->cores ; clist ; clist=g_slist_next(clist)) { core = clist->data; nb = g_slist_length(core->bonds); /* skip any that have already been assigned */ /* TODO - convenient if (eg) we latch onto an o with 2 h's (mol size == 3) -> water */ if (core->atom_type) continue; switch(core->atom_code) { /* hydrogen */ case 1: if (type_core_has_bond(8, core)) { /* FIXME - not a very good test for water... */ if (nc == 3) core->atom_type = g_strdup("h*"); else core->atom_type = g_strdup("ho"); } else core->atom_type = g_strdup("h"); break; /* carbon */ case 6: switch(nb) { case 4: core->atom_type = g_strdup("cg"); break; case 3: /* check -c- | h */ /* carboxylate */ if (type_core_has_bond(8, core) == 2) core->atom_type = g_strdup("c-"); else core->atom_type = g_strdup("cp"); break; case 2: /* check -c-o , o-c-o */ core->atom_type = g_strdup("c"); break; case 1: /* always a triple? (eg like co) */ core->atom_type = g_strdup("ct"); break; default: core->atom_type = g_strdup("c"); } break; /* oxygen */ case 8: /* TODO - better scheme needed - if bonded to carbon - need to check that carbon */ /* TODO - initially set all types to NULL & then while(!type) ... */ switch (nb) { case 2: if (type_core_has_bond(1, core) == 2) core->atom_type = g_strdup("o*"); else { if (type_core_has_bond(1, core) == 1) core->atom_type = g_strdup("oh"); else core->atom_type = g_strdup("o"); } break; case 1: if (type_core_has_bond(1, core)) core->atom_type = g_strdup("oh"); else core->atom_type = g_strdup("o"); break; default: core->atom_type = g_strdup("o"); break; } break; default: /* FIXME - is just the element symbol sufficient? */ core->atom_type = g_strdup_printf("%s", elements[core->atom_code].symbol); break; } } } } /**********************************************/ /* duplicate a model's cores & shells exactly */ /**********************************************/ /* TODO - put in coords.c ? */ void copy_atom_data(struct model_pak *src, struct model_pak *dest) { GSList *list; struct core_pak *core; /* copy periodicity info */ dest->periodic = src->periodic; dest->fractional = src->fractional; memcpy(dest->pbc, src->pbc, 6*sizeof(gdouble)); /* copy cores & shells */ for (list=src->cores ; list ; list=g_slist_next(list)) { core = dup_core(list->data); dest->cores = g_slist_prepend(dest->cores, core); if (core->shell) dest->shels = g_slist_prepend(dest->shels, core->shell); } /* ensure cores & shells are in the same order */ dest->cores = g_slist_reverse(dest->cores); dest->shels = g_slist_reverse(dest->shels); } /**********************************************/ /* assign atom charges (EEM) to a given model */ /**********************************************/ void type_eem(struct model_pak *model) { /* TODO */ } /**********************************************/ /* assign atom charges (QEq) to a given model */ /**********************************************/ void type_qeq(struct model_pak *model) { gint num_tokens; gchar line[LINELEN]; gchar *inp, *out, **buff; GSList *list; struct core_pak *core, *parent; struct model_pak temp; FILE *fp; /* checks */ g_assert(model != NULL); printf("Calculating charges using QEq...\n"); /* temp model for QEq calc */ model_init(&temp); copy_atom_data(model, &temp); /* setup for GULP QEq calc */ temp.gulp.run = E_SINGLE; temp.gulp.qeq = TRUE; temp.gulp.method = model->gulp.method; /* coulomb must be disabled for QEq */ temp.gulp.coulomb = NOBUILD; /* use symmetry for speed */ temp.sginfo.spacename = g_strdup(model->sginfo.spacename); temp.sginfo.spacenum = model->sginfo.spacenum; /* get temporary input/output filenames */ inp = gun("gin"); out = gun("got"); /* use GULP for the QEq calc */ write_gulp(inp, &temp); exec_gulp(inp, out); /* assign charges */ fp = fopen(out, "rt"); while (!fgetline(fp, line)) { if (g_ascii_strncasecmp(line, " Final charges from QEq", 24) == 0) { /* proceed until 1st atom */ buff = get_tokenized_line(fp, &num_tokens); while (buff) { if (g_ascii_isdigit(**(buff+0)) && g_ascii_isdigit(**(buff+1))) break; g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); } /* got 1st valid atom */ list = model->cores; while (buff) { /* check */ if (num_tokens < 3) break; /* current core to update */ while (list) { core = list->data; /* NB: we're using the asymetric unit (if exists) */ if (core->primary) break; else list = g_slist_next(list); } if (list) list = g_slist_next(list); else break; /* printf("%s : (%s) %s\n", core->label, *(buff+1), *(buff+2)); */ /* TODO - what about shells??? */ core->charge = str_to_float(*(buff+2)); core->lookup_charge = FALSE; g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); } } } fclose(fp); /* apply charges to symmetry related atoms as well */ for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->primary) continue; g_assert(core->primary_core != NULL); parent = core->primary_core; core->charge = parent->charge; core->lookup_charge = FALSE; } calc_emp(model); /* cleanup (TODO - delete inp/out) */ model_free(&temp); } #define STRICT_DREIDING_TYPE_CHECK 0 void type_dreiding_gasteiger(struct model_pak *model, gint mode) { gchar *temp_in_file, *temp_out_file; gchar *cmd; GSList *atom_list, *typed_atom_list; struct core_pak *core, *typed_core; struct model_pak temp_model; /* be sure that babel is installed */ if (!sysenv.babel_path) { gui_text_show(ERROR, "The babel program was not found in your path.\n"); return; } /* define temporary files */ /* #ifdef __WIN32 temp_in_file = "C:\\babel_in_temp.xyz"; temp_out_file = "C:\\babel_out_temp.bgf"; #else temp_in_file = "/tmp/babel_in_temp.xyz"; temp_out_file = "/tmp/babel_out_temp.bgf"; #endif write_xyz(temp_in_file, model); cmd = g_strdup_printf("%s -ixyz %s -obgf %s", sysenv.babel_path, temp_in_file, temp_out_file); */ /* NEW - using PDB as temp file, since it has connect data */ /* which babel may not generate correctly (at all?) for XYZ */ #ifdef __WIN32 temp_in_file = "C:\\babel_in_temp.pdb"; temp_out_file = "C:\\babel_out_temp.bgf"; #else temp_in_file = "/tmp/babel_in_temp.pdb"; temp_out_file = "/tmp/babel_out_temp.bgf"; #endif write_pdb(temp_in_file, model); cmd = g_strdup_printf("%s -ipdb %s -obgf %s", sysenv.babel_path, temp_in_file, temp_out_file); system(cmd); g_free(cmd); /* create a new temporary model */ model_init(&temp_model); /* read the translated result */ read_bgf(temp_out_file, &temp_model); #ifdef STRICT_DREIDING_TYPE_CHECK g_return_if_fail(g_slist_length(model->cores) == g_slist_length(temp_model.cores)); #endif /* dual list traversal */ for (atom_list = model->cores, typed_atom_list = temp_model.cores; atom_list; atom_list = atom_list->next, typed_atom_list = typed_atom_list->next) { core = atom_list->data; typed_core = typed_atom_list->data; #if STRICT_DREIDING_TYPE_CHECK g_return_if_fail(core->atom_code == typed_core->atom_code); /* can't check location or label, as the location can be fractional and the label will almost certainly be different. */ #endif if (mode == DREIDING) { g_free(core->atom_type); core->atom_type = g_strdup(typed_core->atom_type); /* g_free(core->atom_label); core->atom_label = g_strdup(typed_core->atom_label); */ if (model->gulp.species) g_free(model->gulp.species); model->gulp.species = g_strdup(temp_model.gulp.species); } if (mode == GASTEIGER) { core->charge = typed_core->charge; core->lookup_charge = FALSE; } } model_free(&temp_model); unlink(temp_in_file); unlink(temp_out_file); } /*********************************/ /* type model according to label */ /*********************************/ void type_model(const gchar *type, struct model_pak *model) { if (g_ascii_strncasecmp("CVFF", type, 4) == 0) type_as_cvff(model); if (g_ascii_strncasecmp("QEq", type, 3) == 0) type_qeq(model); if (g_ascii_strncasecmp("Drei", type, 4) == 0) type_dreiding_gasteiger(model, DREIDING); if (g_ascii_strncasecmp("Gast", type, 4) == 0) type_dreiding_gasteiger(model, GASTEIGER); } gdis-0.90/gui_edit.c0000644000175000017500000022150111035034370012760 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #ifdef __APPLE__ #include #else #include #endif #include "gdis.h" #include "coords.h" #include "edit.h" #include "file.h" #include "parse.h" #include "library.h" #include "matrix.h" #include "zmatrix.h" #include "measure.h" #include "model.h" #include "morph.h" #include "numeric.h" #include "select.h" #include "space.h" #include "spatial.h" #include "surface.h" #include "gui_shorts.h" #include "type.h" #include "interface.h" #include "dialog.h" #include "opengl.h" #include "zone.h" #define DEBUG 0 extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; extern GtkWidget *apd_label; extern GtkWidget *window; /* globals */ gdouble tmat[9]; gdouble tvec[3]; gdouble edit_anim_n=0; gdouble edit_chirality[2] = {6, 6}; gdouble edit_length = 1.44; gpointer edit_construct; gchar *edit_basis[2] = {NULL, NULL}; GtkWidget *elem_entry, *grid_dim, *grid_sep; GtkWidget *axis_entry, *obj_entry, *periodicity_spin; GtkWidget *transmat[12]; /* NEW */ gdouble edit_spatial_colour[3] = {1.0, 0.0, 0.0}; gdouble edit_label_colour[3] = {1.0, 1.0, 1.0}; enum{AT_ANY, AT_SELECTED, AT_LATTICE}; /*********************************************/ /* update widget values with internal values */ /*********************************************/ void update_transmat(void) { gint i, j; gchar *text; /* set transformation matrix widget entries */ for (j=0 ; j<3 ; j++) { for (i=0 ; i<3 ; i++) { text = g_strdup_printf("%f", tmat[3*j+i]); /* NB: display transpose */ gtk_entry_set_text(GTK_ENTRY(transmat[3*j+i]), text); g_free(text); } } /* set translation widget entries */ for (i=0 ; i<3 ; i++) { text = g_strdup_printf("%f", tvec[i]); gtk_entry_set_text(GTK_ENTRY(transmat[9+i]), text); g_free(text); } } /********************************************/ /* restore original transformation settings */ /********************************************/ void reset_transmat(void) { VEC3SET(tvec, 0.0, 0.0, 0.0); matrix_identity(tmat); update_transmat(); } /*************************************/ /* construct a transformation matrix */ /*************************************/ void construct_transmat(void) { gint n, flag=0, type=-1; const gchar *text; gdouble angle; gdouble v1[3]; struct vec_pak *p[3]; struct spatial_pak *spatial=NULL; struct model_pak *data; /* checks */ data = sysenv.active_model; if (!data) return; if (!GTK_IS_ENTRY(edit_construct)) return; /* requested transformation */ text = gtk_entry_get_text(GTK_ENTRY(edit_construct)); if (g_ascii_strncasecmp(text, "z alignment", 11) == 0) type = ALIGNMENT; if (g_ascii_strncasecmp(text, "reflection", 10) == 0) type = REFLECTION; if (g_ascii_strncasecmp(text, "rotation", 8) == 0) type = PAXIS; if (g_ascii_strncasecmp(text, "lattice", 7) == 0) type = LATMAT; if (g_ascii_strncasecmp(text, "identity", 8) == 0) type = IDENTITY; /* special cases */ switch(type) { case IDENTITY: reset_transmat(); return; case LATMAT: memcpy(tmat, data->latmat, 9*sizeof(gdouble)); VEC3SET(tvec, 0.0, 0.0, 0.0); update_transmat(); return; } /* rotation angle */ text = gtk_entry_get_text(GTK_ENTRY(axis_entry)); angle = str_to_float(text); /* check for special reference objects */ text = gtk_entry_get_text(GTK_ENTRY(obj_entry)); if (g_ascii_strncasecmp("x", text, 1) == 0) flag = 1; if (g_ascii_strncasecmp("y", text, 1) == 0) flag = 2; if (g_ascii_strncasecmp("z", text, 1) == 0) flag = 3; if (g_ascii_strncasecmp("a", text, 1) == 0) flag = 4; if (g_ascii_strncasecmp("b", text, 1) == 0) flag = 5; if (g_ascii_strncasecmp("c", text, 1) == 0) flag = 6; /* construct appropriate reference vector */ switch (flag) { case 1: VEC3SET(v1, 1.0, 0.0, 0.0); break; case 2: VEC3SET(v1, 0.0, 1.0, 0.0); break; case 3: VEC3SET(v1, 0.0, 0.0, 1.0); break; case 4: VEC3SET(v1, 1.0, 0.0, 0.0); vecmat(data->latmat, v1); break; case 5: VEC3SET(v1, 0.0, 1.0, 0.0); vecmat(data->latmat, v1); break; case 6: VEC3SET(v1, 0.0, 0.0, 1.0); vecmat(data->latmat, v1); break; default: /* no special reference object - assume a numerical spatial reference */ n = str_to_float(text); spatial = g_slist_nth_data(data->spatial, n); if (!spatial) { gui_text_show(ERROR, "Undefined reference spatial object.\n"); return; } /* compute orientation vector (plane normal/vector direction) */ switch (spatial->type) { case SPATIAL_VECTOR: p[0] = g_slist_nth_data(spatial->list, 0); p[1] = g_slist_nth_data(spatial->list, 1); g_assert(p[0] != NULL); g_assert(p[1] != NULL); /* vector points from 1st to 2nd */ ARR3SET(v1, p[1]->rx); ARR3SUB(v1, p[0]->rx); break; default: p[0] = g_slist_nth_data(spatial->list, 0); p[1] = g_slist_nth_data(spatial->list, 1); p[2] = g_slist_nth_data(spatial->list, 2); g_assert(p[0] != NULL); g_assert(p[1] != NULL); g_assert(p[2] != NULL); calc_norm(v1, p[0]->rx, p[1]->rx, p[2]->rx); break; } break; } /* construct */ switch (type) { case ALIGNMENT: matrix_z_alignment(tmat, v1); break; case PAXIS: matrix_v_rotation(tmat, v1, D2R*angle); break; case REFLECTION: matrix_v_reflection(tmat, v1); break; } VEC3SET(tvec, 0.0, 0.0, 0.0); update_transmat(); } /********************************************/ /* put text entry values into actual matrix */ /********************************************/ void change_transmat(GtkWidget *w, gint i) { const gchar *text; text = gtk_entry_get_text(GTK_ENTRY(transmat[i])); if (i < 9) tmat[i] = str_to_float(text); else tvec[i-9] = str_to_float(text); } /************************************************/ /* apply the current transformation/translation */ /************************************************/ void apply_transmat(GtkWidget *w, gint mode) { GSList *item, *list=NULL; struct model_pak *data; struct core_pak *core; struct shel_pak *shel; data = sysenv.active_model; if (!data) return; /* application mode */ switch(mode) { case AT_ANY: list = data->cores; break; case AT_SELECTED: list = data->selection; break; case AT_LATTICE: matrix_lattice_new(tmat, data); return; default: g_assert_not_reached(); } for (item=list ; item ; item=g_slist_next(item)) { core = item->data; /* transform */ vecmat(data->latmat, core->x); vecmat(tmat, core->x); ARR3ADD(core->x, tvec); vecmat(data->ilatmat, core->x); /* assoc. shell? */ if (core->shell) { shel = core->shell; /* transform */ vecmat(data->latmat, shel->x); vecmat(tmat, shel->x); ARR3ADD(shel->x, tvec); vecmat(data->ilatmat, shel->x); } } /* update */ coords_compute(data); zone_init(data); connect_bonds(data); connect_molecules(data); redraw_canvas(SINGLE); } /***************************************************/ /* construct animation using multiple applications */ /***************************************************/ /* FIXME - this is all broken (due to new quat based camera) */ void apply_n_transmat(GtkWidget *w, gint mode) { /* gint i; gdouble mat[9]; struct model_pak *model; struct transform_pak *transform; model = sysenv.active_model; if (!model) return; dialog_destroy_single(ANIM, model); memcpy(mat, model->rotmat, 9*sizeof(gdouble)); for (i=0 ; itransform_list = g_slist_append(model->transform_list, transform); transform->id = ROTATION; transpose(mat); matmat(tmat, mat); transpose(mat); memcpy(transform->matrix, mat, 9*sizeof(gdouble)); memcpy(transform->matrix, tmat, 9*sizeof(gdouble)); VEC3SET(transform->vector, model->offset[0], model->offset[1], 0.0); transform->scalar = model->scale; model->num_frames++; } if (model->num_frames) model->animation = TRUE; redraw_canvas(SINGLE); */ } /****************************/ /* move the whole selection */ /****************************/ #define DEBUG_REGION_MOVE 0 void region_move(GtkWidget *w, gint direction) { gchar txt[60]; GSList *list; struct model_pak *data; struct core_pak *core; data = sysenv.active_model; /* checks */ if (!data) return; if (data->periodic != 2) return; if (!data->selection) { gui_text_show(WARNING, "Empty selection.\n"); return; } #if DEBUG_REGION_MOVE P3MAT("depth vec:", data->surface.depth_vec); #endif /* quit if no depth info ie a loaded 2D file */ if (VEC3MAG(data->surface.depth_vec) < FRACTION_TOLERANCE) { gui_text_show(ERROR, "This is only possible for surfaces generated in the current session.\n"); return; } /* move all atoms in selection */ for (list=data->selection ; list ; list=g_slist_next(list)) { core = list->data; region_move_atom(core, direction, data); } /* update */ coords_compute(data); connect_bonds(data); connect_molecules(data); #if DEBUG_REGION_MOVE printf("old dipole: %f\n", data->gulp.sdipole); #endif /* recompute */ calc_emp(data); #if DEBUG_REGION_MOVE printf("new dipole: %f\n", data->gulp.sdipole); #endif /* inform the user */ sprintf(txt, "New surface dipole: %f\n", data->gulp.sdipole); gui_text_show(STANDARD, txt); redraw_canvas(SINGLE); } /****************************/ /* connectivity only update */ /****************************/ void update_bonds(void) { struct model_pak *data; data = sysenv.active_model; if (!data) return; coords_compute(data); connect_bonds(data); connect_molecules(data); redraw_canvas(SINGLE); } /*******************************/ /* creates a new (blank) model */ /*******************************/ void edit_model_create(void) { struct model_pak *data; /* make a slot for the new model */ data = model_new(); sysenv.active_model = data; /* setup model parameters */ data->id = CREATOR; strcpy(data->filename, "new_model"); g_free(data->basename); data->basename = g_strdup("new_model"); /* initialize */ model_prep(data); data->mode = FREE; /* rmax has to be after coords_init() as INIT_COORDS will set it to 1.0 */ data->rmax = 5.0*RMAX_FUDGE; /* update/redraw */ tree_model_add(data); tree_select_model(data); redraw_canvas(SINGLE); } /***********************/ /* add atom event hook */ /***********************/ void add_atom(gint x, gint y, struct model_pak *data) { gchar *elem; const gchar *orig; gdouble r[3]; struct core_pak *core; g_assert(data != NULL); /* get the atom type from the label */ orig = gtk_entry_get_text(GTK_ENTRY(apd_label)); elem = g_strdup(orig); /* add the atom to the model */ core = new_core(elem, data); /* set atom position in the plane running through the origin */ gl_project(r, x, y, canvas_find(data)); /* ARR3ADD(r, data->centroid); VEC3MUL(r, 1.0/data->scale); */ ARR3SET(core->rx, r); ARR3SET(core->x, r); vecmat(data->ilatmat, core->x); ARR3ADD(core->x, data->centroid); data->cores = g_slist_append(data->cores, core); /* make sure this atom is in the apd box, so we can keep adding this type */ select_clear(data); select_add_core(core, data); /* TODO - need a more fine grained update (atoms/selection) */ /* coords_compute(data); */ zone_init(data); connect_bonds(data); connect_molecules(data); /* REFRESH */ gui_refresh(GUI_MODEL_PROPERTIES); g_slist_free(data->unique_atom_list); data->unique_atom_list = find_unique(ELEMENT, data); init_atom_colour(core, data); init_atom_charge(core, data); calc_emp(data); /* done */ g_free(elem); } /*****************************/ /* change the lattice matrix */ /*****************************/ void edit_transform_latmat(void) { GSList *list; struct model_pak *model; struct core_pak *core; struct shel_pak *shell; /* checks */ model = sysenv.active_model; if (!model) return; /* remove all symmetry and convert to cartesian */ space_make_p1(model); /* make coordinates cartesian for the prep stqage */ for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; vecmat(model->latmat, core->x); } for (list=model->shels ; list ; list=g_slist_next(list)) { shell = list->data; vecmat(model->latmat, shell->x); } /* create new lattice */ matmat(tmat, model->latmat); model->fractional = FALSE; model->construct_pbc = TRUE; model_prep(model); /* GUI updates */ dialog_destroy_single(GENSURF, model); tree_model_refresh(model); gui_active_refresh(); gui_relation_update(model); redraw_canvas(SINGLE); } /***********************************/ /* change periodicity of the model */ /***********************************/ void cb_modify_periodicity(void) { gint i, n, button; gdouble d, x[3]; GSList *list; GtkWidget *dialog; struct model_pak *model; struct core_pak *core; struct shel_pak *shell; /* checks */ model = sysenv.active_model; if (!model) return; n = SPIN_IVAL(GTK_SPIN_BUTTON(periodicity_spin)); /* if we're increasing the periodicity, we need repeat vector info */ if (n > model->periodic) { /* check if its the unit vector (ie likely unchanged from default) */ for (i=model->periodic ; icores ; list ; list=g_slist_next(list)) { core = list->data; vecmat(model->latmat, core->x); } for (list=model->shels ; list ; list=g_slist_next(list)) { shell = list->data; vecmat(model->latmat, shell->x); } /* set the (extra) new lattice matrix periodicty */ for (i=model->periodic ; ilatmat[i+0] = tmat[i+0]; model->latmat[i+3] = tmat[i+3]; model->latmat[i+6] = tmat[i+6]; } /* init new lattice */ model->periodic = n; model->fractional = FALSE; model->construct_pbc = TRUE; model_prep(model); /* GUI updates */ /* REFRESH */ dialog_destroy_single(GENSURF, model); tree_model_refresh(model); gui_relation_update(model); gui_refresh(GUI_MODEL_PROPERTIES); gui_refresh(GUI_CANVAS); } /********************/ /* build a nanotube */ /********************/ #define EDIT_NANOTUBE_NEW 0 void edit_nanotube_new(void) { gint i, j, k, n, m, d, dr, np, mp; gint imin, imax, jmin, jmax, dummy[3]; gdouble a1[3], a2[3], a3[3]; gdouble a, r, x[3], y[3], ch[3], t[3], v[3], p[2]; gchar *text; struct core_pak *core; struct model_pak *model; /* checks */ model = sysenv.active_model; if (!model) { edit_model_create(); model = sysenv.active_model; g_assert(model != NULL); } /* default to brenner if potential set is absent */ if (!model->gulp.potentials && !model->gulp.libfile) model->gulp.potentials = g_strdup("brenner\n"); #define ROOT3 sqrt(3) /* TODO - test basis atom strings for validity */ #if EDIT_NANOTUBE_NEW printf("Basis: %s, %s (%f)\n", edit_basis[0], edit_basis[1], edit_length); #endif /* compute lattice basis vectors */ VEC3SET(a1, 1.5*edit_length, 0.5*ROOT3*edit_length, 0.0); VEC3SET(a2, 1.5*edit_length, -0.5*ROOT3*edit_length, 0.0); VEC3SET(a3, edit_length, 0.0, 0.0); /* compute indices */ n = edit_chirality[0]; m = edit_chirality[1]; d = gcd(n, m); if ((n - m) % (3*d)) dr = d; else dr = 3.0*d; np = 2*m + n; np /= dr; mp = 2*n + m; mp /= dr; /* chirality vector */ ARR3SET(x, a1); ARR3SET(y, a2); VEC3MUL(x, n); VEC3MUL(y, m); ARR3SET(ch, x); ARR3ADD(ch, y); /* tube radius */ r = 0.5 * VEC3MAG(ch) / G_PI; /* translation vector */ ARR3SET(x, a1); ARR3SET(y, a2); VEC3MUL(x, np); VEC3MUL(y, mp); ARR3SET(t, x); ARR3SUB(t, y); /* loop limits */ imin = MIN(MIN(np, 0), n); imax = MAX(MAX(n+np, n), np); jmin = MIN(MIN(-mp, 0), m); jmax = MAX(MAX(m-np, m), -mp); #if EDIT_NANOTUBE_NEW printf("chirality vector index: (%d, %d)\n", n, m); printf("chirality xlat index: (%d, %d)\n", np, -mp); P3VEC("chiral vector: ", ch); P3VEC("xlat vector: ", t); #endif /* loop over graphite lattice */ for (i=imin ; i<=imax ; i++) { for (j=jmin ; j<=jmax ; j++) { /* compute lattice vector */ ARR3SET(x, a1); ARR3SET(y, a2); VEC3MUL(x, i); VEC3MUL(y, j); ARR3SET(v, x); ARR3ADD(v, y); /* compute basis atom coord */ for (k=0 ; k<2 ; k++) { if (k) { ARR3ADD(v, a3); } ARR3SET(x, v); ARR3MUL(x, ch); p[0] = x[0] + x[1] + x[2]; p[0] /= VEC3MAGSQ(ch); ARR3SET(y, v); ARR3MUL(y, t); p[1] = y[0] + y[1] + y[2]; p[1] /= VEC3MAGSQ(t); /* clamp to one unit's worth of atoms */ fractional_clamp(p, dummy, 2); /* choose basis atom type */ if (k) core = core_new(edit_basis[0], NULL, model); else core = core_new(edit_basis[1], NULL, model); model->cores = g_slist_prepend(model->cores, core); /* compute 1D fractional coords */ a = 2.0 * G_PI * p[0]; /* xlat in x */ /* core->x[0] = -p[1]; */ core->x[0] = p[1]; core->x[1] = r*sin(a); core->x[2] = r*cos(a); } } } /* setup */ /* TODO - what if periodicity in z is desired??? */ model->periodic = 1; model->fractional = TRUE; model->pbc[0] = VEC3MAG(t); model_prep(model); /* model info */ text = g_strdup_printf("(%d, %d)", n, m); property_add_ranked(2, "Chirality", text, model); g_free(text); text = g_strdup_printf("%.4f Angs", r); property_add_ranked(3, "Radius", text, model); g_free(text); tree_model_refresh(model); gui_refresh(GUI_MODEL_PROPERTIES); gui_refresh(GUI_CANVAS); gui_relation_update(model); } /***********************************************/ /* periodicity dialog hook to make a supercell */ /***********************************************/ void edit_make_supercell(void) { struct model_pak *model; model = sysenv.active_model; if (model) { space_make_supercell(model); model_prep(model); } /* REFRESH */ gui_refresh(GUI_MODEL_PROPERTIES); gui_refresh(GUI_CANVAS); } /************************/ /* make active model P1 */ /************************/ void edit_make_p1(void) { struct model_pak *model; model = sysenv.active_model; if (!model) return; if (model->periodic != 3) return; space_make_p1(model); /* REFRESH */ gui_refresh(GUI_MODEL_PROPERTIES); gui_refresh(GUI_CANVAS); } /***********************/ /* start add atom mode */ /***********************/ void edit_atom_add(void) { if (!sysenv.active_model) edit_model_create(); gui_mode_switch(ATOM_ADD); } /********************************/ /* add shells to selected cores */ /********************************/ void edit_shells_add(void) { GSList *list; struct core_pak *core; struct shel_pak *shell; struct model_pak *model; model = sysenv.active_model; if (model) { for (list=model->selection ; list ; list=g_slist_next(list)) { core = list->data; /* create new shell if none present */ if (!core->shell) { shell = shell_new(core->atom_label, NULL, model); model->shels = g_slist_prepend(model->shels, shell); /* start shell at core coords */ ARR3SET(shell->x, core->x); ARR3SET(shell->rx, core->rx); /* transfer appropriate core characteristics */ shell->primary = core->primary; shell->orig = core->orig; shell->region = core->region; /* do core-shell link */ shell->core = core; core->shell = shell; } } } } /*****************************/ /* atom/mol cell confinement */ /*****************************/ void edit_confine(GtkWidget *w, gint mode) { struct model_pak *model; model = sysenv.active_model; if (!model) return; switch (mode) { case CORE: coords_confine_cores(model->cores, model); coords_compute(model); connect_bonds(model); break; case MOL: connect_molecules(model); break; } redraw_canvas(SINGLE); } /******************/ /* bonding toggle */ /******************/ void gui_connect_toggle(void) { struct model_pak *model = sysenv.active_model; if (model) { model->show_bonds ^= 1; redraw_canvas(SINGLE); } } /**********************/ /* model builder page */ /**********************/ /* TODO - molecule fragments (library?) */ void build_page(GtkWidget *box) { GtkWidget *vbox, *hbox; GtkWidget *label, *entry, *spin; g_return_if_fail(box != NULL); /* Frame */ vbox = gui_frame_vbox("Atoms", FALSE, FALSE, box); gui_button_x("Add atoms", edit_atom_add, NULL, vbox); gui_button_x("Confine atoms to cell", edit_confine, (gpointer) CORE, vbox); gui_button_x("Confine molecules to cell", edit_confine, (gpointer) MOL, vbox); gui_button_x("Add shells to selected cores", edit_shells_add, NULL, vbox); /* Frame */ /* FIXME - fix up user bonds then re-introduce */ vbox = gui_frame_vbox("Bonds", FALSE, FALSE, box); gui_button_x("Add single bonds ", gtk_mode_switch, (gpointer) BOND_SINGLE, vbox); /* gui_button_x("Add double bonds ", gtk_mode_switch, (gpointer) BOND_DOUBLE, vbox); gui_button_x("Add triple bonds ", gtk_mode_switch, (gpointer) BOND_TRIPLE, vbox); */ gui_button_x("Delete bonds ", gtk_mode_switch, (gpointer) BOND_DELETE, vbox); gui_button_x("Toggle bonding ", gui_connect_toggle, NULL, vbox); /* Frame */ vbox = gui_frame_vbox("Structural", FALSE, FALSE, box); gui_button_x("Make new model", edit_model_create, NULL, vbox); gui_button_x("Make supercell", edit_make_supercell, NULL, vbox); gui_button_x("Force structure to P1", edit_make_p1, NULL, vbox); /* nanotube setup */ vbox = gui_frame_vbox("Nanotube", FALSE, FALSE, box); /* chirality */ hbox = gtk_hbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new("Chirality "); gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0); spin = gui_direct_spin(NULL, &edit_chirality[0], 0, 99, 1, NULL, NULL, NULL); gtk_box_pack_start(GTK_BOX(hbox),spin,FALSE,FALSE,0); spin = gui_direct_spin(NULL, &edit_chirality[1], 0, 99, 1, NULL, NULL, NULL); gtk_box_pack_start(GTK_BOX(hbox),spin,FALSE,FALSE,0); /* basis atoms */ /* hbox = gtk_hbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); */ if (!edit_basis[0]) edit_basis[0] = g_strdup("C"); if (!edit_basis[1]) edit_basis[1] = g_strdup("C"); entry = gui_text_entry(" Basis ", &edit_basis[0], TRUE, TRUE, hbox); gtk_entry_set_width_chars(GTK_ENTRY(entry), 4); entry = gui_text_entry(" - ", &edit_basis[1], TRUE, TRUE, hbox); gtk_entry_set_width_chars(GTK_ENTRY(entry), 4); /* characteristic length */ gui_direct_spin(" : ", &edit_length, 0.1, 5.0, 0.05, NULL, NULL, hbox); gui_button_x("Create nanotube ", edit_nanotube_new, NULL, vbox); gtk_widget_show_all(box); } /*******************/ /* spatial globals */ /*******************/ GtkListStore *spatial_list=NULL; GtkWidget *spatial_tree=NULL; gpointer spatial_selected=NULL; /**************************************/ /* delete all spatials of given label */ /**************************************/ void gui_spatial_delete(GtkWidget *w, gpointer data) { const gchar *label = data; if (sysenv.active_model) spatial_destroy_by_label(label, sysenv.active_model); sysenv.refresh_dialog=TRUE; redraw_canvas(SINGLE); } /***********************/ /* delete all spatials */ /***********************/ void gui_spatial_delete_all(GtkWidget *w, gpointer data) { struct model_pak *model = sysenv.active_model; if (model) { spatial_destroy_all(model); sysenv.refresh_dialog=TRUE; redraw_canvas(SINGLE); } } /*****************************************/ /* delete the currently selected spatial */ /*****************************************/ void gui_spatial_delete_selected(GtkWidget *w, gpointer data) { spatial_destroy(spatial_selected, sysenv.active_model); sysenv.refresh_dialog=TRUE; redraw_canvas(SINGLE); } /*****************************/ /* fill out the spatial list */ /*****************************/ void gui_spatial_populate(void) { gint n; gchar *size, *type; GSList *list; GtkTreeIter iter; struct spatial_pak *spatial; struct model_pak *model; gtk_list_store_clear(spatial_list); model = sysenv.active_model; if (!model) return; for (list=model->spatial ; list ; list=g_slist_next(list)) { spatial = list->data; /* compute number of primitives */ n = g_slist_length(spatial->list); if (spatial->size) n /= spatial->size; size = g_strdup_printf("%d", n); /* primitive type */ switch (spatial->size) { case 1: type = g_strdup("points"); break; case 2: type = g_strdup("vectors"); break; case 3: type = g_strdup("triangles"); break; case 4: type = g_strdup("quads"); break; default: type = g_strdup("vertices"); break; } /* add the spatial and descriptors */ gtk_list_store_append(spatial_list, &iter); gtk_list_store_set(spatial_list, &iter, 0, spatial->label, 1, size, 2, type, 3, spatial, -1); /* NB: the list will make its own copy */ g_free(size); g_free(type); } } /*******************************/ /* select a particular spatial */ /*******************************/ void gui_spatial_select(GtkTreeSelection *selection, gpointer data) { GtkTreeIter iter; GtkTreeModel *treemodel; gpointer spatial; struct model_pak *model; /* checks */ model = sysenv.active_model; if (!model) return; /* record selection as active */ if (gtk_tree_selection_get_selected(selection, &treemodel, &iter)) { gtk_tree_model_get(treemodel, &iter, 3, &spatial, -1); spatial_selected = spatial; } } /**************************************/ /* callback for spatial colour change */ /**************************************/ void gui_spatial_colour_all(GtkWidget *w, gdouble *colour) { GSList *list1, *list2; struct model_pak *model; struct spatial_pak *spatial; struct vec_pak *vertex; model = sysenv.active_model; if (model) { for (list1=model->spatial ; list1 ; list1=g_slist_next(list1)) { spatial = list1->data; for (list2=spatial->list ; list2 ; list2=g_slist_next(list2)) { vertex = list2->data; ARR3SET(vertex->colour, colour); } } } gui_refresh(GUI_CANVAS); } /***********************************************/ /* callback for selected spatial colour change */ /***********************************************/ void gui_spatial_colour_select(GtkWidget *w, gdouble *colour) { GSList *list; struct vec_pak *vertex; struct spatial_pak *spatial = spatial_selected; if (spatial) { for (list=spatial->list ; list ; list=g_slist_next(list)) { vertex = list->data; ARR3SET(vertex->colour, colour); } gui_refresh(GUI_CANVAS); } } /********************************************/ /* callback for spatial label colour change */ /********************************************/ void gui_spatial_colour_label_all(GtkWidget *w, gdouble *colour) { GSList *list; struct model_pak *model; struct spatial_pak *spatial; model = sysenv.active_model; if (model) { for (list=model->spatial ; list ; list=g_slist_next(list)) { spatial = list->data; ARR3SET(spatial->c, colour); } } gui_refresh(GUI_CANVAS); } /*****************************************************/ /* callback for selected spatial label colour change */ /*****************************************************/ void gui_spatial_colour_label_select(GtkWidget *w, gdouble *colour) { struct spatial_pak *spatial = spatial_selected; if (spatial) { ARR3SET(spatial->c, colour); gui_refresh(GUI_CANVAS); } } /************************/ /* spatial objects page */ /************************/ void spatial_page(GtkWidget *box) { gint i; gchar *titles[] = {" Label ", " Size ", " Primitive "}; GtkCellRenderer *r; GtkTreeViewColumn *c; GtkTreeSelection *select; GtkWidget *swin, *hbox, *vbox1, *vbox2, *vbox; /* initialize - nothing selected */ spatial_selected = NULL; /* left & right pane split */ hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_container_add(GTK_CONTAINER(box), hbox); vbox1 = gtk_vbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(hbox), vbox1, FALSE, FALSE, 0); vbox2 = gtk_vbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(hbox), vbox2, TRUE, TRUE, 0); /* Frame */ vbox = gui_frame_vbox("Adding", FALSE, FALSE, vbox1); /* mode buttons */ gui_button_x("Add vectors ", gtk_mode_switch, GINT_TO_POINTER(DEFINE_VECTOR), vbox); gui_button_x("Add planes ", gtk_mode_switch, GINT_TO_POINTER(DEFINE_PLANE), vbox); /* FIXME - currently, ribbons are not spatial objects */ gui_button_x("Add ribbons ", gtk_mode_switch, GINT_TO_POINTER(DEFINE_RIBBON), vbox); /* Frame */ vbox = gui_frame_vbox("Deleting", FALSE, FALSE, vbox1); gui_button_x("Delete all vectors ", gui_spatial_delete, "vector", vbox); gui_button_x("Delete all planes ", gui_spatial_delete, "plane", vbox); gui_button_x("Delete all ", gui_spatial_delete_all, NULL, vbox); gui_button_x("Delete selected ", gui_spatial_delete_selected, NULL, vbox); /* Frame */ vbox = gui_frame_vbox(NULL, FALSE, FALSE, vbox1); /* TODO - apply to selection */ gui_colour_box("Spatial fill colour ", edit_spatial_colour, vbox); gui_button_x("Apply to all ", gui_spatial_colour_all, edit_spatial_colour, vbox); gui_button_x("Apply to selected ", gui_spatial_colour_select, edit_spatial_colour, vbox); /* Frame */ vbox = gui_frame_vbox(NULL, FALSE, FALSE, vbox1); /* TODO - apply to selection */ gui_colour_box("Spatial label colour ", edit_label_colour, vbox); gui_button_x("Apply to all ", gui_spatial_colour_label_all, edit_label_colour, vbox); gui_button_x("Apply to selected ", gui_spatial_colour_label_select, edit_label_colour, vbox); /* spatial list */ vbox = gui_frame_vbox(NULL, TRUE, TRUE, vbox2); /* scrolled window */ swin = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(swin), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_box_pack_start(GTK_BOX(vbox), swin, TRUE, TRUE, 0); /* list */ spatial_list = gtk_list_store_new(4, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_POINTER); spatial_tree = gtk_tree_view_new_with_model(GTK_TREE_MODEL(spatial_list)); gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(swin), spatial_tree); for (i=0 ; i<3 ; i++) { r = gtk_cell_renderer_text_new(); c = gtk_tree_view_column_new_with_attributes(titles[i], r, "text", i, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(spatial_tree), c); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(spatial_tree), FALSE); } gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(spatial_tree), TRUE); /* selection handler */ select = gtk_tree_view_get_selection(GTK_TREE_VIEW(spatial_tree)); gtk_tree_selection_set_mode(select, GTK_SELECTION_SINGLE); g_signal_connect(G_OBJECT(select), "changed", G_CALLBACK(gui_spatial_select), NULL); gui_spatial_populate(); gtk_widget_show_all(box); } /************************/ /* transformations page */ /************************/ void trans_page(GtkWidget *box) { gint i, j; GList *list; GtkWidget *table, *hbox, *vbox, *label; g_assert(box != NULL); /* transformation construction */ vbox = gui_frame_vbox("Construction", FALSE, FALSE, box); /* TODO - use spinners instead of gtk entries for these numbers */ /* axes order */ hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(vbox), hbox, TRUE, FALSE, 0); label = gtk_label_new("Rotation angle (degrees):"); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); axis_entry = gtk_entry_new(); gtk_box_pack_end(GTK_BOX(hbox), axis_entry, FALSE, FALSE, 0); /* gtk_entry_set_text(GTK_ENTRY(axis_entry), "90"); */ /* spatial object */ hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(vbox), hbox, TRUE, FALSE, 0); label = gtk_label_new("Reference spatial object: "); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); obj_entry = gtk_entry_new(); gtk_box_pack_end(GTK_BOX(hbox), obj_entry, FALSE, FALSE, 0); /* gtk_entry_set_text(GTK_ENTRY(obj_entry), "0"); */ /* construction buttons */ hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); list = NULL; list = g_list_prepend(list, "identity matrix"); list = g_list_prepend(list, "lattice matrix"); list = g_list_prepend(list, "reflection matrix"); list = g_list_prepend(list, "rotation matrix"); list = g_list_prepend(list, "z alignment matrix"); list = g_list_reverse(list); edit_construct = gui_pulldown_new("Construct", list, FALSE, hbox); gui_button_x(NULL, construct_transmat, NULL, hbox); /* table */ table = gtk_table_new(5, 4, FALSE); gtk_container_add(GTK_CONTAINER(GTK_BOX(vbox)),table); label = gtk_label_new("a*"); gtk_table_attach_defaults(GTK_TABLE(table),label,0,1,1,2); label = gtk_label_new("b*"); gtk_table_attach_defaults(GTK_TABLE(table),label,0,1,2,3); label = gtk_label_new("c*"); gtk_table_attach_defaults(GTK_TABLE(table),label,0,1,3,4); label = gtk_label_new("a"); gtk_table_attach_defaults(GTK_TABLE(table),label,1,2,0,1); label = gtk_label_new("b"); gtk_table_attach_defaults(GTK_TABLE(table),label,2,3,0,1); label = gtk_label_new("c"); gtk_table_attach_defaults(GTK_TABLE(table),label,3,4,0,1); label = gtk_label_new("t"); gtk_table_attach_defaults(GTK_TABLE(table),label,4,5,0,1); /* column loop */ for (j=0 ; j<3 ; j++) { /* row loop */ for (i=0 ; i<3 ; i++) { transmat[3*j+i] = gtk_entry_new(); gtk_table_attach_defaults(GTK_TABLE(table),transmat[3*j+i],i+1,i+2,j+1,j+2); gtk_widget_set_size_request(transmat[3*j+i], 7*sysenv.gtk_fontsize, -1); } } /* translation */ for (j=0 ; j<3 ; j++) { transmat[9+j] = gtk_entry_new(); gtk_table_attach_defaults(GTK_TABLE(table),transmat[9+j],4,5,j+1,j+2); gtk_widget_set_size_request(transmat[9+j], 7*sysenv.gtk_fontsize, -1); } /* control buttons */ vbox = gui_frame_vbox("Coordinate transformations", FALSE, FALSE, box); gui_button_x("Apply to all atoms", apply_transmat, GINT_TO_POINTER(AT_ANY), vbox); gui_button_x("Apply to selected atoms", apply_transmat, GINT_TO_POINTER(AT_SELECTED), vbox); /* animation construction */ /* FIXME - broken by new quaternion camera */ /* hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new("Generate animation frames "); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); gui_direct_spin(NULL, &edit_anim_n, 0.0, 1000.0, 1.0, NULL, NULL, hbox); gui_button_x(NULL, apply_n_transmat, GINT_TO_POINTER(AT_ANY), hbox); */ /* control buttons */ vbox = gui_frame_vbox("Lattice transformations", FALSE, FALSE, box); gui_button_x("Apply to lattice matrix", edit_transform_latmat, NULL, vbox); hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new("Alter lattice periodicity "); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); periodicity_spin = gtk_spin_button_new_with_range(0, 3, 1); gtk_box_pack_start(GTK_BOX(hbox), periodicity_spin, FALSE, FALSE, 0); gui_button_x(NULL, cb_modify_periodicity, NULL, hbox); gui_button_x("Create new lattice model from linear combination", apply_transmat, GINT_TO_POINTER(AT_LATTICE), vbox); } /*************************************/ /* save a diffraction (DIFFAX) setup */ /*************************************/ struct model_pak *diffract_model=NULL; void diffract_save(gchar *name) { write_diffax(name, diffract_model); dialog_destroy_type(FILE_SELECT); } /******************************************/ /* create a file dialog for a DIFFAX save */ /******************************************/ void diffract_save_dialog(GtkWidget *w, struct model_pak *model) { diffract_model = model; file_dialog("Save DIFFAX file", model->basename, FILE_SAVE, (gpointer) diffract_save, DIFFAX_INP); } /*******************/ /* add a new layer */ /*******************/ GtkWidget *diffract_layer_total; #define DEBUG_DIFFRACT_LAYER_SETUP 0 void diffract_layer_setup(struct model_pak *data) { gint n, region; gint num_layer, tot_layer; gdouble start, stop; GSList *clist, *list1=NULL; struct layer_pak *layer; struct core_pak *core; if (!data) return; if (GTK_IS_SPIN_BUTTON(diffract_layer_total)) tot_layer = SPIN_IVAL(GTK_SPIN_BUTTON(diffract_layer_total)); else return; /* get rid of old list */ free_slist(data->layer_list); data->layer_list = NULL; for (num_layer=0 ; num_layerwidth = 1.0/(gdouble) tot_layer; VEC3SET(layer->centroid, 0.0, 0.0, 0.0); start = (gdouble) num_layer / (gdouble) tot_layer; stop = (gdouble) (num_layer+1) / (gdouble) tot_layer; #if DEBUG_DIFFRACT_LAYER_SETUP printf("new layer: %f-%f (%f)\n", start, stop, layer->width); #endif region = num_layer; /* add cores that satisfy the start/stop condition */ list1 = NULL; for (clist=data->cores ; clist ; clist=g_slist_next(clist)) { core = (struct core_pak *) clist->data; /* FIXME - floating point boundary problems? */ if (core->x[2] >= start && core->x[2] < stop) { list1 = g_slist_prepend(list1, core); ARR3ADD(layer->centroid, core->x); core->region = region; /* update region colouring (if necessary) */ if (data->colour_scheme == REGION) atom_colour_scheme(REGION, core, data); } } /* centroid calc. */ n = g_slist_length(list1); if (n) { #if DEBUG_DIFFRACT_LAYER_SETUP printf("[%d] added layer with %d cores.\n", num_layer, n); #endif layer->cores = list1; VEC3MUL(layer->centroid, 1.0/(gdouble) n); } /* always save the layer - may *want* to have an empty layer */ /* eg to simulate a vacuum gap */ data->layer_list = g_slist_prepend(data->layer_list, layer); } #if DEBUG_DIFFRACT_LAYER_SETUP printf("Total layers: %d\n", g_slist_length(data->layer_list)); #endif redraw_canvas(SINGLE); } /***********************************************/ /* create a defect structure from input layers */ /***********************************************/ GtkWidget *diffract_layer_order; #define DEBUG_DIFFRACT_MODEL_CREATE 0 void diffract_model_create(GtkWidget *w, struct model_pak *model) { gint i, n, num_layer, tot_layer; gdouble new_width, old_width, offset; const gchar *text; GSList *list; struct model_pak *dest_model; struct layer_pak *layer; struct core_pak *core; if (!model) return; diffract_layer_setup(model); text = gtk_entry_get_text(GTK_ENTRY(diffract_layer_order)); /* create a new model */ dest_model = model_new(); g_return_if_fail(dest_model != NULL); /* NB: not DIFFAX_INP, since this is demonstrating a particular layer packing */ dest_model->id = CREATOR; strcpy(dest_model->filename, "new_model"); g_free(dest_model->basename); dest_model->basename = g_strdup("new model"); /* find how many valid layers we will create */ tot_layer = 0; for (i=0 ; ilayer_list, n-1); if (layer) tot_layer++; } } #if DEBUG_DIFFRACT_MODEL_CREATE printf("Requested layers: %d\n", tot_layer); #endif /* build the new model from the input layer string */ num_layer=0; new_width=1.0/tot_layer; old_width=1.0; for (i=strlen(text) ; i-- ; ) { if (g_ascii_isdigit(text[i])) { n = text[i] - '0'; /* NB: numbering starts from 0 */ layer = g_slist_nth_data(model->layer_list, n-1); if (layer) { old_width = layer->width; /* add j based z offset */ offset = num_layer+0.5; offset *= new_width; #if DEBUG_DIFFRACT_MODEL_CREATE printf("[%d] inserting layer: %d (scale: %f) (offset: %f)\n", num_layer, n, new_width/old_width, offset); #endif /* add the layer's cores */ for (list=layer->cores ; list ; list=g_slist_next(list)) { core = dup_core(list->data); core->region = tot_layer - i - 1; /* remove z centroid */ core->x[2] -= layer->centroid[2]; /* z values need to be SCALED (to meet the new layer width) */ core->x[2] *= new_width/old_width; core->x[2] += offset; dest_model->cores = g_slist_prepend(dest_model->cores, core); } num_layer++; } else printf("Layer number %d not defined.\n", n); } } /* test if anything was created */ if (!num_layer) { model_delete(dest_model); return; } dest_model->cores = g_slist_reverse(dest_model->cores); /* setup */ dest_model->periodic = 3; dest_model->fractional = TRUE; ARR3SET(&dest_model->pbc[0], &model->pbc[0]); ARR3SET(&dest_model->pbc[3], &model->pbc[3]); dest_model->pbc[2] *= num_layer*old_width; #if DEBUG_DIFFRACT_MODEL_CREATE printf("Setting c to: %f\n", dest_model->pbc[2]); #endif model_prep(dest_model); model_colour_scheme(model->colour_scheme, dest_model); tree_model_add(dest_model); } /**********************************/ /* callback for forcefield typing */ /**********************************/ void cb_type_model(GtkWidget *w, gpointer data) { struct model_pak *model; model = sysenv.active_model; if (!model) return; type_model(gtk_entry_get_text(GTK_ENTRY(data)), model); /* possible label update */ redraw_canvas(ALL); } /**************************/ /* cell sculpting globals */ /**************************/ gdouble sculpt_length = 20.0; /***********************************************************/ /* tests if a given image t[] is inside the list of planes */ /***********************************************************/ gint sculpt_image_test(gint *t, gdouble scale, struct model_pak *model) { gdouble r[3], n[3]; GSList *list; struct plane_pak *plane; /* convert periodic image to cartesian point */ /* NB: ensure we get the closest lattice point to the origin */ if (t[0] < 0) r[0] = t[0]+1; else r[0] = t[0]; if (t[1] < 0) r[1] = t[1]+1; else r[1] = t[1]; if (t[2] < 0) r[2] = t[2]+1; else r[2] = t[2]; vecmat(model->latmat, r); /* compare against planes to see if this image is excluded */ for (list=model->planes ; list ; list=g_slist_next(list)) { plane = list->data; /* get cartesian normal */ ARR3SET(n, plane->index); vecmat(model->rlatmat, n); normalize(n, 3); /* test dot product against required distance to plane */ ARR3MUL(n, r); if ((n[0]+n[1]+n[2]) > scale*plane->f[0]) { return(FALSE); } } return(TRUE); } /***************************/ /* cell sculpting callback */ /***************************/ #define DEBUG_SCULPT_CREATE 0 void sculpt_model_create(struct model_pak *model) { gint i, t[3], limit[3]; gdouble scale, r=1.0, s, rmin, x[3], n[3]; GSList *list, *clist, *slist, *plist; struct model_pak *dest; struct core_pak *core; struct shel_pak *shell; struct mol_pak *mol; struct plane_pak *plane; struct spatial_pak *spatial; /* checks */ g_assert(model != NULL); if (model->periodic != 3) { gui_text_show(ERROR, "Source model is not 3D periodic.\n"); return; } if (!model->planes) { gui_text_show(ERROR, "No cleavage planes supplied.\n"); return; } #if DEBUG_SCULPT_CREATE else printf("Planes: %d\n", g_slist_length(model->planes)); #endif /* compute required periodic images (assumed symmetric) */ /* FIXME - most of the nuclei shape problems come from an insufficient number of repeats */ VEC3SET(limit, 0, 0, 0); for (i=0 ; iperiodic ; i++) limit[i] = 1 + sculpt_length/model->pbc[i]; /* init destination model for sculpture */ dest = model_new(); if (!dest) { gui_text_show(ERROR, "Failed to allocate for new model.\n"); return; } model_init(dest); gulp_data_copy(model, dest); #if DEBUG_SCULPT_CREATE printf("maximum length: %f\n", sculpt_length); printf("periodic images: %d %d %d\n", limit[0], limit[1], limit[2]); #endif /* TODO - going to have to put this ABOVE the sculpt_image_test() call, so we get rmin */ /* morphology computation */ morph_build(model); /* compute the facet closest to the center */ rmin = G_MAXDOUBLE; for (plist = model->planes ; plist ; plist=g_slist_next(plist)) { plane = plist->data; /* ensure we've got the best shift value data sitting in the plane structure */ update_plane_energy(plane, model); /* compute distance to plane facet */ /* NEW - a little naughty, but using the f[] (structure factor) to store the length/shift */ /* value of the plane in the nuclei sculpting so we dont keep recalculating */ switch (model->morph_type) { case EQUIL_UN: plane->f[0] = plane->esurf[0]; plane->f[1] = plane->esurf_shift; break; case GROWTH_UN: plane->f[0] = fabs(plane->eatt[0]); plane->f[1] = plane->eatt_shift; break; case EQUIL_RE: plane->f[0] = plane->esurf[1]; plane->f[1] = plane->esurf_shift; break; case GROWTH_RE: plane->f[0] = fabs(plane->eatt[1]); plane->f[1] = plane->eatt_shift; break; case DHKL: default: plane->f[0] = 1.0/plane->dhkl; plane->f[1] = 0.0; break; } /* NEW - stop zero result (failed/bad calc) from messing things up */ if (plane->f[0] != 0.0 && plane->f[0] < rmin) rmin = plane->f[0]; } #if DEBUG_SCULPT_CREATE printf("rmin = %f\n", rmin); #endif scale = 0.5*sculpt_length/rmin; /* periodic image creation */ for (t[0] = -limit[0] ; t[0] <= limit[0] ; t[0]++) { for (t[1] = -limit[1] ; t[1] <= limit[1] ; t[1]++) { for (t[2] = -limit[2] ; t[2] <= limit[2] ; t[2]++) { /* test vertices of the t[] image against planes */ if (!sculpt_image_test(t, scale, model)) continue; /* duplicate cores, add periodic image offset & convert to cartesian */ clist = dup_core_list(model->cores); slist = dup_shell_list(model->shels); dest->cores = g_slist_concat(dest->cores, clist); dest->shels = g_slist_concat(dest->shels, slist); for (list=clist ; list ; list=g_slist_next(list)) { core = list->data; core->primary = TRUE; ARR3ADD(core->x, t); vecmat(model->latmat, core->x); } for (list=slist ; list ; list=g_slist_next(list)) { shell = list->data; shell->primary = TRUE; ARR3ADD(shell->x, t); vecmat(model->latmat, shell->x); } } } } /* initialize connectivity and core-shell links for the new model */ zone_init(dest); connect_bonds(dest); connect_molecules(dest); shell_make_links(dest); /* plane cutoff tests */ for (plist=model->planes ; plist ; plist=g_slist_next(plist)) { plane = plist->data; /* get cartesian distance to plane facet */ r = plane->f[0] * scale; s = plane->f[1]; /* attempt to create the correct (ie surface shift) termination */ if (model->sculpt_shift_use) { /* g = GCD(GCD(plane->index[0], plane->index[1]), GCD(plane->index[1], plane->index[2])); */ r /= plane->dhkl; /* TODO - if nearest_int(r) == 0 -> set to 1 */ s += nearest_int(r); r = s * plane->dhkl; } /* get cartesian normal */ ARR3SET(n, plane->index); vecmat(model->rlatmat, n); normalize(n, 3); /* project coords onto plane normal & remove if greater than distance to facet */ /* TODO - do cutoff by molecule centroid when combining with periodic image loop */ for (list=dest->moles ; list ; list=g_slist_next(list)) { mol = list->data; ARR3SET(x, mol->centroid); ARR3MUL(x, n); if ((x[0]+x[1]+x[2]) > r) { for (clist=mol->cores ; clist ; clist=g_slist_next(clist)) { core = clist->data; core->status |= DELETED; if (core->shell) { shell = core->shell; shell->status |= DELETED; } } } } } /* transfer the spatials from the source model morphology to the nuclei */ list = model->spatial; while (list) { spatial = list->data; list = g_slist_next(list); /* search for all morphology related spatials */ /* a bit crude... */ if (g_strrstr(spatial->label, "(") && g_strrstr(spatial->label, ")")) { dest->spatial = g_slist_prepend(dest->spatial, spatial); model->spatial = g_slist_remove(model->spatial, spatial); spatial->method = GL_LINE_LOOP; /* mult vertices by len */ for (plist=spatial->list ; plist ; plist=g_slist_next(plist)) { struct vec_pak *vec = plist->data; ARR3SET(vec->colour, sysenv.render.fg_colour); /* convert fractional vertices to cartesian */ vecmat(model->latmat, vec->x); /* scale the morphology to match the constructed nuclei */ VEC3MUL(vec->x, scale); } } } /* init for display */ delete_commit(dest); model_prep(dest); tree_model_add(dest); redraw_canvas(ALL); } /********************************/ /* callback for nuclei creation */ /********************************/ void morph_sculpt(GtkWidget *w, gpointer data) { gpointer model; sculpt_length = SPIN_FVAL(GTK_SPIN_BUTTON(data)); model = g_object_get_data(data, "model"); sculpt_model_create(model); } /*******************************************/ /* unit cell sculpting (eg via morphology) */ /*******************************************/ void sculpting_page(GtkWidget *box) { GtkWidget *hbox, *hbox2; hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(box), hbox, FALSE, FALSE, 0); gui_direct_spin("Maximum length", &sculpt_length, 10.0, 100.0, 10.0, NULL, NULL, hbox); /* action buttons */ hbox2 = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(box), hbox2, FALSE, FALSE, PANEL_SPACING); hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_box_pack_end(GTK_BOX(hbox2), hbox, TRUE, FALSE, 0); gui_icon_button(GTK_STOCK_APPLY, "Create ", sculpt_model_create, NULL, hbox); } /************************************/ /* build a new rule from the dialog */ /************************************/ void gui_make_rule(GtkWidget *w, gpointer dialog) { gint count, level; const gchar *ff_type, *ff_elem; gpointer type; GtkWidget *obj; struct model_pak *model; model = sysenv.active_model; if (!model) return; obj = dialog_child_get(dialog, "FF_label"); ff_type = gtk_entry_get_text(GTK_ENTRY(obj)); obj = dialog_child_get(dialog, "FF_level"); level = str_to_float(gtk_entry_get_text(GTK_ENTRY(obj))); obj = dialog_child_get(dialog, "FF_element"); ff_elem = gtk_entry_get_text(GTK_ENTRY(obj)); obj = dialog_child_get(dialog, "FF_count"); count = str_to_float(gtk_entry_get_text(GTK_ENTRY(obj))); type = type_new(); type_ff_set(TRUE, ff_type, type); type_rule_add(level, count, ff_elem, type); type_apply(type, model->cores); type_free(type); } /**********************************/ /* read in a set of FF parameters */ /**********************************/ void gui_import_ff(GtkWidget *w, gpointer dialog) { const gchar *name; GSList *list; GtkWidget *obj; struct model_pak *model; model = sysenv.active_model; if (!model) return; obj = dialog_child_get(dialog, "FF_import"); name = gtk_entry_get_text(GTK_ENTRY(obj)); list = gromacs_read_ff(name); if (list) { gui_text_show(NORMAL, "Imported Forcefield.\n"); /* remove any previous GULP FF set */ if (model->gulp.potentials) { g_free(model->gulp.potentials); model->gulp.potentials = NULL; } /* remove any previous internal FF set */ if (model->ff_list) free_slist(model->ff_list); model->ff_list = list; } else gui_text_show(WARNING, "Empty or missing Forcefield.\n"); } /*******************************/ /* core labelling manipulation */ /*******************************/ void labelling_page(GtkWidget *box, gpointer dialog) { GtkWidget *w, *vbox, *hbox; /* Surface options */ vbox = gui_frame_vbox("Regions", FALSE, FALSE, box); gui_button_x("Move selection up", region_move, (gpointer) UP, vbox); gui_button_x("Move selection down", region_move, (gpointer) DOWN, vbox); #define FF_TYPING 1 #if FF_TYPING { GList *list; GtkWidget *combo, *hbox, *label; /* EXP - forcefield assignment */ vbox = gui_frame_vbox("Typing", FALSE, FALSE, box); /* typing setup */ hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new("Assign atom: "); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); list = NULL; list = g_list_prepend(list, "QEq charges"); list = g_list_prepend(list, "Gasteiger charges"); list = g_list_prepend(list, "Dreiding labels"); /* experimental */ /* list = g_list_prepend(list, "CVFF labels"); */ combo = gtk_combo_new(); gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(combo)->entry), FALSE); gtk_combo_set_popdown_strings(GTK_COMBO(combo), list); gtk_box_pack_start(GTK_BOX(hbox), combo, FALSE, FALSE, PANEL_SPACING); gui_button_x(NULL, cb_type_model, GTK_COMBO(combo)->entry, hbox); } #endif #if DIFFAX /* DIFFAX stuff - shunted here */ /* frame */ vbox = gui_frame_vbox("DIFFAX", FALSE, FALSE, box); /* source */ hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new(g_strdup_printf("Source model: %s", data->basename)); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); /* layer subdivision */ hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new("Number of layers "); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); diffract_layer_total = gtk_spin_button_new_with_range(0, 10, 1); gtk_spin_button_set_value(GTK_SPIN_BUTTON(diffract_layer_total), 0); gtk_box_pack_end(GTK_BOX(hbox), diffract_layer_total, FALSE, FALSE, 0); /* layer stacking */ hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, TRUE, TRUE, PANEL_SPACING); label = gtk_label_new("Stacking sequence "); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); diffract_layer_order = gtk_entry_new(); gtk_box_pack_end(GTK_BOX(hbox), diffract_layer_order, FALSE, FALSE, 0); /* action buttons */ hbox2 = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox2, FALSE, FALSE, PANEL_SPACING); hbox = gtk_hbox_new(FALSE, PANEL_SPACING); gtk_box_pack_end(GTK_BOX(hbox2), hbox, TRUE, FALSE, 0); gui_icon_button(GTK_STOCK_APPLY, "Create ", diffract_model_create, data, hbox); gui_icon_button(GTK_STOCK_SAVE, "Save ", diffract_save_dialog, data, hbox); #endif /* frame */ vbox = gui_frame_vbox("Experimental typing", FALSE, FALSE, box); w = gui_text_entry("FF label ", NULL, TRUE, FALSE, vbox); dialog_child_set(dialog, "FF_label", w); w = gui_text_entry("Neighbour Element ", NULL, TRUE, FALSE, vbox); dialog_child_set(dialog, "FF_element", w); w = gui_text_entry("Neighbour Distance ", NULL, TRUE, FALSE, vbox); dialog_child_set(dialog, "FF_level", w); w = gui_text_entry("Neighbour Count ", NULL, TRUE, FALSE, vbox); dialog_child_set(dialog, "FF_count", w); /* CURRENT - experimental */ /* gtk_widget_set_sensitive(GTK_WIDGET(vbox), FALSE); */ /* apply single rule */ gui_button_x("Apply rule ", gui_make_rule, dialog, vbox); vbox = gui_frame_vbox("Experimental - Import Forcefield", FALSE, FALSE, box); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); w = gui_text_entry("Import GROMACS FF ", NULL, TRUE, FALSE, hbox); dialog_child_set(dialog, "FF_import", w); /* FIXME - for convenience during testing */ gtk_entry_set_text(GTK_ENTRY(w), "ffoplsaabon.itp"); gui_button_x(NULL, gui_import_ff, dialog, hbox); } /**************************/ /* dialog update function */ /**************************/ void gui_edit_refresh(void) { /* may be other updates */ gui_spatial_populate(); } /****************************/ /* the model editing dialog */ /****************************/ void gui_edit_dialog(void) { gint i; gpointer dialog; GtkWidget *window, *frame, *label; GtkWidget *notebook, *page; /* request a new dialog */ dialog = dialog_request(CREATOR, "Model editing", gui_edit_refresh, NULL, NULL); if (!dialog) return; window = dialog_window(dialog); /* notebook frame */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); /* create notebook */ notebook = gtk_notebook_new(); gtk_notebook_set_tab_pos(GTK_NOTEBOOK(notebook), GTK_POS_TOP); gtk_container_add(GTK_CONTAINER(frame), notebook); gtk_notebook_set_show_border(GTK_NOTEBOOK(notebook), FALSE); /* add page */ page = gtk_vbox_new(FALSE,0); label = gtk_label_new("Builder"); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); build_page(page); /* add page */ page = gtk_vbox_new(FALSE,0); label = gtk_label_new("Spatials"); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); spatial_page(page); /* add page */ page = gtk_vbox_new(FALSE,0); label = gtk_label_new("Transformations"); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); trans_page(page); /* add page */ page = gtk_vbox_new(FALSE,0); label = gtk_label_new("Labelling"); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); labelling_page(page, dialog); /* add page */ page = gtk_vbox_new(FALSE,0); label = gtk_label_new("Library"); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); gui_library_window(page); /* terminating buttons */ gui_stock_button(GTK_STOCK_CLOSE, dialog_destroy, dialog, GTK_DIALOG(window)->action_area); gtk_widget_show_all(window); /* init the transformation values */ reset_transmat(); for (i=0 ; i<12; i++) g_signal_connect(GTK_OBJECT(transmat[i]), "changed", GTK_SIGNAL_FUNC(change_transmat), (gpointer) i); } /* globals for the atom properties dialog */ GtkWidget *apd_label, *apd_type, *apd_charge, *apd_x, *apd_y, *apd_z; GtkWidget *apd_growth, *apd_region, *apd_translate; struct model_pak *apd_data=NULL; struct core_pak *apd_core=NULL; /***********************************************/ /* change the properties of all selected atoms */ /***********************************************/ /* NB: this is a bit dangerous as you change everything in the */ /* selection to the specified value - even (eg) incompatible elements */ void selection_properties_change(gint type) { gint n, growth, region, translate; gdouble charge; const gchar *text; GSList *list; struct elem_pak edata; struct model_pak *model; struct core_pak *core; model = sysenv.active_model; if (!model) return; if (!model->selection) return; switch (type) { case NAME: text = gtk_entry_get_text(GTK_ENTRY(apd_label)); n = elem_symbol_test(text); if (n) { get_elem_data(n, &edata, model); /* make sure we alow enough space for the string and the \0 */ n = (LABEL_SIZE-1 > strlen(text)) ? strlen(text) : LABEL_SIZE-1; for (list=model->selection ; list ; list=g_slist_next(list)) { core = list->data; g_free(core->atom_label); core->atom_label = g_strdup(text); /* update atttached shell */ if (core->shell) { struct shel_pak *shell = core->shell; g_free(shell->shell_label); shell->shell_label = g_strdup(text); } /* NEW - don't update element specific data if the element type was not */ /* changed - ie the user has just made a labelling change (eg C -> C1) */ if (edata.number != core->atom_code) { core->atom_code = edata.number; core->bond_cutoff = edata.cova; } init_atom_colour(core, model); init_atom_charge(core, model); } /* model updates */ g_slist_free(model->unique_atom_list); model->unique_atom_list = find_unique(ELEMENT, model); calc_emp(model); } break; case CHARGE: charge = str_to_float(gtk_entry_get_text(GTK_ENTRY(apd_charge))); for (list=model->selection ; list ; list=g_slist_next(list)) { core = list->data; /* core updates */ core->charge = charge; core->lookup_charge = FALSE; } calc_emp(model); break; case CORE_GROWTH_SLICE: growth = str_to_float(gtk_entry_get_text(GTK_ENTRY(apd_growth))); growth = CLAMP(growth, 0, 1); for (list=model->selection ; list ; list=g_slist_next(list)) { core = list->data; core->growth = growth; if (model->colour_scheme == GROWTH_SLICE) atom_colour_scheme(GROWTH_SLICE, core, model); } break; case CORE_REGION: region = str_to_float(gtk_entry_get_text(GTK_ENTRY(apd_region))); if (region > model->region_max) model->region_max = region; for (list=model->selection ; list ; list=g_slist_next(list)) { core = list->data; core->region = region; if (core->shell) (core->shell)->region = region; if (model->colour_scheme == REGION) atom_colour_scheme(REGION, core, model); } break; case CORE_TRANSLATE: translate = str_to_float(gtk_entry_get_text(GTK_ENTRY(apd_translate))); translate = CLAMP(translate, 0, 1); for (list=model->selection ; list ; list=g_slist_next(list)) { core = list->data; core->translate = translate; if (core->shell) (core->shell)->translate = translate; if (model->colour_scheme == TRANSLATE) atom_colour_scheme(TRANSLATE, core, model); } break; case CORE_FF: text = gtk_entry_get_text(GTK_ENTRY(apd_type)); for (list=model->selection ; list ; list=g_slist_next(list)) { core = list->data; if (core->atom_type) g_free(core->atom_type); core->atom_type = g_strdup(text); } break; } gui_refresh(GUI_MODEL_PROPERTIES); gui_refresh(GUI_CANVAS); } /*****************************/ /* commit changes to an atom */ /*****************************/ void atom_properties_change(GtkWidget *w, gint type) { gint n, growth, region, translate; const gchar *text; struct elem_pak edata; struct model_pak *model; model = sysenv.active_model; if (!model) return; /* act on multiple atoms? */ if (g_slist_length(model->selection) > 1) { selection_properties_change(type); return; } if (!apd_core) return; switch(type) { case NAME: text = gtk_entry_get_text(GTK_ENTRY(apd_label)); g_free(apd_core->atom_label); apd_core->atom_label = g_strdup(text); n = elem_symbol_test(text); /* update atttached shell */ if (apd_core->shell) { struct shel_pak *shell = apd_core->shell; g_free(shell->shell_label); shell->shell_label = g_strdup(text); } /* if recognized -> update */ if (n) { get_elem_data(n, &edata, model); /* NEW - don't update element specific data if the element type was not */ /* changed - ie the user has just made a labelling change (eg C -> C1) */ if (n != apd_core->atom_code) { apd_core->atom_code = n; apd_core->bond_cutoff = edata.cova; } init_atom_colour(apd_core, model); init_atom_charge(apd_core, model); g_slist_free(model->unique_atom_list); model->unique_atom_list = find_unique(ELEMENT, model); calc_emp(model); /* REFRESH */ gui_refresh(GUI_MODEL_PROPERTIES); } break; case CORE_FF: text = gtk_entry_get_text(GTK_ENTRY(apd_type)); if (apd_core->atom_type) g_free(apd_core->atom_type); apd_core->atom_type = g_strdup(text); break; case CHARGE: text = gtk_entry_get_text(GTK_ENTRY(apd_charge)); apd_core->charge = str_to_float(text); apd_core->lookup_charge = FALSE; calc_emp(model); break; case COORD_X: text = gtk_entry_get_text(GTK_ENTRY(apd_x)); apd_core->x[0] = str_to_float(text); coords_compute(model); break; case COORD_Y: text = gtk_entry_get_text(GTK_ENTRY(apd_y)); apd_core->x[1] = str_to_float(text); coords_compute(model); break; case COORD_Z: text = gtk_entry_get_text(GTK_ENTRY(apd_z)); apd_core->x[2] = str_to_float(text); coords_compute(model); break; case CORE_GROWTH_SLICE: text = gtk_entry_get_text(GTK_ENTRY(apd_growth)); growth = CLAMP(str_to_float(text), 0, 1); apd_core->growth = growth; if (model->colour_scheme == GROWTH_SLICE) atom_colour_scheme(GROWTH_SLICE, apd_core, model); break; case CORE_REGION: text = gtk_entry_get_text(GTK_ENTRY(apd_region)); region = str_to_float(text); if (region > model->region_max) model->region_max = region; apd_core->region = region; if (apd_core->shell) (apd_core->shell)->region = region; if (model->colour_scheme == REGION) atom_colour_scheme(REGION, apd_core, model); break; case CORE_TRANSLATE: text = gtk_entry_get_text(GTK_ENTRY(apd_translate)); translate = CLAMP(str_to_float(text), 0, 1); apd_core->translate = translate; if (apd_core->shell) (apd_core->shell)->translate = translate; if (model->colour_scheme == TRANSLATE) atom_colour_scheme(TRANSLATE, apd_core, model); break; default: printf("Not yet modifiable...\n"); } gui_refresh(GUI_CANVAS); } /*************************************/ /* updates the dialog for a new atom */ /*************************************/ void gui_refresh_selection(void) { gint n, cflag=FALSE; gdouble q, centroid[3]; gchar *element, *label, *type, *charge, *x, *y, *z, *growth, *region, *translate; struct core_pak *core; struct model_pak *model; GSList *list; model = sysenv.active_model; core = NULL; if (model) { list = model->selection; n = g_slist_length(list); switch (n) { case -1: g_assert_not_reached(); case 0: break; case 1: core = list->data; break; default: VEC3SET(centroid, 0.0, 0.0, 0.0); for (list=model->selection ; list ; list=g_slist_next(list)) { core = list->data; ARR3ADD(centroid, core->x); } VEC3MUL(centroid, 1.0 / (gdouble) n); /* special print case - centroid display */ cflag = TRUE; core = NULL; } } if (core && model) { /* data available */ element = g_strdup(elements[core->atom_code].symbol); label = g_strdup(core->atom_label); if (core->atom_type) type = g_strdup(core->atom_type); else type = g_strdup(""); q = atom_charge(core); /* Replaced by C. Fisher 2004 */ charge = g_strdup_printf("%9.4f", q); x = g_strdup_printf("%9.4f", core->x[0]); y = g_strdup_printf("%9.4f", core->x[1]); z = g_strdup_printf("%9.4f", core->x[2]); growth = g_strdup_printf("%d", core->growth); region = g_strdup_printf("%d", core->region); translate = g_strdup_printf("%d", core->translate); apd_core = core; } else { /* otherwise defaults */ element = g_strdup(""); type = g_strdup(""); charge = g_strdup(""); if (cflag) { label = g_strdup("centroid"); x = g_strdup_printf("%9.4f", centroid[0]); y = g_strdup_printf("%9.4f", centroid[1]); z = g_strdup_printf("%9.4f", centroid[2]); } else { label = g_strdup(""); x = g_strdup(""); y = g_strdup(""); z = g_strdup(""); } growth = g_strdup(""); region = g_strdup(""); translate = g_strdup(""); } /* prevent changes from messing up the atom_properties_change() callback */ apd_data = NULL; /* entry updates */ gtk_entry_set_text(GTK_ENTRY(apd_label), label); gtk_entry_set_text(GTK_ENTRY(apd_type), type); gtk_entry_set_text(GTK_ENTRY(apd_charge), charge); gtk_entry_set_text(GTK_ENTRY(apd_x), x); gtk_entry_set_text(GTK_ENTRY(apd_y), y); gtk_entry_set_text(GTK_ENTRY(apd_z), z); gtk_entry_set_text(GTK_ENTRY(apd_growth), growth); gtk_entry_set_text(GTK_ENTRY(apd_region), region); gtk_entry_set_text(GTK_ENTRY(apd_translate), translate); apd_data = model; /* cleanup */ g_free(element); g_free(label); g_free(type); g_free(charge); g_free(x); g_free(y); g_free(z); g_free(growth); g_free(region); g_free(translate); } /*******************************************/ /* display the properties of a single atom */ /*******************************************/ void gui_edit_widget(GtkWidget *box) { GtkWidget *frame, *hbox, *vbox, *entry; /* checks */ g_return_if_fail(box != NULL); /* two column element data display */ hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(box), hbox, TRUE, TRUE, 0); /* left vbox - titles */ vbox = gtk_vbox_new(TRUE, 0); gtk_box_pack_start(GTK_BOX(hbox), vbox, TRUE, TRUE, 0); /* TODO - put in a for loop? */ entry = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(entry), "Label"); gtk_entry_set_editable(GTK_ENTRY(entry), FALSE); gtk_box_pack_start(GTK_BOX(vbox), entry, FALSE, FALSE, 0); entry = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(entry), "FF Type"); gtk_entry_set_editable(GTK_ENTRY(entry), FALSE); gtk_box_pack_start(GTK_BOX(vbox), entry, FALSE, FALSE, 0); entry = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(entry), "X"); gtk_entry_set_editable(GTK_ENTRY(entry), FALSE); gtk_box_pack_start(GTK_BOX(vbox), entry, FALSE, FALSE, 0); entry = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(entry), "Y"); gtk_entry_set_editable(GTK_ENTRY(entry), FALSE); gtk_box_pack_start(GTK_BOX(vbox), entry, FALSE, FALSE, 0); entry = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(entry), "Z"); gtk_entry_set_editable(GTK_ENTRY(entry), FALSE); gtk_box_pack_start(GTK_BOX(vbox), entry, FALSE, FALSE, 0); entry = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(entry), "Charge"); gtk_entry_set_editable(GTK_ENTRY(entry), FALSE); gtk_box_pack_start(GTK_BOX(vbox), entry, FALSE, FALSE, 0); entry = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(entry), "Growth"); gtk_entry_set_editable(GTK_ENTRY(entry), FALSE); gtk_box_pack_start(GTK_BOX(vbox), entry, FALSE, FALSE, 0); entry = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(entry), "Region"); gtk_entry_set_editable(GTK_ENTRY(entry), FALSE); gtk_box_pack_start(GTK_BOX(vbox), entry, FALSE, FALSE, 0); entry = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(entry), "Translate"); gtk_entry_set_editable(GTK_ENTRY(entry), FALSE); gtk_box_pack_start(GTK_BOX(vbox), entry, FALSE, FALSE, 0); /* right vbox - data */ vbox = gtk_vbox_new(TRUE, 0); gtk_box_pack_end(GTK_BOX(hbox), vbox, TRUE, TRUE, 0); apd_label = gtk_entry_new(); gtk_box_pack_start(GTK_BOX(vbox), apd_label, FALSE, FALSE, 0); apd_type = gtk_entry_new(); gtk_box_pack_start(GTK_BOX(vbox), apd_type, FALSE, FALSE, 0); apd_x = gtk_entry_new(); gtk_box_pack_start(GTK_BOX(vbox), apd_x, FALSE, FALSE, 0); apd_y = gtk_entry_new(); gtk_box_pack_start(GTK_BOX(vbox), apd_y, FALSE, FALSE, 0); apd_z = gtk_entry_new(); gtk_box_pack_start(GTK_BOX(vbox), apd_z, FALSE, FALSE, 0); apd_charge = gtk_entry_new(); gtk_box_pack_start(GTK_BOX(vbox), apd_charge, FALSE, FALSE, 0); apd_growth = gtk_entry_new(); gtk_box_pack_start(GTK_BOX(vbox), apd_growth, FALSE, FALSE, 0); apd_region = gtk_entry_new(); gtk_box_pack_start(GTK_BOX(vbox), apd_region, FALSE, FALSE, 0); apd_translate = gtk_entry_new(); gtk_box_pack_start(GTK_BOX(vbox), apd_translate, FALSE, FALSE, 0); /* attach callbacks (NB: set initial data first) */ g_signal_connect(GTK_OBJECT(apd_label), "activate", GTK_SIGNAL_FUNC(atom_properties_change), GINT_TO_POINTER(NAME)); g_signal_connect(GTK_OBJECT(apd_type), "activate", GTK_SIGNAL_FUNC(atom_properties_change), GINT_TO_POINTER(CORE_FF)); g_signal_connect(GTK_OBJECT(apd_x), "activate", GTK_SIGNAL_FUNC(atom_properties_change), GINT_TO_POINTER(COORD_X)); g_signal_connect(GTK_OBJECT(apd_y), "activate", GTK_SIGNAL_FUNC(atom_properties_change), GINT_TO_POINTER(COORD_Y)); g_signal_connect(GTK_OBJECT(apd_z), "activate", GTK_SIGNAL_FUNC(atom_properties_change), GINT_TO_POINTER(COORD_Z)); g_signal_connect(GTK_OBJECT(apd_charge), "activate", GTK_SIGNAL_FUNC(atom_properties_change), GINT_TO_POINTER(CHARGE)); g_signal_connect(GTK_OBJECT(apd_growth), "activate", GTK_SIGNAL_FUNC(atom_properties_change), GINT_TO_POINTER(CORE_GROWTH_SLICE)); g_signal_connect(GTK_OBJECT(apd_region), "activate", GTK_SIGNAL_FUNC(atom_properties_change), GINT_TO_POINTER(CORE_REGION)); g_signal_connect(GTK_OBJECT(apd_translate), "activate", GTK_SIGNAL_FUNC(atom_properties_change), GINT_TO_POINTER(CORE_TRANSLATE)); /* CURRENT */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(box), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 1); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_button_x("Add atoms", gtk_mode_switch, (gpointer) ATOM_ADD, vbox); gui_button_x("Add bonds", gtk_mode_switch, (gpointer) BOND_SINGLE, vbox); gui_button_x("Delete bonds", gtk_mode_switch, (gpointer) BOND_DELETE, vbox); gui_button_x("Normal mode", gtk_mode_switch, (gpointer) FREE, vbox); frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(box), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 1); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_button_x("Mark as ghost", select_flag_ghost, NULL, vbox); gui_button_x("Mark as normal", select_flag_normal, NULL, vbox); } gdis-0.90/gui_gperiodic.c0000644000175000017500000002600510600706736014013 0ustar seansean/* Copyright (C) 2000 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include #include #include "gdis.h" #include "coords.h" #include "matrix.h" #include "render.h" #include "gperiodic.h" #include "gui_shorts.h" #include "interface.h" #include "dialog.h" #include "opengl.h" extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; extern GtkWidget *window; /* currently modifiable elem */ /* FIXME - since it's a global, only one dialog can be allowed at a time */ struct elem_pak elem_edit; GtkWidget *elem_edit_colour; /***********************************/ /* update element database locally */ /***********************************/ void elem_change_current(GtkWidget *w, struct elem_pak *element) { struct model_pak *model; model = sysenv.active_model; if (model) { put_elem_data(element, model); model_colour_scheme(model->colour_scheme, model); connect_refresh(model); redraw_canvas(SINGLE); } } /************************************/ /* update element database globally */ /************************************/ void elem_change_global(GtkWidget *w, struct elem_pak *element) { struct model_pak *model; put_elem_data(element, NULL); refresh_table(); model = sysenv.active_model; if (model) { put_elem_data(element, model); connect_refresh(model); model_colour_scheme(model->colour_scheme, model); redraw_canvas(SINGLE); } } /******************************/ /* reset the element database */ /******************************/ void elem_reset(GtkWidget *w, struct elem_pak *element) { GSList *list1, *list2; GdkColor colour; struct elem_pak *elem; struct model_pak *model; /* update global database */ list1 = sysenv.elements; while (list1 != NULL) { elem = list1->data; list1 = g_slist_next(list1); if (elem->number == element->number) sysenv.elements = g_slist_remove(sysenv.elements, elem); } refresh_table(); /* update model database */ for (list1=sysenv.mal ; list1 ; list1=g_slist_next(list1)) { model = list1->data; list2 = model->elements; while (list2) { elem = list2->data; list2 = g_slist_next(list2); if (elem->number == element->number) model->elements = g_slist_remove(model->elements, elem); } } /* update model display */ model = sysenv.active_model; if (model) { connect_refresh(model); model_colour_scheme(model->colour_scheme, model); redraw_canvas(SINGLE); } /* widget updates */ memcpy(&elem_edit, &elements[elem_edit.number], sizeof(struct elem_pak)); gui_relation_update_widget(&elem_edit.cova); gui_relation_update_widget(&elem_edit.vdw); gui_relation_update_widget(&elem_edit.charge); colour.red = elem_edit.colour[0]*65535.0; colour.green = elem_edit.colour[1]*65535.0; colour.blue = elem_edit.colour[2]*65535.0; gtk_widget_modify_bg(elem_edit_colour, GTK_STATE_NORMAL, &colour); } /***************************/ /* Single element dialogue */ /***************************/ void display_element_dialog(GtkWidget *w, gint i) { gchar *text; gpointer dialog; GtkWidget *window, *frame, *vbox, *hbox, *label; struct table_entry *entry; entry = (struct table_entry *) &table[i]; /* get global elem data */ get_elem_data(i+1, &elem_edit, NULL); /* NEW - close any other element dialog */ dialog_destroy_type(ELEM_EDIT); /* retrieve a suitable dialog */ dialog = dialog_request(ELEM_EDIT, "Element edit", NULL, NULL, NULL); if (!dialog) return; window = dialog_window(dialog); /* top frame */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), frame, TRUE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE,1); gtk_container_add(GTK_CONTAINER(frame), vbox); gtk_container_set_border_width(GTK_CONTAINER(vbox), PANEL_SPACING); hbox = gtk_hbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new("Name:"); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); label = gtk_label_new(elem_edit.name); gtk_box_pack_end(GTK_BOX(hbox), label, FALSE, FALSE, 0); hbox = gtk_hbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new("Symbol:"); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); label = gtk_label_new(elem_edit.symbol); gtk_box_pack_end(GTK_BOX(hbox), label, FALSE, FALSE, 0); hbox = gtk_hbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new("Number:"); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); text = g_strdup_printf("%d", elem_edit.number); label = gtk_label_new(text); g_free(text); gtk_box_pack_end(GTK_BOX(hbox), label, FALSE, FALSE, 0); hbox = gtk_hbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new("Weight:"); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); text = g_strdup_printf("%8.4f", elem_edit.weight); label = gtk_label_new(text); g_free(text); gtk_box_pack_end(GTK_BOX(hbox), label, FALSE, FALSE, 0); hbox = gtk_hbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new("Ionic/Covalent radius: "); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); gui_direct_spin(NULL, &elem_edit.cova, 0.1, 3.0, 0.01, NULL, NULL, hbox); hbox = gtk_hbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new("VdW radius:"); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); gui_direct_spin(NULL, &elem_edit.vdw, 0.1, 4.0, 0.01, NULL, NULL, hbox); gui_colour_box("Colour: ", elem_edit.colour, vbox); /* application buttons/check boxes */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), frame, TRUE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); /* two column element data display */ vbox = gtk_vbox_new(FALSE,PANEL_SPACING); gtk_container_add(GTK_CONTAINER(frame), vbox); gtk_container_set_border_width(GTK_CONTAINER(vbox), PANEL_SPACING); gui_button_x("Apply to current model", elem_change_current, &elem_edit, vbox); gui_button_x("Apply globally", elem_change_global, &elem_edit, vbox); gui_button_x("Reset values", elem_reset, &elem_edit, vbox); gui_stock_button(GTK_STOCK_CLOSE, dialog_destroy, dialog, GTK_DIALOG(window)->action_area); gtk_widget_show_all(window); } /***********************************/ /* on the fly table colour refresh */ /***********************************/ void refresh_table(void) { gint i; GdkColor colour; struct elem_pak element; /* checks */ if (!dialog_exists(GPERIODIC, NULL)) return; for(i=0 ; i= sysenv.num_elements-1) break; /* stop if no more element data (NB: gperiodic/gdis index mismatch) */ if (get_elem_data(i+1, &element, NULL)) break; /* jump the gaps */ if (GTK_IS_WIDGET(table[i].button)) { colour.red = element.colour[0]*65535.0; colour.green = element.colour[1]*65535.0; colour.blue = element.colour[2]*65535.0; gtk_widget_modify_bg(table[i].button, GTK_STATE_NORMAL, &colour); } } } /*****************************************************************/ /* update the current model with values from the global database */ /*****************************************************************/ void refresh_model_from_table(GtkWidget *w, gpointer dummy) { struct model_pak *model; model = sysenv.active_model; if (model) { /* TODO - refresh bonding/connectivity & other data? */ /* refresh colour */ model_colour_scheme(model->colour_scheme, model); redraw_canvas(SINGLE); } } /******************************/ /* Construct a periodic table */ /******************************/ void gui_gperiodic_dialog(void) { gint i; gchar *text=NULL; gpointer dialog; GtkWidget *w, *label, *vbox, *periodic_table; struct elem_pak elem; GdkColor colour; /* retrieve a suitable dialog */ dialog = dialog_request(GPERIODIC, "GPeriodic", NULL, NULL, NULL); if (!dialog) return; w = dialog_window(dialog); /* background colour for periodic table */ colour.red = 65535; colour.green = 65535; colour.blue = 65535; gtk_widget_modify_bg(w, GTK_STATE_NORMAL, &colour); /* use a vbox for the menubar and the table of elements... */ vbox = gtk_vbox_new(FALSE, PANEL_SPACING); gtk_container_border_width(GTK_CONTAINER(vbox), PANEL_SPACING); gtk_container_add(GTK_CONTAINER(GTK_DIALOG(w)->vbox), vbox); /* nice heading */ label = gtk_label_new("Periodic Table of the Elements"); gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); /* create the table widget to hold the periodic table */ periodic_table = gtk_table_new(11, 18, TRUE); gtk_box_pack_end(GTK_BOX(vbox), periodic_table, TRUE, TRUE, 0); /* now for each element in the table of elements, create a display */ /* item for it, and add it to the table... */ for (i=0 ; iaction_area); gui_stock_button(GTK_STOCK_CLOSE, dialog_destroy, dialog, GTK_DIALOG(w)->action_area); gtk_widget_show_all(w); } gdis-0.90/analysis.h0000644000175000017500000000363210775101544013032 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include "task.h" /* position storage */ struct gd3_pak { gdouble x[3]; }; /* matrix storage */ struct gd9_pak { gdouble m[9]; }; struct analysis_pak { /* analysis setup */ gint num_bins; gdouble start; gdouble stop; gdouble step; gchar *atom1; gchar *atom2; gint rdf_normalize; /* model setup */ gint num_atoms; gint num_frames; gdouble time_start; gdouble time_stop; /* packed frame data */ struct gd9_pak *latmat; struct gd3_pak *position; struct gd3_pak *velocity; gdouble *time; gdouble *ke; gdouble *pe; gdouble *temp; }; /* prototypes */ gint analysis_init(struct model_pak *); void analysis_free(struct analysis_pak *); gpointer analysis_new(void); gpointer analysis_dup(gpointer); void analysis_show(struct model_pak *); void analysis_plot_rdf(struct analysis_pak *, struct task_pak *); void analysis_plot_meas(struct analysis_pak *, struct task_pak *); void analysis_plot_vacf(struct analysis_pak *, struct task_pak *); void analysis_plot_temp(struct analysis_pak *, struct task_pak *); void analysis_plot_ke(struct analysis_pak *, struct task_pak *); void analysis_plot_pe(struct analysis_pak *, struct task_pak *); gdis-0.90/gui_tree.c0000644000175000017500000002774111035034372013006 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include "gdis.h" #include "coords.h" #include "model.h" #include "space.h" #include "graph.h" #include "select.h" #include "matrix.h" #include "project.h" #include "gui_shorts.h" #include "interface.h" #include "dialog.h" #include "methane.xpm" #include "box.xpm" #include "surface.xpm" #include "polymer.xpm" #include "diamond2.xpm" #include "graph.xpm" /* top level data structure */ extern struct sysenv_pak sysenv; /**********************/ /* model tree globals */ /**********************/ enum { TREE_PIXMAP, TREE_NAME, TREE_POINTER, TREE_DATA, TREE_NCOLS }; /*****************************************************/ /* select new iter, assuming current will be deleted */ /*****************************************************/ void tree_select_next(GtkTreeIter *iter) { GtkTreeIter next; GtkTreePath *treepath; GtkTreeModel *treemodel; GtkTreeSelection *selection; selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(sysenv.tree)); if (!selection) return; /* attempt to select previous iterator */ treemodel = GTK_TREE_MODEL(sysenv.tree_store); treepath = gtk_tree_model_get_path(treemodel, iter); if (gtk_tree_path_prev(treepath)) { if (gtk_tree_model_get_iter(treemodel, &next, treepath)) gtk_tree_selection_select_iter(selection, &next); } else { /* attempt to select next iterator, else - select parent */ next = *iter; if (gtk_tree_model_iter_next(treemodel, &next)) gtk_tree_selection_select_iter(selection, &next); else { if (gtk_tree_model_iter_parent(treemodel, &next, iter)) gtk_tree_selection_select_iter(selection, &next); else sysenv.active_model = NULL; } } gtk_tree_path_free(treepath); } /********************************/ /* replacement deletion routine */ /********************************/ void tree_select_delete(void) { gint depth; gpointer data; GtkTreeIter iter, next; GtkTreeSelection *selection; GtkTreeModel *treemodel; struct model_pak *model; selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(sysenv.tree)); if (!selection) return; if (!gtk_tree_selection_get_selected(selection, &treemodel, &iter)) return; depth = gtk_tree_store_iter_depth(sysenv.tree_store, &iter); gtk_tree_model_get(GTK_TREE_MODEL(sysenv.tree_store), &iter, TREE_POINTER, &model, TREE_DATA, &data, -1); /* alter the selection iter and then remove old iter */ next = iter; tree_select_next(&next); gtk_tree_store_remove(sysenv.tree_store, &iter); /* data pointer cleanup */ switch (depth) { case 0: if (model) model_delete(model); break; case 1: if (model && data) graph_free(data, model); break; default: g_assert_not_reached(); } /* tree_select_model(sysenv.active_model); */ } /**************************/ /* tree traverse function */ /**************************/ gint func(GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data) { GtkTreeSelection *selection; struct model_pak *mdata; /* get the model pointer from the tree store */ gtk_tree_model_get(model, iter, TREE_POINTER, &mdata, -1); /* if it matches the model supplied, select it */ if (data == mdata) { selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(sysenv.tree)); gtk_tree_selection_select_iter(selection, iter); /* return TRUE to indicate we're done */ return(TRUE); } /* no match, keep traversing */ return(FALSE); } /******************************/ /* select the specified model */ /******************************/ void tree_select_model(struct model_pak *model) { if (!model) return; sysenv.active_model = model; gtk_tree_model_foreach(GTK_TREE_MODEL(sysenv.tree_store), &func, model); } /***************************/ /* select the active model */ /***************************/ void tree_select_active(void) { /* TODO - clear if no models */ tree_select_model(sysenv.active_model); } /**************************/ /* get model's iterator */ /**************************/ gboolean tree_model_iter(GtkTreeIter *iter, gpointer model) { gpointer data; if (!gtk_tree_model_get_iter_first(GTK_TREE_MODEL(sysenv.tree_store), iter)) return(FALSE); do { gtk_tree_model_get(GTK_TREE_MODEL(sysenv.tree_store), iter, TREE_POINTER, &data, -1); if (data == model) return(TRUE); } while (gtk_tree_model_iter_next(GTK_TREE_MODEL(sysenv.tree_store), iter)); return(FALSE); } /*******************/ /* refresh a model */ /*******************/ void tree_model_refresh(struct model_pak *model) { gboolean flag=FALSE; GSList *list; GtkTreeIter root, branch, active; GdkPixbuf *pixbuf; GtkTreeSelection *selection; /* checks */ if (!model) return; if (!tree_model_iter(&root, model)) return; selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(sysenv.tree)); /* update name */ gtk_tree_store_set(sysenv.tree_store, &root, TREE_NAME, model->basename, -1); /* update any graphs */ pixbuf = gdk_pixbuf_new_from_xpm_data((const gchar **) graph_xpm); for (list=model->graph_list ; list ; list=g_slist_next(list)) { if (graph_grafted(list->data)) continue; gtk_tree_store_append(sysenv.tree_store, &branch, &root); gtk_tree_store_set(sysenv.tree_store, &branch, TREE_PIXMAP, pixbuf, TREE_NAME, graph_treename(list->data), TREE_POINTER, model, TREE_DATA, list->data, -1); graph_set_grafted(TRUE, list->data); if (selection) { active = branch; flag = TRUE; } } /* gdk_pixbuf_unref(pixbuf); */ /* NB: have to expand first and THEN select - as by default */ /* appending to the tree store is done in unexpanded fashion */ gtk_tree_view_expand_all(GTK_TREE_VIEW(sysenv.tree)); if (flag) gtk_tree_selection_select_iter(selection, &active); } /**************************************/ /* add (or refresh if exists) a model */ /**************************************/ void tree_model_add(struct model_pak *model) { GSList *list; GtkTreeIter root, branch; GdkPixbuf *pixbuf; /* checks */ g_assert(model != NULL); if (model->grafted) { tree_model_refresh(model); return; } /* graft the model */ gtk_tree_store_append(sysenv.tree_store, &root, NULL); model->grafted = TRUE; /* setup pixmap */ if (model->id == MORPH) pixbuf = gdk_pixbuf_new_from_xpm_data((const gchar **) diamond2_xpm); else { switch(model->periodic) { case 3: pixbuf = gdk_pixbuf_new_from_xpm_data((const gchar **) box_xpm); break; case 2: pixbuf = gdk_pixbuf_new_from_xpm_data((const gchar **) surface_xpm); break; case 1: pixbuf = gdk_pixbuf_new_from_xpm_data((const gchar **) polymer_xpm); break; default: pixbuf = gdk_pixbuf_new_from_xpm_data((const gchar **) methane_xpm); break; } } /* set the parent iterator data */ gtk_tree_store_set(sysenv.tree_store, &root, TREE_PIXMAP, pixbuf, TREE_NAME, model->basename, TREE_POINTER, model, TREE_DATA, NULL, -1); /* gdk_pixbuf_unref(pixbuf); */ /* add any attached graphs */ pixbuf = gdk_pixbuf_new_from_xpm_data((const gchar **) graph_xpm); for (list=model->graph_list ; list ; list=g_slist_next(list)) { gtk_tree_store_append(sysenv.tree_store, &branch, &root); /* TODO - better naming eg graph_1, graph_2 etc */ /* eg a way to convert graph pointer to a number? (that way stays the same) */ gtk_tree_store_set(sysenv.tree_store, &branch, TREE_PIXMAP, pixbuf, TREE_NAME, graph_treename(list->data), TREE_POINTER, model, TREE_DATA, list->data, -1); graph_set_grafted(TRUE, list->data); /* if we have a current graph - make it the selection */ /* NB: graph_flag should not be set for a REPLACE with a name change */ /* if (model->graph_active == list->data) { iter = branch; active_flag = TRUE; } */ } /* gdk_pixbuf_unref(pixbuf); */ /* add any attached pictures */ /* for (list=model->picture_list ; list ; list=g_slist_next(list)) { gtk_tree_store_append(sysenv.tree_store, &branch, &root); gtk_tree_store_set(sysenv.tree_store, &branch, TREE_NAME, g_strdup(list->data), TREE_POINTER, list->data, -1); if (model->picture_active == list->data) { iter = branch; active_flag = TRUE; } } */ } /********************************/ /* handle tree selection events */ /********************************/ #define DEBUG_TREE_SELECTION_CHANGED 0 void tree_selection_changed(GtkTreeSelection *selection, gpointer data) { gint depth; gpointer graph; GtkTreeIter iter; GtkTreeModel *treemodel; struct model_pak *model=NULL; if (gtk_tree_selection_get_selected(selection, &treemodel, &iter)) { depth = gtk_tree_store_iter_depth(sysenv.tree_store, &iter); switch (depth) { case 0: gtk_tree_model_get(treemodel, &iter, TREE_POINTER, &model, -1); if (model) gui_model_select(model); break; case 1: gtk_tree_model_get(treemodel, &iter, TREE_POINTER, &model, TREE_DATA, &graph, -1); if (graph) { gui_model_select(model); model->graph_active = graph; redraw_canvas(SINGLE); } break; default: g_assert_not_reached(); } } } /*********************************/ /* create the model viewing pane */ /*********************************/ void tree_init(GtkWidget *box) { GtkWidget *swin; GtkCellRenderer *renderer; GtkTreeViewColumn *column; GtkTreeSelection *select; /* scrolled window for the model pane */ swin = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(swin), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_container_add(GTK_CONTAINER(box), swin); /* underlying data storage */ sysenv.tree_store = gtk_tree_store_new(TREE_NCOLS, GDK_TYPE_PIXBUF, G_TYPE_STRING, G_TYPE_POINTER, G_TYPE_POINTER); /* actual tree widget */ sysenv.tree = gtk_tree_view_new_with_model(GTK_TREE_MODEL(sysenv.tree_store)); gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(swin), sysenv.tree); /* setup the model pixmap rendering colum */ renderer = gtk_cell_renderer_pixbuf_new(); column = gtk_tree_view_column_new_with_attributes("image", renderer, "pixbuf", TREE_PIXMAP, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(sysenv.tree), column); /* setup the model name rendering colum */ renderer = gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes("name", renderer, "text", TREE_NAME, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(sysenv.tree), column); /* setup the selection handler */ select = gtk_tree_view_get_selection(GTK_TREE_VIEW(sysenv.tree)); gtk_tree_selection_set_mode(select, GTK_SELECTION_BROWSE); g_signal_connect(G_OBJECT(select), "changed", G_CALLBACK(tree_selection_changed), NULL); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(sysenv.tree), FALSE); gtk_widget_show(swin); } gdis-0.90/gui_gulp.c0000644000175000017500000017205111066427321013015 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include #include "gdis.h" #include "coords.h" #include "edit.h" #include "file.h" #include "graph.h" #include "model.h" #include "parse.h" #include "scan.h" #include "task.h" #include "grid.h" #include "matrix.h" #include "surface.h" #include "spatial.h" #include "gui_shorts.h" #include "interface.h" #include "dialog.h" #include "opengl.h" #include "render.h" #include "gui_image.h" extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /* TODO - avoid using these globals */ GtkWidget *phonon_freq, *phonon_ir, *phonon_raman; /*****************************/ /* phonon selection handlers */ /*****************************/ void update_phonon_range(struct model_pak *model) { /* checks */ g_assert(model != NULL); if (!model->phonon_slider) return; /* update the slider */ if (model->num_phonons > 0) gtk_range_set_range(GTK_RANGE(model->phonon_slider), 1, model->num_phonons); } /*****************************/ /* execute a gulp run (task) */ /*****************************/ #define DEBUG_EXEC_GULP_TASK 0 void exec_gulp_task(gpointer ptr, gpointer data) { gchar *inpfile; struct model_pak *model = ptr; struct task_pak *task = data; /* checks */ g_assert(model != NULL); g_assert(task != NULL); /* construct fullpath input filename - required for writing */ inpfile = g_build_filename(sysenv.cwd, model->gulp.temp_file, NULL); task->status_file = g_build_filename(sysenv.cwd, model->gulp.out_file, NULL); #if DEBUG_EXEC_GULP_TASK printf(" input file: %s\n", inpfile); printf("output file: %s\n", model->gulp.out_file); #endif write_gulp(inpfile, model); g_free(inpfile); /* are we supposed to execute GULP? */ if (model->gulp.no_exec) { #if DEBUG_EXEC_GULP_TASK printf("Skipping GULP execution on user request.\n"); #endif return; } exec_gulp(model->gulp.temp_file, model->gulp.out_file); } /*****************************/ /* process a gulp run (task) */ /*****************************/ #define DEBUG_PROC_GULP 0 void proc_gulp_task(gpointer ptr) { gchar *inp, *res, *out; GString *line; struct model_pak *dest, *data; /* TODO - model locking (moldel_ptr RO/RW etc) to prevent screw ups */ g_return_if_fail(ptr != NULL); data = ptr; /* don't attempt to process if gulp execution was turned off */ if (data->gulp.no_exec) return; /* FIXME - if the user has moved directories since submitting */ /* the gulp job then cwd will have changed and this will fail */ inp = g_build_filename(sysenv.cwd, data->gulp.temp_file, NULL); res = g_build_filename(sysenv.cwd, data->gulp.dump_file, NULL); out = g_build_filename(sysenv.cwd, data->gulp.out_file, NULL); switch (data->gulp.run) { case E_SINGLE: /* same model (ie with current energetics dialog) so update */ read_gulp_output(out, data); /* update energy (TODO - only if successful) */ line = g_string_new(NULL); if (data->gulp.free) g_string_sprintf(line, "%f (free energy)", data->gulp.energy); else g_string_sprintf(line, "%f", data->gulp.energy); property_add_ranked(2, "Energy", line->str, data); /* is there a dialog entry to be updated? */ if (GTK_IS_ENTRY(data->gulp.energy_entry)) gtk_entry_set_text(GTK_ENTRY(data->gulp.energy_entry), line->str); if (data->periodic == 2) { /* update surface dipole dialog entry */ g_string_sprintf(line,"%f e.Angs",data->gulp.sdipole); if (GTK_IS_ENTRY(data->gulp.sdipole_entry)) gtk_entry_set_text(GTK_ENTRY(data->gulp.sdipole_entry), line->str); /* update surface energy dialog entry */ g_string_sprintf(line,"%f %s",data->gulp.esurf[0], data->gulp.esurf_units); if (GTK_IS_ENTRY(data->gulp.esurf_entry)) gtk_entry_set_text(GTK_ENTRY(data->gulp.esurf_entry), line->str); /* update attachment energy dialog entry */ g_string_sprintf(line,"%f %s",data->gulp.eatt[0], data->gulp.eatt_units); if (GTK_IS_ENTRY(data->gulp.eatt_entry)) gtk_entry_set_text(GTK_ENTRY(data->gulp.eatt_entry), line->str); } update_phonon_range(data); gui_active_refresh(); g_string_free(line, TRUE); break; case E_OPTIMIZE: /* TODO - make it possile to get dialog data by request */ /* so that we can check if a dialog exsits to be updated */ /* get new coords */ /* create new model for the minimized result */ dest = model_new(); g_return_if_fail(dest != NULL); /* read main data from the res file (correct charges etc.) */ read_gulp(res, dest); /* graft to the model tree, so subsequent GULP read doesn't replace coords */ tree_model_add(dest); /* get the output energy/phonons etc. */ read_gulp_output(out, dest); /* FIXME - if the GULP job fails - model_prep() isnt called, and the */ /* model camera isnt initialized => error trap when gdis tries to visualize */ if (!dest->camera) { printf("WARNING: GULP calculation has possibly failed.\n"); model_prep(dest); } break; /* MD */ default: break; } g_free(inp); g_free(res); g_free(out); redraw_canvas(ALL); return; } /***********************************************/ /* controls the use of GULP to optimise coords */ /***********************************************/ #define DEBUG_RUN_GULP 0 void gui_gulp_task(GtkWidget *w, struct model_pak *data) { /* checks */ g_return_if_fail(data != NULL); if (!sysenv.gulp_path) { gui_text_show(ERROR, "GULP executable was not found.\n"); return; } #if DEBUG_RUN_GULP printf("output file: %s\n", data->gulp.out_file); #endif task_new("gulp", &exec_gulp_task, data, &proc_gulp_task, data, data); } /*************************/ /* GULP run type toggles */ /*************************/ void gulp_run_single(struct model_pak *data) { data->gulp.run = E_SINGLE; } void gulp_run_optimize(struct model_pak *data) { data->gulp.run = E_OPTIMIZE; } void gulp_run_dynamics(struct model_pak *data) { data->gulp.run = MD; } /************************/ /* GULP keyword toggles */ /************************/ gint cb_gulp_keyword(GtkWidget *w, gpointer *obj) { gint keyword; struct model_pak *data; keyword = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(obj), "key")); data = (struct model_pak *) g_object_get_data(G_OBJECT(obj), "ptr"); g_return_val_if_fail(data != NULL, FALSE); switch(keyword) { case NVE: case NVT: case NPT: if (data->gulp.run != MD) { gui_text_show(WARNING, "Ignoring ensemble as it's not a dynamics run.\n"); return(TRUE); } data->gulp.ensemble = keyword; break; case CONP: case CONV: data->gulp.method = keyword; break; case BFGS_OPT: case CONJ_OPT: case RFO_OPT: data->gulp.optimiser = keyword; break; case MOLE: case MOLMEC: case MOLQ: case NOBUILD: data->gulp.coulomb = keyword; break; case TEMP_FILE: g_free(data->gulp.temp_file); data->gulp.temp_file = g_strdup(gtk_entry_get_text(GTK_ENTRY(obj))); parse_space_replace(data->gulp.temp_file,'_'); break; case DUMP_FILE: g_free(data->gulp.dump_file); data->gulp.dump_file = g_strdup(gtk_entry_get_text(GTK_ENTRY(obj))); parse_space_replace(data->gulp.dump_file,'_'); break; case SBULK_ENERGY: data->gulp.sbulkenergy = str_to_float(gtk_entry_get_text(GTK_ENTRY(obj))); break; } return(FALSE); } /*******************************************************/ /* alternate event parser (overlap in optimiser stuff) */ /*******************************************************/ gint switch_keyword(GtkWidget *w, gpointer *obj) { gint keyword; struct model_pak *data; keyword = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(obj), "key")); data = (struct model_pak *) g_object_get_data(G_OBJECT(obj), "ptr"); g_return_val_if_fail(data != NULL, FALSE); switch(keyword) { case SWITCH_OFF: case BFGS_OPT: case CONJ_OPT: case RFO_OPT: data->gulp.optimiser2 = keyword; break; case CYCLE: case GNORM: data->gulp.switch_type = keyword; break; } return(FALSE); } /*********************************/ /* change optimiser switch value */ /*********************************/ gint switch_value_changed(gpointer *entry) { struct model_pak *data; /* retrieve the appropriate model */ g_return_val_if_fail(entry != NULL, FALSE); data = (struct model_pak *) g_object_get_data(G_OBJECT(entry), "ptr"); g_return_val_if_fail(data != NULL, FALSE); data->gulp.switch_value = str_to_float(gtk_entry_get_text(GTK_ENTRY(entry))); return(FALSE); } /***********************************/ /* register structure name changes */ /***********************************/ void gulp_jobname_changed(GtkWidget *w, struct model_pak *model) { const gchar *text; g_assert(w != NULL); g_assert(model != NULL); g_free(model->gulp.dump_file); g_free(model->gulp.temp_file); g_free(model->gulp.trj_file); g_free(model->gulp.out_file); text = gtk_entry_get_text(GTK_ENTRY(w)); model->gulp.temp_file = g_strdup_printf("%s.gin", text); model->gulp.dump_file = g_strdup_printf("%s.res", text); model->gulp.trj_file = g_strdup_printf("%s.trg", text); model->gulp.out_file = g_strdup_printf("%s.got", text); /* disallow spaces (bad filename) */ parse_space_replace(model->gulp.temp_file, '_'); parse_space_replace(model->gulp.dump_file, '_'); parse_space_replace(model->gulp.trj_file, '_'); parse_space_replace(model->gulp.out_file, '_'); gui_relation_update_widget(&model->gulp.dump_file); gui_relation_update_widget(&model->gulp.temp_file); gui_relation_update_widget(&model->gulp.trj_file); } /**************************/ /* phonon scaling handler */ /**************************/ void phonon_scaling_changed(GtkWidget *w, gpointer *ptr) { sysenv.render.phonon_scaling = GTK_ADJUSTMENT(w)->value; } #define DEBUG_PHONON_DISPLAY 0 /************************************/ /* vibrational mode display handler */ /************************************/ void phonon_mode_hide(GtkWidget *w, struct model_pak *model) { spatial_destroy_by_label("phonons", model); redraw_canvas(SINGLE); } /************************************/ /* vibrational mode display handler */ /************************************/ void phonon_mode_show(GtkWidget *w, struct model_pak *data) { gdouble x1[3], x2[3], colour[3]; GSList *list, *xlist, *ylist, *zlist; gpointer *freq; struct spatial_pak *spatial; struct core_pak *core, *prim; /* get rid of previous phonon objects */ spatial_destroy_by_label("phonons", data); VEC3SET(colour, 0.0, 1.0, 0.0); /* find and display current */ freq = g_slist_nth_data(data->phonons, data->current_phonon-1); if (freq) { /* create & init the spatial object */ spatial = spatial_new("phonons", SPATIAL_VECTOR, 2, TRUE, data); /* get eigenvectors from all atoms */ for (list=data->cores ; list; list=g_slist_next(list)) { core = list->data; ARR3SET(x1, core->x); /* get eigenvector list */ if (core->primary) { xlist = core->vibx_list; ylist = core->viby_list; zlist = core->vibz_list; } else { prim = core->primary_core; xlist = prim->vibx_list; ylist = prim->viby_list; zlist = prim->vibz_list; } g_assert(xlist != NULL); g_assert(ylist != NULL); g_assert(zlist != NULL); /* get current eigenvector */ x2[0] = *((gdouble *) g_slist_nth_data(xlist, data->current_phonon-1)); x2[1] = *((gdouble *) g_slist_nth_data(ylist, data->current_phonon-1)); x2[2] = *((gdouble *) g_slist_nth_data(zlist, data->current_phonon-1)); #if DEBUG_PHONON_DISPLAY P3VEC("vec: ", x2); #endif /* compute coords */ VEC3MUL(x2, sysenv.render.phonon_scaling); vecmat(data->ilatmat, x2); ARR3ADD(x2, x1); /* add to spatial */ spatial_vertex_add(x2, colour, spatial); spatial_vertex_add(x1, colour, spatial); } /* drawing update */ coords_compute(data); redraw_canvas(SINGLE); } } /********************************/ /* eigenvector show/hide toggle */ /********************************/ void phonon_mode_toggle(GtkWidget *w, struct model_pak *model) { if (model->show_eigenvectors) phonon_mode_show(w, model); else phonon_mode_hide(w, model); } /***********************************/ /* cleanup a vibrational animation */ /***********************************/ void phonon_timeout_cleanup(struct model_pak *model) { GSList *list; struct core_pak *core; g_assert(model != NULL); for (list=model->cores ; list; list=g_slist_next(list)) { core = list->data; VEC3SET(core->offset, 0.0, 0.0, 0.0); } } /************************************/ /* timeout to control the animation */ /************************************/ /* NB: lots of sanity checks that return with FALSE (ie stop timeout) */ /* so if the model is deleted during an animation we don't segfault */ #define MAX_PULSE_COUNT 10.0 gint phonon_mode_timeout(struct model_pak *model) { static gint count=0; gdouble f; gchar *name, *text; gpointer ptr; GSList *list, *xlist, *ylist, *zlist; struct core_pak *core, *prim; /* checks */ g_assert(model != NULL); ptr = g_slist_nth_data(model->phonons, model->current_phonon-1); if (!ptr) { phonon_timeout_cleanup(model); return(FALSE); } if (!model->pulse_direction) return(FALSE); /* setup scaling for this step */ model->pulse_count += model->pulse_direction; if (model->pulse_count <= -model->pulse_max) { model->pulse_count = -model->pulse_max; model->pulse_direction = 1; } if (model->pulse_count >= model->pulse_max) { model->pulse_count = model->pulse_max; model->pulse_direction = -1; } f = sysenv.render.phonon_scaling; f *= (gdouble) model->pulse_count; f /= model->pulse_max; /* get eigenvectors from all atoms */ for (list=model->cores ; list; list=g_slist_next(list)) { core = list->data; /* get eigenvector list */ if (core->primary) { xlist = core->vibx_list; ylist = core->viby_list; zlist = core->vibz_list; } else { prim = core->primary_core; xlist = prim->vibx_list; ylist = prim->viby_list; zlist = prim->vibz_list; } g_assert(xlist != NULL); g_assert(ylist != NULL); g_assert(zlist != NULL); /* vibrational eigenvector */ ptr = g_slist_nth_data(xlist, model->current_phonon-1); if (!ptr) { phonon_timeout_cleanup(model); return(FALSE); } core->offset[0] = *((gdouble *) ptr); ptr = g_slist_nth_data(ylist, model->current_phonon-1); if (!ptr) { phonon_timeout_cleanup(model); return(FALSE); } core->offset[1] = *((gdouble *) ptr); ptr = g_slist_nth_data(zlist, model->current_phonon-1); if (!ptr) { phonon_timeout_cleanup(model); return(FALSE); } core->offset[2] = *((gdouble *) ptr); /* pulse offset scaling */ VEC3MUL(core->offset, f); vecmat(model->ilatmat, core->offset); /* TODO - shell also? */ } /* recalc coords */ coords_compute(model); /* CURRENT - output to povray for movie rendering */ if (model->phonon_movie) { if (!model->pulse_count && model->pulse_direction==1) { model->phonon_movie = FALSE; count=0; text = g_strdup_printf("%s -delay 20 %s_*.tga %s.gif", sysenv.convert_path, model->phonon_movie_name, model->phonon_movie_name); system(text); g_free(text); return(FALSE); } else { text = g_strdup_printf("%s_%06d.pov", model->phonon_movie_name, count++); name = g_build_filename(sysenv.cwd, text, NULL); write_povray(name, model); povray_exec(name); g_free(text); g_free(name); } } else redraw_canvas(SINGLE); return(TRUE); } /****************************/ /* animate the current mode */ /****************************/ void phonon_mode_animate(GtkWidget *w, struct model_pak *model) { g_assert(model != NULL); model->pulse_count = 0; model->pulse_direction = 1; g_timeout_add(100, (GSourceFunc) phonon_mode_timeout, model); } /****************************/ /* create a movie of the current mode */ /****************************/ void phonon_mode_movie(GtkWidget *w, struct model_pak *model) { g_assert(model != NULL); model->phonon_movie = TRUE; phonon_mode_animate(NULL, model); } /******************************/ /* stop phonon mode animation */ /*****************************/ void phonon_mode_stop(GtkWidget *w, struct model_pak *model) { /* reset */ model->pulse_direction = 0; model->pulse_count = 0; phonon_timeout_cleanup(model); /* redraw */ coords_compute(model); redraw_canvas(SINGLE); } /*********************************/ /* phonon slider changed updates */ /*********************************/ void update_phonon_frequency(GtkWidget *w, struct model_pak *model) { gpointer freq, ir, raman; g_assert(model != NULL); freq = g_slist_nth_data(model->phonons, model->current_phonon-1); if (freq) { ir = g_slist_nth_data(model->ir_list, model->current_phonon-1); raman = g_slist_nth_data(model->raman_list, model->current_phonon-1); /* update displayed frequency */ gtk_entry_set_text(GTK_ENTRY(phonon_freq), (gchar *) freq); gtk_entry_set_text(GTK_ENTRY(phonon_ir), (gchar *) ir); gtk_entry_set_text(GTK_ENTRY(phonon_raman), (gchar *) raman); /* update displayed vectors */ if (model->show_eigenvectors) { phonon_mode_hide(NULL, model); phonon_mode_show(NULL, model); } } } /*****************************/ /* phonon intensity plotting */ /*****************************/ void phonon_graph(GSList *mode, struct model_pak *model) { gint n; gdouble *spectrum; gpointer graph; GSList *list; g_assert(model != NULL); /* checks */ if (model->num_phonons < 1) return; spectrum = g_malloc(model->num_phonons * sizeof(gdouble)); /* extract data into array */ n=0; for (list=mode ; list ; list=g_slist_next(list)) { g_assert(n < model->num_phonons); spectrum[n] = str_to_float(list->data); n++; } /* create a new graph */ if (mode == model->ir_list) graph = graph_new("IR spectrum", model); else graph = graph_new("Raman spectrum", model); graph_add_data(model->num_phonons, spectrum, 1, model->num_phonons, graph); graph_set_yticks(FALSE, 2, graph); tree_model_add(model); g_free(spectrum); } /***************************************/ /* phonon intensity plotting callbacks */ /***************************************/ void cb_graph_ir(GtkWidget *w, struct model_pak *model) { g_assert(model != NULL); phonon_graph(model->ir_list, model); } void cb_graph_raman(GtkWidget *w, struct model_pak *model) { g_assert(model != NULL); phonon_graph(model->raman_list, model); } /* CURRENT - invoke test module */ /* void phonon_module_invoke(void) { struct model_pak *model; model = sysenv.active_model; module_function_invoke("test", model); } */ /*******************************/ /* decrement current frequency */ /*******************************/ void phonon_mode_prev(GtkWidget *w, struct model_pak *model) { if (model->current_phonon > 1) model->current_phonon--; gtk_range_set_value(GTK_RANGE(model->phonon_slider), (gdouble) model->current_phonon); } /*******************************/ /* increment current frequency */ /*******************************/ void phonon_mode_next(GtkWidget *w, struct model_pak *model) { if (model->current_phonon < model->num_phonons) model->current_phonon++; gtk_range_set_value(GTK_RANGE(model->phonon_slider), (gdouble) model->current_phonon); } /****************/ /* phonon page */ /****************/ void gulp_phonon_box(GtkWidget *box, struct model_pak *data) { GtkWidget *swin, *table, *frame, *hbox, *hbox2, *vbox, *label; hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(box), hbox, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(hbox), PANEL_SPACING); frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(hbox), frame, FALSE, FALSE, 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); hbox2 = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox2, FALSE, FALSE, 0); gui_direct_check("Compute vibrational modes", &data->gulp.phonon, NULL, NULL, hbox2); hbox2 = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox2, FALSE, FALSE, 0); gui_direct_check("Compute eigenvectors", &data->gulp.eigen, NULL, NULL, hbox2); if (data->periodic) { frame = gtk_frame_new("kpoints"); gtk_box_pack_end(GTK_BOX(hbox), frame, TRUE, TRUE, PANEL_SPACING); swin = gui_text_window(&data->gulp.kpoints, TRUE); gtk_container_add(GTK_CONTAINER(frame), swin); } /* phonon slide selector */ frame = gtk_frame_new("Eigenvectors"); gtk_box_pack_start(GTK_BOX(box), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(FALSE, PANEL_SPACING); gtk_container_add(GTK_CONTAINER(frame), vbox); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new("Number "); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); data->phonon_slider = gui_direct_hscale(0, 1, 1, &data->current_phonon, update_phonon_frequency, data, hbox); /* CURRENT */ gui_button(" < ", phonon_mode_prev, data, hbox, FF); gui_button(" > ", phonon_mode_next, data, hbox, FF); /* phonon info */ table = gtk_table_new(2, 3, TRUE); gtk_box_pack_start(GTK_BOX(vbox), table, TRUE, TRUE, 0); label = gtk_label_new("Frequency"); gtk_table_attach_defaults(GTK_TABLE(table), label, 0, 1, 0, 1); label = gui_button("IR intensity", cb_graph_ir, data, NULL, 0); gtk_table_attach_defaults(GTK_TABLE(table), label, 1, 2, 0, 1); label = gui_button("Raman intensity", cb_graph_raman, data, NULL, 0); gtk_table_attach_defaults(GTK_TABLE(table), label, 2, 3, 0, 1); phonon_freq = gtk_entry_new_with_max_length(LINELEN); gtk_entry_set_text(GTK_ENTRY(phonon_freq), " "); gtk_entry_set_editable(GTK_ENTRY(phonon_freq), FALSE); gtk_table_attach_defaults(GTK_TABLE(table), phonon_freq, 0, 1, 1, 2); phonon_ir = gtk_entry_new_with_max_length(LINELEN); gtk_entry_set_text(GTK_ENTRY(phonon_ir), " "); gtk_entry_set_editable(GTK_ENTRY(phonon_ir), FALSE); gtk_table_attach_defaults(GTK_TABLE(table), phonon_ir, 1, 2, 1, 2); phonon_raman = gtk_entry_new_with_max_length(LINELEN); gtk_entry_set_text(GTK_ENTRY(phonon_raman), " "); gtk_entry_set_editable(GTK_ENTRY(phonon_raman), FALSE); gtk_table_attach_defaults(GTK_TABLE(table), phonon_raman, 2, 3, 1, 2); gui_direct_check("Display Eigenvectors", &data->show_eigenvectors, phonon_mode_toggle, data, vbox); gui_direct_spin("Eigenvector scaling", &sysenv.render.phonon_scaling, 0.1, 9.9, 0.1, update_phonon_frequency, data, vbox); gui_direct_spin("Animation resolution", &data->pulse_max, 10.0, 100.0, 1.0, NULL, NULL, vbox); /* animation */ hbox2 = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox2, TRUE, FALSE, 0); gui_text_entry(NULL, &data->phonon_movie_name, TRUE, FALSE, hbox2); hbox = gtk_hbox_new(TRUE, PANEL_SPACING); gtk_box_pack_end(GTK_BOX(hbox2), hbox, FALSE, FALSE, 0); gui_icon_button("image_camera", NULL, phonon_mode_movie, (gpointer) data, hbox); gui_icon_button("GDIS_PLAY", NULL, phonon_mode_animate, (gpointer) data, hbox); gui_icon_button("GDIS_STOP", NULL, phonon_mode_stop, (gpointer) data, hbox); gtk_widget_show_all(box); update_phonon_range(data); } /*********************************************/ /* read in solvent accessible surface points */ /*********************************************/ /* TODO - put elsewhere? */ void gulp_cosmic_read(gchar *filename, struct model_pak *model) { gint i, n=0, dim, expect=-1, num_tokens; gchar **buff; gdouble x[3], colour[3]; gpointer scan, spatial; g_assert(filename != NULL); g_assert(model != NULL); VEC3SET(colour, 0.0, 1.0, 0.0); n=0; scan = scan_new(filename); if (!scan) return; /* header */ buff = scan_get_tokens(scan, &num_tokens); if (num_tokens == 1) expect = str_to_float(*buff); /* new GULP version - dimension + cell vectors */ buff = scan_get_tokens(scan, &num_tokens); if (num_tokens == 1) { dim = str_to_float(*buff); g_strfreev(buff); /* TODO - process cell vectors */ for (i=dim ; i-- ; ) { buff = scan_get_tokens(scan, &num_tokens); g_strfreev(buff); } } else scan_put_line(scan); /* body */ while (!scan_complete(scan)) { buff = scan_get_tokens(scan, &num_tokens); if (num_tokens == 6) { /* coordinates */ x[0] = str_to_float(*(buff+2)); x[1] = str_to_float(*(buff+3)); x[2] = str_to_float(*(buff+4)); vecmat(model->ilatmat, x); /* add a new point */ spatial = spatial_new("SAS", SPATIAL_GENERIC, 1, TRUE, model); spatial_vertex_add(x, colour, spatial); n++; } else break; g_strfreev(buff); } /* printf("points: %d / %d\n", n, expect); */ scan_free(scan); } void gulp_cosmic_display(GtkWidget *w, struct model_pak *model) { gchar *name; name = parse_extension_set(model->filename, "sas"); /* printf("cosmic: %s\n", name); */ gulp_cosmic_read(name, model); /* updates */ coords_init(CENT_COORDS, model); redraw_canvas(SINGLE); g_free(name); } /*************************************/ /* set COSMO widget sensitive status */ /*************************************/ void gulp_cosmo_panel_refresh(GtkWidget *w, gpointer dialog) { gchar *text; GtkWidget *box; GtkEntry *solvation; struct model_pak *model; box = dialog_child_get(dialog, "cosmo_box"); g_assert(box != NULL); model = dialog_model(dialog); g_assert(model != NULL); solvation = dialog_child_get(dialog, "solvation_model"); text = gui_pd_text(solvation); if (!text) return; if (g_ascii_strncasecmp(text, "none", 4) == 0) { gtk_widget_set_sensitive(box, FALSE); model->gulp.solvation_model = GULP_SOLVATION_NONE; } if (g_ascii_strncasecmp(text, "cosmo", 5) == 0) { gtk_widget_set_sensitive(box, TRUE); model->gulp.solvation_model = GULP_SOLVATION_COSMO; } if (g_ascii_strncasecmp(text, "cosmic", 6) == 0) { gtk_widget_set_sensitive(box, TRUE); model->gulp.solvation_model = GULP_SOLVATION_COSMIC; } g_free(text); } /********************************************/ /* calculate points for a COSMO calculation */ /********************************************/ gint gulp_cosmo_points(gint shape, gint k, gint l) { gint points; if (shape) points = 2 + 10 * pow(3, k) * pow(4, l); else points = 2 + 4 * pow(3, k) * pow(4, l); return(points); } /********************************************/ /* update points for a COSMO calculation */ /********************************************/ void gulp_cosmo_points_refresh(GtkWidget *w, gpointer dialog) { gint k, l; gchar *text; GtkLabel *label; GtkSpinButton *spin; GtkEntry *shape; struct model_pak *model; model = dialog_model(dialog); g_assert(model != NULL); shape = dialog_child_get(dialog, "cosmo_shape"); if (g_ascii_strncasecmp(gtk_entry_get_text(shape), "dodec", 5) == 0) model->gulp.cosmo_shape = 1; else model->gulp.cosmo_shape = 0; spin = dialog_child_get(dialog, "cosmo_index_k"); k = SPIN_IVAL(spin); spin = dialog_child_get(dialog, "cosmo_index_l"); l = SPIN_IVAL(spin); model->gulp.cosmo_points = gulp_cosmo_points(model->gulp.cosmo_shape, k, l); label = dialog_child_get(dialog, "cosmo_points"); g_assert(label != NULL); text = g_strdup_printf("%6d", model->gulp.cosmo_points); gtk_label_set_text(label, text); g_free(text); /* CURRENT - enforce segments <= points */ spin = dialog_child_get(dialog, "cosmo_segments"); g_assert(spin != NULL); gtk_spin_button_set_range(spin, 1.0, (gdouble) model->gulp.cosmo_points); } /*******************************************/ /* update segments for a COSMO calculation */ /*******************************************/ void gulp_cosmo_segments_refresh(GtkSpinButton *w, gpointer dialog) { struct model_pak *model; model = dialog_model(dialog); g_assert(model != NULL); model->gulp.cosmo_segments = SPIN_IVAL(w); } /**************************************************/ /* toggle solvent accessible surface (SAS) output */ /**************************************************/ void gulp_cosmo_sas_toggle(GtkWidget *w, gpointer data) { struct model_pak *model = data; g_assert(model != NULL); if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w))) model->gulp.cosmo_sas = TRUE; else model->gulp.cosmo_sas = FALSE; } /*********************************************************/ /* options for displaying the solvent accessible surface */ /*********************************************************/ void gulp_solvation_box(GtkWidget *box, gpointer dialog) { gint active; GSList *slist; GList *list=NULL; gpointer cosmo, ptr; GtkWidget *hbox, *vbox, *vbox2, *label, *shape_k, *shape_l, *segments; struct model_pak *model; model = dialog_model(dialog); g_assert(model != NULL); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(box), hbox, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(hbox), PANEL_SPACING); vbox = gtk_vbox_new(FALSE, PANEL_SPACING); gtk_box_pack_start(GTK_BOX(hbox), vbox, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(vbox), PANEL_SPACING); vbox2 = gtk_vbox_new(FALSE, PANEL_SPACING); gtk_box_pack_end(GTK_BOX(vbox), vbox2, TRUE, TRUE, 0); dialog_child_set(dialog, "cosmo_box", vbox2); /* cosmo = new_check_button("COSMO calculation ", gulp_cosmo_panel_refresh, dialog, model->gulp.cosmo, vbox); */ switch(model->gulp.solvation_model) { case GULP_SOLVATION_COSMIC: active = 1; break; case GULP_SOLVATION_COSMO: active = 2; break; default: active = 0; } /* FIXME - pulldown needs a way to initialize */ slist = NULL; slist = g_slist_append(slist, "None"); slist = g_slist_append(slist, "COSMIC"); slist = g_slist_append(slist, "COSMO"); cosmo = gui_pd_new(slist, active, gulp_cosmo_panel_refresh, dialog); gui_hbox_pack(vbox, "Solvation model ", cosmo, 0); dialog_child_set(dialog, "solvation_model", cosmo); g_slist_free(slist); /* solvent parameters */ gui_direct_spin("Solvent epsilon ", &model->gulp.cosmo_solvent_epsilon, 1.0, 1000.0, 0.1, NULL, NULL, vbox2); gui_direct_spin("Solvent radius ", &model->gulp.cosmo_solvent_radius, 0.1, 9.9, 0.1, NULL, NULL, vbox2); gui_direct_spin("Solvent delta ", &model->gulp.cosmo_solvent_delta, 0.1, 9.9, 0.1, NULL, NULL, vbox2); gui_direct_spin("Solvent rmax ", &model->gulp.cosmo_solvent_rmax, 1.0, 99.0, 1.0, NULL, NULL, vbox2); gui_direct_spin("Smoothing ", &model->gulp.cosmo_smoothing, 0.0, 2.0, 0.1, NULL, NULL, vbox2); /* solvent surface construction geometry */ list = NULL; if (model->gulp.cosmo_shape) { list = g_list_append(list, "Dodecahedron"); list = g_list_append(list, "Octahedron"); } else { list = g_list_append(list, "Octahedron"); list = g_list_append(list, "Dodecahedron"); } ptr = gui_pulldown_new("Shape approximation ", list, FALSE, vbox2); g_signal_connect(GTK_OBJECT(ptr), "changed", GTK_SIGNAL_FUNC(gulp_cosmo_points_refresh), dialog); dialog_child_set(dialog, "cosmo_shape", ptr); g_list_free(list); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox2), hbox, FALSE, FALSE, 0); shape_k = new_spinner("Shape indices ", 0, 99, 1, gulp_cosmo_points_refresh, dialog, hbox); shape_l = new_spinner(NULL, 0, 99, 1, gulp_cosmo_points_refresh, dialog, hbox); dialog_child_set(dialog, "cosmo_index_k", shape_k); dialog_child_set(dialog, "cosmo_index_l", shape_l); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox2), hbox, FALSE, FALSE, 0); label = gtk_label_new("Points per atom "); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); label = gtk_label_new("?"); gtk_box_pack_end(GTK_BOX(hbox), label, FALSE, FALSE, 0); dialog_child_set(dialog, "cosmo_points", label); /* CURRENT */ hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox2), hbox, FALSE, FALSE, 0); segments = new_spinner("Segments per atom ", 1, model->gulp.cosmo_points, 1, gulp_cosmo_segments_refresh, dialog, hbox); dialog_child_set(dialog, "cosmo_segments", segments); /* solvent surface */ new_check_button("Output SAS points ", gulp_cosmo_sas_toggle, model, model->gulp.cosmo_sas, vbox2); gui_button_x("Visualize SAS points ", gulp_cosmic_display, model, vbox2); /* initialize values */ gtk_spin_button_set_value(GTK_SPIN_BUTTON(shape_k), model->gulp.cosmo_shape_index[0]); gtk_spin_button_set_value(GTK_SPIN_BUTTON(shape_l), model->gulp.cosmo_shape_index[1]); gtk_spin_button_set_value(GTK_SPIN_BUTTON(segments), model->gulp.cosmo_segments); gulp_cosmo_points_refresh(NULL, dialog); gulp_cosmo_panel_refresh(cosmo, dialog); gtk_widget_show_all(box); } /*******************************/ /* GULP job setup/results page */ /*******************************/ void gui_gulp_widget(GtkWidget *box, gpointer dialog) { gchar *text; GSList *keyword[5]; GString *line; GtkWidget *hbox, *vbox, *vbox1, *vbox2, *page, *swin; GtkWidget *frame, *button, *label, *entry, *notebook; struct model_pak *model; model = dialog_model(dialog); g_assert(model != NULL); /* string manipulation scratchpad */ line = g_string_new(NULL); /* create notebook */ notebook = gtk_notebook_new(); gtk_notebook_set_tab_pos(GTK_NOTEBOOK(notebook), GTK_POS_TOP); gtk_container_add(GTK_CONTAINER(box), notebook); gtk_notebook_set_show_border(GTK_NOTEBOOK(notebook), FALSE); /* run type page */ page = gtk_vbox_new(FALSE, 0); label = gtk_label_new (" Control "); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); hbox = gtk_hbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(page), hbox); /* split panel */ vbox1 = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(hbox), vbox1, TRUE, TRUE, 0); vbox2 = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(hbox), vbox2, TRUE, TRUE, 0); /* frame */ frame = gtk_frame_new("Run type"); gtk_box_pack_start(GTK_BOX(vbox1), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING/2); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); /* do the radio buttons */ new_radio_group(0, vbox, TT); button = add_radio_button("Single point", (gpointer) gulp_run_single, model); if (model->gulp.run == E_SINGLE) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Optimise", (gpointer) gulp_run_optimize, model); if (model->gulp.run == E_OPTIMIZE) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); button = add_radio_button("Dynamics", (gpointer) gulp_run_dynamics, model); if (model->gulp.run == MD) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* method constraint */ frame = gtk_frame_new(" Constraint "); gtk_box_pack_start(GTK_BOX(vbox1), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING/2); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame),vbox); /* do the first (DEFAULT MODE) radio button */ button = gtk_radio_button_new_with_label(NULL, "Constant pressure"); gtk_box_pack_start (GTK_BOX (vbox), button, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC (cb_gulp_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) CONP); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.method == CONP) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* make a radio group */ keyword[1] = gtk_radio_button_group(GTK_RADIO_BUTTON (button)); /* do the next button */ button = gtk_radio_button_new_with_label (keyword[1], "Constant volume"); gtk_box_pack_start(GTK_BOX (vbox), button, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC (cb_gulp_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) CONV); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.method == CONV) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* frame */ frame = gtk_frame_new(" Molecule options "); gtk_box_pack_start(GTK_BOX(vbox1), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING/2); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame),vbox); /* do the first radio button */ button = gtk_radio_button_new_with_label(NULL, "Coulomb subtract all intramolecular"); gtk_box_pack_start (GTK_BOX (vbox), button, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT (button), "clicked", GTK_SIGNAL_FUNC (cb_gulp_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) MOLE); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.coulomb == MOLE) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* make a radio group */ keyword[2] = gtk_radio_button_group(GTK_RADIO_BUTTON (button)); /* do the next button */ button = gtk_radio_button_new_with_label(keyword[2], "Coulomb subtract 1-2 and 1-3 intramolecular"); gtk_box_pack_start (GTK_BOX (vbox), button, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(cb_gulp_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) MOLMEC); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.coulomb == MOLMEC) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* subsequent button... */ button = gtk_radio_button_new_with_label(gtk_radio_button_group (GTK_RADIO_BUTTON (button)), "Build, but retain coulomb interactions"); gtk_box_pack_start(GTK_BOX (vbox), button, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT (button), "clicked", GTK_SIGNAL_FUNC (cb_gulp_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) MOLQ); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.coulomb == MOLQ) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* subsequent button... */ button = gtk_radio_button_new_with_label(gtk_radio_button_group (GTK_RADIO_BUTTON (button)), "Molecule building off"); gtk_box_pack_start(GTK_BOX (vbox), button, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT (button), "clicked", GTK_SIGNAL_FUNC (cb_gulp_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) NOBUILD); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.coulomb == NOBUILD) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); gui_direct_check("Fix the initial connectivity", &model->gulp.fix, NULL, NULL, vbox); gui_direct_check("Automatic connectivity off", &model->gulp.noautobond, NULL, NULL, vbox); /* temperature & pressure */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(vbox1), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING/2); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame),vbox); gui_text_entry("Temperature", &model->gulp.temperature, TRUE, FALSE, vbox); gui_text_entry("Pressure", &model->gulp.pressure, TRUE, FALSE, vbox); /* dynamics ensemble */ frame = gtk_frame_new("Dynamics"); gtk_box_pack_start(GTK_BOX(vbox2), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING/2); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame),vbox); /* do the first (DEFAULT MODE) radio button */ button = gtk_radio_button_new_with_label(NULL, "NVE"); gtk_box_pack_start(GTK_BOX(vbox), button, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC (cb_gulp_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) NVE); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.ensemble == NVE) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* make a radio group */ keyword[1] = gtk_radio_button_group(GTK_RADIO_BUTTON (button)); /* do the next button */ button = gtk_radio_button_new_with_label (keyword[1], "NVT"); gtk_box_pack_start(GTK_BOX(vbox), button, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(cb_gulp_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) NVT); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); /* NEW */ if (model->gulp.ensemble == NVT) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* subsequent button... */ button = gtk_radio_button_new_with_label(gtk_radio_button_group (GTK_RADIO_BUTTON (button)), "NPT"); gtk_box_pack_start(GTK_BOX(vbox), button, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC (cb_gulp_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) NPT); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.ensemble == NPT) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* dynamics sampling */ gtk_box_pack_start(GTK_BOX(vbox), gtk_hseparator_new(), FALSE, FALSE, 0); gui_text_entry("Timestep", &model->gulp.timestep, TRUE, FALSE, vbox); gui_text_entry("Equilibration ", &model->gulp.equilibration, TRUE, FALSE, vbox); gui_text_entry("Production", &model->gulp.production, TRUE, FALSE, vbox); gui_text_entry("Sample", &model->gulp.sample, TRUE, FALSE, vbox); gui_text_entry("Write", &model->gulp.write, TRUE, FALSE, vbox); /* frame for keyword toggles */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(vbox2), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING/2); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_check("Create input file then stop", &model->gulp.no_exec, NULL, NULL, vbox); gui_direct_check("Build cell, then discard symmetry", &model->gulp.nosym, NULL, NULL, vbox); gui_direct_check("No attachment energy calculation", &model->gulp.no_eatt, NULL, NULL, vbox); gui_direct_check("QEq Electronegativity equalisation", &model->gulp.qeq, NULL, NULL, vbox); /* NEW - text box for GULP control files */ hbox = gtk_hbox_new(FALSE,0); label = gtk_label_new(" Files "); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), hbox, label); vbox = gtk_vbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(hbox), vbox, FALSE, FALSE, 0); frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(vbox), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(FALSE, PANEL_SPACING/2); gtk_container_add(GTK_CONTAINER(frame), vbox); /* GULP file labels */ gui_text_entry("Input file", &model->gulp.temp_file, FALSE, FALSE, vbox); gui_text_entry("Dump file", &model->gulp.dump_file, FALSE, FALSE, vbox); gui_text_entry("Trajectory file ", &model->gulp.trj_file, FALSE, FALSE, vbox); /* gtk_box_pack_start(GTK_BOX(vbox), gtk_hseparator_new(), FALSE, FALSE, 0); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); label = gtk_label_new("Customize job name "); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); entry = gtk_entry_new(); gtk_box_pack_end(GTK_BOX(hbox), entry, FALSE, FALSE, 0); */ /* FIXME - stopped using basename, because it may have spaces in it - which */ /* cause problems reading/writing filenames (ie not quoted) */ //gtk_entry_set_text(GTK_ENTRY(entry), model->basename); /* gtk_entry_set_text(GTK_ENTRY(entry), ""); g_signal_connect(GTK_OBJECT(entry), "changed", GTK_SIGNAL_FUNC(gulp_jobname_changed), (gpointer) model); */ /* CURRENT - advanced options */ frame = gtk_frame_new("Options"); gtk_box_pack_start(GTK_BOX(vbox), frame, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(FALSE, PANEL_SPACING/2); gtk_container_add(GTK_CONTAINER(frame), vbox); gui_direct_check("Print charge with coordinates ", &model->gulp.print_charge, NULL, NULL, vbox); /* minimize page */ page = gtk_vbox_new(FALSE,0); label = gtk_label_new(" Optimisation "); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(page), hbox, FALSE, FALSE, 0); /* optimiser to use */ frame = gtk_frame_new("Primary optimiser"); gtk_box_pack_start(GTK_BOX(hbox), frame, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); /* do the first (DEFAULT MODE) radio button */ button = gtk_radio_button_new_with_label(NULL, "bfgs"); gtk_box_pack_start(GTK_BOX(vbox), button, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(cb_gulp_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) BFGS_OPT); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.optimiser == BFGS_OPT || model->gulp.optimiser == -1) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* make a radio group */ keyword[1] = gtk_radio_button_group(GTK_RADIO_BUTTON (button)); /* do the next button */ button = gtk_radio_button_new_with_label (keyword[1], "conj"); gtk_box_pack_start(GTK_BOX(vbox), button, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(cb_gulp_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) CONJ_OPT); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.optimiser == CONJ_OPT) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* subsequent button... */ button = gtk_radio_button_new_with_label(gtk_radio_button_group (GTK_RADIO_BUTTON(button)), "rfo"); gtk_box_pack_start(GTK_BOX(vbox), button, TRUE, TRUE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC (cb_gulp_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) RFO_OPT); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.optimiser == RFO_OPT) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* optimiser to use */ frame = gtk_frame_new("Secondary optimiser"); gtk_box_pack_start(GTK_BOX(hbox), frame, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); vbox = gtk_vbox_new(TRUE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); /* do the first (DEFAULT MODE) radio button */ button = gtk_radio_button_new_with_label(NULL, "none"); gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC (switch_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) SWITCH_OFF); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.optimiser2 == SWITCH_OFF || model->gulp.optimiser2 == -1) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* make a radio group */ keyword[1] = gtk_radio_button_group(GTK_RADIO_BUTTON(button)); /* do the next button */ button = gtk_radio_button_new_with_label(keyword[1], "bfgs"); gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(switch_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) BFGS_OPT); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.optimiser2 == BFGS_OPT) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* subsequent button... */ button = gtk_radio_button_new_with_label(gtk_radio_button_group (GTK_RADIO_BUTTON(button)), "conj"); gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(switch_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) CONJ_OPT); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.optimiser2 == CONJ_OPT) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* subsequent button... */ button = gtk_radio_button_new_with_label(gtk_radio_button_group (GTK_RADIO_BUTTON(button)), "rfo"); gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(switch_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) RFO_OPT); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.optimiser2 == RFO_OPT) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* optimiser to use */ vbox = gui_frame_vbox("Switching criteria", TRUE, TRUE, hbox); /* do the first (DEFAULT MODE) radio button */ button = gtk_radio_button_new_with_label(NULL, "cycle"); gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(switch_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) CYCLE); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.switch_type == CYCLE) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); /* make a radio group */ keyword[1] = gtk_radio_button_group(GTK_RADIO_BUTTON(button)); /* do the next button */ button = gtk_radio_button_new_with_label(keyword[1], "gnorm"); gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 0); g_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(switch_keyword), (gpointer) button); g_object_set_data(G_OBJECT(button), "key", (gpointer) GNORM); g_object_set_data(G_OBJECT(button), "ptr", (gpointer) model); if (model->gulp.switch_type == GNORM || model->gulp.switch_type < 0) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE); entry = gtk_entry_new(); text = g_strdup_printf("%f", model->gulp.switch_value); gtk_entry_set_text(GTK_ENTRY(entry), text); g_free(text); gtk_box_pack_end(GTK_BOX(vbox), entry, TRUE, FALSE, 0); g_signal_connect(GTK_OBJECT(entry), "changed", GTK_SIGNAL_FUNC(switch_value_changed), (gpointer) entry); g_object_set_data(G_OBJECT(entry), "ptr", (gpointer) model); /* frame */ hbox = gui_frame_hbox(NULL, FALSE, FALSE, page); /* optimization cycles */ label = gtk_label_new(" Maximum cycles "); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); gui_direct_spin(NULL, &model->gulp.maxcyc, 0, 500, 10, NULL, NULL, hbox); /* NEW - text box for potentials */ vbox = gtk_vbox_new(FALSE,0); label = gtk_label_new(" Potentials "); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), vbox, label); frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, 0); swin = gui_text_window(&model->gulp.potentials, TRUE); gtk_container_add(GTK_CONTAINER(frame), swin); gui_text_entry(" Potential Library", &model->gulp.libfile, TRUE, FALSE, vbox); /* NEW - text box for element and species data */ hbox = gtk_hbox_new(TRUE, 0); label = gtk_label_new(" Elements "); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), hbox, label); frame = gtk_frame_new("Element"); gtk_box_pack_start(GTK_BOX(hbox), frame, TRUE, TRUE, 0); swin = gui_text_window(&model->gulp.elements, TRUE); gtk_container_add(GTK_CONTAINER(frame), swin); frame = gtk_frame_new("Species"); gtk_box_pack_start(GTK_BOX(hbox), frame, TRUE, TRUE, 0); swin = gui_text_window(&model->gulp.species, TRUE); gtk_container_add(GTK_CONTAINER(frame), swin); /* text box for "pass through" GULP data */ vbox = gtk_vbox_new(FALSE,0); label = gtk_label_new(" Unprocessed "); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), vbox, label); /* unprocessed keywords */ vbox1 = gui_frame_vbox(NULL, TRUE, TRUE, vbox); hbox = gtk_hbox_new(TRUE, 0); gtk_box_pack_start(GTK_BOX(vbox1), hbox, FALSE, FALSE, 0); gui_direct_check("Pass keywords through to GULP", &model->gulp.output_extra_keywords, NULL, NULL, hbox); gui_text_entry("Keywords ", &model->gulp.extra_keywords, TRUE, TRUE, vbox1); /* unprocessed options */ hbox = gtk_hbox_new(TRUE, 0); gtk_box_pack_start(GTK_BOX(vbox1), hbox, FALSE, FALSE, 0); gui_direct_check("Pass options through to GULP", &model->gulp.output_extra, NULL, NULL, hbox); swin = gui_text_window(&model->gulp.extra, TRUE); gtk_box_pack_start(GTK_BOX(vbox1), swin, TRUE, TRUE, 0); /* vibrational eigenvector display page */ page = gtk_vbox_new(FALSE,0); label = gtk_label_new (" Vibrational "); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); gulp_phonon_box(page, model); /* CURRENT - solvation (cosmic) */ /* TODO - only available on some versions of GULP */ /* FIXME - windows version generates GTK CRITICALS when trying to invoke this */ #ifndef _WIN32 page = gtk_vbox_new(FALSE,0); label = gtk_label_new (" Solvation "); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page, label); gulp_solvation_box(page, dialog); #endif /* job input filename */ hbox = gui_frame_hbox("Files", FALSE, FALSE, box); label = gtk_label_new("Job file name "); gtk_box_pack_start(GTK_BOX(hbox), label, TRUE, TRUE, 0); entry = gtk_entry_new(); gtk_box_pack_end(GTK_BOX(hbox), entry, TRUE, TRUE, 0); //gtk_entry_set_text(GTK_ENTRY(entry), model->gulp.temp_file); //gtk_entry_set_text(GTK_ENTRY(entry), ""); /* NB: GULP job file name entry has extension removed */ text = parse_strip_extension(model->gulp.temp_file); gtk_entry_set_text(GTK_ENTRY(entry), text); g_free(text); g_signal_connect(GTK_OBJECT(entry), "changed", GTK_SIGNAL_FUNC(gulp_jobname_changed), (gpointer) model); /* summary details for the model */ hbox = gui_frame_hbox("Details", FALSE, FALSE, box); /* left vbox */ vbox = gtk_vbox_new(TRUE, 2); gtk_box_pack_start (GTK_BOX (hbox), vbox, TRUE, TRUE, 0); label = gtk_label_new("Structure name"); gtk_box_pack_start (GTK_BOX (vbox), label, TRUE, TRUE, 0); label = gtk_label_new("Total energy (eV)"); gtk_box_pack_start (GTK_BOX (vbox), label, TRUE, TRUE, 0); if (model->periodic == 2) { label = gtk_label_new("Surface bulk energy (eV)"); gtk_box_pack_start (GTK_BOX (vbox), label, TRUE, TRUE, 0); label = gtk_label_new("Surface dipole"); gtk_box_pack_start (GTK_BOX (vbox), label, TRUE, TRUE, 0); label = gtk_label_new("Surface energy"); gtk_box_pack_start (GTK_BOX (vbox), label, TRUE, TRUE, 0); label = gtk_label_new("Attachment energy"); gtk_box_pack_start (GTK_BOX (vbox), label, TRUE, TRUE, 0); } /* right vbox */ vbox = gtk_vbox_new(TRUE, 2); gtk_box_pack_start(GTK_BOX(hbox), vbox, TRUE, TRUE, 0); entry = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(entry), model->basename); gtk_box_pack_start(GTK_BOX(vbox), entry, FALSE, FALSE, 0); gtk_entry_set_editable(GTK_ENTRY(entry), FALSE); model->gulp.energy_entry = gtk_entry_new_with_max_length(LINELEN); if (model->gulp.free) g_string_sprintf(line,"%f (free energy)",model->gulp.energy); else g_string_sprintf(line,"%f",model->gulp.energy); gtk_entry_set_text(GTK_ENTRY(model->gulp.energy_entry),line->str); gtk_box_pack_start (GTK_BOX (vbox), model->gulp.energy_entry, TRUE, TRUE, 0); gtk_entry_set_editable(GTK_ENTRY(model->gulp.energy_entry), FALSE); if (model->periodic == 2) { model->gulp.sbe_entry = gtk_entry_new_with_max_length(LINELEN); g_string_sprintf(line,"%f",model->gulp.sbulkenergy); gtk_entry_set_text(GTK_ENTRY(model->gulp.sbe_entry),line->str); gtk_box_pack_start(GTK_BOX(vbox), model->gulp.sbe_entry, TRUE, TRUE, 0); /* NEW - sbulkenergy editable */ gtk_entry_set_editable(GTK_ENTRY(model->gulp.sbe_entry), TRUE); g_signal_connect(GTK_OBJECT(model->gulp.sbe_entry), "changed", GTK_SIGNAL_FUNC(cb_gulp_keyword), (gpointer) entry); g_object_set_data(G_OBJECT(model->gulp.sbe_entry), "key", (gpointer) SBULK_ENERGY); g_object_set_data(G_OBJECT(model->gulp.sbe_entry), "ptr", (gpointer) model); /* surface dipole */ model->gulp.sdipole_entry = gtk_entry_new_with_max_length(LINELEN); g_string_sprintf(line,"%f e.Angs", model->gulp.sdipole); gtk_entry_set_text(GTK_ENTRY(model->gulp.sdipole_entry), line->str); gtk_box_pack_start(GTK_BOX(vbox), model->gulp.sdipole_entry, TRUE, TRUE, 0); gtk_entry_set_editable(GTK_ENTRY(model->gulp.sdipole_entry), FALSE); /* surface energy */ model->gulp.esurf_entry = gtk_entry_new_with_max_length(LINELEN); if (model->gulp.esurf[1] == 0.0) g_string_sprintf(line,"%f %s", model->gulp.esurf[0], model->gulp.esurf_units); else g_string_sprintf(line,"%f %s", model->gulp.esurf[1], model->gulp.esurf_units); gtk_entry_set_text(GTK_ENTRY(model->gulp.esurf_entry), line->str); gtk_box_pack_start(GTK_BOX(vbox), model->gulp.esurf_entry, TRUE, TRUE, 0); gtk_entry_set_editable(GTK_ENTRY(model->gulp.esurf_entry), FALSE); /* attachment energy */ model->gulp.eatt_entry = gtk_entry_new_with_max_length(LINELEN); if (model->gulp.eatt[1] == 0.0) g_string_sprintf(line,"%f %s", model->gulp.eatt[0], model->gulp.eatt_units); else g_string_sprintf(line,"%f %s", model->gulp.eatt[1], model->gulp.eatt_units); gtk_entry_set_text(GTK_ENTRY(model->gulp.eatt_entry), line->str); gtk_box_pack_start(GTK_BOX(vbox), model->gulp.eatt_entry, TRUE, TRUE, 0); gtk_entry_set_editable(GTK_ENTRY(model->gulp.eatt_entry), FALSE); } /* done */ gtk_widget_show_all(box); g_string_free(line, TRUE); gui_model_select(model); } /****************************************/ /* run the approriate energetics method */ /****************************************/ void gulp_execute(GtkWidget *w, gpointer data) { struct model_pak *model = data; g_assert(model != NULL); gui_gulp_task(NULL, model); } /***********************/ /* grid job submission */ /***********************/ void gui_gulp_grid_submit(GtkWidget *w, gpointer data) { #ifdef WITH_GRISU gchar *tmp; struct model_pak *model = data; struct grid_pak *grid; g_assert(model != NULL); grid = grid_new(); grid->local_cwd = g_strdup(sysenv.cwd); grid->local_input = g_strdup(model->gulp.temp_file); /* immediately write to disk so job is preserved even if user deletes model */ tmp = g_build_filename(grid->local_cwd, grid->local_input, NULL); write_gulp(tmp, model); g_free(tmp); if (!grid_job_submit("gulp", grid)) { /* TODO - failed message */ grid_free(grid); } #endif } /*********************************/ /* cleanup for energetics dialog */ /*********************************/ void gulp_cleanup(struct model_pak *model) { g_assert(model != NULL); model->gulp.energy_entry = NULL; model->gulp.sdipole_entry = NULL; model->gulp.esurf_entry = NULL; model->gulp.eatt_entry = NULL; } /**************************/ /* GULP energetics dialog */ /**************************/ void gulp_dialog(void) { gpointer dialog; GtkWidget *window, *vbox; struct model_pak *model; model = sysenv.active_model; if (!model) return; gulp_files_init(model); /* request an energetics dialog */ dialog = dialog_request(GULP, "GULP configuration", NULL, gulp_cleanup, model); if (!dialog) return; window = dialog_window(dialog); vbox = gui_frame_vbox(NULL, FALSE, FALSE, GTK_DIALOG(window)->vbox); gui_gulp_widget(vbox, dialog); /* terminating button */ gui_stock_button(GTK_STOCK_EXECUTE, gulp_execute, model, GTK_DIALOG(window)->action_area); #ifdef WITH_GRISU gui_icon_button(GTK_STOCK_APPLY, "Grid Submit", gui_gulp_grid_submit, model, GTK_DIALOG(window)->action_area); #endif gui_stock_button(GTK_STOCK_CLOSE, dialog_destroy, dialog, GTK_DIALOG(window)->action_area); gtk_widget_show_all(window); } gdis-0.90/gui_task.c0000644000175000017500000005505411066427323013015 0ustar seansean/* Copyright (C) 2000 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ /* irix */ #define _BSD_SIGNALS 1 #include #include #include #include #include #include #include #include #include #include #include "gdis.h" #include "task.h" #include "file.h" #include "parse.h" #include "gui_shorts.h" #include "interface.h" #include "dialog.h" /* top level data structure */ extern struct sysenv_pak sysenv; #ifndef __WIN32 #include #endif /* task manager globals */ gdouble max_threads=1; gint task_show_running = 1; gint task_show_queued = 0; gint task_show_completed = 1; GtkWidget *task_list=NULL; gint selected_task = -1; gint task_info_pid = 0; gint task_thread_pid = -1; GArray *psarray = NULL; GtkListStore *task_list_ls=NULL; GtkWidget *task_list_tv=NULL, *task_text_view; char *strptime(const char *, const char *, struct tm *); /**************************/ /* a simple sleep routine */ /**************************/ void delay(gint usecs) { #ifndef __WIN32 struct timespec req; req.tv_sec = usecs / 1000000; req.tv_nsec = 1000*(usecs - 1000000*req.tv_sec); /* TODO - if terminated early - call again with remainder */ nanosleep(&req, NULL); #endif } #define EXIST(idx) ((idx) != -1) gint find_pid(struct task_pak *curr_process, gint *pid) { if (curr_process->ppid == GPOINTER_TO_INT(pid)) return (0); else return(-1); } gint find_pid_index(gint pid) { gint i; for (i = psarray->len - 1; i >= 0 && g_array_index(psarray, struct task_pak, i).pid != pid; i--); return(i); } #define DEBUG_ADD_FROM_TREE 0 void add_from_tree(struct task_pak *tdata, gint idx) { struct task_pak *process_ptr; gint child; div_t h_sec, sec, min; gchar *h_sec_pos, *sec_pos, *min_pos, *hour_pos; /* add in current process */ process_ptr = &g_array_index(psarray, struct task_pak, idx); tdata->pcpu += process_ptr->pcpu; tdata->pmem += process_ptr->pmem; /* parse the cpu time */ #if defined(__APPLE__) && defined(__MACH__) h_sec_pos = g_strrstr(process_ptr->time, ".") + 1; sec_pos = h_sec_pos - 3; min_pos = process_ptr->time; hour_pos = NULL; #else hour_pos = process_ptr->time; min_pos = hour_pos + 3; sec_pos = min_pos + 3; h_sec_pos = NULL; #endif tdata->h_sec += (gint) str_to_float(h_sec_pos); h_sec = div(tdata->h_sec, 100); tdata->h_sec = h_sec.rem; tdata->sec =tdata->sec + h_sec.quot + (gint) str_to_float(sec_pos); sec = div(tdata->sec, 60); tdata->sec = sec.rem; tdata->min = tdata->min + sec.quot + (gint) str_to_float(min_pos); min = div(tdata->min, 60); tdata->min = min.rem; tdata->hour = tdata->hour + min.quot + (gint) str_to_float(hour_pos); #if DEBUG_ADD_FROM_TREE printf("%s hour=%d min=%d, sec=%d, hsec=%d\n", process_ptr->time, tdata->hour, tdata->min, tdata->sec, tdata->h_sec); #endif /* process children */ for (child = process_ptr->child; EXIST(child); child = g_array_index(psarray, struct task_pak, child).sister) add_from_tree(tdata, child); } /*****************************************************/ /* get the results of a ps on the requested process */ /*****************************************************/ #define DEBUG_CALC_TASK_INFO 0 void calc_task_info(struct task_pak *tdata) { gint num_tokens; gint me, parent, sister; gint found; gchar line[LINELEN], *line_no_time, **buff, *cmd; struct task_pak curr_process, *process_ptr; struct tm start_tm; time_t oldest_time; FILE *fp; #ifdef _WIN32 /* it's just not worth it ... */ return; #endif /* dispose of task list if it exists */ if (psarray != NULL) g_array_free(psarray, TRUE); /* initialise process record */ curr_process.parent = curr_process.child = curr_process.sister = -1; /* setup ps command */ /* * SG's - 'ps -Ao "pid ppid pcpu vsz etime comm" * (unfortunately, no %mem - and vsz is absolute :-( */ #ifdef __sgi cmd = g_strdup_printf("ps -Ao \"pid ppid pcpu vsz etime comm\""); #else cmd = g_strdup_printf("ps axo \"lstart pid ppid %%cpu %%mem time ucomm\""); #endif /* run ps command */ fp = popen(cmd, "r"); g_free(cmd); if (!fp) { gui_text_show(ERROR, "unable to launch ps command\n"); return; } /* skip title line */ if (fgetline(fp, line)) { gui_text_show(ERROR, "unable to read first line of output from ps command\n"); return; } /* load data into array */ psarray = g_array_new(FALSE, FALSE, sizeof(struct task_pak)); while (!fgetline(fp, line)) { #if DEBUG_CALC_TASK_INFO printf("%s", line); #endif /* extract what we want */ #ifdef __WIN32 /* TODO - win32 replacement? */ line_no_time = NULL; #else /* first get start time */ line_no_time = strptime(line, "%c", &start_tm); #endif if (line_no_time == NULL) { gui_text_show(ERROR, "file produced by ps not understood\n"); return; } curr_process.start_time = mktime(&start_tm); buff = tokenize(line_no_time, &num_tokens); if (num_tokens >= 5) { curr_process.pid = (int) str_to_float(*(buff+0)); curr_process.ppid = (int) str_to_float(*(buff+1)); curr_process.pcpu = str_to_float(*(buff+2)); curr_process.pmem = str_to_float(*(buff+3)); curr_process.time = g_strdup(*(buff+4)); g_array_append_val(psarray, curr_process); } g_strfreev(buff); } pclose(fp); /* Build the process hierarchy. Every process marks itself as first child */ /* of it's parent or as sister of first child of its parent */ /* algorithm taken from pstree.c by Fred Hucht */ for (me = 0; me < psarray->len; me++) { parent = find_pid_index(g_array_index(psarray, struct task_pak, me).ppid); if (parent != me && parent != -1) { /* valid process, not me */ g_array_index(psarray, struct task_pak, me).parent = parent; if (g_array_index(psarray, struct task_pak, parent).child == -1) /* first child */ g_array_index(psarray, struct task_pak, parent).child = me; else { for (sister = g_array_index(psarray, struct task_pak, parent).child; EXIST(g_array_index(psarray, struct task_pak, sister).sister); sister = g_array_index(psarray, struct task_pak, sister).sister); g_array_index(psarray, struct task_pak, sister).sister = me; } } } #if DEBUG_CALC_TASK_INFO printf("process list\n"); for (me = 0; me < psarray->len; me++) { process_ptr = &g_array_index(psarray, struct task_pak, me); printf("pid: %d ppid: %d pcpu: %.1f pmem: %.1f date: %s parent: %d child: %d sister: %d time: %s", process_ptr->pid, process_ptr->ppid, process_ptr->pcpu, process_ptr->pmem, process_ptr->time, process_ptr->parent, process_ptr->child, process_ptr->sister, ctime(&process_ptr->start_time)); } #endif /* set tdata's pid to 0 so if this routine fails, it won't kill gdis! */ tdata->pcpu = tdata->pmem = 0; tdata->h_sec = tdata->sec = tdata->min = tdata->hour = 0; /* scan through the running processes and find the task thread */ oldest_time = time(NULL); found = FALSE; for (me = 0; me < psarray->len; me++) { process_ptr = &g_array_index(psarray, struct task_pak, me); if (process_ptr->pid == tdata->pid) { found = TRUE; #if DEBUG_CALC_TASK_INFO printf("pid: %d time:%s\n", child_pid, ctime(&oldest_time)); #endif break; } } if (found) { /* find child */ /* process_ptr = &g_array_index(psarray, struct task_pak, child_idx); child_idx = process_ptr->child; process_ptr = &g_array_index(psarray, struct task_pak, child_idx); child_pid = tdata->pid = process_ptr->pid; #if DEBUG_CALC_TASK_INFO printf("pid: %d time:%s\n", child_pid, ctime(&oldest_time)); #endif*/ add_from_tree(tdata, me); } /* FIXME - core dumps here in analysis (esp. if >1 jobs queued) */ if (tdata->time) g_free(tdata->time); /* sprintf(line, "%02d:%02d:%02d", tdata->hour, tdata->min, tdata->sec); tdata->time = g_strdup(line); */ tdata->time = g_strdup_printf("%02d:%02d:%02d", tdata->hour, tdata->min, tdata->sec); /* search through any children of the the oldest child */ /* pid = child_pid; while ((list = g_slist_find_custom(palist, GINT_TO_POINTER(pid), (gpointer) find_pid)) != NULL) { curr_process = (struct task_pak *) list->data; pid = tdata->pid = curr_process->pid; tdata->pcpu += curr_process->pcpu; tdata->pmem += curr_process->pmem; if (tdata->time) g_free(tdata->time); tdata->time = g_strdup(curr_process->time); } #if DEBUG_CALC_TASK_INFO printf("FINAL TOTALS\n"); printf("pid: %d pcpu: %.1f pmem: %.1f time: %s\n", tdata->pid, tdata->pcpu, tdata->pmem, tdata->time); #endif free_slist(palist); */ /* prevent rounding errors giving >100% */ if (tdata->pcpu > 100.0) tdata->pcpu = 100.0; if (tdata->pmem > 100.0) tdata->pmem = 100.0; } /**********************************************/ /* get pointer to the currently selected task */ /**********************************************/ gpointer task_selected(void) { gpointer task; GtkTreeModel *treemodel; GtkTreeSelection *selection; GtkTreeIter iter; treemodel = gtk_tree_view_get_model(GTK_TREE_VIEW(task_list_tv)); selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(task_list_tv)); if (gtk_tree_model_get_iter_first(treemodel, &iter)) { do { if (gtk_tree_selection_iter_is_selected(selection, &iter)) { gtk_tree_model_get(treemodel, &iter, 6, &task, -1); return(task); } } while (gtk_tree_model_iter_next(treemodel, &iter)); } return(NULL); } /**********************************/ /* get the currently selected row */ /**********************************/ gint task_selected_row(void) { gint row=0; GtkTreeModel *treemodel; GtkTreeSelection *selection; GtkTreeIter iter; treemodel = gtk_tree_view_get_model(GTK_TREE_VIEW(task_list_tv)); selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(task_list_tv)); if (gtk_tree_model_get_iter_first(treemodel, &iter)) { do { if (gtk_tree_selection_iter_is_selected(selection, &iter)) return(row); row++; } while (gtk_tree_model_iter_next(treemodel, &iter)); } return(-1); } /*********************************/ /* rewrite the current task list */ /*********************************/ gint update_task_info(void) { gint i, type, update, row, num_rows=0; gchar *txt; GSList *tlist=NULL; GtkTreeIter iter; GtkTreeModel *treemodel; GtkTreeSelection *selection; GtkTextMark *mark; GtkTextIter text_iter; GtkTextBuffer *buffer; struct task_pak *task=NULL; static gpointer previous_task=NULL; /* checks */ if (!dialog_exists(TASKMAN, NULL)) return(TRUE); if (!task_list_ls) return(TRUE); /* NEW - update using control file */ task = task_selected(); buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(task_text_view)); if (task) { if (previous_task != task) { /* complete refresh */ task->status_index = 0; gtk_text_buffer_set_text(buffer, "", 0); update = TRUE; } else update = FALSE; switch (task->status) { case RUNNING: /* running - always update */ update = TRUE; break; case KILLED: case COMPLETED: if (task->status_fp) { /* completed - only update if status file is still open */ task->status_index = 0; update = TRUE; } break; } if (update) { /* refresh the status message and print */ task_status_update(task); txt = (task->status_text)->str; if (task->status_index >= 0) { i = strlen(txt+task->status_index); if (i) { /* display only most recent lines */ /* gtk_text_buffer_set_text(buffer, txt+task->status_index, i); */ /* append to the whole thing */ gtk_text_buffer_insert_at_cursor(buffer, txt+task->status_index, i); task->status_index += i; /* force scroll to end of buffer by default */ mark = gtk_text_buffer_get_insert(buffer); gtk_text_buffer_get_end_iter(buffer, &text_iter); gtk_text_buffer_move_mark(buffer, mark, &text_iter); gtk_text_view_scroll_to_mark(GTK_TEXT_VIEW(task_text_view), mark, 0.0, FALSE, 0, 0); } } } previous_task = task; } else { gtk_text_buffer_set_text(buffer, "", 0); previous_task = NULL; } /* remove deleted tasks */ /* CURRENT - NEVER allow this? so user can also look at status file of completed jobs */ tlist = sysenv.task_list; while (tlist) { task = tlist->data; tlist = g_slist_next(tlist); if (task->status == REMOVED) { sysenv.task_list = g_slist_remove(sysenv.task_list, task); task_free(task); } } /* clear list and re-populate according to status */ row = task_selected_row(); gtk_list_store_clear(task_list_ls); for (type=RUNNING ; type<=COMPLETED ; type++) { /* fill out the list with current status type */ for (tlist=sysenv.task_list ; tlist ; tlist=g_slist_next(tlist)) { task = tlist->data; if (task->status != type) continue; gtk_list_store_append(task_list_ls, &iter); if (task->label) gtk_list_store_set(task_list_ls, &iter, 1, task->label, -1); else gtk_list_store_set(task_list_ls, &iter, 1, "Unknown", -1); switch(task->status) { case QUEUED: gtk_list_store_set(task_list_ls, &iter, 2, "Queued", -1); break; case RUNNING: calc_task_info(task); txt = g_strdup_printf("%d", task->pid); gtk_list_store_set(task_list_ls, &iter, 0, txt, -1); g_free(txt); if (task->progress > 0.0) txt = g_strdup_printf("%5.1f%%", task->progress); else txt = g_strdup("Running"); gtk_list_store_set(task_list_ls, &iter, 2, txt, -1); g_free(txt); txt = g_strdup_printf("%5.1f", task->pcpu); gtk_list_store_set(task_list_ls, &iter, 3, txt, -1); g_free(txt); txt = g_strdup_printf("%5.1f", task->pmem); gtk_list_store_set(task_list_ls, &iter, 4, txt, -1); g_free(txt); txt = g_strdup_printf(" %s", task->time); gtk_list_store_set(task_list_ls, &iter, 5, txt, -1); g_free(txt); break; case KILLED: gtk_list_store_set(task_list_ls, &iter, 2, "Killed", -1); break; case COMPLETED: gtk_list_store_set(task_list_ls, &iter, 2, "Completed", -1); break; } /* NEW - add the task pointer itself */ gtk_list_store_set(task_list_ls, &iter, 6, task, -1); num_rows++; } } /* restore selected row, or the previous (if possible) if deleted */ if (row >= num_rows && row) row--; if (row >= 0) { treemodel = gtk_tree_view_get_model(GTK_TREE_VIEW(task_list_tv)); if (gtk_tree_model_iter_nth_child(treemodel, &iter, NULL, row)) { selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(task_list_tv)); if (selection) gtk_tree_selection_select_iter(selection, &iter); } } /* NEW */ sysenv.max_threads = max_threads; g_thread_pool_set_max_threads(sysenv.thread_pool, sysenv.max_threads, NULL); g_thread_pool_stop_unused_threads(); return(TRUE); } /***********************************/ /* recursively kill a process tree */ /***********************************/ void task_kill_tree(gint child) { gchar *cmd; struct task_pak *process; while (EXIST(child)) { process = &g_array_index(psarray, struct task_pak, child); /* recurse down the tree */ task_kill_tree(process->child); /* terminate process */ cmd = g_strdup_printf("kill TERM %d >& /dev/null", process->pid); system(cmd); g_free(cmd); /* get next process at this level */ child = process->sister; } } /***********************/ /* stop a running task */ /***********************/ void task_kill_running(struct task_pak *task) { gint i; struct task_pak *process; /* get task and bottom level process pid */ if (task && psarray) { for (i=psarray->len ; i-- ; ) { process = &g_array_index(psarray, struct task_pak, i); if (process->pid == task->pid) { task_kill_tree(process->child); break; } } task->status = KILLED; } } /***************************************/ /* remove and free all completed tasks */ /***************************************/ void task_remove_completed(GtkWidget *w, gpointer data) { GSList *list; struct task_pak *task; list = sysenv.task_list; while (list) { task = list->data; list = g_slist_next(list); if (task->status == COMPLETED || task->status == KILLED) { sysenv.task_list = g_slist_remove(sysenv.task_list, task); task_free(task); } } } /**********************************************/ /* terminate selected running or queued tasks */ /**********************************************/ void task_kill_selected(void) { struct task_pak *task; task = task_selected(); if (task) { switch (task->status) { case RUNNING: task_kill_running(task); break; case QUEUED: task->status = KILLED; break; } } } /*****************************************/ /* terminate all running or queued tasks */ /*****************************************/ void task_kill_all(void) { GSList *list; struct task_pak *task; /* remove all queued first - to ensure they aren't executed */ for (list=sysenv.task_list ; list ; list=g_slist_next(list)) { task = list->data; if (task->status == QUEUED) task->status = KILLED; } for (list=sysenv.task_list ; list ; list=g_slist_next(list)) { task = list->data; if (task->status == RUNNING) task_kill_running(task); } } /***********************/ /* task dialog cleanup */ /***********************/ void task_cleanup(void) { gtk_list_store_clear(task_list_ls); task_list_ls = NULL; task_list_tv = NULL; } /****************************************************/ /* a task dialog for viewing/killing existing tasks */ /****************************************************/ void task_dialog(void) { gint i; gchar *titles[6] = {" PID ", " Job ", " Status ", " \% CPU ", " \% Mem ", " Time "}; gpointer dialog; GtkWidget *window, *swin, *frame, *vbox, *hbox; GtkCellRenderer *renderer; GtkTreeViewColumn *column; /* request a new dialog */ dialog = dialog_request(TASKMAN, "Task Manager", NULL, task_cleanup, NULL); if (!dialog) return; window = dialog_window(dialog); gtk_window_set_default_size(GTK_WINDOW(window), 600, 600); /* CURRENT - locking this to 1 so grid stuff is limited to 1 task */ /* this is because Im using global vars (esp soap struct) in the */ /* grisu_client code - so the whole thing isn't thread safe */ /* task thread setup */ //hbox = gtk_hbox_new(FALSE, 0); //gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), hbox, FALSE, FALSE, 0); //gtk_container_set_border_width(GTK_CONTAINER(hbox), PANEL_SPACING); //gui_direct_spin("Maximum number of running tasks", &max_threads, 1, 32, 1, NULL, NULL, hbox); #if _WIN32 gtk_widget_set_sensitive(GTK_WIDGET(hbox), FALSE); #endif /* job list frame */ frame = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox), frame, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(frame), PANEL_SPACING); /* create a vbox in the frame */ vbox = gtk_vbox_new(FALSE, PANEL_SPACING/2); gtk_container_add(GTK_CONTAINER(frame), vbox); gtk_container_set_border_width(GTK_CONTAINER(GTK_BOX(vbox)), PANEL_SPACING); /* scrolled model pane */ swin = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW (swin), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_box_pack_start(GTK_BOX(vbox), swin, TRUE, TRUE, 0); task_list_ls = gtk_list_store_new(7, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_POINTER); task_list_tv = gtk_tree_view_new_with_model(GTK_TREE_MODEL(task_list_ls)); gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(swin), task_list_tv); for (i=0 ; i<6 ; i++) { renderer = gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes(titles[i], renderer, "text", i, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(task_list_tv), column); } /* setup the selection handler */ /* { GtkTreeSelection *select; select = gtk_tree_view_get_selection(GTK_TREE_VIEW(task_list_tv)); g_signal_connect(G_OBJECT(select), "changed", G_CALLBACK(task_selection_changed), NULL); } */ /* selected task status file frame */ gtk_box_pack_start(GTK_BOX(vbox), gtk_hseparator_new(), FALSE, FALSE, 0); swin = gtk_scrolled_window_new(NULL, NULL); gtk_box_pack_start(GTK_BOX(vbox), swin, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(swin), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); task_text_view = gtk_text_view_new(); gtk_text_view_set_editable(GTK_TEXT_VIEW(task_text_view), FALSE); gtk_text_view_set_cursor_visible(GTK_TEXT_VIEW(task_text_view), FALSE); gtk_container_add(GTK_CONTAINER(swin), task_text_view); /* control buttons */ gui_icon_button(GTK_STOCK_REMOVE, "Kill selected", task_kill_selected, NULL, GTK_DIALOG(window)->action_area); gui_icon_button(GTK_STOCK_DELETE, "Kill all", task_kill_all, NULL, GTK_DIALOG(window)->action_area); gui_icon_button(GTK_STOCK_CLEAR, "Remove completed", task_remove_completed, NULL, GTK_DIALOG(window)->action_area); gui_stock_button(GTK_STOCK_CLOSE, dialog_destroy, dialog, GTK_DIALOG(window)->action_area); /* done */ gtk_widget_show_all(window); /* refresh labels */ update_task_info(); } gdis-0.90/image.c0000644000175000017500000001673010445461564012274 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include "gdis.h" #include "coords.h" #include "edit.h" #include "file.h" #include "matrix.h" #include "opengl.h" #include "dialog.h" #include "interface.h" #include "gui_image.h" #include "folder.xpm" #include "disk.xpm" #include "arrow.xpm" #include "axes.xpm" #include "tools.xpm" #include "palette.xpm" #include "cross.xpm" #include "geom.xpm" #include "cell.xpm" #include "camera.xpm" #include "element.xpm" #include "tb_animate.xpm" #include "tb_diffraction.xpm" #include "tb_isosurface.xpm" #include "tb_surface.xpm" #include "canvas_single.xpm" #include "canvas_create.xpm" #include "canvas_delete.xpm" /* NEW: include a button to create a new model */ #include "plus.xpm" extern struct sysenv_pak sysenv; extern GtkWidget *window; /****************************************/ /* write an image of the current canvas */ /****************************************/ void image_write(gpointer w) { GdkPixbuf *pixbuf; GError *error=NULL; pixbuf = gdk_pixbuf_get_from_drawable(NULL, w, NULL, 0, 0, 0, 0, sysenv.width, sysenv.height); gdk_pixbuf_save(pixbuf, sysenv.snapshot_filename, "jpeg", &error, "quality", "90", NULL); g_free(sysenv.snapshot_filename); sysenv.snapshot = FALSE; } /****************************************/ /* callback to schedule a canvas export */ /****************************************/ void image_export(gchar *name) { g_assert(name != NULL); dialog_destroy_type(FILE_SELECT); /* FIXME - all GTK stuff (ie closing the file dialog/raising windows */ /* to the foreground etc.) will be done only AFTER this routine ends */ /* ie returns to the control of gtk_main_loop - so there is no way */ /* of preventing the dialog from getting in the way */ /* probably have to set a flag to do it after the next redraw_canvas() */ sysenv.snapshot = TRUE; sysenv.snapshot_filename = g_build_filename(sysenv.cwd, name, NULL); } /*************************************************/ /* add a filename to active model's picture list */ /*************************************************/ void image_import(const gchar *name) { gchar *picture; struct model_pak *model; /* checks */ /* TODO - check file validity */ g_assert(name != NULL); dialog_destroy_type(FILE_SELECT); model = sysenv.active_model; if (!model) return; picture = g_strdup(name); model->picture_list = g_slist_append(model->picture_list, picture); model->picture_active = picture; model->graph_active = NULL; /* updates */ tree_model_add(model); redraw_canvas(SINGLE); } /***********************************/ /* get a filename for image export */ /***********************************/ void image_export_dialog(void) { if (sysenv.active_model) file_dialog("Export image", NULL, FILE_SAVE, (gpointer) image_export, PICTURE); } /*******************************************/ /* get a file dialog for picture selection */ /*******************************************/ void image_import_dialog(void) { if (sysenv.active_model) file_dialog("Import picture", NULL, FILE_LOAD, (gpointer) image_import, PICTURE); } /**************************************/ /* retrieve a standard image's pixbuf */ /**************************************/ gpointer image_table_lookup(const gchar *name) { return(g_hash_table_lookup(sysenv.image_table, name)); } /******************************************/ /* setup the internal pixbuf lookup table */ /******************************************/ void image_table_init(void) { gint i; gchar *name; GdkPixbuf *pixbuf; sysenv.image_table = g_hash_table_new(g_str_hash, g_str_equal); for (i=0 ; i * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef __GTK_GL_AREA_H__ #define __GTK_GL_AREA_H__ #include /* #include */ #include "gdkgl.h" #include #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ #define GTK_TYPE_GL_AREA (gtk_gl_area_get_type()) #define GTK_GL_AREA(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_GL_AREA, GtkGLArea)) #define GTK_GL_AREA_CLASS(klass) (GTK_CHECK_CLASS_CAST (klass, GTK_TYPE_GL_AREA, GtkGLAreaClass)) #define GTK_IS_GL_AREA(obj) (GTK_CHECK_TYPE ((obj), GTK_TYPE_GL_AREA)) #define GTK_IS_GL_AREA_CLASS (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_GL_AREA)) typedef struct _GtkGLArea GtkGLArea; typedef struct _GtkGLAreaClass GtkGLAreaClass; struct _GtkGLArea { GtkDrawingArea darea; GdkGLContext *glcontext; }; struct _GtkGLAreaClass { GtkDrawingAreaClass parent_class; }; GtkType gtk_gl_area_get_type (void); GtkWidget* gtk_gl_area_new (int *attrList); GtkWidget* gtk_gl_area_share_new (int *attrList, GtkGLArea *share); GtkWidget* gtk_gl_area_new_vargs (GtkGLArea *share, ...); gint gtk_gl_area_make_current(GtkGLArea *glarea); gint gtk_gl_area_begingl (GtkGLArea *glarea); /* deprecated, use gtk_gl_area_make_current */ void gtk_gl_area_endgl (GtkGLArea *glarea); /* deprecated */ void gtk_gl_area_swapbuffers(GtkGLArea *glarea); /* deprecated */ void gtk_gl_area_swap_buffers(GtkGLArea *glarea); void gtk_gl_area_size (GtkGLArea *glarea, /* deprecated, use gtk_drawing_area_size() */ gint width, gint height); #ifdef __cplusplus } #endif /* __cplusplus */ #endif /* __GTK_GL_AREA_H__ */ gdis-0.90/left_arrow1.xpm0000644000175000017500000000064607717054756014031 0ustar seansean/* XPM */ static char * left_arrow1_xpm[] = { "16 16 3 1", " c None", ". c #000000", "+ c #6EC9E5", " ", " . ", " . ", " .+. ", " .++. ", " .+++..... ", " .++++++++. ", " .+++++++++. ", "..++++++++++. ", " .+++++++++. ", " .++++++++. ", " .+++..... ", " .++. ", " .+. ", " . ", " . "}; gdis-0.90/type.h0000644000175000017500000000211210635400742012155 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ gpointer type_new(void); void type_print(gpointer); void type_free(gpointer); void type_ff_set(gint, const gchar *, gpointer); void type_charge_set(gint, gdouble, gpointer); void type_rule_add(gint, gint, const gchar *, gpointer); gint type_check_list(GSList *); gint type_apply(gpointer, GSList *); gdis-0.90/file_diff.c0000644000175000017500000001663111035034370013104 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include "gdis.h" #include "coords.h" #include "model.h" #include "file.h" #include "parse.h" #include "matrix.h" #include "surface.h" #include "interface.h" /***********************/ /* DIFFaX read routine */ /***********************/ #define DEBUG_READ_DIFFAX 0 gint read_diffax(gchar *filename, struct model_pak *model) { gint num_tokens, num_layer, tot_layer; gdouble offset; gchar **buff; GSList *list1, *list2; struct core_pak *core; struct layer_pak *layer; FILE *fp; /* checks */ g_return_val_if_fail(model != NULL, 1); g_return_val_if_fail(filename != NULL, 2); fp = fopen(filename, "rt"); if (!fp) return(3); /* setup */ model->id = DIFFAX_INP; model->fractional = TRUE; model->periodic = 3; model->colour_scheme = REGION; strcpy(model->filename, filename); g_free(model->basename); model->basename = parse_strip(filename); /* scan the file */ while ((buff = get_tokenized_line(fp, &num_tokens))) { diffax_keyword_search:; /* restricted unit cell */ if (g_ascii_strncasecmp("structural", *buff, 10) == 0) { g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (num_tokens > 3) { model->pbc[0] = str_to_float(*(buff+0)); model->pbc[1] = str_to_float(*(buff+1)); model->pbc[2] = str_to_float(*(buff+2)); model->pbc[3] = PI/2.0; model->pbc[4] = PI/2.0; model->pbc[5] = D2R*str_to_float(*(buff+3)); } } /* layer testing */ if (g_ascii_strncasecmp("layer", *buff, 5) == 0) { layer = g_malloc(sizeof(struct model_pak)); layer->width = 1.0; VEC3SET(layer->centroid, 0.5, 0.5, 0.5); layer->cores = NULL; model->layer_list = g_slist_prepend(model->layer_list, layer); g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); if (buff) { /* TODO - if centrosymmetric : add a -1 operation */ } /* get layer data */ g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); while (buff) { if (elem_symbol_test(*buff)) { if (num_tokens > 6) { /* printf("[%s] [%s %s %s]\n", *buff, *(buff+2), *(buff+3), *(buff+4)); */ core = new_core(*buff, model); model->cores = g_slist_prepend(model->cores, core); layer->cores = g_slist_prepend(layer->cores, core); core->x[0] = str_to_float(*(buff+2)); core->x[1] = str_to_float(*(buff+3)); core->x[2] = str_to_float(*(buff+4)); core->sof = str_to_float(*(buff+5)); } } else goto diffax_keyword_search; /* get next line of tokens */ g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); } } g_strfreev(buff); } /* TODO - enumerate layers and scale, so they are stacked 1..n in a single cell */ /* also label the layers as different region types */ model->layer_list = g_slist_reverse(model->layer_list); num_layer = 0; tot_layer = g_slist_length(model->layer_list); model->pbc[2] *= tot_layer; #if DEBUG_READ_DIFFAX printf("Read in %d layers.\n", tot_layer); #endif for (list1=model->layer_list ; list1 ; list1=g_slist_next(list1)) { layer = (struct layer_pak *) list1->data; layer->width = 1.0 / (gdouble) tot_layer; offset = (gdouble) num_layer * layer->width; VEC3SET(layer->centroid, 0.0, 0.0, offset); for (list2=layer->cores ; list2 ; list2=g_slist_next(list2)) { core = (struct core_pak *) list2->data; /* scale to within the big cell (encloses all DIFFAX layers) */ core->x[2] *= layer->width; /* offset each particular layer */ core->x[2] += offset; core->region = num_layer; } num_layer++; } /* end of read */ fclose(fp); /* post read setup */ model->cores = g_slist_reverse(model->cores); model_prep(model); return(0); } /***********************************/ /* DIFFaX input file write routine */ /***********************************/ gint write_diffax(gchar *filename, struct model_pak *data) { gint i, j, n, tot_layer; gdouble pr, x[3]; GSList *list1, *list2; struct layer_pak *layer; struct core_pak *core; struct elem_pak elem; FILE *fp; printf("write_diffax()\n"); /* checks */ g_return_val_if_fail(data != NULL, 1); g_return_val_if_fail(filename != NULL, 2); /* open the file */ fp = fopen(filename,"wt"); if (!fp) return(3); /* setup the layers */ #ifdef WITH_GUI diffract_layer_setup(data); #endif tot_layer = g_slist_length(data->layer_list); if (!tot_layer) { printf("No layers to write.\n"); return(0); } /* output */ fprintf(fp, "\n"); fprintf(fp, "INSTRUMENTAL\nX-RAY\n1.5418\n"); fprintf(fp, "GAUSSIAN 0.4\n\n"); fprintf(fp, "STRUCTURAL\n%11.6f %11.6f %11.6f %11.6f\nUNKNOWN\n%d\ninfinite\n\n", data->pbc[0], data->pbc[1], data->pbc[2]/tot_layer, R2D*data->pbc[5], tot_layer); /* write out the layers */ i=1; for (list1=data->layer_list ; list1 ; list1=g_slist_next(list1)) { fprintf(fp, "\nLAYER %d\nnone\n", i); /* write out the atoms within the layer */ n=1; layer = (struct layer_pak *) list1->data; for (list2=layer->cores ; list2 ; list2=g_slist_next(list2)) { core = (struct core_pak *) list2->data; if (core->status & DELETED) continue; ARR3SET(x, core->x); /* center layer on origin */ x[2] -= layer->centroid[2]; /* scale up to 0.0-1.0 range */ x[2] *= tot_layer; /* move centroid to middle of the layer */ x[2] += 0.5; get_elem_data(core->atom_code, &elem, NULL); fprintf(fp, "%4s %4d %11.6f %11.6f %11.6f 1.0 %8.6f\n", elem.symbol, n, x[0], x[1], x[2], core->sof); n++; } i++; } fprintf(fp, "\nSTACKING\nrecursive\ninfinite\n\n"); fprintf(fp, "TRANSITIONS\n"); /* omit region 0 - temporary impl for the later method where */ /* the desired layers will be in a linked list, rather than */ /* all 1..max regions included */ for (i=1 ; i<=tot_layer ; i++) { fprintf(fp, "\n"); /* uniform probability & no xlat */ pr = 1.0 / (gdouble) tot_layer; for (j=1 ; j<=tot_layer ; j++) fprintf(fp, "%8.6f 0.0 0.0 1.0 {layer %d-%d}\n",pr,i,j); } fclose(fp); return(0); } /*******************************/ /* write a diffax control file */ /*******************************/ gint write_diffax_control(gchar *filename, struct model_pak *mdata) { FILE *fp; /* open control */ fp = fopen("control.dat","wt"); if (!fp) return(3); /* TODO - proper values from mdata */ fprintf(fp, "%s {data file}\n", filename); fprintf(fp, "%d {dump file}\n", 0); fprintf(fp, "%d {symmetry file}\n", 0); fprintf(fp, "%d {pattern}\n", 3); fprintf(fp, "%f %f %f {theta min, max, delta}\n", 0.0, 90.0, 0.1); fprintf(fp, "%d {}\n", 1); fprintf(fp, "%d {}\n", 1); fclose(fp); return(0); } gdis-0.90/elem.c0000644000175000017500000005364411035034370012124 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include #include #include "gdis.h" #include "coords.h" #include "edit.h" #include "file.h" #include "parse.h" #include "matrix.h" #include "numeric.h" #include "surface.h" #include "select.h" #include "interface.h" #include "gui_shorts.h" #include "opengl.h" /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /* TODO - XML & add diffraction data to elements file */ /**************************************/ /* parse a file for gdis element data */ /**************************************/ /* type - should the element data be treated as default or patched */ /* ie the standard library, or modified values from a gdisrc file */ gint read_elem_data(FILE *fp, gint type) { gint i, n, key, flag, num_tokens; gint *set; gchar **buff, *str, *symbol, line[LINELEN]; gdouble *sfc; struct elem_pak elem, elem_default; GSList *list; /* checks */ g_return_val_if_fail(fp != NULL, 1); /* FIXME - num_keys() is returning a value that is too small */ /* n = num_keys(); */ n = 1000; set = g_malloc0(n * sizeof(gint)); while(!fgetline(fp,line)) { list = get_keywords(line); if (list) { switch(GPOINTER_TO_INT(list->data)) { case GDIS_ELEM_START: /* init for element */ elem.shell_charge = 0.0; /* init the set flags */ for (i=n ; i-- ; ) set[i] = 0; /* keep looping until end of element data, or EOF */ flag=0; while(!flag) { /* get next line & process for keywords */ if (fgetline(fp, line)) break; list = get_keywords(line); buff = tokenize(line, &num_tokens); /* process 1st keyword, and subsequent data (if any) */ if (list) { key = GPOINTER_TO_INT(list->data); g_assert(key < n); switch (key) { /* these shouldn't be modified if not default */ case SYMBOL: g_assert(num_tokens > 1); elem.symbol = g_strdup(*(buff+1)); break; case NAME: g_assert(num_tokens > 1); elem.name = g_strdup(*(buff+1)); break; case NUMBER: g_assert(num_tokens > 1); elem.number = (gint) str_to_float(*(buff+1)); set[key]++; break; case WEIGHT: g_assert(num_tokens > 1); elem.weight = str_to_float(*(buff+1)); set[key]++; break; case COVALENT: g_assert(num_tokens > 1); elem.cova = str_to_float(*(buff+1)); set[key]++; break; case VDW: g_assert(num_tokens > 1); elem.vdw = str_to_float(*(buff+1)); set[key]++; break; case CHARGE: g_assert(num_tokens > 1); elem.charge = str_to_float(*(buff+1)); set[key]++; break; case COLOUR: g_assert(num_tokens > 3); elem.colour[0] = str_to_float(*(buff+1)); elem.colour[1] = str_to_float(*(buff+2)); elem.colour[2] = str_to_float(*(buff+3)); if (VEC3MAGSQ(elem.colour) > 3.0) { VEC3MUL(elem.colour, 1.0/65535.0); } set[key]++; break; case GDIS_END: flag++; break; } } g_strfreev(buff); } /* store the element data according to type (ie global/model only etc.) */ switch(type) { case DEFAULT: if (elem.number < 0 || elem.number > MAX_ELEMENTS-1) printf("Error: Element number %d outside allocated bounds.\n", elem.number); else memcpy(&elements[elem.number], &elem, sizeof(struct elem_pak)); break; case MODIFIED: /* TODO - scan for symbol as well (elem_seek with data = NULL) */ if (!set[NUMBER]) { printf("Warning: missing element number.\n"); elem.number = 0; } /* get default values */ get_elem_data(elem.number, &elem_default, NULL); /* fill out specified values */ if (set[WEIGHT]) elem_default.weight = elem.weight; if (set[COVALENT]) elem_default.cova = elem.cova; if (set[VDW]) elem_default.vdw = elem.vdw; if (set[CHARGE]) elem_default.charge = elem.charge; if (set[COLOUR]) { elem_default.colour[0] = elem.colour[0]; elem_default.colour[1] = elem.colour[1]; elem_default.colour[2] = elem.colour[2]; } put_elem_data(&elem_default, NULL); break; /* ignore other types */ default: break; } /* ignore all other keywords */ default: break; } } /* scattering factor coeffs */ if (g_ascii_strncasecmp("\%gdis_sfc", line, 9) == 0) { while ((str = file_read_line(fp))) { buff = tokenize(str, &num_tokens); if (num_tokens != 12) { /* printf("suspicious line: %s\n", str); */ g_strfreev(buff); g_free(str); break; } symbol = g_strdup(*(buff+0)); if (elem_symbol_test(symbol)) { list = NULL; for (i=1 ; idata; if (elem) { fprintf(fp, "%%gdis_elem\n"); fprintf(fp, "number: %d\n", elem->number); fprintf(fp, "weight: %f\n", elem->weight); fprintf(fp, " cova: %f\n", elem->cova); fprintf(fp, " vdw: %f\n", elem->vdw); fprintf(fp, "charge: %f\n", elem->charge); fprintf(fp, "colour: %f %f %f\n", elem->colour[0], elem->colour[1], elem->colour[2]); fprintf(fp, "%%gdis_end\n"); } list = g_slist_next(list); } return(0); } void write_sfc(gpointer key, gpointer val, gpointer data) { GSList *list; FILE *fp = data; fprintf(fp, "%s", (gchar *) key); for (list=val ; list ; list=g_slist_next(list)) fprintf(fp, " %f", *((gdouble *) list->data)); fprintf(fp, " \n"); } void write_sfc_data(FILE *fp) { fprintf(fp, "%%gdis_sfc\n"); g_hash_table_foreach(sysenv.sfc_table, &write_sfc, fp); fprintf(fp, "%%gdis_end\n"); } /***************************************/ /* find all unique elements in a model */ /***************************************/ #define DEBUG_FIND_UNIQUE 0 GSList *find_unique(gint mode, struct model_pak *model) { gint found; GSList *list, *types, *unique; struct core_pak *core; unique = NULL; /* go through all atoms */ for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; /* determine if current atom type is in the list */ found=0; for (types=unique ; types ; types = g_slist_next(types)) { switch(mode) { case ELEMENT: if (GPOINTER_TO_INT(types->data) == core->atom_code) found++; break; case LABEL_FF: if (g_ascii_strcasecmp(types->data, core->atom_type) == 0) found++; break; case LABEL: case LABEL_NORMAL: case LABEL_GHOST: if (g_ascii_strcasecmp(types->data, core->atom_label) == 0) found++; break; } if (found) break; } /* not in list, so add it */ if (!found) { switch(mode) { case ELEMENT: unique = g_slist_prepend(unique, GINT_TO_POINTER(core->atom_code)); break; case LABEL: if (core->atom_label) unique = g_slist_prepend(unique, g_strdup(core->atom_label)); break; case LABEL_NORMAL: if (core->atom_label) if (!core->ghost) unique = g_slist_prepend(unique, g_strdup(core->atom_label)); break; case LABEL_GHOST: if (core->atom_label) if (core->ghost) unique = g_slist_prepend(unique, g_strdup(core->atom_label)); break; case LABEL_FF: if (core->atom_type) unique = g_slist_prepend(unique, g_strdup(core->atom_type)); break; } } } #if DEBUG_FIND_UNIQUE printf("Found: "); for (types=unique ; types ; types = g_slist_next(types)) { switch(mode) { case ELEMENT: printf("[%3d] ", GPOINTER_TO_INT(types->data)); break; case LABEL: case LABEL_NORMAL: case LABEL_GHOST: case LABEL_FF: printf("[%s] ", (gchar *) types->data); break; } } printf("\n"); #endif /* return reversed list (preserves order) */ return(g_slist_reverse(unique)); } /***********************/ /* set the atom colour */ /***********************/ void init_atom_colour(struct core_pak *core, struct model_pak *model) { struct elem_pak elem_data; get_elem_data(core->atom_code, &elem_data, model); ARR3SET(core->colour, elem_data.colour); VEC3MUL(core->colour, 65535.0); if (core->ghost) core->colour[3] = 0.5; else core->colour[3] = 1.0; } /***********************/ /* set the atom charge */ /***********************/ void init_atom_charge(struct core_pak *core, struct model_pak *model) { struct elem_pak elem_data; if (core->lookup_charge) { get_elem_data(core->atom_code, &elem_data, model); core->charge = elem_data.charge; } } /************************/ /* set the atom charges */ /************************/ void init_model_charges(struct model_pak *model) { GSList *list; for (list=model->cores ; list ; list=g_slist_next(list)) init_atom_charge(list->data, model); } /*******************************************/ /* net charge on atom (ie including shell) */ /*******************************************/ gdouble atom_charge(struct core_pak *core) { gdouble q; struct shel_pak *shell; q = core->charge; if (core->shell) { shell = core->shell; q += shell->charge; } return(q); } /********************************************/ /* initialize element properties for a core */ /********************************************/ void elem_init(struct core_pak *core, struct model_pak *model) { struct elem_pak elem; g_assert(model != NULL); g_assert(core != NULL); /* NB: assumes core->atom_code is the atomic number */ get_elem_data(core->atom_code, &elem, model); core->atom_code = elem.number; core->bond_cutoff = elem.cova; core->charge = elem.charge; ARR3SET(core->colour, elem.colour); VEC3MUL(core->colour, 65535.0); } /*********************************************************/ /* compute net charge and dipole (if model is a surface) */ /*********************************************************/ #define DEBUG_CALC_EMP 0 void calc_emp(struct model_pak *data) { gdouble qsum, x[3], p[3]; GSList *list; struct core_pak *core; struct shel_pak *shell; /* checks */ g_assert(data != NULL); /* TODO - speed up by getting to a local var the elem data for unique atoms */ /* cores & shell dipole calc */ qsum=0.0; VEC3SET(p, 0.0, 0.0, 0.0); for (list=data->cores ; list ; list=g_slist_next(list)) { core = list->data; /* if (core->region != REGION1A) continue; */ if (core->status & DELETED) continue; ARR3SET(x, core->x); vecmat(data->latmat, x); /* dipole */ VEC3MUL(x, core->charge); ARR3ADD(p, x); /* monopole */ qsum += core->charge; /* NB: add shell constribution at the core's z location */ if (core->shell) { shell = core->shell; ARR3SET(x, shell->x); vecmat(data->latmat, x); /* dipole */ VEC3MUL(x, shell->charge); ARR3ADD(p, x); /* monopole */ qsum += shell->charge; } } #if DEBUG_CALC_EMP printf("surface: %f %f %f (%f)\n", data->surface.miller[0], data->surface.miller[1], data->surface.miller[2], data->surface.shift); P3VEC("dipole: ", p); printf("sum charge: %e\n", qsum); if (qsum*qsum > FRACTION_TOLERANCE) printf("Warning: your model has a net charge = %f\n", qsum); #endif /* only surfaces get the z dipole */ if (data->periodic == 2) data->gulp.sdipole = p[2]; data->gulp.qsum = qsum; } /***************************************************/ /* does a given string represent an atomic number? */ /***************************************************/ gint elem_number_test(const gchar *input) { gint n=0; if (str_is_float(input)) { n = str_to_float(input); if (n<0 || n>MAX_ELEMENTS-1) n=0; } return(n); } /***************************************************/ /* does a given string represent an element symbol */ /***************************************************/ #define DEBUG_ELEM_TYPE 0 gint elem_symbol_test(const gchar *input) { gint i, j, m, n; gchar *elem1, **buff; /* checks */ if (input == NULL) return(0); /* zero length string matches something, so force it to return 0 */ if (!strlen(input)) return(0); /* duplicate for manipulation */ elem1 = g_strdup(input); /* remove anything but alphabetic chars */ for (i=0 ; ielements ; list ; list=g_slist_next(list)) { elem_data = list->data; if (code == elem_data->number) { #if DEBUG_GET_ELEM printf("Retrieving local exception.\n"); #endif memcpy(elem, elem_data, sizeof(struct elem_pak)); return(0); } } } /* search global exceptions */ for (list=sysenv.elements ; list ; list=g_slist_next(list)) { elem_data = list->data; if (code == elem_data->number) { #if DEBUG_GET_ELEM printf("Retrieving global exception.\n"); #endif memcpy(elem, elem_data, sizeof(struct elem_pak)); return(0); } } /* return from the standard database */ if (code >= 0 && code < sysenv.num_elements) { #if DEBUG_GET_ELEM printf("Retrieving default.\n"); #endif memcpy(elem, &elements[code], sizeof(struct elem_pak)); return(0); } #if DEBUG_GET_ELEM printf("ERROR: bad element code.\n"); #endif return(1); } /**********************************/ /* store non-default element data */ /**********************************/ #define DEBUG_PUT_ELEM_DATA 0 void put_elem_data(struct elem_pak *elem, struct model_pak *model) { gint flag, create; GSList *list, *elements; struct elem_pak *elem_data; struct core_pak *core; /* checks */ g_return_if_fail(elem != NULL); #if DEBUG_PUT_ELEM_DATA printf(" *** Saving element ***\n"); printf("symbol: %s\n", elem->symbol); printf(" name: %s\n", elem->name); printf("number: %d\n", elem->number); printf("weight: %f\n", elem->weight); printf(" cova: %f\n", elem->cova); printf(" vdw: %f\n", elem->vdw); printf("charge: %f\n", elem->charge); printf("colour: %f %f %f\n", elem->colour[0], elem->colour[1], elem->colour[2]); #endif /* global or local database */ if (model) { elements = model->elements; flag = TRUE; } else { elements = sysenv.elements; flag = FALSE; } /* replace element if exists */ create = TRUE; for (list=elements ; list ; list=g_slist_next(list)) { elem_data = list->data; if (elem_data->number == elem->number) { #if DEBUG_PUT_ELEM_DATA printf("replacing existing...\n"); #endif memcpy(elem_data, elem, sizeof(struct elem_pak)); create = FALSE; break; } } /* create new item if it didn't exist */ if (create) { #if DEBUG_PUT_ELEM_DATA printf("creating new exception...\n"); #endif elem_data = g_malloc(sizeof(struct elem_pak)); memcpy(elem_data, elem, sizeof(struct elem_pak)); if (flag) model->elements = g_slist_prepend(model->elements, elem_data); else sysenv.elements = g_slist_prepend(sysenv.elements, elem_data); } /* update atom bond_cutoff */ if (flag) { for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->atom_code == elem->number) core->bond_cutoff = elem->cova; } } } /*************************************************************/ /* get the nth colour in a sequence (eg sample RGB spectrum) */ /*************************************************************/ void get_colour(gdouble *colour, gint n) { gint byte; gdouble r, g, b, f; byte = 1 + n % 7; if (byte & 4) r = 1.0; else r = 0.0; if (byte & 2) g = 1.0; else g = 0.0; if (byte & 1) b = 1.0; else b = 0.0; f = n / 7; f *= 0.5; f += 1.0; f = 1.0/f; r *= f; g *= f; b *= f; VEC3SET(colour, r, g, b); } /****************************************/ /* change the colour scheme for an atom */ /****************************************/ void atom_colour_scheme(gint type, struct core_pak *core, struct model_pak *model) { gdouble t; struct elem_pak elem; switch (type) { case ELEM: get_elem_data(core->atom_code, &elem, model); break; case MOL: /* get the sequence number for the colour type */ /* NB: core->molecule is deprec. */ get_colour(elem.colour, core->molecule); break; case OCCUPANCY: VEC3MUL(core->colour, core->sof); return; case REGION: /* get the sequence number for the colour type */ get_colour(elem.colour, core->region); break; case GROWTH_SLICE: if (core->growth) { VEC3SET(elem.colour, 0.5, 0.5, 0.5); } else { get_elem_data(core->atom_code, &elem, model); } break; case TRANSLATE: if (core->translate) { VEC3SET(elem.colour, 0.5, 0.5, 0.5); } else { get_elem_data(core->atom_code, &elem, model); } break; case VELOCITY: #define BC 1.3806503 #define AN 6.0221420 #define TMIN 0.0 #define TRANGE 2000.0 get_elem_data(core->atom_code, &elem, model); t = elem.weight * VEC3MAGSQ(core->v) * 10.0 / (3.0*AN*BC); /* printf("T = %f\n", t); */ /* clamp */ t -= TMIN; if (t > TRANGE) { /* printf("tmax = %f\n", t + TMIN); */ t = TRANGE; } if (t < 0.0) t = 0.0; /* bright red when hot (TMAX) */ elem.colour[0] = t/TRANGE; elem.colour[1] = 0.0; /* dark blue when cold */ elem.colour[2] = 0.5 * (1.0 - t/TRANGE); break; } ARR3SET(core->colour, elem.colour); VEC3MUL(core->colour, 65535.0); } /*************************************/ /* set the colour scheme for a model */ /*************************************/ void model_colour_scheme(gint type, struct model_pak *model) { GSList *list; struct core_pak *core; model->colour_scheme = type; for (list=model->cores ; list ; list=g_slist_next(list)) { core = (struct core_pak *) list->data; atom_colour_scheme(type, core, model); } } gdis-0.90/mesch_core.c0000644000175000017500000011141210510115015013266 0ustar seansean /************************************************************************** ** ** Copyright (C) 1993 David E. Steward & Zbigniew Leyk, all rights reserved. ** ** Meschach Library ** ** This Meschach Library is provided "as is" without any express ** or implied warranty of any kind with respect to this software. ** In particular the authors shall not be liable for any direct, ** indirect, special, incidental or consequential damages arising ** in any way from use of the software. ** ** Everyone is granted permission to copy, modify and redistribute this ** Meschach Library, provided: ** 1. All copies contain this copyright notice. ** 2. All modified copies shall carry a notice stating who ** made the last modification and the date of such modification. ** 3. No charge is made for this software or works derived from it. ** This clause shall not be construed as constraining other software ** distributed on the same medium as this software, nor is a ** distribution fee considered a charge. ** ***************************************************************************/ #include #include #include #include "mesch_pak.h" /* _m_copy -- copies matrix into new area -- out(i0:m,j0:n) <- in(i0:m,j0:n) */ MAT *_m_copy(const MAT *in, MAT *out, unsigned int i0, unsigned int j0) { unsigned int i /* ,j */; if ( in==MNULL ) g_assert_not_reached(); if ( in==out ) return (out); if ( out==MNULL || out->m < in->m || out->n < in->n ) out = m_resize(out,in->m,in->n); for ( i=i0; i < in->m; i++ ) MEM_COPY(&(in->me[i][j0]),&(out->me[i][j0]), (in->n - j0)*sizeof(Real)); /* for ( j=j0; j < in->n; j++ ) out->me[i][j] = in->me[i][j]; */ return (out); } /* _v_copy -- copies vector into new area -- out(i0:dim) <- in(i0:dim) */ VEC *_v_copy(const VEC *in, VEC *out, unsigned int i0) { /* unsigned int i,j; */ if ( in==VNULL ) g_assert_not_reached(); if ( in==out ) return (out); if ( out==VNULL || out->dim < in->dim ) out = v_resize(out,in->dim); MEM_COPY(&(in->ve[i0]),&(out->ve[i0]),(in->dim - i0)*sizeof(Real)); /* for ( i=i0; i < in->dim; i++ ) out->ve[i] = in->ve[i]; */ return (out); } /* The .._move() routines are for moving blocks of memory around within Meschach data structures and for re-arranging matrices, vectors etc. */ /* m_move -- copies selected pieces of a matrix -- moves the m0 x n0 submatrix with top-left cor-ordinates (i0,j0) to the corresponding submatrix of out with top-left co-ordinates (i1,j1) -- out is resized (& created) if necessary */ MAT *m_move(const MAT *in, int i0,int j0, int m0,int n0, MAT *out, int i1, int j1) { int i; if ( ! in ) g_assert_not_reached(); if ( i0 < 0 || j0 < 0 || i1 < 0 || j1 < 0 || m0 < 0 || n0 < 0 || i0+m0 > in->m || j0+n0 > in->n ) g_assert_not_reached(); if ( ! out ) out = m_resize(out,i1+m0,j1+n0); else if ( i1+m0 > out->m || j1+n0 > out->n ) out = m_resize(out,max(out->m,i1+m0),max(out->n,j1+n0)); for ( i = 0; i < m0; i++ ) MEM_COPY(&(in->me[i0+i][j0]),&(out->me[i1+i][j1]), n0*sizeof(Real)); return out; } /* v_move -- copies selected pieces of a vector -- moves the length dim0 subvector with initial index i0 to the corresponding subvector of out with initial index i1 -- out is resized if necessary */ VEC *v_move(const VEC *in, int i0, int dim0, VEC *out, int i1) { if ( ! in ) g_assert_not_reached(); if ( i0 < 0 || dim0 < 0 || i1 < 0 || i0+dim0 > in->dim ) g_assert_not_reached(); if ( (! out) || i1+dim0 > out->dim ) out = v_resize(out,i1+dim0); MEM_COPY(&(in->ve[i0]),&(out->ve[i1]),dim0*sizeof(Real)); return out; } /************************************************************************** ** ** Copyright (C) 1993 David E. Steward & Zbigniew Leyk, all rights reserved. ** ** Meschach Library ** ** This Meschach Library is provided "as is" without any express ** or implied warranty of any kind with respect to this software. ** In particular the authors shall not be liable for any direct, ** indirect, special, incidental or consequential damages arising ** in any way from use of the software. ** ** Everyone is granted permission to copy, modify and redistribute this ** Meschach Library, provided: ** 1. All copies contain this copyright notice. ** 2. All modified copies shall carry a notice stating who ** made the last modification and the date of such modification. ** 3. No charge is made for this software or works derived from it. ** This clause shall not be construed as constraining other software ** distributed on the same medium as this software, nor is a ** distribution fee considered a charge. ** ***************************************************************************/ /* Files for matrix computations Givens operations file. Contains routines for calculating and applying givens rotations for/to vectors and also to matrices by row and by column. */ /* givens.c 1.2 11/25/87 */ /* givens -- returns c,s parameters for Givens rotation to eliminate y in the vector [ x y ]' */ void givens(double x, double y, Real *c, Real *s) { Real norm; norm = sqrt(x*x+y*y); if ( norm == 0.0 ) { *c = 1.0; *s = 0.0; } /* identity */ else { *c = x/norm; *s = y/norm; } } /* rot_vec -- apply Givens rotation to x's i & k components */ VEC *rot_vec(const VEC *x,unsigned int i,unsigned int k, double c,double s, VEC *out) { Real temp; if ( x==VNULL ) g_assert_not_reached(); if ( i >= x->dim || k >= x->dim ) g_assert_not_reached(); out = v_copy(x,out); /* temp = c*out->ve[i] + s*out->ve[k]; */ temp = c*v_entry(out,i) + s*v_entry(out,k); /* out->ve[k] = -s*out->ve[i] + c*out->ve[k]; */ v_set_val(out,k,-s*v_entry(out,i)+c*v_entry(out,k)); /* out->ve[i] = temp; */ v_set_val(out,i,temp); return (out); } /* rot_rows -- premultiply mat by givens rotation described by c,s */ MAT *rot_rows(const MAT *mat, unsigned int i, unsigned int k, double c, double s, MAT *out) { unsigned int j; Real temp; if ( mat==(MAT *)NULL ) g_assert_not_reached(); if ( i >= mat->m || k >= mat->m ) g_assert_not_reached(); if ( mat != out ) out = m_copy(mat,m_resize(out,mat->m,mat->n)); for ( j=0; jn; j++ ) { /* temp = c*out->me[i][j] + s*out->me[k][j]; */ temp = c*m_entry(out,i,j) + s*m_entry(out,k,j); /* out->me[k][j] = -s*out->me[i][j] + c*out->me[k][j]; */ m_set_val(out,k,j, -s*m_entry(out,i,j) + c*m_entry(out,k,j)); /* out->me[i][j] = temp; */ m_set_val(out,i,j, temp); } return (out); } /* rot_cols -- postmultiply mat by givens rotation described by c,s */ MAT *rot_cols(const MAT *mat,unsigned int i,unsigned int k, gdouble c, gdouble s, MAT *out) { unsigned int j; Real temp; if ( mat==(MAT *)NULL ) g_assert_not_reached(); if ( i >= mat->n || k >= mat->n ) g_assert_not_reached(); if ( mat != out ) out = m_copy(mat,m_resize(out,mat->m,mat->n)); for ( j=0; jm; j++ ) { /* temp = c*out->me[j][i] + s*out->me[j][k]; out->me[j][k] = -s*out->me[j][i] + c*out->me[j][k]; out->me[j][i] = temp; */ temp = c*m_entry(out,j,i) + s*m_entry(out,j,k); m_set_val(out,j,k, -s*m_entry(out,j,i) + c*m_entry(out,j,k)); m_set_val(out,j,i,temp); } return (out); } /************************************************************************** ** ** Copyright (C) 1993 David E. Steward & Zbigniew Leyk, all rights reserved. ** ** Meschach Library ** ** This Meschach Library is provided "as is" without any express ** or implied warranty of any kind with respect to this software. ** In particular the authors shall not be liable for any direct, ** indirect, special, incidental or consequential damages arising ** in any way from use of the software. ** ** Everyone is granted permission to copy, modify and redistribute this ** Meschach Library, provided: ** 1. All copies contain this copyright notice. ** 2. All modified copies shall carry a notice stating who ** made the last modification and the date of such modification. ** 3. No charge is made for this software or works derived from it. ** This clause shall not be construed as constraining other software ** distributed on the same medium as this software, nor is a ** distribution fee considered a charge. ** ***************************************************************************/ /* Files for matrix computations Householder transformation file. Contains routines for calculating householder transformations, applying them to vectors and matrices by both row & column. */ /* hsehldr.c 1.3 10/8/87 */ /* hhvec -- calulates Householder vector to eliminate all entries after the i0 entry of the vector vec. It is returned as out. May be in-situ */ VEC *hhvec(const VEC *vec, unsigned int i0, Real *beta, VEC *out, Real *newval) { Real norm; out = _v_copy(vec,out,i0); norm = sqrt(_in_prod(out,out,i0)); if ( norm <= 0.0 ) { *beta = 0.0; return (out); } *beta = 1.0/(norm * (norm+fabs(out->ve[i0]))); if ( out->ve[i0] > 0.0 ) *newval = -norm; else *newval = norm; out->ve[i0] -= *newval; return (out); } /* hhtrvec -- apply Householder transformation to vector -- that is, out <- (I-beta.hh(i0:n).hh(i0:n)^T).in -- may be in-situ */ VEC *hhtrvec(const VEC *hh, double beta, unsigned int i0, const VEC *in, VEC *out) { Real scale; /* unsigned int i; */ if ( hh==VNULL || in==VNULL ) g_assert_not_reached(); if ( in->dim != hh->dim ) g_assert_not_reached(); if ( i0 > in->dim ) g_assert_not_reached(); scale = beta*_in_prod(hh,in,i0); out = v_copy(in,out); __mltadd__(&(out->ve[i0]),&(hh->ve[i0]),-scale,(int)(in->dim-i0)); /************************************************************ for ( i=i0; idim; i++ ) out->ve[i] = in->ve[i] - scale*hh->ve[i]; ************************************************************/ return (out); } /* hhtrrows -- transform a matrix by a Householder vector by rows starting at row i0 from column j0 -- in-situ -- that is, M(i0:m,j0:n) <- M(i0:m,j0:n)(I-beta.hh(j0:n).hh(j0:n)^T) */ MAT *hhtrrows(MAT *M, unsigned int i0, unsigned int j0, const VEC *hh, double beta) { Real ip, scale; int i /*, j */; if ( M==MNULL || hh==VNULL ) g_assert_not_reached(); if ( M->n != hh->dim ) g_assert_not_reached(); if ( i0 > M->m || j0 > M->n ) g_assert_not_reached(); if ( beta == 0.0 ) return (M); /* for each row ... */ for ( i = i0; i < M->m; i++ ) { /* compute inner product */ ip = __ip__(&(M->me[i][j0]),&(hh->ve[j0]),(int)(M->n-j0)); /************************************************** ip = 0.0; for ( j = j0; j < M->n; j++ ) ip += M->me[i][j]*hh->ve[j]; **************************************************/ scale = beta*ip; if ( scale == 0.0 ) continue; /* do operation */ __mltadd__(&(M->me[i][j0]),&(hh->ve[j0]),-scale, (int)(M->n-j0)); /************************************************** for ( j = j0; j < M->n; j++ ) M->me[i][j] -= scale*hh->ve[j]; **************************************************/ } return (M); } /* _hhtrcols -- transform a matrix by a Householder vector by columns starting at row i0 from column j0 -- that is, M(i0:m,j0:n) <- (I-beta.hh(i0:m).hh(i0:m)^T)M(i0:m,j0:n) -- in-situ -- scratch vector w passed as argument -- raises error if w == NULL */ MAT *_hhtrcols(MAT *M, unsigned int i0, unsigned int j0, const VEC *hh, double beta, VEC *w) { /* Real ip, scale; */ int i /*, k */; /* STATIC VEC *w = VNULL; */ if ( M == MNULL || hh == VNULL || w == VNULL ) g_assert_not_reached(); if ( M->m != hh->dim ) g_assert_not_reached(); if ( i0 > M->m || j0 > M->n ) g_assert_not_reached(); if ( beta == 0.0 ) return (M); if ( w->dim < M->n ) w = v_resize(w,M->n); /* MEM_STAT_REG(w,TYPE_VEC); */ v_zero(w); for ( i = i0; i < M->m; i++ ) if ( hh->ve[i] != 0.0 ) __mltadd__(&(w->ve[j0]),&(M->me[i][j0]),hh->ve[i], (int)(M->n-j0)); for ( i = i0; i < M->m; i++ ) if ( hh->ve[i] != 0.0 ) __mltadd__(&(M->me[i][j0]),&(w->ve[j0]),-beta*hh->ve[i], (int)(M->n-j0)); return (M); } /* hhtrcols -- transform a matrix by a Householder vector by columns starting at row i0 from column j0 -- that is, M(i0:m,j0:n) <- (I-beta.hh(i0:m).hh(i0:m)^T)M(i0:m,j0:n) -- in-situ -- calls _hhtrcols() with the scratch vector w -- Meschach internal routines should call _hhtrcols() to avoid excessive memory allocation/de-allocation */ MAT *hhtrcols(MAT *M, unsigned int i0, unsigned int j0, const VEC *hh, double beta) { STATIC VEC *w = VNULL; if ( M == MNULL || hh == VNULL || w == VNULL ) g_assert_not_reached(); if ( M->m != hh->dim ) g_assert_not_reached(); if ( i0 > M->m || j0 > M->n ) g_assert_not_reached(); if ( ! w || w->dim < M->n ) w = v_resize(w,M->n); MEM_STAT_REG(w,TYPE_VEC); M = _hhtrcols(M,i0,j0,hh,beta,w); #ifdef THREADSAFE V_FREE(w); #endif return M; } /************************************************************************** ** ** Copyright (C) 1993 David E. Steward & Zbigniew Leyk, all rights reserved. ** ** Meschach Library ** ** This Meschach Library is provided "as is" without any express ** or implied warranty of any kind with respect to this software. ** In particular the authors shall not be liable for any direct, ** indirect, special, incidental or consequential damages arising ** in any way from use of the software. ** ** Everyone is granted permission to copy, modify and redistribute this ** Meschach Library, provided: ** 1. All copies contain this copyright notice. ** 2. All modified copies shall carry a notice stating who ** made the last modification and the date of such modification. ** 3. No charge is made for this software or works derived from it. ** This clause shall not be construed as constraining other software ** distributed on the same medium as this software, nor is a ** distribution fee considered a charge. ** ***************************************************************************/ /* File containing routines for determining Hessenberg factorisations. */ /* Hfactor -- compute Hessenberg factorisation in compact form. -- factorisation performed in situ -- for details of the compact form see QRfactor.c and matrix2.doc */ MAT *Hfactor(MAT *A, VEC *diag, VEC *beta) { STATIC VEC *hh = VNULL, *w = VNULL; int k, limit; if ( ! A || ! diag || ! beta ) g_assert_not_reached(); if ( diag->dim < A->m - 1 || beta->dim < A->m - 1 ) g_assert_not_reached(); if ( A->m != A->n ) g_assert_not_reached(); limit = A->m - 1; hh = v_resize(hh,A->m); w = v_resize(w,A->n); MEM_STAT_REG(hh,TYPE_VEC); MEM_STAT_REG(w, TYPE_VEC); for ( k = 0; k < limit; k++ ) { /* compute the Householder vector hh */ get_col(A,(unsigned int)k,hh); /* printf("the %d'th column = "); v_output(hh); */ hhvec(hh,k+1,&beta->ve[k],hh,&A->me[k+1][k]); /* diag->ve[k] = hh->ve[k+1]; */ v_set_val(diag,k,v_entry(hh,k+1)); /* printf("H/h vector = "); v_output(hh); */ /* printf("from the %d'th entry\n",k+1); */ /* printf("beta = %g\n",beta->ve[k]); */ /* apply Householder operation symmetrically to A */ _hhtrcols(A,k+1,k+1,hh,v_entry(beta,k),w); hhtrrows(A,0 ,k+1,hh,v_entry(beta,k)); /* printf("A = "); m_output(A); */ } #ifdef THREADSAFE V_FREE(hh); V_FREE(w); #endif return (A); } /* makeHQ -- construct the Hessenberg orthogonalising matrix Q; -- i.e. Hess M = Q.M.Q' */ MAT *makeHQ(MAT *H, VEC *diag, VEC *beta, MAT *Qout) { int i, j, limit; STATIC VEC *tmp1 = VNULL, *tmp2 = VNULL; if ( H==(MAT *)NULL || diag==(VEC *)NULL || beta==(VEC *)NULL ) g_assert_not_reached(); limit = H->m - 1; if ( diag->dim < limit || beta->dim < limit ) g_assert_not_reached(); if ( H->m != H->n ) g_assert_not_reached(); Qout = m_resize(Qout,H->m,H->m); tmp1 = v_resize(tmp1,H->m); tmp2 = v_resize(tmp2,H->m); MEM_STAT_REG(tmp1,TYPE_VEC); MEM_STAT_REG(tmp2,TYPE_VEC); for ( i = 0; i < H->m; i++ ) { /* tmp1 = i'th basis vector */ for ( j = 0; j < H->m; j++ ) /* tmp1->ve[j] = 0.0; */ v_set_val(tmp1,j,0.0); /* tmp1->ve[i] = 1.0; */ v_set_val(tmp1,i,1.0); /* apply H/h transforms in reverse order */ for ( j = limit-1; j >= 0; j-- ) { get_col(H,(unsigned int)j,tmp2); /* tmp2->ve[j+1] = diag->ve[j]; */ v_set_val(tmp2,j+1,v_entry(diag,j)); hhtrvec(tmp2,beta->ve[j],j+1,tmp1,tmp1); } /* insert into Qout */ set_col(Qout,(unsigned int)i,tmp1); } #ifdef THREADSAFE V_FREE(tmp1); V_FREE(tmp2); #endif return (Qout); } /************************************************************************** ** ** Copyright (C) 1993 David E. Steward & Zbigniew Leyk, all rights reserved. ** ** Meschach Library ** ** This Meschach Library is provided "as is" without any express ** or implied warranty of any kind with respect to this software. ** In particular the authors shall not be liable for any direct, ** indirect, special, incidental or consequential damages arising ** in any way from use of the software. ** ** Everyone is granted permission to copy, modify and redistribute this ** Meschach Library, provided: ** 1. All copies contain this copyright notice. ** 2. All modified copies shall carry a notice stating who ** made the last modification and the date of such modification. ** 3. No charge is made for this software or works derived from it. ** This clause shall not be construed as constraining other software ** distributed on the same medium as this software, nor is a ** distribution fee considered a charge. ** ***************************************************************************/ /* This is a file of routines for zero-ing, and initialising vectors, matrices and permutations. This is to be included in the matrix.a library */ /* v_zero -- zero the vector x */ VEC *v_zero(VEC *x) { if ( x == VNULL ) g_assert_not_reached(); __zero__(x->ve,x->dim); /* for ( i = 0; i < x->dim; i++ ) x->ve[i] = 0.0; */ return x; } /* m_zero -- zero the matrix A */ MAT *m_zero(MAT *A) { int i, A_m, A_n; Real **A_me; if ( A == MNULL ) g_assert_not_reached(); A_m = A->m; A_n = A->n; A_me = A->me; for ( i = 0; i < A_m; i++ ) __zero__(A_me[i],A_n); /* for ( j = 0; j < A_n; j++ ) A_me[i][j] = 0.0; */ return A; } /************************************************************************** ** ** Copyright (C) 1993 David E. Stewart & Zbigniew Leyk, all rights reserved. ** ** Meschach Library ** ** This Meschach Library is provided "as is" without any express ** or implied warranty of any kind with respect to this software. ** In particular the authors shall not be liable for any direct, ** indirect, special, incidental or consequential damages arising ** in any way from use of the software. ** ** Everyone is granted permission to copy, modify and redistribute this ** Meschach Library, provided: ** 1. All copies contain this copyright notice. ** 2. All modified copies shall carry a notice stating who ** made the last modification and the date of such modification. ** 3. No charge is made for this software or works derived from it. ** This clause shall not be construed as constraining other software ** distributed on the same medium as this software, nor is a ** distribution fee considered a charge. ** ***************************************************************************/ /* This file contains basic routines which are used by the functions in meschach.a etc. These are the routines that should be modified in order to take full advantage of specialised architectures (pipelining, vector processors etc). */ /* __ip__ -- inner product */ double __ip__(const Real *dp1, const Real *dp2, int len) { #ifdef VUNROLL register int len4; register Real sum1, sum2, sum3; #endif register int i; register Real sum; sum = 0.0; #ifdef VUNROLL sum1 = sum2 = sum3 = 0.0; len4 = len / 4; len = len % 4; for ( i = 0; i < len4; i++ ) { sum += dp1[4*i]*dp2[4*i]; sum1 += dp1[4*i+1]*dp2[4*i+1]; sum2 += dp1[4*i+2]*dp2[4*i+2]; sum3 += dp1[4*i+3]*dp2[4*i+3]; } sum += sum1 + sum2 + sum3; dp1 += 4*len4; dp2 += 4*len4; #endif for ( i = 0; i < len; i++ ) sum += dp1[i]*dp2[i]; return sum; } /* __mltadd__ -- scalar multiply and add c.f. v_mltadd() */ void __mltadd__(Real *dp1, const Real *dp2, double s, int len) { register int i; #ifdef VUNROLL register int len4; len4 = len / 4; len = len % 4; for ( i = 0; i < len4; i++ ) { dp1[4*i] += s*dp2[4*i]; dp1[4*i+1] += s*dp2[4*i+1]; dp1[4*i+2] += s*dp2[4*i+2]; dp1[4*i+3] += s*dp2[4*i+3]; } dp1 += 4*len4; dp2 += 4*len4; #endif for ( i = 0; i < len; i++ ) dp1[i] += s*dp2[i]; } /* __smlt__ scalar multiply array c.f. sv_mlt() */ void __smlt__(const Real *dp, double s, Real *out, int len) { register int i; for ( i = 0; i < len; i++ ) out[i] = s*dp[i]; } /* __add__ -- add arrays c.f. v_add() */ void __add__(const Real *dp1, const Real *dp2, Real *out, int len) { register int i; for ( i = 0; i < len; i++ ) out[i] = dp1[i] + dp2[i]; } /* __sub__ -- subtract arrays c.f. v_sub() */ void __sub__(const Real *dp1, const Real *dp2, Real *out, int len) { register int i; for ( i = 0; i < len; i++ ) out[i] = dp1[i] - dp2[i]; } /* __zero__ -- zeros an array of floating point numbers */ void __zero__(Real *dp, int len) { gint i; for ( i = len ; i-- ; ) dp[i] = 0.0; } /************************************************************************** ** ** Copyright (C) 1993 David E. Steward & Zbigniew Leyk, all rights reserved. ** ** Meschach Library ** ** This Meschach Library is provided "as is" without any express ** or implied warranty of any kind with respect to this software. ** In particular the authors shall not be liable for any direct, ** indirect, special, incidental or consequential damages arising ** in any way from use of the software. ** ** Everyone is granted permission to copy, modify and redistribute this ** Meschach Library, provided: ** 1. All copies contain this copyright notice. ** 2. All modified copies shall carry a notice stating who ** made the last modification and the date of such modification. ** 3. No charge is made for this software or works derived from it. ** This clause shall not be construed as constraining other software ** distributed on the same medium as this software, nor is a ** distribution fee considered a charge. ** ***************************************************************************/ /* memory.c 1.3 11/25/87 */ /* m_get -- gets an mxn matrix (in MAT form) by dynamic memory allocation -- normally ALL matrices should be obtained this way -- if either m or n is negative this will raise an error -- note that 0 x n and m x 0 matrices can be created */ MAT *m_get(int m, int n) { MAT *matrix; int i; if (m < 0 || n < 0) g_assert_not_reached(); if ((matrix=NEW(MAT)) == (MAT *)NULL ) g_assert_not_reached(); matrix->m = m; matrix->n = matrix->max_n = n; matrix->max_m = m; matrix->max_size = m*n; if ((matrix->base = NEW_A(m*n,Real)) == (Real *)NULL ) { free(matrix); g_assert_not_reached(); } if ((matrix->me = (Real **)calloc(m,sizeof(Real *))) == (Real **)NULL ) { free(matrix->base); free(matrix); g_assert_not_reached(); } /* set up pointers */ for ( i=0; ime[i] = &(matrix->base[i*n]); return (matrix); } /* v_get -- gets a VEC of dimension 'size' -- Note: initialized to zero */ VEC *v_get(int size) { VEC *vector; if (size < 0) g_assert_not_reached(); if ((vector=NEW(VEC)) == (VEC *)NULL ) g_assert_not_reached(); vector->dim = vector->max_dim = size; if ((vector->ve=NEW_A(size,Real)) == (Real *)NULL ) { free(vector); g_assert_not_reached(); } return (vector); } /* m_free -- returns MAT & asoociated memory back to memory heap */ int m_free(MAT *mat) { if ( mat==(MAT *)NULL || (int)(mat->m) < 0 || (int)(mat->n) < 0 ) /* don't trust it */ return (-1); if ( mat->base != (Real *)NULL ) { free((char *)(mat->base)); } if ( mat->me != (Real **)NULL ) { free((char *)(mat->me)); } free((char *)mat); return (0); } /* px_free -- returns PERM & asoociated memory back to memory heap */ int px_free(PERM *px) { if ( px==(PERM *)NULL || (int)(px->size) < 0 ) /* don't trust it */ return (-1); if ( px->pe == (unsigned int *)NULL ) { free((char *)px); } else { free((char *)px->pe); free((char *)px); } return (0); } /* v_free -- returns VEC & asoociated memory back to memory heap */ int v_free(VEC *vec) { if ( vec==(VEC *)NULL || (int)(vec->dim) < 0 ) /* don't trust it */ return (-1); if ( vec->ve == (Real *)NULL ) { free((char *)vec); } else { free((char *)vec->ve); free((char *)vec); } return (0); } /* m_resize -- returns the matrix A of size new_m x new_n; A is zeroed -- if A == NULL on entry then the effect is equivalent to m_get() */ MAT *m_resize(MAT *A,int new_m, int new_n) { int i; int new_max_m, new_max_n, new_size, old_m, old_n; if (new_m < 0 || new_n < 0) g_assert_not_reached(); if ( ! A ) return m_get(new_m,new_n); /* nothing was changed */ if (new_m == A->m && new_n == A->n) return A; old_m = A->m; old_n = A->n; if ( new_m > A->max_m ) { /* re-allocate A->me */ A->me = RENEW(A->me,new_m,Real *); if ( ! A->me ) g_assert_not_reached(); } new_max_m = max(new_m,A->max_m); new_max_n = max(new_n,A->max_n); new_size = new_max_m*new_max_n; if ( new_size > A->max_size ) { /* re-allocate A->base */ A->base = RENEW(A->base,new_size,Real); if ( ! A->base ) g_assert_not_reached(); A->max_size = new_size; } /* now set up A->me[i] */ for ( i = 0; i < new_m; i++ ) A->me[i] = &(A->base[i*new_n]); /* now shift data in matrix */ if ( old_n > new_n ) { for ( i = 1; i < min(old_m,new_m); i++ ) MEM_COPY((char *)&(A->base[i*old_n]), (char *)&(A->base[i*new_n]), sizeof(Real)*new_n); } else if ( old_n < new_n ) { for ( i = (int)(min(old_m,new_m))-1; i > 0; i-- ) { /* copy & then zero extra space */ MEM_COPY((char *)&(A->base[i*old_n]), (char *)&(A->base[i*new_n]), sizeof(Real)*old_n); __zero__(&(A->base[i*new_n+old_n]),(new_n-old_n)); } __zero__(&(A->base[old_n]),(new_n-old_n)); A->max_n = new_n; } /* zero out the new rows.. */ for ( i = old_m; i < new_m; i++ ) __zero__(&(A->base[i*new_n]),new_n); A->max_m = new_max_m; A->max_n = new_max_n; A->max_size = A->max_m*A->max_n; A->m = new_m; A->n = new_n; return A; } /* v_resize -- returns the vector x with dim new_dim -- x is set to the zero vector */ VEC *v_resize(VEC *x, int new_dim) { if (new_dim < 0) g_assert_not_reached(); if ( ! x ) return v_get(new_dim); /* nothing is changed */ if (new_dim == x->dim) return x; if ( x->max_dim == 0 ) /* assume that it's from sub_vec */ return v_get(new_dim); if ( new_dim > x->max_dim ) { x->ve = RENEW(x->ve,new_dim,Real); if ( ! x->ve ) g_assert_not_reached(); x->max_dim = new_dim; } if ( new_dim > x->dim ) __zero__(&(x->ve[x->dim]),new_dim - x->dim); x->dim = new_dim; return x; } /************************************************************************** ** ** Copyright (C) 1993 David E. Steward & Zbigniew Leyk, all rights reserved. ** ** Meschach Library ** ** This Meschach Library is provided "as is" without any express ** or implied warranty of any kind with respect to this software. ** In particular the authors shall not be liable for any direct, ** indirect, special, incidental or consequential damages arising ** in any way from use of the software. ** ** Everyone is granted permission to copy, modify and redistribute this ** Meschach Library, provided: ** 1. All copies contain this copyright notice. ** 2. All modified copies shall carry a notice stating who ** made the last modification and the date of such modification. ** 3. No charge is made for this software or works derived from it. ** This clause shall not be construed as constraining other software ** distributed on the same medium as this software, nor is a ** distribution fee considered a charge. ** ***************************************************************************/ /* 1.2 submat.c 11/25/87 */ /* get_col -- gets a specified column of a matrix and retruns it as a vector */ VEC *get_col(const MAT *mat, unsigned int col, VEC *vec) { unsigned int i; if ( mat==(MAT *)NULL ) g_assert_not_reached(); if ( col >= mat->n ) g_assert_not_reached(); if ( vec==(VEC *)NULL || vec->dimm ) vec = v_resize(vec,mat->m); for ( i=0; im; i++ ) vec->ve[i] = mat->me[i][col]; return (vec); } /* _set_col -- sets column of matrix to values given in vec (in situ) -- that is, mat(i0:lim,col) <- vec(i0:lim) */ MAT *_set_col(MAT *mat, unsigned int col, const VEC *vec, unsigned int i0) { unsigned int i,lim; if ( mat==(MAT *)NULL || vec==(VEC *)NULL ) g_assert_not_reached(); if ( col >= mat->n ) g_assert_not_reached(); lim = min(mat->m,vec->dim); for ( i=i0; ime[i][col] = vec->ve[i]; return (mat); } /************************************************************************** ** ** Copyright (C) 1993 David E. Steward & Zbigniew Leyk, all rights reserved. ** ** Meschach Library ** ** This Meschach Library is provided "as is" without any express ** or implied warranty of any kind with respect to this software. ** In particular the authors shall not be liable for any direct, ** indirect, special, incidental or consequential damages arising ** in any way from use of the software. ** ** Everyone is granted permission to copy, modify and redistribute this ** Meschach Library, provided: ** 1. All copies contain this copyright notice. ** 2. All modified copies shall carry a notice stating who ** made the last modification and the date of such modification. ** 3. No charge is made for this software or works derived from it. ** This clause shall not be construed as constraining other software ** distributed on the same medium as this software, nor is a ** distribution fee considered a charge. ** ***************************************************************************/ /* File containing routines for symmetric eigenvalue problems */ #define SQRT2 1.4142135623730949 #define sgn(x) ( (x) >= 0 ? 1 : -1 ) /* trieig -- finds eigenvalues of symmetric tridiagonal matrices -- matrix represented by a pair of vectors a (diag entries) and b (sub- & super-diag entries) -- eigenvalues in a on return */ VEC *trieig(VEC *a, VEC *b, MAT *Q) { int i, i_min, i_max, n, split; Real *a_ve, *b_ve; Real b_sqr, bk, ak1, bk1, ak2, bk2, z; Real c, c2, cs, s, s2, d, mu; if ( ! a || ! b ) g_assert_not_reached(); if ( a->dim != b->dim + 1 || ( Q && Q->m != a->dim ) ) g_assert_not_reached(); if ( Q && Q->m != Q->n ) g_assert_not_reached(); n = a->dim; a_ve = a->ve; b_ve = b->ve; i_min = 0; while ( i_min < n ) /* outer while loop */ { /* find i_max to suit; submatrix i_min..i_max should be irreducible */ i_max = n-1; for ( i = i_min; i < n-1; i++ ) if ( b_ve[i] == 0.0 ) { i_max = i; break; } if ( i_max <= i_min ) { /* printf("# i_min = %d, i_max = %d\n",i_min,i_max); */ i_min = i_max + 1; continue; /* outer while loop */ } /* printf("# i_min = %d, i_max = %d\n",i_min,i_max); */ /* repeatedly perform QR method until matrix splits */ split = FALSE; while ( ! split ) /* inner while loop */ { /* find Wilkinson shift */ d = (a_ve[i_max-1] - a_ve[i_max])/2; b_sqr = b_ve[i_max-1]*b_ve[i_max-1]; mu = a_ve[i_max] - b_sqr/(d + sgn(d)*sqrt(d*d+b_sqr)); /* printf("# Wilkinson shift = %g\n",mu); */ /* initial Givens' rotation */ givens(a_ve[i_min]-mu,b_ve[i_min],&c,&s); s = -s; /* printf("# c = %g, s = %g\n",c,s); */ if ( fabs(c) < SQRT2 ) { c2 = c*c; s2 = 1-c2; } else { s2 = s*s; c2 = 1-s2; } cs = c*s; ak1 = c2*a_ve[i_min]+s2*a_ve[i_min+1]-2*cs*b_ve[i_min]; bk1 = cs*(a_ve[i_min]-a_ve[i_min+1]) + (c2-s2)*b_ve[i_min]; ak2 = s2*a_ve[i_min]+c2*a_ve[i_min+1]+2*cs*b_ve[i_min]; bk2 = ( i_min < i_max-1 ) ? c*b_ve[i_min+1] : 0.0; z = ( i_min < i_max-1 ) ? -s*b_ve[i_min+1] : 0.0; a_ve[i_min] = ak1; a_ve[i_min+1] = ak2; b_ve[i_min] = bk1; if ( i_min < i_max-1 ) b_ve[i_min+1] = bk2; if ( Q ) rot_cols(Q,i_min,i_min+1,c,-s,Q); /* printf("# z = %g\n",z); */ /* printf("# a [temp1] =\n"); v_output(a); */ /* printf("# b [temp1] =\n"); v_output(b); */ for ( i = i_min+1; i < i_max; i++ ) { /* get Givens' rotation for sub-block -- k == i-1 */ givens(b_ve[i-1],z,&c,&s); s = -s; /* perform Givens' rotation on sub-block */ if ( fabs(c) < SQRT2 ) { c2 = c*c; s2 = 1-c2; } else { s2 = s*s; c2 = 1-s2; } cs = c*s; bk = c*b_ve[i-1] - s*z; ak1 = c2*a_ve[i]+s2*a_ve[i+1]-2*cs*b_ve[i]; bk1 = cs*(a_ve[i]-a_ve[i+1]) + (c2-s2)*b_ve[i]; ak2 = s2*a_ve[i]+c2*a_ve[i+1]+2*cs*b_ve[i]; bk2 = ( i+1 < i_max ) ? c*b_ve[i+1] : 0.0; z = ( i+1 < i_max ) ? -s*b_ve[i+1] : 0.0; a_ve[i] = ak1; a_ve[i+1] = ak2; b_ve[i] = bk1; if ( i < i_max-1 ) b_ve[i+1] = bk2; if ( i > i_min ) b_ve[i-1] = bk; if ( Q ) rot_cols(Q,i,i+1,c,-s,Q); /* printf("# a [temp2] =\n"); v_output(a); */ /* printf("# b [temp2] =\n"); v_output(b); */ } /* test to see if matrix should be split */ for ( i = i_min; i < i_max; i++ ) if ( fabs(b_ve[i]) < MACHEPS* (fabs(a_ve[i])+fabs(a_ve[i+1])) ) { b_ve[i] = 0.0; split = TRUE; } /* printf("# a =\n"); v_output(a); */ /* printf("# b =\n"); v_output(b); */ } } return a; } /* symmeig -- computes eigenvalues of a dense symmetric matrix -- A **must** be symmetric on entry -- eigenvalues stored in out -- Q contains orthogonal matrix of eigenvectors -- returns vector of eigenvalues */ VEC *symmeig(const MAT *A, MAT *Q, VEC *out) { int i; STATIC MAT *tmp = MNULL; STATIC VEC *b = VNULL, *diag = VNULL, *beta = VNULL; if ( ! A ) g_assert_not_reached(); if ( A->m != A->n ) g_assert_not_reached(); if ( ! out || out->dim != A->m ) out = v_resize(out,A->m); tmp = m_resize(tmp,A->m,A->n); tmp = m_copy(A,tmp); b = v_resize(b,A->m - 1); diag = v_resize(diag,(unsigned int)A->m); beta = v_resize(beta,(unsigned int)A->m); MEM_STAT_REG(tmp,TYPE_MAT); MEM_STAT_REG(b,TYPE_VEC); MEM_STAT_REG(diag,TYPE_VEC); MEM_STAT_REG(beta,TYPE_VEC); Hfactor(tmp,diag,beta); if (Q) makeHQ(tmp,diag,beta,Q); for ( i = 0; i < A->m - 1; i++ ) { out->ve[i] = tmp->me[i][i]; b->ve[i] = tmp->me[i][i+1]; } out->ve[i] = tmp->me[i][i]; trieig(out,b,Q); #ifdef THREADSAFE M_FREE(tmp); V_FREE(b); V_FREE(diag); V_FREE(beta); #endif return out; } /************************************************************************** ** ** Copyright (C) 1993 David E. Steward & Zbigniew Leyk, all rights reserved. ** ** Meschach Library ** ** This Meschach Library is provided "as is" without any express ** or implied warranty of any kind with respect to this software. ** In particular the authors shall not be liable for any direct, ** indirect, special, incidental or consequential damages arising ** in any way from use of the software. ** ** Everyone is granted permission to copy, modify and redistribute this ** Meschach Library, provided: ** 1. All copies contain this copyright notice. ** 2. All modified copies shall carry a notice stating who ** made the last modification and the date of such modification. ** 3. No charge is made for this software or works derived from it. ** This clause shall not be construed as constraining other software ** distributed on the same medium as this software, nor is a ** distribution fee considered a charge. ** ***************************************************************************/ /* vecop.c 1.3 8/18/87 */ /* _in_prod -- inner product of two vectors from i0 downwards -- that is, returns a(i0:dim)^T.b(i0:dim) */ double _in_prod(const VEC *a, const VEC *b, unsigned int i0) { unsigned int limit; /* Real *a_v, *b_v; */ /* register Real sum; */ if ( a==(VEC *)NULL || b==(VEC *)NULL ) g_assert_not_reached(); limit = min(a->dim,b->dim); if ( i0 > limit ) g_assert_not_reached(); return __ip__(&(a->ve[i0]),&(b->ve[i0]),(int)(limit-i0)); /***************************************** a_v = &(a->ve[i0]); b_v = &(b->ve[i0]); for ( i=i0; i c #819ABD", ", c #6380A7", "' c #90A7C7", ") c #94ABCC", "! c #9EB4D2", "~ c #7E97BC", "{ c #5C7BA2", "] c #6C88AE", "^ c #5B7AA2", "/ c #54749C", "( c #6784AB", "_ c #5F7DA4", ": c #42658D", "< c #A8BBD8", "[ c #ADC1DC", "} c #9BB0D0", "| c #6B87AD", "1 c #7590B5", "2 c #6481A7", "3 c #4E6E96", "4 c #41648C", "5 c #4A6C93", "6 c #355A82", "7 c #ACBFDA", "8 c #A4B8D5", "9 c #879FC2", "0 c #7D96BA", "a c #52739B", "b c #395D85", "c c #285077", "d c #274F76", "e c #9CB1D0", "f c #99AECD", "g c #8BA2C5", "h c #7691B5", "i c #51719A", "j c #1E466E", "k c #1F486F", "l c #8FA6C7", "m c #A3B6D5", "n c #91A8C9", "o c #7793B7", "p c #2F557D", "q c #6F8AAF", "r c #88A1C3", "s c #748FB4", "t c #A7BBD6", "u c #6A86AC", "v c #6885AC", "w c #AABEDA", "x c #738EB3", "y c #44678F", "z c #5A79A0", "A c #627EA6", "B c #607EA5", "C c #6E8AAF", "D c #3A5E86", "E c #4C6D95", "F c #507099", "G c #9AAECF", "H c #8098BC", "I c #31577F", "J c #466890", "K c #375C84", "L c #2A5178", "M c #2E547C", "N c #708BB1", "O c #40638A", "P c #2B5279", "Q c #43668E", "R c #204971", " ", " .+++ @#$% ", " .+&&*=-.;&>, ", " .+&')!~{]^/(_: ", " +&'<[}%|123456 ", " +&)78$;90(abcd ", " +#efgh@)~(ibjk ", " ]%h;lmno,_^p ", " {_qr)n~s't)u ", " lvus%0hs*[w*xy ", " )ozA..B@[[ #include #include #include "gdis.h" #include "coords.h" #include "model.h" #include "file.h" #include "parse.h" #include "matrix.h" #include "interface.h" #define DEBUG_MORE 0 #define MAX_KEYS 15 /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /****************************/ /* write a coordinate block */ /****************************/ gint write_arc_frame(FILE *fp, struct model_pak *model) { gint m, flag; gdouble x[3]; GSList *clist, *mlist; struct core_pak *core; struct mol_pak *mol; time_t t1; /* get & print the date (streamlined slightly by sxm) */ t1 = time(NULL); fprintf(fp,"!DATE %s",ctime(&t1)); if (model->periodic) { if (model->periodic == 2) { /* saving a surface as a 3D model - make depth large enough to fit everything */ fprintf(fp,"PBC %9.4f %9.4f %9.4f %9.4f %9.4f %9.4f (P1)\n", model->pbc[0], model->pbc[1], 2.0*model->rmax, 180.0*model->pbc[3]/PI, 180.0*model->pbc[4]/PI, 180.0*model->pbc[5]/PI); } else { fprintf(fp,"PBC %9.4f %9.4f %9.4f %9.4f %9.4f %9.4f (P1)\n", model->pbc[0], model->pbc[1], model->pbc[2], 180.0*model->pbc[3]/PI, 180.0*model->pbc[4]/PI, 180.0*model->pbc[5]/PI); } } m=0; for (mlist=model->moles ; mlist ; mlist=g_slist_next(mlist)) { mol = mlist->data; /* flag - atom written to file? (ie if UNDELETED) */ flag=0; /* m - number of atoms in molecule */ for (clist=mol->cores ; clist ; clist=g_slist_next(clist)) { core = clist->data; if (core->status & DELETED) continue; /* everything is cartesian after latmat mult */ ARR3SET(x, core->x); vecmat(model->latmat, x); /* unique molecule numbering for BIOSYM files (>0) */ if (core->atom_type) { fprintf(fp, "%-4s %14.9f %14.9f %14.9f CORE %-6d %-7s %-2s ", core->atom_label,x[0],x[1],x[2],m+1, core->atom_type, elements[core->atom_code].symbol); } else { fprintf(fp, "%-4s %14.9f %14.9f %14.9f CORE %-6d ? %-2s ", core->atom_label,x[0],x[1],x[2],m+1, elements[core->atom_code].symbol); } if (core->charge < 0.0) fprintf(fp, "%5.3f\n", core->charge); else fprintf(fp, " %4.3f\n", core->charge); /* indicate we've written at least one atom */ flag++; } /* if at least one atom in the molecule was written - inc mol numbering */ if (flag) { fprintf(fp,"end\n"); m++; } } fprintf(fp,"end\n"); return(0); } /***********************/ /* write biosym header */ /***********************/ gint write_arc_header(FILE *fp, struct model_pak *model) { /* print header */ fprintf(fp,"!BIOSYM archive 3\n"); if (model->periodic) fprintf(fp,"PBC=ON\n"); else fprintf(fp,"PBC=OFF\n"); gdis_blurb(fp); return(0); } /******************/ /* Biosym writing */ /******************/ gint write_arc(gchar *filename, struct model_pak *data) { FILE *fp; /* checks */ g_return_val_if_fail(data != NULL, 1); g_return_val_if_fail(filename != NULL, 2); /* open the file */ fp = fopen(filename, "wt"); if (!fp) return(3); /* TODO - write multiple frames if it has them */ write_arc_header(fp, data); write_arc_frame(fp, data); fclose(fp); return(0); } /****************************************************************/ /* determine if a BIOSYM fragment label was generated by MARVIN */ /****************************************************************/ gint is_marvin_label(const gchar *label) { if (label[0] != 'R' && label[0] != 'r') return(FALSE); if (!g_ascii_isdigit(label[1])) return(FALSE); if (label[2] != 'A' && label[2] != 'a' && label[2] != 'B' && label[2] != 'b') return(FALSE); if (label[3] != 'C' && label[3] != 'c' && label[3] != 'S' && label[3] != 's') return(FALSE); return(TRUE); } gint marvin_region(const gchar *label) { return(label[1] - '1'); } gint marvin_core(const gchar *label) { if (label[3] == 'C' || label[3] == 'c') return(TRUE); return(FALSE); } /*************************************************/ /* read a car/arc block into the model structure */ /*************************************************/ /* NB: assumes fp is at a !DATE line */ void read_arc_block(FILE *fp, struct model_pak *data) { gint region, core_flag, end_count, num_tokens; gchar **buff; GSList *clist, *slist; struct core_pak *core; struct shel_pak *shel; g_assert(fp != NULL); g_assert(data != NULL); /* FIXME - this breaks measurement updates */ /* free_core_list(data); */ /* init */ clist = data->cores; slist = data->shels; end_count=0; /* loop while there's data */ for (;;) { buff = get_tokenized_line(fp, &num_tokens); if (!buff) break; /* increment/reset end counter according to input line */ if (g_ascii_strncasecmp("end", *buff, 3) == 0) end_count++; else end_count = 0; /* skip single end, terminate on double end */ if (end_count == 1) { g_strfreev(buff); continue; } if (end_count == 2) break; /* cell dimension search */ if (g_ascii_strncasecmp("pbc", *buff, 3) == 0) { if (num_tokens > 6) { data->pbc[0] = str_to_float(*(buff+1)); data->pbc[1] = str_to_float(*(buff+2)); data->pbc[2] = str_to_float(*(buff+3)); data->pbc[3] = PI*str_to_float(*(buff+4))/180.0; data->pbc[4] = PI*str_to_float(*(buff+5))/180.0; data->pbc[5] = PI*str_to_float(*(buff+6))/180.0; /* implicit 2D */ if (data->pbc[2] == 0) { data->pbc[2] = 1.0; data->pbc[3] = 0.5*PI; data->pbc[4] = 0.5*PI; data->periodic = 2; } } else if (num_tokens > 3) { data->pbc[0] = str_to_float(*(buff+1)); data->pbc[1] = str_to_float(*(buff+2)); data->pbc[5] = PI*str_to_float(*(buff+3))/180.0; } g_strfreev(buff); continue; } /* process a single coord line */ if (num_tokens < 8) { gui_text_show(ERROR, "unexpected end of file reading arc file\n"); g_strfreev(buff); return; } /* process core/shell candidates */ if (num_tokens > 8) if (elem_symbol_test(*(buff+7))) { core_flag=TRUE; region = 0; /* MARVIN core/shell/region parse */ if (is_marvin_label(*(buff+4))) { if (!marvin_core(*(buff+4))) core_flag = FALSE; region = marvin_region(*(buff+4)); data->region_empty[region] = FALSE; } /* overwrite existing core (if any) */ if (core_flag) { if (clist) { core = clist->data; clist = g_slist_next(clist); } else { /* otherwise, add a new core */ /* NB: must append (not prepend) since we may overwrite & the order must be the same */ /* TODO - we could prepend cores (it's faster) and then reverse the list at the end */ /* but it's more complicated as we should ONLY reverse newly added cores */ core = new_core(*(buff+7), data); data->cores = g_slist_append(data->cores, core); } /* set the proper label */ g_free(core->atom_label); core->atom_label = g_strdup(*buff); /* set values */ core->x[0] = str_to_float(*(buff+1)); core->x[1] = str_to_float(*(buff+2)); core->x[2] = str_to_float(*(buff+3)); core->charge = str_to_float(*(buff+8)); g_free(core->atom_type); core->atom_type = g_strdup(*(buff+6)); core->region = region; core->lookup_charge = FALSE; } else { /* overwrite existing shell (if any) */ if (slist) { shel = slist->data; slist = g_slist_next(slist); } else { /* otherwise, add a new shell */ shel = new_shell(*(buff+7), data); data->shels = g_slist_append(data->shels, shel); } /* set the proper label */ g_free(shel->shell_label); shel->shell_label = g_strdup(*buff); /* set values */ shel->x[0] = str_to_float(*(buff+1)); shel->x[1] = str_to_float(*(buff+2)); shel->x[2] = str_to_float(*(buff+3)); shel->charge = str_to_float(*(buff+8)); shel->region = region; shel->lookup_charge = FALSE; } } g_strfreev(buff); } /* convert input cartesian coords to fractional */ if( data->periodic) { matrix_lattice_init(data); coords_make_fractional(data); } data->fractional = TRUE; g_strfreev(buff); } /*********************/ /* biosym frame read */ /*********************/ gint read_arc_frame(FILE *fp, struct model_pak *data) { /* frame overwrite */ read_arc_block(fp, data); return(0); } /******************/ /* Biosym reading */ /******************/ gint read_arc(gchar *filename, struct model_pak *data) { gint frame=0, num_tokens; gchar **buff; FILE *fp; /* checks */ g_return_val_if_fail(data != NULL, 1); g_return_val_if_fail(filename != NULL, 2); /* NEW - under windows, must be "rb" instead of "rt" - even though it's a text file */ fp = fopen(filename, "rb"); if (!fp) return(3); /* loop while there's data */ for (;;) { buff = get_tokenized_line(fp, &num_tokens); if (!buff) { g_strfreev(buff); break; } /* pbc on/off search */ if (g_ascii_strncasecmp("pbc=on", *buff, 6) == 0) data->periodic = 3; else if (g_ascii_strncasecmp("pbc=off", *buff, 7) == 0) data->periodic = 0; else if (g_ascii_strncasecmp("pbc=2d", *buff, 6) == 0) data->periodic = 2; /* coords search */ if (g_ascii_strncasecmp("!date", *buff, 5) == 0) { /* NEW */ add_frame_offset(fp, data); /* only load the required frame */ if (frame == data->cur_frame) read_arc_block(fp, data); /* increment counter */ frame++; } g_strfreev(buff); } /* got everything */ data->num_frames = frame; /* get rid of frame list if only one frame */ if (data->num_frames == 1) { free_list(data->frame_list); data->frame_list = NULL; } /* model setup */ strcpy(data->filename, filename); g_free(data->basename); data->basename = parse_strip(filename); model_prep(data); return(0); } gdis-0.90/scan.h0000644000175000017500000000221310445461565012133 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ /**************/ /* prototypes */ /**************/ gpointer scan_new(gchar *); void scan_free(gpointer); gboolean scan_complete(gpointer); gchar *scan_get_line(gpointer); gchar *scan_cur_line(gpointer); gchar **scan_get_tokens(gpointer, gint *); gboolean scan_put_line(gpointer); gpointer scan_offset_get(gpointer); void scan_frame_new(gpointer, struct model_pak *); gdis-0.90/cell.xpm0000644000175000017500000000063710063272635012505 0ustar seansean/* XPM */ static char * cell_xpm[] = { "16 16 3 1", " c None", ". c #353535", "+ c #1C1C1C", " ", " ", " . . . . . . . ", " ", " . . . ", " ", " . . . ", " ", " +++++++ . . . ", " + + ", " + + . ", " + + ", " + + . ", " + + ", " +++++++ . . . ", " "}; gdis-0.90/library.h0000644000175000017500000000177310445461564012664 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ struct folder_pak { GSList *list; }; struct entry_pak { gpointer offset; gchar *name; GString *info; }; void library_init(void); gint library_entry_get(gpointer, struct model_pak *); void gui_library_window(GtkWidget *); gdis-0.90/count.h0000644000175000017500000000225611007463174012337 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ struct count_pak { /* physical extents */ gdouble start; gdouble stop; gdouble step; /* discrete count data */ gint size; gint *bins; }; gpointer count_new(gdouble, gdouble, gdouble); void count_free(gpointer); void count_stats(gpointer); gint *count_bins(gpointer); gint count_size(gpointer); gdouble count_stop(gpointer); gint count_insert(gdouble, gpointer); void count_add(gpointer, gpointer); gdis-0.90/axes.xpm0000644000175000017500000000067510063256626012532 0ustar seansean/* XPM */ static char * axes_xpm[] = { "16 16 5 1", " c None", ". c #2B2B2B", "+ c #282727", "@ c #292828", "# c #2E2D2D", " . ", " . ", " ... ", " ... ", " . ", " + ", " + ", " + ", " + ", " @ .. ", " @@++++#....", " @ .. ", " .. ", " ... ", " .. ", ". "}; gdis-0.90/element.xpm0000644000175000017500000000066110116014317013202 0ustar seansean/* XPM */ static char * element_xpm[] = { "16 16 4 1", " c None", ". c #7B8C96", "+ c #5F6D75", "@ c #FFFFFF", " ", " ............ ", " .............. ", " .+@........... ", " .+@++++.++++.. ", " .+@+@@+.+@@+.. ", " ...+@@+.+@@+.. ", " ...+@@+++@@+.. ", " ...+@@@@@@@+.. ", " ...+@@@@@@@+.. ", " ...+@@+++@@+.. ", " ...+@@+.+@@+.. ", " ...+@@+.+@@+.. ", " ...++++.++++.. ", " ............ ", " "}; gdis-0.90/diamond2.xpm0000644000175000017500000000452407717054756013300 0ustar seansean/* XPM */ static char * diamond2_xpm[] = { "17 18 103 2", " c None", ". c #5BA9A9", "+ c #459292", "@ c #5AA9A9", "# c #D3F9F9", "$ c #428C8C", "% c #4DA0A0", "& c #5BACAC", "* c #D0F7F7", "= c #D5FAFA", "- c #3E8484", "; c #4E9D9D", "> c #51A5A5", ", c #78C0C0", "' c #CBFCFC", ") c #377777", "! c #438E8E", "~ c #4FA4A4", "{ c #4EA2A2", "] c #68C0C0", "^ c #9CEFEF", "/ c #3A7D7D", "( c #408888", "_ c #50A1A1", ": c #58B4B4", "< c #54B0B0", "[ c #69C1C1", "} c #A9FEFE", "| c #F7FFFF", "1 c #3C7F7F", "2 c #387979", "3 c #4D9999", "4 c #52A1A1", "5 c #5CBABA", "6 c #56B5B5", "7 c #AAFFFF", "8 c #D7FFFF", "9 c #DDFFFF", "0 c #F3FFFF", "a c #295B5B", "b c #3A7B7B", "c c #3D8282", "d c #4F9999", "e c #5AB4B4", "f c #61C8C8", "g c #9CF9F9", "h c #B1FBFB", "i c #D1FBFB", "j c #CCF5F5", "k c #1E4545", "l c #224C4C", "m c #295151", "n c #396B6B", "o c #3A7878", "p c #3F8181", "q c #387474", "r c #448585", "s c #58A4A4", "t c #569E9E", "u c #57A4A4", "v c #56A2A2", "w c #62B4B4", "x c #78D1D1", "y c #79D2D2", "z c #1B4242", "A c #294A4A", "B c #224343", "C c #254747", "D c #204242", "E c #285555", "F c #438686", "G c #4B9191", "H c #5AAFAF", "I c #5FC1C1", "J c #64C4C4", "K c #81D6D6", "L c #204343", "M c #4A9191", "N c #5DB2B2", "O c #61BDBD", "P c #5DBABA", "Q c #7BD2D2", "R c #274848", "S c #1F4141", "T c #265353", "U c #499090", "V c #58ADAD", "W c #66CDCD", "X c #80D5D5", "Y c #1E3F3F", "Z c #183B3B", "` c #234C4C", " . c #478D8D", ".. c #60BFBF", "+. c #76D2D2", "@. c #183939", "#. c #1B3F3F", "$. c #255151", "%. c #52A2A2", "&. c #6DD0D0", "*. c #204848", "=. c #427E7E", "-. c #254F4F", " ", " . ", " + @ # ", " $ % & * = ", " - ; > , ' = = ", " ) ! ~ { ] ^ = = = ", " / ( _ : < [ } = | = = ", " 1 2 3 4 5 6 [ 7 8 9 0 = = ", " a b c d e f 6 [ g h i j # = = ", " k l m n o p q r s t u v w x y ", " z A A B C D E F G H I J K ", " A A A A L E M N O P Q ", " A A R S T U V W X ", " A Y Z ` ...+. ", " @.#.$.%.&. ", " @.*.=. ", " -. ", " "}; gdis-0.90/test.c0000644000175000017500000001103311063452662012154 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include "gdis.h" #include "grid.h" #include "parse.h" #ifdef WITH_GRISU #include "grisu_client.h" #endif /************************************************/ /* print list consisting of pointers to strings */ /************************************************/ void test_print_text_list(GSList *list) { GSList *item; for (item=list ; item ; item=g_slist_next(item)) { printf("[%s]\n", (gchar *) item->data); } } /*******************************/ /* run tests on grisu WS calls */ /*******************************/ void test_grisu(void) { #ifdef WITH_GRISU gint passed=0, total=0; GSList *list; gchar *password, *name; gchar *contents; gsize length; gchar *username, buff[999]; gchar *dir; printf("testing grisu ...\n"); grisu_job_names(); //printf("\nTEST - EXPERIMENTAL\n"); //grisu_df(); //grisu_file_list("gsiftp://ngdata.ivec.org/store/ng03/grid-admin/C_AU_O_APACGrid_OU_iVEC_CN_Sean_Fleming/"); /* NEW - uploading & downloading works */ /* TODO - stress testing / binary content */ //grisu_file_download("gsiftp://ngdata.ivec.org/store/ng03/grid-admin/C_AU_O_APACGrid_OU_iVEC_CN_Sean_Fleming/gibb_best3.got", "/home/sean/prog/gdis/gotcha.got"); //grisu_file_upload("/home/sean/prog/gdis/gdis_manual.txt", "gsiftp://ngdata.ivec.org/store/ng03/grid-admin/C_AU_O_APACGrid_OU_iVEC_CN_Sean_Fleming/upload.txt"); //grisu_file_download("gsiftp://ngdata.ivec.org/store/ng03/grid-admin/C_AU_O_APACGrid_OU_iVEC_CN_Sean_Fleming/upload.txt", "TODO_use_this"); /* printf("URL for directory listing: "); if (fgets(buff, sizeof(buff), stdin) != NULL) dir = parse_strip_newline(buff); else { printf("Input error.\n"); return; } grisu_file_list(dir); */ /* NEW - job submission now works!!! */ /* if (g_file_get_contents("test.xml", &contents, &length, NULL)) { grisu_auth_set(TRUE); name = grisu_job_submit(contents); } else { printf("Failed to open sample job description XML file in cwd.\n"); name = NULL; } if (name) printf("submitted [%s] : success!\n", name); else printf("failed.\n"); grisu_ps(); */ return; grisu_auth_set(FALSE); total++; printf("\nTEST 1 - Submit location query (no auth)\n"); list = grisu_submit_find("mrbayes"); if (list) { test_print_text_list(list); passed++; } total++; printf("\nTEST 2 - Submit location query (with auth)\n"); grisu_auth_set(TRUE); list = grisu_submit_find("mrbayes"); if (list) { test_print_text_list(list); passed++; } total++; printf("\nTEST 3 - Retrieve available VOs\n"); grisu_auth_set(TRUE); list = grisu_fqans_get(); if (list) { test_print_text_list(list); passed++; } /* TODO - upload/download file */ /* grisu_auth_set(TRUE); name = grisu_job_submit("rubbish"); */ /* grisu_auth_set(TRUE); grisu_absolute_job_dir("gok", "ng2.ivec.org", "/ARCS/Startup"); */ /* TODO - submit job */ /* grisu_upload("home/sean/prog/gdis/README.grisu", "grisu-jobs-dir/gok/test.txt"); */ printf("grisu tests passed: %d/%d\n", passed, total); #else printf("grisu component not compiled.\n"); #endif } void test_run(gchar *name) { #ifdef WITH_GRISU if (g_ascii_strncasecmp(name, "gri", 3) == 0) { /* DEBUG - re-use existing (already uploaded) proxy */ /* printf("Enter your MYPROXY credential username: "); if (fgets(buff, sizeof(buff), stdin) != NULL) { username = parse_strip_newline(buff); } else { printf("Input error.\n"); return; } printf("Enter your MYPROXY credential password: "); password = parse_getline_hidden(); grisu_keypair_set(username, password); */ grisu_keypair_set("someguy", "qetuo135"); grid_setup(); /* cmd line prompt for passwd ... */ /* printf("Please enter your GRID passphrase: "); password = parse_getline_hidden(); grisu_keypair_set(NULL, password); grid_connect(GRID_LOCALPROXY); g_free(password); */ test_grisu(); grisu_stop(); } #endif } gdis-0.90/file_bgf.c0000644000175000017500000002236610600706735012744 0ustar seansean/* Copyright (C) 2005 by Menno Deij m.deij@science.ru.nl This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include "gdis.h" #include "coords.h" #include "model.h" #include "file.h" #include "parse.h" #include "scan.h" #include "matrix.h" #include "interface.h" #include "numeric.h" /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /* The BGF file type is the main file type for using GULP with the Dreiding force field. As OpenBabel can convert XYZ files to BGF files, this format is used to get both Dreiding atom types and Gasteiger charges. See also type.c for the typing routine */ /****************/ /* file writing */ /****************/ gint write_bgf(gchar *filename, struct model_pak *data) { GSList *core_iter, *bond_iter; FILE *fp; gint n = 0, nr_bonds = 0, bond_order; struct core_pak *core; struct bond_pak *bond; /* checks and open file */ g_return_val_if_fail(data != NULL, 1); fp = fopen(filename, "wt"); g_return_val_if_fail(fp != NULL, 2); fprintf(fp, "BIOGRF 200\n"); fprintf(fp, "DESCRP %s\n", data->title); fprintf(fp, "REMARK BGF file created by GDIS v%3.2f\n", VERSION); fprintf(fp, "FORCEFIELD DREIDING \n"); fprintf(fp, "FORMAT ATOM (a6,1x,i5,1x,a5,1x,a3,1x,a1,1x,a5,3f10.5,1x,a5,i3,i2,1x,f8.5)\n"); for (core_iter = data->cores; core_iter; core_iter = core_iter->next) { core = core_iter->data; /* replace any H_n GULP types back to H_ DREIDING type * NB. when the atom_type is not specified, this gives errors and all types are H_!*/ if (core->atom_type == NULL) core->atom_type = g_strdup("UNK"); if (g_ascii_strcasecmp(core->atom_type, "H_n") == 0) { g_free(core->atom_type); core->atom_type = g_strdup("H_"); } fprintf(fp, "HETATM%6i %-6sRES A 444 % 3.4f % 3.4f % 3.4f %-4s 3 0 % 3.5f\n", ++n, core->atom_label, core->x[0], core->x[1], core->x[2], core->atom_type, core->charge); } /* FORMAT CONECT (a6,12i6) CONECT 1 5 25 2 ORDER 1 2 1 1 */ fprintf(fp, "FORMAT CONECT (a6,12i6)\n\n"); for (n = 1, core_iter = data->cores; core_iter; core_iter = core_iter->next, ++n) { core = core_iter->data; /* n counts the number of bonds */ nr_bonds = g_slist_length(core->bonds); if (nr_bonds > 0) { fprintf(fp, "CONECT%6i", n); for (bond_iter = core->bonds; bond_iter; bond_iter = bond_iter->next) { bond = bond_iter->data; fprintf(fp, "%6i", g_slist_index(data->cores, (bond->atom2 == core) ? bond->atom1 : bond->atom2) + 1); } fprintf(fp, "\nORDER %6i", n); for (bond_iter = core->bonds; bond_iter; bond_iter = bond_iter->next) { bond = bond_iter->data; bond_order = 1; bond_order = (bond->type == BOND_DOUBLE) ? 2 : ( (bond->type == BOND_TRIPLE) ? 3 : 1); fprintf(fp, "%6i", bond_order); } fprintf(fp, "\n"); } } fprintf(fp, "END\n"); fclose(fp); return(0); } void species_line_from_hash_table(gpointer key, gpointer value, gpointer user_data) { gchar *atom_type = (gchar *)key; gchar *atom_label = (gchar *)value; gchar **species_string = (gchar **)user_data; gchar *species_line = g_strdup_printf("%s 0.00000 %s", atom_label, atom_type); *species_string = g_strjoin("\n", *species_string, species_line, NULL); g_free(species_line); } /****************/ /* file reading */ /****************/ gint read_bgf(gchar *filename, struct model_pak *data) { gint n=0, w, i, num_tokens; gchar **buff, **buff2, line[LINELEN]; struct core_pak *core, *core_bond_to; GHashTable * atom_types_and_labels = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free); FILE *fp; /* checks */ g_return_val_if_fail(data != NULL, 1); g_return_val_if_fail(filename != NULL, 1); fp = fopen(filename, "rt"); if (!fp) return(1); /* old checks ... really necessary??? */ /* if (g_ascii_strcasecmp("BIOGRF 200", line) != 0) { gui_text_show(ERROR, "Not a valid Biograf 200 file.\n"); return(1); if (g_ascii_strcasecmp("FORMAT ATOM (a6,1x,i5,1x,a5,1x,a3,1x,a1,1x,a5,3f10.5,1x,a5,i3,i2,1x,f8.5)", line) != 0) { gui_text_show(ERROR, "Unexpected atom format in Biograf file. Unable to continue.\n"); return(2); } */ /* NEW - process (non-atom) header lines */ do { if (fgetline(fp, line)) { printf("Error: premature EOF\n"); return(2); } } while (g_ascii_strncasecmp(line, "HETATM", 6) != 0); /* all the next lines that start with HETATM are atom specifications */ buff = tokenize(line, &num_tokens); while(g_ascii_strcasecmp("HETATM", *(buff)) == 0) { /* copy the first two characters */ gchar *core_name = g_strndup(*(buff+2), 2); if (g_ascii_isdigit(core_name[1])) { g_free(core_name); core_name = g_strndup(*(buff+2), 1); } core = core_new(core_name, NULL, data); g_free(core_name); g_free(core->atom_type); core->atom_type = g_strdup(*(buff+9)); /* default: all hydrogens can form hydrogen bonds, now with type information only H_HB types can */ if (g_ascii_strcasecmp("H_HB", core->atom_type) != 0) { core->hydrogen_bond = FALSE; } /* Replace the 'normal' hydrogen type H_ by H_n for GULP/Dreiding */ if (g_ascii_strcasecmp("H_", core->atom_type) == 0) { g_free(core->atom_type); core->atom_type = g_strdup("H_n"); } g_free(core->atom_label); core->atom_label = NULL; /* lookup the atom type in the hash table */ core->atom_label = g_strdup(g_hash_table_lookup(atom_types_and_labels, core->atom_type)); /* if it's not found, than put the atom type (key) and the atom label (value) in the hash map */ if (!core->atom_label) { g_hash_table_replace(atom_types_and_labels, g_strdup(core->atom_type), g_strdup(*(buff+2))); core->atom_label = g_strdup(*(buff+2)); } /* use list appending, rather than prepending to get the right order in the list with respect to the atom_label */ data->cores = g_slist_append(data->cores, core); core->x[0] = str_to_float(*(buff+6)); core->x[1] = str_to_float(*(buff+7)); core->x[2] = str_to_float(*(buff+8)); /* the charge, based on Gasteiger is given as well */ core->charge = str_to_float(*(buff+12)); core->lookup_charge = FALSE; /* get the next line */ g_strfreev(buff); buff = get_tokenized_line(fp, &num_tokens); } g_strfreev(buff); /* FIXME - this isn't working - most likely because model_prep() hasn't been done yet */ #define DO_BGF_CONNECT 0 #if DO_BGF_CONNECT /* one empty line */ fgetline(fp, line); /* next up is the bonding information it is formatted as FORMAT CONECT (a6,12i6) which means that up to twelve bonds can be accomodated for */ /* CONECT record */ buff = get_tokenized_line(fp, &num_tokens); /* ORDER record */ buff2 = get_tokenized_line(fp, &num_tokens); while (g_ascii_strcasecmp(*(buff+0), "CONECT") == 0) { w = g_ascii_strtoull(*(buff+1), NULL, 10); core = g_slist_nth_data(data->cores, w - 1); for (i = 1; i < num_tokens - 1; ++i) { w = g_ascii_strtoull(*(buff + i + 1), NULL, 10); core_bond_to = g_slist_nth_data(data->cores, w - 1); w = g_ascii_strtoull(*(buff2 + i + 1), NULL, 10); w = ( (w == 1) ? BOND_SINGLE : ( (w == 2) ? BOND_DOUBLE : BOND_TRIPLE)); connect_user_bond(core, core_bond_to, w, data); } /* free the strings before getting a new tokenized line */ g_strfreev(buff); g_strfreev(buff2); buff = get_tokenized_line(fp, &num_tokens); buff2 = get_tokenized_line(fp, &num_tokens); } /* allocate 25 characters for each species line, that should be enough */ gchar * species_string = g_new(gchar, g_hash_table_size(atom_types_and_labels) * 25 ); /* get all species from the hash table */ g_hash_table_foreach(atom_types_and_labels, species_line_from_hash_table, &species_string); if (data->gulp.species) g_free(data->gulp.species); data->gulp.species = species_string; /* all contained keys and values will be destroyed as well, because of the g_hash_table_new_full init function */ g_hash_table_destroy(atom_types_and_labels); #endif /* got everything */ data->num_asym = data->num_atoms = n; /* model setup */ strcpy(data->filename, filename); g_free(data->basename); data->basename = parse_strip(filename); model_prep(data); fclose(fp); return (0); } gdis-0.90/model.h0000644000175000017500000000267110556033543012311 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ struct model_pak *model_new(void); void model_init(struct model_pak *); gint model_prep(struct model_pak *); void model_free(struct model_pak *); void model_delete(struct model_pak *); gpointer model_dup(struct model_pak *); void model_content_refresh(struct model_pak *); void property_free(gpointer); void property_add_ranked(guint, const gchar *, const gchar *, struct model_pak *); guint property_rank(gpointer); gchar *property_label(gpointer); gchar *property_value(gpointer); gchar *property_lookup(gchar *, struct model_pak *); void gulp_init(gpointer); void gamess_init(gpointer); gdis-0.90/file_cssr.c0000644000175000017500000002562210600706735013156 0ustar seansean/* Copyright (C) 2000 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include "gdis.h" #include "coords.h" #include "model.h" #include "file.h" #include "matrix.h" #include "interface.h" #include "parse.h" /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /**********************/ /* save in CSSR format */ /**********************/ gint write_cssr(gchar *filename, struct model_pak *data) { gint i; gchar *label; gdouble vec[3], charge; GSList *list; FILE *fp; struct core_pak *core; /* checks */ g_return_val_if_fail(data != NULL, 1); g_return_val_if_fail(filename != NULL, 2); /* open the file */ fp = fopen(filename,"w"); if (!fp) { gui_text_show(ERROR, "Bad filename!\n"); return(1); } if( data->periodic == 2 ) { gui_text_show(ERROR, "Cannot save surface structure!\n"); return(1); } if( data->num_atoms > 9999) puts("Too many atoms for CSSR format: no save"); else gui_text_show(STANDARD, "Saving file in CSSR format!\n"); /* header */ if (data->periodic == 3) { /* Match sginfo list order with cssr options */ if( data->sginfo.spacenum == 9 || data->sginfo.spacenum == 15) { if( data->sginfo.cellchoice > 3 && data->sginfo.cellchoice < 7 ) data->sginfo.cellchoice += 6; else if( data->sginfo.cellchoice > 6 && data->sginfo.cellchoice < 10 ) data->sginfo.cellchoice -= 3; else if( data->sginfo.cellchoice > 9 && data->sginfo.cellchoice < 13 ) data->sginfo.cellchoice += 3; else if( data->sginfo.cellchoice > 12 && data->sginfo.cellchoice < 16 ) data->sginfo.cellchoice -= 6; } if( data->sginfo.spacename) label = g_strdup(data->sginfo.spacename); else label = g_strdup(""); fprintf(fp,"%38c %7.3f %7.3f %7.3f\n",' ',data->pbc[0],data->pbc[1],data->pbc[2]); fprintf(fp,"%21c %7.3f %7.3f %7.3f SPGR =%3d %-11s", ' ',R2D*data->pbc[3], R2D*data->pbc[4], R2D*data->pbc[5],data->sginfo.spacenum, label); i=0; if( data->sginfo.cellchoice > 0 ) fprintf(fp," OPT = %d",data->sginfo.cellchoice); fprintf(fp,"\n"); } else { fprintf(fp,"\n\n"); i=1; } fprintf(fp,"%4d %d Created by GDIS\n", data->num_asym, i); fprintf(fp,"\n"); /* coords */ i=0; for (list=data->cores ; list ; list=g_slist_next(list)) { core = (struct core_pak *) list->data; if (core->status & DELETED) continue; if (core->primary) { /* retrieve */ ARR3SET(vec, core->x); i++; charge = atom_charge(core); /* transformation needed? */ fprintf(fp,"%4d %-4s %9.5f %9.5f %9.5f", i, core->atom_label, vec[0], vec[1], vec[2]); fprintf(fp," 0 0 0 0 0 0 0 0 %7.3f\n", charge); } } /* done */ fclose(fp); return(0); } /****************/ /* read routine */ /****************/ #define DEBUG_READ_CSSR 0 gint read_cssr(gchar *filename, struct model_pak *data) { gint n=0, num_tokens, sgopt; gchar **buff, line[LINELEN]; gchar *spacename; struct core_pak *core; FILE *fp; /* checks */ g_return_val_if_fail(data != NULL, 1); g_return_val_if_fail(filename != NULL, 1); fp = fopen(filename, "rt"); if (!fp) return(1); /* periodicity search */ fgetline(fp, line); g_strstrip(line); if (g_ascii_strcasecmp("", line) != 0) { buff = tokenize(line+38, &num_tokens); if (num_tokens == 3 ) data->periodic = 3; data->pbc[0] = str_to_float(*(buff)); data->pbc[1] = str_to_float(*(buff+1)); data->pbc[2] = str_to_float(*(buff+2)); g_strfreev(buff); } else data->periodic = 0; fgetline(fp, line); if (g_ascii_strcasecmp("", line) != 0) { /* seek space group label */ if( data->periodic ) { spacename = g_strdup(""); if( sscanf(line+23,"%lf%8lf%8lf SPGR =%3d %11[a-zA-Z0-9-/ ] OPT =%2d", &data->pbc[3], &data->pbc[4], &data->pbc[5], &data->sginfo.spacenum, spacename, &data->sginfo.cellchoice) < 4) printf("Error reading cssr file %s\n", filename); data->pbc[3] *= D2R; data->pbc[4] *= D2R; data->pbc[5] *= D2R; g_strstrip(spacename); data->sginfo.spacename = g_strdup(spacename); } /* If no space group given, or unrecognizable, use number */ if( !data->sginfo.spacename || g_ascii_strcasecmp("",data->sginfo.spacename) == 0) { if( data->sginfo.spacenum > 1) { g_free(data->sginfo.spacename); data->sginfo.spacename = g_strdup_printf("%d",data->sginfo.spacenum); } else data->sginfo.spacename = g_strdup("P 1"); } if( data->sginfo.cellchoice > 1) { /* Convert cssr options to axis choice for simple cases */ if( data->sginfo.spacenum == 3 || data->sginfo.spacenum == 4 || data->sginfo.spacenum == 6 || data->sginfo.spacenum == 10 || data->sginfo.spacenum == 11 ) { switch( data->sginfo.cellchoice ) { case 1: data->sginfo.spacename = g_strconcat(data->sginfo.spacename, ":b", NULL); break; case 2: data->sginfo.spacename = g_strconcat(data->sginfo.spacename, ":c", NULL); break; case 3: data->sginfo.spacename = g_strconcat(data->sginfo.spacename, ":a", NULL); break; } } /* Convert cssr options to axis choice and origin choice for other cases */ else if( data->sginfo.spacenum == 5 || data->sginfo.spacenum == 7 || data->sginfo.spacenum == 8 || data->sginfo.spacenum == 12 || data->sginfo.spacenum == 13 || data->sginfo.spacenum == 14 ) { if( data->sginfo.cellchoice < 4) data->sginfo.spacename = g_strconcat(data->sginfo.spacename,":b", NULL); else if( data->sginfo.cellchoice > 3 && data->sginfo.cellchoice < 7) data->sginfo.spacename = g_strconcat(data->sginfo.spacename,":c", NULL); else if( data->sginfo.cellchoice > 6 && data->sginfo.cellchoice < 10) data->sginfo.spacename = g_strconcat(data->sginfo.spacename,":a", NULL); sgopt = data->sginfo.cellchoice % 3; if(!sgopt) sgopt = 3; sprintf(data->sginfo.spacename, "%s%d", data->sginfo.spacename, sgopt); } /* Match cssr options to sginfo name for two special cases */ else if( data->sginfo.spacenum == 9 || data->sginfo.spacenum == 15) { if( data->sginfo.cellchoice < 4) data->sginfo.spacename = g_strconcat(data->sginfo.spacename,":b", NULL); else if( data->sginfo.cellchoice > 3 && data->sginfo.cellchoice < 7) data->sginfo.spacename = g_strconcat(data->sginfo.spacename,":c", NULL); else if( data->sginfo.cellchoice > 6 && data->sginfo.cellchoice < 10) data->sginfo.spacename = g_strconcat(data->sginfo.spacename,":a", NULL); else if( data->sginfo.cellchoice > 9 && data->sginfo.cellchoice < 13) data->sginfo.spacename = g_strconcat(data->sginfo.spacename,":-b", NULL); else if( data->sginfo.cellchoice > 12 && data->sginfo.cellchoice < 16) data->sginfo.spacename = g_strconcat(data->sginfo.spacename,":-c", NULL); else if( data->sginfo.cellchoice > 15 && data->sginfo.cellchoice < 19) data->sginfo.spacename = g_strconcat(data->sginfo.spacename,":-a", NULL); sgopt = data->sginfo.cellchoice % 3; if(!sgopt) sgopt = 3; sprintf(data->sginfo.spacename, "%s%d", data->sginfo.spacename, sgopt); } /* Adjust options to match name for SGs 50, 59, 68 */ else if( data->sginfo.spacenum == 50 || data->sginfo.spacenum == 59 || data->sginfo.spacenum == 68 ) { if( data->sginfo.cellchoice % 2 == 0) data->sginfo.spacename = g_strconcat(data->sginfo.spacename, ":2", NULL); } /* Rhombohedral space groups */ else if((data->sginfo.spacenum == 146 || data->sginfo.spacenum == 148 || data->sginfo.spacenum == 155 || data->sginfo.spacenum == 160 || data->sginfo.spacenum == 161 || data->sginfo.spacenum == 166 || data->sginfo.spacenum == 167) && data->sginfo.cellchoice > 1 ) data->sginfo.spacename = g_strconcat(data->sginfo.spacename, ":r", NULL); /* Groups with possible alternative origins */ else if( data->sginfo.spacenum == 70 || (data->sginfo.spacenum > 84 && data->sginfo.spacenum < 143) || data->sginfo.spacenum > 201) sprintf(data->sginfo.spacename, "%s:%d", data->sginfo.spacename, data->sginfo.cellchoice); } #if DEBUG_READ_CSSR printf("Space group %d:%d %s\n",data->sginfo.spacenum, data->sginfo.cellchoice, data->sginfo.spacename); #endif } else if( data->periodic == 3 ) { gui_text_show(ERROR, "Incorrect format for CSSR file\n"); fclose(fp); return(1); } buff = get_tokenized_line(fp, &num_tokens); if (g_ascii_strncasecmp("0", *(buff+1), 1) == 0 ) data->fractional = TRUE; else data->fractional = FALSE; g_strfreev(buff); /* coordinate search */ for (;;) { buff = get_tokenized_line(fp, &num_tokens); if (!buff) break; if (num_tokens > 4) { /* add new atom if first item is a valid atom type */ if (elem_symbol_test(*(buff+1))) { core = new_core(*(buff+1), data); data->cores = g_slist_prepend(data->cores, core); core->x[0] = str_to_float(*(buff+2)); core->x[1] = str_to_float(*(buff+3)); core->x[2] = str_to_float(*(buff+4)); if (num_tokens > 12) { core->charge = str_to_float(*(buff+13)); core->lookup_charge = FALSE; } #if DEBUG_READ_CSSR printf("Atom %d %f %f %f Charge %f\n",n, core->x[0], core->x[1], core->x[2], core->charge); #endif n++; } } g_strfreev(buff); } /* got everything */ data->num_asym = data->num_atoms = n; #if DEBUG_READ_CSSR printf("Found %d atoms.\n", n); #endif /* model setup */ strcpy(data->filename, filename); g_free(data->basename); data->basename = parse_strip(filename); model_prep(data); fclose(fp); return(0); } gdis-0.90/coords.h0000644000175000017500000001760311035034367012501 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ /*******************************/ /* model sub-structure (atoms) */ /*******************************/ struct core_pak { /* identifiers */ gint atom_code; guint atom_order; gchar *atom_label; /* NEW - replacement for label[] */ gchar *atom_type; /* NEW - FF type */ /*VZ*/ gdouble atom_nmr_shift;//isotropic shift gdouble atom_nmr_aniso;//CSA anisotropy gdouble atom_nmr_asym;//CSA assymetry gdouble atom_nmr_cq;//EFG Cq gdouble atom_nmr_efgasym;//EFG assymetry /* TODO - data structure that contains res_name and res_no and each atom points to this */ gchar *res_name; /* NEW - residue name */ gint res_no; /* NEW - residue number */ gchar *chain; /* NEW - chaincw name */ /* flags */ gint status; gint primary; /* one of the initial atoms? */ gint orig; /* original atom? (ie part of whole unit cell) */ gint ghost; /* QM ghost atom */ gint breathe; gint growth; /* growth slice */ gint translate; /* translation marker */ gint render_mode; /* render type */ gint render_wire; /* render as wire-frame */ /* connectivity data */ gint molecule; GSList *bonds; struct shel_pak *shell; struct mol_pak *mol; /* symmetry related core (if non primary) */ struct core_pak *primary_core; /* region type */ gint region; /* coordinate data, fractional or cartesian (inhomogeneous) */ gdouble x[4]; /* rotated cartesian (inhomogeneous) */ gdouble rx[4]; /* velocities */ gdouble v[3]; /* vibration vector lists */ GSList *vibx_list; GSList *viby_list; GSList *vibz_list; /* NEW: is a hydrogen capable of forming a h-bond instead of connecting all hydrogens within a cut-off distance to acceptor atoms, only connect them if this flag is true */ gboolean hydrogen_bond; /* bonding cutoff */ gdouble bond_cutoff; /* site occupancy factor */ gint has_sof; gdouble sof; /* breathing radius */ gdouble radius; /* charge info */ gint lookup_charge; gdouble charge; /* fitting flags */ gchar *flags; /* display data */ gdouble colour[4]; gdouble offset[3]; }; /********************************/ /* model sub-structure (shells) */ /********************************/ struct shel_pak { /* identifiers */ gchar *shell_label; /* gchar element[ELEM_LABEL_SIZE]; */ /* flags */ gint atom_code; /* atom type of the shell */ gint status; /* normal, deleted, highlighted etc. */ gint primary; /* one of the initial atoms? */ gint orig; /* original atom? (ie part of whole unit cell) */ gint breathe; gint translate; /* translation marker */ /* associated core (if any) */ struct core_pak *core; /* symmetry related shell (if non primary) */ struct shel_pak *primary_shell; /* breathing radius */ gdouble radius; /* region type */ gint region; /* coord data */ gdouble x[4]; gdouble rx[4]; /* velocity */ gdouble v[3]; /* periodic image coordinate */ gint pic[3]; /* charge info */ gint lookup_charge; gdouble charge; /* site occupancy factor */ gint has_sof; gdouble sof; /* display data */ gdouble colour[3]; /* fitting flags */ gchar *flags; /* offset (shell only, NOT global) */ gdouble offset[3]; }; /*******************************/ /* model sub-structure (bonds) */ /*******************************/ struct bond_pak { /* deleted/normal/hidden */ gint status; /* single/double etc. */ gint type; /* relative (to atom1) fractional offset for bond midpoint */ gdouble offset[3]; /* constituent atom indices */ struct core_pak *atom1; struct core_pak *atom2; }; /***********************************/ /* model sub-structure (molecules) */ /***********************************/ struct mol_pak { GSList *cores; gdouble centroid[3]; }; /****************************/ /* periodic image structure */ /****************************/ struct image_pak { /* image coordinates */ gint pic[3]; /* cartesian coordinates */ gdouble rx[3]; }; /**********************************/ /* coords/connectivity prototypes */ /**********************************/ /* debugging */ void print_core(struct core_pak *); void print_core_cart(struct core_pak *); void print_shell(struct shel_pak *); void print_cores(struct model_pak *); void print_cores_cart(struct model_pak *); void print_shells(struct model_pak *); void print_core_shell(struct model_pak *); void print_core_list(GSList *); void print_core_list_cart(GSList *); void print_shell_list(GSList *); /* main */ void coords_init(gint, struct model_pak *); void coords_init_units(struct model_pak *); void coords_compute(struct model_pak *); gint coords_center(struct model_pak *); void coords_confine_cores(GSList *, struct model_pak *); void coords_confine_centroid(struct mol_pak *, struct model_pak *); void coords_make_fractional(struct model_pak *); void coords_make_cartesian(struct model_pak *); void fractional_clamp(gdouble *, gint *, gint); void fractional_min(gdouble *, gint); void core_free(gpointer); void free_core_list(struct model_pak *); void free_mol_list(struct model_pak *); void core_init(gchar *, struct core_pak *, struct model_pak *); gpointer core_new(gchar *, gchar *, struct model_pak *); gpointer shell_new(gchar *, gchar *, struct model_pak *); /* deprec */ struct core_pak *new_core(gchar *, struct model_pak *); struct shel_pak *new_shell(gchar *, struct model_pak *); struct core_pak *dup_core(struct core_pak *); struct shel_pak *dup_shel(struct shel_pak *); struct bond_pak *dup_bond(struct bond_pak *); GSList *dup_core_list(GSList *); GSList *dup_shell_list(GSList *); struct core_pak *copy_core(struct core_pak *, struct model_pak *, struct model_pak *); void delete_commit(struct model_pak *); void delete_core(struct core_pak *); void delete_duplicate_cores(struct model_pak *); void add_atom(gint, gint, struct model_pak *); void elem_init(struct core_pak *, struct model_pak *); void atom_colour_scheme(gint, struct core_pak *, struct model_pak *); void model_colour_scheme(gint, struct model_pak *); void init_atom_colour(struct core_pak *, struct model_pak *); void init_atom_charge(struct core_pak *, struct model_pak *); void init_model_charges(struct model_pak *); gdouble atom_charge(struct core_pak *); void calc_emp(struct model_pak *); GSList *find_unique(gint, struct model_pak *); void cor_calc_xlimits(gdouble *, gdouble *, GSList *); void shell_make_links(struct model_pak *); void atom_numbers_update(struct model_pak *); void connect_molecules(struct model_pak *); void connect_bonds(struct model_pak *); void connect_atom_clear(struct core_pak *, struct model_pak *); void connect_atom_compute(struct core_pak *, struct model_pak *); void connect_atom_refresh(struct core_pak *, struct model_pak *); void connect_refresh(struct model_pak *); void connect_refresh_global(void); void connect_centroid_compute(struct mol_pak *); void wipe_bonds(struct model_pak *); gint connect_split(struct bond_pak *); void connect_image_vector(gdouble *, struct core_pak *, struct core_pak *, gint); void connect_user_bond(struct core_pak *, struct core_pak *, gint, struct model_pak *); void connect_make_bond(struct core_pak *, gint, struct model_pak *); void connect_merge_user(struct model_pak *); void connect_fragment_init(struct model_pak *); GSList *connect_fragment_get(struct core_pak *, struct core_pak *, struct model_pak *); GSList *connect_neighbours(struct core_pak *) ; gdis-0.90/sgclib.c0000644000175000017500000016026607717054746012471 0ustar seansean/* Space Group Info's (c) 1994-96 Ralf W. Grosse-Kunstleve */ /* This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #define SGCLIB_C__ #include "sginfo.h" static const char *Err_Ill_SMx_in_List = "Error: Illegal SeitzMx in list"; void SetSgError(const char *msg) { if (SgError == NULL) SgError = msg; } int iModPositive(int ix, int iy) { if (iy > 0) { ix %= iy; if (ix < 0) ix += iy; } return ix; } static void SwapRTMx(T_RTMx *Mx_a, T_RTMx *Mx_b) { int i; T_RTMx BufMx; for (i = 0; i < 12; i++) BufMx.a[i] = Mx_a->a[i]; for (i = 0; i < 12; i++) Mx_a->a[i] = Mx_b->a[i]; for (i = 0; i < 12; i++) Mx_b->a[i] = BufMx.a[i]; } static void CopyRotMxInfo(T_RotMxInfo *target, const T_RotMxInfo *source) { memcpy(target, source, sizeof (*target)); } static void SwapRotMxInfo(T_RotMxInfo *RMx_a, T_RotMxInfo *RMx_b) { T_RotMxInfo Buffer; memcpy(&Buffer, RMx_a, sizeof (Buffer)); memcpy(RMx_a, RMx_b, sizeof (Buffer)); memcpy(RMx_b, &Buffer, sizeof (Buffer)); } int traceRotMx(const int *RotMx) { return RotMx[0] + RotMx[4] + RotMx[8]; } int deterRotMx(const int *RotMx) { int det; det = RotMx[0] * (RotMx[4] * RotMx[8] - RotMx[5] * RotMx[7]); det -= RotMx[1] * (RotMx[3] * RotMx[8] - RotMx[5] * RotMx[6]); det += RotMx[2] * (RotMx[3] * RotMx[7] - RotMx[4] * RotMx[6]); return det; } void RotMx_t_Vector(int *R_t_V, const int *RotMx, const int *Vector, int FacTr) { const int *vec; if (FacTr > 0) { vec = Vector; *R_t_V = *RotMx++ * *vec++; *R_t_V += *RotMx++ * *vec++; *R_t_V += *RotMx++ * *vec; *R_t_V %= FacTr; if (*R_t_V < 0) *R_t_V += FacTr; R_t_V++; vec = Vector; *R_t_V = *RotMx++ * *vec++; *R_t_V += *RotMx++ * *vec++; *R_t_V += *RotMx++ * *vec; *R_t_V %= FacTr; if (*R_t_V < 0) *R_t_V += FacTr; R_t_V++; vec = Vector; *R_t_V = *RotMx++ * *vec++; *R_t_V += *RotMx++ * *vec++; *R_t_V += *RotMx * *vec; *R_t_V %= FacTr; if (*R_t_V < 0) *R_t_V += FacTr; } else { vec = Vector; *R_t_V = *RotMx++ * *vec++; *R_t_V += *RotMx++ * *vec++; *R_t_V++ += *RotMx++ * *vec; vec = Vector; *R_t_V = *RotMx++ * *vec++; *R_t_V += *RotMx++ * *vec++; *R_t_V++ += *RotMx++ * *vec; vec = Vector; *R_t_V = *RotMx++ * *vec++; *R_t_V += *RotMx++ * *vec++; *R_t_V += *RotMx * *vec; } } void RotMxMultiply(int *rmxab, const int *rmxa, const int *rmxb) { const int *a, *b; /* no loops to be as fast as possible */ /* -funroll-loops in gcc would have had the same effect ;-) (sxm)*/ a = rmxa; b = rmxb; *rmxab = *a++ * *b; b += 3; /* r11 */ *rmxab += *a++ * *b; b += 3; *rmxab += *a * *b; b -= 5; rmxab++; a = rmxa; *rmxab = *a++ * *b; b += 3; /* r12 */ *rmxab += *a++ * *b; b += 3; *rmxab += *a * *b; b -= 5; rmxab++; a = rmxa; *rmxab = *a++ * *b; b += 3; /* r13 */ *rmxab += *a++ * *b; b += 3; *rmxab += *a++ * *b; b = rmxb; rmxab++; rmxa = a; *rmxab = *a++ * *b; b += 3; /* r21 */ *rmxab += *a++ * *b; b += 3; *rmxab += *a * *b; b -= 5; rmxab++; a = rmxa; *rmxab = *a++ * *b; b += 3; /* r22 */ *rmxab += *a++ * *b; b += 3; *rmxab += *a * *b; b -= 5; rmxab++; a = rmxa; *rmxab = *a++ * *b; b += 3; /* r23 */ *rmxab += *a++ * *b; b += 3; *rmxab += *a++ * *b; b = rmxb; rmxab++; rmxa = a; *rmxab = *a++ * *b; b += 3; /* r31 */ *rmxab += *a++ * *b; b += 3; *rmxab += *a * *b; b -= 5; rmxab++; a = rmxa; *rmxab = *a++ * *b; b += 3; /* r32 */ *rmxab += *a++ * *b; b += 3; *rmxab += *a * *b; b -= 5; rmxab++; a = rmxa; *rmxab = *a++ * *b; b += 3; /* r33 */ *rmxab += *a++ * *b; b += 3; *rmxab += *a * *b; } void RotateRotMx(int *RotMx, const int *RMx, const int *InvRMx) { int BufMx[9]; RotMxMultiply(BufMx, RotMx, InvRMx); RotMxMultiply(RotMx, RMx, BufMx); } void SeitzMxMultiply(T_RTMx *smxab, const T_RTMx *smxa, const T_RTMx *smxb) { const int *ar, *a, *b, *bt; int *ab; /* no loops to be as fast as possible */ ar = smxa->a; a = smxa->a; b = smxb->a; ab = smxab->a; *ab = *a++ * *b; b += 3; /* r11 */ *ab += *a++ * *b; b += 3; *ab += *a * *b; b -= 5; ab++; a = ar; *ab = *a++ * *b; b += 3; /* r12 */ *ab += *a++ * *b; b += 3; *ab += *a * *b; b -= 5; ab++; a = ar; *ab = *a++ * *b; b += 3; /* r13 */ *ab += *a++ * *b; b += 3; *ab += *a++ * *b; b = smxb->a; ab++; ar = a; *ab = *a++ * *b; b += 3; /* r21 */ *ab += *a++ * *b; b += 3; *ab += *a * *b; b -= 5; ab++; a = ar; *ab = *a++ * *b; b += 3; /* r22 */ *ab += *a++ * *b; b += 3; *ab += *a * *b; b -= 5; ab++; a = ar; *ab = *a++ * *b; b += 3; /* r23 */ *ab += *a++ * *b; b += 3; *ab += *a++ * *b; b = smxb->a; ab++; ar = a; *ab = *a++ * *b; b += 3; /* r31 */ *ab += *a++ * *b; b += 3; *ab += *a * *b; b -= 5; ab++; a = ar; *ab = *a++ * *b; b += 3; /* r32 */ *ab += *a++ * *b; b += 3; *ab += *a * *b; b -= 5; ab++; a = ar; *ab = *a++ * *b; b += 3; /* r33 */ *ab += *a++ * *b; b += 3; *ab += *a++ * *b++; bt = b; ab++; ar = smxa->a; *ab = *ar++ * *b++; /* t1 */ *ab += *ar++ * *b++; *ab += *ar++ * *b; b = bt; *ab += *a++; *ab %= STBF; if (*ab < 0) *ab += STBF; ab++; *ab = *ar++ * *b++; /* t2 */ *ab += *ar++ * *b++; *ab += *ar++ * *b; b = bt; *ab += *a++; *ab %= STBF; if (*ab < 0) *ab += STBF; ab++; *ab = *ar++ * *b++; /* t3 */ *ab += *ar++ * *b++; *ab += *ar * *b; *ab += *a; *ab %= STBF; if (*ab < 0) *ab += STBF; } void RTMxMultiply(T_RTMx *rtmxab, const T_RTMx *rtmxa, const T_RTMx *rtmxb, int FacAug, int FacTr) { const int *ar, *a, *b, *bt; int *ab; /* no loops to be as fast as possible */ ar = rtmxa->a; a = rtmxa->a; b = rtmxb->a; ab = rtmxab->a; *ab = *a++ * *b; b += 3; /* r11 */ *ab += *a++ * *b; b += 3; *ab += *a * *b; b -= 5; ab++; a = ar; *ab = *a++ * *b; b += 3; /* r12 */ *ab += *a++ * *b; b += 3; *ab += *a * *b; b -= 5; ab++; a = ar; *ab = *a++ * *b; b += 3; /* r13 */ *ab += *a++ * *b; b += 3; *ab += *a++ * *b; b = rtmxb->a; ab++; ar = a; *ab = *a++ * *b; b += 3; /* r21 */ *ab += *a++ * *b; b += 3; *ab += *a * *b; b -= 5; ab++; a = ar; *ab = *a++ * *b; b += 3; /* r22 */ *ab += *a++ * *b; b += 3; *ab += *a * *b; b -= 5; ab++; a = ar; *ab = *a++ * *b; b += 3; /* r23 */ *ab += *a++ * *b; b += 3; *ab += *a++ * *b; b = rtmxb->a; ab++; ar = a; *ab = *a++ * *b; b += 3; /* r31 */ *ab += *a++ * *b; b += 3; *ab += *a * *b; b -= 5; ab++; a = ar; *ab = *a++ * *b; b += 3; /* r32 */ *ab += *a++ * *b; b += 3; *ab += *a * *b; b -= 5; ab++; a = ar; *ab = *a++ * *b; b += 3; /* r33 */ *ab += *a++ * *b; b += 3; *ab += *a++ * *b++; bt = b; ab++; if (FacTr > 0) { ar = rtmxa->a; *ab = *ar++ * *b++; /* t1 */ *ab += *ar++ * *b++; *ab += *ar++ * *b; b = bt; *ab += *a++ * FacAug; *ab %= FacTr; if (*ab < 0) *ab += FacTr; ab++; *ab = *ar++ * *b++; /* t2 */ *ab += *ar++ * *b++; *ab += *ar++ * *b; b = bt; *ab += *a++ * FacAug; *ab %= FacTr; if (*ab < 0) *ab += FacTr; ab++; *ab = *ar++ * *b++; /* t3 */ *ab += *ar++ * *b++; *ab += *ar * *b; *ab += *a * FacAug; *ab %= FacTr; if (*ab < 0) *ab += FacTr; } else { ar = rtmxa->a; *ab = *ar++ * *b++; /* t1 */ *ab += *ar++ * *b++; *ab += *ar++ * *b; b = bt; *ab += *a++ * FacAug; ab++; *ab = *ar++ * *b++; /* t2 */ *ab += *ar++ * *b++; *ab += *ar++ * *b; b = bt; *ab += *a++ * FacAug; ab++; *ab = *ar++ * *b++; /* t3 */ *ab += *ar++ * *b++; *ab += *ar * *b; *ab += *a * FacAug; } } void InverseRotMx(const int *RotMx, int *InvRotMx) { InvRotMx[0] = RotMx[4] * RotMx[8] - RotMx[5] * RotMx[7]; InvRotMx[1] = - RotMx[1] * RotMx[8] + RotMx[2] * RotMx[7]; InvRotMx[2] = RotMx[1] * RotMx[5] - RotMx[2] * RotMx[4]; InvRotMx[3] = - RotMx[3] * RotMx[8] + RotMx[5] * RotMx[6]; InvRotMx[4] = RotMx[0] * RotMx[8] - RotMx[2] * RotMx[6]; InvRotMx[5] = - RotMx[0] * RotMx[5] + RotMx[2] * RotMx[3]; InvRotMx[6] = RotMx[3] * RotMx[7] - RotMx[4] * RotMx[6]; InvRotMx[7] = - RotMx[0] * RotMx[7] + RotMx[1] * RotMx[6]; InvRotMx[8] = RotMx[0] * RotMx[4] - RotMx[1] * RotMx[3]; } void InverseRTMx(const T_RTMx *RTMx, T_RTMx *InvRTMx) { int *iR; const int *T; iR = InvRTMx->s.R; InverseRotMx(RTMx->s.R, iR); T = RTMx->s.T; InvRTMx->s.T[0] = - iR[0] * T[0] - iR[1] * T[1] - iR[2] * T[2]; InvRTMx->s.T[1] = - iR[3] * T[0] - iR[4] * T[1] - iR[5] * T[2]; InvRTMx->s.T[2] = - iR[6] * T[0] - iR[7] * T[1] - iR[8] * T[2]; } int IsSMxTransl0(const T_LatticeInfo *LatticeInfo, const int *SeitzMxT) { int iTrV, nTrV, t; const int *TrV; nTrV = LatticeInfo->nTrVector; TrV = LatticeInfo->TrVector; for (iTrV = 0; iTrV < nTrV; iTrV++) { t = (SeitzMxT[0] + TrV[0]) % STBF; if (t == 0) { t = (SeitzMxT[1] + TrV[1]) % STBF; if (t == 0) { t = (SeitzMxT[2] + TrV[2]) % STBF; if (t == 0) return 1; }} TrV += 3; } return 0; } static int IsSpecialSeitzMx(T_SgInfo *SgInfo, const T_RTMx *SMx, int ExpandLT) { int i, special, smx11; const T_LatticeInfo *ExpLT; /* check rotation part for identity or inversion operation */ smx11 = SMx->s.R[0]; if ( smx11 != 1 && smx11 != -1) return 0; for (i = 1; i < 9; i++) { if (i % 4) { if (SMx->s.R[i] != 0) return 0; } else { if (SMx->s.R[i] != smx11) return 0; } } if (smx11 == 1) special = SpecialSMx_Identity; else special = SpecialSMx_Inversion; /* rotation part is identity or inversion check translation part now */ if (IsSMxTransl0(SgInfo->LatticeInfo, SMx->s.T) == 1) return (special | SpecialSMx_Transl0); if (ExpandLT && (smx11 == 1 || SgInfo->Centric)) { /* try to expand lattice type */ ExpLT = NULL; switch (SgInfo->LatticeInfo->Code) { case 'P': if (IsSMxTransl0(LI_A, SMx->s.T) == 1) { ExpLT = LI_A; break; } if (IsSMxTransl0(LI_B, SMx->s.T) == 1) { ExpLT = LI_B; break; } if (IsSMxTransl0(LI_C, SMx->s.T) == 1) { ExpLT = LI_C; break; } if (IsSMxTransl0(LI_I, SMx->s.T) == 1) { ExpLT = LI_I; break; } if (IsSMxTransl0(LI_R, SMx->s.T) == 1) { ExpLT = LI_R; break; } if (IsSMxTransl0(LI_S, SMx->s.T) == 1) { ExpLT = LI_S; break; } if (IsSMxTransl0(LI_T, SMx->s.T) == 1) { ExpLT = LI_T; break; } case 'A': case 'B': case 'C': if (IsSMxTransl0(LI_F, SMx->s.T) == 1) ExpLT = LI_F; } if (ExpLT != NULL) { SgInfo->LatticeInfo = ExpLT; SgInfo->StatusLatticeTr = -1; return (special | SpecialSMx_Transl0); } } return special; } int CompareSeitzMx(const T_LatticeInfo *LatticeInfo, const T_RTMx *SeitzMxA, const T_RTMx *SeitzMxB) { int i, iTrV, nTrV, t; const int *TrV; /* compare rotation part */ for (i = 0; i < 9; i++) if (SeitzMxA->s.R[i] != SeitzMxB->s.R[i]) return 1; /* rotation part is same check translation */ nTrV = LatticeInfo->nTrVector; TrV = LatticeInfo->TrVector; for (iTrV = 0; iTrV < nTrV; iTrV++, TrV += 3) { t = (SeitzMxA->s.T[0] + TrV[0]) % STBF; if (t == SeitzMxB->s.T[0]) { t = (SeitzMxA->s.T[1] + TrV[1]) % STBF; if (t == SeitzMxB->s.T[1]) { t = (SeitzMxA->s.T[2] + TrV[2]) % STBF; if (t == SeitzMxB->s.T[2]) return 0; }} } return -1; } int GetRotMxOrder(const int *RotMx) { int deter = deterRotMx(RotMx); if (deter == -1 || deter == 1) { switch (traceRotMx(RotMx)) { case -3: return -1; case -2: return -6; case -1: if (deter == -1) return -4; else return 2; case 0: if (deter == -1) return -3; else return 3; case 1: if (deter == -1) return -2; else return 4; case 2: return 6; case 3: return 1; } } return 0; } static int nNextBasis_of_DirCode(const int DirCode, const int **RMx, const int **InvRMx) { switch (DirCode) { case '.': *RMx = *InvRMx = NULL; return 1; case '=': case '"': case '\'': case '|': case '\\': *RMx = RMx_3_111; *InvRMx = RMx_3i111; return 3; case '*': *RMx = RMx_4_001; *InvRMx = RMx_4i001; return 4; default: break; } SetSgError("Internal Error: Corrupt DirCode"); return -1; } int GetRotMxInfo(const int *RotMx, T_RotMxInfo *RotMxInfo) { int i; int nNextBasis, iNextBasis; int nLoopInv, iLoopInv; int Order, AbsOrder; int RMxCopy[9], MatchMx[9], InvMatchMx[9], REV[3]; int *mmx; const int *NBRMx, *InvNBRMx; const T_TabXtalRotMx *txrmx; Order = GetRotMxOrder(RotMx); if (RotMxInfo) RotMxInfo->Order = Order; if (Order) { AbsOrder = abs(Order); if (Order > 0) for (i = 0; i < 9; i++) RMxCopy[i] = RotMx[i]; else for (i = 0; i < 9; i++) RMxCopy[i] = -RotMx[i]; for (txrmx = TabXtalRotMx; txrmx->Order; txrmx++) if (txrmx->Order == AbsOrder) break; while (txrmx->Order == AbsOrder) { nNextBasis = nNextBasis_of_DirCode(txrmx->DirCode, &NBRMx, &InvNBRMx); if (nNextBasis < 0) return 0; if (AbsOrder > 2) nLoopInv = 2; else nLoopInv = 1; for (i = 0; i < 9; i++) MatchMx[i] = txrmx->RMx[i]; for (iNextBasis = 0; iNextBasis < nNextBasis; iNextBasis++) { if (iNextBasis) RotateRotMx(MatchMx, NBRMx, InvNBRMx); mmx = MatchMx; for (iLoopInv = 0; iLoopInv < nLoopInv; iLoopInv++) { if (iLoopInv) { InverseRotMx(MatchMx, InvMatchMx); mmx = InvMatchMx; } for (i = 0; i < 9; i++) if (mmx[i] != RMxCopy[i]) break; if (i == 9) /* matrix has been found */ { if (RotMxInfo) { RotMxInfo->Inverse = iLoopInv; if (nNextBasis == 3) { switch(iNextBasis) { case 0: RotMxInfo->RefAxis = 'z'; break; case 1: RotMxInfo->RefAxis = 'x'; break; case 2: RotMxInfo->RefAxis = 'y'; break; } } else RotMxInfo->RefAxis = 'o'; RotMxInfo->DirCode = txrmx->DirCode; for (i = 0; i < 3; i++) RotMxInfo->EigenVector[i] = txrmx->EigenVector[i]; for (; iNextBasis--;) { RotMx_t_Vector(REV, NBRMx, RotMxInfo->EigenVector, 0); if (iNextBasis-- == 0) { for (i = 0; i < 3; i++) RotMxInfo->EigenVector[i] = REV[i]; break; } RotMx_t_Vector(RotMxInfo->EigenVector, NBRMx, REV, 0); } } return Order; } } } txrmx++; } } return 0; } const T_RotMxInfo *ListOrBufRotMxInfo(const T_SgInfo *SgInfo, int iList, T_RotMxInfo *BufRotMxInfo) { T_RotMxInfo *RMxI; RMxI = SgInfo->ListRotMxInfo; if (RMxI) RMxI += iList; else { RMxI = BufRotMxInfo; if (GetRotMxInfo(SgInfo->ListSeitzMx[iList].s.R, RMxI) == 0) { SetSgError(Err_Ill_SMx_in_List); return NULL; } } return RMxI; } static int CoreAdd2ListSeitzMx(T_SgInfo *SgInfo, const T_RTMx *NewSMx) { int i, iList; T_RTMx *lsmx; T_RotMxInfo RotMxInfo; const T_LatticeInfo *LI; static const char *Err_NonXtalOp = "Error: Generators produce non-crystallographic operation"; if (SgInfo->GenOption) LI = SgInfo->LatticeInfo; else LI = LI_P; lsmx = SgInfo->ListSeitzMx; for (iList = 0; iList < SgInfo->nList; iList++, lsmx++) if (CompareSeitzMx(LI, NewSMx, lsmx) == 0) return 0; /* matrix is not unique */ if (GetRotMxInfo(NewSMx->s.R, &RotMxInfo) == 0) { SetSgError(Err_NonXtalOp); return -1; } if (SgInfo->nList >= SgInfo->MaxList) { if (SgInfo->nList >= 192) SetSgError(Err_NonXtalOp); else SetSgError("Internal Error: Allocated space for ListSeitzMx too small"); return -1; } for (i = 0; i < 12; i++) lsmx->a[i] = NewSMx->a[i]; if (SgInfo->ListRotMxInfo != NULL) CopyRotMxInfo(&SgInfo->ListRotMxInfo[SgInfo->nList], &RotMxInfo); SgInfo->nList++; return 1; } int Add2ListSeitzMx(T_SgInfo *SgInfo, const T_RTMx *NewSMx) { int i, special, Enter; int iMult, jMult; T_RTMx TrialSMx, *iMultSMx, *jMultSMx; static const char *Err_Ill_lattice_translation = "Error: Illegal lattice translation"; if (SgInfo->nList == 0) { /* make sure identity matrix is first in list */ InitSeitzMx(&TrialSMx, 1); if (CoreAdd2ListSeitzMx(SgInfo, &TrialSMx) < 0) return -1;; } for (i = 0; i < 9; i++) TrialSMx.s.R[i] = NewSMx->s.R[i]; for (i = 0; i < 3; i++) { TrialSMx.s.T[i] = NewSMx->s.T[i] % STBF; if (TrialSMx.s.T[i] < 0) TrialSMx.s.T[i] += STBF; } iMult = SgInfo->nList; iMultSMx = &SgInfo->ListSeitzMx[iMult]; jMult = 1; jMultSMx = &SgInfo->ListSeitzMx[1]; /* skip first = identity matrix */ for (;;) { Enter = 1; special = IsSpecialSeitzMx(SgInfo, &TrialSMx, 1); if (special & SpecialSMx_Identity) { if (! (special & SpecialSMx_Transl0)) { SetSgError(Err_Ill_lattice_translation); return -1; } if (SgInfo->GenOption) Enter = 0; } else if (special & SpecialSMx_Inversion) { if (! (special & SpecialSMx_Transl0)) { if (SgInfo->Centric) { SetSgError(Err_Ill_lattice_translation); return -1; } SgInfo->InversionOffOrigin = 1; } else { if (SgInfo->InversionOffOrigin) SgInfo->Centric = 1; SgInfo->InversionOffOrigin = 0; if (SgInfo->GenOption) { if (SgInfo->Centric == 0) SgInfo->Centric = -1; Enter = 0; } else SgInfo->Centric = 1; } } if (Enter && CoreAdd2ListSeitzMx(SgInfo, &TrialSMx) < 0) return -1; if (SgInfo->GenOption < 0) break; if (jMult > iMult) { iMult++; iMultSMx++; jMult = 1; jMultSMx = &SgInfo->ListSeitzMx[1]; /* skip first = identity matrix */ } if (iMult == SgInfo->nList) break; SeitzMxMultiply(&TrialSMx, jMultSMx, iMultSMx); jMult++; jMultSMx++; } return 0; } int AddInversion2ListSeitzMx(T_SgInfo *SgInfo) { T_RTMx SeitzMx; InitSeitzMx(&SeitzMx, -1); return Add2ListSeitzMx(SgInfo, &SeitzMx); } int AddLatticeTr2ListSeitzMx(T_SgInfo *SgInfo, const T_LatticeInfo *LatticeInfo) { int iTrV, nTrV; const int *TrV; T_RTMx SeitzMx; InitRotMx(SeitzMx.s.R, 1); nTrV = LatticeInfo->nTrVector; TrV = &LatticeInfo->TrVector[3]; /* skip first vector which is always 000 */ for (iTrV = 1; iTrV < nTrV; iTrV++) { SeitzMx.s.T[0] = *TrV++; SeitzMx.s.T[1] = *TrV++; SeitzMx.s.T[2] = *TrV++; if (Add2ListSeitzMx(SgInfo, &SeitzMx) < 0) return -1; } if (SgInfo->GenOption) SgInfo->StatusLatticeTr = 0; else SgInfo->StatusLatticeTr = 1; return 0; } static int RemoveLatticeTr(T_SgInfo *SgInfo) { int iList, jList, i; T_RTMx *smxi, *smxj, *lastsmx; T_RotMxInfo *lrmxi, *lastrmxi; if (SgInfo->LatticeInfo->Code == 'P') return 0; if (SgInfo->StatusLatticeTr == -1) { if (AddLatticeTr2ListSeitzMx(SgInfo, SgInfo->LatticeInfo) < 0) return -1; } iList = 0; while (iList < SgInfo->nList) { smxi = &SgInfo->ListSeitzMx[iList]; jList = iList + 1; while (jList < SgInfo->nList) { smxj = &SgInfo->ListSeitzMx[jList]; if (CompareSeitzMx(SgInfo->LatticeInfo, smxi, smxj) == 0) { /* copy last element to this place */ SgInfo->nList--; lastsmx = &SgInfo->ListSeitzMx[SgInfo->nList]; for (i = 0; i < 12; i++) smxj->a[i] = lastsmx->a[i]; if (SgInfo->ListRotMxInfo != NULL) { lrmxi = &SgInfo->ListRotMxInfo[jList]; lastrmxi = &SgInfo->ListRotMxInfo[SgInfo->nList]; CopyRotMxInfo(lrmxi, lastrmxi); } } else jList++; } iList++; } SgInfo->StatusLatticeTr = 0; return 0; } static int RemoveInversion(T_SgInfo *SgInfo) { int i, iList, special, deter, Centric, InversionOffOrigin; T_RTMx *lsmx, *smx, ProperSMx; T_RotMxInfo *lrmxi, *rmxi; Centric = 0; InversionOffOrigin = 0; lsmx = SgInfo->ListSeitzMx; for (iList = 0; iList < SgInfo->nList; iList++, lsmx++) { special = IsSpecialSeitzMx(SgInfo, lsmx, 0); if (special & SpecialSMx_Inversion) { if (special & SpecialSMx_Transl0) Centric = 1; else InversionOffOrigin = 1; break; } } if (InversionOffOrigin && Centric) { SetSgError("Internal Error: Corrupt SgInfo"); return -1; } if (Centric == 0) { if (InversionOffOrigin) { SgInfo->Centric = 0; SgInfo->InversionOffOrigin = 1; } else { if (SgInfo->Centric) SgInfo->Centric = -1; SgInfo->InversionOffOrigin = 0; } } else { SgInfo->InversionOffOrigin = 0; lsmx = SgInfo->ListSeitzMx; lrmxi = SgInfo->ListRotMxInfo; iList = 0; while (iList < SgInfo->nList) { deter = deterRotMx(lsmx->s.R); if (deter == -1 && SgInfo->Centric == -1) { for (i = 0; i < 9; i++) ProperSMx.s.R[i] = -lsmx->s.R[i]; for (i = 0; i < 3; i++) { ProperSMx.s.T[i] = -lsmx->s.T[i] % STBF; if (ProperSMx.s.T[i] < 0) ProperSMx.s.T[i] += STBF; } smx = SgInfo->ListSeitzMx; for (i = 0; i < SgInfo->nList; i++, smx++) if (CompareSeitzMx(LI_P, &ProperSMx, smx) == 0) break; if (i == SgInfo->nList) { for (i = 0; i < 12; i++) lsmx->a[i] = ProperSMx.a[i]; deter = deterRotMx(lsmx->s.R); if (deter != 1 || (lrmxi && GetRotMxInfo(lsmx->s.R, lrmxi) == 0)) { SetSgError(Err_Ill_SMx_in_List); return -1; } } } if (deter == -1) { /* copy last element to this place */ SgInfo->nList--; if (SgInfo->nList != iList) { smx = &SgInfo->ListSeitzMx[SgInfo->nList]; for (i = 0; i < 12; i++) lsmx->a[i] = smx->a[i]; if (lrmxi) { rmxi = &SgInfo->ListRotMxInfo[SgInfo->nList]; CopyRotMxInfo(lrmxi, rmxi); } } } else if (deter == 1) { lsmx++; if (lrmxi != NULL) lrmxi++; iList++; } else { SetSgError(Err_Ill_SMx_in_List); return -1; } } SgInfo->Centric = -1; } return 0; } int ApplyOriginShift(T_SgInfo *SgInfo) { int HaveOrSh, iList, i; T_RTMx *lsmx, SMx; int OrSh[3], lo[3]; HaveOrSh = 0; for (i = 0; i < 3; i++) { OrSh[i] = SgInfo->OriginShift[i] * (STBF / 12); if (OrSh[i]) HaveOrSh = 1; } if (HaveOrSh == 0) return 0; lsmx = SgInfo->ListSeitzMx; for (iList = 0; iList < SgInfo->nList; iList++, lsmx++) { RotMx_t_Vector(lo, lsmx->s.R, OrSh, STBF); for (i = 0; i < 3; i++) lsmx->s.T[i] = iModPositive(lsmx->s.T[i] - lo[i] + OrSh[i], STBF); } if (SgInfo->Centric == -1) { lsmx = &SMx; InitSeitzMx(lsmx, -1); RotMx_t_Vector(lo, lsmx->s.R, OrSh, STBF); for (i = 0; i < 3; i++) lsmx->s.T[i] = iModPositive(lsmx->s.T[i] - lo[i] + OrSh[i], STBF); if (CoreAdd2ListSeitzMx(SgInfo, lsmx) < 0) return -1; SgInfo->Centric = 0; SgInfo->InversionOffOrigin = 1; } return 1; } static void TidyTranslation(T_SgInfo *SgInfo) { int iList; int iTrV, nTrV; const int *TrV; T_RTMx *lsmx; int t1, t2, t3, *lt1, *lt2, *lt3, mint1, mint2, mint3; int n0t, n0mint; nTrV = SgInfo->LatticeInfo->nTrVector; lsmx = SgInfo->ListSeitzMx; for (iList = 0; iList < SgInfo->nList; iList++, lsmx++) { mint1 = *(lt1 = &lsmx->s.T[0]); mint2 = *(lt2 = &lsmx->s.T[1]); mint3 = *(lt3 = &lsmx->s.T[2]); TrV = SgInfo->LatticeInfo->TrVector; for (iTrV = 0; iTrV < nTrV; iTrV++) { t1 = ((*lt1) + *TrV++) % STBF; t2 = ((*lt2) + *TrV++) % STBF; t3 = ((*lt3) + *TrV++) % STBF; n0t = (t1 == 0) + (t2 == 0) + (t3 == 0); n0mint = (mint1 == 0) + (mint2 == 0) + (mint3 == 0); if ( n0t > n0mint || ( n0t == n0mint && ( t1 + t2 + t3 < mint1 + mint2 + mint3 || ( t1 + t2 + t3 == mint1 + mint2 + mint3 && (t1 < mint1 || (t1 == mint1 && t2 < mint2)))))) { mint1 = t1; mint2 = t2; mint3 = t3; } } *lt1 = mint1; *lt2 = mint2; *lt3 = mint3; } } static T_SgInfo *Pt_SgInfo_ListSortFunction = NULL; static int SgInfoListSortFunction(const int *iList_a, const int *iList_b) { int val_a, val_b, n0_a, n0_b, i; T_RTMx *smx_a, *smx_b; T_RotMxInfo RotMxInfo_a, RotMxInfo_b, *rmxi_a, *rmxi_b; T_SgInfo *SgInfo = Pt_SgInfo_ListSortFunction; if (SgError != NULL) return 0; if (SgInfo->ListRotMxInfo == NULL) { rmxi_a = &RotMxInfo_a; rmxi_b = &RotMxInfo_b; smx_a = &SgInfo->ListSeitzMx[*iList_a]; smx_b = &SgInfo->ListSeitzMx[*iList_b]; if ( GetRotMxInfo(smx_a->s.R, rmxi_a) == 0 || GetRotMxInfo(smx_b->s.R, rmxi_b) == 0) { SetSgError(Err_Ill_SMx_in_List); return 0; } } else { rmxi_a = &SgInfo->ListRotMxInfo[*iList_a]; rmxi_b = &SgInfo->ListRotMxInfo[*iList_b]; } val_a = abs(rmxi_a->Order); val_b = abs(rmxi_b->Order); if (val_a == 1 && val_b != 1) return -1; if (val_a != 1 && val_b == 1) return 1; if (rmxi_a->Order == 1 && rmxi_b->Order != 1) return -1; if (rmxi_a->Order != 1 && rmxi_b->Order == 1) return 1; if (val_a != 1) { if (val_a > val_b) return -1; if (val_a < val_b) return 1; if (rmxi_a->Order > rmxi_b->Order) return -1; if (rmxi_a->Order < rmxi_b->Order) return 1; } n0_a = n0_b = 0; for (i = 0; i < 3; i++) { if (rmxi_a->EigenVector[i] == 0) n0_a++; if (rmxi_b->EigenVector[i] == 0) n0_b++; } if (n0_a > n0_b) return -1; if (n0_a < n0_b) return 1; val_a = val_b = 0; for (i = 0; i < 3; i++) { if (val_a < abs(rmxi_a->EigenVector[i])) val_a = abs(rmxi_a->EigenVector[i]); if (val_b < abs(rmxi_b->EigenVector[i])) val_b = abs(rmxi_b->EigenVector[i]); } if (val_a < val_b) return -1; if (val_a > val_b) return 1; val_a = 100 * abs(rmxi_a->EigenVector[2]); val_a += 10 * abs(rmxi_a->EigenVector[0]); val_a += abs(rmxi_a->EigenVector[1]); val_b = 100 * abs(rmxi_b->EigenVector[2]); val_b += 10 * abs(rmxi_b->EigenVector[0]); val_b += abs(rmxi_b->EigenVector[1]); if (n0_a < 2) { if (val_a < val_b) return -1; if (val_a > val_b) return 1; } else { if (val_a > val_b) return -1; if (val_a < val_b) return 1; } for (i = 0; i < 3; i++) { if (rmxi_a->EigenVector[i] > rmxi_b->EigenVector[i]) return -1; if (rmxi_a->EigenVector[i] < rmxi_b->EigenVector[i]) return 1; } if (rmxi_a->Inverse < rmxi_b->Inverse) return -1; if (rmxi_a->Inverse > rmxi_b->Inverse) return 1; smx_a = &SgInfo->ListSeitzMx[*iList_a]; smx_b = &SgInfo->ListSeitzMx[*iList_b]; for (i = 0; i < 3; i++) { if (smx_a->s.T[i] < smx_b->s.T[i]) return -1; if (smx_a->s.T[i] > smx_b->s.T[i]) return 1; } return 0; } static int PostSortSgInfoList(const T_SgInfo *SgInfo, int *List_iList) { int nList, iL_iL, jL_iL; T_RTMx BufMx1, BufMx2, *smxab; const T_RTMx *lsmx, *smxb; T_RotMxInfo RotMxInfo; const T_RotMxInfo *rmxi; int nO_1, iO, save, i, i_; nList = SgInfo->nList; iL_iL = 0; while (iL_iL < nList) { lsmx = &SgInfo->ListSeitzMx[List_iList[iL_iL]]; rmxi = ListOrBufRotMxInfo(SgInfo, List_iList[iL_iL], &RotMxInfo); if (rmxi == NULL) return -1; iL_iL++; iO = rmxi->Order; if (iO < 0 && iO % 2) iO *= 2; nO_1 = abs(iO) - 1; smxab = &BufMx2; smxb = lsmx; for (iO = 1; iO < nO_1; iO++) { SeitzMxMultiply(smxab, lsmx, smxb); for (jL_iL = iL_iL; jL_iL < nList; jL_iL++) { smxb = &SgInfo->ListSeitzMx[List_iList[jL_iL]]; if (CompareSeitzMx(SgInfo->LatticeInfo, smxab, smxb) == 0) break; } if (jL_iL < nList) { save = List_iList[jL_iL]; for (i = i_ = jL_iL; i > iL_iL; i = i_) List_iList[i] = List_iList[--i_]; List_iList[iL_iL++] = save; } smxb = smxab; if (iO % 2) smxab = &BufMx1; else smxab = &BufMx2; } } return 0; } static void SortSgInfoList(T_SgInfo *SgInfo, int *List_iList) { int i, j, refi; int nList; T_RTMx *lsmx; T_RotMxInfo *lrmxi; if (SgError != NULL) return; nList = SgInfo->nList; lsmx = SgInfo->ListSeitzMx; lrmxi = SgInfo->ListRotMxInfo; Pt_SgInfo_ListSortFunction = SgInfo; for (i = 0; i < nList; i++) List_iList[i] = i; qsort((void *) List_iList, nList, sizeof (*List_iList), (int (*)(const void *, const void *)) SgInfoListSortFunction); Pt_SgInfo_ListSortFunction = NULL; if (SgError != NULL) return; if (PostSortSgInfoList(SgInfo, List_iList) != 0) return; for (i = 0; i < nList; i++) { j = List_iList[i]; if (j != i) { for (refi = i + 1; refi < nList; refi++) if (List_iList[refi] == i) break; if (refi >= nList) { SetSgError("Internal Error: SortSgInfoList(): Corrupt List_iList"); return; } SwapRTMx(&lsmx[i], &lsmx[j]); if (lrmxi != NULL) SwapRotMxInfo(&lrmxi[i], &lrmxi[j]); List_iList[refi] = j; } } } int FindSeitzMx(const T_SgInfo *SgInfo, int Order, int HonorSign, int RefAxis, int DirCode) { int iList; int MatchingOrder; T_RTMx *lsmx; T_RotMxInfo *lrmxi, RotMxInfo; lsmx = SgInfo->ListSeitzMx; lrmxi = SgInfo->ListRotMxInfo; if (lrmxi == NULL) lrmxi = &RotMxInfo; for (iList = 0; iList < SgInfo->nList; iList++, lsmx++) { if (lrmxi == &RotMxInfo) { if (GetRotMxInfo(lsmx->s.R, lrmxi) == 0) { SetSgError(Err_Ill_SMx_in_List); return -1; } } if (HonorSign == 0) MatchingOrder = (abs(Order) == abs(lrmxi->Order)); else MatchingOrder = (Order == lrmxi->Order); if ( MatchingOrder && lrmxi->Inverse == 0 && (RefAxis == 0 || RefAxis == lrmxi->RefAxis) && (DirCode == 0 || DirCode == lrmxi->DirCode)) { if (DirCode != '*') return iList; if ( lrmxi->EigenVector[0] == 1 && lrmxi->EigenVector[1] == 1 && lrmxi->EigenVector[2] == 1) return iList; } if (lrmxi != &RotMxInfo) lrmxi++; } return -1; } static int FindXtalSystem(T_SgInfo *SgInfo) { int iList, i; int HonorSign = 0, CheckEnantiomorph; const T_RTMx *lsmx; T_RotMxInfo RotMxInfo; const T_RotMxInfo *lrmxi; enum Axis { N1 = 0, N2, N3, N4, N6, EndOfAxis }; int N_count[EndOfAxis]; SgInfo->XtalSystem = XS_Unknown; SgInfo->UniqueRefAxis = 0; SgInfo->UniqueDirCode = 0; SgInfo->ExtraInfo = EI_Unknown; CheckEnantiomorph = 0; for (i = 0; i < EndOfAxis; i++) N_count[i] = 0; lsmx = SgInfo->ListSeitzMx; lrmxi = SgInfo->ListRotMxInfo; if (lrmxi == NULL) lrmxi = &RotMxInfo; for (iList = 0; iList < SgInfo->nList; iList++, lsmx++) { if (lrmxi == &RotMxInfo) { if (GetRotMxInfo(lsmx->s.R, &RotMxInfo) == 0) { SetSgError(Err_Ill_SMx_in_List); return XS_Unknown; } } switch(abs(lrmxi->Order)) { case 1: i = N1; break; case 2: i = N2; break; case 3: i = N3; break; case 4: i = N4; break; case 6: i = N6; break; default: SetSgError("Internal Error: FindXtalSystem(): Corrupt ListRotMxInfo"); return XS_Unknown; } if (lrmxi->Inverse == 0) /* skip N^-1 */ N_count[i]++; if (lrmxi != &RotMxInfo) lrmxi++; } i = EndOfAxis; if (SgInfo->InversionOffOrigin == 1) { for (i = 0; i < EndOfAxis; i++) { if (N_count[i] % 2) break; N_count[i] /= 2; } } if (i == EndOfAxis) { if (N_count[N3] == 4) SgInfo->XtalSystem = XS_Cubic; else if (N_count[N3] > 1) SgInfo->XtalSystem = XS_Unknown; else if (N_count[N6] == 1) SgInfo->XtalSystem = XS_Hexagonal; else if (N_count[N6] > 0) SgInfo->XtalSystem = XS_Unknown; else if (N_count[N3] == 1) SgInfo->XtalSystem = XS_Trigonal; else if (N_count[N4] == 1) SgInfo->XtalSystem = XS_Tetragonal; else if (N_count[N4] > 0) SgInfo->XtalSystem = XS_Unknown; else if (N_count[N2] > 2) SgInfo->XtalSystem = XS_Orthorhombic; else if (N_count[N2] > 0) SgInfo->XtalSystem = XS_Monoclinic; else if (N_count[N1] > 0) SgInfo->XtalSystem = XS_Triclinic; HonorSign = 1; iList = FindSeitzMx(SgInfo, -1, HonorSign, 'o', '.'); if (iList < 0) HonorSign = 0; switch(SgInfo->XtalSystem) { case XS_Monoclinic: iList = FindSeitzMx(SgInfo, 2, HonorSign, 0, '='); if (iList < 0) SgInfo->XtalSystem = XS_Unknown; break; case XS_Tetragonal: CheckEnantiomorph = 1; iList = FindSeitzMx(SgInfo, 4, HonorSign, 0, '='); if (iList < 0) SgInfo->XtalSystem = XS_Unknown; break; case XS_Trigonal: CheckEnantiomorph = 1; iList = FindSeitzMx(SgInfo, 3, HonorSign, 0, '='); if (iList < 0) iList = FindSeitzMx(SgInfo, 3, HonorSign, 0, '*'); if (iList < 0) SgInfo->XtalSystem = XS_Unknown; break; case XS_Hexagonal: CheckEnantiomorph = 1; iList = FindSeitzMx(SgInfo, 6, HonorSign, 0, '='); if (iList < 0) SgInfo->XtalSystem = XS_Unknown; break; case XS_Cubic: iList = FindSeitzMx(SgInfo, 4, HonorSign, 0, '='); if (iList >= 0) CheckEnantiomorph = 1; break; default: iList = -1; break; } } if (SgInfo->XtalSystem == XS_Unknown) { SetSgError("Error: Can't determine crystal system"); } else if (iList >= 0) { lrmxi = ListOrBufRotMxInfo(SgInfo, iList, &RotMxInfo); if (lrmxi == NULL) { SgInfo->XtalSystem = XS_Unknown; return XS_Unknown; } if (SgInfo->XtalSystem != XS_Cubic) { SgInfo->UniqueRefAxis = lrmxi->RefAxis; SgInfo->UniqueDirCode = lrmxi->DirCode; if (SgInfo->XtalSystem == XS_Trigonal && lrmxi->DirCode == '=') { switch (lrmxi->RefAxis) { case 'z': switch (SgInfo->LatticeInfo->Code) { case 'R': SgInfo->ExtraInfo = EI_Obverse; break; case 'T': SgInfo->ExtraInfo = EI_Reverse; break; } break; case 'y': switch (SgInfo->LatticeInfo->Code) { case 'S': SgInfo->ExtraInfo = EI_Obverse; break; case 'R': SgInfo->ExtraInfo = EI_Reverse; break; } break; case 'x': switch (SgInfo->LatticeInfo->Code) { case 'T': SgInfo->ExtraInfo = EI_Obverse; break; case 'S': SgInfo->ExtraInfo = EI_Reverse; break; } break; } } } if ( HonorSign == 0 /* no inversion matrix */ && SgInfo->LatticeInfo->Code == 'P' && CheckEnantiomorph == 1) { lsmx = &SgInfo->ListSeitzMx[iList]; if (GetRotMxOrder(lsmx->s.R) > 1) { i = lsmx->s.T[0] * lrmxi->EigenVector[0]; i += lsmx->s.T[1] * lrmxi->EigenVector[1]; i += lsmx->s.T[2] * lrmxi->EigenVector[2]; if (i % (STBF / 2)) SgInfo->ExtraInfo = EI_Enantiomorphic; } } } return SgInfo->XtalSystem; } static int BuildGenerator_iList(T_SgInfo *SgInfo) { int iList, iList_1, nG; int SgInfo_CI, HonorSign, Flag3asterisk, FlagPG; SgInfo_CI = (SgInfo->Centric || SgInfo->InversionOffOrigin); SgInfo->PointGroup = PG_Unknown; nG = SgInfo->nGenerator = 0; #define G_iL SgInfo->Generator_iList HonorSign = 1; iList_1 = FindSeitzMx(SgInfo, -1, HonorSign, 'o', '.'); if (iList_1 < 0) HonorSign = 0; if (SgInfo->XtalSystem == XS_Unknown) FindXtalSystem(SgInfo); switch(SgInfo->XtalSystem) { case XS_Triclinic: if (iList_1 < 0) iList_1 = FindSeitzMx(SgInfo, 1, HonorSign, 'o', '.'); if (iList_1 >= 0) G_iL[nG++] = iList_1; if (SgInfo_CI) SgInfo->PointGroup = PG_1b; else SgInfo->PointGroup = PG_1; SgInfo->nGenerator = nG; return 0; case XS_Monoclinic: iList = FindSeitzMx(SgInfo, 2, HonorSign, 0, '='); if (iList < 0) break; G_iL[nG++] = iList; if (SgInfo_CI) SgInfo->PointGroup = PG_2_m; else if (deterRotMx(SgInfo->ListSeitzMx[iList].s.R) == -1) SgInfo->PointGroup = PG_m; else SgInfo->PointGroup = PG_2; if (iList_1 >= 0) G_iL[nG++] = iList_1; SgInfo->nGenerator = nG; return 0; case XS_Orthorhombic: iList = FindSeitzMx(SgInfo, 2, HonorSign, 'z', '='); if (iList >= 0) G_iL[nG++] = iList; iList = FindSeitzMx(SgInfo, 2, HonorSign, 'x', '='); if (iList >= 0) G_iL[nG++] = iList; if (nG < 2) { iList = FindSeitzMx(SgInfo, 2, HonorSign, 'y', '='); if (iList >= 0) G_iL[nG++] = iList; } if (nG != 2) break; if (SgInfo_CI) SgInfo->PointGroup = PG_mmm; else if ( deterRotMx(SgInfo->ListSeitzMx[G_iL[0]].s.R) == -1 || deterRotMx(SgInfo->ListSeitzMx[G_iL[1]].s.R) == -1) SgInfo->PointGroup = PG_mm2; else SgInfo->PointGroup = PG_222; if (iList_1 >= 0) G_iL[nG++] = iList_1; SgInfo->nGenerator = nG; return 0; case XS_Tetragonal: iList = FindSeitzMx(SgInfo, 4, HonorSign, 0, '='); if (iList < 0) break; G_iL[nG++] = iList; if ( SgInfo->UniqueRefAxis != 'x') { iList = FindSeitzMx(SgInfo, 2, HonorSign, 'x', '='); if (iList >= 0) G_iL[nG++] = iList; } if (nG < 2 && SgInfo->UniqueRefAxis != 'z') { iList = FindSeitzMx(SgInfo, 2, HonorSign, 'z', '='); if (iList >= 0) G_iL[nG++] = iList; } if (nG < 2 && SgInfo->UniqueRefAxis != 'y') { iList = FindSeitzMx(SgInfo, 2, HonorSign, 'y', '='); if (iList >= 0) G_iL[nG++] = iList; } if (nG < 2) { if (SgInfo_CI) SgInfo->PointGroup = PG_4_m; else if (deterRotMx(SgInfo->ListSeitzMx[G_iL[0]].s.R) == -1) SgInfo->PointGroup = PG_4b; else SgInfo->PointGroup = PG_4; } else { if (SgInfo_CI) SgInfo->PointGroup = PG_4_mmm; else if (deterRotMx(SgInfo->ListSeitzMx[G_iL[0]].s.R) == -1) { if (deterRotMx(SgInfo->ListSeitzMx[G_iL[1]].s.R) == -1) SgInfo->PointGroup = PG_4bm2; else SgInfo->PointGroup = PG_4b2m; } else { if (deterRotMx(SgInfo->ListSeitzMx[G_iL[1]].s.R) == -1) SgInfo->PointGroup = PG_4mm; else SgInfo->PointGroup = PG_422; } } if (iList_1 >= 0) G_iL[nG++] = iList_1; SgInfo->nGenerator = nG; return 0; case XS_Trigonal: case XS_Hexagonal: Flag3asterisk = 0; if (SgInfo->XtalSystem == XS_Trigonal) { iList = FindSeitzMx(SgInfo, 3, HonorSign, 0, '='); if (iList < 0) { iList = FindSeitzMx(SgInfo, 3, HonorSign, 0, '*'); Flag3asterisk = 1; } } else iList = FindSeitzMx(SgInfo, 6, HonorSign, 0, '='); if (iList < 0) break; G_iL[nG++] = iList; iList = FindSeitzMx(SgInfo, 2, HonorSign, 0, '\''); if (iList >= 0) G_iL[nG++] = iList; FlagPG = -1; if (nG < 2) { iList = FindSeitzMx(SgInfo, 2, HonorSign, 0, '"'); if (iList >= 0) G_iL[nG++] = iList; FlagPG = 1; } if (SgInfo->XtalSystem == XS_Trigonal) { if (nG < 2) { if (SgInfo_CI) SgInfo->PointGroup = PG_3b; else SgInfo->PointGroup = PG_3; } else { if (Flag3asterisk == 1) { if (SgInfo_CI) SgInfo->PointGroup = PG_3bm; else { FlagPG = deterRotMx(SgInfo->ListSeitzMx[G_iL[1]].s.R); if (FlagPG == -1) SgInfo->PointGroup = PG_3m; else SgInfo->PointGroup = PG_32; } } else if (FlagPG == -1) { if (SgInfo_CI) SgInfo->PointGroup = PG_3b1m; else { FlagPG = deterRotMx(SgInfo->ListSeitzMx[G_iL[1]].s.R); if (FlagPG == -1) SgInfo->PointGroup = PG_31m; else SgInfo->PointGroup = PG_312; } } else { if (SgInfo_CI) SgInfo->PointGroup = PG_3bm1; else { FlagPG = deterRotMx(SgInfo->ListSeitzMx[G_iL[1]].s.R); if (FlagPG == -1) SgInfo->PointGroup = PG_3m1; else SgInfo->PointGroup = PG_321; } } } } else { if (nG < 2) { if (SgInfo_CI) SgInfo->PointGroup = PG_6_m; else if (deterRotMx(SgInfo->ListSeitzMx[G_iL[0]].s.R) == -1) SgInfo->PointGroup = PG_6b; else SgInfo->PointGroup = PG_6; } else { if (SgInfo_CI) SgInfo->PointGroup = PG_6_mmm; else if (deterRotMx(SgInfo->ListSeitzMx[G_iL[0]].s.R) == -1) { if (deterRotMx(SgInfo->ListSeitzMx[G_iL[1]].s.R) == FlagPG) SgInfo->PointGroup = PG_6b2m; else SgInfo->PointGroup = PG_6bm2; } else if (deterRotMx(SgInfo->ListSeitzMx[G_iL[1]].s.R) == -1) SgInfo->PointGroup = PG_6mm; else SgInfo->PointGroup = PG_622; } } if (iList_1 >= 0) G_iL[nG++] = iList_1; SgInfo->nGenerator = nG; return 0; case XS_Cubic: FlagPG = 0; iList = FindSeitzMx(SgInfo, 4, HonorSign, 'z', '='); if (iList < 0) { iList = FindSeitzMx(SgInfo, 2, HonorSign, 'z', '='); FlagPG = 1; } if (iList < 0) break; G_iL[nG++] = iList; iList = FindSeitzMx(SgInfo, 2, HonorSign, 'x', '='); if (iList < 0) break; G_iL[nG++] = iList; iList = FindSeitzMx(SgInfo, 3, HonorSign, 'o', '*'); if (iList < 0) break; G_iL[nG++] = iList; if (FlagPG) { if (SgInfo_CI) SgInfo->PointGroup = PG_m3b; else SgInfo->PointGroup = PG_23; } else { if (SgInfo_CI) SgInfo->PointGroup = PG_m3bm; else if (deterRotMx(SgInfo->ListSeitzMx[G_iL[0]].s.R) == -1) SgInfo->PointGroup = PG_4b3m; else SgInfo->PointGroup = PG_432; } if (iList_1 >= 0) G_iL[nG++] = iList_1; SgInfo->nGenerator = nG; return 0; default: break; } #undef G_iL return -1; } static int BuildHSym(T_SgInfo *SgInfo) { int NeedDash, HaveOrSh, nGRT, iList, iG, ip, os, i; int AbsOrder, RefAxis, DirCode, ScrewPrimitive, Screw; int PreviousRotation, PreviousRefAxis, PreviousDirCode; int nTrV, iTrV, OrSh[3], RO[3], Transl[3]; const int *TrV, *ht; T_RTMx SMx_1; const T_RTMx *SMx; const T_RotMxInfo *rmxi; char *hsym, *hsym_mark; struct { T_RotMxInfo RMxI_Buf; const T_RotMxInfo *RMxI; int Transl[3]; } GRT[sizeof SgInfo->Generator_iList / sizeof (*SgInfo->Generator_iList) + 1]; const char *Digits = "0123456"; if (SgInfo->nGenerator == 0) { SetSgError("Internal Error: BuildHSym(): Empty generator list"); return -1; } HaveOrSh = 0; for (i = 0; i < 3; i++) { OrSh[i] = SgInfo->OriginShift[i] * (STBF / 12); if (OrSh[i]) HaveOrSh = 1; } NeedDash = 0; nGRT = 0; for (iG = 0; iG < SgInfo->nGenerator; iG++) { iList = SgInfo->Generator_iList[iG]; GRT[nGRT].RMxI = ListOrBufRotMxInfo(SgInfo, iList, &GRT[nGRT].RMxI_Buf); if (GRT[nGRT].RMxI == NULL) return -1; SMx = &SgInfo->ListSeitzMx[iList]; RotMx_t_Vector(RO, SMx->s.R, OrSh, STBF); for (i = 0; i < 3; i++) GRT[nGRT].Transl[i] = iModPositive(SMx->s.T[i] + RO[i] - OrSh[i], STBF); if (GRT[nGRT].RMxI->Order == -1) { for (i = 0; i < 3; i++) if (GRT[nGRT].Transl[i] != 0) break; if (i == 3) NeedDash = 1; else nGRT++; } else nGRT++; } if (SgInfo->Centric) { if (HaveOrSh == 0) NeedDash = 1; else { for (iG = 0; iG < nGRT; iG++) if (GRT[iG].RMxI->Order == 1) break; InitSeitzMx(&SMx_1, -1); if (GetRotMxInfo(SMx_1.s.R, &GRT[iG].RMxI_Buf) != -1) { SetSgError("Internal Error: BuildHSym(): Corrupt GetRotMxInfo()"); return -1; } GRT[iG].RMxI = &GRT[iG].RMxI_Buf; for (i = 0; i < 3; i++) GRT[iG].Transl[i] = iModPositive(-2 * OrSh[i], STBF); if (iG == nGRT) nGRT++; } } hsym = SgInfo->HallSymbol; for (i = 0; i <= MaxLenHallSymbol; i++) *hsym++ = '\0'; PreviousRotation = 0; PreviousRefAxis = 0; PreviousDirCode = 0; hsym = SgInfo->HallSymbol; if (NeedDash) *hsym++ = '-'; else *hsym++ = ' '; *hsym++ = SgInfo->LatticeInfo->Code; nTrV = SgInfo->LatticeInfo->nTrVector; for (iG = 0; iG < nGRT; iG++) { rmxi = GRT[iG].RMxI; AbsOrder = abs(rmxi->Order); RefAxis = rmxi->RefAxis; DirCode = rmxi->DirCode; if (RefAxis == 'o') RefAxis = 0; if (DirCode == '=' || DirCode == '.') DirCode = 0; if (iG == 0) { if (RefAxis == 'z') RefAxis = 0; } else { if (AbsOrder == 2) { if (PreviousRotation == 2 || PreviousRotation == 4) { if (RefAxis == 'x') RefAxis = 0; } else if (PreviousRotation == 3 || PreviousRotation == 6) { if ( PreviousDirCode == '*' || RefAxis == PreviousRefAxis) RefAxis = 0; if (DirCode == '\'') DirCode = 0; } } else if (AbsOrder == 3) { if (DirCode == '*') DirCode = 0; } } PreviousRotation = AbsOrder; PreviousRefAxis = rmxi->RefAxis; PreviousDirCode = rmxi->DirCode; *hsym++ = ' '; if (rmxi->Order < 0) *hsym++ = '-'; *hsym++ = Digits[AbsOrder]; if (RefAxis) *hsym++ = RefAxis; if (DirCode) *hsym++ = DirCode; TrV = SgInfo->LatticeInfo->TrVector; for (iTrV = 0; iTrV < nTrV; iTrV++, TrV += 3) { for (i = 0; i < 3; i++) if ((GRT[iG].Transl[i] + TrV[i]) % STBF != 0) break; if (i == 3) break; } if (iTrV < nTrV) continue; /* next iG */ hsym_mark = hsym; TrV = SgInfo->LatticeInfo->TrVector; for (iTrV = 0; iTrV < nTrV; iTrV++, TrV += 3, hsym = hsym_mark) { for (i = 0; i < 3; i++) Transl[i] = iModPositive(GRT[iG].Transl[i] + TrV[i], STBF); Screw = 0; for (ip = 0; ip < 3; ip++) if (rmxi->EigenVector[ip] != 0) break; if (ip < 3 && rmxi->EigenVector[ip] == 1) { for (i = ip + 1; i < 3; i++) if (rmxi->EigenVector[i] != 0) break; if (i == 3) { ScrewPrimitive = STBF / AbsOrder; Screw = Transl[ip] / ScrewPrimitive; i = Screw * ScrewPrimitive; if (i % 3) { *hsym++ = Digits[Screw]; Transl[ip] -= i; } } } ht = HallTranslations; while (*ht) { for (i = 0; i < 3; i++) if (Transl[i] < ht[i + 1]) break; if (i == 3) { for (i = 0; i < 3; i++) Transl[i] -= ht[i + 1]; *hsym++ = (char) *ht; } ht += 4; } for (i = 0; i < 3; i++) if (Transl[i] != 0) break; if (i == 3) break; } if (iTrV == nTrV) return 0; } if (nGRT == 0) { *hsym++ = ' '; *hsym++ = '1'; } if (HaveOrSh) { *hsym++ = ' '; *hsym++ = '('; for (i = 0; i < 3; i++) { if (i) *hsym++ = ' '; os = iModPositive(SgInfo->OriginShift[i], 12); if (os > 6) { *hsym++ = '-'; os = 12 - os; } *hsym++ = Digits[os]; } *hsym++ = ')'; } *hsym = '\0'; if (SgInfo->HallSymbol[MaxLenHallSymbol] != '\0') { SetSgError("Internal Error: BuildHSym(): MaxLenHallSymbol too small"); return -1; } return 1; } static int BuildHallSymbol(T_SgInfo *SgInfo, int FixedOriginShift) { int ix, iy, iz; int status; static const int ShiftTable[] = { 0, 1, -1, 2, -2, 3 }; if (SgError != NULL) return -1; if (SgInfo->nGenerator == 0) { if (BuildGenerator_iList(SgInfo) != 0) { SetSgError("Error: Can't build generator list"); return -1; } } if (FixedOriginShift) { status = BuildHSym(SgInfo); if (status == 1) return 0; } else { for (ix = 0; ix < 6; ix++) { SgInfo->OriginShift[0] = ShiftTable[ix]; for (iy = 0; iy < 6; iy++) { SgInfo->OriginShift[1] = ShiftTable[iy]; for (iz = 0; iz < 6; iz++) { SgInfo->OriginShift[2] = ShiftTable[iz]; status = BuildHSym(SgInfo); if (status < 0) return -1; if (status == 1) return 0; } } } } SetSgError("Error: Can't build Hall Symbol"); return -1; } void InitSgInfo(T_SgInfo *SgInfo) { int i; SgInfo->GenOption = 0; SgInfo->Centric = 0; SgInfo->InversionOffOrigin = 0; SgInfo->LatticeInfo = LI_P; SgInfo->StatusLatticeTr = 0; for (i = 0; i < 3; i++) SgInfo->OriginShift[i] = 0; SgInfo->nList = 0; SgInfo->OrderL = 0; SgInfo->OrderP = 0; SgInfo->XtalSystem = XS_Unknown; SgInfo->UniqueRefAxis = 0; SgInfo->UniqueDirCode = 0; SgInfo->ExtraInfo = EI_Unknown; SgInfo->PointGroup = PG_Unknown; SgInfo->nGenerator = 0; SgInfo->HallSymbol[0] = '\0'; SgInfo->TabSgName = NULL; SgInfo->CCMx_LP = NULL; SgInfo->n_si_Vector = -1; } int CompleteSgInfo(T_SgInfo *SgInfo) { int List_iList[192]; const T_TabSgName *tsgn; if (SgInfo->StatusLatticeTr == -1) { if (AddLatticeTr2ListSeitzMx(SgInfo, SgInfo->LatticeInfo) < 0) return -1; } if (ApplyOriginShift(SgInfo) < 0) return -1; if (SgInfo->nList > sizeof List_iList / sizeof (*List_iList)) { SetSgError("Internal Error: CompleteSgInfo()"); return -1; } if (SgInfo->nList > 1) { SortSgInfoList(SgInfo, List_iList); if (SgError != NULL) return -1; } if (RemoveLatticeTr(SgInfo) != 0) return -1; if (RemoveInversion(SgInfo) != 0) return -1; TidyTranslation(SgInfo); if (SgInfo->nList > 1) { SortSgInfoList(SgInfo, List_iList); if (SgError != NULL) return -1; } SgInfo->OrderP = SgInfo->nList; if (SgInfo->Centric == -1) SgInfo->OrderP *= 2; SgInfo->OrderL = SgInfo->OrderP * SgInfo->LatticeInfo->nTrVector; if (BuildHallSymbol(SgInfo, 0) != 0) return -1; for (tsgn = TabSgName; tsgn->HallSymbol; tsgn++) if ( strcmp(tsgn->HallSymbol, SgInfo->HallSymbol) == 0 && ( SgInfo->TabSgName == NULL || SgInfo->TabSgName == tsgn)) break; if (SgInfo->TabSgName != NULL && tsgn->HallSymbol == NULL) { if (SgError) return -1; printf("Internal Error: Input/Output HallSymbol mismatch: %s <> %s", SgInfo->TabSgName->HallSymbol, SgInfo->HallSymbol); SetSgError(SgErrorBuffer); return -1; } if (tsgn->HallSymbol) SgInfo->TabSgName = tsgn; SgInfo->CCMx_LP = NULL; switch (SgInfo->LatticeInfo->Code) { case 'P': SgInfo->CCMx_LP = CCMx_PP; break; case 'A': SgInfo->CCMx_LP = CCMx_AP; break; case 'B': SgInfo->CCMx_LP = CCMx_BP; break; case 'C': SgInfo->CCMx_LP = CCMx_CP; break; case 'I': SgInfo->CCMx_LP = CCMx_IP; break; case 'R': switch (SgInfo->UniqueRefAxis) { case 0: case 'z': SgInfo->CCMx_LP = CCMx_RP_z; break; case 'y': SgInfo->CCMx_LP = CCMx_RP_y; break; default: break; } break; case 'S': switch (SgInfo->UniqueRefAxis) { case 0: case 'y': SgInfo->CCMx_LP = CCMx_SP_y; break; case 'x': SgInfo->CCMx_LP = CCMx_SP_x; break; default: break; } break; case 'T': switch (SgInfo->UniqueRefAxis) { case 0: case 'x': SgInfo->CCMx_LP = CCMx_TP_x; break; case 'z': SgInfo->CCMx_LP = CCMx_TP_z; break; default: break; } break; case 'F': SgInfo->CCMx_LP = CCMx_FP; break; default: break; } if (SgInfo->CCMx_LP == NULL) { SetSgError("Internal Error: Illegal lattice code"); return -1; } return 0; } int CB_SMx(T_RTMx *CSiC, const T_RTMx *CBMx, const T_RTMx *SMx, const T_RTMx *InvCBMx) { int i; T_RTMx BufMx; RTMxMultiply(&BufMx, SMx, InvCBMx, CTBF / STBF, CTBF); RTMxMultiply(CSiC, CBMx, &BufMx, CRBF, CRBF * CTBF); for (i = 0; i < 9; i++) { if (CSiC->s.R[i] % (CRBF * CRBF)) { SetSgError("Internal Error: Corrupt CBMx/SMx/InvCBMx"); return -1; } CSiC->s.R[i] /= (CRBF * CRBF); } for (i = 0; i < 3; i++) { if (CSiC->s.T[i] % (CRBF * (CTBF / STBF))) { SetSgError("Internal Error: Out of STBF range"); return -1; } CSiC->s.T[i] /= (CRBF * (CTBF / STBF)); } return 0; } int TransformSgInfo(const T_SgInfo *SgInfo, const T_RTMx *CBMx, const T_RTMx *InvCBMx, T_SgInfo *BC_SgInfo) { int iList, f, i; int nTrV, iTrV, nLoopInv, iLoopInv; const int *TrV; T_RTMx SMx, BC_SMx; const T_RTMx *lsmx; nLoopInv = Sg_nLoopInv(SgInfo); nTrV = SgInfo->LatticeInfo->nTrVector; TrV = SgInfo->LatticeInfo->TrVector; for (iTrV = 0; iTrV < nTrV; iTrV++, TrV += 3) { for (iLoopInv = 0; iLoopInv < nLoopInv; iLoopInv++) { if (iLoopInv == 0) f = 1; else f = -1; lsmx = SgInfo->ListSeitzMx; for (iList = 0; iList < SgInfo->nList; iList++, lsmx++) { for (i = 0; i < 9; i++) SMx.s.R[i] = f * lsmx->s.R[i]; for (i = 0; i < 3; i++) SMx.s.T[i] = f * lsmx->s.T[i] + TrV[i]; if (CB_SMx(&BC_SMx, CBMx, &SMx, InvCBMx) != 0) return -1; if (Add2ListSeitzMx(BC_SgInfo, &BC_SMx) < 0) return -1; } } } return 0; } #undef SGCLIB_C__ gdis-0.90/file_cel.c0000644000175000017500000001215210600706735012741 0ustar seansean/* Copyright (C) 2005 by Marcin Wojdyr This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ /* PowderCell structure data format - read-only * * example: * * cell 5.64009 5.64009 5.64009 90 90 90 * Na 11 0 0 0 * Cl 17 0.5 0 0 * rgnr 225 * * For detailed description of file format see: * http://users.omskreg.ru/~kolosov/bam/a_v/v_1/powder/details/strucdat.htm * or mirror: * http://www.ccp14.ac.uk/ccp/web-mirrors/powdcell/a_v/v_1/powder/details/powcell.htm * */ #include #include #include "gdis.h" #include "coords.h" #include "model.h" #include "file.h" #include "parse.h" /****************/ /* file reading */ /****************/ gint read_cel(gchar *filename, struct model_pak *model) { gchar *line; FILE *fp; int i; gint num_tokens, natom=0; gchar **buff; struct core_pak *core; /* checks */ g_return_val_if_fail(model != NULL, 1); g_return_val_if_fail(filename != NULL, 2); fp = fopen(filename, "rt"); if (!fp) return 3; /* 1st line - cell parameters */ line = file_read_line(fp); if (!line || strlen(line) < 5 || g_ascii_strncasecmp("cell", line, 4) != 0) { printf("The first line should start with the keyword CELL.\n"); return 4; } buff = tokenize(line+4, &num_tokens); g_free(line); if (num_tokens < 6) { g_strfreev(buff); printf("Keyword CELL should be followed by six numbers.\n"); return 5; } for (i=0; i<3; ++i) model->pbc[i] = str_to_float(buff[i]); for (i=3; i<6; ++i) model->pbc[i] = str_to_float(buff[i]) * D2R; g_strfreev(buff); /* next lines - atomic positions */ for (;;) { line = file_read_line(fp); if (!line) /*the end of file*/ { printf("No 'rgnr' symmetry line found.\n"); return 6; } else if (g_ascii_strncasecmp("rgnr", line, 4) == 0) /*no more atomic pos.*/ { break; } else if (g_ascii_strncasecmp("natom", line, 5) == 0)/*number of atoms */ /*some old .cel files have second line with number of atoms eg. "natom 6"*/ { buff = tokenize(line, &num_tokens); if (num_tokens > 1) natom = str_to_float(buff[1]); else printf("Warning: ignoring `natom' line:\n%s\n", line); g_free(line); g_strfreev(buff); } else if (strncmp(" ", line, 4) != 0) /* atomic position */ { buff = tokenize(line, &num_tokens); g_free(line); if (num_tokens < 5) { g_strfreev(buff); continue; } core = new_core(*buff, model); core->atom_label = g_strdup(buff[0]); /* in second column there is either atomic number * or something like "Mg2+" or "K+". The second form is for * " the use of different bonding states of one and the same * element (e.g. Fe2+ and Fe3+ in Fe3O4)" * FIXME how these bonding states can be interpreted in GDIS */ if (g_ascii_isdigit(buff[1][0])) core->atom_code = str_to_float(buff[1]); else { core->atom_code = elem_symbol_test(buff[1]); } for (i=0; i<3; ++i) core->x[i] = str_to_float(buff[2+i]); /* TODO interpret 2 next optional numbers: * so-called multiplied substitution and replacement factor (SOF) * and isotropic Debye-Waller factor * FIXME can they be interpreted by GDIS? -MW */ model->cores = g_slist_prepend(model->cores, core); g_strfreev(buff); } else /* replacement atom */ { /*FIXME replacement atoms are now silently ignored * how can I use this information in GDIS? - MW*/ g_free(line); } } /* last line - symmetry */ buff = tokenize(line, &num_tokens); model->sginfo.spacenum = str_to_float(buff[1]); /* FIXME/TODO how to interpret the second (optional) number? * From fileformat docs: * "sometimes there exists more than one setting of a space-group type. * Thus, a further number must be given if the structure hasn't been described * using a conventional setting (standard setting)." * http://users.omskreg.ru/~kolosov/bam/a_v/v_1/powder/details/strucdat.htm * http://users.omskreg.ru/~kolosov/bam/a_v/v_1/powder/details/setting.htm * Unfortunatelly I'm ignorant about space-groups - MW */ g_free(line); g_strfreev(buff); if (natom>0 && natom != g_slist_length(model->cores)) printf("Warning: expected %i atoms, have %i.", natom, g_slist_length(model->cores)); /* model setup */ model->fractional = TRUE; model->periodic = 3; strcpy(model->filename, filename); g_free(model->basename); model->basename = parse_strip(filename); model_prep(model); return 0; } gdis-0.90/command.h0000644000175000017500000000153011035034367012616 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ void command_main_loop(int, char **); void gdis_exit(void); gdis-0.90/scandir.h0000644000175000017500000000532207717054754012644 0ustar seansean/******************************************************************************* * * * Viewmol * * * * S C A N D I R . C * * * * Copyright (c) Joerg-R. Hill, December 2003 * * * ******************************************************************************** * * $Id: scandir.h,v 1.1.1.1 2003/08/15 03:56:28 seanfleming Exp $ * $Log: scandir.h,v $ * Revision 1.1.1.1 2003/08/15 03:56:28 seanfleming * Initial import. * * Revision 1.2 2002/02/14 01:48:51 sean * New configure - should allow non standard include/lib paths to be supplied. * * Revision 1.2 2001/09/03 05:02:57 sean * Marvin's surface generation code added * * Revision 1.1.1.1 2001/07/06 02:57:07 andrew * initial import * * Revision 1.2 2003/12/10 15:37:02 jrh * Release 2.3 * * Revision 1.1 1999/05/24 01:29:43 jrh * Initial revision * */ #include #include #include /* This function is only required for SunOS, all other supported OS have this function in their system library */ #define DEBUG_SCANDIR 1 int scandir(const char *dir, struct dirent ***namelist, int (*select)(const struct dirent *), int (*compar)(const struct dirent **, const struct dirent **)) { int j; DIR *d; struct dirent *entry; register int i=0; size_t entrysize; if ((d=opendir(dir)) == NULL) return(-1); *namelist=NULL; while ((entry=readdir(d)) != NULL) { if (select == NULL || (select != NULL && (*select)(entry))) { *namelist=(struct dirent **)realloc((void *)(*namelist), (size_t)((i+1)*sizeof(struct dirent *))); if (*namelist == NULL) return(-1); entrysize=sizeof(struct dirent)-sizeof(entry->d_name)+strlen(entry->d_name)+1; (*namelist)[i]=(struct dirent *)malloc(entrysize); if ((*namelist)[i] == NULL) return(-1); /* printf("entry: [%s] (%d)\n", entry->d_name, entrysize); */ memcpy((*namelist)[i], entry, entrysize); i++; } } for (j=0 ; j<10 ; j++) printf("<%d>: [%s]\n", j, (*namelist)[j]->d_name); if (closedir(d)) return(-1); if (i == 0) return(-1); if (compar != NULL) qsort((void *)(*namelist), (size_t)i, sizeof(struct dirent *), (void *) compar); return(i); } int alphasort(const struct dirent **a, const struct dirent **b) { return(strcmp((*a)->d_name, (*b)->d_name)); } gdis-0.90/win32.h0000644000175000017500000000017207717054756012163 0ustar seansean#include #define WIN32_DIR 16895 char *rindex(const char *, int); GSList *my_scandir(const char *, int, int); gdis-0.90/makefile.src0000644000175000017500000000270211066570717013327 0ustar seansean# --- gdis Makefile sources SRC = main.c model.c coords.c connect.c matrix.c module.c task.c \ type.c measure.c parse.c edit.c elem.c select.c surface.c \ analysis.c spatial.c render.c numeric.c project.c grid.c \ molsurf.c hirshfeld.c zone.c contents.c quaternion.c zmatrix.c \ library.c geometry.c space.c sginfo.c sgclib.c sgio.c error.c \ scan.c camera.c defect.c colourlib.c crystal_graph.c mdi.c \ mesch.c mesch_core.c host.c job.c command.c undo.c count.c \ ff.c ff_gulp.c test.c \ file.c file_cif.c file_gulp.c file_gmf.c file_marvin.c file_xtl.c \ file_arc.c file_xyz.c file_fdf.c file_gms.c file_diff.c file_xml.c \ file_abinit.c file_pdb.c file_povray.c file_nwchem.c file_castep.c \ file_gauss.c file_rietica.c file_geomview.c file_cssr.c file_cel.c \ file_dmol.c file_dlpoly.c file_bgf.c file_cgf.c file_dlp.c \ file_gromacs.c file_meta.c ifeq ($(USE_GUI), YES) SRC := $(SRC) gui_main.c gui_canvas.c gui_shorts.c \ gl_main.c gl_primitives.c gl_stereo.c gl_graph.c gl_varray.c \ gui_gulp.c gui_siesta.c gui_render.c gui_mdi.c gui_animate.c \ gui_edit.c gui_surface.c gui_analysis.c gui_defect.c \ gui_molsurf.c gui_diffract.c gui_gms.c gui_library.c gui_setup.c \ gui_gperiodic.c gui_space.c gui_measure.c gui_symmetry.c gui_zmatrix.c \ gui_dialog.c gui_tree.c gui_task.c gui_help.c gui_monty.c gui_job.c \ dock.c image.c gui_grid.c endif ifeq ($(USE_GRISU), YES) SRC := $(SRC) grisu_client.c soapC.c soapClient.c logging.c endif gdis-0.90/defect.h0000644000175000017500000000220510445461557012443 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ /********/ /* data */ /********/ struct defect_pak { /* debugg option */ gint cluster; /* Mott-Littleton */ gint cleave; gint neutral; gdouble region[2]; /* geometry */ gdouble orient[3]; gdouble burgers[3]; gdouble origin[2]; gdouble center[2]; }; /**************/ /* prototypes */ /**************/ void defect_new(struct defect_pak *, struct model_pak *); gdis-0.90/split_none.xpm0000644000175000017500000000076007717054756013753 0ustar seansean/* XPM */ static char * split_none_xpm[] = { "16 16 8 1", " c None", ". c #7F7F7F", "+ c #4D4D4D", "@ c #505050", "# c #8A8A8A", "$ c #777777", "% c #A7A7A7", "& c #4E4E4E", ".+++++++++++++@#", "+$ %+", "+ +", "+ +", "+ +", "+ +", "+ +", "+ +", "+ +", "+ +", "+ +", "+ +", "+ +", "+ +", "& +", "#++++++++++++++#"}; gdis-0.90/crystal_graph.c0000644000175000017500000001635610341254243014045 0ustar seansean/* Copyright (C) 2005 by Menno Deij m.deij@science.ru.nl This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include "gdis.h" #include "coords.h" #include "model.h" #include "file.h" #include "parse.h" #include "scan.h" #include "matrix.h" #include "interface.h" #include "numeric.h" /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; GSList * create_pair(struct model_pak * model, struct mol_pak * mol1, struct mol_pak * mol2, gint x, gint y, gint z) { GSList * core_iter = NULL, *mol2_copy = NULL; struct core_pak * core; if (mol1 == mol2 && x == 0 && y == 0 && z == 0) return NULL; /* copy cores */ mol2_copy = dup_core_list(mol2->cores); /* create a symmetry-related molecule and convert its fractional coordinates to cartesian*/ for (core_iter = mol2_copy; core_iter; core_iter = core_iter->next) { core = core_iter->data; core->primary = TRUE; //have to make primary, otherwise it will not be printed in gulp input file! core->x[0] += x; core->x[1] += y; core->x[2] += z; vecmat(model->latmat, core->x); } /* add copies of the mol1 cores and convert their fractional coordinates as well */ for (core_iter = mol1->cores; core_iter; core_iter = core_iter->next) { core = dup_core(core_iter->data); core->primary = TRUE; vecmat(model->latmat, core->x); mol2_copy = g_slist_prepend(mol2_copy, core); } /* return the result */ return mol2_copy; } /* some tree functions for setting up a tree with energies as keys */ GMemChunk *key_chunk; GTree *tree; gint energy_comp(gconstpointer a_ptr, gconstpointer b_ptr, gpointer ignored) { gdouble a, b; a = *(gdouble *)a_ptr; b = *(gdouble *)b_ptr; if (a < b) return 1; // if (fabs(a - b) < 1e-10) //no equal keys, every thing must end up in the tree // return 0; return -1; /* a >= b */ } void free_key(gpointer key) { g_mem_chunk_free(key_chunk, key); } void free_value(gpointer value) { g_free((gchar *)value); } gboolean print_node(gpointer key, gpointer value, gpointer ignored) { g_print("%-20s have interaction energy of %3.5f kJ/mol\n", (gchar *)value, *(gdouble *)key); return FALSE; } gdouble run_gulp(GSList *cores, gchar *species) { struct model_pak *new_model, *result_model; new_model = g_malloc(sizeof(struct model_pak)); result_model = g_malloc(sizeof(struct model_pak)); model_init(new_model); model_init(result_model); new_model->cores = cores; /* init gulp parameters */ new_model->gulp.run = E_SINGLE; new_model->gulp.method = CONP; new_model->gulp.species = g_strdup(species); new_model->gulp.libfile = g_strdup("dreiding.lib"); new_model->gulp.no_exec = TRUE; //for now we only write the input file new_model->gulp.temp_file = g_strdup("cgf_pair.gin"); new_model->gulp.out_file = g_strdup("cgf_pair.got"); new_model->gulp.coulomb = MOLE; new_model->periodic = 0; write_gulp(new_model->gulp.temp_file, new_model); gchar * cmd = g_strdup_printf("%s < %s > %s", sysenv.gulp_path, new_model->gulp.temp_file, new_model->gulp.out_file); system(cmd); g_free(cmd); read_gulp_output(new_model->gulp.out_file, result_model); gdouble result = result_model->gulp.energy; model_free(new_model); model_free(result_model); return result; } gint calculate_crystal_graph(struct model_pak * model) { gint m1 = 0, m2 = 0; struct mol_pak *mol1, *mol2; struct core_pak *core; GSList *pair = NULL; GSList *mol_iter= NULL, *mol_iter2 = NULL, *mol_copy = NULL, *core_iter = NULL; gint x = 0, y = 0, z = 0; gint a_images =(gint) model->monty.image_x + 0.5; gint b_images =(gint) model->monty.image_y + 0.5; gint c_images =(gint) model->monty.image_z + 0.5; /* checks */ g_return_val_if_fail(sysenv.gulp_path != NULL, 4); g_return_val_if_fail(model != NULL, 1); g_return_val_if_fail(a_images > 0 && b_images > 0 && c_images > 0, 2); if (model->periodic != 3) { gui_text_show(ERROR, "Can not calculate a crystal graph for non crystalline models"); return 3; } gint nr_molecules = g_slist_length(model->moles); /* initialize the key chunk to hold the maximum number of */ key_chunk = g_mem_chunk_create(gint, nr_molecules * nr_molecules *(2*a_images+1)*(2*b_images+1)*(2*c_images+1), G_ALLOC_AND_FREE); tree = g_tree_new_full(energy_comp, NULL, free_key, free_value); /* type to get the species line */ type_dreiding_gasteiger(model, DREIDING); /* calculate the single energies */ gdouble * single_energies = g_new0(gdouble, nr_molecules); for (mol_iter = model->moles; mol_iter; mol_iter = mol_iter->next) { mol1 = mol_iter->data; mol_copy = dup_core_list(mol1->cores); /* add copies of the mol1 cores and convert their fractional coordinates as well */ for (core_iter = mol_copy; core_iter; core_iter = core_iter->next) { core = core_iter->data; core->primary = TRUE; vecmat(model->latmat, core->x); } single_energies[m1] = run_gulp(mol_copy, model->gulp.species); single_energies[m1++] *= 96.48474; } m1 = 0; /* iterate over all molecule combinations */ for (mol_iter = model->moles; mol_iter; mol_iter = mol_iter->next) { mol1 = mol_iter->data; m2 = 0; for (mol_iter2 = model->moles; mol_iter2; mol_iter2 = mol_iter2->next) { mol2 = mol_iter2->data; /* create all x, y and z images this can be done smarter, as all bonds are now calculated twice */ for (x = -a_images; x <= a_images; ++x) { for (y = -b_images; y <= b_images; ++y) { for (z = -c_images; z <= c_images; ++z) { pair = create_pair(model, mol1, mol2, x, y, z); if (pair != NULL) { gdouble *key_ptr; key_ptr = g_chunk_new(gdouble, key_chunk); *key_ptr = run_gulp(pair, model->gulp.species); *key_ptr *= 96.48474; //eV --> kJ / mol *key_ptr -= single_energies[m1]; *key_ptr -= single_energies[m2]; gchar * combination = g_strdup_printf(" %i - %i [ %i %i %i ]", m1+1, m2+1, x,y,z); g_tree_insert(tree, key_ptr, combination); } } } } m2++; } m1++; } /* new iterate the results from the tree */ g_tree_foreach(tree, print_node, NULL); g_tree_destroy(tree); return(0); } gdis-0.90/undo.h0000644000175000017500000000173610556033543012157 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ void undo_init(struct model_pak *); void undo_free(struct model_pak *); void undo_register(struct model_pak *, gpointer, GSList *); void undo_single(struct model_pak *); void undo_active(void); gdis-0.90/file_castep.c0000644000175000017500000004565610770400653013472 0ustar seansean/* Copyright (C) 2004 by Andrew Lloyd Rohl andrew@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include "gdis.h" #include "coords.h" #include "file.h" #include "parse.h" #include "model.h" #include "interface.h" #include "matrix.h" /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /*******************************************/ /* read single CASTEP output configuration */ /*******************************************/ #define DEBUG_READ_CASTEP_OUT 0 gint read_castep_out_block(FILE *fp, struct model_pak *model) { gint i; gint num_tokens; gint no_grad = 0; gint last_frame = FALSE; gdouble grad, max_grad = 0.0, rms_grad = 0.0; gdouble pressure; gchar **buff, line[LINELEN], *ext, *text; GString *title, *grad_string, *pressure_string; GSList *clist; struct core_pak *core; clist = model->cores; /* read to end of iteration */ while (TRUE) { if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file reading to end of iteration\n"); return(2); } if (g_ascii_strncasecmp(line, "==========", 10) == 0) break; if (g_ascii_strncasecmp(line, "Writing model to", 16) == 0) break; /* read cell vectors? */ if (g_strrstr(line, "Real Lattice") != NULL) { /* read in cell vectors */ /* NB: gdis wants transposed matrix */ for (i=0; i<3; i++) { if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file reading cell vectors\n"); return(2); } buff = tokenize(line, &num_tokens); model->latmat[0+i] = str_to_float(*(buff+0)); model->latmat[3+i] = str_to_float(*(buff+1)); model->latmat[6+i] = str_to_float(*(buff+2)); g_strfreev(buff); } } gdouble* shifts[2000]; int shift_counter=0; gdouble* aniso[2000]; gdouble* asym[2000]; gdouble* cq[2000]; gdouble* efgasym[2000]; /* read coordinates */ if (g_strrstr(line, "x Element Atom Fractional coordinates of atoms x") != NULL) { int skip=0; for (skip=0; skip<3; skip++) if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file skipping to coordinates\n"); return(2); } buff = tokenize(line, &num_tokens); while (num_tokens == 7) { if (clist) { core = (struct core_pak *) clist->data; clist = g_slist_next(clist); } else { gchar* atom_name=g_strdup(*(buff+1)); /* Next line is corrected by Anne-Christine Uldry. Works if number of spicies >100 */ g_strlcat(atom_name,*(buff+2),5); /* g_strlcat(atom_name,*(buff+2),4);*/ core = core_new(*(buff+1),atom_name, model); model->cores = g_slist_append(model->cores, core); } core->x[0] = str_to_float(*(buff+3)); core->x[1] = str_to_float(*(buff+4)); core->x[2] = str_to_float(*(buff+5)); shifts[shift_counter]=&core->atom_nmr_shift; aniso[shift_counter]=&core->atom_nmr_aniso; asym[shift_counter]=&core->atom_nmr_asym; cq[shift_counter]=&core->atom_nmr_cq; efgasym[shift_counter]=&core->atom_nmr_efgasym; shift_counter++; #if DEBUG_READ_CASTEP_OUT printf("new coords %f %f %f\n", core->x[0], core->x[1], core->x[2]); #endif /* get next line */ g_strfreev(buff); if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file reading coordinates\n"); return(2); } buff = tokenize(line, &num_tokens); } g_strfreev(buff); clist = model->cores; } /*Iso chemical shifts */ if (g_strrstr(line, "| Species Ion Iso(ppm)") != NULL) { if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file skipping to coordinates\n"); return(2); } buff = tokenize(line, &num_tokens); int i=0; while ((num_tokens == 9) || (num_tokens == 7)) { /* if (i<=shift_counter)*/ *shifts[i]=str_to_float(*(buff+3)); *aniso[i]=str_to_float(*(buff+4)); *asym[i]=str_to_float(*(buff+5)); if (num_tokens == 9) { //read EFG parameters if present *cq[i]=str_to_float(*(buff+6)); *efgasym[i]=str_to_float(*(buff+7)); } i++; /* get next line */ g_strfreev(buff); if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file reading coordinates\n"); return(2); } buff = tokenize(line, &num_tokens); } g_strfreev(buff); } /* EFG only computation*/ if (g_strrstr(line, " | Species Ion Cq(MHz)") != NULL) { if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file skipping to coordinates\n"); return(2); } buff = tokenize(line, &num_tokens); int i=0; while (num_tokens == 6) { *cq[i]=str_to_float(*(buff+3)); *efgasym[i]=str_to_float(*(buff+4)); i++; /* get next line */ g_strfreev(buff); if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file reading coordinates\n"); return(2); } buff = tokenize(line, &num_tokens); } g_strfreev(buff); } /* SCF or Final Energy */ if (g_strrstr(line, "Number of kpoints used") != NULL) { buff = g_strsplit(line, "=", 2); g_strchug(g_strchomp(*(buff+1))); property_add_ranked(10, "K-points", *(buff+1), model); g_strfreev(buff); } if (g_strrstr(line, "Files used for pseudopotentials:") != NULL) { if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file reading pseudotential file names\n"); return(2); } buff = tokenize(line, &num_tokens); ext = find_char(*(buff+1), '.', LAST); ext++; if (g_strrstr(ext, "usp") != NULL) property_add_ranked(10, "Pseudopotentials", "Ultrasoft", model); else if (g_strrstr(ext, "recpot") != NULL) property_add_ranked(10, "Pseudopotentials", "Norm conserving", model); else property_add_ranked(10, "Pseudopotentials", "Unknown", model); } if (g_ascii_strncasecmp(line, "Final energy", 12) == 0) { buff = g_strsplit(line, "=", 2); text = format_value_and_units(*(buff+1), 5); property_add_ranked(3, "Energy", text, model); g_free(text); model->castep.energy = str_to_float(*(buff+1)); model->castep.have_energy = TRUE; g_strfreev(buff); } if (g_strrstr(line, "Final Enthalpy") != NULL) { last_frame = TRUE; model->castep.min_ok = TRUE; buff = g_strsplit(line, "=", 2); text = format_value_and_units(*(buff+1), 5); property_add_ranked(3, "Energy", text, model); g_free(text); model->castep.energy = str_to_float(*(buff+1)); model->castep.have_energy = TRUE; g_strfreev(buff); } /* gradients */ if (g_strrstr(line, "* -") != NULL) { for (i=0; i<2; i++) { if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file skipping to gradients\n"); return(2); } } /* read gradients */ if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file reading gradients\n"); return(2); } buff = tokenize(line, &num_tokens); while (num_tokens == 7) { for (i=0; i<3; i++) { grad = str_to_float(*(buff+3+i)); no_grad++; rms_grad = grad*grad; max_grad = MAX(fabs(grad), max_grad); } /* get next line */ g_strfreev(buff); if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file reading gradients\n"); return(2); } buff = tokenize(line, &num_tokens); } g_strfreev(buff); model->castep.rms_grad = sqrt(rms_grad/no_grad); model->castep.max_grad = max_grad; grad_string = g_string_new(""); g_string_append_printf(grad_string, "%.5f %s", model->castep.rms_grad, property_lookup("Gradient Units", model)); property_add_ranked(4, "RMS Gradient", grad_string->str, model); g_string_free(grad_string, TRUE); #if DEBUG_READ_CASTEP_OUT printf("RMS gradient: %f Max gradient: %f\n", model->castep.rms_grad, model->castep.max_grad); #endif } if (g_strrstr(line, "Pressure") != NULL) { /* read pressure */ buff = tokenize(line, &num_tokens); pressure = str_to_float(*(buff+2)); pressure_string = g_string_new(""); g_string_append_printf(pressure_string, "%.4f %s", pressure, property_lookup("Pressure Units", model)); property_add_ranked(5, "Pressure", pressure_string->str, model); g_string_free(pressure_string, TRUE); g_strfreev(buff); } } g_free(model->title); title = g_string_new(""); g_string_append_printf(title, "E"); g_string_append_printf(title, "(DFT)"); /* TODO read energy units from CASTEP file */ g_string_append_printf(title, " = %.5f eV", model->castep.energy); g_string_append_printf(title, ", grad = %.5f", model->castep.rms_grad); model->title = g_strdup(title->str); g_string_free(title, TRUE); return(0); } /*******************************/ /* CASTEP output frame reading */ /*******************************/ gint read_castep_out_frame(FILE *fp, struct model_pak *model) { return(read_castep_out_block(fp, model)); } /********************************/ /* Read in a CASTEP output file */ /********************************/ gint read_castep_out(gchar *filename, struct model_pak *model) { gint frame; gchar **buff, line[LINELEN], *text; FILE *fp; if (g_strrstr(filename, ".cell") != NULL) return read_cell(filename, model); fp = fopen(filename, "rt"); if (!fp) return(1); model->construct_pbc = TRUE; model->periodic = 3; model->fractional = TRUE; frame=0; while (!fgetline(fp, line)) { /* find relevent units */ if (g_strrstr(line, "force unit") != NULL) { buff = g_strsplit(line, ":", 2); g_strstrip(*(buff+1)); property_add_ranked(0, "Gradient Units", *(buff+1), model); g_strfreev(buff); } if (g_strrstr(line, "pressure unit") != NULL) { buff = g_strsplit(line, ":", 2); g_strstrip(*(buff+1)); property_add_ranked(0, "Pressure Units", *(buff+1), model); g_strfreev(buff); } /* store selected parameters in hash table */ if (g_ascii_strncasecmp(line, " type of calculation", 20) == 0) { buff = g_strsplit(line, ":", 2); g_strstrip(*(buff+1)); if (g_ascii_strncasecmp(*(buff+1), "geometry optimization", 21) == 0) property_add_ranked(2, "Calculation", "Optimisation", model); else if (g_ascii_strncasecmp(*(buff+1), "single point energy", 19) == 0) property_add_ranked(2, "Calculation", "Single Point", model); else property_add_ranked(2, "Calculation", *(buff+1), model); g_strfreev(buff); } if (g_ascii_strncasecmp(line, " using functional", 17) == 0) { buff = g_strsplit(line, ":", 2); g_strstrip(*(buff+1)); if (g_ascii_strncasecmp(*(buff+1), "Perdew Burke Ernzerhof", 22) == 0) property_add_ranked(7, "Functional", "PBE", model); else if (g_ascii_strncasecmp(*(buff+1), "Perdew Wang (1991)", 18) == 0) property_add_ranked(7, "Functional", "PW91", model); else property_add_ranked(7, "Functional", *(buff+1), model); g_strfreev(buff); } if (g_ascii_strncasecmp(line, " plane wave basis set cut-off", 29) == 0) { buff = g_strsplit(line, ":", 2); g_strstrip(*(buff+1)); text = format_value_and_units(*(buff+1), 1); property_add_ranked(6, "Basis Cutoff", text, model); g_free(text); } if (g_ascii_strncasecmp(line, " size of standard grid", 22) == 0) { buff = g_strsplit(line, ":", 2); g_strstrip(*(buff+1)); text = format_value_and_units(*(buff+1), 2); property_add_ranked(10, "Grid", text, model); g_free(text); } /* read coordinates */ if ((g_strrstr(line, "Unit Cell") != NULL) || (g_strrstr(line, "Cell Contents") != NULL)) { /* go through all frames to count them */ add_frame_offset(fp, model); read_castep_out_block(fp, model); frame++; } } /* done */ strcpy(model->filename, filename); g_free(model->basename); model->basename = parse_strip(filename); model->num_frames = model->cur_frame = frame; model->cur_frame--; model_prep(model); return(0); } /* VEZ write in CASTEP cell file */ gint write_castep_cell(gchar *filename, struct model_pak *model) { gdouble c; gdouble x[3]; GSList *list; struct core_pak *core; gint i = 0; FILE *fp; /* checks */ g_return_val_if_fail(model != NULL, 1); g_return_val_if_fail(filename != NULL, 2); /* open the file */ fp = fopen(filename, "wt"); if (!fp) return(3); if (model->periodic) { if (model->periodic == 2) /* saving a surface as a 3D model - make depth large enough to fit everything */ c = 2.0*model->rmax; else c = model->pbc[2]; if ((180.0*model->pbc[3]/PI<0.0) || (180.0*model->pbc[3]/PI>180.0)) gui_text_show(ERROR, "Cell angle alpha is not in 0-180 degree range, please correct manually\n"); if ((180.0*model->pbc[4]/PI<0.0) || (180.0*model->pbc[4]/PI>180.0)) gui_text_show(ERROR, "Cell angle beta is not in 0-180 degree range, please correct manually\n"); if ((180.0*model->pbc[5]/PI<0.0) || (180.0*model->pbc[5]/PI>180.0)) gui_text_show(ERROR, "Cell angle gamma is not in 0-180 degree range, please correct manually\n"); fprintf(fp,"%%BLOCK LATTICE_ABC\n"); fprintf(fp,"%f %f %f\n",model->pbc[0], model->pbc[1], c); fprintf(fp,"%f %f %f\n",fabs(180.0*model->pbc[3]/PI),fabs(180.0*model->pbc[4]/PI),fabs(180.0*model->pbc[5]/PI)); fprintf(fp,"%%ENDBLOCK LATTICE_ABC\n\n"); } /* The ATOM records */ fprintf(fp,"%%BLOCK POSITIONS_ABS\n"); for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; /* everything is cartesian after latmat mult */ ARR3SET(x, core->x); vecmat(model->latmat, x); i++; fprintf(fp,"%s %f %f %f\n",elements[core->atom_code].symbol,x[0], x[1], x[2]); /* fprintf(fp,"ATOM %5d %-4.4s %-3.3s %1.1s %3d %8.3f%8.3f%8.3f%6.2f%6.2f %-4s%2s%-2s\n", i, core->atom_label, core->res_name, core->chain, core->res_no, x[0], x[1], x[2], core->sof, 0.0, "", elements[core->atom_code].symbol, "");*/ } fprintf(fp,"%%ENDBLOCK POSITIONS_ABS\n\n"); /* fixed atoms */ gint constrains_counter=1; gint atomic_counter[200]; int qq; for (qq=0; qq<200; qq++) atomic_counter[qq]=1; fprintf(fp,"%%BLOCK IONIC_CONSTRAINTS\n"); for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->ghost) { fprintf(fp,"%d %s %d 1 0 0\n",constrains_counter, elements[core->atom_code].symbol, atomic_counter[core->atom_code]); constrains_counter++; fprintf(fp,"%d %s %d 0 1 0\n",constrains_counter, elements[core->atom_code].symbol, atomic_counter[core->atom_code]); constrains_counter++; fprintf(fp,"%d %s %d 0 0 1\n",constrains_counter, elements[core->atom_code].symbol, atomic_counter[core->atom_code]); constrains_counter++; } atomic_counter[core->atom_code]++; } fprintf(fp,"%%ENDBLOCK IONIC_CONSTRAINTS\n\n"); fprintf(fp,"KPOINTS_MP_SPACING 0.05\n\nFIX_ALL_CELL : TRUE\n\nFIX_COM : FALSE\n\nSYMMETRY_GENERATE\n"); fclose(fp); return(0); } /* From here and below is VZ routines to read .cell files */ /*************************************************/ /* read a .cell block into the model structure */ /*************************************************/ gint read_cell_block(FILE *fp, struct model_pak *data) { gchar line[LINELEN], *atom_name, *element, **buf; struct core_pak *core; GSList *clist; gint num_tokens; clist = data->cores; /* loop while there's data */ while (!fgetline(fp, line)) { /* 3-D structure? */ if (g_strrstr(line, "BLOCK LATTICE_ABC") != 0) { printf("Here\n"); if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file skipping to gradients\n"); return(2); } data->periodic = 3; buf=tokenize(line,&num_tokens); printf("entries %d\n",num_tokens); data->pbc[0] = str_to_float(*(buf+0)); data->pbc[1] = str_to_float(*(buf+1)); data->pbc[2] = str_to_float(*(buf+2)); if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file skipping to gradients\n"); return(2); } g_strfreev(buf); buf=tokenize(line,&num_tokens); printf("entries %d\n",num_tokens); data->pbc[3] = str_to_float(*(buf+0))* PI/180.0; data->pbc[4] = str_to_float(*(buf+1)) * PI/180.0; data->pbc[5] = str_to_float(*(buf+2)) * PI/180.0; printf("al be ga %f %f %f\n",data->pbc[3],data->pbc[4],data->pbc[5]); if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file skipping to gradients\n"); return(2); } /*omit next line*/ } else if (g_strrstr(line, "BLOCK POSITIONS_") != 0) { if (g_strrstr(line, "BLOCK POSITIONS_ABS") != 0) data->fractional = FALSE; else data->fractional = TRUE; if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file skipping to gradients\n"); return(2); } /* go to next line */ while (g_strrstr(line, "ENDBLOCK POSITIONS_") == 0) { buf = tokenize(line,&num_tokens); element = g_strdup(*(buf+0)); atom_name = g_strdup(element); if (clist) { core = clist->data; clist = g_slist_next(clist); } else { core = core_new(element, atom_name, data); data->cores = g_slist_append(data->cores, core); } g_free(atom_name); core->x[0] = str_to_float(*(buf+1)); core->x[1] = str_to_float(*(buf+2)); core->x[2] = str_to_float(*(buf+3)); g_strfreev(buf); if (fgetline(fp, line)) { gui_text_show(ERROR, "unexpected end of file skipping to gradients\n"); return(2); } } } } return(-1); } /*********************/ /* PDB frame read */ /*********************/ gint read_cell_frame(FILE *fp, struct model_pak *data) { /* frame overwrite */ read_cell_block(fp, data); return(0); } /******************/ /* PDB reading */ /******************/ #define DEBUG_READ_PDB 0 gint read_cell(gchar *filename, struct model_pak *data) { gint frame=0; FILE *fp; /* checks */ g_return_val_if_fail(data != NULL, 1); g_return_val_if_fail(filename != NULL, 2); /* initialisers */ data->periodic = 0; fp = fopen(filename, "rt"); if (!fp) return(3); add_frame_offset(fp, data); while (read_cell_block(fp, data) == 0) { add_frame_offset(fp, data); /* increment counter */ frame++; } /* model setup */ strcpy(data->filename, filename); g_free(data->basename); data->basename = parse_strip(filename); data->num_frames = data->cur_frame = frame; data->cur_frame--; model_prep(data); return(0); } gdis-0.90/file_cif.c0000644000175000017500000004107410553621773012751 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include "gdis.h" #include "coords.h" #include "file.h" #include "parse.h" #include "matrix.h" #include "model.h" #include "interface.h" #define DEBUG_MORE 0 #define MAX_KEYS 15 /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /***************/ /* CIF writing */ /***************/ gint write_cif(gchar *filename, struct model_pak *data) { gint flag=0; gdouble tmat[9], x[3], depth=1.0; GSList *list; FILE *fp; time_t t1; struct core_pak *core; /* init & checks */ g_return_val_if_fail(data != NULL, 1); fp = fopen(filename, "wt"); g_return_val_if_fail(fp != NULL, 2); /* is it a surface with negative z? */ if (data->periodic == 2) { if (g_slist_length(data->cores)) { core = (struct core_pak *) g_slist_nth_data(data->cores, 0); if (core->x[2] < 0.0) flag++; } } /* rot to make z positive */ matrix_rotation(&tmat[0], PI, PITCH); t1 = time(NULL); fprintf(fp, "data_block_1\n"); fprintf(fp, "_audit_creation_date '%s'\n", g_strstrip(ctime(&t1))); fprintf(fp, "_audit_creation_method 'generated by GDIS v%4.2f'\n", VERSION); fprintf(fp, "\n\n"); if (data->periodic) { fprintf(fp, "_cell_length_a %8.4f\n",data->pbc[0]); fprintf(fp, "_cell_length_b %8.4f\n",data->pbc[1]); if (data->periodic == 2) { /* get depth info */ depth = (data->surface.region[0]+data->surface.region[1])*data->surface.depth; /* no depth info - make it large enough to fit everything */ if (depth < POSITION_TOLERANCE) depth = 2.0*data->rmax; fprintf(fp, "_cell_length_c %8.4f\n", depth); } else fprintf(fp, "_cell_length_c %8.4f\n",data->pbc[2]); fprintf(fp, "_cell_angle_alpha %8.2f\n",180.0*data->pbc[3]/PI); fprintf(fp, "_cell_angle_beta %8.2f\n",180.0*data->pbc[4]/PI); fprintf(fp, "_cell_angle_gamma %8.2f\n",180.0*data->pbc[5]/PI); fprintf(fp, "\n\n"); fprintf(fp, "_symmetry_space_group_name_H-M '%s'\n",data->sginfo.spacename); fprintf(fp, "_symmetry_Int_Tables_number %d\n",data->sginfo.spacenum); fprintf(fp, "\n\n"); } /* coords - format section */ fprintf(fp, "loop_\n"); fprintf(fp, "_atom_site_label\n"); if (data->periodic) { fprintf(fp, "_atom_site_fract_x\n"); fprintf(fp, "_atom_site_fract_y\n"); fprintf(fp, "_atom_site_fract_z\n"); } else { fprintf(fp, "_atom_site_cartn_x\n"); fprintf(fp, "_atom_site_cartn_y\n"); fprintf(fp, "_atom_site_cartn_z\n"); } /* coords - data section */ for (list=data->cores ; list ; list=g_slist_next(list)) { core = list->data; /* only the asymmetric cell if periodic */ if (data->periodic && !core->primary) continue; /* NB: want fractional if 3D periodic, otherwise cartesian */ ARR3SET(x, core->x); /* transformation needed? */ if (flag) vecmat(tmat, x); /* make the z coordinate "fractional" for a surface */ if (data->periodic == 2) x[2] /= depth; fprintf(fp, "%2s %9.4f %9.4f %9.4f\n", elements[core->atom_code].symbol, x[0], x[1], x[2]); } fprintf(fp, "\n\n"); fclose(fp); return(0); } /***************/ /* CIF loading */ /***************/ #define DEBUG_LOAD_CIF 0 gint read_cif(gchar *filename, struct model_pak *data) { gint i, j, n, first, new, order, pos, keyword, loop_count=0; gint min_tokens, num_tokens, len, flag; gint s_pos, l_pos, x_pos, y_pos, z_pos, o_pos; gchar **buff, *tmp, *name=NULL, *line; gdouble sign, mat[9], off[3]; GSList *list=NULL; struct core_pak *core; FILE *fp; /* checks */ g_return_val_if_fail(data != NULL, 1); g_return_val_if_fail(filename != NULL, 2); fp = fopen(filename, "rt"); if (!fp) return(3); /* atom counter */ n=-1; new = first = 0; data->id = -1; for(;;) { /* end if EOF */ line = file_read_line(fp); if (!line) break; /* if (fgetline(fp, line)) break; */ /* search for data */ list = get_keywords(line); cif_parse:; if (list != NULL) { keyword = GPOINTER_TO_INT(list->data); switch(keyword) { /* model labels */ /* FIXME - needs to search for the 1st occurrance of ' or " & then get the string */ /* case CIF_CHEMICAL_NAME: tmp = g_strdup(get_token_pos(line,1)); for (i=0 ; ibasename); data->basename = g_strdup(g_strstrip(tmp)); g_free(tmp); break; case CIF_MINERAL_NAME: tmp = g_strdup(get_token_pos(line,1)); for (i=0 ; ibasename); data->basename = g_strdup(g_strstrip(tmp)); g_free(tmp); break; */ /* stopgap model name */ case CIF_DATA_START: name = g_strdup(g_strstrip(&line[5])); break; /* candidate new model trigger */ /* CIF is a pain - there seems to be no clear cut new structure */ /* trigger (in a multi structure file) that everyone uses */ case CIF_AUDIT: /* skip this the 1st time (we've already alloc'd a data pointer for safety) */ new++; if ((new-first) > 1) { /* NEW - some dodgy models have no atom data - so allow new model */ /* creation if we have (the bare minimum) some new cell parameters */ if (!data->periodic) { /* no cell parameters found yet - don't create a new model */ new--; break; } # if DEBUG_LOAD_CIF printf("Found %d atoms. [reset]\n", n); #endif /* alloc new pointer */ data = model_new(); if (data == NULL) goto cif_done; } /* if we found a name - assign it now */ if (name) { g_free(data->basename); data->basename = name; name = NULL; } #if DEBUG_LOAD_CIF printf("Start of new model: %s.\n", data->basename); #endif break; /* model specific data - the *data ptr MUST be allocated */ case CIF_CELL_A: buff = get_tokens(line, 3); data->pbc[0] = str_to_float(*(buff+1)); data->periodic++; g_strfreev(buff); break; case CIF_CELL_B: buff = get_tokens(line, 3); data->pbc[1] = str_to_float(*(buff+1)); data->periodic++; g_strfreev(buff); break; case CIF_CELL_C: buff = get_tokens(line, 3); data->pbc[2] = str_to_float(*(buff+1)); data->periodic++; g_strfreev(buff); break; case CIF_CELL_ALPHA: buff = get_tokens(line, 3); data->pbc[3] = PI*str_to_float(*(buff+1))/180.0; g_strfreev(buff); break; case CIF_CELL_BETA: buff = get_tokens(line, 3); data->pbc[4] = PI*str_to_float(*(buff+1))/180.0; g_strfreev(buff); break; case CIF_CELL_GAMMA: buff = get_tokens(line, 3); data->pbc[5] = PI*str_to_float(*(buff+1))/180.0; g_strfreev(buff); break; case CIF_SPACE_NAME: /* remove the enclosing ' characters */ tmp = g_strdup(get_token_pos(line,1)); for (i=0 ; isginfo.spacename = g_strdup(g_strstrip(tmp)); /* indicate that name should used in lookup */ data->sginfo.spacenum = -1; #if DEBUG_LOAD_CIF printf("spacegroup: [%s]\n",data->sginfo.spacename); #endif g_free(tmp); break; case CIF_SPACE_NUM: buff = get_tokens(line, 3); g_strfreev(buff); break; case CIF_EQUIV_SITE: loop_count++; break; /* NEW - reinserted the lost symmetry matrix code */ case CIF_EQUIV_POS: /* allocate for order number of pointers (to matrices) */ data->sginfo.matrix = (gdouble **) g_malloc(sizeof(gdouble *)); data->sginfo.offset = (gdouble **) g_malloc(sizeof(gdouble *)); data->sginfo.order=order=0; for(;;) { /* terminate on EOF, */ g_free(line); line = file_read_line(fp); if (!line) break; /* blank line, */ g_strstrip(line); if (!strlen(line)) break; /* or a new command */ list = get_keywords(line); if (list) goto cif_parse; /* TODO - make this parsing a subroutine */ for(i=0 ; isginfo.matrix = (gdouble **) g_renew (gdouble *, data->sginfo.matrix , (order+1)); data->sginfo.offset = (gdouble **) g_renew (gdouble *, data->sginfo.offset , (order+1)); /* actual op */ *(data->sginfo.matrix+order) = (gdouble *) g_malloc(9*sizeof(gdouble)); *(data->sginfo.offset+order) = (gdouble *) g_malloc(3*sizeof(gdouble)); #if DEBUG_LOAD_CIF printf("[%s] [%s] [%s]\n", *(buff+n+0), *(buff+n+1), *(buff+n+2)); #endif VEC3SET(&mat[0], 0.0, 0.0, 0.0); VEC3SET(&mat[3], 0.0, 0.0, 0.0); VEC3SET(&mat[6], 0.0, 0.0, 0.0); VEC3SET(&off[0], 0.0, 0.0, 0.0); for (i=0 ; i<3 ; i++) { pos=0; sign=1.0; for (j=0 ; jsginfo.matrix+order)+0), &mat[0]); ARR3SET((*(data->sginfo.matrix+order)+3), &mat[3]); ARR3SET((*(data->sginfo.matrix+order)+6), &mat[6]); ARR3SET((*(data->sginfo.offset+order)+0), &off[0]); #if DEBUG_LOAD_CIF P3MAT("output: ", *(data->sginfo.matrix+order)); P3VEC("output: ", *(data->sginfo.offset+order)); printf("\n\n"); #endif order++; data->sginfo.order++; n += 3; } g_strfreev(buff); } #if DEBUG_LOAD_CIF printf("Found %d symmetry matrices.\n", order); #endif data->sginfo.order = order; break; case CIF_LOOP_START: loop_count = 0; break; /* parsing for column info ie x,y,z positions frac/cart etc. */ case CIF_ATOM_SITE: s_pos = l_pos = x_pos = y_pos = z_pos = o_pos = -1; while (g_strrstr(line, "atom_site") != NULL) { if (g_strrstr(line, "type_symbol")) s_pos = loop_count; if (g_strrstr(line, "label")) l_pos = loop_count; if (g_strrstr(line, "cart_x")) { x_pos = loop_count; data->fractional = FALSE; } if (g_strrstr(line, "cart_y")) { y_pos = loop_count; data->fractional = FALSE; } if (g_strrstr(line, "cart_z")) { z_pos = loop_count; data->fractional = FALSE; } if (g_strrstr(line, "fract_x")) { x_pos = loop_count; data->fractional = TRUE; } if (g_strrstr(line, "fract_y")) { y_pos = loop_count; data->fractional = TRUE; } if (g_strrstr(line, "fract_z")) { z_pos = loop_count; data->fractional = TRUE; } if (g_strrstr(line, "occupancy")) o_pos = loop_count; /* get next line and keyword list */ loop_count++; g_free(line); line = file_read_line(fp); if (!line) goto cif_done; } /* either symbol or label can be present & used for atom id purposes */ if (s_pos < 0) s_pos = l_pos; if (l_pos < 0) l_pos = s_pos; /* check for minimum data */ if (s_pos < 0 || x_pos < 0 || y_pos < 0 || z_pos < 0) { #if DEBUG_LOAD_CIF printf("read_cif() warning: incomplete cif file? [%d:%d:%d:%d]\n", s_pos, x_pos, y_pos, z_pos); #endif break; } /* the expected number of tokens */ min_tokens = loop_count; #if DEBUG_LOAD_CIF printf(" min tokens: %d\n", min_tokens); printf("data format: [%d] (%d) - [%d] [%d] [%d] (%d)", s_pos, l_pos, x_pos, y_pos, z_pos, o_pos); if (data->fractional) printf("(frac)\n"); else printf("(cart)\n"); #endif /* while no new keywords found */ n = 0; list = get_keywords(line); while (list == NULL) { buff = tokenize(line, &num_tokens); /* NB: cif is stupid - it allows data to continue on the next line, */ /* until it gets its number of tokens */ /* hopefully, this'll allow us to get something, even on short lines */ if (num_tokens >= z_pos) { /* NEW - ignore labelled (*) symmetry equiv. atoms */ flag = TRUE; if (l_pos >= 0 && l_pos < num_tokens) { len = strlen(*(buff+l_pos)); if ((*(buff+l_pos))[len-1] == '*') flag = FALSE; } if (elem_symbol_test(*(buff+s_pos)) && flag) { if (l_pos >= 0 && l_pos < num_tokens) core = core_new(*(buff+s_pos), *(buff+l_pos), data); else core = core_new(*(buff+s_pos), NULL, data); data->cores = g_slist_prepend(data->cores, core); core->x[0] = str_to_float(*(buff+x_pos)); core->x[1] = str_to_float(*(buff+y_pos)); core->x[2] = str_to_float(*(buff+z_pos)); /* only get occupancy if we're sure we have enough tokens */ if (o_pos > -1 && num_tokens >= min_tokens) { core->sof = str_to_float(*(buff+o_pos)); core->has_sof = TRUE; } n++; } } #if DEBUG_LOAD_CIF else printf("not enough tokens found.\n"); #endif /* get next line */ g_strfreev(buff); g_free(line); line = file_read_line(fp); if (!line) goto cif_done; list = get_keywords(line); /* CURRENT - we really want this keyword list parsed again, just in case */ /* a new model trigger (ie audit_creation_date) was found */ if (list) goto cif_parse; } break; } } } cif_done:; g_free(line); /* yet another hack to support the dodgy CIF standard */ j = new - first; if (!j && n) { /* no new model was triggered - but we found atoms, so we'll */ /* assume only one model was in the file & hope for the best */ new++; } #if DEBUG_LOAD_CIF printf("Found %d atoms.\n", n); printf("Found %d symmetry matrices.\n", data->sginfo.order); printf("Found %d model(s)\n", new-first); #endif /* setup for display */ for (list=sysenv.mal ; list ; list=g_slist_next(list)) { data = list->data; if (data->id == -1) { data->id = CIF; data->cores = g_slist_reverse(data->cores); model_prep(data); } } #if DEBUG_LOAD_CIF printf("Setup %d model(s).\n",new-first); #endif /* clean up & exit */ if (list) g_slist_free(list); return(0); } gdis-0.90/surface.c0000644000175000017500000012505011035034372012623 0ustar seansean/* Copyright (C) 1993 by David H. Gay and Andrew L. Rohl dgay@ricx.royal-institution.ac.uk andrew@ricx.royal-institution.ac.uk Modified 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include "gdis.h" #include "coords.h" #include "model.h" #include "edit.h" #include "matrix.h" #include "numeric.h" #include "vector.h" #include "space.h" #include "surface.h" #include "zone.h" #include "interface.h" typedef gchar boolean; /**********************/ /* debugging routines */ /**********************/ void surface_print_planes(GSList *planes) { GSList *list; struct plane_pak *plane; for (list=planes ; list ; list=g_slist_next(list)) { plane = list->data; printf("[%2d %2d %2d]", plane->index[0], plane->index[1], plane->index[2]); printf(" : %f , %f", plane->esurf[0], plane->eatt[0]); printf("\n"); } } /*********************/ /* duplicate a shift */ /*********************/ gpointer shift_dup(struct shift_pak *src) { struct shift_pak *dest; dest = g_malloc(sizeof(struct shift_pak)); memcpy(dest, src, sizeof(struct shift_pak)); return(dest); } /********************************************/ /* allocate for new shift & init for safety */ /********************************************/ gpointer shift_new(gdouble shift) { struct shift_pak *sdata; /* alloc */ sdata = g_malloc(sizeof(struct shift_pak)); sdata->locked = FALSE; sdata->shift = shift; sdata->dipole_computed = FALSE; sdata->dipole = 99.9; sdata->region[0] = 1; sdata->region[1] = 1; sdata->esurf[0] = 0.0; sdata->esurf[1] = 0.0; sdata->eatt[0] = 0.0; sdata->eatt[1] = 0.0; sdata->bbpa = 0.0; sdata->gnorm = -1.0; sdata->procfile = NULL; return(sdata); } /*********************/ /* duplicate a plane */ /*********************/ gpointer plane_dup(struct plane_pak *src) { GSList *list; struct plane_pak *dest; struct shift_pak *shift; dest = g_malloc(sizeof(struct plane_pak)); memcpy(dest, src, sizeof(struct plane_pak)); dest->shifts = NULL; for (list=src->shifts ; list ; list=g_slist_next(list)) { shift = shift_dup(list->data); dest->shifts = g_slist_prepend(dest->shifts, shift); } return(dest); } /****************************************/ /* determines surface and depth vectors */ /****************************************/ /* TODO - call this to eliminate redundancy in generate_surface() */ #define DEBUG_GENSURF 0 void plane_compute_vectors(struct plane_pak *plane, struct model_pak *src) { vector normal; vector lattice_vector[3]; /* lattice vectors */ vector t_mat[3]; /* transformation matrix */ vector work_lat[3]; /* transformed lattice vectors */ vector rec_work_lat[3]; /* reciprocal transformed lattice vectors */ vector s[3]; /* space we are trying to fill */ vector tempvec; vector *sv; vector a, *v_a=NULL, *v_b=NULL; boolean s2_found = FALSE; gint c, i, j, h, k, l, flag; gint GCD(gint, gint); gint vector_compare(vector *, vector *); gdouble inv_denom; gdouble depth, depth_min; gdouble gcd, cd, x; gdouble tmat[9], norm[3], va[3]; gdouble wlat[9]; gdouble sign, vec[3], vec2[3], dn[3]; GSList *list1, *list2, *sv_list1, *sv_list2; g_assert(src != NULL); /* find surface normal from the miller index and lattice vectors*/ V_ZERO(normal); /* setup */ h = plane->m[0]; k = plane->m[1]; l = plane->m[2]; /* acquire lattice vectors */ V_X(lattice_vector[0]) = src->latmat[0]; V_Y(lattice_vector[0]) = src->latmat[3]; V_Z(lattice_vector[0]) = src->latmat[6]; V_X(lattice_vector[1]) = src->latmat[1]; V_Y(lattice_vector[1]) = src->latmat[4]; V_Z(lattice_vector[1]) = src->latmat[7]; V_X(lattice_vector[2]) = src->latmat[2]; V_Y(lattice_vector[2]) = src->latmat[5]; V_Z(lattice_vector[2]) = src->latmat[8]; V_CROSS(tempvec, lattice_vector[1], lattice_vector[2]); V_QADD(normal, normal, +h*, tempvec); V_CROSS(tempvec, lattice_vector[2], lattice_vector[0]); V_QADD(normal, normal, +k*, tempvec); V_CROSS(tempvec, lattice_vector[0], lattice_vector[1]); V_QADD(normal, normal, +l*, tempvec); sv_list1 = NULL; c = (float) GCD(h, k); cd = c ? c : 1.0; V_2_ASSIGN(a, = k/cd * ,lattice_vector[0], - h/cd *, lattice_vector[1]); if (V_MAGSQ(a) > EPSILON) { sv = g_malloc(sizeof(vector)); V_EQUATE(*sv, a); sv_list1 = g_slist_prepend(sv_list1, sv); } c = (float) GCD(h, l); cd = c ? c : 1.0; V_2_ASSIGN(a, = l/cd * ,lattice_vector[0], - h/cd *, lattice_vector[2]); if (V_MAGSQ(a) > EPSILON) { sv = g_malloc(sizeof(vector)); V_EQUATE(*sv, a); sv_list1 = g_slist_prepend(sv_list1, sv); } c = (float) GCD(k, l); cd = c ? c : 1.0; V_2_ASSIGN(a, = l/cd * ,lattice_vector[1], - k/cd *, lattice_vector[2]); if (V_MAGSQ(a) > EPSILON) { sv = g_malloc(sizeof(vector)); V_EQUATE(*sv, a); sv_list1 = g_slist_prepend(sv_list1, sv); } sv_list2 = NULL; list1 = sv_list1; for (i=0 ; idata; list1 = list2 = g_slist_next(list1); for (j=i+1 ; jdata; list2 = g_slist_next(list2); V_2_ASSIGN(a, = , *v_a, + , *v_b); if (V_MAGSQ(a) > EPSILON) { sv = g_malloc(sizeof(vector)); V_EQUATE(*sv, a); sv_list2 = g_slist_prepend(sv_list2, sv); } V_2_ASSIGN(a, = , *v_a, - , *v_b); if (V_MAGSQ(a) > EPSILON) { sv = g_malloc(sizeof(vector)); V_EQUATE(*sv, a); sv_list2 = g_slist_prepend(sv_list2, sv); } } } sv_list1 = g_slist_concat(sv_list1, sv_list2); sv_list1 = g_slist_sort(sv_list1, (gpointer) vector_compare); /* set v_a to first (shortest now sorted) vector */ list1 = sv_list1; v_a = (vector *) list1->data; list1 = g_slist_next(list1); /* loop over remaining vectors - find shortest w/ orthogonal component */ while (list1) { v_b = (vector *) list1->data; V_CROSS(a, *v_a, *v_b); x = V_MAGSQ(a); if (x > EPSILON) { s2_found = TRUE; break; } list1 = g_slist_next(list1); } /* checks */ if (!s2_found) { printf("Failed to find surface vectors.\n"); return; } g_assert(v_a != NULL); g_assert(v_b != NULL); /* calculate transformation matrix */ V_SCALER(t_mat[2], (1.0/V_MAG(normal)), normal); V_SCALER(t_mat[0], (1.0/V_MAG(*v_a)), *v_a); V_CROSS(t_mat[1], t_mat[2], t_mat[0]); ARR3SET(norm, normal.element); ARR3SET(va, v_a->element); normalize(norm, 3); normalize(va, 3); ARR3SET(&tmat[6], norm); ARR3SET(&tmat[0], va); crossprod(&tmat[3], norm, va); /* calculate transformed lattice vectors */ for (j = 0; j < 3; j++) for (i = 0; i < 3; i++) V_E(work_lat[j], i) = V_DOT(t_mat[i], lattice_vector[j]); /* calculate reciprocal transformed lattice vectors */ V_CROSS(tempvec, work_lat[1], work_lat[2]); inv_denom = 1.0 / V_DOT(tempvec, work_lat[0]); V_CROSS(tempvec, work_lat[1], work_lat[2]); V_SCALER(rec_work_lat[0], inv_denom, tempvec); V_CROSS(tempvec, work_lat[2], work_lat[0]); V_SCALER(rec_work_lat[1], inv_denom, tempvec); V_CROSS(tempvec, work_lat[0], work_lat[1]); V_SCALER(rec_work_lat[2], inv_denom, tempvec); /* calculate transformed surface vectors */ for (i = 0; i < 3; i++) V_E(s[0], i) = V_DOT(t_mat[i], *v_a); for (i = 0; i < 3; i++) V_E(s[1], i) = V_DOT(t_mat[i], *v_b); /* return transformed surface vectors data in dest->latmat */ /* NB: latmat[0..8] is a 3x3 matrix so, */ /* | a b 0 | | c d 0 | | 0 0 0 | goes into latmat rows first ie a,b,0,c,d,0,0,0,0 */ /* set s[2] = to depths */ /* depth = 1.0e10; */ /* surface specification */ gcd = GCD(GCD(h, k), GCD(k, l)); VEC3SET(vec, h, k, l); vecmat(src->rlatmat, vec); /* calculate the Dhkl */ /* NB: we want the correct dspacing wrt hkl, ie DON'T remove the GCD */ /* dest->surface.dspacing = 1.0/VEC3MAG(vec); */ /* actual cut depth */ /* NB: done wrt the FULL depth (ie remove the gcd) */ depth = gcd/VEC3MAG(vec); /* dest->surface.depth = depth; */ /* round off the shift */ /* shift = decimal_round(dest->surface.shift, 4); */ /* store the work lattice */ for (i=0 ; i<3 ; i++) { wlat[3*i+0] = V_E(work_lat[0], i); wlat[3*i+1] = V_E(work_lat[1], i); wlat[3*i+2] = V_E(work_lat[2], i); } /* transfer surface vectors */ VEC3SET(&plane->lattice[0], V_X(s[0]), V_X(s[1]), 0.0); VEC3SET(&plane->lattice[3], V_Y(s[0]), V_Y(s[1]), 0.0); VEC3SET(&plane->lattice[6], 0.0, 0.0, 1.0); /* construct the depth vector */ /* compute the surface normal */ VEC3SET(vec, V_X(s[0]), V_Y(s[0]), 0.0); VEC3SET(vec2, V_X(s[1]), V_Y(s[1]), 0.0); crossprod(dn, vec, vec2); /* search for a vector with the smallest */ /* orthogonal component to the surface vectors */ flag=0; depth_min=0; for (i=0 ; i<3 ; i++) { /* ignore zero indices, which yield 0 orthogonal component */ if (plane->m[i]) { /* dotproduct of vector with normal */ ARR3SET(vec, dn); vec[0] *= wlat[i]; vec[1] *= wlat[i+3]; vec[2] *= wlat[i+6]; depth = fabs(vec[0] + vec[1] + vec[2]); if (flag) { if (depth > depth_min) continue; } else flag++; depth_min = depth; /* ensure the depth vector is pointing in the +ve z direction */ if (wlat[i+6] < 0.0) sign = -1.0; else sign = 1.0; plane->lattice[2] = sign*wlat[i]; plane->lattice[5] = sign*wlat[i+3]; plane->lattice[8] = sign*wlat[i+6]; } } } /********************************************/ /* allocate for new plane & init for safety */ /********************************************/ #define DEBUG_CREATE_PLANE 0 gpointer plane_new(gdouble *m, struct model_pak *model) { gint h, k, l, n; gdouble len, vec[3]; struct plane_pak *plane=NULL; /* checks */ g_return_val_if_fail(model != NULL, NULL); plane = g_malloc(sizeof(struct plane_pak)); #if DEBUG_CREATE_PLANE printf("creating: %d %d %d -> ", (gint) m[0], (gint) m[1], (gint) m[2]); #endif /* save orig */ h = m[0]; k = m[1]; l = m[2]; n = 2; /* absence testing function */ if (!model->surface.ignore_symmetry) { while (surf_sysabs(model, h, k, l) && n<100) { h = n*m[0]; k = n*m[1]; l = n*m[2]; n++; } } if (n == 100) { printf("WARNING: screwed up systematic absence check.\n"); h /= 99; k /= 99; l /= 99; n = 2; } #if DEBUG_CREATE_PLANE printf("%d %d %d (x %d)\n", h, k, l, n-1); #endif /* init */ VEC3SET(plane->m, (gdouble) h, (gdouble) k, (gdouble) l); VEC3SET(plane->norm, (gdouble) h, (gdouble) k, (gdouble) l); VEC3SET(plane->index, h, k, l); plane->shifts = NULL; plane->vertices = NULL; /* calc Dhkl */ VEC3SET(vec, h, k, l); vecmat(model->rlatmat, vec); plane->dhkl = 1.0/VEC3MAG(vec); /* morphology prediction */ len = VEC3MAG(vec); if (len > FRACTION_TOLERANCE) { VEC3MUL(vec, 1.0/len); VEC3MUL(vec, -1.0); ARR3SET(plane->x, vec); } else { gui_text_show(WARNING, "plane of zero length created.\n"); } plane->esurf_shift = 0.0; plane->eatt_shift = 0.0; plane->bbpa_shift = 0.0; plane->esurf[0] = 0.0; plane->esurf[1] = 0.0; plane->eatt[0] = 0.0; plane->eatt[1] = 0.0; plane->bbpa = 0.0; plane->area = 0.0; plane->f[0] = 0.0; plane->f[1] = 0.0; /* calc? */ plane->multiplicity = 1; plane->present = TRUE; plane->visible = FALSE; plane->primary = TRUE; plane->parent = NULL; VEC3SET(plane->rx, 0.0, 0.0, 0.0); /* NEW */ plane_compute_vectors(plane, model); return(plane); } /************************************************************/ /* determine if a particular plane has already been created */ /************************************************************/ gpointer plane_find(gdouble *hkl, struct model_pak *model) { GSList *list; struct plane_pak *comp, *plane; /* get corrected (sys absent!) miller index */ comp = plane_new(hkl, model); g_return_val_if_fail(comp != NULL, NULL); for (list=model->planes ; list ; list=g_slist_next(list)) { plane = list->data; if (facet_equiv(model, comp->index, plane->index)) return(plane); } g_free(comp); return(NULL); } /***********************************/ /* generate symmetry related faces */ /***********************************/ /* FIXME - handle duplication */ #define DEBUG_SURF_SYMMETRY_GENERATE 0 void surf_symmetry_generate(struct model_pak *model) { gint i; gint *sym_hkl; gdouble m[3]; GSList *list, *new_planes, *sym_equiv, *sym_list; struct plane_pak *plane=NULL, *new_plane=NULL; #if DEBUG_SURF_SYMMETRY_GENERATE printf("======\n"); printf("BEFORE\n"); printf("======\n"); surface_print_planes(model->planes); #endif /* compute symmetry related faces */ new_planes = NULL; for (list=model->planes ; list ; list=g_slist_next(list)) { plane = list->data; sym_equiv = get_facet_equiv(model, plane->index); #if DEBUG_SURF_SYMMETRY_GENERATE printf(" *** {%d %d %d}\n", plane->index[0], plane->index[1], plane->index[2]); #endif /* check each non-primary face for extinctions */ i=0; sym_list = g_slist_next(sym_equiv); while (sym_list) { /* get the (normalized) hkl's */ sym_hkl = sym_list->data; ARR3SET(m, sym_hkl); new_plane = plane_new(m, model); if (plane) { new_plane->primary = FALSE; new_plane->parent = plane; new_plane->esurf[0] = plane->esurf[0]; new_plane->esurf[1] = plane->esurf[1]; new_plane->eatt[0] = plane->eatt[0]; new_plane->eatt[1] = plane->eatt[1]; new_plane->bbpa = plane->bbpa; new_plane->area = plane->area; #if DEBUG_SURF_SYMMETRY_GENERATE printf(" > (%d %d %d)\n", new_plane->index[0], new_plane->index[1], new_plane->index[2]); #endif new_planes = g_slist_prepend(new_planes, new_plane); } sym_list = g_slist_next(sym_list); i++; } free_slist(sym_equiv); } /* use the new list with the symmetry adjusted planes */ model->planes = g_slist_concat(model->planes, new_planes); model->num_planes = g_slist_length(model->planes); #if DEBUG_SURF_SYMMETRY_GENERATE printf("======\n"); printf("ADDING\n"); printf("======\n"); surface_print_planes(new_planes); #endif } /***********************/ /* free a single shift */ /***********************/ void shift_free(gpointer data) { struct shift_pak *shift = data; g_assert(shift != NULL); /* FIXME - this may create a memory leak, but it'll be */ /* the users fault */ if (shift->locked) { printf("ERROR: shift is locked.\n"); return; } g_free(shift); } /*************************************/ /* free the data in a list of shifts */ /*************************************/ void shift_data_free(GSList *shifts) { GSList *list; struct shift_pak *shift; /* free a list of shift pak structures */ list = shifts; while (list) { shift = list->data; list = g_slist_next(list); shift_free(shift); } } /***********************/ /* free a single plane */ /***********************/ void plane_free(gpointer data) { struct plane_pak *plane = data; shift_data_free(plane->shifts); g_slist_free(plane->shifts); /* FIXME - is this good enough? */ g_slist_free(plane->vertices); g_free(plane); } /*************************************/ /* free the data in a list of planes */ /*************************************/ void plane_data_free(GSList *planes) { GSList *list; struct plane_pak *plane; /* free a list of plane pak structures */ list = planes; while (list) { plane = list->data; list = g_slist_next(list); plane_free(plane); } } /* DEBUG */ void print_shell_offset(gint flag, struct model_pak *model) { gdouble x[3]; GSList *list; struct core_pak *core; struct shel_pak *shell; printf("-----------------------------------------------\n"); printf("model: %p\n", model); P3MAT("latmat:", model->latmat); printf("-----------------------------------------------\n"); for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->shell) { shell = core->shell; ARR3SET(x, shell->x); ARR3SUB(x, core->x); if (flag) vecmat(model->latmat, x); printf("[r = %f] ", VEC3MAG(x)); P3VEC(" + ", x); } } } /**********************************************/ /* refresh plane energy data for all surfaces */ /**********************************************/ void plane_refresh_all(struct model_pak *model) { /* refresh primary planes */ /* refresh symmetry related planes */ } /****************************************/ /* uses marvin code to create a surface */ /****************************************/ #define DEBUG_GENSURF 0 gint generate_surface(struct model_pak *src, struct model_pak *dest) { vector normal; vector lattice_vector[3]; /* lattice vectors */ vector t_mat[3]; /* transformation matrix */ vector work_lat[3]; /* transformed lattice vectors */ vector rec_work_lat[3]; /* reciprocal transformed lattice vectors */ vector s[3]; /* space we are trying to fill */ vector rec_s[2]; /* reciprocal of s[0] and s[1] */ vector tempvec; vector *sv; vector a, *v_a=NULL, *v_b=NULL; boolean s2_found = FALSE; gint c, i, j, h, k, l, flag; gint ia, ib, ic; gint amin, amax, bmin, bmax, cmin, cmax; gint ob, sb; gint GCD(gint, gint); gint vector_compare(vector *, vector *); gdouble inv_denom; gdouble shift, depth, depth_1, depth_2, depth_min; gdouble gcd, cd, x; gdouble z1_max, z1_min, z2_max, z2_min; gdouble tempfloat; gdouble tmat[9], norm[3], va[3]; gdouble wlat[9], temp[9], lpm[9]; gdouble sign, vec[3], vec2[3], dn[3]; GSList *list1, *list2, *sv_list1, *sv_list2; GSList *list, *clist, *slist, *mlist; struct core_pak *core; struct shel_pak *shel; struct mol_pak *mol; /* checks */ g_assert(src != NULL); g_assert(dest != NULL); /* find surface normal from the miller index and lattice vectors*/ V_ZERO(normal); /* setup */ h = dest->surface.miller[0]; k = dest->surface.miller[1]; l = dest->surface.miller[2]; /* acquire lattice vectors */ V_X(lattice_vector[0]) = src->latmat[0]; V_Y(lattice_vector[0]) = src->latmat[3]; V_Z(lattice_vector[0]) = src->latmat[6]; V_X(lattice_vector[1]) = src->latmat[1]; V_Y(lattice_vector[1]) = src->latmat[4]; V_Z(lattice_vector[1]) = src->latmat[7]; V_X(lattice_vector[2]) = src->latmat[2]; V_Y(lattice_vector[2]) = src->latmat[5]; V_Z(lattice_vector[2]) = src->latmat[8]; V_CROSS(tempvec, lattice_vector[1], lattice_vector[2]); V_QADD(normal, normal, +h*, tempvec); V_CROSS(tempvec, lattice_vector[2], lattice_vector[0]); V_QADD(normal, normal, +k*, tempvec); V_CROSS(tempvec, lattice_vector[0], lattice_vector[1]); V_QADD(normal, normal, +l*, tempvec); sv_list1 = NULL; c = (float) GCD(h, k); cd = c ? c : 1.0; V_2_ASSIGN(a, = k/cd * ,lattice_vector[0], - h/cd *, lattice_vector[1]); if (V_MAGSQ(a) > EPSILON) { sv = g_malloc(sizeof(vector)); V_EQUATE(*sv, a); sv_list1 = g_slist_prepend(sv_list1, sv); } c = (float) GCD(h, l); cd = c ? c : 1.0; V_2_ASSIGN(a, = l/cd * ,lattice_vector[0], - h/cd *, lattice_vector[2]); if (V_MAGSQ(a) > EPSILON) { sv = g_malloc(sizeof(vector)); V_EQUATE(*sv, a); sv_list1 = g_slist_prepend(sv_list1, sv); } c = (float) GCD(k, l); cd = c ? c : 1.0; V_2_ASSIGN(a, = l/cd * ,lattice_vector[1], - k/cd *, lattice_vector[2]); if (V_MAGSQ(a) > EPSILON) { sv = g_malloc(sizeof(vector)); V_EQUATE(*sv, a); sv_list1 = g_slist_prepend(sv_list1, sv); } sv_list2 = NULL; list1 = sv_list1; for (i=0 ; idata; list1 = list2 = g_slist_next(list1); for (j=i+1 ; jdata; list2 = g_slist_next(list2); V_2_ASSIGN(a, = , *v_a, + , *v_b); if (V_MAGSQ(a) > EPSILON) { sv = g_malloc(sizeof(vector)); V_EQUATE(*sv, a); sv_list2 = g_slist_prepend(sv_list2, sv); } V_2_ASSIGN(a, = , *v_a, - , *v_b); if (V_MAGSQ(a) > EPSILON) { sv = g_malloc(sizeof(vector)); V_EQUATE(*sv, a); sv_list2 = g_slist_prepend(sv_list2, sv); } } } sv_list1 = g_slist_concat(sv_list1, sv_list2); sv_list1 = g_slist_sort(sv_list1, (gpointer) vector_compare); /* set v_a to first (shortest now sorted) vector */ list1 = sv_list1; v_a = (vector *) list1->data; list1 = g_slist_next(list1); /* loop over remaining vectors - find shortest w/ orthogonal component */ while (list1) { v_b = (vector *) list1->data; V_CROSS(a, *v_a, *v_b); x = V_MAGSQ(a); if (x > EPSILON) { s2_found = TRUE; break; } list1 = g_slist_next(list1); } /* checks */ if (!s2_found) { gui_text_show(ERROR, "Failed to find surface vectors.\n"); return(1); } g_assert(v_a != NULL); g_assert(v_b != NULL); /* calculate transformation matrix */ V_SCALER(t_mat[2], (1.0/V_MAG(normal)), normal); V_SCALER(t_mat[0], (1.0/V_MAG(*v_a)), *v_a); V_CROSS(t_mat[1], t_mat[2], t_mat[0]); ARR3SET(norm, normal.element); ARR3SET(va, v_a->element); normalize(norm, 3); normalize(va, 3); ARR3SET(&tmat[6], norm); ARR3SET(&tmat[0], va); crossprod(&tmat[3], norm, va); /* calculate transformed lattice vectors */ for (j = 0; j < 3; j++) for (i = 0; i < 3; i++) V_E(work_lat[j], i) = V_DOT(t_mat[i], lattice_vector[j]); /* calculate reciprocal transformed lattice vectors */ V_CROSS(tempvec, work_lat[1], work_lat[2]); inv_denom = 1.0 / V_DOT(tempvec, work_lat[0]); V_CROSS(tempvec, work_lat[1], work_lat[2]); V_SCALER(rec_work_lat[0], inv_denom, tempvec); V_CROSS(tempvec, work_lat[2], work_lat[0]); V_SCALER(rec_work_lat[1], inv_denom, tempvec); V_CROSS(tempvec, work_lat[0], work_lat[1]); V_SCALER(rec_work_lat[2], inv_denom, tempvec); /* calculate transformed surface vectors */ for (i = 0; i < 3; i++) V_E(s[0], i) = V_DOT(t_mat[i], *v_a); for (i = 0; i < 3; i++) V_E(s[1], i) = V_DOT(t_mat[i], *v_b); /* return transformed surface vectors data in dest->latmat */ /* NB: latmat[0..8] is a 3x3 matrix so, */ /* | a b 0 | | c d 0 | | 0 0 0 | goes into latmat rows first ie a,b,0,c,d,0,0,0,0 */ /* set s[2] = to depths */ /* depth = 1.0e10; */ /* surface specification */ gcd = GCD(GCD(h, k), GCD(k, l)); VEC3SET(vec, h, k, l); vecmat(src->rlatmat, vec); /* calculate the Dhkl */ /* NB: we want the correct dspacing wrt hkl, ie DON'T remove the GCD */ dest->surface.dspacing = 1.0/VEC3MAG(vec); /* actual cut depth */ /* NB: done wrt the FULL depth (ie remove the gcd) */ depth = gcd/VEC3MAG(vec); dest->surface.depth = depth; /* round off the shift */ shift = decimal_round(dest->surface.shift, 4); #if DEBUG_GENSURF printf("\n----------------------------\n"); printf(" hkl: %d %d %d\n", h, k, l); printf(" gcd: %f \n", gcd); printf(" shift: %.20f\n", shift); printf("regions: %d %d\n", (gint) dest->surface.region[0], (gint) dest->surface.region[1]); printf(" Dhkl: %f\n", dest->surface.dspacing); printf(" depth: %f\n", depth); printf("----------------------------\n"); #endif /* NB: depth_1 is region[0], but depth_2 is region[0]+region[1] */ depth_1 = dest->surface.region[0] * depth; depth_2 = depth_1 + dest->surface.region[1] * depth; V_ZERO(s[2]); V_Z(s[2]) = -(depth_2); /* transfer surface vectors */ VEC3SET(&dest->latmat[0], V_X(s[0]), V_X(s[1]), 0.0); VEC3SET(&dest->latmat[3], V_Y(s[0]), V_Y(s[1]), 0.0); VEC3SET(&dest->latmat[6], 0.0, 0.0, 1.0); /* calculate reciprocal of two surface vectors */ inv_denom = 1.0 / (V_X(s[0])*V_Y(s[1]) - V_Y(s[0])*V_X(s[1])); V_X(rec_s[0]) = V_Y(s[1])*inv_denom; V_Y(rec_s[0]) = -V_X(s[1])*inv_denom; V_Z(rec_s[0]) = 0.0; V_X(rec_s[1]) = -V_Y(s[0])*inv_denom; V_Y(rec_s[1]) = V_X(s[0])*inv_denom; V_Z(rec_s[1]) = 0.0; z2_min = z1_min = 0.00; z2_max = V_Z(s[2]); z1_max = depth_1 * (z2_max < 0 ? -1.0: +1.0); if (z2_max < z2_min) { tempfloat = z2_max; z2_max = z2_min; z2_min = tempfloat; } if (z1_max < z1_min) { tempfloat = z1_max; z1_max = z1_min; z1_min = tempfloat; } /* display name */ g_free(dest->basename); dest->basename = g_strdup_printf("%s_%-1d%-1d%-1d_%6.4f", g_strstrip(src->basename), h, k, l, shift); /* store the work lattice */ for (i=0 ; i<3 ; i++) { wlat[3*i+0] = V_E(work_lat[0], i); wlat[3*i+1] = V_E(work_lat[1], i); wlat[3*i+2] = V_E(work_lat[2], i); } #if DEBUG_GENSURF P3MAT(" src lat: ", src->latmat); #endif /* construct the depth vector */ /* compute the surface normal */ VEC3SET(vec, dest->latmat[0], dest->latmat[3], dest->latmat[6]); VEC3SET(vec2, dest->latmat[1], dest->latmat[4], dest->latmat[7]); crossprod(dn, vec, vec2); /* search for a vector with the smallest */ /* orthogonal component to the surface vectors */ flag=0; depth_min=0; for (i=0 ; i<3 ; i++) { /* ignore zero indices, which yield 0 orthogonal component */ if (dest->surface.miller[i]) { /* dotproduct of vector with normal */ ARR3SET(vec, dn); vec[0] *= wlat[i]; vec[1] *= wlat[i+3]; vec[2] *= wlat[i+6]; depth = fabs(vec[0] + vec[1] + vec[2]); #if DEBUG_GENSURF printf("[i=%d, depth=%f]", i, depth); #endif if (flag) { if (depth > depth_min) continue; } else flag++; depth_min = depth; /* ensure the depth vector is pointing in the +ve z direction */ if (wlat[i+6] < 0.0) sign = -1.0; else sign = 1.0; dest->surface.depth_vec[0] = sign*wlat[i]; dest->surface.depth_vec[1] = sign*wlat[i+3]; dest->surface.depth_vec[2] = sign*wlat[i+6]; dest->latmat[2] = sign*wlat[i]; dest->latmat[5] = sign*wlat[i+3]; dest->latmat[8] = sign*wlat[i+6]; } } #if DEBUG_GENSURF printf(" : Minimum = %f\n", depth_min); P3VEC("depth vec:", dest->surface.depth_vec); #endif g_assert(flag != 0); /* generate lattice matrix inverse */ memcpy(dest->ilatmat, dest->latmat, 9*sizeof(gdouble)); matrix_invert(dest->ilatmat); /* locate the position of the new cell's repeat vectors */ /* in terms of the lattice space of the source model */ /* this gives us the lattice point matrix (lpm) which */ /* is used to determine how many source unit cells */ /* will be required to fill out the new surface cell */ memcpy(lpm, dest->latmat, 9*sizeof(gdouble)); memcpy(temp, tmat, 9*sizeof(gdouble)); matrix_invert(temp); matmat(temp, lpm); matmat(src->ilatmat, lpm); #if DEBUG_GENSURF P3MAT("tmat: ", tmat); P3MAT("dest latmat: ", dest->latmat); P3MAT("dest ilatmat: ", dest->ilatmat); P3MAT("lpm: ", lpm); #endif /* setup repeats required to fill the new cell */ amin=bmin=cmin=0; amax=bmax=cmax=0; /* required number of a cells */ for (i=0 ; i<3 ; i++) { ia = rint(lpm[i]); if (ia < amin) amin = ia; if (ia > amax) amax = ia; } /* required number of b cells */ for (i=3 ; i<6 ; i++) { ib = rint(lpm[i]); if (ib < bmin) bmin = ib; if (ib > bmax) bmax = ib; } /* required number of c cells */ for (i=6 ; i<9 ; i++) { ic = rint(lpm[i]); if (ic < cmin) cmin = ic; if (ic > cmax) cmax = ic; } /* one cell buffer */ amax+=2; bmax+=2; cmax+=2; amin--; bmin--; cmin--; #if DEBUG_GENSURF printf("a: %d - %d\n", amin, amax); printf("b: %d - %d\n", bmin, bmax); printf("c: %d - %d\n", cmin, cmax); #endif /* compute transformation pipeline */ memcpy(temp, src->latmat, 9*sizeof(gdouble)); matmat(tmat, temp); matmat(dest->ilatmat, temp); /* create a single transformed unit cell */ /* full loop required to cover one cell in the transformed coordinates */ for (ic=cmin ; icmoles ; mlist ; mlist=g_slist_next(mlist)) { mol = mlist->data; /* transform the centroid */ ARR3SET(va, mol->centroid); ARR3ADD(va, vec); vecmat(temp, va); va[2] += shift; /* ignore molecules outside the transformed cell */ /* NB: the range must be exactly the smallest numerical value below 1.0 [G_MINDOUBLE, 1.0] */ /* NB: the value of EPS adds a bias to promote molecules to the top of the surface */ #define EPS 0.001 if (va[0] < G_MINDOUBLE+EPS || va[0] > 1.0+EPS) continue; if (va[1] < G_MINDOUBLE+EPS || va[1] > 1.0+EPS) continue; if (va[2] < G_MINDOUBLE+EPS || va[2] > 1.0+EPS) continue; /* loop over all atoms in molecule */ for (clist=mol->cores ; clist ; clist=g_slist_next(clist)) { /* dup_core() will duplicate an attached shell as well */ core = dup_core(clist->data); dest->cores = g_slist_prepend(dest->cores, core); /* transform */ ARR3ADD(core->x, vec); vecmat(temp, core->x); core->x[2] += shift; /* init flags */ core->primary = TRUE; core->primary_core = NULL; core->orig = TRUE; /* shell */ if (core->shell) { shel = core->shell; dest->shels = g_slist_prepend(dest->shels, shel); ARR3ADD(shel->x, vec); vecmat(temp, shel->x); shel->x[2] += shift; /* init flags */ shel->primary = TRUE; shel->primary_shell = NULL; shel->orig = TRUE; } } } } } } dest->periodic = 3; dest->fractional = FALSE; dest->axes_type = CARTESIAN; dest->construct_pbc = TRUE; /* NB: can't leave the (expensive) delete_duplicate_cores() to the */ /* final model_prep() as that treats the model as 2D periodic */ /* and won't clip the top & bottom of the surface*/ matrix_lattice_init(dest); zone_init(dest); delete_duplicate_cores(dest); shell_make_links(dest); /* terminate here for debugging */ #define DEBUG_SURFACE_CELL 0 #if DEBUG_SURFACE_CELL dest->sginfo.spacenum = 1; dest->fractional = TRUE; dest->axes_type = CARTESIAN; dest->construct_pbc = TRUE; dest->gulp.method = CONV; model_prep(dest); return(0); #endif /* build surface core and shell lists from transformed cell */ clist = slist = NULL; /* region 1 cores and shells */ amax = dest->surface.region[0] + 1; for (i=1 ; icores ; list ; list=g_slist_next(list)) { core = dup_core(list->data); clist = g_slist_prepend(clist, core); /* printf("[%s] c ", core->label); P3VEC(" : ", core->x); */ core->x[2] -= (gdouble) i; vecmat(dest->latmat, core->x); core->region = REGION1A; if (core->shell) { shel = core->shell; slist = g_slist_prepend(slist, shel); /* CURRENT - alternate shell coordinate init */ /* more tolerant of pbc offset core-shell links */ shel->x[2] -= (gdouble) i; vecmat(dest->latmat, shel->x); /* printf("[%s] s ", shel->label); P3VEC(" : ", shel->x); */ shel->region = REGION1A; } } } /* region 2 cores and shells */ bmax = amax + dest->surface.region[1]; for (i=amax ; icores ; list ; list=g_slist_next(list)) { core = dup_core(list->data); clist = g_slist_prepend(clist, core); core->x[2] -= (gdouble) i; vecmat(dest->latmat, core->x); core->region = REGION2A; if (core->shell) { shel = core->shell; slist = g_slist_prepend(slist, shel); shel->x[2] -= (gdouble) i; vecmat(dest->latmat, shel->x); shel->region = REGION2A; } } } /* replace old structure (transformed cell) with the new surface */ free_core_list(dest); dest->cores = g_slist_reverse(clist); dest->shels = g_slist_reverse(slist); /* adjust depth translation vector to account for region sizes */ dest->latmat[2] *= dest->surface.region[0]+dest->surface.region[1]; dest->latmat[5] *= dest->surface.region[0]+dest->surface.region[1]; dest->latmat[8] *= dest->surface.region[0]+dest->surface.region[1]; /* surface cell init */ dest->periodic = 2; dest->sginfo.spacenum = 1; dest->fractional = FALSE; dest->axes_type = CARTESIAN; dest->construct_pbc = TRUE; dest->surface.keep_atom_order = src->surface.keep_atom_order; dest->gulp.method = CONV; /* surface cell type */ if (src->surface.true_cell) dest->surface.true_cell = TRUE; else { dest->surface.true_cell = FALSE; /* want to force c to be // to z */ /* NB: vectors are in columns */ dest->latmat[2] = 0.0; dest->latmat[5] = 0.0; } free_slist(sv_list1); /* CURRENT - does this screw up the true_cell crap? */ /* for (list=dest->cores ; list ; list=g_slist_next(list)) { core = list->data; ARR3SET(va, core->x); vecmat(dest->latmat, va); core->x[2] = va[2]; } dest->latmat[2] = 0.0; dest->latmat[5] = 0.0; dest->latmat[8] = 1.0; */ #if DEBUG_GENSURF printf("gensurf cores: %d\n", g_slist_length(dest->cores)); printf("gensurf shels: %d\n", g_slist_length(dest->shels)); #endif /* build mode follows source structure */ /* dest->build_molecules = src->build_molecules; */ /* last init */ model_prep(dest); calc_emp(dest); /* FIXME - bugged for unbroken bond chain materials */ /* mark the growth slice */ depth_min = dest->surface.region[0]+dest->surface.region[1]; depth_min *= gcd; depth_min = -1.0/depth_min; for (list1=dest->moles ; list1 ; list1=g_slist_next(list1)) { mol = list1->data; if (mol->centroid[2] > depth_min) { for (list2=mol->cores ; list2 ; list2=g_slist_next(list2)) { core = list2->data; core->growth = TRUE; } } } /* NEW - bonding analysis */ ob = src->surface.bonds_full; sb = g_slist_length(dest->bonds); c = dest->surface.region[0]+dest->surface.region[1]; dest->surface.bonds_cut = ob*c - sb; /* printout of bonding analysis */ /* printf("[%2d %2d %2d] (%f)", h, k, l, shift); printf(" [src = %d][surf = %d][r1+r2 = %d] : cleaved = %d : ", ob, sb, c, dest->surface.bonds_cut); printf(" : area = %f", dest->area); printf(" : cleaved = %d", dest->surface.bonds_cut); printf("\n"); */ return(0); } /****************************************/ /* construct and initialize the surface */ /****************************************/ #define MAKE_SURFACE_DEBUG 0 gpointer make_surface(struct model_pak *data, struct plane_pak *pdata, struct shift_pak *sdata) { gint bmode, r1size; gdouble sbe; GSList *list; struct model_pak *surf; struct core_pak *core; /* checks */ g_assert(data != NULL); if (data->periodic != 3) { gui_text_show(ERROR, "base model is not 3D periodic.\n"); return(NULL); } if (!pdata->index[0] && !pdata->index[1] && !pdata->index[2]) { gui_text_show(ERROR, "Don't be silly.\n"); return(NULL); } #if MAKE_SURFACE_DEBUG printf("Generating surface for model: %d\n", source); #endif /* ignore mols when building surface? */ bmode = data->build_molecules; if (data->surface.ignore_bonding) { data->build_molecules = FALSE; connect_bonds(data); connect_molecules(data); } /* allocate & init for surface data */ surf = model_new(); /* NEW - label it as MARVIN, so it's build mode follows the */ /* source model, rather than the GULP setup data - see model_prep() */ surf->id = MARVIN; /* transfer appropriate GULP setup data to new model */ gulp_data_copy(data, surf); surf->gulp.run = E_SINGLE; surf->gulp.method = CONV; /* transfer surface data to new model */ /* NB: memcpy would produce undesired effects if pointers were */ /* later added to the surface struct */ ARR3SET(surf->surface.miller, pdata->index); surf->surface.shift = sdata->shift; surf->surface.region[0] = sdata->region[0]; surf->surface.region[1] = sdata->region[1]; /* setup for region display */ if (surf->surface.region[0]) surf->region_empty[REGION1A] = FALSE; if (surf->surface.region[1]) surf->region_empty[REGION2A] = FALSE; surf->build_molecules = bmode; #if MAKE_SURFACE_DEBUG printf("Miller (%d,%d,%d)\n",surf->surface.miller[0] ,surf->surface.miller[1] ,surf->surface.miller[2]); printf("Shift %f\n",surf->surface.shift); printf("Region sizes (%d,%d)\n",surf->surface.region[0] ,surf->surface.region[1]); #endif /* TODO - valid shift/region size loop??? */ generate_surface(data, surf); gulp_files_init(surf); /* coords_init(INIT_COORDS, surf); */ /* restore connectivity in source model */ if (data->surface.ignore_bonding) { data->build_molecules = bmode; connect_bonds(data); connect_molecules(data); } /* calculate the bulk energy needed for GULP surface calcs */ sbe = data->gulp.energy; if (fabs(sbe) < FRACTION_TOLERANCE) { gui_text_show(WARNING, "Suspicious total energy. Has it been properly calculated?\n"); } /* calc the number of region 1 atoms */ r1size=0; for (list=surf->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->region == REGION1A) r1size++; } sbe /= data->num_atoms; /* E per atom in unit cell */ sbe *= r1size; /* E scaled to region 1 size */ surf->gulp.sbulkenergy = sbe; /* employ src file? */ tree_model_add(surf); tree_select_model(surf); return(surf); } /*************************************/ /* molecule centroid z value sorting */ /*************************************/ gint surf_molecules_zsort(gpointer p1, gpointer p2) { struct mol_pak *m1 = p1, *m2 = p2; if (m1->centroid[2] > m2->centroid[2]) return(-1); return(1); } /********************************************************/ /* scan a plane's shift list for the best energy values */ /********************************************************/ #define DEBUG_UPDATE_PLANE_ENERGY 0 void update_plane_energy(struct plane_pak *plane, struct model_pak *model) { gint i; GSList *list; struct plane_pak *plane2; struct shift_pak *sdata; /* checks */ g_assert(model != NULL); g_assert(plane != NULL); #if DEBUG_UPDATE_PLANE_ENERGY printf("(%d %d %d)\n", plane->index[0], plane->index[1], plane->index[2]); #endif /* set best values to those of the 1st shift */ list = plane->shifts; if (list) { sdata = list->data; /* init the plane's best values */ for (i=0 ; i<2 ; i++) { plane->esurf[i] = sdata->esurf[i]; plane->esurf_shift = sdata->shift; plane->eatt[i] = sdata->eatt[i]; plane->eatt_shift = sdata->shift; plane->bbpa = sdata->bbpa; plane->bbpa_shift = sdata->shift; } } else return; /* search the shift list for better values */ while (list != NULL) { sdata = list->data; for (i=0 ; i<2 ; i++) { /* surface energy */ if (sdata->esurf[i] < plane->esurf[i]) { plane->esurf[i] = sdata->esurf[i]; plane->esurf_shift = sdata->shift; } /* attachment energy */ if (sdata->eatt[i] > plane->eatt[i]) { plane->eatt[i] = sdata->eatt[i]; plane->eatt_shift = sdata->shift; } } /* broken bonds */ if (sdata->bbpa < plane->bbpa) { plane->bbpa = sdata->bbpa; plane->bbpa_shift = sdata->shift; } list = g_slist_next(list); } #if DEBUG_UPDATE_PLANE_ENERGY printf(" %f\n", plane->bbpa); #endif /* update symmetry related planes */ if (plane->primary) { for (list=model->planes ; list ; list=g_slist_next(list)) { plane2 = list->data; if (plane2->parent == plane) { plane2->esurf[0] = plane->esurf[0]; plane2->esurf[1] = plane->esurf[1]; plane2->eatt[0] = plane->eatt[0]; plane2->eatt[1] = plane->eatt[1]; } } } } /*******************************************************************/ /* peturb a planar surface in order to test alternate terminations */ /*******************************************************************/ void surf_shift_explore(struct model_pak *src, struct surface_pak *surface) { gint i, j, n; GSList *list; struct plane_pak *plane; struct shift_pak *shift; struct core_pak *core; struct mol_pak *mol1, *mol2; struct model_pak *model; g_assert(src != NULL); g_assert(src->periodic == 3); /* setup plane and shift */ plane = plane_new(surface->miller, src); shift = shift_new(surface->shift); shift->region[0] = surface->region[0]; shift->region[1] = surface->region[1]; printf("Perturbing [%d %d %d] : %f : [%d][%d]\n", plane->index[0], plane->index[1], plane->index[2], shift->shift, shift->region[0], shift->region[1]); /* CURRENT - create a new model for each alternate (zero dipole) surface found */ /* generate surface */ model = make_surface(src, plane, shift); coords_init(INIT_COORDS, model); /* sort molecule centroids */ model->moles = g_slist_sort(model->moles, (gpointer) surf_molecules_zsort); printf("initial dipole: %f\n", model->gulp.sdipole); i = 0; /* top */ mol1 = g_slist_nth_data(model->moles, i); n = g_slist_length(model->moles); mol2 = g_slist_nth_data(model->moles, n-1); /* nth bottommost */ /* bottom = g_slist_copy(model->moles); bottom = g_slist_reverse(bottom); */ /* for each topmost item, exchange with a bottomost item and recalculate dipole */ /* move all atoms in selection */ for (list=mol1->cores ; list ; list=g_slist_next(list)) { core = list->data; region_move_atom(core, DOWN, model); } mol2 = g_slist_nth_data(model->moles, n-1); for (j=0 ; j<3 ; j++) { mol2 = g_slist_nth_data(model->moles, n-j-1); /* test */ for (list=mol2->cores ; list ; list=g_slist_next(list)) { core = list->data; region_move_atom(core, UP, model); /* P3VEC("c1: ", core->x); */ } /* update */ /* FIXME - something wierd going on here - dipole recalc doesnt seem */ /* to work unless connect_molecules() is called - why??? */ coords_compute(model); /* connect_bonds(model); */ connect_molecules(model); /* TODO - don't recalc from scratch - can update based on moves */ calc_emp(model); printf("pert [%d,%d] new dipole: %f\n", i, j, model->gulp.sdipole); /* TODO - if zero -> leave this model (after init) and create a new */ /* one for exploring further perturbations */ /* restore */ for (list=mol2->cores ; list ; list=g_slist_next(list)) { core = list->data; region_move_atom(core, DOWN, model); /* P3VEC("c2: ", core->x); */ } coords_compute(model); } gui_refresh(GUI_CANVAS); } /****************************************************************************** * GCD * Greatest common denominator ******************************************************************************/ gint GCD(gint p, gint q) { #if defined(__MWERKS__) /* fix for compiler bug! */ gint i; if (q == 0) { i = abs(p); return(i); } #else if (q == 0) return(abs(p)); #endif else return(GCD(q, p%q)); } /****************************************************************************** * vector_compare * compare two vectors returning their difference as an integer. This * routine is to be used in conjuction with SORT(). ******************************************************************************/ gint vector_compare(vector *a, vector *b) { int i; double diff; diff = V_MAGSQ(*a) - V_MAGSQ(*b); if (diff < -EPSILON) return(-1); else if (diff > EPSILON) return(1); else { /* magnitude of a & b is the same, so sort based on element magnitudes */ for (i=0 ; i<3 ; i++) { diff = V_E(*a,i) - V_E(*b,i); if (diff < -EPSILON) return(1); else if (diff > EPSILON) return(-1); } } /* a & b are identical */ return(0); } gdis-0.90/file_dmol.c0000644000175000017500000001116710645615611013137 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include "gdis.h" #include "coords.h" #include "matrix.h" #include "model.h" #include "parse.h" #include "file.h" #include "scan.h" /* main structures */ extern struct sysenv_pak sysenv; extern struct elem_pak elements[]; /****************/ /* file writing */ /****************/ gint write_dmol(gchar *filename, struct model_pak *model) { gint i; gdouble x[3]; GSList *list; struct core_pak *core; FILE *fp; /* checks */ g_return_val_if_fail(model != NULL, 1); g_return_val_if_fail(filename != NULL, 2); /* open the file */ fp = fopen(filename,"wt"); if (!fp) return(3); if (model->periodic == 3) { fprintf(fp, "$cell vectors\n"); /* NB: DMOL matrices are transposed wrt gdis */ for (i=0 ; i<3 ; i++) { fprintf(fp, " %20.14f%20.14f%20.14f\n", model->latmat[i]/AU2ANG, model->latmat[i+3]/AU2ANG, model->latmat[i+6]/AU2ANG); } } fprintf(fp, "$coordinates\n"); for (list=model->cores ; list ; list=g_slist_next(list)) { core = list->data; if (core->status & DELETED) continue; /* everything is cartesian after latmat mult */ ARR3SET(x, core->x); vecmat(model->latmat, x); fprintf(fp,"%-10s%20.14f%20.14f%20.14f%5d\n", elements[core->atom_code].symbol, x[0]/AU2ANG, x[1]/AU2ANG, x[2]/AU2ANG, core->atom_code); } fprintf(fp, "$end\n"); fclose(fp); return(0); } /****************/ /* file reading */ /****************/ gint read_dmol_frame(FILE *fp, struct model_pak *model) { gint i, num_tokens; gchar *line, **buff; struct core_pak *core; g_assert(fp != NULL); line = file_read_line(fp); while (line) { /* read cell vectors */ if (g_ascii_strncasecmp(line, "$cell", 5) == 0 && model) { for (i=0 ; i<3 ; i++) { g_free(line); line = file_read_line(fp); buff = tokenize(line, &num_tokens); if (num_tokens > 2) { model->latmat[i] = AU2ANG*str_to_float(*(buff)); model->latmat[i+3] = AU2ANG*str_to_float(*(buff+1)); model->latmat[i+6] = AU2ANG*str_to_float(*(buff+2)); } g_strfreev(buff); } model->periodic = 3; model->construct_pbc = TRUE; } /* read coordinates */ if (g_ascii_strncasecmp(line, "$coord", 5) == 0 && model) { g_free(line); line = file_read_line(fp); buff = tokenize(line, &num_tokens); while (num_tokens > 3) { if (elem_symbol_test(*buff)) { core = new_core(*buff, model); model->cores = g_slist_prepend(model->cores, core); core->x[0] = AU2ANG*str_to_float(*(buff+1)); core->x[1] = AU2ANG*str_to_float(*(buff+2)); core->x[2] = AU2ANG*str_to_float(*(buff+3)); } g_free(line); line = file_read_line(fp); g_strfreev(buff); buff = tokenize(line, &num_tokens); } g_strfreev(buff); model->fractional = FALSE; } /* terminate frame read */ if (g_ascii_strncasecmp(line, "$end", 4) == 0) return(0); g_free(line); line = file_read_line(fp); } return(1); } /****************/ /* file reading */ /****************/ #define DEBUG_READ_XYZ 0 gint read_dmol(gchar *filename, struct model_pak *model) { gint flag; FILE *fp; /* checks */ g_return_val_if_fail(model != NULL, 1); g_return_val_if_fail(filename != NULL, 2); fp = fopen(filename,"rt"); if (!fp) return(3); /* loop while there's data */ flag=0; model->num_frames = 0; read_dmol_frame(fp, model); for (;;) { add_frame_offset(fp, model); if (read_dmol_frame(fp, NULL)) break; model->num_frames++; } /* get rid of frame list if only one frame */ if (model->num_frames == 1) { free_list(model->frame_list); model->frame_list = NULL; } /* model setup */ strcpy(model->filename, filename); g_free(model->basename); model->basename = parse_strip(filename); model_prep(model); return(0); } gdis-0.90/gl_graph.c0000644000175000017500000003117610577702740012776 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include "gdis.h" #include "graph.h" #include "matrix.h" #include "numeric.h" #include "opengl.h" #include "file.h" #include "parse.h" #include "dialog.h" #include "interface.h" #ifdef __APPLE__ #include #else #include #endif /* externals */ extern struct sysenv_pak sysenv; extern gint gl_fontsize; /*******************/ /* data structures */ /*******************/ struct graph_pak { gint grafted; gchar *treename; /* graph generation parameters */ gdouble wavelength; /* flags */ gint xlabel; gint ylabel; /* graph layout */ gint xticks; gint yticks; gdouble xmin; gdouble xmax; gdouble ymin; gdouble ymax; /* NB: all sets are required to be <= size */ gint size; GSList *set_list; /* peak selection */ gint select; gchar *select_label; }; /******************************************/ /* extract info from graph data structure */ /******************************************/ gchar *graph_treename(gpointer data) { struct graph_pak *graph = data; return(graph->treename); } /***************************/ /* free a particular graph */ /***************************/ void graph_free(gpointer data, struct model_pak *model) { struct graph_pak *graph = data; model->graph_list = g_slist_remove(model->graph_list, graph); if (model->graph_active == graph) model->graph_active = NULL; free_slist(graph->set_list); g_free(graph->treename); g_free(graph); } /******************************/ /* free all graphs in a model */ /******************************/ void graph_free_list(struct model_pak *model) { GSList *list; struct graph_pak *graph; for (list=model->graph_list ; list ; list=g_slist_next(list)) { graph = list->data; free_slist(graph->set_list); g_free(graph->treename); g_free(graph); } g_slist_free(model->graph_list); model->graph_list = NULL; model->graph_active = NULL; } /************************/ /* allocate a new graph */ /************************/ /* return an effective graph id */ gpointer graph_new(const gchar *name, struct model_pak *model) { static gint n=0; struct graph_pak *graph; g_assert(model != NULL); graph = g_malloc(sizeof(struct graph_pak)); graph->treename = g_strdup_printf("%s_%d", name, n); graph->wavelength = 0.0; graph->grafted = FALSE; graph->xlabel = TRUE; graph->ylabel = TRUE; graph->xmin = 0.0; graph->xmax = 0.0; graph->ymin = 0.0; graph->ymax = 0.0; graph->xticks = 5; graph->yticks = 5; graph->size = 0; graph->select = -1; graph->select_label = NULL; graph->set_list = NULL; /* append to preserve intuitive graph order on the model tree */ model->graph_list = g_slist_append(model->graph_list, graph); model->graph_active = graph; n++; return(graph); } /**************/ /* axes setup */ /**************/ void graph_init_y(gdouble *x, struct graph_pak *graph) { gdouble ymin, ymax; g_assert(graph != NULL); ymin = min(graph->size, x); ymax = max(graph->size, x); if (ymin < graph->ymin) graph->ymin = ymin; if (ymax > graph->ymin) graph->ymax = ymax; } /*******************/ /* tree graft flag */ /*******************/ void graph_set_grafted(gint value, gpointer data) { struct graph_pak *graph = data; g_assert(graph != NULL); graph->grafted = value; } /**************************/ /* control label printing */ /**************************/ void graph_set_xticks(gint label, gint ticks, gpointer ptr_graph) { struct graph_pak *graph = ptr_graph; g_assert(graph != NULL); g_assert(ticks > 1); graph->xlabel = label; graph->xticks = ticks; } /**************************/ /* control label printing */ /**************************/ void graph_set_yticks(gint label, gint ticks, gpointer ptr_graph) { struct graph_pak *graph = ptr_graph; g_assert(graph != NULL); g_assert(ticks > 1); graph->ylabel = label; graph->yticks = ticks; } /**********************/ /* special graph data */ /**********************/ void graph_set_wavelength(gdouble wavelength, gpointer ptr_graph) { struct graph_pak *graph = ptr_graph; g_assert(graph != NULL); graph->wavelength = wavelength; } void graph_set_select(gdouble x, gchar *label, gpointer data) { gdouble n; struct graph_pak *graph = data; g_assert(graph != NULL); /* printf("x = %f, min, max = %f, %f\n", x, graph->xmin, graph->xmax); */ /* locate the value's position in the data point list */ n = (x - graph->xmin) / (graph->xmax - graph->xmin); n *= graph->size; graph->select = (gint) n; g_free(graph->select_label); if (label) graph->select_label = g_strdup(label); else graph->select_label = NULL; /* printf("select -> %d : [0, %d]\n", graph->select, graph->size); */ } /*****************************/ /* add dependent data set(s) */ /*****************************/ void graph_add_data(gint size, gdouble *x, gdouble x1, gdouble x2, gpointer data) { gdouble *ptr; struct graph_pak *graph = data; g_assert(graph != NULL); /* try to prevent the user supplying different sized data */ /* TODO - sample in some fashion if different? */ if (graph->size) g_assert(graph->size == size); else graph->size = size; ptr = g_malloc(size*sizeof(gdouble)); memcpy(ptr, x, size*sizeof(gdouble)); graph->xmin = x1; graph->xmax = x2; graph_init_y(x, graph); graph->set_list = g_slist_append(graph->set_list, ptr); } /************************************/ /* graph data extraction primitives */ /************************************/ gdouble graph_xmin(gpointer data) { struct graph_pak *graph = data; return(graph->xmin); } gdouble graph_xmax(gpointer data) { struct graph_pak *graph = data; return(graph->xmax); } gint graph_ylabel(gpointer data) { struct graph_pak *graph = data; return(graph->ylabel); } gdouble graph_wavelength(gpointer data) { struct graph_pak *graph = data; return(graph->wavelength); } gint graph_grafted(gpointer data) { struct graph_pak *graph = data; return(graph->grafted); } /****************/ /* draw a graph */ /****************/ #define DEBUG_GRAPH_1D 0 void graph_draw_1d(struct canvas_pak *canvas, struct graph_pak *graph) { gint i, x, y, oldx, oldy, ox, oy, sx, sy; gint flag; gchar *text; gdouble *ptr; gdouble xf, yf, dx, dy; GSList *list; #if DEBUG_GRAPH_1D printf("x range: [%f - %f]\n", graph->xmin, graph->xmax); printf("y range: [%f - %f]\n", graph->ymin, graph->ymax); #endif /* compute origin */ ox = canvas->x + 4*gl_fontsize; if (graph->ylabel) ox += 4*gl_fontsize; oy = canvas->y + canvas->height - 2*gl_fontsize; if (graph->xlabel) oy -= 2*gl_fontsize; /* increments for screen drawing */ dy = (canvas->height-8.0*gl_fontsize); dx = (canvas->width-2.0*ox); /* axes label colour */ glColor3f(sysenv.render.fg_colour[0], sysenv.render.fg_colour[1], sysenv.render.fg_colour[2]); glLineWidth(2.0); /* x labels */ oldx = ox; for (i=0 ; ixticks ; i++) { /* get real index */ xf = (gdouble) i / (gdouble) (graph->xticks-1); x = ox + xf*dx; xf *= (graph->xmax-graph->xmin); xf += graph->xmin; if (graph->xlabel) { text = g_strdup_printf("%.2f", xf); gl_print_window(text, x-2*gl_fontsize, oy+2*gl_fontsize, canvas); g_free(text); } /* axis segment + tick */ glBegin(GL_LINE_STRIP); gl_vertex_window(oldx, oy, canvas); gl_vertex_window(x, oy, canvas); gl_vertex_window(x, oy+5, canvas); glEnd(); oldx = x; } /* y labels */ oldy = oy; for (i=0 ; iyticks ; i++) { /* get screen position */ yf = (gdouble) i / (gdouble) (graph->yticks-1); y = -yf*dy; y += oy; /* get real value */ yf *= (graph->ymax - graph->ymin); yf += graph->ymin; /* label */ if (graph->ylabel) { if (graph->ymax > 999.999999) text = g_strdup_printf("%.2e", yf); else text = g_strdup_printf("%7.2f", yf); gl_print_window(text, 0, y-1, canvas); g_free(text); } /* axis segment + tick */ glBegin(GL_LINE_STRIP); gl_vertex_window(ox, oldy, canvas); gl_vertex_window(ox, y-1, canvas); gl_vertex_window(ox-5, y-1, canvas); glEnd(); oldy = y; } /* data drawing colour */ glColor3f(sysenv.render.title_colour[0], sysenv.render.title_colour[1], sysenv.render.title_colour[2]); glLineWidth(1.0); flag = FALSE; sx = sy = 0; /* graph the data sets */ for (list=graph->set_list ; list ; list=g_slist_next(list)) { ptr = (gdouble *) list->data; glBegin(GL_LINE_STRIP); for (i=0 ; isize ; i++) { xf = (gdouble) i / (gdouble) (graph->size-1); x = ox + xf*dx; /* scale real value to screen coords */ yf = ptr[i]; yf -= graph->ymin; yf /= (graph->ymax - graph->ymin); yf *= dy; y = (gint) yf; y *= -1; y += oy; if (i == graph->select) { sx = x; sy = y-1; flag = TRUE; } /* lift y axis 1 pixel up so y=0 won't overwrite the x axis */ gl_vertex_window(x, y-1, canvas); } glEnd(); /* draw peak selector (if any) */ /* TODO - turn off is click outside range? */ if (flag) { glEnable(GL_LINE_STIPPLE); glLineStipple(1, 0x0303); glColor3f(0.9, 0.7, 0.4); glLineWidth(2.0); glBegin(GL_LINES); gl_vertex_window(sx, sy-10, canvas); gl_vertex_window(sx, 3*gl_fontsize, canvas); glEnd(); if (graph->select_label) { gint xoff; xoff = strlen(graph->select_label); xoff *= gl_fontsize; xoff /= 4; gl_print_window(graph->select_label, sx-xoff, 2*gl_fontsize, canvas); } glDisable(GL_LINE_STIPPLE); } } } /*********************************/ /* init for OpenGL graph drawing */ /*********************************/ void graph_draw(struct canvas_pak *canvas, struct model_pak *model) { /* checks */ g_assert(canvas != NULL); g_assert(model != NULL); if (!g_slist_find(model->graph_list, model->graph_active)) return; /* init drawing model */ glDisable(GL_LIGHTING); glDisable(GL_LINE_STIPPLE); glDisable(GL_DEPTH_TEST); glEnable(GL_BLEND); glEnable(GL_LINE_SMOOTH); glEnable(GL_POINT_SMOOTH); glDisable(GL_COLOR_LOGIC_OP); /* draw the appropriate type */ graph_draw_1d(canvas, model->graph_active); } /*******************/ /* graph exporting */ /*******************/ void graph_write(gchar *name, gpointer ptr_graph) { gint i; gchar *filename; gdouble x, *y; GSList *list; FILE *fp; struct graph_pak *graph = ptr_graph; /* checks */ g_assert(graph != NULL); g_assert(name != NULL); /* init */ filename = g_build_filename(sysenv.cwd, name, NULL); fp = fopen(filename,"wt"); if (!fp) return; /* write */ for (list=graph->set_list ; list ; list=g_slist_next(list)) { y = (gdouble *) list->data; for (i=0 ; isize ; i++) { x = (gdouble) i / (gdouble) graph->size; x *= (graph->xmax - graph->xmin); x += graph->xmin; fprintf(fp, "%f %f\n", x, y[i]); } } fclose(fp); g_free(filename); } /*******************/ /* graph importing */ /*******************/ #define GRAPH_SIZE_MAX 4 void graph_read(gchar *filename) { gint i, j, n, num_tokens; gchar *fullpath, *line, **buff; gdouble xstart, xstop, x[GRAPH_SIZE_MAX], *y; GArray *garray; gpointer graph; struct model_pak *model; FILE *fp; /* TODO - close dialog */ dialog_destroy_type(FILE_SELECT); /* read / create model / plot etc */ model = sysenv.active_model; if (!model) { edit_model_create(); model = sysenv.active_model; } garray = g_array_new(FALSE, FALSE, sizeof(gdouble)); /* read */ fullpath = g_build_filename(sysenv.cwd, filename, NULL); fp = fopen(fullpath, "rt"); line = file_read_line(fp); n=0; while (line) { buff = tokenize(line, &num_tokens); g_free(line); /* get all numbers */ j = 0; for (i=0 ; i 1) { if (!n) xstart = x[0]; g_array_append_val(garray, x[1]); n++; } g_strfreev(buff); line = file_read_line(fp); } xstop = x[0]; fclose(fp); y = g_malloc(n * sizeof(gdouble)); for (i=0 ; i c #5A99B0", ", c #78CFED", "' c #72C9E7", ") c #61A9C2", "! c #AC6C58", "~ c #FF6633", "{ c #FD5F2F", "] c #D84F27", "^ c #8F3C23", "/ c #7BD7F6", "( c #80E1FF", "_ c #77D1F0", ": c #61ABC5", "< c #427080", "[ c #78CEED", "} c #81E2FF", "| c #7BD8F9", "1 c #6ABAD6", "2 c #4A8295", "3 c #736561", "4 c #E8552A", "5 c #BD4522", "6 c #8F5443", "7 c #FC5E2F", "8 c #877D7C", "9 c #80C9E2", "0 c #71C7E6", "a c #5DA3BC", "b c #3A6675", "c c #72C8E6", "d c #7BD8F8", "e c #74CCEC", "f c #64AFCA", "g c #487D8F", "h c #BEB1AD", "i c #D5A99C", "j c #C1988C", "k c #A07F75", "l c #F96031", "m c #FE6030", "n c #DD5128", "o c #90351A", "p c #5E757D", "q c #62ABC6", "r c #4D879C", "s c #2F525E", "t c #60A7C0", "u c #69B9D5", "v c #63AEC9", "w c #5290A7", "x c #355E6C", "y c #756E6D", "z c #877671", "A c #9B9492", "B c #B19B95", "C c #EE572B", "D c #FB5E2F", "E c #EF572B", "F c #C64824", "G c #7D2E17", "H c #4F707D", "I c #467B8E", "J c #315764", "K c #324D56", "L c #4A8094", "M c #467A8D", "N c #355D6B", "O c #2E4A54", "P c #AFAFAF", "Q c #BB4826", "R c #CF4B25", "S c #BF4623", "T c #94361B", "U c #5E2514", "V c #566A71", "W c #5E6F76", "X c #78868B", "Y c #4B5C62", "Z c #B0B0B0", "` c #82341E", " . c #712C18", ".. c #5D2616", "+. c #A6A6A6", "@. c #BEBEBE", "#. c #B6B6B6", "$. c #77CFEE", "%. c #74C5E2", "&. c #5DA1B9", "*. c #B49288", "=. c #D09787", "-. c #A6614D", ";. c #7ACFEC", ">. c #79D4F5", ",. c #65B2CD", "'. c #447688", "). c #F66337", "!. c #FE6331", "~. c #F85C2E", "{. c #C74A25", "]. c #FE6432", "^. c #FE6130", "/. c #E15229", "(. c #925D4F", "_. c #80BBD0", ":. c #5FA8C1", "<. c #548090", "[. c #B5C8CF", "}. c #79CCE9", "|. c #7DC3DC", "1. c #649EB3", "2. c #D06645", "3. c #D34D26", "4. c #83321B", "5. c #F56032", "6. c #FF6130", "7. c #E45329", "8. c #9F3A1D", "9. c #717273", "0. c #70B0C7", "a. c #558DA1", "b. c #3A5D69", "c. c #7AC8E3", "d. c #7AD6F6", "e. c #67B5D1", "f. c #4E7887", "g. c #9B6859", "h. c #EA562A", "i. c #BC4522", "j. c #6F2814", "k. c #E2552C", "l. c #F95C2E", "m. c #C94924", "n. c #8D3D25", "o. c #B8B8B8", "p. c #C2C3C3", "q. c #CBCBCB", "r. c #B7C6CB", "s. c #75CEEE", "t. c #7CDAFA", "u. c #75CDEC", "v. c #63ADC8", "w. c #437688", "x. c #844837", "y. c #BA4422", "z. c #8A3219", "A. c #5C2616", "B. c #B24728", "C. c #BC4422", "D. c #5F2413", "E. c #65B1CB", "F. c #6CBFDC", "G. c #65B1CC", "H. c #5391A8", "I. c #345C6A", "J. c #65382C", "K. c #6E2A16", "L. c #5C2717", "M. c #7D341E", "N. c #712D1A", "O. c #5E2717", "P. c #508496", "Q. c #4F8BA2", "R. c #4F8BA1", "S. c #3E6E7E", "T. c #2E4B55", "U. c #4D8BA0", " . + @ # ", " $ % & * = - ; > ", " , ' ) ! ~ { ] ^ / ( _ : < ", "[ } | 1 2 3 4 5 6 . + 7 # 8 9 0 a b ", "c d e f g h i j k l ~ m n o p q r s ", "t u v w x y z A B C D E F G H I J K ", " L M N O P Q R S T U V W ", " X Y Z ` ... +. ", " @. Z #. +. ", " @. Z #. +. ", " @. $.%.&. #. *. ", " =.-.;.} >.,.'. #. ).!.~.{. ", " ].^./.(._.' :.<.[.}.|.1.2.~ 7 3.4.", "5.~ 6.7.8.9.0.a.b.c.} d.e.f.g.h.i.j.", "k.l.E m.n.o.p.q.r.s.t.u.v.w.x.y.z.A.", "B.F C.T D. E.F.G.H.I.J.K.L. ", " M.N.O. P.Q.R.S.T. ", " L M U. "}; gdis-0.90/numeric.c0000644000175000017500000002531610445461565012655 0ustar seansean/* Copyright (C) 2003 by Sean David Fleming sean@ivec.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. The GNU GPL can also be found at http://www.gnu.org */ #include #include #include #include #include "gdis.h" #include "numeric.h" #define T_STEP 0.001 #define T_STEP_INV 1.0/T_STEP #define ITMAX 100 #define EPS 3.0e-7 gdouble *s_data; gint s_size=0; gint sqrt_method=0; /**********/ /* timing */ /**********/ gulong mytimer(void) { gulong usec; struct timeval tv; #ifndef __WIN32 gettimeofday(&tv, NULL); #else /* TODO */ #endif usec = tv.tv_usec + 1000000*tv.tv_sec; return(usec); } /************************************/ /* initialize the trig lookup table */ /************************************/ #define DEBUG_TRIG 0 void init_trig(void) { gint i; gdouble a,s; /* alloc */ s_size = PI/T_STEP + 1; s_data = (gdouble *) g_malloc(s_size * sizeof(gdouble)); #if DEBUG_TRIG printf("Initializing table: %d points\n", s_size); #endif i=0; for (a=0.0 ; a<=PI ; a+= T_STEP) { s = sin(a); *(s_data+i) = s; i++; } g_assert(i == s_size); } /********************/ /* SINE replacement */ /********************/ gdouble tbl_sin(gdouble angle) { gint quad, idx, idx2; gdouble s,a,s1,s2,rem; /* enforce range [0, 2PI] */ ca_rad(&angle); /* determine quadrant */ a = angle; quad = 0; while (a > PI/2.0) { a -= PI/2.0; quad++; } /* setup angle and sign accordingly */ s = 1.0; switch (quad) { case 1: a += PI/2.0; break; case 3: a += PI/2.0; case 2: s *= -1.0; break; } /* init retrieval indices */ idx2 = idx = (gint) (T_STEP_INV * a); if (idx2) idx2--; else idx2++; g_assert(idx < s_size); g_assert(idx2 >= 0); /* get the two values */ s1 = *(s_data+idx) * s; s2 = *(s_data+idx2) * s; /* weighted average */ rem = T_STEP_INV * a - (gint) (T_STEP_INV * a); s = (rem*s2 + (1.0-rem)*s1); return(s); } /**********************/ /* COSINE replacement */ /**********************/ gdouble tbl_cos(gdouble angle) { return(tbl_sin(angle + PI/2.0)); } /*******************************************/ /* get angle made with x axis of 2D vector */ /*******************************************/ gdouble angle_x_compute(gdouble x, gdouble y) { gdouble angle; if (x == 0.0) x = G_MINDOUBLE; if (fabs(y) <= 0.0001) y = G_MINDOUBLE; angle = atan(y/x); if (y >= 0.0 && x < 0.0) angle += G_PI; else if (y < 0.0 && x < 0.0) angle += G_PI; else if (y < 0.0 && x > 0.0) angle += 2.0*G_PI; return(angle); } /***************************/ /* constrain angle [0,2pi] */ /***************************/ void ca_rad(gdouble *angle) { gint m; m = *angle/(2.0*PI); *angle -= (gdouble) m*2.0*PI; if (*angle < 0.0) *angle += 2.0*PI; } /***************************/ /* constrain angle [0,360] */ /***************************/ void ca_deg(gdouble *angle) { gint m; m = *angle/360.0; *angle -= (gdouble) m*360.0; if (*angle < 0.0) *angle += 360.0; } /********************/ /* SQRT replacement */ /********************/ gdouble fast_sqrt(gdouble s) { gdouble ds, r; if (sqrt_method) { /* NB: applicable range [0.1, 1.0] */ r = 0.188030699 + 1.48359853*s - 1.0979059*s*s + 0.430357353*s*s*s; do { ds = s - r*r; r += 0.5*ds/r; } while (ds > FRACTION_TOLERANCE); } else return(sqrt(s)); return(r); } /**************************************************/ /* test if approx sqrt is faster than system sqrt */ /**************************************************/ void init_sqrt(void) { /* TODO - test if it is faster */ sqrt_method = 1; } /*******************/ /* numerical setup */ /*******************/ void init_math(void) { init_trig(); init_sqrt(); } /***************************************************/ /* convert a floating point to the nearest integer */ /***************************************************/ gint nearest_int(gdouble x) { gint i; if (x > 0.0) i = (x+0.5); else i = (x-0.5); return(i); } /********************/ /* rounding routine */ /********************/ gdouble decimal_round(gdouble x, gint dp) { gint i; gdouble y, f; f = pow(10.0, dp); y = x * f; i = nearest_int(y); y = i; y /= f; return(y); } /**********/ /* gammln */ /**********/ gdouble gammln(gdouble xx) { gint j; gdouble x,tmp,ser; static gdouble cof[6]={76.18009173,-86.50532033,24.01409822, -1.231739516,0.120858003e-2,-0.536382e-5}; x = xx-1.0; tmp = x+5.5; tmp -= (x+0.5)*log(tmp); ser = 1.0; for (j=0 ; j<=5 ; j++) { x += 1.0; ser += cof[j]/x; } return -tmp+log(2.50662827465*ser); } /*******/ /* gcd */ /*******/ gint gcd(gint p, gint q) { if (q == 0) return(abs(p)); else return(gcd(q, p%q)); } /*******/ /* gcf */ /*******/ void gcf(gdouble *gammcf, gdouble a, gdouble x, gdouble *gln) { gint n; gdouble gold=0.0,g,fac=1.0,b1=1.0; gdouble b0=0.0,anf,ana,an,a1,a0=1.0; *gln=gammln(a); a1=x; for (n=1 ; n<=ITMAX ; n++) { an = (gdouble) n; ana = an-a; a0 = (a1+a0*ana)*fac; b0 = (b1+b0*ana)*fac; anf = an*fac; a1 = x*a0+anf*a1; b1 = x*b0+anf*b1; if (a1) { fac = 1.0/a1; g = b1*fac; if (fabs((g-gold)/g) < EPS) { *gammcf = exp(-x+a*log(x)-(*gln))*g; return; } gold = g; } } g_assert_not_reached(); } /********/ /* gser */ /********/ void gser(gdouble *gamser, gdouble a, gdouble x, gdouble *gln) { gint n; gdouble sum,del,ap; *gln = gammln(a); if (x <= 0.0) { if (x < 0.0) g_assert_not_reached(); *gamser=0.0; return; } else { ap = a; del = sum=1.0/a; for (n=1 ; n<=ITMAX ; n++) { ap += 1.0; del *= x/ap; sum += del; if (fabs(del) < fabs(sum)*EPS) { *gamser = sum*exp(-x+a*log(x)-(*gln)); return; } } g_assert_not_reached(); return; } } /*********/ /* gammp */ /*********/ gdouble gammp(gdouble a, gdouble x) { gdouble gamser,gammcf,gln; g_assert(x >= 0.0); g_assert(a > 0.0); if (x < (a+1.0)) { gser(&gamser,a,x,&gln); return gamser; } else { gcf(&gammcf,a,x,&gln); return 1.0-gammcf; } } /*********/ /* gammq */ /*********/ gdouble gammq(gdouble a, gdouble x) { gdouble gamser,gammcf,gln; g_assert(x >= 0.0); g_assert(a > 0.0); if (x < (a+1.0)) { gser(&gamser,a,x,&gln); return 1.0-gamser; } else { gcf(&gammcf,a,x,&gln); return gammcf; } } /******************/ /* error function */ /******************/ gdouble erf(gdouble x) { gdouble val; val = gammp(0.5, x*x); if (x < 0.0) val *= -1.0; return(val); } /********************************/ /* complementary error function */ /********************************/ gdouble erfc(gdouble x) { gdouble val; if (x < 0.0) val = 1.0 + gammp(0.5, x*x); else val = gammq(0.5, x*x); return(val); } /****************/ /* general sort */ /****************/ void sort(gint size, gdouble *array) { gint i, swap; gdouble tmp; swap=1; while (swap) { swap=0; for (i=1 ; i array[i]) { /* swap elements in array */ tmp = array[i-1]; array[i-1] = array[i]; array[i] = tmp; /* elements were swapped */ swap++; } } } } /***************/ /* general min */ /***************/ gdouble min(gint size, gdouble *x) { gint i; gdouble val; g_assert(size > 0); val = x[0]; for (i=1; i 0); val = x[0]; for (i=1; i val) val = x[i]; return(val); } /************************************/ /* numerical recipes - spline setup */ /************************************/ void spline(double *x, double *y, int n, double yp1, double ypn, double *y2) { int i, k; double p, qn, sig, un, *u; /* allocate 1 extra double as some people insist on starting at 1 */ u = g_malloc(n*sizeof(double)); if (yp1 > 0.99e30) y2[1] = u[1] = 0.0; else { y2[1] = -0.5; u[1] = (3.0/(x[2]-x[1]))*((y[2]-y[1])/(x[2]-x[1])-yp1); } for (i=2 ; i<=n-1 ; i++) { sig = (x[i]-x[i-1])/(x[i+1]-x[i-1]); p = sig*y2[i-1]+2.0; y2[i] = (sig-1.0)/p; u[i] = (y[i+1]-y[i])/(x[i+1]-x[i]) - (y[i]-y[i-1])/(x[i]-x[i-1]); u[i] = (6.0*u[i]/(x[i+1]-x[i-1])-sig*u[i-1])/p; } if (ypn > 0.99e30) qn = un = 0.0; else { qn = 0.5; un = (3.0/(x[n]-x[n-1]))*(ypn-(y[n]-y[n-1])/(x[n]-x[n-1])); } y2[n] = (un-qn*u[n-1])/(qn*y2[n-1]+1.0); for (k=n-1 ; k>=1 ; k--) y2[k] = y2[k]*y2[k+1]+u[k]; g_free(u); } /********************************************/ /* numerical recipes - spline interpolation */ /********************************************/ void splint(double *xa, double *ya, double *y2a, int n, double x, double *y) { int klo, khi, k; double h, b, a; klo = 1; khi = n; while (khi-klo > 1) { k = (khi+klo) >> 1; if (xa[k] > x) khi = k; else klo = k; } h = xa[khi]-xa[klo]; if (h == 0.0) printf("splint(): bad xa input.\n"); a = (xa[khi]-x)/h; b = (x-xa[klo])/h; *y = a*ya[klo]+b*ya[khi]+((a*a*a-a)*y2a[klo]+(b*b*b-b)*y2a[khi])*(h*h) / 6.0; } /****************************************/ /* numerical recipes - Cooley-Tukey FFT */ /****************************************/ #define SWAP(a, b) tempr=(a) ; (a) = (b) ; (b) = tempr; void fft(gdouble *x, gint nn, gint isign) { gint n, mmax, m, j, istep, i; gdouble wtemp, wr, wpr, wpi, wi, theta; gdouble tempr, tempi; gdouble *data = --x; /* silly fortran programmers */ n = nn << 1; j = 1; for (i=1 ; i i) { SWAP(data[j], data[i]); SWAP(data[j+1], data[i+1]); } m = n >> 1; while (m >= 2 && j > m) { j -= m; m >>= 1; } j += m; } mmax = 2; while (n > mmax) { istep = 2 * mmax; theta = 2.0 * PI / (isign * mmax); wtemp = sin(0.5*theta); wpr = -2.0 * wtemp * wtemp; wpi = sin(theta); wr = 1.0; wi = 0.0; for (m=1 ; m